Detection sandbox // Technical

Detection sandbox: what signals do not settle

Published 2026-09-14 · 2 min read

Why a sandbox rather than a demonstration of accuracy

A system that reports an emotional state has done two separable things: it recorded something, and it concluded something. The first is engineering and the second is inference, and the gap between them is where almost every overclaim about emotion recognition lives.

This page takes that gap apart. The signals are yours to set, so nothing about the reader is involved. The features are computed by rules printed beside their outputs, so nothing is hidden in a model. And the readings are shown all at once, ranked but never reduced to one, because the honest output of this kind of inference is a spread rather than a verdict.

The demonstration

Set the signals to something a concert would plausibly produce: a high heart rate, high movement, high alignment with the people nearby. Read the ranked list. Then change only the setting to an emergency. The signals have not moved by a single point, and the leading reading changes.

Nothing about the body changed. What changed is the prior that comes from knowing where the body is, and that prior is not available to any sensor in the list. A system deployed in a workplace, a school or a stadium inherits the same problem and usually hides it, because a single label reads as an answer while a ranked spread reads as an admission.

What the research says about the real version of this

The sandbox is a caricature, and the underlying findings are not kinder to detection than the caricature is. A large review concluded that facial movements are not reliable, specific indicators of emotional states across people and contexts (Barrett et al., 2019). A meta-analysis of 202 studies found that autonomic responses did not clearly distinguish one emotion category from another (Siegel et al., 2018). There is no gold-standard measure to fall back on: experiential, physiological and behavioural measures converge only modestly and cannot be treated as interchangeable (Mauss & Robinson, 2009).

Systems built on those signals therefore rest on particular conceptual models of emotion and on proxy data, and those choices shape what the systems imply about people (Stark & Hoey, 2021). When repeated physiological sampling is done carefully in daily life, the patterns that recur within one person vary in number and in the labels attached to them (Hoemann et al., 2020).

What to take from it

An inference can be honest about three things at once: what it saw, what it computed, and what it still does not know. The sandbox prints all three, and the third list is the longest. That is not a failure of the demonstration. It is the result.

The sandbox

Set the signals, choose the setting, and read the panel from left to right: what you set, what follows from it by rule, what it could mean, and what it cannot say.

Detection sandbox: five synthetic signals, the features derived from them, the competing readings they support and the questions they cannot answer.
Synthetic inputs · illustrative weights · nothing is measured or recorded
What you set observed

These are values you chose, not readings from a device. The site records nothing and sends nothing.

50

0

0

0

0

What follows by rule derived

Arousal index
mean of scaled heart rate, movement and voice
Synchrony index
the alignment input, unchanged
Physical effort index
mean of scaled heart rate and movement
Body–report gap
distance between the arousal index and the self-report

What it could mean inferred

Every reading is shown, ranked by prior times fit. A share is not a probability that the state is present; it is this model's weight under its own invented numbers.

The same signals, read elsewhere inferred

The inputs do not change. Only the setting does, and with it the prior that the sensors cannot supply.

What no signal here settles unknown

  • What the person is experiencing from the inside, which no combination of these signals contains.
  • Why they are in that state: the cause is not a property of the body, and the same body state follows from incompatible causes.
  • Whether anything in their situation changed, which is the question this whole site is about and the one signals are silent on.
  • Whether they want to be observed at all, which is a question about consent rather than about measurement.
The six words used above
Observed
Recorded by an instrument or reported by a person. On this site nothing about a visitor is observed; a model's observed inputs are the values the visitor typed in, and a study's observed values are what its authors measured.
Derived
Computed from observed values by a stated rule. A derived value adds no knowledge: it restates the inputs in another form, and the rule can be read.
Inferred
A conclusion that goes beyond the values at hand and could be wrong. Every inference on this site is shown with the alternatives it competes with.
Assumed
Taken as given so that a model can run at all. An assumption is not a finding, and changing it changes the output.
Illustrative
Invented to make a relationship visible. An illustrative number carries a direction, never a magnitude, and must not be quoted as data.
Unknown
Not available from anything the model has, and named rather than quietly omitted. What a person means, why they feel it and whether anything was resolved are usually here.

What this shows

Signals do not carry conclusions. The panel takes five values you set and shows every reading they support at once; when you change nothing but the setting, the leading reading changes. That is the whole argument: the same body, read in a different place, means something different, and the sensors know nothing about the place.

For somebody who works with people

Nothing here assesses a person, and nothing here is a screening instrument. The sandbox exists to make the limits of inference visible, which matters when a device, an app or a service offers to report somebody's emotional state. Where the literature is summarised, it is the group-level finding with its population and its limits, and the clinical boundary is unchanged: distress that persists or includes thoughts of self-harm belongs with a qualified professional.

The rules, in full

Every derived value is a stated function of the inputs, and every share is a prior multiplied by a fit and normalised. The priors and fits are invented; they encode direction, not magnitude. Nothing is estimated from data, and no parameter here was fitted to anything.

Arousal index
mean of heart rate scaled from 50–190 to 0–100, movement and vocal intensity
Synchrony index
the rhythmic alignment input, unchanged
Physical effort index
mean of scaled heart rate and movement
Body–report gap
absolute difference between the arousal index and self-reported activation
Share of a reading
prior for the setting × fit from the derived features, normalised across the five readings

The implementation

The computation is pure and deterministic: derive(signals) and hypotheses(derived, context) are functions of their arguments alone, exposed on window.caasSandbox so a test can call them without a browser page. The Alpine component holds state and asks them; the state is in the URL, so a configured sandbox can be linked.

Model id
detection-sandbox
Implementation
static/js/sandbox.js
URL state
?ds-context=&ds-heart=&ds-movement=&ds-vocal=&ds-alignment=&ds-reported=

What kind of thing each number is

The panel labels every part of itself with one of six words, and the labels are the point. What you set is observed only in the sense that you chose it. What the rules compute is derived and adds no knowledge. What the shares suggest is inferred and could be wrong. What the weights encode is illustrative. And the longest list on the page is the one headed by the sixth word.

Observed
Recorded by an instrument or reported by a person. On this site nothing about a visitor is observed; a model's observed inputs are the values the visitor typed in, and a study's observed values are what its authors measured.
Derived
Computed from observed values by a stated rule. A derived value adds no knowledge: it restates the inputs in another form, and the rule can be read.
Inferred
A conclusion that goes beyond the values at hand and could be wrong. Every inference on this site is shown with the alternatives it competes with.
Assumed
Taken as given so that a model can run at all. An assumption is not a finding, and changing it changes the output.
Illustrative
Invented to make a relationship visible. An illustrative number carries a direction, never a magnitude, and must not be quoted as data.
Unknown
Not available from anything the model has, and named rather than quietly omitted. What a person means, why they feel it and whether anything was resolved are usually here.

Assumptions

  • Heart rate is read on a 50–190 scale and mapped linearly to 0–100 so that it can be averaged with the other signals; the remaining four are unitless 0–100 scales.
  • Arousal is the mean of scaled heart rate, movement and vocal intensity; effort is the mean of scaled heart rate and movement; the synchrony feature is the alignment input unchanged.
  • Each reading has a fixed prior per setting and a fit computed from the derived features; the share shown is prior times fit, normalised across the five readings.
  • The priors and the fit expressions are invented. They encode direction — that anger fits high arousal with low alignment, that a collective reading fits high arousal with high alignment — and nothing about magnitude.
  • Two readings within ten points of each other are reported as not separated, a threshold chosen for legibility rather than derived from anything.

Limits

  • This is not a classifier and must not be used as one. It ranks invented hypotheses under invented weights to show the shape of an inference, not to identify a state.
  • Real affect recognition is harder than this, not easier: facial movements are not reliable indicators of emotion categories across people and contexts, and autonomic patterns do not clearly distinguish one emotion category from another.
  • The five signals are a caricature of what a real system would record, and the four features are a caricature of what it would compute. A richer system would have the same problem in a less legible form.
  • Nothing here says what the person being described means, why they feel it, or whether anything in their situation changed. Those are the questions that matter and no signal in this list reaches them.

References

  1. Barrett, L. F., Adolphs, R., Marsella, S., Martinez, A. M., & Pollak, S. D. (2019). Emotional expressions reconsidered: Challenges to inferring emotion from human facial movements. Psychological Science in the Public Interest, 20(1), 1–68. https://doi.org/10.1177/1529100619832930
  2. Siegel, E. H., Sands, M. K., Van den Noortgate, W., Condon, P., Chang, Y., Dy, J., Quigley, K. S., & Barrett, L. F. (2018). Emotion fingerprints or emotion populations? A meta-analytic investigation of autonomic features of emotion categories. Psychological Bulletin, 144(4), 343–393. https://doi.org/10.1037/bul0000128
  3. Mauss, I. B., & Robinson, M. D. (2009). Measures of emotion: A review. Cognition and Emotion, 23(2), 209–237. https://doi.org/10.1080/02699930802204677
  4. Stark, L., & Hoey, J. (2021). The ethics of emotion in artificial intelligence systems. Proceedings of the 2021 ACM Conference on Fairness, Accountability, and Transparency, 782–793. ACM. https://doi.org/10.1145/3442188.3445939
  5. Hoemann, K., Khan, Z., Feldman, M. J., Nielson, C., Devlin, M., Dy, J., Barrett, L. F., Wormwood, J. B., & Quigley, K. S. (2020). Context-aware experience sampling reveals the scale of variation in affective experience. Scientific Reports, 10(1), 12459. https://doi.org/10.1038/s41598-020-69180-y