FAILURE MAP
← Case archive

FA-49686 / PCM sample encoding / Open access

Pcm feedback saturation: error source · case 01

Unclipped error calculation discards prior feedback contribution.

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

ROOT CAUSE

Unclipped error calculation discards prior feedback contribution.

VERIFIED REPAIR

Use the stated conversion contract at error source.

Unsuccessful approach: Code-domain subtraction does not recover input-domain error.

Case contract

Bounded PCM error-feedback precision reduction with overload detection and explicit anti-windup reset only when output code saturation changes quantized value.

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(samples, limit, error):
    out=[]
    for sample in samples:
        candidate=sample+error
        quantized=(candidate+1)//2
        code=max(-limit,min(limit,quantized))
        clipped=code!=quantized
        error=0 if clipped else sample-code*2
        out.append([code,clipped])
    return [out,error]
def check(label, actual, expected):
    observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
check('oracle 1', solve(*([1, 1, 20, 1, 1], 3, 0)), [[[1, False], [0, False], [3, True], [1, False], [0, False]], 0])
check('oracle 2', solve(*([-20, -1, -1], 3, 1)), [[[-3, True], [0, False], [-1, False]], 0])
check('oracle 3', solve(*([6, -6], 3, 0)), [[[3, False], [-3, False]], 0])
check('oracle 4', solve(*([], 3, -1)), [[], -1])
check('oracle 5', solve(*([0, 1, 2, 3], 2, -1)), [[[0, False], [0, False], [1, False], [2, False]], -1])
check('oracle 6', solve(*([7, 0, -7, 0], 3, 0)), [[[3, True], [0, False], [-3, False], [0, False]], -1])
check('oracle 7', solve(*([2, 2, 2], 1, 1)), [[[1, True], [1, False], [1, False]], 0])
if N == 1: check('variant packet 1', solve(*[[1, 1, 20, 1, 1, 1, 1, 20, 1, 1], 3, 0]), [[[1, False], [0, False], [3, True], [1, False], [0, False], [1, False], [0, False], [3, True], [1, False], [0, False]], 0])
if N == 2: check('variant packet 2', solve(*[[1, 1, 20, 1, 1, 1, 1, 20, 1, 1, 1, 1, 20, 1, 1], 3, 0]), [[[1, False], [0, False], [3, True], [1, False], [0, False], [1, False], [0, False], [3, True], [1, False], [0, False], [1, False], [0, False], [3, True], [1, False], [0, False]], 0])
if N == 3: check('variant packet 3', solve(*[[1, 1, 20, 1, 1, 1, 1, 20, 1, 1, 1, 1, 20, 1, 1, 1, 1, 20, 1, 1], 3, 0]), [[[1, False], [0, False], [3, True], [1, False], [0, False], [1, False], [0, False], [3, True], [1, False], [0, False], [1, False], [0, False], [3, True], [1, False], [0, False], [1, False], [0, False], [3, True], [1, False], [0, False]], 0])
if N == 4: check('variant packet 4', solve(*[[1, 1, 20, 1, 1, 1, 1, 20, 1, 1, 1, 1, 20, 1, 1, 1, 1, 20, 1, 1, 1, 1, 20, 1, 1], 3, 0]), [[[1, False], [0, False], [3, True], [1, False], [0, False], [1, False], [0, False], [3, True], [1, False], [0, False], [1, False], [0, False], [3, True], [1, False], [0, False], [1, False], [0, False], [3, True], [1, False], [0, False], [1, False], [0, False], [3, True], [1, False], [0, False]], 0])
if N == 5: check('variant packet 5', solve(*[[1, 1, 20, 1, 1, 1, 1, 20, 1, 1, 1, 1, 20, 1, 1, 1, 1, 20, 1, 1, 1, 1, 20, 1, 1, 1, 1, 20, 1, 1], 3, 0]), [[[1, False], [0, False], [3, True], [1, False], [0, False], [1, False], [0, False], [3, True], [1, False], [0, False], [1, False], [0, False], [3, True], [1, False], [0, False], [1, False], [0, False], [3, True], [1, False], [0, False], [1, False], [0, False], [3, True], [1, False], [0, False], [1, False], [0, False], [3, True], [1, False], [0, False]], 0])
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[[[1, False], [0, False], [3, True], [1, False], [0, False]], 1][[[1, False], [0, False], [3, True], [1, False], [0, False]], 0]Failed
oracle 2[[[-3, True], [0, False], [-1, False]], 1][[[-3, True], [0, False], [-1, False]], 0]Failed
oracle 3[[[3, False], [-3, False]], 0][[[3, False], [-3, False]], 0]Passed
oracle 4[[], -1][[], -1]Passed
oracle 5[[[0, False], [1, False], [1, False], [2, False]], -1][[[0, False], [0, False], [1, False], [2, False]], -1]Failed
oracle 6[[[3, True], [0, False], [-3, False], [0, False]], 0][[[3, True], [0, False], [-3, False], [0, False]], -1]Failed
oracle 7[[[1, True], [1, False], [1, False]], 0][[[1, True], [1, False], [1, False]], 0]Passed
variant packet 1[[[1, False], [0, False], [3, True], [1, False], [0, False], [1, False], [0, False], [3, True], [1, False], [0, False]], 1][[[1, False], [0, False], [3, True], [1, False], [0, False], [1, False], [0, False], [3, True], [1, False], [0, False]], 0]Failed

