Sessions

No sessions yet — this campaign has a brief but no execution.

Brief

Question

The synthetic CSI is clean by construction — no noise floor, no CFO, full precision. Once a commodity-NIC measurement model (AWGN, CFO, SFO/STO, IQ imbalance, phase noise, quantization) is applied, does the amplitude blockage signature still carry occupancy, and at what SNR / CFO does it break?

IP-101 Phase 1 adds the impairment stage to sionna-csi-runner (off by default; impairment_profile: null is byte-identical to today). This campaign sweeps the two dominant impairment axes — thermal-noise floor (snr_db) and carrier offset (cfo_hz) — against the already-characterised clean occupancy signatures, on equal footing (the clean csi.hdf5 oracle is retained per run).

What we already know

  • The clean ray-traced CSI shows a monotonic mean_atten_db_per_person (L4.6 blockage) and a Rician-K variance signature (L4.5). Both are noise-free in silico.
  • A real Atheros/Intel-class NIC delivers CSI at limited bit-depth with a finite SNR and residual CFO/SFO; raw cross-subcarrier phase is unusable without compensation, which is why the thesis pipeline is amplitude-first.
  • The impairment parameters here are a prior from the commodity-NIC literature, not a fit — they bound the design; they are not evidence of real fidelity.

What I want the supervisor to do

  1. Fan out exp-csi-static over the 4 SNR × 3 CFO impairment grid at fixed mid occupancy (n_agents=6, n_placements=48), local CPU first (where=local). Reuses the csi-synth-corridor-link scene from c-csi-crowd-occlusion so the clean baseline is known.
  2. Run a clean control (impairment_profile: null) and confirm byte-identical output.
  3. Run the notebook-backed reduction (csi_impairment_sim_to_real.py, runner python): aggregate the per-cell domain_metrics.impairment into a survival map (impaired ÷ clean blockage slope) over (SNR, CFO); emit csi_impairment_sim_to_real.metrics.json.
  4. Synthesise the capture budget: the minimum SNR / maximum CFO that keeps occupancy recoverable, framed as the spec exp-csi-calibration (IP-094 Phase 4) must capture against.

Analysis-writer responsibilities

  1. Confirm per cell: scalar floor + csi_impaired.hdf5 + impairment block via sim_read_run; effective_snr_db within tolerance of target.
  2. Report (a) the survival map, (b) the SNR/CFO breakpoint where occupancy is lost, (c) the capture-budget recommendation. Cite per-run artefacts by sim:// URI.
  3. State plainly that this is a design input (impairment prior unvalidated) — it makes the transfer hypothesis testable, it does not measure the domain gap.

Figure render request

csi_impairment_survival — an SNR×CFO heatmap of the occupancy-signature survival ratio, with the survival-floor contour marked.

Out of scope

  • Real CSI / sim-to-real calibration (exp-csi-calibration, IP-094 Phase 4) — this designs the capture; it does not fit the impairment model against real data.
  • A full synchronisation/equalisation receiver — the stage models impairments as statistical perturbations, not an RX chain (IP-101 §Trade-offs).
  • Layout drift — that is c-csi-layout-drift.

Expected interpretation

  1. All criteria met → "Occupancy survives down to SNR≈X dB / CFO≤Y Hz; below that the amplitude signature is swamped. The real capture must hold that regime — here is the packet/SNR budget." synthetic-csi-sim-to-real-transfer: speculative → testable.
  2. Signal lost even at high SNR → a fidelity finding: the clean signature is more fragile than assumed; names the impairment that dominates (likely CFO on any residual phase feature) and what the pipeline must avoid.
  3. Criterion 1/2 fails (non-identity control, NaN) → platform finding on the stage.

Operator notes

  • 12 impaired cells + 1 clean control at fixed n_agents=6 — minutes on the M1 CPU. The static scene is built once and cached; impairment is a cheap post-RT ndarray pass, so the marginal cost over a clean run is negligible.
  • The clean csi.hdf5 oracle is retained per run — later notebooks can re-impair it offline (new realizations, new profiles) without re-tracing (IP-101 Q1/A).