FA-100671 / Speculative decoding bookkeeping / Open access
Decoding: Bonus token is emitted when only part of the draft was accepted · case 01
Bonus token is emitted when only part of the draft was accepted.
ROOT CAUSE
Any nonempty accepted prefix is treated as full acceptance.
THE FAILURE
Any nonempty accepted prefix is treated as full acceptance.
Unsuccessful approach: Treating a one-token remainder as full acceptance still emits a bonus after partial acceptance.
Case contract
Emit the supplied bonus token only when every proposed draft token was accepted; otherwise return no bonus.
Why this case matters
A self-contained bookkeeping model makes prefix and token-count semantics observable without a model runtime.
1 / The failure
Exit 1"""Failure Map reference implementation. Python standard library only."""
import json
N = 1
observations = []
def solve(draft, accepted, bonus):
return bonus if accepted > 0 else None
def check(label, actual, expected):
observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
check('fully accepted', solve([1,2],2,9),9)
check('partial acceptance', solve([1,2],1,9),None)
check('rejected all', solve([1],0,8),None)
check('empty proposal bonus', solve([],0,7),7)
check('singleton accepted', solve([N],1,4),4)
check('singleton rejected', solve([N],0,4),None)
check('long partial', solve([1,2,3,4],3,5),None)
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 |
|---|---|---|---|
| fully accepted | 9 | 9 | Passed |
| partial acceptance | 9 | None | Failed |
| rejected all | None | None | Passed |
| empty proposal bonus | None | 7 | Failed |
| singleton accepted | 4 | 4 | Passed |
| singleton rejected | None | None | Passed |
| long partial | 5 | None | Failed |
SHA-256 / 797e75743d09596fc2100416150129137065f343d0eddc5e620d1c0f1d70c611
2 / The unsuccessful fix
Exit 1"""Failure Map reference implementation. Python standard library only."""
import json
N = 1
observations = []
def solve(draft, accepted, bonus):
return bonus if accepted >= len(draft)-1 else None
def check(label, actual, expected):
observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
check('fully accepted', solve([1,2],2,9),9)
check('partial acceptance', solve([1,2],1,9),None)
check('rejected all', solve([1],0,8),None)
check('empty proposal bonus', solve([],0,7),7)
check('singleton accepted', solve([N],1,4),4)
check('singleton rejected', solve([N],0,4),None)
check('long partial', solve([1,2,3,4],3,5),None)
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 |
|---|---|---|---|
| fully accepted | 9 | 9 | Passed |
| partial acceptance | 9 | None | Failed |
| rejected all | 8 | None | Failed |
| empty proposal bonus | 7 | 7 | Passed |
| singleton accepted | 4 | 4 | Passed |
| singleton rejected | 4 | None | Failed |
| long partial | 5 | None | Failed |
SHA-256 / 4e511045bc4f9cef67a2cecea08de517570dac2f68a1b8530abadda529d8b3c3
HELD IN THE MEMBER ARCHIVE
The verified repair and its recorded checks are member-only.
This mechanism has 7 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
These are finite toy sequences with explicit contracts; they make no claim about production decoder behavior or model quality. 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-30T16:48:38.098892+00:00.
Case digest / fb74060c4670559a1a896494f8331a006dbd8c72fb4d7e9c7dd89be01afee31c