Skip to content

Sweep inbox — cleanup evidence from the {377.6} efficacy trials

Disposition status (S534): CLOSED. All four classes were adjudicated at the S515 id-402 sweep — see tasks/id-402.md (the ‘{377.6} sweep inbox’ entry). Items reading as open below are recorded-not-actioned routings (parked id-292 residue, KEEP-FOREVER hazards). Read that entry before re-deriving anything from this file.

Initiative: 12 (Platform rebase), project wiring-census-and-redundancy-sweep. Source: the id-377 {377.6} efficacy trials, S511. Status of every claim below: verified — each trial was independently re-verified by a second agent before the register was merged.

This is a by-product record. The trials existed to measure ast-dataflow, and ran against this initiative’s own parked backlog (id-292 bid→procurement literal residue, id-317 content_items retirement) to do it. What fell out was cleanup evidence of exactly the “built, half-retargeted, or left as debris” class initiative 12 exists to surface — but it landed in a tooling task’s spec dir, where the sweep would not have found it. Hence this inbox.

Derivation, per site: specs/id-377-ast-dataflow-extraction/trials/README.md Part 2 (the merged register; both trial logs sit alongside it). The two source tasks (tasks/id-292.md, tasks/id-317.md) already carry these findings in their own Notes — nothing here re-opens or re-scopes them. Both stay parked.

Read the method warning in ledgers/initiatives/12.md first. Every site count on this page was recovered by hand, not by tool. The sweep may not reproduce them with a literal query and expect the same numbers.

Live-run corroboration (census #41, recorded S513). The first post-F4-fix nightly (run 30490593136, S512 — tasks/id-128.md census #41 entry) put live-run evidence behind the retired-surface sweep class this inbox feeds: the op-id-stamping test still asserts against the half-retargeted content_items title/poll seam, and the audit-log-shipping v1.1 FUTURE skip-guard failed against a staging DB with no audit_log table or view. Neither is adjudicated here — both route through the S6 sweep (and the op-id-stamping op_id-equality half through id-397 {397.1}) — but the sweep kickoff should treat census #41 as its live-DB corroboration surface, not re-derive it.


  • entity_type='content_item' — the plan under-inventoried it by 8×. id-317’s W4 named 3 sites; the actual count is 24 property-value sites across 11 files: cron freshness-transitions ×9, review-cadence ×4, quality-score ×2, classification-quality, source-documents/[id]/send-to-review ×2, content-owners/bulk-assign, review/assignments, governance/review, plus review.ts:403, governance.ts:1306, content.ts:1871. All three plan-named sites have moved. Backfill still not needed (S483 finding unchanged).

  • Three production files ship live content_items strings at runtime — previously mis-filed as prose:

    • lib/mcp/tools/review.ts:219 — MCP tool description; public wire copy, arguably W5.
    • lib/mcp/tools/content.ts:477,484,491 — Zod .describe() argument help.
    • lib/content/content-suggestions.ts:202sb() telemetry label 'content_items.forSuggestions'.

    By the plan’s own W5 standard (which counts pipelineName: 'mcp_create_content_item' as a residual), these are residuals.

  • A 5th query-key consumer the plan missed: components/review/PublicationReviewQueue.tsx:174. Two stale line refs in the same wave: use-library-bulk-actions 88→104, publication-review-action-bar 114→117.

  • lifecycle_type value-compares 'bid_discovered' in SQL at 20260702130000_id131_freshness_rpcs.sql:95 — the facet moved to record_lifecycle under id-131. A TS-only sweep cannot see this. id-292’s “backfill UPDATE + TS literals atomically” plan must therefore also patch the compute_freshness-family RPC bodies, or the backfill is not atomic. (Real TS write surface for lifecycle_type is 2 sites — lib/mcp/tools/content.ts:1226, e2e/fixtures/test-data-fixture.ts:305 — not the 5 column-writes reported; the other three write governance columns only. That gap is G8.) Pipeline reads it at l_records.py:1194.

  • workspaces.type TEXT column is dropped — the discriminator is application_type_id. “The DB still emits the alias” no longer holds. The surviving 'bid' alias is one MCP tool (lib/mcp/tools/workspaces.ts:36,76), so retirement is an MCP-deprecation decision, not a DB data migration — materially cheaper and narrower than id-292’s class 7 as written.
  • VALID_BID_STATUSES / TERMINAL_BID_STATUSES — zero repo-wide hits; types/bid.ts no longer exists. The KEEP-list entry naming them is moot. (The other two KEEP entries — bid_response reorient tag, 'bid' form_types CV — are live and stay protected.)
  • Two stale refs still named in id-292’s Details field: app/api/items/route.ts no longer exists, and lib/queue/handlers/batch-reclassify.ts no longer carries the literal.
  • app/api/workspaces/route.ts:140 carries a comment describing a legacy-alias mapping that does not exist in the code below it. WorkspaceCreateBodySchema.type is z.enum(getValidTypeValues()), and lib/workspace-types.ts:23-30 returns six keys, none of them 'bid' — the route rejects the alias at validation. The comment documents intent that was never implemented or was later removed. Delete it independently of any class-7 decision; it actively misleads.
  • A raw query key outside the factory. ['content-items'] is built raw, not via the key factory, at __tests__/lib/content-browsing/use-content-bulk-runner.test.ts:34,112. An invalidation that silently misses is exactly the failure mode id-317’s W3(a) exists to prevent — a key-factory-driven sweep will not see this site.
  • Volume reality — do not price comments as work. 221 comment-only files carry the content_items string (incl. tests; 116 outside __tests__) — id-317’s W1 holds unchanged. Of the 345 files carrying the string at all, that is the clear majority. Also: W0 is RESOLVED (bl-495 shipped as PR #124, c6d28d2a + a0178af4) — zero live .from('content_items') repo-wide; the remaining live-code survivors are 10 ESLint RuleTester fixture strings.

  • id-292 — 5 live classes (1, 2, 3, 4, 6) + premise-changed 7; class 5 resolved, class 8 gone. Priority unchanged, stays parked, re-scoped.
  • id-317 — W0 resolved; W3(a) and W4 decayed (the two above); W1, W2, W3(b), W5 hold. W5 naming remains owned by id-71’s verdict process. Stays parked.

Neither task’s status changed as a result of this record.