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
@@ -188,11 +188,11 @@ contract Claude operated under for the rest of the work:
> ssh -T git@git.benstull.org
> (expect a greeting from Gitea acknowledging him)
>
> 7) CREATE THE rfc-app REPO (so Session B has a target)
> 7) CREATE THE rfc-app REPO (so Session 0002.0 has a target)
> - Walk Ben through: + → New Repository. Owner = his admin user.
> Name = rfc-app. Description = "Open-source RFC platform
> software." Visibility = Public. Do NOT initialize with
> README/license/.gitignore (Session B will do a --mirror push,
> README/license/.gitignore (Session 0002.0 will do a --mirror push,
> requires empty target).
> - Validate: visit https://git.benstull.org/<admin>/rfc-app, sees
> empty-repo quick-setup page.
@@ -205,7 +205,7 @@ contract Claude operated under for the rest of the work:
> - Ben can `ssh -T git@git.benstull.org` and gets the Gitea
> greeting.
> - `git ls-remote https://git.benstull.org/<admin>/rfc-app.git`
> returns empty (the empty target repo Session B will push into).
> returns empty (the empty target repo Session 0002.0 will push into).
> - Ben confirms all four `app.ini` secrets are in his password
> manager.
>
@@ -296,7 +296,7 @@ marked them done one at a time as the session progressed:
8. Install nginx + certbot, configure reverse proxy and TLS
9. Start Gitea and complete browser install wizard
10. Register SSH key in Gitea and validate
11. Create empty rfc-app repo for Session B mirror push
11. Create empty rfc-app repo for Session 0002.0 mirror push
12. Run end-to-end verification checks
---
@@ -824,7 +824,7 @@ out of the conversation and out of memory.
> Great! What do I do next?
Claude pointed at Session B (the rfc-app mirror push) as the
Claude pointed at Session 0002.0 (the rfc-app mirror push) as the
obvious continuation, plus optional follow-ups:
- Memory entries (flagged earlier — Ben to confirm).
@@ -842,7 +842,7 @@ Claude:
**The Jan setup** (combined with the transcript request). Ben:
> ok, give me a prompt for session B. Also, create a doc that
> ok, give me a prompt for session 0002.0. Also, create a doc that
> captures this session in its very entirety. For history. Radical
> transparency. Include literally everything you read or wrote,
> all context window states, etc. I know it'll be big, but I have
@@ -857,7 +857,7 @@ Claude:
Claude wrote v1 of this transcript (sections 18 below as they
stood at that point, plus 4.18 as a single short paragraph), gave
the Session B prompt, briefly flagged that "literally everything"
the Session 0002.0 prompt, briefly flagged that "literally everything"
wasn't actually achievable from inside Claude's context (the
transcript is reconstructed from in-context state, not byte-dumped
from a runtime log) — and offered the Jan punchline:
@@ -887,12 +887,12 @@ Ben, declaring the end of the session:
> to. And I want it to include this. This is the last message of
> this session though, I think. Just do one last transcript with
> eeeeeeeeeverything for eeeeeeeeeveryone as a markdown file and
> i'll copy the prompt for session B and we'll start to unwind
> i'll copy the prompt for session 0002.0 and we'll start to unwind
> this k-hole
Claude's final action: edited sections 4.18 and 4.19 of this file
in place (the version you're now reading), updated the closing
timestamp, and signed off. The Session B prompt in §5 is the
timestamp, and signed off. The Session 0002.0 prompt in §5 is the
durable handoff artifact Ben will copy into the next session.
Section 6 still holds the three configuration files written
during the session, §7 the cumulative shell-command audit, §8 the
@@ -902,16 +902,16 @@ The session ends here.
---
## 5. The Session B handoff prompt
## 5. The Session 0002.0 handoff prompt
Sequenced as a fresh start, intended to be pasted into a new Claude
Code session opened inside `~/git/rfc-app` (or wherever Ben's local
rfc-app checkout lives):
```
You're Session B in a two-session split. Session A (already complete)
You're Session 0002.0 in a two-session split. Session 0001.0 (already complete)
stood up git.benstull.org as Ben Stull's personal Gitea instance.
Your job: push the local rfc-app repo to the empty target Session A
Your job: push the local rfc-app repo to the empty target Session 0001.0
created.
CONTEXT
@@ -965,7 +965,7 @@ WHAT TO DO
CONSTRAINTS
-----------
- Don't touch Session A's infra (the gitea VM, nginx, app.ini, etc.).
- Don't touch Session 0001.0's infra (the gitea VM, nginx, app.ini, etc.).
- Don't push secrets.
- If anything is unclear, ask Ben.
```
@@ -1329,7 +1329,7 @@ For completeness on what's been left out:
_Last updated: 2026-05-25, after Ben requested an "eeeeeeeeeverything
for eeeeeeeeeveryone" final pass to capture the forked Jan joke and
the final transcript-request exchange. The Session A work is
complete; the Session B handoff prompt in §5 is ready to copy-paste
the final transcript-request exchange. The Session 0001.0 work is
complete; the Session 0002.0 handoff prompt in §5 is ready to copy-paste
into a fresh Claude Code session in the rfc-app directory. Happy
birthday, gitea._