FAILURE MAP
← Case archive

FA-45091 / Data systems / Open access

Scatter writes lanes disabled by the update selection mask · case 01

Scatter writes lanes disabled by the update selection mask.

Verified by executionVariant 1 · 8 checks per implementationDownload source bundle ↓JSON ↗

ROOT CAUSE

masked-scatter-update: Scatter writes lanes disabled by the update selection mask.

VERIFIED REPAIR

Preserve the stated physical representation and operation order: Apply an ordered scatter update to a column using [target-index,value,is-valid,is-selected] records. Unselected writes do nothing; selected null writes clear validity. Repeated targets use the final selected write, and untouched lanes retain both payload visibility and validity.

Unsuccessful approach: Allowing masked null writes still clears untouched lanes.

Case contract

Apply an ordered scatter update to a column using [target-index,value,is-valid,is-selected] records. Unselected writes do nothing; selected null writes clear validity. Repeated targets use the final selected write, and untouched lanes retain both payload visibility and validity.

Why this case matters

A bounded deterministic data engine model makes representation and changelog faults reproducible.

1 / The failure

Exit 1
"""Failure Map reference implementation. Python standard library only."""
import json

N = 1
observations = []
def solve(d):
    try:
        values,valid,updates=d
        values=list(values); valid=list(valid)
        for target,value,known,selected in updates:
            if False: continue
            values[target]=value
            valid[target]=known
        return [v if valid[i] else None for i,v in enumerate(values)]
    except (IndexError, KeyError, ValueError, StopIteration) as exc:
        return {"representation_error": type(exc).__name__}
def check(label, actual, expected):
    observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
if N == 1:
    check('nonzero target', solve([[1, 2, 3], [True, True, True], [[2, 4, True, True]]]), [1, 2, 4])
    check('masked value', solve([[1, 2], [True, True], [[1, 3, True, False]]]), [1, 2])
    check('masked null', solve([[1, 2], [True, True], [[1, 3, False, False]]]), [1, 2])
    check('selected null', solve([[1, 2], [True, True], [[1, 3, False, True]]]), [1, None])
    check('resurrect null', solve([[1, 2], [True, False], [[1, 3, True, True]]]), [1, 3])
    check('repeated target', solve([[1, 2], [True, True], [[1, 3, True, True], [1, 4, True, True]]]), [1, 4])
    check('middle validity', solve([[1, 2, 3], [True, True, True], [[1, 4, False, True]]]), [1, None, 3])
    check('no writes', solve([[1, 2], [False, True], []]), [None, 2])
elif N == 2:
    check('nonzero target', solve([[2, 3, 4], [True, True, True], [[2, 5, True, True]]]), [2, 3, 5])
    check('masked value', solve([[2, 3], [True, True], [[1, 4, True, False]]]), [2, 3])
    check('masked null', solve([[2, 3], [True, True], [[1, 4, False, False]]]), [2, 3])
    check('selected null', solve([[2, 3], [True, True], [[1, 4, False, True]]]), [2, None])
    check('resurrect null', solve([[2, 3], [True, False], [[1, 4, True, True]]]), [2, 4])
    check('repeated target', solve([[2, 3], [True, True], [[1, 4, True, True], [1, 5, True, True]]]), [2, 5])
    check('middle validity', solve([[2, 3, 4], [True, True, True], [[1, 5, False, True]]]), [2, None, 4])
    check('no writes', solve([[2, 3], [False, True], []]), [None, 3])
elif N == 3:
    check('nonzero target', solve([[3, 4, 5], [True, True, True], [[2, 6, True, True]]]), [3, 4, 6])
    check('masked value', solve([[3, 4], [True, True], [[1, 5, True, False]]]), [3, 4])
    check('masked null', solve([[3, 4], [True, True], [[1, 5, False, False]]]), [3, 4])
    check('selected null', solve([[3, 4], [True, True], [[1, 5, False, True]]]), [3, None])
    check('resurrect null', solve([[3, 4], [True, False], [[1, 5, True, True]]]), [3, 5])
    check('repeated target', solve([[3, 4], [True, True], [[1, 5, True, True], [1, 6, True, True]]]), [3, 6])
    check('middle validity', solve([[3, 4, 5], [True, True, True], [[1, 6, False, True]]]), [3, None, 5])
    check('no writes', solve([[3, 4], [False, True], []]), [None, 4])
