Asking the fleet what it is doing…
monad-knowledge Wi-Fi sensing lab · FIIT STU
Campaign session

01KTFBXV5PQRHT8KNWPPXHPKVZ

finished 2026-06-06 21:02:53.112501+00:00 → 2026-06-07 08:04:32.570512+00:00 · 16 runs · supervisor: react-agent

“All 4 criteria met: ray tracing locates the L4.5↔L4.6 crossover at N*≈0 (2.4 GHz) and N*≈1.4 (5 GHz) on the corridor geometry — variance overtakes blockage almost immediately; ρ_atten=−0.98, ρ_CV=+1.0/+0.98 per band over the complete 16-cell grid.”

Archive snapshot, as of 8 h ago — the run corpus is rebuilt once a day, so this page is not a live reading. The fleet panel is the live one; it refreshes every 30 s.

Success criteria

CriterionResolved
Each occupancy level returns the IP-085 scalar floor (mean_atten_db_per_person, k_vs_occupancy_slope, variance_monotonicity) plus links.parquet and csi.hdf5; no NaN/Inf. yes
Mean CSI amplitude decreases monotonically and saturates with occupancy: Spearman rho(n_agents, mean_amp_db) <= -0.6 over n_agents 0..12. yes
Amplitude CV rises with occupancy: Spearman rho(n_agents, CV) >= +0.6, with crossover N* located per band (2.4 vs 5 GHz). yes
Notebook-backed analysis emits candidate figure F4.x and metrics.json carrying N* per band; synthesis cites per-run artefacts by sim:// URI. yes

Synthesis

Synthesis — c-csi-crowd-occlusion, session 01KTFBXV5PQRHT8KNWPPXHPKVZ

Question: where does the mean-blockage signature (L4.6) cross the multipath-variance signature (L4.5) as occupancy rises on a real PostGIS floor, and how does the crossover move with carrier frequency?

Corpus. Complete 16-cell grid — n_agents ∈ {0,1,2,3,4,6,8,12} × {2.4, 5} GHz, seed 0, 48 placements/cell — on csi-synth-corridor-link / test-lab-synth-floor-0 (1 Tx × 3 Rx, 25 walls, cylinder bodies r=0.20 m / 5 dB). 21 launch attempts for 16 successes: 4 lost to transient sim.s3.put BoundaryTimeouts (30 s cap, no in-runner retry) and 1 to a macOS fork-safety SIGTRAP in the MCP server's docker-build child (CPython 3.12 fork+exec with cygrpc threads); all 5 succeeded on relaunch.

Criterion 1 — artefact floor: MET. Every run returned the IP-085 scalar floor with the three named keys (e.g. run 01KTFCH0FD55ESP7TV4PA3ZT8J, n=12 @ 2.4 GHz: mean_atten_db_per_person=24.93, k_vs_occupancy_slope=−0.157, variance_monotonicity=−1.0) plus links.parquet and csi.hdf5 — see sim://run/01KTFCH0FD55ESP7TV4PA3ZT8J/artefact/links.parquet. No NaN/Inf survived the reduction.

Criterion 2 — L4.6 mean blockage: MET. Pooled per-occupancy mean |H| falls monotonically with ρ(n, mean_amp_db) = −0.976 on both bands, with the saturating shape the analytical sandbox predicts.

Criterion 3 — L4.5 variance rise + crossover: MET. CV climbs with ρ(n, CV) = +1.00 (2.4 GHz) and +0.976 (5 GHz). The normalised-CV-vs-normalised-attenuation crossover sits at N ≈ 0 (2.4 GHz)* and N ≈ 1.4 (5 GHz)*: on this corridor geometry the variance signature dominates essentially from the first occupant at 2.4 GHz, and the crossover moves up with carrier frequency. The two-signature tension in thesis/csi-sensing §3 resolves into a geometry- and band-dependent crossover curve at very low N — not into a blockage-dominant regime.

Criterion 4 — reduction artefacts: MET (driver mode). csi_occupancy_crossover.py ran host-side over the pooled links.parquet corpus (the README's local-curious driver path; per-run inputs fetched sequentially), emitting csi_occupancy_crossover.metrics.json with N* per band and candidate figure F4.x (fig_csi_occupancy_crossover.png) under _cache/campaign-sessions/01KTFBXV5PQRHT8KNWPPXHPKVZ/reduction/.

Reading. Outcome 1 of the brief: feeds figure F4.x and the reconciling paragraph for csi-sensing §3 — with the nuance that this corridor geometry barely exhibits a blockage-dominant window at all; the L4.6 signature saturates fast (≈25 dB/person initial drop, then flat) while CV keeps rising. Calibration against real 80 MHz data stays with exp-csi-calibration (IP-094 Phase 4); body-model sensitivity is the sibling session (c-csi-body-em-fidelity).

Platform notes. (1) sim.s3.put 30 s timeout with no retry killed 4/21 attempts — same surface flagged in the c-walk-notebook-flex session; an artefact-sync retry would have saved ~20 % of launches. (2) The MCP server (CPython 3.12, framework build) forks docker children while cygrpc threads are live — one child trapped in libdispatch pre-exec; venv should move to Python 3.13 / posix_spawn.

Attached runs

Run Gate Purpose Replay
T402VX62
MWH314TB
EG2NMBX7
4PA3ZT8J
CV8AGG4C
SVEAWFNH
7XW14BWJ
C52HJ6G7
ABJR55NH
Q2YXCPYZ
38NSHRAS
14MWAA6F
DGTS7Y49
MVW9MQFW
CV9N1YZA
5G1XFEEF