From 618edf3f9bc481328ce48e331f567568399fba5f Mon Sep 17 00:00:00 2001 From: Ben Stull Date: Fri, 29 May 2026 02:29:12 -0700 Subject: [PATCH] add 0037/SESSION-0037.0-TRANSCRIPT-2026-05-28T23-20--2026-05-29T02-27.md + replace placeholder/variant SESSION-0037.0-TRANSCRIPT-2026-05-28T23-20--2026-05-29T00-12.md --- ...RIPT-2026-05-28T23-20--2026-05-29T00-12.md | 238 ---------------- ...RIPT-2026-05-28T23-20--2026-05-29T02-27.md | 261 ++++++++++++++++++ 2 files changed, 261 insertions(+), 238 deletions(-) delete mode 100644 0037/SESSION-0037.0-TRANSCRIPT-2026-05-28T23-20--2026-05-29T00-12.md create mode 100644 0037/SESSION-0037.0-TRANSCRIPT-2026-05-28T23-20--2026-05-29T02-27.md diff --git a/0037/SESSION-0037.0-TRANSCRIPT-2026-05-28T23-20--2026-05-29T00-12.md b/0037/SESSION-0037.0-TRANSCRIPT-2026-05-28T23-20--2026-05-29T00-12.md deleted file mode 100644 index 30c8917..0000000 --- a/0037/SESSION-0037.0-TRANSCRIPT-2026-05-28T23-20--2026-05-29T00-12.md +++ /dev/null @@ -1,238 +0,0 @@ -# Session 0037.0 — Transcript - -> Date: 2026-05-28 → 2026-05-29 (spanned midnight, PST implied) -> Goal: Operator-driven philosophy session — pressure-test the OHM -> thesis, then capture the architecture it produced as deployment -> content. No rfc-app release. -> -> Outcome: **Two `ohm-rfc` content docs shipped + deployed to OHM.** -> `PHILOSOPHY.md` reframed off the model-training story onto -> "software is built operationalizing OHM concepts"; new -> `OPERATIONAL-MODEL.md` captures the concept→mechanic operational -> layer + its governance. Live at https://ohm.wiggleverse.org/api/philosophy. -> No version bump (content, not framework). -> -> Notes: -> - This session did **not** run the start-gesture claim; ID 0037 was -> claimed at session end (the §83/§7 fallback). Start time is -> **approximate** (best estimate from the conversation + the content -> commit at 2026-05-29T00-05). -> - A **parallel session (0036.0)** pushed a ROADMAP-reconcile commit -> onto `ben.stull/ohm-rfc` main on top of this session's content -> commit; the fast-forward was clean (no conflict). - ---- - -## Pre-session state - -- **OHM live**: rfc-app v0.29.0, deploys.id=40, healthy - (`/api/health` → `{"version":"0.29.0","status":"ok"}`). -- **ohm-rfc pin** (`.rfc-app-version`): 0.29.0. -- **ohm-rfc HEAD** at session open: `02d22fe` (ROADMAP #18 flotilla - v1.3.0 webhook verb, Session 0035.0). Working tree clean. -- **Live `/api/philosophy`**: served the original `PHILOSOPHY.md` - ("Large language models work brilliantly with programming - languages…") — the model-training-framed version. -- The operator opened with a roadmap question, which became an - extended design conversation about what OHM is *for*. - ---- - -## Turn-by-turn arc - -### Arc 1 — Roadmap status read - -Operator asked "what's left in the roadmap." Read `ohm-rfc/ROADMAP.md` -(2245 lines) end-to-end + the version-targets table. Reported: the -Phase A–E feature arc (#1–#16) is shipped; what remains is a tail — -#22 (pro-consent copy, waiting on operator-drafted + counsel-reviewed -text), #21 Part A (Amplitude audit, waiting on real-world data), -#18/#20 ops follow-throughs (bounce wiring, DMARC ramp), the -naming-alignment arc (#33, plus #34 to formally close), and two -screenshot-gated polish slices (#31b, #25-followup). Flagged that the -#27/v0.24.0 row read stale against the 0.29.0 pin (it has since been -reconciled — see Arc 5's note on the parallel 0036.0 commit). - -### Arc 2 — "Is OHM a good idea?" → the thesis - -Operator asked for a genuine opinion, then supplied the thesis: an -**ethical social and content platform** ("wiggling through the -world") where interaction and machine-use serve the humans involved, -and where **defining the concepts** (informed consent, etc.) drives -the engagement model. Pressure-tested it: the real insight is that -existing platforms run on *implicit* definitions ("engagement = -clicks") and that's the source of harm; making the definitions -explicit and prior to the mechanics is the principled move. Pushed on -three risks: (1) the gap between a definition and a mechanic is where -the difficulty/harm lives; (2) left-brain/right-brain is a -credibility liability if treated as load-bearing; (3) governance — -who defines, and the self-selection of RFC-writers. - -### Arc 3 — Operational RFCs (the architecture crystallizes) - -Operator: "we also need RFCs for the operational model, not just -concepts." This closed the gap from Arc 2. Settled the shape: -**two RFC kinds** — concept RFCs (declarative contract) and -operational RFCs (mechanic, must cite the concept it serves, carries -a validation/sunset clause). Traceability makes "is this ethical?" -checkable. Then operator: "these are specs for mechanics, but people -collaborate on them — not 'XYZ PM owns the spec.'" Settled the -governance edge: collaboration ≠ unowned; the real artifact is the -**ratification procedure**; the concept layer is the spine that keeps -disputes from being bikeshedding; keep accountability locatable -(distributed authorship + recorded ratification). Open question left -deliberately: the tie-break when two co-authors both argue their -mechanic serves the concept. - -### Arc 4 — Capturing it as docs - -Operator asked whether to add this beside the philosophy doc or weave -it in. Recommended **separate doc + one-line bridge** (different -altitude, different maturity, introduces a second RFC kind). Wrote -`ohm-rfc/OPERATIONAL-MODEL.md` and added a forward-pointer inside -`PHILOSOPHY.md`'s "How the framework operationalizes this" section. -Operator then made two corrections that reshaped `PHILOSOPHY.md` -itself: - 1. "It's not just models trained on OHM — software is *built using* - OHM concepts." Added a "Two ways a system can consume OHM" - section to `OPERATIONAL-MODEL.md` naming software-construction as - load-bearing, model-grounding as the bonus. - 2. "We shouldn't talk about model training here at all." Confirmed - scope via question → "drop training, keep co-authoring." Rewrote - `PHILOSOPHY.md`: opening, three-panel diagram, "asymmetry", - "code's dictionary", and the humility note recast from - "models trained on OHM → wiser output" to "software built on - undefined human concepts → harm; define them so software is built - right." **Kept verbatim**: the human+machine co-authoring - mechanism, the POSIX/IETF/HTTP standards analogy, the three-part - definition (meaning/relationships/protocol), the close. - -### Arc 5 — Commit + deploy - -Committed both docs to `ohm-rfc` main (`9a4277c`), pushed to `origin` -(`ben/ohm-rfc`, a Gitea redirect to `ben.stull/ohm-rfc` — same repo; -the username was renamed). Then traced the **actual content-deploy -path**, which is non-obvious: - -- `PHILOSOPHY.md` is deployment-side rich content read from a **VM - file** (`PHILOSOPHY_PATH=/opt/ohm-rfc-app/meta-content/PHILOSOPHY.md`), - **not** baked by `flotilla deploy` (nothing in flotilla syncs - `meta-content/`; deploy only pulls rfc-app code at the pin). -- The VM's `meta-content` is a clone of `ben.stull/ohm-rfc`, but it - was **frozen at an ancient commit** (`eae9dc5`, pin 0.2.1 era) — - never pulled since early bootstrap. Working tree clean on `main`. -- `git pull --ff-only` on the VM clone (as `ohm-rfc-app`, via IAP SSH) - fast-forwarded it. It landed on `6cf7e41` — **a parallel session - 0036.0 had pushed a ROADMAP reconcile on top of `9a4277c`**; clean - FF, my content included underneath. -- The backend caches `PHILOSOPHY.md` in-process (`philosophy.load()` - fills a module `_cache`; `refresh()` exists but **nothing calls - it** — the "periodic re-read" in the docstring is not wired). So a - pull alone didn't update the live API. **Restarted - `ohm-rfc-app.service`** (targeted, not a full `flotilla deploy`, - since deploy wouldn't touch `meta-content`). -- Verified: `/api/health` → 0.29.0 ok; `/api/philosophy` now serves - the rewritten philosophy ("Software that touches programming - concepts works…"). - ---- - -## Cut state (end of session) - -| | | -| --- | --- | -| ohm-rfc | `9a4277c` (this session's content) — now under remote tip `6cf7e41` (0036.0's ROADMAP reconcile FF'd on top). Pushed to `origin`/`ben.stull`. | -| ohm-rfc local checkout | behind remote by 0036.0's commit (not pulled locally — parallel session active; see plate). | -| OHM live | deploys.id=40, v0.29.0, healthy. `meta-content` clone advanced `eae9dc5`→`6cf7e41`; `ohm-rfc-app.service` restarted. | -| ohm-rfc pin | 0.29.0 (unchanged — content-only session). | -| /api/philosophy | ✅ serving the rewritten `PHILOSOPHY.md`. | - -| Item | Status | -| --- | --- | -| `PHILOSOPHY.md` reframe (de-model-training) | ✅ shipped + deployed (no version) | -| `OPERATIONAL-MODEL.md` new doc | ✅ shipped to repo + VM; ⚠️ not surfaced on-site (no route serves it; the `./OPERATIONAL-MODEL.md` link in the rendered philosophy will 404) | - ---- - -## §19.2 candidates surfaced - -1. **`meta-content` is not synced by any gesture.** The VM's - `/opt/ohm-rfc-app/meta-content` clone had drifted ~27 minor - versions behind `ben.stull/ohm-rfc` and was only updated tonight by - a hand `git pull`. There is no flotilla verb, deploy phase, or hook - that refreshes deployment rich content. Candidate: a - `flotilla content sync ` verb (pull meta-content + - restart, or hit a refresh endpoint), so `PHILOSOPHY.md`/`DOCS.md` - edits don't require a manual IAP-SSH `git pull` + `systemctl - restart`. -2. **`philosophy.refresh()` / `docs.refresh()` are dead code.** The - in-process cache is only cleared by process restart; the documented - "reconciler sweep calls `force=True`" has no caller. Either wire a - periodic refresh (so content edits go live on a cadence without a - restart) or delete the dead `refresh()` + fix the docstring. A - `POST /api/philosophy/refresh` (owner-gated) would let #1's verb - avoid a full service restart. -3. **`OPERATIONAL-MODEL.md` has no on-site home.** Only - `PHILOSOPHY.md` (and `DOCS.md`) have read routes. The new sibling - doc's intra-philosophy link 404s in the rendered page. Candidate: - a generic meta-content doc route, or fold the operational-model - content into the `/docs` surface, or add it to the SPEC-style doc - browser shipped in #30. -4. **Repo-identity drift bit again (relates to #33).** `ben/ohm-rfc` - vs `ben.stull/ohm-rfc` (redirect, OK) and the overlay's - `META_REPO=ohm-meta` (a *third* repo, `wiggleverse/ohm-meta`, whose - `PHILOSOPHY.md` differs and is unused because the `PHILOSOPHY_PATH` - file override wins). The naming-alignment arc (#33) should resolve - which repo is canonical for deployment content and retire the - unused `ohm-meta` path or make it the real source. - ---- - -## What lands on the operator's plate - -1. **Read the two docs** — `ohm-rfc/PHILOSOPHY.md` (rewritten) and - `ohm-rfc/OPERATIONAL-MODEL.md` (new). The philosophy is live; the - operational-model doc is the design capture of tonight's - conversation. Pull `ohm-rfc` locally to get `6cf7e41` (the local - checkout is behind by 0036.0's commit). -2. **Decide if `OPERATIONAL-MODEL.md` should be surfaced on-site** - (§19.2 candidate 3) — today it's repo + VM only. -3. **The open governance tie-break** (Arc 3) is unanswered by design - — "when two co-authors both argue their mechanic serves the cited - concept, what breaks the tie?" The answer *is* the platform's - governance model and should be settled consciously, likely as the - first operational RFC. -4. **left-brain/right-brain caution** (Arc 2): hold as a frame under - test, not a poured foundation, or it undercuts the rigor pitch. - ---- - -## Prompt the operator can paste into the next Claude Code session - -``` -You are an OHM driver session. Reserve your own session ID -(~/git/ohm-infra/scripts/claim-session-id.sh --start ) — the number -is advisory. Read ohm-rfc/ROADMAP.md + its "Operating instructions" block. - -Recent context (Session 0037.0, 2026-05-28→29): a content-only session -rewrote ohm-rfc/PHILOSOPHY.md off the model-training framing onto -"software is built operationalizing OHM concepts," and added a new -ohm-rfc/OPERATIONAL-MODEL.md capturing the concept→mechanic operational -layer + its governance. Both are committed (9a4277c, under remote tip -6cf7e41 after parallel session 0036.0's ROADMAP reconcile) and the -philosophy is LIVE (pulled the VM meta-content clone + restarted -ohm-rfc-app.service). OHM is on v0.29.0, deploys.id=40, healthy. - -Deployment-content gotcha worth fixing: PHILOSOPHY.md/DOCS.md are served -from the VM's /opt/ohm-rfc-app/meta-content git clone, which NO gesture -syncs — it had drifted to a 0.2.1-era commit. The backend caches the -file in-process and refresh() is never called, so updating content needs -a hand `git -C meta-content pull` + `systemctl restart ohm-rfc-app` -(via IAP SSH). Consider a `flotilla content sync` verb (§19.2 candidate). - -Open roadmap tail: #22 (pro-consent copy, needs operator+counsel text), -#21 Part A (Amplitude audit, needs real-world data), #18/#20 ops -follow-throughs (bounce wiring, DMARC ramp), #33/#34 naming alignment, -#31b + #25-followup (screenshot-gated polish). No core features remain. -Pick one, or ask the operator what's next. -``` diff --git a/0037/SESSION-0037.0-TRANSCRIPT-2026-05-28T23-20--2026-05-29T02-27.md b/0037/SESSION-0037.0-TRANSCRIPT-2026-05-28T23-20--2026-05-29T02-27.md new file mode 100644 index 0000000..3316d51 --- /dev/null +++ b/0037/SESSION-0037.0-TRANSCRIPT-2026-05-28T23-20--2026-05-29T02-27.md @@ -0,0 +1,261 @@ +# Session 0037.0 — Transcript + +> Date: 2026-05-28 → 2026-05-29 (spanned midnight, PST implied) +> Goal: Operator-driven philosophy session that grew into shipping +> content + a framework doc release. No rfc-app feature code change. +> +> Outcome: **Three things shipped + deployed to OHM.** +> (1) `ohm-rfc/PHILOSOPHY.md` reframed off the model-training story onto +> "software is built operationalizing OHM concepts"; new +> `ohm-rfc/OPERATIONAL-MODEL.md` capturing the concept→mechanic +> operational layer + its governance. +> (2) `OPERATIONAL-MODEL.md` surfaced on-site at +> `/docs/specs/operational-model` (deploys.id=41) via the existing +> configurable specs surface — no rfc-app code change. +> (3) `rfc-app v0.30.0` — the user guide (`DOCS.md`, `/docs/user-guide`) +> brought back in sync with the shipped app after ~23 versions of drift +> (deploys.id=42). Pin 0.29.0 → 0.30.0. +> +> Notes: +> - This session did **not** run the start-gesture claim; ID 0037 was +> claimed at session end (the §83/§7 fallback). Start time is +> **approximate**. +> - **Re-finalized** (this is the second publish). The first publish +> covered Arcs 1–5 (the philosophy doc work); Arcs 6–7 + the v0.30.0 +> release landed after and are folded in here. +> - The shared-checkout / parallel-session hazard recurred (Arc 6) — a +> concurrent session's uncommitted `ROADMAP.md` blocked a pull; handled +> per the worktree-for-parallel-git discipline. + +--- + +## Pre-session state + +- **OHM live**: rfc-app v0.29.0, deploys.id=40, healthy. +- **ohm-rfc pin**: 0.29.0. **ohm-rfc HEAD**: `02d22fe` (Session 0035.0). +- **Live `/api/philosophy`**: the original model-training-framed + `PHILOSOPHY.md`. +- The operator opened with a roadmap question that became an extended + design conversation about what OHM is *for*. + +--- + +## Turn-by-turn arc + +### Arc 1 — Roadmap status read + +Read `ROADMAP.md` end-to-end; reported the Phase A–E feature arc +(#1–#16) shipped and the remaining tail (#22 consent copy, #21A +Amplitude audit, #18/#20 ops, #33/#34 naming, #31b/#25 polish). Flagged +the #27/v0.24.0 row as reading stale against the 0.29.0 pin. + +### Arc 2 — "Is OHM a good idea?" → the thesis + +Operator supplied the thesis: an **ethical social and content platform** +("wiggling through the world") where defining the concepts (informed +consent, etc.) drives the engagement model. Pressure-tested it: the real +insight is that existing platforms run on *implicit* definitions +("engagement = clicks") and that's the source of harm. Pushed on three +risks: the definition→mechanic gap, left/right-brain as a credibility +liability, and the who-defines governance/legitimacy problem. + +### Arc 3 — Operational RFCs (the architecture crystallizes) + +Operator: "we also need RFCs for the operational model, not just +concepts." Settled the shape: **two RFC kinds** — concept (declarative +contract) and operational (mechanic; must cite the concept it serves; +carries a validation/sunset clause). Traceability makes "is this +ethical?" checkable. Then the governance edge: collaboration ≠ unowned; +the real artifact is the **ratification procedure**; the concept layer is +the spine; keep accountability locatable. Left open deliberately: the +tie-break when two co-authors both argue their mechanic serves the +concept. + +### Arc 4 — Capturing it as docs + +Recommended a **separate doc + one-line bridge** over weaving in. Wrote +`OPERATIONAL-MODEL.md` + a forward-pointer in `PHILOSOPHY.md`. Two +operator corrections reshaped `PHILOSOPHY.md`: (1) "software is *built +using* OHM concepts, not just models trained on it" → added the +"Two ways a system can consume OHM" section; (2) "drop model training +entirely" → confirmed scope ("drop training, keep co-authoring") and +rewrote the opening, three-panel diagram, asymmetry, code's-dictionary, +and humility note. Kept verbatim: the human+machine co-authoring +mechanism and the POSIX/IETF/HTTP analogy. + +### Arc 5 — Commit + deploy of the philosophy reframe + +Committed both docs (`9a4277c`), pushed `origin`. Traced the non-obvious +content-deploy path: `PHILOSOPHY.md` is served from the VM file at +`PHILOSOPHY_PATH=/opt/ohm-rfc-app/meta-content/PHILOSOPHY.md` (a clone of +`ben.stull/ohm-rfc`), **not** baked by `flotilla deploy`. The clone was +frozen at an ancient commit (`eae9dc5`, pin 0.2.1 era) and never pulled. +`git pull --ff-only` on the VM (IAP SSH) fast-forwarded it (landing on +`6cf7e41` — parallel session 0036.0's ROADMAP reconcile sat on top of my +commit). The backend caches the file (`philosophy.load()`; `refresh()` +exists but is **never called**), so a restart was needed — +`systemctl restart ohm-rfc-app.service`. Verified `/api/philosophy` +served the rewrite. *(First transcript publish happened here.)* + +### Arc 6 — Operational model on the live site (deploys.id=41) + +Operator: "add operational model to the live site." Found the clean path +with **no rfc-app code change**: the `/docs/specs/` surface +(`backend/app/docs_specs.py`, from roadmap #30) renders arbitrary +markdown fetched at runtime from a Gitea raw URL, configured by the +`OHM_DOCS_SPECS` overlay var (default = rfc-app SPEC + flotilla SPEC). + +Hit the **shared-checkout hazard**: the `ohm-rfc` checkout had a parallel +session's uncommitted `ROADMAP.md` (its new item #35, operator RFC +authoring). Set up an isolated worktree for the one-file philosophy-link +fix, then the operator said "hang tight while that session finishes" — +cleaned up the worktree and **paused**. Once the operator confirmed the +other session pushed, resumed on the now-clean checkout: +- Fixed the `PHILOSOPHY.md` forward-pointer from a relative + `./OPERATIONAL-MODEL.md` (404s in the rendered page) to the route + `/docs/specs/operational-model` (`d79ce46`); symmetric fix in + `OPERATIONAL-MODEL.md` → `/philosophy` (`5861e9e`). +- `flotilla overlay set OHM_DOCS_SPECS` = the two default SPECs + the + operational-model entry (raw URL on `ben.stull/ohm-rfc`). Confirmed the + JSON value round-trips correctly through flotilla's always-quoting + `.env` materializer (`_escape_env_value`) + python-dotenv. +- VM `meta-content` pull (for the philosophy link) + `flotilla deploy` + (id=41, v0.29.0 redeploy materializing the new env + restart). +- Verified: `/api/docs/specs/manifest` lists "OHM Operational Model"; + `/docs/specs/operational-model` serves the body; the philosophy link + resolves. + +### Arc 7 — User-guide drift review + rfc-app v0.30.0 (deploys.id=42) + +Operator: "review the user guide and update anything if it's drifted." +The framework user guide is `rfc-app/DOCS.md`, served at +`/docs/user-guide` from the **deployed tag** (no `DOCS_PATH` override). +Fanned out 3 read-only Explore agents over `rfc-app` (auth flow; propose ++ contribute surfaces; roles/admin/notifications), each cited to code, to +ground the rewrite and avoid trading old drift for new. + +Finding: the guide is **mostly accurate** — roles, branches, PRs, +graduation, AI-in-chat, and the full notifications system (inbox, badges, +toasts, the four email categories, digest, quiet hours, watch states) are +all genuinely shipped, not aspirational. Drift was concentrated: +- **"Signing in"** still described the pre-OTC email *allowlist*. Rewrote + for email + one-time-code (v0.7.0), optional passcode (v0.10.0), + trust-device 30d (v0.11.0), optional Turnstile (v0.12.0, deployment- + gated), and the beta-request → `pending` → admin-`granted` gate + (v0.8.0), plus admin-create + invite-claim (v0.17.0). Allowlist is + vestigial (empty by default). +- **"Proposing a new RFC"**: four → five fields (optional use-case #26; + AI tag-suggestion disclosure #27). +- **"Roles & permissions"**: added the `pending` state. +- New **"Invitations, cross-references, and contribution requests"** + (#12 owner invites; #28 auto-link / create-RFC / ask-to-contribute). +- New **"Privacy and cookies"** (#11 / #13). + +Shipped as **rfc-app v0.30.0** (docs-only minor): `VERSION` + +`frontend/package.json` bumped (lockfile `version` left at its existing +stale 0.24.0 — `npm ci` checks the dep tree, not the project version, and +prior releases did the same), CHANGELOG entry, commit `1558cc3`, tag +`v0.30.0` pushed to **origin + benstull** (the VM deploys from the +mirror). Pin `0.29.0 → 0.30.0` (`edf4a85`). `flotilla deploy` id=42, +`/api/health` → 0.30.0. Verified the live guide reflects all sections and +the stale allowlist text is gone. + +--- + +## Cut state (end of session) + +| | | +| --- | --- | +| ohm-rfc | HEAD `edf4a85` (pin 0.30.0). Content commits this session: `9a4277c` (philosophy reframe + OPERATIONAL-MODEL.md), `d79ce46` + `5861e9e` (cross-link fixes). Pushed `origin`. | +| rfc-app | **v0.30.0** (`1558cc3`) on main; tag pushed `origin` + `benstull`. Docs-only (DOCS.md + VERSION + package.json + CHANGELOG). | +| OHM live | deploys.id=**42**, v0.30.0, healthy. (id=41 was the v0.29.0 redeploy that materialized the `OHM_DOCS_SPECS` env for the operational-model surface.) | +| ohm-rfc pin | 0.30.0. | +| /api/philosophy | rewritten philosophy + route cross-link. | +| /docs/specs/operational-model | live ("OHM Operational Model"). | +| /docs/user-guide | v0.30.0 updated guide. | + +| Item | Status | +| --- | --- | +| PHILOSOPHY.md reframe + OPERATIONAL-MODEL.md | ✅ shipped + deployed (no version) | +| OPERATIONAL-MODEL.md on-site (/docs/specs) | ✅ shipped + deployed (id=41) | +| rfc-app v0.30.0 — user-guide drift sync | ✅ shipped + deployed (id=42) | + +--- + +## §19.2 candidates surfaced + +1. **`meta-content` is not synced by any gesture.** The VM's + `/opt/ohm-rfc-app/meta-content` clone (source for `PHILOSOPHY_PATH`) + had drifted ~27 minor versions and was only updated by a hand + `git pull` this session. Candidate: a `flotilla content sync + ` verb (pull meta-content + restart / hit a refresh + endpoint). +2. **`philosophy.refresh()` / `docs.refresh()` are dead code.** The + in-process cache is only cleared by process restart; the documented + "reconciler sweep calls `force=True`" has no caller. Wire a periodic + refresh or delete the dead code + fix the docstring. +3. **Two homes for deployment docs, two update mechanics.** + `PHILOSOPHY.md` is served from the meta-content file (updates via + meta-content pull + restart); `DOCS.md` is served from the **deployed + rfc-app tag** (updates require a release + deploy, as v0.30.0 did). + The generic `/docs/specs` surface (`OHM_DOCS_SPECS`) is a third path — + runtime gitea-raw fetch with a 5-min TTL, no deploy needed. Worth a + short note in DEPLOYMENTS.md so the next operator knows which lever + updates which doc. (The operational-model doc rides `/docs/specs` and + thus updates with no deploy — but lands under the "Specs" nav label, + a slight semantic stretch; a dedicated companion route would need a + framework code change.) +4. **Shared-checkout / parallel-session hazard recurred** (Arc 6). A + concurrent session's uncommitted `ROADMAP.md` blocked a pull; + reinforces the worktree-for-parallel-git discipline for any hands-on + git in the shared checkout while other sessions run. + +--- + +## What lands on the operator's plate + +1. **The open governance tie-break** (Arc 3) is unanswered by design — + "when two co-authors both argue their mechanic serves the cited + concept, what breaks the tie?" That answer *is* the platform's + governance model; settle it consciously, likely as the first + operational RFC. +2. **left-brain/right-brain caution** (Arc 2): hold as a frame under + test, not a poured foundation. +3. **Roadmap item #35** (operator RFC authoring from a Claude Code + session) was added to `ROADMAP.md` by a parallel session, not this + one — noted here only so the cross-session record is coherent. +4. Nothing else pending — all three deliverables shipped + verified. + +--- + +## Prompt the operator can paste into the next Claude Code session + +``` +You are an OHM driver session. Reserve your own session ID +(~/git/ohm-infra/scripts/claim-session-id.sh --start ) — the number +is advisory. Read ohm-rfc/ROADMAP.md + its "Operating instructions" block. + +Recent context (Session 0037.0, 2026-05-28→29): a content + docs session. +OHM is now on rfc-app v0.30.0 (deploys.id=42, healthy). Shipped: +(1) ohm-rfc/PHILOSOPHY.md reframed off model-training onto "software is +built operationalizing OHM concepts"; new ohm-rfc/OPERATIONAL-MODEL.md +(concept→mechanic operational layer + governance), live at +/docs/specs/operational-model; (2) rfc-app v0.30.0 — the /docs/user-guide +(DOCS.md) brought back in sync with the shipped app (sign-in/OTC, propose +use-case field, pending state, invitations, cross-references, privacy). + +Deployment-content levers to know: +- PHILOSOPHY.md → VM meta-content git clone (PHILOSOPHY_PATH); NO gesture + syncs it (it had drifted to 0.2.1). Update = `git -C meta-content pull` + + `systemctl restart ohm-rfc-app` via IAP SSH. (§19.2: a `flotilla + content sync` verb would fix this.) +- DOCS.md → served from the deployed rfc-app tag; update = release+deploy. +- /docs/specs/ → runtime gitea-raw fetch, configured by the + OHM_DOCS_SPECS overlay, 5-min TTL, no deploy needed. + +Open roadmap tail: #22 (consent copy, needs operator+counsel text), #21 +Part A (Amplitude audit, needs real-world data), #18/#20 ops follow- +throughs, #33/#34 naming alignment, #31b + #25-followup polish, and the +new #35 (operator RFC authoring). No core features remain. Pick one, or +ask the operator what's next. +```