Prompt Construction and Templates
Structured, versioned prompt templates that fix each copilot's role, constraints, tool contract, and output schema — so behavior is reproducible and testable.
Prompts are versioned artifacts
A copilot's prompt is not free-form text written per request; it is a versioned template with slots. The template fixes the copilot's role and machine, states the hard constraints (envelope, refusal rules, economics prohibition, honest-framing rules), declares the tool contract, and specifies the output schema. Request-specific content — twin-state summary, retrieved evidence, the question — fills the slots.
Template sections
- Role and machine: 'Plasma Copilot for the breeder (Hyperion)'
- Hard constraints: stay in envelope, cite sources, no economics, no net-gain claims
- Tool contract: the bounded tools available this turn and their schemas
- Output schema: answer + citations + uncertainty + any proposal object
TEMPLATE plasma_copilot v7:
[ROLE] You advise on {machine}. You propose; you never actuate.
[CANON] {frozen_numbers} # cited, never invented
[RULES] stay in envelope; cite every fact; label inference;
no economics; no net-gain claim pre-FOAK; refuse if unsafe
[TOOLS] {bounded_tool_schemas}
[STATE] {twin_state_summary}
[EVIDENCE]{retrieved_chunks}
[TASK] {question}
[OUTPUT] {answer, citations[], uncertainty, proposal?}
Why versioning matters
Because the prompt shapes behavior, it is treated like code: versioned, reviewed, and tested. A change to the template is evaluated against the full regression suite before it ships, so a wording change that quietly weakens a safety constraint is caught. The template version is recorded with every answer for audit, so any output can be reproduced with its exact prompt.
Templates encode the honest-framing rules directly: the copilot is instructed never to claim hardware net gain before FOAK, always to distinguish the frozen design point from measured results, and to cite canonical numbers rather than recall them. These rules live in the prompt and are re-checked in evaluation, so honesty is a tested property, not a hope. Filled templates are assembled under the context budget from live twin state.