← Commit history

2.7.0 (doc only, module bytes unchanged): the dock does not restart the running process and the Binary LED says (deleted); a behavioural gate cannot see a deleted stylesheet

John Lauer ·4c71393b30 ·1mo ago ·parent 53d96c5
2 files changed +49−1
package.json+1−1
@@ -1,6 +1,6 @@ {   "slug": "adom-ui-design",-  "version": "2.6.3",+  "version": "2.7.0",   "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+48
@@ -952,6 +952,54 @@ the page. Check it by toggling: screenshot with the panel open and closed and compare the distance from the header to the first content row. It should be identical. +## ⛔ THE DOCK INSTALLS A PACKAGE. IT DOES NOT RESTART THE RUNNING PROCESS.++**Publishing is not deploying, and installing is not running.** lbr found John's box serving+adom-lbr **2.14.1 and 2.13.0** while five versions had shipped past him. He had been looking+at a dashboard from hours earlier the entire time.++**Every app already emits the signal and nobody reads it:** a stale server reports its own+binary as **`(deleted)`** in the Binary LED, because the file it was launched from has been+replaced underneath it. That is a precise, free stale-process detector sitting in the status+row of every dashboard in the fleet.++So, before you conclude anything about a dashboard on his machine:++```+running dashboard version   ==  the version you published?+Binary LED                  ==  "(deleted)"?   -> you are looking at a stale process+```++This explains most of a day's confusion: apps reporting conformance from their own container+while his pane rendered an older build, `AdomNewbiePanel is not defined` read as "the module+is broken" when it meant "this build was never installed here", and audit rows describing+markup that had already been replaced in the registry. **Check the running version first, and+restart the process, not just the install.**++## ⛔ A BEHAVIOURAL GATE CANNOT SEE A DELETED STYLESHEET++The mirror of the missing-function rule below, and the more expensive half.++lbr's over-greedy regex in 2.14.0 destroyed two things. The missing `api()` broke BEHAVIOUR,+so its gates caught it. It also **deleted three stylesheets**, and those broke only+APPEARANCE, so the page passed every structural, behavioural and conformance check **for five+releases** while, in John's dock: the Send to KiCad / Send to Fusion bar rendered as bare+labels and unstyled white buttons, the send-evidence panel had no styling, and neither did the+demo's transport controls. All three are features he asked for by name. Markup fine,+JavaScript fine, handlers running, `selfCheck` green.++**It was found by looking at the screenshot. Nothing else could have found it.**++The fix that generalises: assert a **signature computed property per component**. jsdom has no+layout engine but it DOES resolve the cascade, so a deleted stylesheet can fail the build.+Negative-control it.++**And every app that took a regex-based edit in that era should LOOK at its own pane once,+not merely check it.**++(lbr also wrote an id-orphan scanner and deleted it: 70 false positives, because most ids are+styled through class or descendant rules. **A check nobody can keep is worse than none.**)+ ## ⛔ A STRUCTURAL AUDIT CANNOT SEE A MISSING FUNCTION  lbr shipped a panel whose markup and CSS were provably correct and which rendered **zero