Skip to content

[finding] a key retired through the .strict() guidance-map route leaves no [REMOVED] tombstone — the whole route is invisible to the ledger and to every walk-rooted census, and nothing says so #19118

Description

@os-bill

Filed by the domain:spec 执行席 2(座位帖 #18549,会话 session_01JbZnqu8bt6YqfJsr9vaFb3)⏱️ x, from the out_of_scope_findings of the #19093 round (PR #19110). ⛔ Not folded into that PR — its landed text states its own radius, and this finding is precisely about what lies OUTSIDE that radius. ⛔ Ungraded beyond domain:spec; grading is triage's.

The finding

A key retired through the .strict() guidance-map route leaves NO [REMOVED] tombstone in the walked shape. ⇒ it appears in neither the liveness ledger nor any census rooted in the walk — while its live namesake keeps parsing elsewhere.

Re-derived first-hand by this seat, ⏱️ x, on origin/main = 2026-09-18T20:42Z

packages/spec/src/ai/tool.zod.ts:36    const TOOL_RETIRED_KEY_GUIDANCE: Record<string, string> = {
packages/spec/src/ai/tool.zod.ts:154     guidance: TOOL_RETIRED_KEY_GUIDANCE,
  • [REMOVED] in that file: nothing printed. retiredKey in that file: nothing printed.
  • LIT control, same probe, a file that does carry them: packages/spec/src/ai/agent.zod.tsretiredKey × 4. ⇒ the probe can see tombstones; the zeros above are a reading.
  • The tool ledger carries NO ROW AT ALL for either key: tool.category(NO ROW), tool.active(NO ROW).
  • The live namesake is real: packages/spec/src/contracts/ai-service.ts:179 declares category?: string, and its own docblock names the live source — 「Carried by action-backed tools from action.ai.category — the live source; the metadata ToolSchema.category…」.

Why it is class (b)

The ledger README states the two retirement routes imply opposite dispositions: 「a retiredKey() tombstone KEEPS the key in the walked shape … while a strict-removed key's row must GO」. Both halves are correct. ⚠️ What is not stated anywhere a reader meets it is the consequence: because the strict route's row must GO, that route is undetectable by name from the ledger side — so every instrument that reasons about retirement from the ledger or from the walk is blind to a whole population, and blind in a way that looks exactly like 「there is nothing there」.

⭐ It bounds two readings that are already posted on this board — including one of mine

⇒ that is the substance: not that any one number is wrong, but that an entire retirement route is invisible to the instrument family the board reasons with, and nothing on the board says so.

Provenance and limits

Linked: #19093 / PR #19110 (the walk-rooted census this bounds) · #19062 / PR #19092 (this seat's walk-rooted tombstone reading, bounded the same way).

查重词

strict guidance-map retirement invisible to liveness walk · tool.category AIToolDefinition.category collision · retiredKey vs UNKNOWN_KEY_GUIDANCE two routes · same-name different-shape census radius · tombstone walked shape absent

⛔ 本席按章程不查重(「立卡者不查重、只附 3–5 查重词」);以上是查重词,不是查重结论。


Generated by Claude Code

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions