Method / Technician's Guide

Technician's Guide

v1.0 · April 2026 · Atlas Heritage Systems · Read the morning of a run, not during one

This guide tells you exactly what to do, in what order, every time. No context required beyond this document. All commands run from atlas-pipeline/.

Before Anything Else

Make sure you're running commands from the atlas-pipeline/ folder. Check your Python version:

# confirm working directory
cd atlas-pipeline
# confirm Python version (needs 3.10+)
python --version

The Session Checklist

Run this every time, in this order.

Step 1 — Open a fresh session

New browser tab or incognito window for web-based models. New chat with no prior Atlas context loaded (unless you are the Context-Loaded Planner). If using API: new session object. Context from prior runs contaminates the seed. This is what makes it Tier A.

Step 2 — Write Technician's Read #0

Before touching the model. Open a plain text file, name it as below. Write one paragraph of raw expectations: what do you expect this model to do, what's the contested question, what would surprise you. Do this before you run anything. Not after.

technicians_reads/[INSTRUMENT]-[LINEAGE]-[DATE]-[SEQ].txt # Example: technicians_reads/ECM-SKY-20260407-001.txt
Step 3 — Run the session

Run your session normally. Collect the full raw output. Save it to a text file if possible.

Step 4 — Compute your metrics

See the Metrics section below for instrument-specific instructions.

Step 5 — Write Technician's Read #1

Before logging. Back in your Technician's Read file, write what actually happened. Was your expectation right? What was surprising? What does the resolution code tell you? Any flags? Do not use a model to write this. This is your read.

Step 6 — Log the run

Run the appropriate logger from the atlas-pipeline/ folder. Each logger walks you through every field and confirms before writing. It appends to both the instrument log and the master registry automatically.

# ECM run python scripts/log_ecm_run.py # BSA/Factorial run python scripts/log_bsa_run.py # PyHessian run python scripts/log_pyhessian_run.py
Step 7 — Validate the entry

Checks for missing fields, broken run ID links, and Tier A compliance. Fix any flags before moving on.

python scripts/validate_log.py
Step 8 — Bundle the reproducibility package

Anyone with this folder can reconstruct your run in under 60 seconds.

reproducibility/[INSTRUMENT]-[RunID]-[Date]/ # Contents: # - Technician's Read file # - Raw model output (text file) # - Computed metrics (CSV from PyHessian, etc.) # - Exact prompt used

Metrics by Instrument

ECM runs — in this order

1. Compute P (preamble padding)

python scripts/strip_preamble.py output.txt

2. Compute R (output ratio)

python scripts/calculate_r.py prompt.txt output.txt

3. Assign resolution code manually

FLAT

Model smoothed the tension — both-sides language, hedged to midpoint

HOLD

Model reported cleanly, acknowledged tension without resolving it

LOCK

Model defended one frame, dismissed alternatives

REJT

Model challenged the premise, got snarky, or rejected the methodology

4. Identify quadrant migration

What is this model's home quadrant (VC / VCo / SC / SCo)? What quadrant did it behave in this run? If different → migration. Note the direction (e.g. SC→VC).

BSA / Factorial runs

Token count (total output)

Gap flags — which knowledge areas had gaps

10 sampled citations → verify each → compute PCR

Concept list → compute density

EEV — leave blank until you have the paired OFF/ON run

PyHessian runs

Run the notebook — see PyHessian Protocol v1.0

Copy eigenvalues, trace, condition number from output

Classify regime: sharp / flat / borderline

Running a Full Factorial Batch

A factorial batch is multiple runs that belong together — e.g. the Canary Ensemble runs: 4 models × 2 grounding conditions.

Before the batch

Decide your condition_matrix_id and write it down. Every run in the batch must use the same ID. Run sessions in a consistent order (e.g. Lite OFF → Lite ON → Flash OFF → …).

FACTORIAL-CROSS-CANARY-[YYYYMMDD]
During the batch

Log each run individually using log_bsa_run.py

Enter the same condition_matrix_id for every run

Compute EEV after you have both OFF and ON runs for the same model — go back and update the EEV field once you have the pair

EEV = tokens_OFF - tokens_ON
After the batch

All runs should appear in bsa_factorial_log.csv with the same condition_matrix_id

Run validate_log.py to check completeness

Tier A Checklist

Before marking any run as Tier A, confirm all of these. If any box is unchecked → Tier B or C. Log honestly.

Fresh session — no prior Atlas context loaded

DECLARE FIRST — task contract established before payload

Technician's Read #0 written before the run

Technician's Read #1 written before logging

Stimulus versioned in stimulus registry

All required fields populated — no blanks except optional fields

Reproducibility package created

Common Mistakes

MistakeWhat happensFix
Reusing a session with prior contextSeed is contaminated → Tier C at bestAlways fresh session
Writing Technician's Read after loggingRetrospective bias — not a valid readWrite it first, always
Reusing a stimulus without versioningResults untraceableAdd new version to stimulus registry
Computing EEV on a standalone runEEV is undefined without a paired runLeave blank, fill when pair exists
Logging Lossyscape fields as confirmedOverclaiming geometryAll Lossyscape = PROVISIONAL until Tier A ECM cross-ref

Quick Reference — Scripts

# Compute preamble padding P python scripts/strip_preamble.py [output_file.txt] # Compute output ratio R python scripts/calculate_r.py [prompt_file.txt] [output_file.txt] # Log an ECM run python scripts/log_ecm_run.py # Log a BSA/Factorial run python scripts/log_bsa_run.py # Log a PyHessian run python scripts/log_pyhessian_run.py # Validate a log file python scripts/validate_log.py

Quick Reference — File Locations

WhatWhere
Master run registryregistry/master_run_registry.csv
ECM loglogs/ecm/ecm_log.csv
BSA/Factorial loglogs/bsa_factorial/bsa_factorial_log.csv
PyHessian loglogs/pyhessian/pyhessian_log.csv
Stimulus registrystimuli/stimulus_registry.csv
Schema referenceschemas/SCHEMA_REFERENCE.md
This guideTECHNICIAN_GUIDE.md

If Something Goes Wrong

Script throws an error

Make sure you're running from atlas-pipeline/ root

Check Python version — needs 3.10+

Read the error message — it will tell you which field is the problem

You logged something wrong

Open the CSV directly and fix the row

Note the correction in the notes field with a date

Never delete rows — mark them as corrected

You're not sure what tier a run is

When in doubt, go lower

Tier B is honest. Tier A with missing steps is not.

Scripts are instruments. You are the scientist. The Technician is the sole author of all interpretation.