bascule-shell loads /opt/substrate/posture/current.json (BASCULE_POSTURE_FILE override) at session start and exports: BASCULE_DEFCON_LEVEL numeric global level (1..5) BASCULE_POSTURE_LEVEL alias (already shipped in M1) BASCULE_CAPABILITY_CEILING CAP_NONE..CAP_GOVERN BASCULE_CEREMONY_REQUIRED "0" / "1" BASCULE_MAX_SESSION_TTL minutes, omitted when 0 Fail-soft: missing/malformed file degrades to peacetime defaults so the shell exec path stays alive on misconfigured hosts. The new posture.rs module is a tiny inline snapshot loader (60 LOC, serde_json on top of an already-present dep) — bascule-oss does not pull libgsh as a dep, so the JSON wire format produced by substrate-operator is the contract. gsh and bascule-shell share that contract, not Rust types. Stacked on feat/m2-roles-export. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com> Signed-off-by: Claude Code <claude@guildhouse.dev> |
||
|---|---|---|
| .. | ||
| bascule-auth-agent-id | ||
| bascule-core | ||
| bascule-dashboard | ||
| bascule-dashboard-web | ||
| bascule-server | ||
| bascule-shell | ||