FAILURE MAP
← Case archive

FA-50316 / PCM sample encoding / Open access

Pcm adaptive channel blocks: channel descriptor count · case 01

Extra encoded channel blocks are accepted as a valid PCM layout.

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

ROOT CAUSE

Extra encoded channel blocks are accepted as a valid PCM layout.

VERIFIED REPAIR

Use the stated conversion contract at channel descriptor count.

Unsuccessful approach: Missing channel descriptors are accepted and later addressing is undefined.

Case contract

Assemble independently decoded adaptive PCM channel blocks into complete frames, returning per-channel unconsumed tails; require exact channel descriptors.

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(blocks, channels):
    out=[]
    for lane_chunks in blocks:
        if len(lane_chunks)<channels:
            out.append(None)
            continue
        counts=[len(x) for x in lane_chunks]
        complete=min(counts) if counts else 0
        frames=[[(lane_chunks[c][i] if c<len(lane_chunks) and i<len(lane_chunks[c]) else None) for c in range(channels)] for i in range(complete)]
        tails=[list(x[complete:]) for x in lane_chunks]
        out.append([frames,tails])
    return out
def check(label, actual, expected):
    observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
check('oracle 1', solve(*([[[1, 2, 3], [4, 5]]], 2)), [[[[1, 4], [2, 5]], [[3], []]]])
check('oracle 2', solve(*([[[1], [2], [3]], [[1, 2]]], 2)), [None, None])
check('oracle 3', solve(*([[[1, 2], [3, 4]]], 2)), [[[[1, 3], [2, 4]], [[], []]]])
check('oracle 4', solve(*([], 2)), [])
check('oracle 5', solve(*([[[], []]], 2)), [[[], [[], []]]])
check('oracle 6', solve(*([[[1, 2, 3]]], 1)), [[[[1], [2], [3]], [[]]]])
check('oracle 7', solve(*([[[]]], 1)), [[[], [[]]]])
if N == 1: check('variant packet 1', solve(*[[[[1, 2, 3], [4, 5]], [[1, 2, 3], [4, 5]]], 2]), [[[[1, 4], [2, 5]], [[3], []]], [[[1, 4], [2, 5]], [[3], []]]])
if N == 2: check('variant packet 2', solve(*[[[[1, 2, 3], [4, 5]], [[1, 2, 3], [4, 5]], [[1, 2, 3], [4, 5]]], 2]), [[[[1, 4], [2, 5]], [[3], []]], [[[1, 4], [2, 5]], [[3], []]], [[[1, 4], [2, 5]], [[3], []]]])
if N == 3: check('variant packet 3', solve(*[[[[1, 2, 3], [4, 5]], [[1, 2, 3], [4, 5]], [[1, 2, 3], [4, 5]], [[1, 2, 3], [4, 5]]], 2]), [[[[1, 4], [2, 5]], [[3], []]], [[[1, 4], [2, 5]], [[3], []]], [[[1, 4], [2, 5]], [[3], []]], [[[1, 4], [2, 5]], [[3], []]]])
if N == 4: check('variant packet 4', solve(*[[[[1, 2, 3], [4, 5]], [[1, 2, 3], [4, 5]], [[1, 2, 3], [4, 5]], [[1, 2, 3], [4, 5]], [[1, 2, 3], [4, 5]]], 2]), [[[[1, 4], [2, 5]], [[3], []]], [[[1, 4], [2, 5]], [[3], []]], [[[1, 4], [2, 5]], [[3], []]], [[[1, 4], [2, 5]], [[3], []]], [[[1, 4], [2, 5]], [[3], []]]])
if N == 5: check('variant packet 5', solve(*[[[[1, 2, 3], [4, 5]], [[1, 2, 3], [4, 5]], [[1, 2, 3], [4, 5]], [[1, 2, 3], [4, 5]], [[1, 2, 3], [4, 5]], [[1, 2, 3], [4, 5]]], 2]), [[[[1, 4], [2, 5]], [[3], []]], [[[1, 4], [2, 5]], [[3], []]], [[[1, 4], [2, 5]], [[3], []]], [[[1, 4], [2, 5]], [[3], []]], [[[1, 4], [2, 5]], [[3], []]], [[[1, 4], [2, 5]], [[3], []]]])
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, 4], [2, 5]], [[3], []]]][[[[1, 4], [2, 5]], [[3], []]]]Passed
oracle 2[[[[1, 2]], [[], [], []]], None][None, None]Failed
oracle 3[[[[1, 3], [2, 4]], [[], []]]][[[[1, 3], [2, 4]], [[], []]]]Passed
oracle 4[][]Passed
oracle 5[[[], [[], []]]][[[], [[], []]]]Passed
oracle 6[[[[1], [2], [3]], [[]]]][[[[1], [2], [3]], [[]]]]Passed
oracle 7[[[], [[]]]][[[], [[]]]]Passed
variant packet 1[[[[1, 4], [2, 5]], [[3], []]], [[[1, 4], [2, 5]], [[3], []]]][[[[1, 4], [2, 5]], [[3], []]], [[[1, 4], [2, 5]], [[3], []]]]Passed