SHA-256 / c52e1ba4c60efd8fa770f334639f053ca7d4614a0a9f1c03803fbb2951582a38

2 / The unsuccessful fix

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

N = 1
observations = []
def solve(samples, limit, error):
    out=[]
    for sample in samples:
        candidate=sample+error
        quantized=(candidate+1)//2
        code=max(-limit,min(limit,quantized))
        clipped=code!=quantized
        error=0 if clipped else candidate-code
        out.append([code,clipped])
    return [out,error]
def check(label, actual, expected):
    observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
check('oracle 1', solve(*([1, 1, 20, 1, 1], 3, 0)), [[[1, False], [0, False], [3, True], [1, False], [0, False]], 0])
check('oracle 2', solve(*([-20, -1, -1], 3, 1)), [[[-3, True], [0, False], [-1, False]], 0])
check('oracle 3', solve(*([6, -6], 3, 0)), [[[3, False], [-3, False]], 0])
check('oracle 4', solve(*([], 3, -1)), [[], -1])
check('oracle 5', solve(*([0, 1, 2, 3], 2, -1)), [[[0, False], [0, False], [1, False], [2, False]], -1])
check('oracle 6', solve(*([7, 0, -7, 0], 3, 0)), [[[3, True], [0, False], [-3, False], [0, False]], -1])
check('oracle 7', solve(*([2, 2, 2], 1, 1)), [[[1, True], [1, False], [1, False]], 0])
if N == 1: check('variant packet 1', solve(*[[1, 1, 20, 1, 1, 1, 1, 20, 1, 1], 3, 0]), [[[1, False], [0, False], [3, True], [1, False], [0, False], [1, False], [0, False], [3, True], [1, False], [0, False]], 0])
if N == 2: check('variant packet 2', solve(*[[1, 1, 20, 1, 1, 1, 1, 20, 1, 1, 1, 1, 20, 1, 1], 3, 0]), [[[1, False], [0, False], [3, True], [1, False], [0, False], [1, False], [0, False], [3, True], [1, False], [0, False], [1, False], [0, False], [3, True], [1, False], [0, False]], 0])
if N == 3: check('variant packet 3', solve(*[[1, 1, 20, 1, 1, 1, 1, 20, 1, 1, 1, 1, 20, 1, 1, 1, 1, 20, 1, 1], 3, 0]), [[[1, False], [0, False], [3, True], [1, False], [0, False], [1, False], [0, False], [3, True], [1, False], [0, False], [1, False], [0, False], [3, True], [1, False], [0, False], [1, False], [0, False], [3, True], [1, False], [0, False]], 0])
if N == 4: check('variant packet 4', solve(*[[1, 1, 20, 1, 1, 1, 1, 20, 1, 1, 1, 1, 20, 1, 1, 1, 1, 20, 1, 1, 1, 1, 20, 1, 1], 3, 0]), [[[1, False], [0, False], [3, True], [1, False], [0, False], [1, False], [0, False], [3, True], [1, False], [0, False], [1, False], [0, False], [3, True], [1, False], [0, False], [1, False], [0, False], [3, True], [1, False], [0, False], [1, False], [0, False], [3, True], [1, False], [0, False]], 0])
if N == 5: check('variant packet 5', solve(*[[1, 1, 20, 1, 1, 1, 1, 20, 1, 1, 1, 1, 20, 1, 1, 1, 1, 20, 1, 1, 1, 1, 20, 1, 1, 1, 1, 20, 1, 1], 3, 0]), [[[1, False], [0, False], [3, True], [1, False], [0, False], [1, False], [0, False], [3, True], [1, False], [0, False], [1, False], [0, False], [3, True], [1, False], [0, False], [1, False], [0, False], [3, True], [1, False], [0, False], [1, False], [0, False], [3, True], [1, False], [0, False], [1, False], [0, False], [3, True], [1, False], [0, False]], 0])
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[[[1, False], [1, False], [3, True], [1, False], [1, False]], 0][[[1, False], [0, False], [3, True], [1, False], [0, False]], 0]Failed
oracle 2[[[-3, True], [0, False], [-1, False]], -1][[[-3, True], [0, False], [-1, False]], 0]Failed
oracle 3[[[3, False], [-1, False]], -2][[[3, False], [-3, False]], 0]Failed
oracle 4[[], -1][[], -1]Passed
oracle 5[[[0, False], [0, False], [1, False], [2, False]], 2][[[0, False], [0, False], [1, False], [2, False]], -1]Failed
oracle 6[[[3, True], [0, False], [-3, False], [-2, False]], -2][[[3, True], [0, False], [-3, False], [0, False]], -1]Failed
oracle 7[[[1, True], [1, False], [1, True]], 0][[[1, True], [1, False], [1, False]], 0]Failed
variant packet 1[[[1, False], [1, False], [3, True], [1, False], [1, False], [1, False], [1, False], [3, True], [1, False], [1, False]], 0][[[1, False], [0, False], [3, True], [1, False], [0, False], [1, False], [0, False], [3, True], [1, False], [0, False]], 0]Failed

