FAILURE MAP
← Case archive

FA-48956 / PCM sample encoding / Open access

Sign magnitude pcm: zero sideband · case 01

The negative-zero marker tests the complete signed code for zero.

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

ROOT CAUSE

The negative-zero marker tests the complete signed code for zero.

VERIFIED REPAIR

Use the stated conversion contract at zero sideband.

Unsuccessful approach: Marking every numerical zero loses the distinction between signs.

Case contract

Decode sign-magnitude PCM with configurable physical sign-bit polarity and preserve numerical negative zero as a Boolean sideband.

Why this case matters

Offline PCM interchange uses these exact bounded packet and sample representation decisions.

1 / The failure

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

N = 1
observations = []
def solve(codes, width, invert_sign):
    mask=(1<<(width-1))-1
    sign=1<<(width-1)
    values=[]
    zeros=[]
    for code in codes:
        magnitude=code&mask
        negative=bool(code&sign)^invert_sign
        values.append(-magnitude if negative else magnitude)
        zeros.append(bool(negative and code==0))
    return [values,zeros]
def check(label, actual, expected):
    observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
check('oracle 1', solve(*([0, 1, 7, 8, 9, 15], 4, False)), [[0, 1, 7, 0, -1, -7], [False, False, False, True, False, False]])
check('oracle 2', solve(*([0, 8, 1, 9], 4, True)), [[0, 0, -1, 1], [True, False, False, False]])
check('oracle 3', solve(*([], 4, False)), [[], []])
check('oracle 4', solve(*([0, 3, 4, 7], 3, False)), [[0, 3, 0, -3], [False, False, True, False]])
check('oracle 5', solve(*([0, 128, 255, 127], 8, False)), [[0, 0, -127, 127], [False, True, False, False]])
check('oracle 6', solve(*([1, 2, 3], 4, True)), [[-1, -2, -3], [False, False, False]])
check('oracle 7', solve(*([0, 4], 3, True)), [[0, 0], [True, False]])
if N == 1: check('variant packet 1', solve(*[[0, 1, 7, 8, 9, 15, 0, 1, 7, 8, 9, 15], 4, False]), [[0, 1, 7, 0, -1, -7, 0, 1, 7, 0, -1, -7], [False, False, False, True, False, False, False, False, False, True, False, False]])
if N == 2: check('variant packet 2', solve(*[[0, 1, 7, 8, 9, 15, 0, 1, 7, 8, 9, 15, 0, 1, 7, 8, 9, 15], 4, False]), [[0, 1, 7, 0, -1, -7, 0, 1, 7, 0, -1, -7, 0, 1, 7, 0, -1, -7], [False, False, False, True, False, False, False, False, False, True, False, False, False, False, False, True, False, False]])
if N == 3: check('variant packet 3', solve(*[[0, 1, 7, 8, 9, 15, 0, 1, 7, 8, 9, 15, 0, 1, 7, 8, 9, 15, 0, 1, 7, 8, 9, 15], 4, False]), [[0, 1, 7, 0, -1, -7, 0, 1, 7, 0, -1, -7, 0, 1, 7, 0, -1, -7, 0, 1, 7, 0, -1, -7], [False, False, False, True, False, False, False, False, False, True, False, False, False, False, False, True, False, False, False, False, False, True, False, False]])
if N == 4: check('variant packet 4', solve(*[[0, 1, 7, 8, 9, 15, 0, 1, 7, 8, 9, 15, 0, 1, 7, 8, 9, 15, 0, 1, 7, 8, 9, 15, 0, 1, 7, 8, 9, 15], 4, False]), [[0, 1, 7, 0, -1, -7, 0, 1, 7, 0, -1, -7, 0, 1, 7, 0, -1, -7, 0, 1, 7, 0, -1, -7, 0, 1, 7, 0, -1, -7], [False, False, False, True, False, False, False, False, False, True, False, False, False, False, False, True, False, False, False, False, False, True, False, False, False, False, False, True, False, False]])
if N == 5: check('variant packet 5', solve(*[[0, 1, 7, 8, 9, 15, 0, 1, 7, 8, 9, 15, 0, 1, 7, 8, 9, 15, 0, 1, 7, 8, 9, 15, 0, 1, 7, 8, 9, 15, 0, 1, 7, 8, 9, 15], 4, False]), [[0, 1, 7, 0, -1, -7, 0, 1, 7, 0, -1, -7, 0, 1, 7, 0, -1, -7, 0, 1, 7, 0, -1, -7, 0, 1, 7, 0, -1, -7, 0, 1, 7, 0, -1, -7], [False, False, False, True, False, False, False, False, False, True, False, False, False, False, False, True, False, False, False, False, False, True, False, False, False, False, False, True, False, False, False, False, False, True, False, False]])
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
oracle 1[[0, 1, 7, 0, -1, -7], [False, False, False, False, False, False]][[0, 1, 7, 0, -1, -7], [False, False, False, True, False, False]]Failed
oracle 2[[0, 0, -1, 1], [True, False, False, False]][[0, 0, -1, 1], [True, False, False, False]]Passed
oracle 3[[], []][[], []]Passed
oracle 4[[0, 3, 0, -3], [False, False, False, False]][[0, 3, 0, -3], [False, False, True, False]]Failed
oracle 5[[0, 0, -127, 127], [False, False, False, False]][[0, 0, -127, 127], [False, True, False, False]]Failed
oracle 6[[-1, -2, -3], [False, False, False]][[-1, -2, -3], [False, False, False]]Passed
oracle 7[[0, 0], [True, False]][[0, 0], [True, False]]Passed
variant packet 1[[0, 1, 7, 0, -1, -7, 0, 1, 7, 0, -1, -7], [False, False, False, False, False, False, False, False, False, False, False, False]][[0, 1, 7, 0, -1, -7, 0, 1, 7, 0, -1, -7], [False, False, False, True, False, False, False, False, False, True, False, False]]Failed

