Skip to main content

Documentation Index

Fetch the complete documentation index at: https://mintlify.com/xxyoudeadpunkxx/shaping-frame-for-claude/llms.txt

Use this file to discover all available pages before exploring further.

Decontamination is the process of removing conversational residue and model-prior assumptions from material before it is persisted in reusable, structural, or external output. Contamination sounds like context — it uses the language of shared understanding, of continuity, of established fact. But it is assumption. A phrase like “as discussed” references a past state that the document’s future reader cannot access. A phrase like “the standard approach here is” imports a training-time generalization and presents it as an established truth about the specific system. When either type of residue enters a spec, a ruleset, or a reusable document, it embeds an unverified claim in something that will be read as authoritative.

Two Types of Residue

1. Conversational Residue

Phrases that reference past sessions, prior states, or shared conversational context as if they were current facts. When these appear in persistent output, they create the illusion of a settled foundation that does not actually exist in the document. Common conversational residue phrases:
  • “as discussed”
  • “as you decided”
  • “from the previous session”
  • “as mentioned”
  • “in the previous chat”
These phrases are not inherently wrong in conversation — in a live session they can be useful shorthand. The problem appears when they are written into material that will be read outside of that session, where the “discussion” or “previous chat” is not accessible to the reader.

2. MP Disguised as Facts

Phrases that import model priors as if they were established truths about the specific system, codebase, or context being worked on. These are more dangerous than conversational residue because they sound authoritative and factual — they do not reference a conversation, they reference reality. Common MP-as-fact phrases:
  • “best practice”
  • “standard approach”
  • “normally”
  • “usually”
  • “in general”
  • “it is known that”
  • “the typical solution”
Each of these phrases is a signal that training-time generalization is being presented as a verified fact about the current environment. They may be correct — but correctness is not the point. The point is that they are unverified, and writing them into structural output as if they were verified facts is a contamination of the artifact’s epistemic foundation.

When Decontamination Is Required

Decontamination is required before persisting in reusable, structural, or external output. It is not required before every response. In a live conversation, conversational residue phrases and MP-as-fact phrases may appear without triggering decontamination — they are Level 1 signals (eligible for [MP] tagging) but do not require removal unless the material is heading toward persistent output. The pre-write gate includes decontamination as a stopping condition: if conversational residue is present in material about to be written, the gate stops and flags it for removal before proceeding.

What Is Allowed to Remain

Not all provenance language requires removal. Material is safe to persist if it meets one of three conditions:
  • Crystallized by OP — OP explicitly approved the element. The approval is the foundation, not the phrase that describes it.
  • Verified by DSK, tool, or web — the claim has been confirmed against a documentable source. The verification is the foundation.
  • Explicitly declared as assumptions — the material is marked as an assumption rather than presented as a fact. The declaration makes the provenance visible to future readers.

The Contaminated Flag

Material that carries the Contaminated flag must be decontaminated before advancing state or grounding a decision. The flag is applied when material carries conversational residue or assumptions embedded as facts. Unlike the Needs verification flag — which indicates factual uncertainty that can be resolved by checking a source — the Contaminated flag indicates a structural problem with how the material is framed. Verification would not fix it; rewriting would. A Contaminated element cannot enter Crystallized state and cannot enter structural output until the contamination is removed.

Before and After

Before decontamination — a spec section written with both types of residue present:
As discussed in the previous session, the auth service will use JWT tokens.
As you decided, the standard approach for token expiry is 24 hours, which is
best practice for internal APIs. From the previous chat, the refresh flow was
confirmed as stateless. Normally, this is the correct architecture for
services at this scale.
After decontamination — the same section with residue removed and provenance made explicit:
The auth service uses JWT tokens (OP-approved, session of 2024-11-12).
Token expiry is set to 24 hours (OP decision, confirmed 2024-11-12).
The refresh flow is stateless (OP decision, confirmed 2024-11-12).
Note: the 24-hour expiry and stateless refresh are assumed to hold for
this service's scale — verify against infrastructure constraints before
treating as a permanent constraint.
The after version says the same things. It does not hedge more aggressively or add uncertainty where none exists. It removes the phrases that referenced past sessions as if the reader had access to them, replaces implicit model-prior generalization with explicit assumption declaration, and makes the actual basis for each claim visible.
In artifacts intended for external reuse — documentation, shared specs, exported rulesets, handoff documents — all conversational residue and MP-as-fact phrases must be removed unless OP explicitly requests provenance tracking. A document that will be read outside the session has no shared context to reference, and no reader who can ask what “as discussed” referred to.

Build docs developers (and LLMs) love