elif N == 4:
    check('nonzero target', solve([[4, 5, 6], [True, True, True], [[2, 7, True, True]]]), [4, 5, 7])
    check('masked value', solve([[4, 5], [True, True], [[1, 6, True, False]]]), [4, 5])
    check('masked null', solve([[4, 5], [True, True], [[1, 6, False, False]]]), [4, 5])
    check('selected null', solve([[4, 5], [True, True], [[1, 6, False, True]]]), [4, None])
    check('resurrect null', solve([[4, 5], [True, False], [[1, 6, True, True]]]), [4, 6])
    check('repeated target', solve([[4, 5], [True, True], [[1, 6, True, True], [1, 7, True, True]]]), [4, 7])
    check('middle validity', solve([[4, 5, 6], [True, True, True], [[1, 7, False, True]]]), [4, None, 6])
    check('no writes', solve([[4, 5], [False, True], []]), [None, 5])
elif N == 5:
    check('nonzero target', solve([[5, 6, 7], [True, True, True], [[2, 8, True, True]]]), [5, 6, 8])
    check('masked value', solve([[5, 6], [True, True], [[1, 7, True, False]]]), [5, 6])
    check('masked null', solve([[5, 6], [True, True], [[1, 7, False, False]]]), [5, 6])
    check('selected null', solve([[5, 6], [True, True], [[1, 7, False, True]]]), [5, None])
    check('resurrect null', solve([[5, 6], [True, False], [[1, 7, True, True]]]), [5, 7])
    check('repeated target', solve([[5, 6], [True, True], [[1, 7, True, True], [1, 8, True, True]]]), [5, 8])
    check('middle validity', solve([[5, 6, 7], [True, True, True], [[1, 8, False, True]]]), [5, None, 7])
    check('no writes', solve([[5, 6], [False, True], []]), [None, 6])
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 fixtureActualExpectedOutcome
nonzero target[1, 2, 4][1, 2, 4]Passed
masked value[1, 3][1, 2]Failed
masked null[1, None][1, 2]Failed
selected null[1, None][1, None]Passed
resurrect null[1, 3][1, 3]Passed
repeated target[1, 4][1, 4]Passed
middle validity[1, None, 3][1, None, 3]Passed
no writes[None, 2][None, 2]Passed

SHA-256 / 5bce28127c7356a1007c930bded885fae7c817ff3c9d2c1028966627df8fb9c7

2 / The unsuccessful fix

Exit 1
"""Failure Map reference implementation. Python standard library only."""
import json

N = 1
observations = []
def solve(d):
    try:
        values,valid,updates=d
        values=list(values); valid=list(valid)
        for target,value,known,selected in updates:
            if not selected and known: continue
            values[target]=value
            valid[target]=known
        return [v if valid[i] else None for i,v in enumerate(values)]
    except (IndexError, KeyError, ValueError, StopIteration) as exc:
        return {"representation_error": type(exc).__name__}
def check(label, actual, expected):
    observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
if N == 1:
    check('nonzero target', solve([[1, 2, 3], [True, True, True], [[2, 4, True, True]]]), [1, 2, 4])
    check('masked value', solve([[1, 2], [True, True], [[1, 3, True, False]]]), [1, 2])
    check('masked null', solve([[1, 2], [True, True], [[1, 3, False, False]]]), [1, 2])
    check('selected null', solve([[1, 2], [True, True], [[1, 3, False, True]]]), [1, None])
    check('resurrect null', solve([[1, 2], [True, False], [[1, 3, True, True]]]), [1, 3])
    check('repeated target', solve([[1, 2], [True, True], [[1, 3, True, True], [1, 4, True, True]]]), [1, 4])
    check('middle validity', solve([[1, 2, 3], [True, True, True], [[1, 4, False, True]]]), [1, None, 3])
    check('no writes', solve([[1, 2], [False, True], []]), [None, 2])
elif N == 2:
    check('nonzero target', solve([[2, 3, 4], [True, True, True], [[2, 5, True, True]]]), [2, 3, 5])
    check('masked value', solve([[2, 3], [True, True], [[1, 4, True, False]]]), [2, 3])
    check('masked null', solve([[2, 3], [True, True], [[1, 4, False, False]]]), [2, 3])
    check('selected null', solve([[2, 3], [True, True], [[1, 4, False, True]]]), [2, None])
    check('resurrect null', solve([[2, 3], [True, False], [[1, 4, True, True]]]), [2, 4])
    check('repeated target', solve([[2, 3], [True, True], [[1, 4, True, True], [1, 5, True, True]]]), [2, 5])
    check('middle validity', solve([[2, 3, 4], [True, True, True], [[1, 5, False, True]]]), [2, None, 4])
    check('no writes', solve([[2, 3], [False, True], []]), [None, 3])
