# A signal is not a diagnosis.

A sharp CO₂ increase looks consequential. The separately recorded occupancy labels tell a different story—and show why an evidence packet must preserve uncertainty.

By Reific. Published 2026-09-15.
Category: 02 / Room sensors / Public-data replay. Read: [article](/research/room-occupancy).
Question: Where is the largest CO2 rise across 30 consecutive sampling intervals, and do those sensor readings alone confirm room occupancy?


## Find the change before looking at the answer.

This replay uses all 8,143 rows from the public dataset's datatraining.txt file. We remove the Occupancy target before building either input payload and before choosing a window. Every sequence of thirty sampling intervals is compared by its endpoint CO₂ change. The timestamps vary between 59 and 61 seconds per interval.

This is a retrospective scan of observed data. No model was trained or tested, and this is not an early-warning result. The source's split name does not turn the replay into a training experiment.

## The largest rise is real. Its explanation is unresolved.

The maximum endpoint rise is 715 ppm, from 650 to 1,365 ppm between 9 February 2015, 21:40:59 and 22:11:00: 1,801 elapsed seconds. The complete 31-reading sequence is preserved in the evidence packet. Its penultimate value is 619 ppm, so the result is dominated by the final jump rather than a steady climb.

A CO₂ rise alone does not establish occupancy, a headcount, or a ventilation fault. The appropriate conclusion from this payload is to flag the change and request corroborating evidence before making that attribution.

## The withheld labels expose the inference trap.

After the window was selected, we inspected the dataset's separate occupancy labels. All 31 are zero: the room is labeled unoccupied throughout this selected window. Those labels were supplied by the dataset authors, whose occupancy record was derived from timestamped images; we did not independently inspect those images.

This is one descriptive counterexample to treating a rise as proof of occupancy. It does not establish a sensor fault or a cause, measure a classifier's accuracy, or prove that any agent would have made the wrong inference. The separate label audit is downloadable and never included in the counted agent-input payloads.

## Keep the evidence that can change the answer.

The compact packet retains every CO₂ reading in the selected window, source rows, elapsed time, and the unresolved conclusion. The full sensor CSV and a simpler two-column projection remain available for comparison. Removing context indiscriminately would undermine the point: the shape of this event is essential to interpreting it.

A code-enabled agent can calculate the same window directly. The question for a future evaluation is whether a proposed evidence layer improves the complete investigation against that capable baseline, including abstentions, errors, review time, and all tool costs.

## Sources

1. [Candanedo (2016), Occupancy Detection — UCI dataset and attribution](https://archive.ics.uci.edu/dataset/357/occupancy+detection)
2. [Dataset DOI: 10.24432/C5X01N](https://doi.org/10.24432/C5X01N)
3. [Creative Commons Attribution 4.0 International](https://creativecommons.org/licenses/by/4.0/)

Reproduction files: [measurements and checksums](/evidence/replay.json), [script](/evidence/replay.py), [source bundle](/evidence/replay-bundle.zip).
