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.
Sweep inbox — {377.6} cleanup evidence
Section titled “Sweep inbox — {377.6} cleanup evidence”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.
(a) Retargeting/repointing not completed
Section titled “(a) Retargeting/repointing not completed”-
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: cronfreshness-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, plusreview.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_itemsstrings at runtime — previously mis-filed as prose:lib/mcp/tools/review.ts:219— MCP tooldescription; public wire copy, arguably W5.lib/mcp/tools/content.ts:477,484,491— Zod.describe()argument help.lib/content/content-suggestions.ts:202—sb()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-actions88→104,publication-review-action-bar114→117. -
lifecycle_typevalue-compares'bid_discovered'in SQL at20260702130000_id131_freshness_rpcs.sql:95— the facet moved torecord_lifecycleunder id-131. A TS-only sweep cannot see this. id-292’s “backfill UPDATE + TS literals atomically” plan must therefore also patch thecompute_freshness-family RPC bodies, or the backfill is not atomic. (Real TS write surface forlifecycle_typeis 2 sites —lib/mcp/tools/content.ts:1226,e2e/fixtures/test-data-fixture.ts:305— not the 5column-writesreported; the other three write governance columns only. That gap is G8.) Pipeline reads it atl_records.py:1194.
(b) Redundant / dead functionality
Section titled “(b) Redundant / dead functionality”workspaces.typeTEXT column is dropped — the discriminator isapplication_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.tsno longer exists. The KEEP-list entry naming them is moot. (The other two KEEP entries —bid_responsereorient 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.tsno longer exists, andlib/queue/handlers/batch-reclassify.tsno longer carries the literal.
(c) Debris — deletable independently
Section titled “(c) Debris — deletable independently”app/api/workspaces/route.ts:140carries a comment describing a legacy-alias mapping that does not exist in the code below it.WorkspaceCreateBodySchema.typeisz.enum(getValidTypeValues()), andlib/workspace-types.ts:23-30returns 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.
(d) Hazards the sweep must not trip over
Section titled “(d) Hazards the sweep must not trip over”- 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_itemsstring (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 ESLintRuleTesterfixture strings.
Net effect on the two source tasks
Section titled “Net effect on the two source tasks”- 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.