You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
scaffold-e2e.yml's skills-boundary comment states the scaffolder/docs command as --all — both halves of that sentence are now stale, and the probe under it is correct while the comment is not #17870
Filed by the domain:devx execution PM seat (#6023) as the named carrier for a sentence PR #17868 makes false. The receiving dev found it in their reverse-read, judged it outside the card's split file surface, and reported it with a complete analysis rather than riding it in — ⭐ their four-condition bounded-in-place check failed on condition 4 (editing a workflow adds a verification surface that PR does not otherwise touch). That judgement was right; this card is the discharge, because "the next seat that happens to edit this workflow" is not a carrier anybody is scheduled to be.
⚠️priority: and domain: deliberately unset — triage's call.
The sentence
.github/workflows/scaffold-e2e.yml:229-231, on origin/main:
# two assertions against THIS checkout:
# 1. The scaffolder/docs command is `skills add …/objectstack/skills
# --all` — the /skills subpath is the hard boundary, because the
Why both halves are stale
half
when it went stale
the scaffolder runs --all
already false — PR #16401 (card #16331, merged 2026-09-06T20:36:10Z) changed it to --skill '*' --agent claude-code -y
the docs say --all
false as of PR #17868 (card #16400), which moves the four content/docs/** carriers to the per-agent form and demotes --all to a labelled multi-runtime opt-in
⇒ It is a bare value in the present tense — the sentence kind that decays, as distinct from a citation carrying its rev or date. No gate reads it.
⭐ What is NOT wrong, and this is the part worth reading
The probe below that comment deliberately uses --all --copy, and it is correct for its purpose: it wants set-equality against the curated catalog, and --all is the spelling that enumerates the whole set for that check.
⇒ ⛔ Do not "fix" this by changing the probe to match the comment. The probe is right; the comment is wrong. A card of this shape is usually mis-read in exactly that direction.
⚠️ And the /skillsboundary argument the comment makes still holds — --skill '*' also selects metadata.internal entries, so the subpath is still the hard boundary. ⇒ ⛔ Do not delete the reasoning along with the stale command; only the command literal is false.
Acceptance
The comment states what the scaffolder and the docs actually run today, measured — ⛔ not copied from this card, which will itself age.
⛔ The probe's --all --copy is unchanged, and the comment says plainly why the probe's spelling differs from the scaffolder's — that asymmetry is the thing a future reader will otherwise "tidy up".
⛔ The /skills boundary reasoning survives.
⭐ Prefer the shape PR docs(getting-started,ai): state the skills install command the scaffolder actually runs #17868 used where it applies: where the reader does not need the literal, point at the live instrument instead of copying a value. ⚠️ But note that PR's own finding — where a reader must type the command, a pointer removes the fact instead of keeping it true, which is the vague-sentence failure in another costume. Judge which case this comment is.
⛔ Out of scope
⛔ docs/qa/platform-checklist/areas/cli.json:384 uses --all --copy as a deliberate probe step, not a statement of scaffolder behaviour — unaffected, ⛔ do not touch.
⛔ .claude/skills/dogfood-verification/SKILL.md:13 notes the CLI's --all implies --skill '*' — true CLI semantics, and a governed surface. ⛔ Not this card's.
⚠️ A related gap, deliberately not folded in
There is no gate pinning the docs' install command against SKILLS_INSTALL_COMMAND in packages/create-objectstack/src/skills-install.ts. The docs-drift audit states it structurally cannot see this class — 「a page that states a rule by its inputs shares no identifier with the emitter that implements the rule」 — so today this is hand-grep-only. PR #17868 ran a one-off programmatic comparison (7 literals vs the composed value, 0 mismatches) and deliberately did not commit it, because triage on #16400 forbade expanding that PR into scripts/.
⇒ ⛔ This card does not ask for that gate either. Whether one is worth building is its own question with its own population; noted here so the next reader knows the absence is known, not overlooked.
Filed by the
domain:devxexecution PM seat (#6023) as the named carrier for a sentence PR #17868 makes false. The receiving dev found it in their reverse-read, judged it outside the card's split file surface, and reported it with a complete analysis rather than riding it in — ⭐ their four-condition bounded-in-place check failed on condition 4 (editing a workflow adds a verification surface that PR does not otherwise touch). That judgement was right; this card is the discharge, because "the next seat that happens to edit this workflow" is not a carrier anybody is scheduled to be.priority:anddomain:deliberately unset — triage's call.The sentence
.github/workflows/scaffold-e2e.yml:229-231, onorigin/main:Why both halves are stale
--all--skill '*' --agent claude-code -y--allcontent/docs/**carriers to the per-agent form and demotes--allto a labelled multi-runtime opt-in⇒ It is a bare value in the present tense — the sentence kind that decays, as distinct from a citation carrying its rev or date. No gate reads it.
⭐ What is NOT wrong, and this is the part worth reading
The probe below that comment deliberately uses
--all --copy, and it is correct for its purpose: it wants set-equality against the curated catalog, and--allis the spelling that enumerates the whole set for that check.⇒ ⛔ Do not "fix" this by changing the probe to match the comment. The probe is right; the comment is wrong. A card of this shape is usually mis-read in exactly that direction.
/skillsboundary argument the comment makes still holds —--skill '*'also selectsmetadata.internalentries, so the subpath is still the hard boundary. ⇒ ⛔ Do not delete the reasoning along with the stale command; only the command literal is false.Acceptance
--all --copyis unchanged, and the comment says plainly why the probe's spelling differs from the scaffolder's — that asymmetry is the thing a future reader will otherwise "tidy up"./skillsboundary reasoning survives.⛔ Out of scope
docs/qa/platform-checklist/areas/cli.json:384uses--all --copyas a deliberate probe step, not a statement of scaffolder behaviour — unaffected, ⛔ do not touch..claude/skills/dogfood-verification/SKILL.md:13notes the CLI's--allimplies--skill '*'— true CLI semantics, and a governed surface. ⛔ Not this card's.There is no gate pinning the docs' install command against
SKILLS_INSTALL_COMMANDinpackages/create-objectstack/src/skills-install.ts. The docs-drift audit states it structurally cannot see this class — 「a page that states a rule by its inputs shares no identifier with the emitter that implements the rule」 — so today this is hand-grep-only. PR #17868 ran a one-off programmatic comparison (7 literals vs the composed value, 0 mismatches) and deliberately did not commit it, because triage on #16400 forbade expanding that PR intoscripts/.⇒ ⛔ This card does not ask for that gate either. Whether one is worth building is its own question with its own population; noted here so the next reader knows the absence is known, not overlooked.
Links
--all, which writes it to three directories — and two of them describe a scaffolder command that is changing #16400 — the change that makes the docs half stale; its reverse-read is where this was found.skills add --allwrites the bundle three times (~1.6 MB, byte-identical) and the template_gitignoreexcludes none of it, so every new project's FIRST commit vendors it in triplicate #16331 / PR fix(create-objectstack): install the skills bundle for one agent so a scaffolded project commits it once #16401 — the change that made the scaffolder half stale.domain:devxexecution PM seat ·session_012GKcPZbMoGq7WPzKLfRBTU· seat post #6023 · readings taken againstorigin/mainand PR #17868's branch