Skip to content

Phase 3: Container Runtime and Bridges - Discussion Log ​

Mode: --auto. Every gray area was resolved by the recommended option, derived from the spec, the settled inputs S-07 to S-12, and the frozen Phase 1 and Phase 2 contracts. No question was put to the user.

Areas resolved ​

AreaOptions consideredChosenBasis
OpenShell launch modelNested inside a Realm container (spec LAYER_STACK, RT-03 wording) / host gateway creates the sandbox through its Podman driver (settled)Host gateway, Podman driver (D-46, D-47)S-08 settled by the user; openshell.md Q1 documents this model
Requirement wording for RT-01 and RT-03Edit the requirement text / record the conflict and keep the settled layeringRecord only (D-46, D-47); reported to the userSettled inputs must not be reopened; requirement text is not edited by planning
Live Podman tests on 4.9.3Install 5.x / gate with a skip reasonGate with PODMAN_UNSUPPORTED_VERSION; fake libpod server for units (D-48)S-09
OpenShell CLI versionUse the docs 0.1.5 verbs / pin the 0.1.2 verbsPin 0.1.2; record drift (D-55)S-10
Anda boundarySocket JSON-RPC / HTTP / Rust shimHTTP over GET /.well-known/information only (D-61, D-66)S-12; anda.md Q1 (documented anonymous route)
Anda version handshakeAdvertised version (not documented) / shape handshake on AppInformationShape handshake; limitation recorded (D-61)anda.md Q4: no version surface documented
Anda RPC and credentialsImplement POST /{id} now / deferDefer (OQ-P3-10)anda.md Q2, Q3: RPC layout and credentials not documented; not needed for the bridge
Anda JSON or CBORAdd a CBOR dependency / JSON onlyJSON only, no new dependency (D-61)No dependency added without registry verification
AgentOS modeHosted (Docker worker, Podman not documented) / libraryLibrary primary; hosted gated (S-11)agentos.md Q8, Q1
AgentOS concrete driverWrite the binding now / port onlyPort only; binding blocked (D-59; OQ-P3-05, OQ-P3-06)Package not verified; in-sandbox channel not documented
Policy document formatAdd a YAML dependency / JSON (valid YAML 1.2)JSON (D-57; OQ-P3-15)No dependency added
Egress in Phase 3Write endpoint allowlist now / deny-all onlyDeny-all network_policies: {}; allowlist in Phase 4 (D-57)RT-05 is Phase 4; endpoint key names not recorded
Container createRealm creates it with libpod / OpenShell creates itOpenShell creates; Realm verifies (D-47)S-08
Hardening valuesDynamic / one constantOne HARDENING_PROFILE constant (D-51)Single contract for RT-01
Controller and degradedProbe produces degraded / bridge produces degradedBridge produces degraded; probe stays exec-only (D-64)Phase 2 D-38 deferred this to Phase 3
Startup Anda unreachableDegraded at startup (no legal edge from connecting) / error after bounded retryerror with ANDA_UNREACHABLE (D-64)Transition table in states.ts; spec FAILURE_CASES
CORE-05 gate timingQueue wait / synchronous decisionSynchronous; queue wait is Phase 4 (D-63)TOOL-04 is Phase 4; "never hangs"
realm downPer-session removal only / labelled sweep with proofSweep plus per-session destroy (D-68)RT-09 wording "every container carrying the realm label"
Doctor items in Phase 3Register all of D-44's list / only inspectable itemsPodman, socket, OpenShell verbs, Anda; no AgentOS (D-69)D-44 forbids reporting on what cannot be inspected
Test directoriesSpec file names (test/runtime/podman.integration.test.ts) / keep gated bodies in test/integration/test/integration/ (D-48, D-70)QUAL-02 taxonomy requires skip reasons under test/integration/

Open items carried out of this log ​

OQ-P3-01 to OQ-P3-16 in 03-CONTEXT.md. Each has a default and the module it blocks. Two requirement-wording conflicts (RT-01, RT-03) are reported for the user, not edited.

AGPL-3.0-only. Copyright (C) 2026 Spectrum Web Co/swcstudiospace.