SHA-256 / 45ad7f1b04410a9503c3f85072f5472aae7b72b39fdff46339980599ca24a906

2 / The unsuccessful fix

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

N = 1
observations = []
def solve(codes, width, invert_sign):
    mask=(1<<(width-1))-1
    sign=1<<(width-1)
    values=[]
    zeros=[]
    for code in codes:
        magnitude=code&mask
        negative=bool(code&sign)^invert_sign
        values.append(-magnitude if negative else magnitude)
        zeros.append(bool(magnitude==0))
    return [values,zeros]
def check(label, actual, expected):
    observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
check('oracle 1', solve(*([0, 1, 7, 8, 9, 15], 4, False)), [[0, 1, 7, 0, -1, -7], [False, False, False, True, False, False]])
check('oracle 2', solve(*([0, 8, 1, 9], 4, True)), [[0, 0, -1, 1], [True, False, False, False]])
check('oracle 3', solve(*([], 4, False)), [[], []])
check('oracle 4', solve(*([0, 3, 4, 7], 3, False)), [[0, 3, 0, -3], [False, False, True, False]])
check('oracle 5', solve(*([0, 128, 255, 127], 8, False)), [[0, 0, -127, 127], [False, True, False, False]])
check('oracle 6', solve(*([1, 2, 3], 4, True)), [[-1, -2, -3], [False, False, False]])
check('oracle 7', solve(*([0, 4], 3, True)), [[0, 0], [True, False]])
if N == 1: check('variant packet 1', solve(*[[0, 1, 7, 8, 9, 15, 0, 1, 7, 8, 9, 15], 4, False]), [[0, 1, 7, 0, -1, -7, 0, 1, 7, 0, -1, -7], [False, False, False, True, False, False, False, False, False, True, False, False]])
if N == 2: check('variant packet 2', solve(*[[0, 1, 7, 8, 9, 15, 0, 1, 7, 8, 9, 15, 0, 1, 7, 8, 9, 15], 4, False]), [[0, 1, 7, 0, -1, -7, 0, 1, 7, 0, -1, -7, 0, 1, 7, 0, -1, -7], [False, False, False, True, False, False, False, False, False, True, False, False, False, False, False, True, False, False]])
if N == 3: check('variant packet 3', solve(*[[0, 1, 7, 8, 9, 15, 0, 1, 7, 8, 9, 15, 0, 1, 7, 8, 9, 15, 0, 1, 7, 8, 9, 15], 4, False]), [[0, 1, 7, 0, -1, -7, 0, 1, 7, 0, -1, -7, 0, 1, 7, 0, -1, -7, 0, 1, 7, 0, -1, -7], [False, False, False, True, False, False, False, False, False, True, False, False, False, False, False, True, False, False, False, False, False, True, False, False]])
if N == 4: check('variant packet 4', solve(*[[0, 1, 7, 8, 9, 15, 0, 1, 7, 8, 9, 15, 0, 1, 7, 8, 9, 15, 0, 1, 7, 8, 9, 15, 0, 1, 7, 8, 9, 15], 4, False]), [[0, 1, 7, 0, -1, -7, 0, 1, 7, 0, -1, -7, 0, 1, 7, 0, -1, -7, 0, 1, 7, 0, -1, -7, 0, 1, 7, 0, -1, -7], [False, False, False, True, False, False, False, False, False, True, False, False, False, False, False, True, False, False, False, False, False, True, False, False, False, False, False, True, False, False]])
if N == 5: check('variant packet 5', solve(*[[0, 1, 7, 8, 9, 15, 0, 1, 7, 8, 9, 15, 0, 1, 7, 8, 9, 15, 0, 1, 7, 8, 9, 15, 0, 1, 7, 8, 9, 15, 0, 1, 7, 8, 9, 15], 4, False]), [[0, 1, 7, 0, -1, -7, 0, 1, 7, 0, -1, -7, 0, 1, 7, 0, -1, -7, 0, 1, 7, 0, -1, -7, 0, 1, 7, 0, -1, -7, 0, 1, 7, 0, -1, -7], [False, False, False, True, False, False, False, False, False, True, False, False, False, False, False, True, False, False, False, False, False, True, False, False, False, False, False, True, False, False, False, False, False, True, False, False]])
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
oracle 1[[0, 1, 7, 0, -1, -7], [True, False, False, True, False, False]][[0, 1, 7, 0, -1, -7], [False, False, False, True, False, False]]Failed
oracle 2[[0, 0, -1, 1], [True, True, False, False]][[0, 0, -1, 1], [True, False, False, False]]Failed
oracle 3[[], []][[], []]Passed
oracle 4[[0, 3, 0, -3], [True, False, True, False]][[0, 3, 0, -3], [False, False, True, False]]Failed
oracle 5[[0, 0, -127, 127], [True, True, False, False]][[0, 0, -127, 127], [False, True, False, False]]Failed
oracle 6[[-1, -2, -3], [False, False, False]][[-1, -2, -3], [False, False, False]]Passed
oracle 7[[0, 0], [True, True]][[0, 0], [True, False]]Failed
variant packet 1[[0, 1, 7, 0, -1, -7, 0, 1, 7, 0, -1, -7], [True, False, False, True, False, False, True, False, False, True, False, False]][[0, 1, 7, 0, -1, -7, 0, 1, 7, 0, -1, -7], [False, False, False, True, False, False, False, False, False, True, False, False]]Failed

