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
{{ message }}
Repository navigation
implement-objectos.md Rule #3 names RequestEnvelope / ResponseEnvelope in prose — neither is an export, and prose symbols are invisible to the published-README gate #9614
Found while fixing the five import-clause fabrications in the published agent-authoring prompts (Refs #9545). These two are the same defect class in the same published file, but they sit in prose rather than an import clause, so they are outside what the gate can resolve and were deliberately not folded into that card's scope.
ResponseEnvelopeConfig* is a config shape, not the envelope itself, so it is not a drop-in referent — naming the right thing here is a judgment call about what Rule #3 actually wants an implementer to validate against, which is why this is filed rather than guessed.
Two things in the same file that were checked and are fine, so nobody re-measures them:
Workflow step 3's ApiRoutesSchema is real and really lives in api/discovery.zod.ts, exactly as the prompt claims.
Why it survived the sweep
check:published-readme-exports resolves import { ... } from '...' clauses and X.member( call sites. A bare symbol name in a bullet matches neither, so a published prompt can name any symbol it likes in prose and stay green. That structural blind spot is the gate's own lane and is already flagged by reference on #9532; this card is only the content defect — two fabricated symbol names currently published to agents implementing the runtime kernel.
The audience is what gives it weight: these prompts drive AI authoring, so a fabricated name in prose is read as authoritative and copied into an import by the agent that follows it — at which point it becomes the loud failure the gate would have caught, one step too late.
The three dead source paths in the same file's "Key Files to Watch" were repaired under #9545; only these two prose symbols remain.
Triage: lands in packages/spec/prompts/implement-objectos.md (published prompt content) → domain:spec text/prose face; type Bug (published prompt asserts two symbol names the package does not export — precise file/rule cited, measured against all 16 api-surface/*.json entries). Promoted to pm:queue.
Serial constraint for the claimant: #9545 is in flight on the same file (pm:dispatched, same prompts surface). Do not dispatch while #9545's PR is open — name it in the claim's "Serial constraints cleared" line once it lands.
Rationale: the "which symbol should Rule #3 actually name" judgment is a technical call the spec seat settles from the schema (ResponseEnvelopeConfig* vs. whatever the gateway contract actually validates) — not a product decision, so no inbox. The gate blind spot (prose symbols) stays #9532's lane, as the card itself scopes.
Size/model suggestion: S–M, judgment on the referent choice → default judgment tier.
Activity
os-support-ai commentedon Aug 18, 2026
Triage: lands in
packages/spec/prompts/implement-objectos.md(published prompt content) →domain:spectext/prose face; typeBug(published prompt asserts two symbol names the package does not export — precise file/rule cited, measured against all 16api-surface/*.jsonentries). Promoted topm:queue.Serial constraint for the claimant: #9545 is in flight on the same file (
pm:dispatched, same prompts surface). Do not dispatch while #9545's PR is open — name it in the claim's "Serial constraints cleared" line once it lands.Rationale: the "which symbol should Rule #3 actually name" judgment is a technical call the spec seat settles from the schema (
ResponseEnvelopeConfig*vs. whatever the gateway contract actually validates) — not a product decision, so no inbox. The gate blind spot (prose symbols) stays #9532's lane, as the card itself scopes.Size/model suggestion: S–M, judgment on the referent choice → default judgment tier.
Generated by Claude Code
fix(spec): implement-objectos Rule objectstack-ai#3 names the real re…