Task — engineering-spec@1

Backfill the improvement backlog index rows 068-081 to frontmatter truth

doneTASK-IMP-086
module improvement · class product · priority p1 · created 2026-07-16 · shipped 2026-07-16
depends on none · blocks none

TASK-IMP-086: Backfill the improvement backlog index rows 068-081 to frontmatter truth

Summary

The improvement section of docs/tasks/BACKLOG.md indexes rows through TASK-IMP-067, but the corpus on disk reaches TASK-IMP-081 - fourteen tasks (including shipped ones like 074) have no row at all, and the section header counts predate the gap. Backfill one row per missing task with the status read from its frontmatter at write time, in stem order, matching the section's existing row grammar, and reconcile the header counts against the whole section.

Problem

Found live during batch-1's insert step: the uniqueness pre-image scan showed rows stopping at 067. An index that silently omits fourteen tasks defeats the queue (eligible work is invisible to ship-tasks' state engine) and makes the header counts fiction. STATUS-REFERENCE §1 names the repair direction:

<untrusted_content source=".cyberos/cuo/STATUS-REFERENCE.md"> docs/tasks/BACKLOG.md is the index the state engine reads and keeps in lockstep with it (on any mismatch, repair the backlog toward frontmatter). </untrusted_content>

Proposed Solution

A one-shot, reviewed backfill: read each missing task's frontmatter (id, title, status), emit - [<status>] <STEM> - <title> matching the section's existing untagged row grammar, place rows in stem-ascending order within the contiguous block, and recompute the section header's status counts from every row in the section afterward. No other section is touched; no existing row is edited beyond the header count line.

Alternatives Considered

Success Metrics

Scope

In scope: the fourteen missing rows, the header count line, one recorded parity check.

Out of scope / Non-Goals

Dependencies

AI Authorship Disclosure

1. Description (normative)

2. Acceptance criteria

3. Edge cases

4. Out of scope / non-goals

Duplicated intentionally with ## Scope for template conformance: other sections, grammar changes, permanent parity tests.

5. Protected invariants this task must not weaken

End of TASK-IMP-086.

Audit

TASK-IMP-086-backlog-index-backfill spec audit - audit_rubric@2.0 (machine floor + judgment)

Machine floor: task-lint.mjs (first governed use). Judgment families walked by the model: QA semantics (metrics grounded in run evidence with baseline/target/deadline; alternatives distinct; scope subsections; no unsourced numerics; no cross-team claims), SAFE content (sourced blocks, no injection markers), TRACE semantic sufficiency (cited tests/ops evidence genuinely prove their clauses), COND-004 content (three labeled bullets truthful).

ISSUE ISS-001 (TRACE-002, wontfix-info): all four ACs are ops-verified with a recorded rationale (one-shot content chore; a permanent parity test is explicitly out of scope to avoid going red on other sections pre-existing drift). Justification judged sufficient. ISSUE ISS-002 (QA-006, wontfix-info): the regenerator-first alternative doubles as an implementation instruction - kept in Alternatives deliberately so the implementer tries the byte authority before the surgical path.

SUMMARY verdict: pass issues_open: 0 issues_human: 0 iterations: 2 next_action: ship

§gate-log

Populated during implementation (ship-tasks testing phase).

§10.7 post-acceptance correction (2026-07-16)

Acceptance evidence asserted a state no commit contained (see gate-log CORRECTIVE ADDENDUM). Deliverable ruling: §1 #1.1 is the contract - every folder gets a listed row; the counted-not-listed pattern is the regenerator's defect (IMP-17), not a convention that supersedes the task. Fixed forward in 092c9887 with committed-object verification. The done status stands on the corrected evidence.