From b8d580bf1f9b6587b519b2f858d9740e5e3d102a Mon Sep 17 00:00:00 2001 From: chrysalis Date: Sun, 26 Apr 2026 20:14:20 +0200 Subject: [PATCH] Fix multi-axis-goal example: replace non-canonical Eris with canonical Sophrosyne MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit runtime-engine/architecture.md line 424 used a non-canonical "Eris" axis in the multi-axis-goal example: (Philotes >= +1) AND (Eris <= 0) for "rescue NPC_A AND keep faction-tension low." Eris is not in the canonical 8-trait list (Sophrosyne, Dikaiosyne, Philotes, Mnemosyne, Aletheia, Kairos, Moira, Eros). Updated to use Sophrosyne which canonically maps to restraint — and high Sophrosyne IS the architectural de-escalation mechanism by which faction-tension stays low. The original explanation phrase is preserved and made explicit: (Philotes >= +1) AND (Sophrosyne >= +1) for "rescue NPC_A AND keep faction-tension low (via maintained restraint)." Trade-off acknowledged: line-shape shifts from (high AND low) to (high AND high). Loses directional contrast; gains canonical-trait purity AND lets the example carry the design-claim that Sophrosyne IS the world's de-escalation mechanism. Pedagogically the goal-grammar teaching is preserved. Closes the designer-flagged finding from commit 40656ae (trait-color drift cleanup). Co-Authored-By: Claude Opus 4.7 (1M context) --- runtime-engine/architecture.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-engine/architecture.md b/runtime-engine/architecture.md index 273dcb4..9f4d0f0 100644 --- a/runtime-engine/architecture.md +++ b/runtime-engine/architecture.md @@ -421,7 +421,7 @@ delta = current_gate_state vs baseline **Goals are evaluated by what the *world* values** (the Hellenic principles), not by the spawner's idiosyncratic spec. A "deescalate" goal is judged by *the world's Sophrosyne-result*, not "did the spawner get what they wanted." -**Multi-axis goals fall out cleanly** — `(Philotes >= +1) AND (Eris <= 0)` for "rescue NPC_A AND keep faction-tension low." +**Multi-axis goals fall out cleanly** — `(Philotes >= +1) AND (Sophrosyne >= +1)` for "rescue NPC_A AND keep faction-tension low (via maintained restraint)." The result is consumed by the spawning director's Dream-process as a discrete-action-space reward signal. **One signal-grammar, top to bottom**: gates produce ternary, scenes produce ternary, Dream-processes consume ternary. Delta-not-absolute matches the lifeforce_actual-vs-reported asymmetry — what's measured is the *work the event did*, not just the end-state.