Field Guides / Session Hygiene

Session Hygiene

Atlas Protocol · V1.0 · 2026-05-02 · Schema FVE-1 V5.6

For: The human managing model instances across a research or build program.

Session hygiene is the set of practices that prevent context contamination from moving between sessions, instances, and tasks. A session that runs clean produces output that is traceable to the spec, the input, and the operator's decisions — not to accumulated context from prior exchanges.

Authority Boundary

Session Hygiene governs: instance selection, context rules, reviewer assignment
Build From Spec governs: build gate procedure, confirmation format, acceptance criteria

Three Layers

01
Instance Selection

Which model handles which task and why.

02
Context Contamination Prevention

What context an instance receives, when to split sessions, and what never crosses session boundaries.

03
Opposing Review

The structured review process for build output and written work.

Layer 1 — Instance Selection

1.1 — Task-Based Instance Assignment

Different tasks go to different models. The assignment is declared before the session opens, not chosen during it.

Task typePrimary instanceNotes
Protocol draftingClaudeGoverning document author
Script / tool buildClaudeBuild from approved spec only
Logic / protocol reviewSkywork or DeepSeekOpposing reviewer for Claude output
Writing reviewPerplexity or GPT / GeminiOpposing reviewer for Claude writing
HTML / UI reviewFresh Claude (incognito), Perplexity COMP, or MistralReviewer receives spec only — no transcript
Exploratory ideationAnySandbox rules apply — no production output

Named models reflect current practice. The requirement is a fresh non-builder instance independent of the original session. The independence requirement is fixed. The named model is not.

1.2 — Author and Reviewer Separation

The model that authors output does not review its own output. This is a hard rule.

·Claude authors → Skywork, DeepSeek, Perplexity, or GPT/Gemini reviews
·Claude authors HTML → Fresh Claude instance reviews against spec only
·No exceptions based on convenience or session continuity

A model that authored a document has already committed to a reading of the spec. It cannot perform neutral review of its own output.

1.3 — Sandbox Instance Isolation

A sandbox instance does not graduate to a build instance. When a sandbox session has produced an approved spec, close it. Open a fresh instance for the build.

A sandbox instance has accumulated context — half-formed ideas, rejected approaches, exploratory builds — that is not in the spec. That context will influence the build even if it is not explicitly referenced.

Layer 2 — Context Contamination Prevention

2.1 — What Never Crosses Session Boundaries

ItemRule
Session transcriptNever sent to opposing reviewer or fresh instance
Sandbox contextNever carried into build session
Prior build assumptionsNever carried into fix cycle
Conversational framingNever substitutes for spec in build session
Instance summary of prior sessionNever used as spec substitute

The spec is the only legitimate carrier of context across session boundaries. If something is not in the spec, it does not belong in the build session.

2.2 — Context Width Rules

Session typeContext rule
Build sessionFull approved spec only — no unrelated prior context
Opposing reviewNarrow — spec and output only, no transcript
Fix cycleFresh instance — spec and reviewer report only
SandboxUnconstrained — context compression is a sandbox problem, not a build problem
Long sandbox → production buildHard stop — close sandbox, open fresh build instance

2.3 — Post-Sandbox Build Rules

After a sandbox session of any significant length, before any production build:

1.Close the sandbox session completely
2.Write the approved spec from sandbox findings — do not carry sandbox output forward as spec
3.Open a fresh instance
4.Deliver the spec only — no sandbox history, no 'here's what we figured out' framing
5.Run BUILD-FROM-SPEC protocol from Layer 1
Output typeRiskRule
Python scriptSandbox assumptions baked into logicFresh instance, approved spec only
JSON structureField names and structure drift from specFresh instance, approved spec only
HTML / UI toolFeature assumptions from exploration persistFresh instance, approved spec only — review with second fresh instance

2.4 — Mid-Session Split Triggers

Split to a fresh instance when any of the following occur:

The instance references prior context that is not in the spec
The build output drifts from the spec in ways the instance cannot correct in the same session
The session has run long enough that context compression is affecting output quality
The task type changes — a session that started as a build should not pivot to review or ideation
The instance begins filling spec gaps with assumed behavior rather than asking for clarification

How to split cleanly

1.Note exactly where the session drifted and why
2.Extract the approved spec — do not extract session transcript
3.Open fresh instance
4.Deliver spec only
5.If the split was triggered by drift, add one line to the spec describing the gap the prior instance filled incorrectly

2.5 — The Transcript Rule

Session transcripts are never sent to opposing reviewers or fresh instances. The transcript contains the operator's reasoning process, the instance's rejected approaches, conversational framing, and mid-session corrections — none of which belong in the spec.

If a finding from a session needs to carry forward, it goes into the spec or the operator's notes — not the transcript.

Layer 3 — Opposing Review

3.1 — What the Reviewer Receives

The opposing reviewer receives exactly two things: the approved spec and the output under review. Nothing else. The reviewer evaluates the output against the spec, not against the instance's account of its own work.

3.2 — Reviewer Report Format

The opposing reviewer produces a structured report — a document, not a conversation — with three sections:

What passed: Each element of the output that satisfies the spec — be specific enough that a deviation would be detectable.
What failed: Each element that does not satisfy the spec. What the spec requires, what the output does instead, and why that is a failure rather than an acceptable variation.
Proposed fixes: Concrete changes that would bring failed elements into compliance. Addressed to the operator. The operator decides whether to accept the fix as proposed or modify it.

3.3 — Acting on the Reviewer Report

The operator reviews the report against the spec before acting on any proposed fix. The reviewer's proposed fix is a recommendation, not an instruction. Fix cycle procedure follows Build From Spec §3.2.

3.4 — When Opposing Review Is Not Required

Opposing review is required for all production build output. Not required for: sandbox exploratory builds, draft field notes before the operator's own review pass, or intermediate outputs reviewed in a subsequent build step.

When in doubt, run opposing review. The cost of a structured report is lower than the cost of accepting drifted output.

Context Rules — Quick Reference

WhatCrosses session boundary?How
Approved specYesPaste in full
Reviewer reportYesPaste proposed fixes only
Session transcriptNoNever
Sandbox contextNoNever
Instance summaryNoNever — restate from spec
Operator notesYes, conditionallyOnly if promoted into explicit spec addendum or reviewer packet — not raw conversational notes

Common Failure Modes

Sandbox instance used for production build
Accumulated context contaminates output
Recovery: Close sandbox. Open fresh instance. Approved spec only.
Transcript sent to reviewer
Reviewer inherits build session framing
Recovery: Resend spec and output only. Request new report.
Same instance used for build and review
Reviewer cannot be neutral on its own output
Recovery: Assign opposing reviewer. Fresh session.
Fix applied in same instance as original build
Fix inherits original build assumptions
Recovery: Open fresh instance for fix cycle.
Reviewer report used as instruction without operator review
Fix may introduce new drift
Recovery: Operator reviews report against spec before fix cycle begins.
Context compression affecting output mid-session
Output quality degrading, spec gaps being filled by assumption
Recovery: Split to fresh instance. Note drift. Update spec if needed.
Long sandbox → direct to production HTML
Exploration assumptions baked into UI
Recovery: Close sandbox. Fresh instance. Spec only. Second fresh instance reviews output.

The spec is the only legitimate carrier of context across session boundaries. If it is not in the spec, it does not belong in the build session.

Atlas Protocol — Session Hygiene V1.0 · 2026-05-02 · Schema FVE-1 V5.6 · Atlas Heritage Systems · KC Hoye, PI