elif N == 3:
    check('nonzero target', solve([[3, 4, 5], [True, True, True], [[2, 6, True, True]]]), [3, 4, 6])
    check('masked value', solve([[3, 4], [True, True], [[1, 5, True, False]]]), [3, 4])
    check('masked null', solve([[3, 4], [True, True], [[1, 5, False, False]]]), [3, 4])
    check('selected null', solve([[3, 4], [True, True], [[1, 5, False, True]]]), [3, None])
    check('resurrect null', solve([[3, 4], [True, False], [[1, 5, True, True]]]), [3, 5])
    check('repeated target', solve([[3, 4], [True, True], [[1, 5, True, True], [1, 6, True, True]]]), [3, 6])
    check('middle validity', solve([[3, 4, 5], [True, True, True], [[1, 6, False, True]]]), [3, None, 5])
    check('no writes', solve([[3, 4], [False, True], []]), [None, 4])
elif N == 4:
    check('nonzero target', solve([[4, 5, 6], [True, True, True], [[2, 7, True, True]]]), [4, 5, 7])
    check('masked value', solve([[4, 5], [True, True], [[1, 6, True, False]]]), [4, 5])
    check('masked null', solve([[4, 5], [True, True], [[1, 6, False, False]]]), [4, 5])
    check('selected null', solve([[4, 5], [True, True], [[1, 6, False, True]]]), [4, None])
    check('resurrect null', solve([[4, 5], [True, False], [[1, 6, True, True]]]), [4, 6])
    check('repeated target', solve([[4, 5], [True, True], [[1, 6, True, True], [1, 7, True, True]]]), [4, 7])
    check('middle validity', solve([[4, 5, 6], [True, True, True], [[1, 7, False, True]]]), [4, None, 6])
    check('no writes', solve([[4, 5], [False, True], []]), [None, 5])
elif N == 5:
    check('nonzero target', solve([[5, 6, 7], [True, True, True], [[2, 8, True, True]]]), [5, 6, 8])
    check('masked value', solve([[5, 6], [True, True], [[1, 7, True, False]]]), [5, 6])
    check('masked null', solve([[5, 6], [True, True], [[1, 7, False, False]]]), [5, 6])
    check('selected null', solve([[5, 6], [True, True], [[1, 7, False, True]]]), [5, None])
    check('resurrect null', solve([[5, 6], [True, False], [[1, 7, True, True]]]), [5, 7])
    check('repeated target', solve([[5, 6], [True, True], [[1, 7, True, True], [1, 8, True, True]]]), [5, 8])
    check('middle validity', solve([[5, 6, 7], [True, True, True], [[1, 8, False, True]]]), [5, None, 7])
    check('no writes', solve([[5, 6], [False, True], []]), [None, 6])
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 fixtureActualExpectedOutcome
nonzero target[1, 2, 4][1, 2, 4]Passed
masked value[1, 2][1, 2]Passed
masked null[1, None][1, 2]Failed
selected null[1, None][1, None]Passed
resurrect null[1, 3][1, 3]Passed
repeated target[1, 4][1, 4]Passed
middle validity[1, None, 3][1, None, 3]Passed
no writes[None, 2][None, 2]Passed

SHA-256 / 54f0e7ed3aa196e6d11d8e1e2a6248e2b1f2f2909fa4addf7ca3698d787baf9a

3 / The verified repair

Exit 0
"""Failure Map reference implementation. Python standard library only."""
import json

N = 1
observations = []
def solve(d):
    try:
        values,valid,updates=d
        values=list(values); valid=list(valid)
        for target,value,known,selected in updates:
            if not selected: continue
            values[target]=value
            valid[target]=known
        return [v if valid[i] else None for i,v in enumerate(values)]
    except (IndexError, KeyError, ValueError, StopIteration) as exc:
        return {"representation_error": type(exc).__name__}
def check(label, actual, expected):
    observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
if N == 1:
    check('nonzero target', solve([[1, 2, 3], [True, True, True], [[2, 4, True, True]]]), [1, 2, 4])
    check('masked value', solve([[1, 2], [True, True], [[1, 3, True, False]]]), [1, 2])
    check('masked null', solve([[1, 2], [True, True], [[1, 3, False, False]]]), [1, 2])
    check('selected null', solve([[1, 2], [True, True], [[1, 3, False, True]]]), [1, None])
    check('resurrect null', solve([[1, 2], [True, False], [[1, 3, True, True]]]), [1, 3])
    check('repeated target', solve([[1, 2], [True, True], [[1, 3, True, True], [1, 4, True, True]]]), [1, 4])
    check('middle validity', solve([[1, 2, 3], [True, True, True], [[1, 4, False, True]]]), [1, None, 3])
    check('no writes', solve([[1, 2], [False, True], []]), [None, 2])
