practice: slim the tool schemas — the modelSolution IS the reveal

Owner round (2026-10-05): the problem pose only really needs statement,
mode, target, modelSolution; conclude needs no reveal field.

- problemInputObject drops decisionPoints, expectedWrongMoves, strategy,
  rationale. Halves the pose payload (the GLM incident's failing args
  were 3.3KB — a direct weak-model hardening).
- concludeInputObject drops solutionReveal: the reveal is the
  modelSolution committed at pose time, shown verbatim at conclude.
- Doctrine pass (00-base mechanics, 10-doctrine V.4/V.5): the commitment
  is the solution alone; the reveal instruction points at it.

Fixtures slimmed to the new shapes (flow, agents, heal). ConcludeCard's
render of legacy solutionReveal input stays until the card redesign
lands (Slice C).
This commit is contained in:
amosblomqvist
2026-10-05 02:22:04 +03:00
parent e8fe5da6b1
commit 09480979c4
6 changed files with 11 additions and 45 deletions
-6
View File
@@ -41,12 +41,6 @@ describe("healEncodedArguments — the GLM incident", () => {
mode: QUOTED("recall"), // the incident: every field valid BUT mode
target: ["group-order"],
modelSolution: "Let |G| = p. Any x ≠ e generates a subgroup whose order divides p…",
decisionPoints: ["pick an element and consider ⟨x⟩"],
expectedWrongMoves: [
{ move: "reaching for Sylow", resolution: "Sylow needs p² at least; order p is direct" },
],
strategy: "single-cue recall, minimal parse cost",
rationale: "first problem of the session — baseline the cue",
};
// The raw shape is the incident: validation throws.
assert.throws(() => {