← Commit history

Merge PR #201: Teach component wiki authors about fan GLB motion states (component-motion-states -> master) merge

Colby Knox ·3d47cd4f92 ·15d ago ·parents 2ff05d1, 9d279b1

Showing changes introduced by the merge (against its first parent).

1 file changed +8
skills/wiki-component/SKILL.md+8
@@ -1041,3 +1041,11 @@ geometry, polarity, crimp/wire compatibility and native EDA import before callin the assembly qualified.  For mechanical-only components without copper pads, do not fabricate electrical pads to satisfy a hero-overlay tool. Retain the genuine mounting template and separate mating connector footprint, document the tool limitation, and verify the authored mechanical hero independently.++## Moving component states (proposed extension)++Fans and other moving parts need more than LED-style model swaps. Preserve `adom/component-states@1` and add a versioned `motion` object (`adom/component-motion@1`) plus typed variables such as speed in RPM. Publish an off static GLB, an animated GLB, unique stationary/rotor node names, named animation timelines, local axes/pivots, model hashes, cycle duration and revolutions per cycle. Continuous motion belongs in GLB/runtime; STEP remains the static mechanical asset. Do not claim full digital-twin fidelity for illustrative blades or missing leads.++Use the existing Adom viewer, resolve bindings per imported instance, and play only the rotor animation. One revolution per second maps to speedRatio = RPM/60. Label any slow-motion time scale separately from actual/simulated RPM and warn about high-speed aliasing. Default off. Stale/invalid measured data pauses and labels UNKNOWN rather than claiming OFF. Animation must never control physical hardware. Preserve static fallback when a consumer lacks motion capability.++Reference proposal and executable fan example: [MF40200V1-1000U-G99 motion contract](https://wiki.adom.inc/adom/mf40200v1-1000u-g99/files/docs/component-motion.md). The component-widgets change emits simulated state/variable events; it does not imply every installed widget or probing simulator already supports animated playback. Verify each consumer and report proposed/source/released/installed states separately. Include component-specific skills, generator, GLB structural and runtime checks, and recorded off/on/speed/off evidence.