docs(process): mark STUMBLES S3 (part-absent) done; next = S2/S4

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
menubar-v4-safe
dev 3 months ago
parent 1150404329
commit 02d87b37f3

@ -47,7 +47,7 @@
`ARCHETYPE_DESCRIPTIONS` in morfo/types.ts; docs-check I7 freshness guard
(negative-tested); linked from README/CANON/morfo/component-audit.
## NEXT — implement S2, S3, S4 from these VERIFIED plans
## NEXT — implement S2, S4 from these VERIFIED plans (S3 DONE)
A read-only scoping workflow (`scope-stumbles-s2-s6`) mapped each against the
real code. S2/S3/S4 returned high-confidence plans (below). **S5 and S6 did the
@ -55,7 +55,19 @@ research but did not emit a structured plan — re-scope them first** (relaunch
the workflow for just those two, or scope by hand; their prompts are in the
committed workflow script `…/workflows/scripts/scope-stumbles-s2-s6-*.js`).
### S3 — `part-absent` morfo condition (do first; cleanest, high-confidence)
### S3 — `part-absent` morfo condition — ✅ DONE (`11504043`)
Shipped as `{ when: 'part-absent', part }`, the exact inverse of `part-present`,
across the four condition sites (types union + JSDoc, schema discriminated
member, compile `collectConditionDeps`, resolver `shouldEmitMorfoEntry`) plus
schema/compile tests and the `morfo.md` condition list. **One deviation from
the plan below**: the plan claimed `checkCondition` "already covers it (doesn't
discriminate)" — it DOES discriminate (`schema.ts` had `c.when === 'part-present'`
hard-coded), so the unknown-part guard was extended to `part-present || part-absent`
so an unknown-part `part-absent` throws too. `npm run check` = 59 errors (none
mine); the pre-existing red morfo test `hoists role into staticAttrs` (Dialog
`content` role intentionally undeclared, dialog-001) is unrelated → flagged
separately. Original plan preserved below for provenance.
The common ARIA pattern "aria-label only when there is no Label part" is not
declarable. Add the inverse of `part-present`. Four surgical edits + a test,

Loading…
Cancel
Save

Powered by TurnKey Linux.