SHA-256 / bad44ad8a74c484877f995b063cfff1d154b36f76330e7904d5d307f8168ec9b

3 / The verified repair

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

N = 1
observations = []
def solve(codes, width, invert_sign):
    mask=(1<<(width-1))-1
    sign=1<<(width-1)
    values=[]
    zeros=[]
    for code in codes:
        magnitude=code&mask
        negative=bool(code&sign)^invert_sign
        values.append(-magnitude if negative else magnitude)
        zeros.append(bool(negative and magnitude==0))
    return [values,zeros]
def check(label, actual, expected):
    observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
check('oracle 1', solve(*([0, 1, 7, 8, 9, 15], 4, False)), [[0, 1, 7, 0, -1, -7], [False, False, False, True, False, False]])
check('oracle 2', solve(*([0, 8, 1, 9], 4, True)), [[0, 0, -1, 1], [True, False, False, False]])
check('oracle 3', solve(*([], 4, False)), [[], []])
check('oracle 4', solve(*([0, 3, 4, 7], 3, False)), [[0, 3, 0, -3], [False, False, True, False]])
check('oracle 5', solve(*([0, 128, 255, 127], 8, False)), [[0, 0, -127, 127], [False, True, False, False]])
check('oracle 6', solve(*([1, 2, 3], 4, True)), [[-1, -2, -3], [False, False, False]])
check('oracle 7', solve(*([0, 4], 3, True)), [[0, 0], [True, False]])
if N == 1: check('variant packet 1', solve(*[[0, 1, 7, 8, 9, 15, 0, 1, 7, 8, 9, 15], 4, False]), [[0, 1, 7, 0, -1, -7, 0, 1, 7, 0, -1, -7], [False, False, False, True, False, False, False, False, False, True, False, False]])
if N == 2: check('variant packet 2', solve(*[[0, 1, 7, 8, 9, 15, 0, 1, 7, 8, 9, 15, 0, 1, 7, 8, 9, 15], 4, False]), [[0, 1, 7, 0, -1, -7, 0, 1, 7, 0, -1, -7, 0, 1, 7, 0, -1, -7], [False, False, False, True, False, False, False, False, False, True, False, False, False, False, False, True, False, False]])
if N == 3: check('variant packet 3', solve(*[[0, 1, 7, 8, 9, 15, 0, 1, 7, 8, 9, 15, 0, 1, 7, 8, 9, 15, 0, 1, 7, 8, 9, 15], 4, False]), [[0, 1, 7, 0, -1, -7, 0, 1, 7, 0, -1, -7, 0, 1, 7, 0, -1, -7, 0, 1, 7, 0, -1, -7], [False, False, False, True, False, False, False, False, False, True, False, False, False, False, False, True, False, False, False, False, False, True, False, False]])
if N == 4: check('variant packet 4', solve(*[[0, 1, 7, 8, 9, 15, 0, 1, 7, 8, 9, 15, 0, 1, 7, 8, 9, 15, 0, 1, 7, 8, 9, 15, 0, 1, 7, 8, 9, 15], 4, False]), [[0, 1, 7, 0, -1, -7, 0, 1, 7, 0, -1, -7, 0, 1, 7, 0, -1, -7, 0, 1, 7, 0, -1, -7, 0, 1, 7, 0, -1, -7], [False, False, False, True, False, False, False, False, False, True, False, False, False, False, False, True, False, False, False, False, False, True, False, False, False, False, False, True, False, False]])
if N == 5: check('variant packet 5', solve(*[[0, 1, 7, 8, 9, 15, 0, 1, 7, 8, 9, 15, 0, 1, 7, 8, 9, 15, 0, 1, 7, 8, 9, 15, 0, 1, 7, 8, 9, 15, 0, 1, 7, 8, 9, 15], 4, False]), [[0, 1, 7, 0, -1, -7, 0, 1, 7, 0, -1, -7, 0, 1, 7, 0, -1, -7, 0, 1, 7, 0, -1, -7, 0, 1, 7, 0, -1, -7, 0, 1, 7, 0, -1, -7], [False, False, False, True, False, False, False, False, False, True, False, False, False, False, False, True, False, False, False, False, False, True, False, False, False, False, False, True, False, False, False, False, False, True, False, False]])
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
oracle 1[[0, 1, 7, 0, -1, -7], [False, False, False, True, False, False]][[0, 1, 7, 0, -1, -7], [False, False, False, True, False, False]]Passed
oracle 2[[0, 0, -1, 1], [True, False, False, False]][[0, 0, -1, 1], [True, False, False, False]]Passed
oracle 3[[], []][[], []]Passed
oracle 4[[0, 3, 0, -3], [False, False, True, False]][[0, 3, 0, -3], [False, False, True, False]]Passed
oracle 5[[0, 0, -127, 127], [False, True, False, False]][[0, 0, -127, 127], [False, True, False, False]]Passed
oracle 6[[-1, -2, -3], [False, False, False]][[-1, -2, -3], [False, False, False]]Passed
oracle 7[[0, 0], [True, False]][[0, 0], [True, False]]Passed
variant packet 1[[0, 1, 7, 0, -1, -7, 0, 1, 7, 0, -1, -7], [False, False, False, True, False, False, False, False, False, True, False, False]][[0, 1, 7, 0, -1, -7, 0, 1, 7, 0, -1, -7], [False, False, False, True, False, False, False, False, False, True, False, False]]Passed

SHA-256 / a33c066e7eed7956b343ff7323fac4d926c00b17f09c5e607cc2355dfb5d0dd7

Verification & scope

Stipulated finite model; no claim of hardware timing or full file-format conformance. 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:55.404734+00:00.

Case digest / 28ac32046b87756223f4a0a745825f2c5235efebbe47956b41791c30596a04bd