SHA-256 / 505283d142dc926e21494b9055b29bae9e639abb85b3539bd4adf35d0fa488ee

2 / The unsuccessful fix

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

N = 1
observations = []
def solve(blocks, channels):
    out=[]
    for lane_chunks in blocks:
        if len(lane_chunks)>channels:
            out.append(None)
            continue
        counts=[len(x) for x in lane_chunks]
        complete=min(counts) if counts else 0
        frames=[[(lane_chunks[c][i] if c<len(lane_chunks) and i<len(lane_chunks[c]) else None) for c in range(channels)] for i in range(complete)]
        tails=[list(x[complete:]) for x in lane_chunks]
        out.append([frames,tails])
    return out
def check(label, actual, expected):
    observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
check('oracle 1', solve(*([[[1, 2, 3], [4, 5]]], 2)), [[[[1, 4], [2, 5]], [[3], []]]])
check('oracle 2', solve(*([[[1], [2], [3]], [[1, 2]]], 2)), [None, None])
check('oracle 3', solve(*([[[1, 2], [3, 4]]], 2)), [[[[1, 3], [2, 4]], [[], []]]])
check('oracle 4', solve(*([], 2)), [])
check('oracle 5', solve(*([[[], []]], 2)), [[[], [[], []]]])
check('oracle 6', solve(*([[[1, 2, 3]]], 1)), [[[[1], [2], [3]], [[]]]])
check('oracle 7', solve(*([[[]]], 1)), [[[], [[]]]])
if N == 1: check('variant packet 1', solve(*[[[[1, 2, 3], [4, 5]], [[1, 2, 3], [4, 5]]], 2]), [[[[1, 4], [2, 5]], [[3], []]], [[[1, 4], [2, 5]], [[3], []]]])
if N == 2: check('variant packet 2', solve(*[[[[1, 2, 3], [4, 5]], [[1, 2, 3], [4, 5]], [[1, 2, 3], [4, 5]]], 2]), [[[[1, 4], [2, 5]], [[3], []]], [[[1, 4], [2, 5]], [[3], []]], [[[1, 4], [2, 5]], [[3], []]]])
if N == 3: check('variant packet 3', solve(*[[[[1, 2, 3], [4, 5]], [[1, 2, 3], [4, 5]], [[1, 2, 3], [4, 5]], [[1, 2, 3], [4, 5]]], 2]), [[[[1, 4], [2, 5]], [[3], []]], [[[1, 4], [2, 5]], [[3], []]], [[[1, 4], [2, 5]], [[3], []]], [[[1, 4], [2, 5]], [[3], []]]])
if N == 4: check('variant packet 4', solve(*[[[[1, 2, 3], [4, 5]], [[1, 2, 3], [4, 5]], [[1, 2, 3], [4, 5]], [[1, 2, 3], [4, 5]], [[1, 2, 3], [4, 5]]], 2]), [[[[1, 4], [2, 5]], [[3], []]], [[[1, 4], [2, 5]], [[3], []]], [[[1, 4], [2, 5]], [[3], []]], [[[1, 4], [2, 5]], [[3], []]], [[[1, 4], [2, 5]], [[3], []]]])
if N == 5: check('variant packet 5', solve(*[[[[1, 2, 3], [4, 5]], [[1, 2, 3], [4, 5]], [[1, 2, 3], [4, 5]], [[1, 2, 3], [4, 5]], [[1, 2, 3], [4, 5]], [[1, 2, 3], [4, 5]]], 2]), [[[[1, 4], [2, 5]], [[3], []]], [[[1, 4], [2, 5]], [[3], []]], [[[1, 4], [2, 5]], [[3], []]], [[[1, 4], [2, 5]], [[3], []]], [[[1, 4], [2, 5]], [[3], []]], [[[1, 4], [2, 5]], [[3], []]]])
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, 4], [2, 5]], [[3], []]]][[[[1, 4], [2, 5]], [[3], []]]]Passed
oracle 2[None, [[[1, None], [2, None]], [[]]]][None, None]Failed
oracle 3[[[[1, 3], [2, 4]], [[], []]]][[[[1, 3], [2, 4]], [[], []]]]Passed
oracle 4[][]Passed
oracle 5[[[], [[], []]]][[[], [[], []]]]Passed
oracle 6[[[[1], [2], [3]], [[]]]][[[[1], [2], [3]], [[]]]]Passed
oracle 7[[[], [[]]]][[[], [[]]]]Passed
variant packet 1[[[[1, 4], [2, 5]], [[3], []]], [[[1, 4], [2, 5]], [[3], []]]][[[[1, 4], [2, 5]], [[3], []]], [[[1, 4], [2, 5]], [[3], []]]]Passed

