2026-04-25 — Changelog hygiene: backfill pr: and rebuild meta.json pages
Backfilled the pr: frontmatter on three existing changelog entries to reference their merging PRs, and rewrote apps/docs/content/docs/changelog/meta.json to list every entry in chronological order so the sidebar reflects the directory.
What changed
apps/docs/content/docs/changelog/2026-04-22-ssot-consolidation.mdx—pr: null→pr: 650(the scaffolding PR that introduced this entry). Also dropped one now-obsolete sentence from the body that promised the backfill is now happening.apps/docs/content/docs/changelog/2026-04-22-voice-config-capture.mdx—pr: null→pr: 655.apps/docs/content/docs/changelog/2026-04-22-voice-handoff-ingest.mdx—pr: null→pr: 656.apps/docs/content/docs/changelog/2026-04-22-pat-rotation.mdx— keptpr: null. The entry was added as a direct commit tomain(511cb4b), not via a PR. Issue #657's body suggested PR #651 closed it; that turns out to be wrong (#651 was an unrelated docs-gaps PR that merged ~25 minutes earlier with a different head SHA on a different branch). The entry's body already documents the no-PR provenance.apps/docs/content/docs/changelog/meta.json—pagesarray expanded from 2 entries to 6, sorted newest-first by add-commit chronology, withindexlast. Three sidebar-orphaned entries (pat-rotation,voice-config-capture,voice-handoff-ingest) are now wired in.
Why
The docs-guard CI gate requires every PR to add a changelog entry, but until now four of the five existing entries had pr: null and three of them were missing from meta.json pages — so the sidebar at /docs/changelog/ only showed the seed entry. The post-merge audit cron (#649) is going to rely on accurate pr: and closes: frontmatter to detect issues closed without a corresponding changelog entry; that audit needs clean inputs to start without spamming false positives.
This entry is the changelog-of-the-changelog: a small bookkeeping PR that closes the gap without changing any docs content. Its own pr: field stays null (it precedes its own PR) and will be backfilled the next time someone runs this same pattern.
Scope
Bookkeeping. No content changes to existing entries beyond the single pr: field per file (and one obsolete sentence removed from 2026-04-22-ssot-consolidation.mdx body). No new docs site routes; the three orphaned entries simply become reachable via the sidebar.
Convention captured
If no PR introduced an entry (e.g., a direct commit to main), leave pr: null and explain in the body. The audit cron (#649) should treat pr: null as legitimate provenance and rely on closes: for issue-matching.
A second convention this PR exposed: descriptions containing literal key: substrings (e.g. pr:) MUST be quoted in YAML frontmatter, otherwise the YAML parser treats them as nested mapping entries and the build fails. Existing entries dodged this only because none of them had colons in their descriptions.
Follow-ups
- #649 (SSOT-9) — the audit cron — now has clean changelog frontmatter to scan against. Land it next.
- The
2026-04-22-ssot-consolidationentry body still embeds a literal token-prefix string from the now-revoked PAT (#641 closed the rotation). The token is dead but the artifact remains. A follow-up PR could scrub the line; out of scope here to keep this PR a strict bookkeeping change.
2026-04-25 — OneDrive Claude/ teardown: handoff triage + tree removal
Triaged the 7 remaining handoff/design-draft files in ~/OneDrive/Dokumente/Claude/Projects/fragJUlia/, discarded 6 as process artifacts, preserved 1 substantive presentation-design reference out-of-tree, then removed the entire OneDrive Claude/ tree to satisfy SSOT-4 and shut the OneDrive write path for Claude sessions.
2026-04-24 — Voice stack bring-up + MEGA close-out tracker
Bring-up on the single-L4 GPU instance reached healthy state for all services; direct-endpoint TTS validated. 18 findings, 9 live-not-PR'd changes, and 2 open research questions consolidated into a single close-out tracker.