Project: Covert Cubicles Build Phase 3 / 7

MODULE 09 / 31 · LAYER 3 · LOGIC_DECISION Decision Orchestrator

The single entry point for player decisions. Coordinates state changes across history, peer trust, and scrutiny in a defined order. The first orchestration module of the build.

DEPENDENCIES: DATA_*, SM_Game, STATE_PeerTrust, STATE_Decisions, PM_Phase
Pending

Critical Caveat — Placeholder Encoding Still in Effect

Researcher review required
LOGIC_Decision uses the same placeholder value-encoding as STATE_Decisions until LOGIC_ValueEncoding (Module 12) is built. The encoder is injectable: when M12 lands, it will register itself by calling LOGIC_Decision.setEncoder() and no other code needs to change.

All numerical encodings shown below are illustrative. The mechanical state changes (history append, trust delta, scrutiny delta) are canonical and tested.

Automated Assertions

#AssertionResultDetail

Interactive Workbench — Live Decision Submission

Drive a real decision through the orchestrator. Top-left: session / encoder readouts. Top-right: the live scenario card with HELP/REFUSE buttons that fire submitDecision(). Below: the orchestration fan-out diagram (showing the three downstream calls), the result envelope, decision history, peer state, and audit trail.

Session & encoder
Session lifecycle
Encoder swap
Defensive checks (should fail)
Live scenario (current phase)
No active session. Click “Create + initialise + start” to begin.
Pick a different scenario in this phase
Orchestration fan-out (last submitDecision call)
Decision history
Last result envelope
No decisions submitted yet.
Peer state (current)
Player scrutiny
Audit trail (most recent)

API Surface — Manual Verification

Open DevTools and try the calls below.