SHA-256 / 96779f125fb83f57da8fe8b7696900d08e97ee11db6a721b168aa64d96db87b4

3 / The verified repair

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

N = 1
observations = []
def solve(blocks, channels):
    out=[]
    for lane_chunks in blocks:
        if len(lane_chunks)!=channels:
            out.append(None)
            continue
        counts=[len(x) for x in lane_chunks]
        complete=min(counts) if counts else 0
        frames=[[(lane_chunks[c][i] if c<len(lane_chunks) and i<len(lane_chunks[c]) else None) for c in range(channels)] for i in range(complete)]
        tails=[list(x[complete:]) for x in lane_chunks]
        out.append([frames,tails])
    return out
def check(label, actual, expected):
    observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
check('oracle 1', solve(*([[[1, 2, 3], [4, 5]]], 2)), [[[[1, 4], [2, 5]], [[3], []]]])
check('oracle 2', solve(*([[[1], [2], [3]], [[1, 2]]], 2)), [None, None])
check('oracle 3', solve(*([[[1, 2], [3, 4]]], 2)), [[[[1, 3], [2, 4]], [[], []]]])
check('oracle 4', solve(*([], 2)), [])
check('oracle 5', solve(*([[[], []]], 2)), [[[], [[], []]]])
check('oracle 6', solve(*([[[1, 2, 3]]], 1)), [[[[1], [2], [3]], [[]]]])
check('oracle 7', solve(*([[[]]], 1)), [[[], [[]]]])
if N == 1: check('variant packet 1', solve(*[[[[1, 2, 3], [4, 5]], [[1, 2, 3], [4, 5]]], 2]), [[[[1, 4], [2, 5]], [[3], []]], [[[1, 4], [2, 5]], [[3], []]]])
if N == 2: check('variant packet 2', solve(*[[[[1, 2, 3], [4, 5]], [[1, 2, 3], [4, 5]], [[1, 2, 3], [4, 5]]], 2]), [[[[1, 4], [2, 5]], [[3], []]], [[[1, 4], [2, 5]], [[3], []]], [[[1, 4], [2, 5]], [[3], []]]])
if N == 3: check('variant packet 3', solve(*[[[[1, 2, 3], [4, 5]], [[1, 2, 3], [4, 5]], [[1, 2, 3], [4, 5]], [[1, 2, 3], [4, 5]]], 2]), [[[[1, 4], [2, 5]], [[3], []]], [[[1, 4], [2, 5]], [[3], []]], [[[1, 4], [2, 5]], [[3], []]], [[[1, 4], [2, 5]], [[3], []]]])
if N == 4: check('variant packet 4', solve(*[[[[1, 2, 3], [4, 5]], [[1, 2, 3], [4, 5]], [[1, 2, 3], [4, 5]], [[1, 2, 3], [4, 5]], [[1, 2, 3], [4, 5]]], 2]), [[[[1, 4], [2, 5]], [[3], []]], [[[1, 4], [2, 5]], [[3], []]], [[[1, 4], [2, 5]], [[3], []]], [[[1, 4], [2, 5]], [[3], []]], [[[1, 4], [2, 5]], [[3], []]]])
if N == 5: check('variant packet 5', solve(*[[[[1, 2, 3], [4, 5]], [[1, 2, 3], [4, 5]], [[1, 2, 3], [4, 5]], [[1, 2, 3], [4, 5]], [[1, 2, 3], [4, 5]], [[1, 2, 3], [4, 5]]], 2]), [[[[1, 4], [2, 5]], [[3], []]], [[[1, 4], [2, 5]], [[3], []]], [[[1, 4], [2, 5]], [[3], []]], [[[1, 4], [2, 5]], [[3], []]], [[[1, 4], [2, 5]], [[3], []]], [[[1, 4], [2, 5]], [[3], []]]])
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, 4], [2, 5]], [[3], []]]][[[[1, 4], [2, 5]], [[3], []]]]Passed
oracle 2[None, None][None, None]Passed
oracle 3[[[[1, 3], [2, 4]], [[], []]]][[[[1, 3], [2, 4]], [[], []]]]Passed
oracle 4[][]Passed
oracle 5[[[], [[], []]]][[[], [[], []]]]Passed
oracle 6[[[[1], [2], [3]], [[]]]][[[[1], [2], [3]], [[]]]]Passed
oracle 7[[[], [[]]]][[[], [[]]]]Passed
variant packet 1[[[[1, 4], [2, 5]], [[3], []]], [[[1, 4], [2, 5]], [[3], []]]][[[[1, 4], [2, 5]], [[3], []]], [[[1, 4], [2, 5]], [[3], []]]]Passed

SHA-256 / abc4902b14b6deec7cf5f0a55fd1f38d4dd160266db60861d4525c99e78c934d

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

Case digest / 3253445e0bb3984cd3b6999916555d84ed1f0bc46a7a1d21c9b7941690b91795