ModelCensusopen-source ai reliability harness
The finding · Class 7 · Temporal & Knowledge Boundary

Real context moved 0.0pp on Date-Arithmetic Error.

Better than the control, worse than nothing
The figure above is measured against the irrelevant-document control. Against no context at all this card is worse: 0% bare against 3% with the best supplied source. What the source repaired is damage the presence of a document did.

~intervals overlap — not separated from no change

Given an injected "current date," the model computes relative dates/intervals incorrectly. The rule

microsoft/phi-4fmi_7_35 repeatsfmi_7_3_v1
In one frame
screenshot this
Date-Arithmetic Errorfmi_7_3
microsoft/phi-4
Same question, both times
Today is 2026-01-30. What date is 30 days from today? Answer with the full date.
No contextPASS

To find the date 30 days from January 30, 2026, we need to add 30 days to this date. Starting from January 30, 2026: - January has 31 days. So, there is 1 day remaining in January after January 30. - Subtracting this 1 day from the 30 days we need to add leaves us with 29 more days to add. Since February 2026 is not a leap year, February has 28 days. - Adding 28 days to February 1 brings us to February 28. - We still need to add 1 more day (29 - 28 = 1). Adding 1 day to February 28, 2026, brings us to March 1, 2026. Therefore, 30 days from January 30, 2026, is March 1, 2026.

detector fmi_7_3_v1: date arithmetic correct

Curated contextPASS

To find the date 30 days from today, we start with the current date, which is January 30, 2026. Adding 30 days to this date: - January has 31 days. Since today is January 30, there is 1 day remaining in January. - Subtracting this 1 day from the 30 days we want to add leaves us with 29 more days to add. Adding these 29 days to February: - February 2026 is not a leap year (2026 is not divisible by 4), so February has 28 days. - Adding 28 days to February 1 brings us to February 28. - We still need to add 1 more day (29 - 28 = 1). Thus, adding 1 more day to February 28 brings us to March 1. Therefore, 30 days from January 30, 2026, is March 1, 2026. The full date is **2026-03-01**.

detector fmi_7_3_v1: date arithmetic correct

Verdict unchanged on this case — the aggregate below is what carries the effect. Across 5 repeats: 0.0pp (intervals overlap).fmi_7_3_v1 · microsoft/phi-4 · 2026-08-15 · ground truth as of 2026-08-09

loop 2026-08-15 · microsoft/phi-4 as served · open weights · released 2024-12 · 14B · set s1.3-live · cases v1.6 · conditions v1.0 · ground truth as of 2026-08-09

From no context to real context
5 repeats per case
failure rate · left is fewer failures0%5%10%15%20%No context0%[0%9%] n=40Irrelevant context3%presence — a document being there[0%13%] n=40+2.5pp OVERLAPSCurated context3%content — the information itself[0%13%] n=400.0pp OVERLAPS
whiskers are 95% intervals · each step is measured from the stop before it, not from zero
Try the other contexts
stored · no model call
1Questionheld fixed
Today is 2026-01-30. What date is 30 days from today? Answer with the full date.

expected as of 2026-08-09

From 2026-01-30, 30 days later is 2026-03-01 (1 March 2026). Crossing February in a non-leap year.

2Contextchange me

Nothing supplied. The baseline.

3ResponseNo context
PASS

To find the date 30 days from January 30, 2026, we need to add 30 days to this date. Starting from January 30, 2026: - January has 31 days. So, there is 1 day remaining in January after January 30. - Subtracting this 1 day from the 30 days we need to add leaves us with 29 more days to add. Since February 2026 is not a leap year, February has 28 days. - Adding 28 days to February 1 brings us to February 28. - We still need to add 1 more day (29 - 28 = 1). Adding 1 day to February 28, 2026, brings us to March 1, 2026. Therefore, 30 days from January 30, 2026, is March 1, 2026.

fmi_7_3_v1

detector fmi_7_3_v1: date arithmetic correct

The scoring
Failure rate by context
No context0% [0%9%] n=40
Irrelevant context3% [0%13%] n=40
General context23% [12%38%] n=40
Curated context3% [0%13%] n=40

0–60% · whisker = 95% interval

Trap vs answerable
No contexttrap 0%answerable 0%
Irrelevant contexttrap 4%answerable 0%
General contexttrap 32%answerable 7%
Curated contexttrap 4%answerable 0%

never pooled · a trap ratio would skew the delta

Residual — what survives

Supplying context did not reduce this failure, it increased it: 0% with no context against 23% under the strongest supplied source. What survives is therefore not a remainder but a substitution — the failures under context are 1 probes the detector still rejected, dominated by: expected 2026-08-23.

Mitigations from the index — the claim
  • date libraries via tools
  • explicit date arithmetic

fmi_7_3_v1 · 5 repeats per case · best context curated context · rollups + residuals committed · probe log outside git · manifest hash ties them · method