Fields marked — unavailable are designed-in but not yet emitted by the capture stream; they fill in when their slice lands (no redesign). Times: local Chicago for the human, UTC for machines.
S
A plan is waiting for youdrafted by {{ draftBy }} · review before arming
suggestion
subject
{{ draftSubject }}
rate
{{ draftRateLabel }}
duration
{{ draftDurationLabel }}
{{ c.id }} · {{ c.label }}
hypothesis
{{ draftHypothesis }}
{{ draftNote }}
✓ loaded {{ draftBy }}'s draftEverything below is editable — it's yours now. Nothing records until you arm and confirm.
Draft dismissed — building the plan by hand.
What you're capturing
Probe labels
what each probe is, and where it sits
{{ p.id }}{{ p.gpio }}primary
Labels travel with the capture — they tag the live channel cards, the chart legend, and the saved readings. They're notes, not calibration.
Sample rate
faster → finer detail, bigger file
Why {{ rateLabel }}? {{ rateWhy }}
Duration
a bounded session — it auto-stops here
Auto-stops at {{ durationLabelPlanned }} (≈{{ plannedSamples }} samples at {{ rateLabel }}). The capture process owns the stop — it ends even if the browser closes.
Source
⚠Synthetic data is excluded from evidence and never used for real bench work. The capture is tagged source=synthetic so it can't be mistaken for a reading.
Destination
🛡{{ destPath }}
Isolated — your living monitor log is never touched. {{ overwriteNote }}
{{ ownerLabel }}
The Monitor logger holds {{ port }} for the living baseline. Capture needs exclusive ownership so the two streams can't silently contaminate each other.
{{ armBlockReason }}
ARMEDreview, then begin — nothing is recorded until you confirm.