{"version":"2.1.312","anchor":"system-prompt-builder-reworked-into-factsdecisionsrecord-w","canonical_anchor":"system-prompt-builder-reworked-into-factsdecisionsrecord-w","heading":"The system prompt is now assembled in a new way, with no visible text change from it","tier":"internal","area":"System Prompt","scope":"individual","heads_up":false,"url":"https:\/\/changelogs.core-directive.com\/v\/2.1.312\/e\/system-prompt-builder-reworked-into-factsdecisionsrecord-w","release_url":"https:\/\/changelogs.core-directive.com\/v\/2.1.312","markdown":"### The system prompt is now assembled in a new way, with no visible text change from it\n\nClaude Code rebuilt how it assembles its system prompt and can record each section's choice, but the prompt text itself is unchanged by it\n\n**What**\n\nThe system prompt is the set of instructions Claude Code sends to the model at the start of a conversation. The code that assembles it was rewritten. It now works out a set of facts and decisions first, records which choice it made for each section, and can replay those recorded choices later. If a section it decided to include ends up missing, it stops with an error.\n\nThe remote switches that turn sections on and off are read the same way as before, through the new structure. This rewrite does not change the prompt text on its own. Separately, the description of the `AskUserQuestion` tool changed wording in a capture taken under this release; it now warns that the user may see only the question dialog.\n\n**Why**\n\nIn practice nothing in the prompt changes from this. The ability to record and replay section choices points to later work on reproducing a prompt exactly.\n\n- Flag `tengu_verified_vs_assumed`: Not enough to say (read for one account on one subscription tier against v2.1.312; this account: no value returned, anonymous baseline: no value returned, compiled default: off) These values were read against a different version of Claude Code, so treat them as the nearest reading available instead of one taken on this release.\n- Flag `tengu_wobbly_dahl`: Off in both readings (read for one account on one subscription tier against v2.1.312; this account: off, anonymous baseline: off, compiled default: off) These values were read against a different version of Claude Code, so treat them as the nearest reading available instead of one taken on this release.\n- Flag `tengu_silent_harbor`: Off in both readings (read for one account on one subscription tier against v2.1.312; this account: off, anonymous baseline: off, compiled default: off) These values were read against a different version of Claude Code, so treat them as the nearest reading available instead of one taken on this release.\n- Flag `tengu_slate_bittern`: Not enough to say (read for one account on one subscription tier against v2.1.312; this account: no value returned, anonymous baseline: no value returned, compiled default: on) These values were read against a different version of Claude Code, so treat them as the nearest reading available instead of one taken on this release.\n- Area: System Prompt\n- Tier: Under the hood\n- Useful: 4\/5\n- Signal: 4\/5\n- Scope: individual\n- Heads-up: no"}