{
  "artifact": "Channel signature and readout-confusion notebook-free lab",
  "chapter": "Noise Models and Noisy Simulation",
  "chapter_url": "https://www.steven-geller.com/playground/quantum/book/41-noise-models-and-noisy-simulation/",
  "date_modified": "2026-08-14",
  "dependencies": [],
  "expected_exit_code": 0,
  "expected_stdout": "PASS: 41 noise bitflip_population=0.100 dephase_coherence=0.400 complete_dephase=0.0\n",
  "fixture_sha256": "e59d6a6ef2ec86706e61e4e29848d8229738e5cbfb2f372aa3d8f004afe3aa27",
  "manifest_test_command": "python3 tools/validate_briefs.py --briefs data/editorial_briefs_36_63.json --from 36 --through 63 --check-rewritten-sources --execute-artifacts",
  "pass_condition": "Unit tests preserve trace/Hermiticity, recover analytic populations/coherences at p=0,0.1,0.5, and distinguish channel output from post-measurement confusion.",
  "python_requires": ">=3.11",
  "run_command": "python3 fixture.py",
  "schema_version": "1.1.0",
  "test_method": "Run the isolated fixture; require exit code 0 and exact stdout."
}
