From 95bc8d2261cde6da0fc4eab07da9e273ec9aaf71 Mon Sep 17 00:00:00 2001 From: amosblomqvist Date: Fri, 25 Sep 2026 18:55:31 +0300 Subject: [PATCH] launch message: reasoning before the plan (owner ruling, 2026-09-26) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The probe→teach handoff wake read as a dispatch order ("Author the session's plan map now") and the teacher skipped the deliberation the planning fragment asks for. The wake now paces it: take your time, read the assessment and the probing transcript, reason out the optimal way to teach this person this thing — floors, ceilings, misconceptions, the minimal tree so every step lands as obviously true — and only then call plan_init. Machinery honest: plan_init is still the first tool, the plan map still the first artifact, and the tail now says to wait for his verdict (which is what presenting actually does — the old "then begin teaching" tail skipped the verdict seam). --- src/core/contracts/chat.ts | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/src/core/contracts/chat.ts b/src/core/contracts/chat.ts index 7b40ce7..21eca97 100644 --- a/src/core/contracts/chat.ts +++ b/src/core/contracts/chat.ts @@ -174,10 +174,22 @@ export function verdictText(accepted: boolean): string { /** The model-facing text of the probe→teach handoff wake (the custom-message * scheme): the wake message carries only the data-probe-handoff part, and * the adapter flattens it to THIS. Single-sourced so the prober's seam, the - * tests, and reality can't drift apart. */ + * tests, and reality can't drift apart. + * + * REASONING-FIRST PACING (owner, 2026-09-26): the wake is the one per-turn + * cue on the launch turn — the old one-liner read as a dispatch order + * ("author now") and the teacher skipped the deliberation the planning + * fragment asks for. So the wake paces it: reason out the optimal way to + * teach THIS person THIS thing BEFORE plan_init. Honest to the machinery + * — plan_init is still the first tool, the plan map still the first + * artifact, and presenting still waits for the verdict. */ export const HANDOFF_TEXT = "The probe is concluded — the learner assessment is recorded. " + - "Author the session's plan map now (call plan_init) and present it, then begin teaching."; + "This is the session's highest-leverage moment, and nothing has been authored yet — take your time. " + + "Read his assessment and the probing transcript, and reason out the optimal way to teach this person this thing: " + + "what he already holds and where each strand runs out, the misconceptions to route around, " + + "and the minimal tree from what he holds as obviously true to his goal — so every step lands as obviously true. " + + "When the plan is genuinely reasoned out, call plan_init and present it, then wait for his verdict."; export interface PlanBlockData {