SHA-256 / ed71c3c8df70c10834081cfe99a123800a1d189ed488d0e23394ea1382ff6b58

3 / The verified repair

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

N = 1
observations = []
def solve(samples, limit, error):
    out=[]
    for sample in samples:
        candidate=sample+error
        quantized=(candidate+1)//2
        code=max(-limit,min(limit,quantized))
        clipped=code!=quantized
        error=0 if clipped else candidate-code*2
        out.append([code,clipped])
    return [out,error]
def check(label, actual, expected):
    observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
check('oracle 1', solve(*([1, 1, 20, 1, 1], 3, 0)), [[[1, False], [0, False], [3, True], [1, False], [0, False]], 0])
check('oracle 2', solve(*([-20, -1, -1], 3, 1)), [[[-3, True], [0, False], [-1, False]], 0])
check('oracle 3', solve(*([6, -6], 3, 0)), [[[3, False], [-3, False]], 0])
check('oracle 4', solve(*([], 3, -1)), [[], -1])
check('oracle 5', solve(*([0, 1, 2, 3], 2, -1)), [[[0, False], [0, False], [1, False], [2, False]], -1])
check('oracle 6', solve(*([7, 0, -7, 0], 3, 0)), [[[3, True], [0, False], [-3, False], [0, False]], -1])
check('oracle 7', solve(*([2, 2, 2], 1, 1)), [[[1, True], [1, False], [1, False]], 0])
if N == 1: check('variant packet 1', solve(*[[1, 1, 20, 1, 1, 1, 1, 20, 1, 1], 3, 0]), [[[1, False], [0, False], [3, True], [1, False], [0, False], [1, False], [0, False], [3, True], [1, False], [0, False]], 0])
if N == 2: check('variant packet 2', solve(*[[1, 1, 20, 1, 1, 1, 1, 20, 1, 1, 1, 1, 20, 1, 1], 3, 0]), [[[1, False], [0, False], [3, True], [1, False], [0, False], [1, False], [0, False], [3, True], [1, False], [0, False], [1, False], [0, False], [3, True], [1, False], [0, False]], 0])
if N == 3: check('variant packet 3', solve(*[[1, 1, 20, 1, 1, 1, 1, 20, 1, 1, 1, 1, 20, 1, 1, 1, 1, 20, 1, 1], 3, 0]), [[[1, False], [0, False], [3, True], [1, False], [0, False], [1, False], [0, False], [3, True], [1, False], [0, False], [1, False], [0, False], [3, True], [1, False], [0, False], [1, False], [0, False], [3, True], [1, False], [0, False]], 0])
if N == 4: check('variant packet 4', solve(*[[1, 1, 20, 1, 1, 1, 1, 20, 1, 1, 1, 1, 20, 1, 1, 1, 1, 20, 1, 1, 1, 1, 20, 1, 1], 3, 0]), [[[1, False], [0, False], [3, True], [1, False], [0, False], [1, False], [0, False], [3, True], [1, False], [0, False], [1, False], [0, False], [3, True], [1, False], [0, False], [1, False], [0, False], [3, True], [1, False], [0, False], [1, False], [0, False], [3, True], [1, False], [0, False]], 0])
if N == 5: check('variant packet 5', solve(*[[1, 1, 20, 1, 1, 1, 1, 20, 1, 1, 1, 1, 20, 1, 1, 1, 1, 20, 1, 1, 1, 1, 20, 1, 1, 1, 1, 20, 1, 1], 3, 0]), [[[1, False], [0, False], [3, True], [1, False], [0, False], [1, False], [0, False], [3, True], [1, False], [0, False], [1, False], [0, False], [3, True], [1, False], [0, False], [1, False], [0, False], [3, True], [1, False], [0, False], [1, False], [0, False], [3, True], [1, False], [0, False], [1, False], [0, False], [3, True], [1, False], [0, False]], 0])
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[[[1, False], [0, False], [3, True], [1, False], [0, False]], 0][[[1, False], [0, False], [3, True], [1, False], [0, False]], 0]Passed
oracle 2[[[-3, True], [0, False], [-1, False]], 0][[[-3, True], [0, False], [-1, False]], 0]Passed
oracle 3[[[3, False], [-3, False]], 0][[[3, False], [-3, False]], 0]Passed
oracle 4[[], -1][[], -1]Passed
oracle 5[[[0, False], [0, False], [1, False], [2, False]], -1][[[0, False], [0, False], [1, False], [2, False]], -1]Passed
oracle 6[[[3, True], [0, False], [-3, False], [0, False]], -1][[[3, True], [0, False], [-3, False], [0, False]], -1]Passed
oracle 7[[[1, True], [1, False], [1, False]], 0][[[1, True], [1, False], [1, False]], 0]Passed
variant packet 1[[[1, False], [0, False], [3, True], [1, False], [0, False], [1, False], [0, False], [3, True], [1, False], [0, False]], 0][[[1, False], [0, False], [3, True], [1, False], [0, False], [1, False], [0, False], [3, True], [1, False], [0, False]], 0]Passed

SHA-256 / 58b3ef2e2c07e8fce564cabac9b0a42e7dabdb2c28bff34a39b0849c02fe6c5c

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:45:02.251761+00:00.

Case digest / c63185016e19efcef4b6439273a7d7849d48c632dabcf4fb759516bf44dd2075