Session 0018.0 (Wave 9): rewrite legacy session refs in transcript bodies + README scoping

- Rewrite every legacy `Session L` / `Session M.1` etc. reference inside
  transcript bodies to the numeric form (`Session 0012.0` / `Session 0013.1`),
  via a mechanical Python sed pass scoped to canonical-filename transcripts
  only (502 replacements across 39 files; 21 files in this published repo +
  18 sibling files in `~/git/ohm-infra/`). The §23 rename was originally
  filename-only — session 0018.0 reverses that and rewrites the bodies too,
  so cross-references inside a transcript match the filename you'd browse
  to. The mapping table (`A → 0001` … `N → 0014`) lives in
  `SESSION-PROTOCOL.md` §1 (also amended this session) for anyone hitting
  an old external link.

- Amend README.md:
  - New "Where the record begins" section noting OHM started with two
    vibe-coded prototypes (no transcripts; the discipline that produced this
    record didn't exist yet). The transcripts here begin at the
    spec-driven-development phase — not at the literal beginning of OHM.
  - Update the existing "Sessions 0001 through 0013 originally shipped
    under a letter-form naming" paragraph to reflect that body refs are
    now also in numeric form.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
Ben Stull
2026-05-28 09:40:06 -07:00
parent 412b6ab5d8
commit d5125190ae
21 changed files with 281 additions and 255 deletions
@@ -1,4 +1,4 @@
# Session H — Transcript
# Session 0008.0 — Transcript
> Date: 2026-05-27
> Goal: Execute Slice 5 of the `ohm-rfc-app-flotilla` SPEC §20 slicing
@@ -121,7 +121,7 @@
- Slice 4 code lived in the working tree, uncommitted: `deploy.py`,
`ssh.py`, `health.py`, `deploy_log.py`, migration 004, plus the
CLI extensions and 58 new tests. `VERSION` was bumped to 0.4.0;
`CHANGELOG.md` had the 0.4.0 entry written. Per Session G's
`CHANGELOG.md` had the 0.4.0 entry written. Per Session 0007.0's
outcome, the v0.4.0 cut was gated on the first real live deploy —
which had not yet happened.
- rfc-app at v0.2.3 (latest tag); `/Users/benstull/git/rfc-app` had a
@@ -129,7 +129,7 @@
beta gate, allowlist table, `BetaPending.jsx`, nginx config rename,
admin allowlist UI, anonymous read mode.
- ohm-rfc `.rfc-app-version` committed at `0.3.0` — but rfc-app had
no `v0.3.0` tag. Pin was ahead of reality (Session G had not done a
no `v0.3.0` tag. Pin was ahead of reality (Session 0007.0 had not done a
live deploy, so the spec assertion in §13.3 that current pin is
0.3.0 was aspirational).
- OHM VM `ohm-app` in `wiggleverse-ohm` running rfc-app **v0.2.2**
@@ -633,8 +633,8 @@ patterns, with the §19.3 rule applied where relevant.)
- **OHM VM**: serving rfc-app v0.3.0. /api/health green. Two
`deploys` rows in the local flotilla SQLite (`id=1` for
v0.2.3, `id=2` for v0.3.0).
- **ohm-infra**: this transcript (Session H) at
`~/git/ohm-infra/SESSION-H-TRANSCRIPT.md`.
- **ohm-infra**: this transcript (Session 0008.0) at
`~/git/ohm-infra/SESSION-0008.0-TRANSCRIPT.md`.
## Arc 5 — post-cut: live incident, cleanup, v1.0.1, parallel-fork operating instructions
@@ -832,7 +832,7 @@ autonomous)"** — that codifies:
provided secret bytes (the driver can't invent them).
7. Update the roadmap (strikethrough the row, link to release tag
and deploys.id) when each item ships.
8. Write a Session I transcript at end-of-wave.
8. Write a Session 0009.0 transcript at end-of-wave.
Constraints the driver respects: no `git config` edits, no force-
pushes, no `--amend` of pushed commits, no skipping pre-commit
@@ -868,8 +868,8 @@ Concretely:
when the wave is done.
5. Continue to Wave 2 if its dependencies are now met. Keep going until you hit a blocker
(operator-provided secret needed, deploy failure, ambiguity).
6. Write a Session I transcript at ~/git/ohm-infra/SESSION-I-TRANSCRIPT.md following the
Session H shape.
6. Write a Session 0009.0 transcript at ~/git/ohm-infra/SESSION-0009.0-TRANSCRIPT.md following the
Session 0008.0 shape.
Stop and wait for the operator if: a deploy fails, a release's Upgrade steps require a
secret you can't generate, or you encounter cross-repo ambiguity. Do not invent secret
@@ -903,11 +903,11 @@ and updates the roadmap.
By the time the operator wakes up, OHM should be on `v0.5.0` (or
further if Wave 2 dependencies were met), the flotilla v1.1.0 cut
should have happened if the VM rename produced one, and Session I's
should have happened if the VM rename produced one, and Session 0009.0's
transcript should record the journey.
If the wave hits a blocker (most likely candidates: the VM rename
needs operator-level GCP gestures that gcloud can't script around,
or the collaboration-model change introduces a schema migration that
needs the operator's blessing), the driver pauses and leaves a clear
"waiting on operator" note in the partial Session I transcript.
"waiting on operator" note in the partial Session 0009.0 transcript.