FA-178 / Serialization / Member archive
A repeated JSON key silently overwrites a value · case 03
Conflicting object members collapse to one value, hiding an ambiguous source document.
Case contract
Decode any valid JSON value into an {ok, value} envelope. Reject syntax errors and duplicate decoded keys at any object depth with {ok: False}; key reuse in different objects is allowed.
Why this case matters
A strict configuration or signed-message consumer must distinguish repeated members from valid reuse in separate scopes. This contract is stricter than Python's default JSON decoder.
One recorded failure
Sample boundary fixtureThis sample comes from the broken implementation of a controlled reproducer.
| Boundary fixture | Actual | Expected | Outcome |
|---|---|---|---|
| duplicate top-level member | {"ok": true, "value": {"a": 0}} | {"ok": false} | Failed |
MEMBER ARCHIVE
The complete case is available to members.
This record includes three runnable implementations, regression fixtures, execution results, and source hashes.
Member access is invitation-based. Sign in with your invited account to inspect the sources.
Sign in to the archive ↗