What the classroom hides....and what the science still requires.
Students never need a command line. Sessions 7–16 require one fixed-choice reading of the Python behind manual dip analysis; no typing is required. Expanded code practice remains optional. This page preserves the data contract, processing decisions, privacy boundary, and readiness gates for teachers, observatory partners, and technical reviewers.
01 / FITS intake contract
A dataset does not enter the course because it merely opens.
Required before reduction
At least 100 usable science frames in one filter
Unambiguous exposure time, observation time, filter, and detector profile
Bias/dark/flat provenance appropriate to that detector and night
A solved or solvable WCS with target coordinates inside the field
Enough baseline before and after the predicted event
A calibrated, good-seeing reference frame for source counting
Named instrument profiles
TSS profile
PlaneWave/ZWO teaching-observatory mappings remain explicit and separately selected.
LCO profile
LCO header mappings and WCS behavior are never merged silently into the TSS profile.
Clear passband
CLEAR_NO_EXTERNAL_FILTER is accepted only as an explicit, preserved passband label.
Screening correction now locked:“100 frames” means 100 usable frames in a single filter. “Enough stars” is measured on a calibrated frame in good seeing....not from raw peaks inflated by hot pixels, cosmic rays, or a bad FWHM estimate.
02 / Versioned source registry
One public core. Two ground nights kept for different physics.
MAST is already inside the course, so a future paid release does not require a last-minute source swap. It covers space photometry honestly. The LCO nights remain because neither can replace the other: one carries a complete, wide-field ground event; the other carries real rotator geometry.
MAST / NASA
NASA TESS Sector 20
Available · default
Paid-safe signal recovery, modeling, verification, and capstone evidence.
NASA/MAST acknowledged as the data source; no agency endorsement implied
Boundary: Use for space-photometry and light-curve reasoning. It does not pretend to provide ground bias, dark, flat, field-rotation, or comparison-star lessons.
public archivepaid course readytime seriescomplete transitquality flagsspace photometry
Complete-transit ground reduction and the Phase III field census.
Instrument
TFN 0m4b / kb98 / wide field
Coverage
2021-02-08/09 · 4 h 57 m · 418 raw w-filter frames
Bundle
0.1.0-pilot / LCO observation 187990518
Full event with pre- and post-transit baseline
335 catalog sources in the first sampled frame; 324 in the last
Linked raw, reduced, and calibration products
Boundary: Use for ground calibration, complete-transit reduction, comparison ensembles, and wide-field Phase III work. A class falls back automatically if the pilot bundle is unavailable.
public archivetime seriescomplete transitraw sciencecalibrationswcssingle filter 100spatial sources 30ground reduction
Fail-closed, then keep teaching:A mission checks its required capabilities before it runs. A mismatch never becomes a mysterious result: ExoInquiry records the requested source, loads the labeled course fallback, and lets the class continue.
03 / Catalog snapshots
Every external answer needs a frozen source and a way back to it.
GAIADR3 snapshot
Source identifiers, coordinates, proper motion, magnitudes, and query footprint.
TARGETEphemeris snapshot
Period, midpoint, uncertainty, duration, source citation, and retrieval date.
ARCHIVEFrame manifest
Observatory, instrument profile, filter, timestamps, calibration links, and content hashes.
Status: the MAST product and ephemeris snapshot are frozen in the available classroom bundle. Gaia and full LCO catalog packages remain pilot work and are not represented as completed reductions.
04 / Processing architecture
The interface removes syntax, not scientific gates.
01IngestProfile + manifest
02CalibrateBias / dark / flat
03SolveWCS + target lock
04TrackRotation + translation
05MeasureStreaming photometry
06CorrectEnsemble + detrend
07VetQuality + spatial
08PackageEvidence + hashes
Memory boundary
Calibration and photometry are designed for streaming or memory-mapped access rather than loading a full night into memory.
Tracking boundary
The planned affine tracker handles field rotation plus translation and refuses a sequence whose residuals exceed the profile gate.
Spatial boundary
Full spatial vetting requires at least 30 valid references; fewer sources produce an unresolved disposition, not a quiet pass.
Code-literacy boundary:The required checkpoint shows one real line operating on scientific measurements and asks for its physical meaning by fixed choice. Four unsuccessful attempts apply the stored answer, so the gate cannot strand a student. The expanded lens mirrors interface choices as readable Python, accepts one bounded number, includes one optional bug check, and offers three optional constrained lines. That expanded lens catches its own rendering failure and exports a standard-library Python script without controlling completion.
05 / Operator command contract
These are pipeline controls, never student requirements.
# MAST classroom source .... available as a frozen browser bundle
python scripts/build-mast-bundle.py \
tess2019357164649-s0020-0000000086396382-0165-s_lc.fits \
lib/data/mast-wasp12b-s20.json
# LCO 187990518 .... complete transit + wide-field Phase III
transitsift validate lco-187990518/ --profile lco-kb98 --single-filter-min 100
transitsift photometry lco-187990518/ --track translation --aperture-grid 4,6,8,10,12
# LCO 179120561 .... real rotator geometry, not the complete event
transitsift validate lco-179120561/ --profile lco-ep02 --preserve-filters
transitsift photometry lco-179120561/ --track similarity --record-residuals
# Shared evidence package
transitsift vet run.json --min-spatial-sources 30 --evidence evidence/
transitsift package evidence/ --manifest --sha256
The MAST bundle generator produced the current browser snapshot. The TransitSift commands describe the ground-pipeline contract and remain pilot operator work; the public browser does not claim to execute them.
06 / Teacher insight without surveillance
Track purposeful events. Do not infer attention from a cursor.
Captured
Pseudonymous session code and roster number
Join, run-start, completion, last-seen, and retry timestamps
Fixed-choice confidence and exit-ticket answers
Error stage and whether the teacher released a slot
Scientific choices, quality gate, and bounded verdict
One-line code attempt count and outcome, but not the incorrect line itself
Explicitly not captured
Names, email addresses, or student prose
Cursor position, cursor movement, or keystrokes
Incorrect one-line code text after the current page is closed
Idle detection, screen contents, camera, or microphone
Audio from the Week 8 oral defense
Any continuous behavioral recording
Interpretation rule:Time on a stage is not the same as difficulty or attention. The timeline is a prompt for a teacher’s question; the fixed-choice exit ticket is the direct concept signal. Neither becomes a grade automatically.
Retention contract:Course records expire 150 days after class creation (120 course days plus a 30-day export window). Self-guided records expire after 7 days. The purge runs 03:17 UTC daily. Read the implemented privacy page.
07 / Readiness gates
No green label without the test that earned it.
Available means implemented and covered in the current release. Manual gates stay open until a person performs them on the intended device and network.
One authoritative public URL
All routes share the same hosted release and custom domain.
Available
Shared release numbers
Roster, headline measurements, source release, and hosted version are checked together.
Available
Background-tab recovery
Student and teacher pages refetch on visibility, focus, and page restore.
Available
Reload recovery
Pseudonymous slot, browser key, and mission state restore from online records plus the device key.
Available
Half-width classroom layout
The 560–900 px band has an explicit layout and legibility breakpoint.
Available
Duplicate slot handling
A second browser is refused clearly; teachers can release a dropped slot.
Available
Late joins
An open session accepts a late student without changing completed results.
Available
Roster slots 1–20
All twenty deterministic roles are covered by automated fixture checks.
Available
Twenty independent networks
The release still needs a real simultaneous-network classroom test.
Manual gate
Phone over cellular
Real-device readability and saving remain a human acceptance test.
Manual gate
Zoom foreground/background
Short, six-minute, full-screen, and memory-pressure variants remain manual gates.
Manual gate
MAST public classroom bundle
The real TESS Sector 20 WASP-12 b light curve is frozen, source-hashed, measured, and used by the available recovery mission.
Available
LCO complete-transit bundle
Observation 187990518 is assigned to complete ground reduction and wide-field Phase III work; end-to-end numerical QA remains open.
Pilot testing
LCO rotator bundle
Observation 179120561 is retained for OGG 2m0a similarity tracking; end-to-end tracker residuals remain open.
Pilot testing
Bring-your-own FITS preflight
The capability contract is defined; teacher upload, quarantine, and package validation are not yet public.
In development
Real worker queue
The current training run is immediate. Position and estimate are required before queued FITS processing ships.
In development
Sixteen-session cloud continuity
Mission opens, interactions, completions, and lab state are saved online for keyed rejoin.
Available
Automatic expiry proof
A daily scheduled job deletes expired sessions and every related progress, run, and feedback row; the exact deletion statements run in an automated database test.
Available
Teacher export before deletion
The authenticated dashboard exports every saved student record, course event, science result, and fixed-choice feedback item.
Sessions 7–16 require one fixed-choice interpretation of Python that operates on light-curve data. Four misses apply the stored scientific meaning. The expanded lens, guarded edit, three typed lines, and export remain optional and failure-contained.
Available
Manual acceptance / before a 20-student class
The visible test sequence.
Authoritative URL: open the exact link that will be pasted into class chat and verify version and headline numbers.
Background survival: test a 30-second switch, a six-minute switch, full-screen Zoom, and memory pressure.
Half-width: complete the flow beside Zoom at roughly 680 px and verify curve, metrics, and gate.
Class burst: join five, ten, and twenty independent browsers; verify every result and any queue messaging.
Failure recovery: refresh, close mid-run, duplicate a slot, sleep the laptop, release the slot, and join late.
Screen share: inspect the results view through real Zoom compression on a second device.
Phone: run once on cellular and once while switching between Zoom and the browser.
Human gate: two first-time unaided testers complete the task while every hesitation is recorded.
PRINT THIS PAGE TO SAVE A COPY OF THE RELEASE CHECKLIST