← Commit history

2.19.2 (doc only): three apps, three different expressions, all returning zero on a healthy panel - which is why the probe belongs in the module

John Lauer ·ad757ed180 ·1mo ago ·parent 42812db
2 files changed +19−1
package.json+1−1
@@ -1,6 +1,6 @@ {   "slug": "adom-ui-design",-  "version": "2.19.1",+  "version": "2.19.2",   "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+18
@@ -1208,6 +1208,24 @@ in DOM order. conclusion, and the cheapest possible guard: **ask what a HEALTHY reading looks like before you report an unhealthy one.** Here the answer was "also 0". +**THREE APPS WROTE THREE DIFFERENT EXPRESSIONS AND ALL THREE RETURNED ZERO ON A HEALTHY PANEL.**+That is the fact worth more than the retraction, because it is not one person's bad line:++| expression | why it returns 0 | goes negative on overflow? |+|---|---|---|+| `span.clientWidth - span.scrollWidth` | `scrollWidth` is `max(clientWidth, content)`, so it saturates | **yes** — retains some value |+| `cell.rect.width - span.rect.width` | a BLOCK span fills its containing block, so the rects are equal for ANY text | **no** — no diagnostic value at all |+| the offscreen `nowrap` probe | (correct) | reports true slack, 141–180px here |++The second is strictly worse than the first and **agreed with it for an entirely unrelated+reason**, which is how "two apps independently measured 0px" became persuasive. It was not two+readings of one metric; it was two broken metrics meeting at their common floor.++**So this belongs in the module, not in each app's probe.** A quantity three careful people got+wrong three different ways is not a thing to document and hope for; it is the same argument as+the panel itself. **A shared implementation exists because the fleet keeps getting the same+thing wrong independently.**+ **A warning in a channel nobody reads is not a check.** Put it in the evidence people already paste. Negative-controlled before shipping: comfortable phrases pass with 136px of slack, a phrase stretched to its box goes red at -116px, restoring returns it to green.