Skip to content

docs(plans): mark each planning record with its shipped status - #1198

Merged
mforce merged 6 commits into
mainfrom
docs/plans-status-banners
Oct 11, 2026
Merged

mforce merged 6 commits into
mainfrom
docs/plans-status-banners

Conversation

@mforce

@mforce mforce commented Oct 10, 2026 •

Copy link
Copy Markdown
Owner

Agents searching the repo land inside docs/plans/ files and treat them as current guidance. The README already says plans are historical, but agents rarely open it. Its table also listed 4 of the 27 records, and two of those rows were wrong: 770-mcp-server and 788-mcp-oauth said "Design only; no code written" after #788 and #805 shipped.

This PR changes documentation only. No plan's content changes.

  • Each of the 86 .md files under docs/plans/ except the README now opens with one line above its title. The line says the file is a planning record, gives its status, says the code wins where they disagree, and links to the README with a relative path that matches the file's depth.
  • The README table has one row per folder or loose file (27). The 770 and 788 rows are corrected. The rest of the README wording is unchanged.
  • The README sentence "Nothing here is updated afterwards" now names the status line as the one exception, and says it is kept current.

A script inserted the lines, then a second script checked that every file has exactly one status line, on line 1, directly above a # heading, with a link that resolves to docs/plans/README.md (ok: 86 files, one status line each). The scripts are not committed.

Status per record

Sources are gh issue view <n> --json state,stateReason,closedByPullRequestsReferences plus the merged PRs that name each issue. Two closing references were release PRs (#784 on #770, #802 on #839), so I left them out.

Record Issue Status
357-change-user-email/ #357 Shipped in #605; issue closed
388-worker-flock-read-scoping.md #388 Shipped in #611; issue closed
500-seeded-audit-actor/ #500 Shipped in #517; issue closed
508-audit-monotonic-order/ #508 Shipped in #700; issue closed
562-tenant-write-token/ #562 Shipped in #671; issue closed
585-587-login-credentials/ #585, #587 #587 shipped in #598; #585 closed as not planned, its stable field identifiers shipped under #587
606-step-up-flock-scope/ #606 Shipped in #609; issue closed
612-worker-sale-allocation/ #612 Shipped in #619; issue closed
651-652-spa-elevation-and-caps/ #651, #652 Shipped in #661; issues closed
653-655-list-screens/ #653, #655 Shipped in #668, with a #653 follow-up in #678; issues closed
670-user-roles-account-id/ #670 Shipped in #675; issue closed
672-fake-otlp-collector/ #672, #676 Shipped in #677; issues closed
703-shared-dialog-session/ #703 Shipped in #704, #705, #706, #707, #710, #711 and #714; issue closed
721-discount-reason/ #721 Shipped in #756; issue closed
722-audit-price-payload/ #722 Shipped in #742; issue closed
723-724-discount-visibility/ #723, #724 Shipped in #741; issues closed
727-discount-ceiling/ #727 Shipped in #766; issue closed
732-rename-account-verb/ #732 Shipped in #733; issue closed
745-audit-details-column/ #745 Shipped in #749; issue closed
770-mcp-server/ #770, epic #789 Design merged in #785; issue closed. Being built under epic #789: #788 shipped, #805 merged in #1181, #806 merged in #1195; the epic stays open for #807 to #811
788-mcp-oauth/ #788 Shipped in slices #795 to #800, #1146, #1148 and #1164; issue closed; #793 (SPA login on OpenIddict) deferred
822-mui-revamp/ #822 Design doc merged in #862; issue closed
839-integration-wall-clock/ #839 Shipped in #861; issue closed
840-integration-flakes/ #840 Shipped in #866, #876 and #895; issue closed
863-integration-collection-split/ #863 Shipped in #1000, #1002 and #1003; the collection split was measured and reverted in #1004; issue closed
audit-entity-history/ #493 Shipped in #516; issue closed
screenshot-pipeline-and-conventions/ #660, #662, #663, #664 Shipped in #665; issues closed

The 770 row will go stale when epic #789 closes. Whoever closes it updates this row and the six 770 status lines.

Guards run

  • TenancyDocsFreshnessTests walks every tracked file for dormant-tenancy wording and the Postgres and Redis image pins. RenameAccountDocsTests reads 732-rename-account-verb/02-implementation-runbook.md. Together: 19 passed, 0 failed.
  • SchemaDocsTests only enumerates docs/schema/, and no schema doc changed, so I did not run it or generate.sh --check.

Every file under docs/plans/ now opens with one line saying it is a
planning record, its status, and that the code wins. The README table
covers all 27 records and corrects the 770 and 788 rows.
@mforce
mforce marked this pull request as ready for review October 10, 2026 22:04
@mforce
mforce merged commit b6e5103 into main Oct 11, 2026
17 checks passed
@mforce
mforce deleted the docs/plans-status-banners branch October 11, 2026 00:07
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant