Skip to content

docs(tui): 6/15 canary + flip/rollback runbooks + setup auth-probe guard (PR-C)#138

Merged
dtzp555-max merged 1 commit into
mainfrom
docs/tui-615-runbooks-pr-c
Jun 10, 2026
Merged

docs(tui): 6/15 canary + flip/rollback runbooks + setup auth-probe guard (PR-C)#138
dtzp555-max merged 1 commit into
mainfrom
docs/tui-615-runbooks-pr-c

Conversation

@dtzp555-max

Copy link
Copy Markdown
Owner

Summary

PR-C — operator runbooks + setup guard for the 2026-06-15 billing flip (docs + one minor setup.mjs edit; no server.mjs).

  • docs/runbooks/615-canary.md — the credit-balance canary: quiesce, read the Agent SDK credit balance (manual — explicitly states no programmatic API exists for that pool, to avoid endpoint hallucination), one TUI canary turn, confirm entrypoint:cli in the transcript, green/red decision tree, periodic auto-mode self-classification mini-canary.
  • docs/runbooks/tui-flip-rollback.md — flip/rollback per deployment: systemd (EnvironmentFile + daemon-reload) and launchd (plist + bootout/bootstrap; kickstart -k does NOT reload env).
  • README.md — 6/15 operator checklist + OCP_SKIP_AUTH_TEST env-var row.
  • setup.mjs — wraps the claude -p auth quick-test in an OCP_SKIP_AUTH_TEST=1 gate + a warning (the probe draws from the metered Agent SDK pool after 6/15). Byte-identical when the env is unset.

Fixes applied during review

  • Transcript-dir resolution changed from a wrong urllib.parse.quote encoding to a glob of the most-recent transcript (robust to claude's [/.]→- cwd-encoding rule). (Caught by the fresh-context reviewer.)
  • Transcript grep field corrected cc_entrypointentrypointcc_entrypoint is the wire/billing header; the transcript field is entrypoint. (Found via real-data probe; the doc-review pass missed it.) Verified end-to-end on oracle's real transcript: the fixed command outputs "entrypoint":"cli".

ALIGNMENT

Docs + operator-tooling only. No server.mjs / Class A wire path touched; no cli.js citation required. The canary runbook explicitly avoids inventing any endpoint for the Agent SDK credit pool (the constitution's core concern; see ALIGNMENT.md "2026-04-11 Drift").

Independent review (Iron Rule 10)

Fresh-context reviewer reviewed v1 (CHANGES REQUESTED → encoding bug). Both the encoding fix and the field-name fix were then verified end-to-end on oracle's real transcript (executing the runbook commands → "entrypoint":"cli"), which is stronger than a re-read. No invented endpoint; setup.mjs minimal + default-preserving; systemd/launchd pitfalls correct; public-repo hygiene clean.

🤖 Generated with Claude Code

…ard (PR-C)

Docs scope (no server.mjs touched):
- docs/runbooks/615-canary.md — executable canary runbook: quiesce host,
  read Agent SDK credit balance manually (no programmatic API exists for
  that pool — this is stated explicitly to avoid endpoint hallucination),
  send one Haiku turn via TUI-mode, confirm cc_entrypoint=cli in transcript,
  re-read balance, green/red decision tree, periodic self-classification
  mini-canary with OCP_TUI_ENTRYPOINT=auto.
- docs/runbooks/tui-flip-rollback.md — flip and rollback procedure for
  systemd (EnvironmentFile + daemon-reload) and launchd (plist edit +
  bootout/bootstrap cycle). Calls out both known pitfalls explicitly:
  daemon-reload required on systemd; launchctl kickstart -k does NOT
  reload plist env on launchd (matches MEMORY.md operational pit entry).
- README.md § "2026-06-15 operator checklist" — brief fleet checklist +
  pointers to both runbooks. Placed inside the existing TUI-mode section
  just before "Architecture and design decisions".
- README.md § Environment Variables — adds OCP_SKIP_AUTH_TEST row.

Operator-tooling scope (setup.mjs, not a Class A wire path):
- setup.mjs auth quick-test: wraps the existing claude -p probe in an
  OCP_SKIP_AUTH_TEST=1 gate; adds inline comment warning that after
  2026-06-15 the probe draws from the Agent SDK credit pool. The setup
  flow is unchanged when OCP_SKIP_AUTH_TEST is unset.

Alignment note: this PR does not touch server.mjs. The setup.mjs change
is operator-tooling only — it guards a local test spawn, not any wire
path. No cli.js citation required (no Class A surface is modified).

Co-Authored-By: Claude claude-sonnet-4-6 <noreply@anthropic.com>
@dtzp555-max dtzp555-max merged commit 79c1d61 into main Jun 10, 2026
5 checks passed
@dtzp555-max dtzp555-max deleted the docs/tui-615-runbooks-pr-c branch June 10, 2026 11:41
dtzp555-max added a commit that referenced this pull request Jun 10, 2026
… (PR-A/B/C, #137-139) (#140)

Bump 3.19.0 → 3.20.0 + CHANGELOG. Aggregates three already-reviewed, already-merged PRs:
- #137 (PR-A) TUI honesty/cache correctness
- #139 (PR-B) TUI concurrency limit + /health observability
- #138 (PR-C) 6/15 canary + flip/rollback runbooks + setup auth-probe guard

README env-var / endpoint tables were updated in the respective feature PRs.

Co-authored-by: dtzp555 <dtzp555@gmail.com>
Co-authored-by: Claude <claude-fable-5> <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants