Skip to content

[Phase 16] S16 — Documentation source-of-truth and localization governance #902

Open

Description

@cemililik

Roadmap · Phase 16, step S16 · size M · 5 unit(s) · planned in docs/roadmap/phase-16-trust-surface-hardening.md:797-822

Summary

Hand-maintained restatements of facts that have a canonical source — the release version, the locale key count, the wheel version, the config schema, the docs taxonomy. Every fix is the same move: derive or register, then ratchet. Deliberately last: it ratchets the parity guards to --strict, which must not run ahead of S15's large bilingual edits.

Units

Unit Tracked by (October 2026 review)
C31-LOCALIZATION-GOV (= DOCS-10 + DOCS-18) #636 · #670 · #732 · #751 · #778 · #797 · #810
F-W20260729-DOCS-11 #580 · #732
F-W20260729-DOCS-12 #606 · #778
F-W20260729-DOCS-13, F-W20260729-DOCS-17 #621 · #667 · #703 · #793 · #796

Plan

  • Extend check_release_record_sync.py to the roadmap current-state lines and the strategy restatements; add table/list-row parity to the bilingual guard.
  • Optional, low priority: a statement of what site/ is and what a claim on it must be backed by, and an index for docs/usermanuals/ (link discipline, bilingual duty, schema-drift gate, build step, its own workflow, json-output.md as a MAJOR-locked contract).

Exit criteria

  • localization.md's locale-status section matches check_site_chrome_parity.py --strict output, and CI runs that guard with --strict.
  • check_bilingual_parity.py --strict covers docs/product_strategy.md and fails when a mirror drops a table row or list item inside a matched section.
  • docs/roadmap.md and its Turkish mirror name exactly one latest release in the headline, the current-state sentence, the status table, the mermaid graph and the documentation map.
  • Every notebook version literal derives from one constant, and the pin guard fails when a downloaded artifact tag differs from the wheel pin.
  • docs/README.md exists, matches documentation.md's directory rules, is reachable from the pyproject.toml Documentation URL, and labels canonical versus archival surfaces.

How to deliver

  • One root-cause family, committed on its own; then an Opus review round and a Sonnet review round, each with verified findings fixed and committed before the next step begins.
  • A reproducer that is red before the fix and green after; the full gauntlet from CLAUDE.md passes under ./.venv/bin/python.
  • Every English documentation edit ships with its Turkish mirror in the same commit; a new or renamed audit event gets its EN and TR catalog rows in the same PR.
  • A step that grows a deferred module carries its budget_history justification in the same diff; a widened guard rolls out non-strict first, then flips.
  • Commit bodies cite Absorbs F-W20260729-…; the CHANGELOG [Unreleased] section gets an entry only for a change a user or library consumer can observe (decision C-20).

Planned in docs/roadmap/phase-16-trust-surface-hardening.md (read at f94595f). Unit IDs (F-W20260729-…) come from the 2026-07-29/30 full-project review; the issue numbers next to them are the October 2026 review's records of the same defects.

Metadata

Metadata

Assignees

No one assigned

    Labels

    blockedWaits for another issue (see Blocked by); set and removed automatically, never by handphase: 16Roadmap Phase 16: trust surface hardening (docs/roadmap/phase-16-trust-surface-hardening.md)source: roadmapPlanned or deferred work recorded in docs/roadmap/

    Type

    No type

    Projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions