skill
Adom UI Design System
Public Made by Adomby adom
How the AI builds and tests interfaces people love to use in Adom. Ships as one installable skill that bundles focused skills (tooltips, floating-windows, toasts, responsive-ui, app-shell, ai-driven-apps, clickable-paths).
← Commit history
2.21.1 (doc only, module unchanged at 2.20.1): keep the sha check even when versions agree, or the sweep passes for the wrong reason; test a fix by reproducing the failure
2 files changed
+22−3
package.json+1−1@@ -1,6 +1,6 @@ { "slug": "adom-ui-design",- "version": "2.21.0",+ "version": "2.21.1", "type": "skill", "description": "The Adom UI Design System plus a bundle of focused UI skills (tooltips, floating-windows, toasts, responsive-ui, app-shell, ai-driven-apps, clickable-paths, dark-default, input-feedback, settings-layout). One install drops the whole set of skill files onto your container, plus shared icon assets (the settings cog) so every Adom app draws the same glyph.", "dependencies": {},
skills/newbie-panel/SKILL.md+21−2@@ -697,8 +697,27 @@ version are you on", it is: > **does my asset's sha match the asset in the current package?** A sha comparison also survives a stale files-endpoint, which a version string does not. kicad's-form, converged three ways and byte-identical: the package source under-`~/.claude/skills/adom-ui-design/assets/module/`, its own working copy, and the INSTALLED tree.+form, converged FOUR ways and byte-identical: the upstream asset via `repo show`, the package+source under `~/.claude/skills/adom-ui-design/assets/module/`, its own working copy, and the+INSTALLED tree — plus the page repo **read back after pushing**, since that is the layer known+to serve stale content and a push receipt is not a read.++**And keep the sha check even when the version strings agree.** kicad's point, and it is the+one that generalises past this trap: it was only VISIBLE because the package number moved while+the asset stood still. **When both move together, a version match is luck rather than+correctness, and the sweep passes for the wrong reason.** A check that can pass for the wrong+reason has not been shown to work; it has been shown not to have complained yet.++### ⛔ TEST A FIX BY REPRODUCING THE FAILURE, NOT BY READING THE DIFF++kicad verified the `rows: []` fix by **hiding the panel and making the same naive+`.rows.map(...)` call that had broken it**, rather than checking that `rows: []` appears in the+source. Confirming the line is present proves the edit landed; it proves nothing about the+failure mode. The naive caller now returns `threw: false` with `rows` present, an array, length+0 — the exact call shape that produced `Cannot read properties of undefined` one version+earlier.++**Its own misread was what motivated the fix, so its own misread was the test.** ### A PURE LAYOUT NUMBER DOES NOT NEED A SLOT ON HIS MACHINE