elif N == 2:
    check('nonzero target', solve([[2, 3, 4], [True, True, True], [[2, 5, True, True]]]), [2, 3, 5])
    check('masked value', solve([[2, 3], [True, True], [[1, 4, True, False]]]), [2, 3])
    check('masked null', solve([[2, 3], [True, True], [[1, 4, False, False]]]), [2, 3])
    check('selected null', solve([[2, 3], [True, True], [[1, 4, False, True]]]), [2, None])
    check('resurrect null', solve([[2, 3], [True, False], [[1, 4, True, True]]]), [2, 4])
    check('repeated target', solve([[2, 3], [True, True], [[1, 4, True, True], [1, 5, True, True]]]), [2, 5])
    check('middle validity', solve([[2, 3, 4], [True, True, True], [[1, 5, False, True]]]), [2, None, 4])
    check('no writes', solve([[2, 3], [False, True], []]), [None, 3])
elif N == 3:
    check('nonzero target', solve([[3, 4, 5], [True, True, True], [[2, 6, True, True]]]), [3, 4, 6])
    check('masked value', solve([[3, 4], [True, True], [[1, 5, True, False]]]), [3, 4])
    check('masked null', solve([[3, 4], [True, True], [[1, 5, False, False]]]), [3, 4])
    check('selected null', solve([[3, 4], [True, True], [[1, 5, False, True]]]), [3, None])
    check('resurrect null', solve([[3, 4], [True, False], [[1, 5, True, True]]]), [3, 5])
    check('repeated target', solve([[3, 4], [True, True], [[1, 5, True, True], [1, 6, True, True]]]), [3, 6])
    check('middle validity', solve([[3, 4, 5], [True, True, True], [[1, 6, False, True]]]), [3, None, 5])
    check('no writes', solve([[3, 4], [False, True], []]), [None, 4])
elif N == 4:
    check('nonzero target', solve([[4, 5, 6], [True, True, True], [[2, 7, True, True]]]), [4, 5, 7])
    check('masked value', solve([[4, 5], [True, True], [[1, 6, True, False]]]), [4, 5])
    check('masked null', solve([[4, 5], [True, True], [[1, 6, False, False]]]), [4, 5])
    check('selected null', solve([[4, 5], [True, True], [[1, 6, False, True]]]), [4, None])
    check('resurrect null', solve([[4, 5], [True, False], [[1, 6, True, True]]]), [4, 6])
    check('repeated target', solve([[4, 5], [True, True], [[1, 6, True, True], [1, 7, True, True]]]), [4, 7])
    check('middle validity', solve([[4, 5, 6], [True, True, True], [[1, 7, False, True]]]), [4, None, 6])
    check('no writes', solve([[4, 5], [False, True], []]), [None, 5])
elif N == 5:
    check('nonzero target', solve([[5, 6, 7], [True, True, True], [[2, 8, True, True]]]), [5, 6, 8])
    check('masked value', solve([[5, 6], [True, True], [[1, 7, True, False]]]), [5, 6])
    check('masked null', solve([[5, 6], [True, True], [[1, 7, False, False]]]), [5, 6])
    check('selected null', solve([[5, 6], [True, True], [[1, 7, False, True]]]), [5, None])
    check('resurrect null', solve([[5, 6], [True, False], [[1, 7, True, True]]]), [5, 7])
    check('repeated target', solve([[5, 6], [True, True], [[1, 7, True, True], [1, 8, True, True]]]), [5, 8])
    check('middle validity', solve([[5, 6, 7], [True, True, True], [[1, 8, False, True]]]), [5, None, 7])
    check('no writes', solve([[5, 6], [False, True], []]), [None, 6])
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 fixtureActualExpectedOutcome
nonzero target[1, 2, 4][1, 2, 4]Passed
masked value[1, 2][1, 2]Passed
masked null[1, 2][1, 2]Passed
selected null[1, None][1, None]Passed
resurrect null[1, 3][1, 3]Passed
repeated target[1, 4][1, 4]Passed
middle validity[1, None, 3][1, None, 3]Passed
no writes[None, 2][None, 2]Passed

SHA-256 / 58d89775778376c4728d77c82220a12fdefeca7ebe2c48462ce1da7ccd6be963

Verification & scope

Offline stipulated semantics over valid small inputs; no performance, concurrency, or production-engine conformance claim. 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:44:18.684827+00:00.

Case digest / 4ebeabfe32443cc14d513413da4251a2a149a4daab4846cc8fc723881c83aae7