aboutsummaryrefslogtreecommitdiff
path: root/docs/design
diff options
context:
space:
mode:
authorCraig Jennings <c@cjennings.net>2026-07-13 16:42:32 -0500
committerCraig Jennings <c@cjennings.net>2026-07-13 16:42:32 -0500
commit3ef55807a23f7dd447ecf9fc34d6512fb3893d6b (patch)
tree95b0319a9de7bd322a236372193572400545df98 /docs/design
parent04c3b29a968d62eac1a4123cf03606fc667c2d14 (diff)
downloadrulesets-3ef55807a23f7dd447ecf9fc34d6512fb3893d6b.tar.gz
rulesets-3ef55807a23f7dd447ecf9fc34d6512fb3893d6b.zip
docs(runtime): session plumbing assessed, no build needed
session-context-path already carries a runtime segment, the anchor cycle is plain files, and self-inject is harness-agnostic with only its payload Claude-shaped. A codex auto-flush is a documented payload variant whose second injected line carries the resume instruction, replacing the SessionStart hook. Wire it when a codex session first wants it.
Diffstat (limited to 'docs/design')
-rw-r--r--docs/design/2026-07-13-runtime-portability-inventories.org11
1 files changed, 11 insertions, 0 deletions
diff --git a/docs/design/2026-07-13-runtime-portability-inventories.org b/docs/design/2026-07-13-runtime-portability-inventories.org
index e04f9cf..b9e8244 100644
--- a/docs/design/2026-07-13-runtime-portability-inventories.org
+++ b/docs/design/2026-07-13-runtime-portability-inventories.org
@@ -63,6 +63,17 @@ What that rule does not carry:
Verdict: no per-skill porting matrix needed. One resolution sentence in the bootstrap entry file (instruction-bootstrap child), optional native registration as an install nicety, flush explicitly excluded.
+* Session plumbing per runtime
+
+Four pieces, examined:
+
+- =session-context-path= is already runtime-aware by design — the =AI_AGENT_ID= shape carries a runtime segment (=host.project.runtime.epoch=) and the resolver is pure bash. Nothing to do.
+- The anchor cycle (suspend entry, startup's interrupted-session recovery, wrap-up's archive rename) is plain files driven by workflow prose. Any agent that reads protocols.org executes it identically. Nothing to do.
+- =self-inject.sh= is harness-agnostic: it types arbitrary strings into a tmux pane. The Claude-bound part is only the *payload* — "/clear" plus a resume line that leans on the SessionStart hook. A Codex auto-flush is a payload variant: the clear command differs (confirm the exact one when wiring) and the second injected line must itself carry the resume instruction ("read .ai/session-context.org and resume") since no hook fires. Arguably simpler than the Claude path.
+- =session-clear-resume.sh= (the SessionStart hook) is Claude-only, and the payload variant above makes it unnecessary off Claude.
+
+Verdict: no build. The flush *skill* stays Claude-official; a codex auto-flush is a documented payload variant to wire the day a codex session actually wants it, not before.
+
* Decisions for Craig
All four approved by Craig, 2026-07-13: