FA-12046 / Sensor fusion consistency / Open access
Sensor clock offset is applied with the wrong sign · case 01
Cross-sensor association rejects simultaneous samples.
ROOT CAUSE
Sensor-local time is compared directly to reference time.
THE FAILURE
Sensor-local time is compared directly to reference time.
Unsuccessful approach: Taking the offset magnitude loses the sign for slow sensor clocks.
Case contract
Return whether local-offset lies within tolerance of reference; offset equals sensor-local minus reference time and tolerance is nonnegative.
Why this case matters
Deterministic sensor-fusion model isolating one consistency contract; no hardware or production estimator is simulated.
1 / The failure
Exit 1"""Failure Map reference implementation. Python standard library only."""
import json
from fractions import Fraction
N = 1
observations = []
def solve(local, offset, reference, tolerance):
return abs(local-reference) <= tolerance
def check(label, actual, expected):
observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
check('fast sensor', solve(10+N,N,10,0), True)
check('slow sensor', solve(10-N,-N,10,0), True)
check('positive boundary', solve(12+N,N,10,2), True)
check('outside association', solve(13+N,N,10,2), False)
check('zero offset', solve(N,0,N,0), True)
check('negative reference time', solve(-10-N,-N,-10,0), True)
print(json.dumps({"observations": observations, "passed": all(x["passed"] for x in observations)}, ensure_ascii=False))
raise SystemExit(0 if all(x["passed"] for x in observations) else 1)
| Boundary fixture | Actual | Expected | Outcome |
|---|---|---|---|
| fast sensor | False | True | Failed |
| slow sensor | False | True | Failed |
| positive boundary | False | True | Failed |
| outside association | False | False | Passed |
| zero offset | True | True | Passed |
| negative reference time | False | True | Failed |
SHA-256 / 8af7d7e734a51db683cf90de1dace12a27e78d535e7db367cc6c5b0546ce29fa
2 / The unsuccessful fix
Exit 1"""Failure Map reference implementation. Python standard library only."""
import json
from fractions import Fraction
N = 1
observations = []
def solve(local, offset, reference, tolerance):
return abs(local-abs(offset)-reference) <= tolerance
def check(label, actual, expected):
observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
check('fast sensor', solve(10+N,N,10,0), True)
check('slow sensor', solve(10-N,-N,10,0), True)
check('positive boundary', solve(12+N,N,10,2), True)
check('outside association', solve(13+N,N,10,2), False)
check('zero offset', solve(N,0,N,0), True)
check('negative reference time', solve(-10-N,-N,-10,0), True)
print(json.dumps({"observations": observations, "passed": all(x["passed"] for x in observations)}, ensure_ascii=False))
raise SystemExit(0 if all(x["passed"] for x in observations) else 1)
| Boundary fixture | Actual | Expected | Outcome |
|---|---|---|---|
| fast sensor | True | True | Passed |
| slow sensor | False | True | Failed |
| positive boundary | True | True | Passed |
| outside association | False | False | Passed |
| zero offset | True | True | Passed |
| negative reference time | False | True | Failed |
SHA-256 / 36f989d4c22a3c4c66aef5cd79a5b0d8b127f35a8705b6c507e6116163e6d514
HELD IN THE MEMBER ARCHIVE
The verified repair and its recorded checks are member-only.
This mechanism has 6 recorded checks per implementation. The open-access tier publishes the failure and the unsuccessful fix; the repaired source that passes every check, and the observations that prove it, are available to members.
Every case sharing this mechanism uses the same contract and the same repair, so this one record is held back for all of them.
Member access is invitation-based. Sign in with your invited account to inspect the repair.
Sign in to the archive ↗Verification & scope
Exact small scalar or two-axis models; no nonlinear dynamics, numerical conditioning, or real sensor noise simulation. This reproducer isolates one failure mechanism. Results cover the supplied fixtures. Variants within a family share a test contract and should remain grouped when constructing evaluation splits. Related mechanisms with a shared evaluation_group must also remain together; these controlled models are not independent production incidents.
Observations recorded using Python 3.12.14 at 2026-09-29T14:38:53.371449+00:00.
Case digest / 6ddc5f939617d2646e115580e3ab44001ebdb7b680deb41911a68bf4d06b0662