FAILURE MAP
← Case archive

FA-89986 / Bytecode virtual machines / Open access

Line table: line deltas decoded as unsigned bytes · case 01

Lines that move backwards (loops, decorators) jump forward by hundreds.

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

ROOT CAUSE

The signed-byte conversion never fires, so 250 is read as +250 instead of -6.

VERIFIED REPAIR

Subtract 256 from any byte value of 128 or more.

Unsuccessful approach: Converting only values above 128 leaves 128 unconverted, so the no-line marker is lost.

Case contract

Delta-encoded line table: each pair [addr_delta, line_delta] advances the bytecode address by addr_delta two-byte code units and the line by line_delta, a byte to be read as signed (values >= 128 mean value - 256). A decoded delta of -128 marks "no line" (None) at that address and does not move the running line. Offset 0 implicitly maps to first. A byte offset q maps to the last entry whose address is <= q (later entries at the same address win). Return the line for each query.

Why this case matters

Tracebacks and debuggers depend on exact decoding of compact line tables.

1 / The failure

Exit 1
"""Failure Map reference implementation. Python standard library only."""
import json
import bisect
N = 1
observations = []
def solve(first, pairs, queries):
    starts, lines = [0], [first]
    addr, line = 0, first
    for ad, ld in pairs:
        addr += ad * 2
        if ld >= 256:
            ld -= 256
        if ld == -128:
            starts.append(addr)
            lines.append(None)
            continue
        line += ld
        starts.append(addr)
        lines.append(line)
    out = []
    for q in queries:
        i = bisect.bisect_right(starts, q) - 1
        out.append(lines[i])
    return out
def check(label, actual, expected):
    observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
cases = [[('offset before the first entry maps to first line',
   (101, [[2, 1], [3, 2], [0, 1], [4, 128], [2, 4], [1, 250], [5, 0], [2, 7]], [0, 2]),
   [101, 101]),
  ('regression: exact entry offsets',
   (101, [[2, 1], [3, 2], [0, 1], [4, 128], [2, 4], [1, 250], [5, 0], [2, 7]], [4, 10]),
   [102, 105]),
  ('interior offsets',
   (101, [[2, 1], [3, 2], [0, 1], [4, 128], [2, 4], [1, 250], [5, 0], [2, 7]], [5, 12]),
   [102, 105]),
  ('no-line marker',
   (101, [[2, 1], [3, 2], [0, 1], [4, 128], [2, 4], [1, 250], [5, 0], [2, 7]], [18, 19]),
   [None, None]),
  ('line resumes after marker',
   (101, [[2, 1], [3, 2], [0, 1], [4, 128], [2, 4], [1, 250], [5, 0], [2, 7]], [22, 23]),
   [109, 109]),
  ('negative line delta',
   (101, [[2, 1], [3, 2], [0, 1], [4, 128], [2, 4], [1, 250], [5, 0], [2, 7]], [24, 30]),
   [103, 103]),
  ('zero line delta keeps line',
   (101, [[2, 1], [3, 2], [0, 1], [4, 128], [2, 4], [1, 250], [5, 0], [2, 7]], [34, 36]),
   [103, 103]),
  ('control: past the last entry',
   (101, [[2, 1], [3, 2], [0, 1], [4, 128], [2, 4], [1, 250], [5, 0], [2, 7]], [38, 90]),
   [110, 110])],
 [('offset before the first entry maps to first line',
   (102, [[2, 1], [3, 2], [0, 1], [4, 128], [2, 5], [1, 250], [5, 0], [2, 7]], [0, 2]),
   [102, 102]),
  ('regression: exact entry offsets',
   (102, [[2, 1], [3, 2], [0, 1], [4, 128], [2, 5], [1, 250], [5, 0], [2, 7]], [4, 10]),
   [103, 106]),
  ('interior offsets',
   (102, [[2, 1], [3, 2], [0, 1], [4, 128], [2, 5], [1, 250], [5, 0], [2, 7]], [5, 12]),
   [103, 106]),
  ('no-line marker',
   (102, [[2, 1], [3, 2], [0, 1], [4, 128], [2, 5], [1, 250], [5, 0], [2, 7]], [18, 19]),
   [None, None]),
  ('line resumes after marker',
   (102, [[2, 1], [3, 2], [0, 1], [4, 128], [2, 5], [1, 250], [5, 0], [2, 7]], [22, 23]),
   [111, 111]),
  ('negative line delta',
   (102, [[2, 1], [3, 2], [0, 1], [4, 128], [2, 5], [1, 250], [5, 0], [2, 7]], [24, 30]),
   [105, 105]),
  ('zero line delta keeps line',
   (102, [[2, 1], [3, 2], [0, 1], [4, 128], [2, 5], [1, 250], [5, 0], [2, 7]], [34, 36]),
   [105, 105]),
  ('control: past the last entry',
   (102, [[2, 1], [3, 2], [0, 1], [4, 128], [2, 5], [1, 250], [5, 0], [2, 7]], [38, 90]),
   [112, 112])],
 [('offset before the first entry maps to first line',
   (103, [[2, 1], [3, 2], [0, 1], [4, 128], [2, 6], [1, 250], [5, 0], [2, 7]], [0, 2]),
   [103, 103]),
  ('regression: exact entry offsets',
   (103, [[2, 1], [3, 2], [0, 1], [4, 128], [2, 6], [1, 250], [5, 0], [2, 7]], [4, 10]),
   [104, 107]),
  ('interior offsets',
   (103, [[2, 1], [3, 2], [0, 1], [4, 128], [2, 6], [1, 250], [5, 0], [2, 7]], [5, 12]),
   [104, 107]),
  ('no-line marker',
   (103, [[2, 1], [3, 2], [0, 1], [4, 128], [2, 6], [1, 250], [5, 0], [2, 7]], [18, 19]),
   [None, None]),
  ('line resumes after marker',
   (103, [[2, 1], [3, 2], [0, 1], [4, 128], [2, 6], [1, 250], [5, 0], [2, 7]], [22, 23]),
   [113, 113]),
  ('negative line delta',
   (103, [[2, 1], [3, 2], [0, 1], [4, 128], [2, 6], [1, 250], [5, 0], [2, 7]], [24, 30]),
   [107, 107]),
  ('zero line delta keeps line',
   (103, [[2, 1], [3, 2], [0, 1], [4, 128], [2, 6], [1, 250], [5, 0], [2, 7]], [34, 36]),
   [107, 107]),
  ('control: past the last entry',
   (103, [[2, 1], [3, 2], [0, 1], [4, 128], [2, 6], [1, 250], [5, 0], [2, 7]], [38, 90]),
   [114, 114])],
 [('offset before the first entry maps to first line',
   (104, [[2, 1], [3, 2], [0, 1], [4, 128], [2, 7], [1, 250], [5, 0], [2, 7]], [0, 2]),
   [104, 104]),
  ('regression: exact entry offsets',
   (104, [[2, 1], [3, 2], [0, 1], [4, 128], [2, 7], [1, 250], [5, 0], [2, 7]], [4, 10]),
   [105, 108]),
  ('interior offsets',
   (104, [[2, 1], [3, 2], [0, 1], [4, 128], [2, 7], [1, 250], [5, 0], [2, 7]], [5, 12]),
   [105, 108]),
  ('no-line marker',
   (104, [[2, 1], [3, 2], [0, 1], [4, 128], [2, 7], [1, 250], [5, 0], [2, 7]], [18, 19]),
   [None, None]),
  ('line resumes after marker',
   (104, [[2, 1], [3, 2], [0, 1], [4, 128], [2, 7], [1, 250], [5, 0], [2, 7]], [22, 23]),
   [115, 115]),
  ('negative line delta',
   (104, [[2, 1], [3, 2], [0, 1], [4, 128], [2, 7], [1, 250], [5, 0], [2, 7]], [24, 30]),
   [109, 109]),
  ('zero line delta keeps line',
   (104, [[2, 1], [3, 2], [0, 1], [4, 128], [2, 7], [1, 250], [5, 0], [2, 7]], [34, 36]),
   [109, 109]),
  ('control: past the last entry',
   (104, [[2, 1], [3, 2], [0, 1], [4, 128], [2, 7], [1, 250], [5, 0], [2, 7]], [38, 90]),
   [116, 116])],
 [('offset before the first entry maps to first line',
   (105, [[2, 1], [3, 2], [0, 1], [4, 128], [2, 8], [1, 250], [5, 0], [2, 7]], [0, 2]),
   [105, 105]),
  ('regression: exact entry offsets',
   (105, [[2, 1], [3, 2], [0, 1], [4, 128], [2, 8], [1, 250], [5, 0], [2, 7]], [4, 10]),
   [106, 109]),
  ('interior offsets',
   (105, [[2, 1], [3, 2], [0, 1], [4, 128], [2, 8], [1, 250], [5, 0], [2, 7]], [5, 12]),
   [106, 109]),
  ('no-line marker',
   (105, [[2, 1], [3, 2], [0, 1], [4, 128], [2, 8], [1, 250], [5, 0], [2, 7]], [18, 19]),
   [None, None]),
  ('line resumes after marker',
   (105, [[2, 1], [3, 2], [0, 1], [4, 128], [2, 8], [1, 250], [5, 0], [2, 7]], [22, 23]),
   [117, 117]),
  ('negative line delta',
   (105, [[2, 1], [3, 2], [0, 1], [4, 128], [2, 8], [1, 250], [5, 0], [2, 7]], [24, 30]),
   [111, 111]),
  ('zero line delta keeps line',
   (105, [[2, 1], [3, 2], [0, 1], [4, 128], [2, 8], [1, 250], [5, 0], [2, 7]], [34, 36]),
   [111, 111]),
  ('control: past the last entry',
   (105, [[2, 1], [3, 2], [0, 1], [4, 128], [2, 8], [1, 250], [5, 0], [2, 7]], [38, 90]),
   [118, 118])]]
for label, args, expected in cases[N - 1]:
    check(label, solve(*args), expected)
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
offset before the first entry maps to first line[101, 101][101, 101]Passed
regression: exact entry offsets[102, 105][102, 105]Passed
interior offsets[102, 105][102, 105]Passed
no-line marker[233, 233][None, None]Failed
line resumes after marker[237, 237][109, 109]Failed
negative line delta[487, 487][103, 103]Failed
zero line delta keeps line[487, 487][103, 103]Failed
control: past the last entry[494, 494][110, 110]Failed

SHA-256 / 398e6ede225de1683506c0ea73cfc2139db22478a88aacb194be09646b0f34ce

2 / The unsuccessful fix

Exit 1
"""Failure Map reference implementation. Python standard library only."""
import json
import bisect
N = 1
observations = []
def solve(first, pairs, queries):
    starts, lines = [0], [first]
    addr, line = 0, first
    for ad, ld in pairs:
        addr += ad * 2
        if ld > 128:
            ld -= 256
        if ld == -128:
            starts.append(addr)
            lines.append(None)
            continue
        line += ld
        starts.append(addr)
        lines.append(line)
    out = []
    for q in queries:
        i = bisect.bisect_right(starts, q) - 1
        out.append(lines[i])
    return out
def check(label, actual, expected):
    observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
cases = [[('offset before the first entry maps to first line',
   (101, [[2, 1], [3, 2], [0, 1], [4, 128], [2, 4], [1, 250], [5, 0], [2, 7]], [0, 2]),
   [101, 101]),
  ('regression: exact entry offsets',
   (101, [[2, 1], [3, 2], [0, 1], [4, 128], [2, 4], [1, 250], [5, 0], [2, 7]], [4, 10]),
   [102, 105]),
  ('interior offsets',
   (101, [[2, 1], [3, 2], [0, 1], [4, 128], [2, 4], [1, 250], [5, 0], [2, 7]], [5, 12]),
   [102, 105]),
  ('no-line marker',
   (101, [[2, 1], [3, 2], [0, 1], [4, 128], [2, 4], [1, 250], [5, 0], [2, 7]], [18, 19]),
   [None, None]),
  ('line resumes after marker',
   (101, [[2, 1], [3, 2], [0, 1], [4, 128], [2, 4], [1, 250], [5, 0], [2, 7]], [22, 23]),
   [109, 109]),
  ('negative line delta',
   (101, [[2, 1], [3, 2], [0, 1], [4, 128], [2, 4], [1, 250], [5, 0], [2, 7]], [24, 30]),
   [103, 103]),
  ('zero line delta keeps line',
   (101, [[2, 1], [3, 2], [0, 1], [4, 128], [2, 4], [1, 250], [5, 0], [2, 7]], [34, 36]),
   [103, 103]),
  ('control: past the last entry',
   (101, [[2, 1], [3, 2], [0, 1], [4, 128], [2, 4], [1, 250], [5, 0], [2, 7]], [38, 90]),
   [110, 110])],
 [('offset before the first entry maps to first line',
   (102, [[2, 1], [3, 2], [0, 1], [4, 128], [2, 5], [1, 250], [5, 0], [2, 7]], [0, 2]),
   [102, 102]),
  ('regression: exact entry offsets',
   (102, [[2, 1], [3, 2], [0, 1], [4, 128], [2, 5], [1, 250], [5, 0], [2, 7]], [4, 10]),
   [103, 106]),
  ('interior offsets',
   (102, [[2, 1], [3, 2], [0, 1], [4, 128], [2, 5], [1, 250], [5, 0], [2, 7]], [5, 12]),
   [103, 106]),
  ('no-line marker',
   (102, [[2, 1], [3, 2], [0, 1], [4, 128], [2, 5], [1, 250], [5, 0], [2, 7]], [18, 19]),
   [None, None]),
  ('line resumes after marker',
   (102, [[2, 1], [3, 2], [0, 1], [4, 128], [2, 5], [1, 250], [5, 0], [2, 7]], [22, 23]),
   [111, 111]),
  ('negative line delta',
   (102, [[2, 1], [3, 2], [0, 1], [4, 128], [2, 5], [1, 250], [5, 0], [2, 7]], [24, 30]),
   [105, 105]),
  ('zero line delta keeps line',
   (102, [[2, 1], [3, 2], [0, 1], [4, 128], [2, 5], [1, 250], [5, 0], [2, 7]], [34, 36]),
   [105, 105]),
  ('control: past the last entry',
   (102, [[2, 1], [3, 2], [0, 1], [4, 128], [2, 5], [1, 250], [5, 0], [2, 7]], [38, 90]),
   [112, 112])],
 [('offset before the first entry maps to first line',
   (103, [[2, 1], [3, 2], [0, 1], [4, 128], [2, 6], [1, 250], [5, 0], [2, 7]], [0, 2]),
   [103, 103]),
  ('regression: exact entry offsets',
   (103, [[2, 1], [3, 2], [0, 1], [4, 128], [2, 6], [1, 250], [5, 0], [2, 7]], [4, 10]),
   [104, 107]),
  ('interior offsets',
   (103, [[2, 1], [3, 2], [0, 1], [4, 128], [2, 6], [1, 250], [5, 0], [2, 7]], [5, 12]),
   [104, 107]),
  ('no-line marker',
   (103, [[2, 1], [3, 2], [0, 1], [4, 128], [2, 6], [1, 250], [5, 0], [2, 7]], [18, 19]),
   [None, None]),
  ('line resumes after marker',
   (103, [[2, 1], [3, 2], [0, 1], [4, 128], [2, 6], [1, 250], [5, 0], [2, 7]], [22, 23]),
   [113, 113]),
  ('negative line delta',
   (103, [[2, 1], [3, 2], [0, 1], [4, 128], [2, 6], [1, 250], [5, 0], [2, 7]], [24, 30]),
   [107, 107]),
  ('zero line delta keeps line',
   (103, [[2, 1], [3, 2], [0, 1], [4, 128], [2, 6], [1, 250], [5, 0], [2, 7]], [34, 36]),
   [107, 107]),
  ('control: past the last entry',
   (103, [[2, 1], [3, 2], [0, 1], [4, 128], [2, 6], [1, 250], [5, 0], [2, 7]], [38, 90]),
   [114, 114])],
 [('offset before the first entry maps to first line',
   (104, [[2, 1], [3, 2], [0, 1], [4, 128], [2, 7], [1, 250], [5, 0], [2, 7]], [0, 2]),
   [104, 104]),
  ('regression: exact entry offsets',
   (104, [[2, 1], [3, 2], [0, 1], [4, 128], [2, 7], [1, 250], [5, 0], [2, 7]], [4, 10]),
   [105, 108]),
  ('interior offsets',
   (104, [[2, 1], [3, 2], [0, 1], [4, 128], [2, 7], [1, 250], [5, 0], [2, 7]], [5, 12]),
   [105, 108]),
  ('no-line marker',
   (104, [[2, 1], [3, 2], [0, 1], [4, 128], [2, 7], [1, 250], [5, 0], [2, 7]], [18, 19]),
   [None, None]),
  ('line resumes after marker',
   (104, [[2, 1], [3, 2], [0, 1], [4, 128], [2, 7], [1, 250], [5, 0], [2, 7]], [22, 23]),
   [115, 115]),
  ('negative line delta',
   (104, [[2, 1], [3, 2], [0, 1], [4, 128], [2, 7], [1, 250], [5, 0], [2, 7]], [24, 30]),
   [109, 109]),
  ('zero line delta keeps line',
   (104, [[2, 1], [3, 2], [0, 1], [4, 128], [2, 7], [1, 250], [5, 0], [2, 7]], [34, 36]),
   [109, 109]),
  ('control: past the last entry',
   (104, [[2, 1], [3, 2], [0, 1], [4, 128], [2, 7], [1, 250], [5, 0], [2, 7]], [38, 90]),
   [116, 116])],
 [('offset before the first entry maps to first line',
   (105, [[2, 1], [3, 2], [0, 1], [4, 128], [2, 8], [1, 250], [5, 0], [2, 7]], [0, 2]),
   [105, 105]),
  ('regression: exact entry offsets',
   (105, [[2, 1], [3, 2], [0, 1], [4, 128], [2, 8], [1, 250], [5, 0], [2, 7]], [4, 10]),
   [106, 109]),
  ('interior offsets',
   (105, [[2, 1], [3, 2], [0, 1], [4, 128], [2, 8], [1, 250], [5, 0], [2, 7]], [5, 12]),
   [106, 109]),
  ('no-line marker',
   (105, [[2, 1], [3, 2], [0, 1], [4, 128], [2, 8], [1, 250], [5, 0], [2, 7]], [18, 19]),
   [None, None]),
  ('line resumes after marker',
   (105, [[2, 1], [3, 2], [0, 1], [4, 128], [2, 8], [1, 250], [5, 0], [2, 7]], [22, 23]),
   [117, 117]),
  ('negative line delta',
   (105, [[2, 1], [3, 2], [0, 1], [4, 128], [2, 8], [1, 250], [5, 0], [2, 7]], [24, 30]),
   [111, 111]),
  ('zero line delta keeps line',
   (105, [[2, 1], [3, 2], [0, 1], [4, 128], [2, 8], [1, 250], [5, 0], [2, 7]], [34, 36]),
   [111, 111]),
  ('control: past the last entry',
   (105, [[2, 1], [3, 2], [0, 1], [4, 128], [2, 8], [1, 250], [5, 0], [2, 7]], [38, 90]),
   [118, 118])]]
for label, args, expected in cases[N - 1]:
    check(label, solve(*args), expected)
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
offset before the first entry maps to first line[101, 101][101, 101]Passed
regression: exact entry offsets[102, 105][102, 105]Passed
interior offsets[102, 105][102, 105]Passed
no-line marker[233, 233][None, None]Failed
line resumes after marker[237, 237][109, 109]Failed
negative line delta[231, 231][103, 103]Failed
zero line delta keeps line[231, 231][103, 103]Failed
control: past the last entry[238, 238][110, 110]Failed

SHA-256 / 33f77c7e411955cf977eada59527845d26b230f492e33cbf14b4d744f61737e3

3 / The verified repair

Exit 0
"""Failure Map reference implementation. Python standard library only."""
import json
import bisect
N = 1
observations = []
def solve(first, pairs, queries):
    starts, lines = [0], [first]
    addr, line = 0, first
    for ad, ld in pairs:
        addr += ad * 2
        if ld >= 128:
            ld -= 256
        if ld == -128:
            starts.append(addr)
            lines.append(None)
            continue
        line += ld
        starts.append(addr)
        lines.append(line)
    out = []
    for q in queries:
        i = bisect.bisect_right(starts, q) - 1
        out.append(lines[i])
    return out
def check(label, actual, expected):
    observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
cases = [[('offset before the first entry maps to first line',
   (101, [[2, 1], [3, 2], [0, 1], [4, 128], [2, 4], [1, 250], [5, 0], [2, 7]], [0, 2]),
   [101, 101]),
  ('regression: exact entry offsets',
   (101, [[2, 1], [3, 2], [0, 1], [4, 128], [2, 4], [1, 250], [5, 0], [2, 7]], [4, 10]),
   [102, 105]),
  ('interior offsets',
   (101, [[2, 1], [3, 2], [0, 1], [4, 128], [2, 4], [1, 250], [5, 0], [2, 7]], [5, 12]),
   [102, 105]),
  ('no-line marker',
   (101, [[2, 1], [3, 2], [0, 1], [4, 128], [2, 4], [1, 250], [5, 0], [2, 7]], [18, 19]),
   [None, None]),
  ('line resumes after marker',
   (101, [[2, 1], [3, 2], [0, 1], [4, 128], [2, 4], [1, 250], [5, 0], [2, 7]], [22, 23]),
   [109, 109]),
  ('negative line delta',
   (101, [[2, 1], [3, 2], [0, 1], [4, 128], [2, 4], [1, 250], [5, 0], [2, 7]], [24, 30]),
   [103, 103]),
  ('zero line delta keeps line',
   (101, [[2, 1], [3, 2], [0, 1], [4, 128], [2, 4], [1, 250], [5, 0], [2, 7]], [34, 36]),
   [103, 103]),
  ('control: past the last entry',
   (101, [[2, 1], [3, 2], [0, 1], [4, 128], [2, 4], [1, 250], [5, 0], [2, 7]], [38, 90]),
   [110, 110])],
 [('offset before the first entry maps to first line',
   (102, [[2, 1], [3, 2], [0, 1], [4, 128], [2, 5], [1, 250], [5, 0], [2, 7]], [0, 2]),
   [102, 102]),
  ('regression: exact entry offsets',
   (102, [[2, 1], [3, 2], [0, 1], [4, 128], [2, 5], [1, 250], [5, 0], [2, 7]], [4, 10]),
   [103, 106]),
  ('interior offsets',
   (102, [[2, 1], [3, 2], [0, 1], [4, 128], [2, 5], [1, 250], [5, 0], [2, 7]], [5, 12]),
   [103, 106]),
  ('no-line marker',
   (102, [[2, 1], [3, 2], [0, 1], [4, 128], [2, 5], [1, 250], [5, 0], [2, 7]], [18, 19]),
   [None, None]),
  ('line resumes after marker',
   (102, [[2, 1], [3, 2], [0, 1], [4, 128], [2, 5], [1, 250], [5, 0], [2, 7]], [22, 23]),
   [111, 111]),
  ('negative line delta',
   (102, [[2, 1], [3, 2], [0, 1], [4, 128], [2, 5], [1, 250], [5, 0], [2, 7]], [24, 30]),
   [105, 105]),
  ('zero line delta keeps line',
   (102, [[2, 1], [3, 2], [0, 1], [4, 128], [2, 5], [1, 250], [5, 0], [2, 7]], [34, 36]),
   [105, 105]),
  ('control: past the last entry',
   (102, [[2, 1], [3, 2], [0, 1], [4, 128], [2, 5], [1, 250], [5, 0], [2, 7]], [38, 90]),
   [112, 112])],
 [('offset before the first entry maps to first line',
   (103, [[2, 1], [3, 2], [0, 1], [4, 128], [2, 6], [1, 250], [5, 0], [2, 7]], [0, 2]),
   [103, 103]),
  ('regression: exact entry offsets',
   (103, [[2, 1], [3, 2], [0, 1], [4, 128], [2, 6], [1, 250], [5, 0], [2, 7]], [4, 10]),
   [104, 107]),
  ('interior offsets',
   (103, [[2, 1], [3, 2], [0, 1], [4, 128], [2, 6], [1, 250], [5, 0], [2, 7]], [5, 12]),
   [104, 107]),
  ('no-line marker',
   (103, [[2, 1], [3, 2], [0, 1], [4, 128], [2, 6], [1, 250], [5, 0], [2, 7]], [18, 19]),
   [None, None]),
  ('line resumes after marker',
   (103, [[2, 1], [3, 2], [0, 1], [4, 128], [2, 6], [1, 250], [5, 0], [2, 7]], [22, 23]),
   [113, 113]),
  ('negative line delta',
   (103, [[2, 1], [3, 2], [0, 1], [4, 128], [2, 6], [1, 250], [5, 0], [2, 7]], [24, 30]),
   [107, 107]),
  ('zero line delta keeps line',
   (103, [[2, 1], [3, 2], [0, 1], [4, 128], [2, 6], [1, 250], [5, 0], [2, 7]], [34, 36]),
   [107, 107]),
  ('control: past the last entry',
   (103, [[2, 1], [3, 2], [0, 1], [4, 128], [2, 6], [1, 250], [5, 0], [2, 7]], [38, 90]),
   [114, 114])],
 [('offset before the first entry maps to first line',
   (104, [[2, 1], [3, 2], [0, 1], [4, 128], [2, 7], [1, 250], [5, 0], [2, 7]], [0, 2]),
   [104, 104]),
  ('regression: exact entry offsets',
   (104, [[2, 1], [3, 2], [0, 1], [4, 128], [2, 7], [1, 250], [5, 0], [2, 7]], [4, 10]),
   [105, 108]),
  ('interior offsets',
   (104, [[2, 1], [3, 2], [0, 1], [4, 128], [2, 7], [1, 250], [5, 0], [2, 7]], [5, 12]),
   [105, 108]),
  ('no-line marker',
   (104, [[2, 1], [3, 2], [0, 1], [4, 128], [2, 7], [1, 250], [5, 0], [2, 7]], [18, 19]),
   [None, None]),
  ('line resumes after marker',
   (104, [[2, 1], [3, 2], [0, 1], [4, 128], [2, 7], [1, 250], [5, 0], [2, 7]], [22, 23]),
   [115, 115]),
  ('negative line delta',
   (104, [[2, 1], [3, 2], [0, 1], [4, 128], [2, 7], [1, 250], [5, 0], [2, 7]], [24, 30]),
   [109, 109]),
  ('zero line delta keeps line',
   (104, [[2, 1], [3, 2], [0, 1], [4, 128], [2, 7], [1, 250], [5, 0], [2, 7]], [34, 36]),
   [109, 109]),
  ('control: past the last entry',
   (104, [[2, 1], [3, 2], [0, 1], [4, 128], [2, 7], [1, 250], [5, 0], [2, 7]], [38, 90]),
   [116, 116])],
 [('offset before the first entry maps to first line',
   (105, [[2, 1], [3, 2], [0, 1], [4, 128], [2, 8], [1, 250], [5, 0], [2, 7]], [0, 2]),
   [105, 105]),
  ('regression: exact entry offsets',
   (105, [[2, 1], [3, 2], [0, 1], [4, 128], [2, 8], [1, 250], [5, 0], [2, 7]], [4, 10]),
   [106, 109]),
  ('interior offsets',
   (105, [[2, 1], [3, 2], [0, 1], [4, 128], [2, 8], [1, 250], [5, 0], [2, 7]], [5, 12]),
   [106, 109]),
  ('no-line marker',
   (105, [[2, 1], [3, 2], [0, 1], [4, 128], [2, 8], [1, 250], [5, 0], [2, 7]], [18, 19]),
   [None, None]),
  ('line resumes after marker',
   (105, [[2, 1], [3, 2], [0, 1], [4, 128], [2, 8], [1, 250], [5, 0], [2, 7]], [22, 23]),
   [117, 117]),
  ('negative line delta',
   (105, [[2, 1], [3, 2], [0, 1], [4, 128], [2, 8], [1, 250], [5, 0], [2, 7]], [24, 30]),
   [111, 111]),
  ('zero line delta keeps line',
   (105, [[2, 1], [3, 2], [0, 1], [4, 128], [2, 8], [1, 250], [5, 0], [2, 7]], [34, 36]),
   [111, 111]),
  ('control: past the last entry',
   (105, [[2, 1], [3, 2], [0, 1], [4, 128], [2, 8], [1, 250], [5, 0], [2, 7]], [38, 90]),
   [118, 118])]]
for label, args, expected in cases[N - 1]:
    check(label, solve(*args), expected)
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
offset before the first entry maps to first line[101, 101][101, 101]Passed
regression: exact entry offsets[102, 105][102, 105]Passed
interior offsets[102, 105][102, 105]Passed
no-line marker[None, None][None, None]Passed
line resumes after marker[109, 109][109, 109]Passed
negative line delta[103, 103][103, 103]Passed
zero line delta keeps line[103, 103][103, 103]Passed
control: past the last entry[110, 110][110, 110]Passed

SHA-256 / a22937290d0eabf6bb54d21278f5d5a9b3c813425cad85086e86c124d273d37d

Verification & scope

A deterministic, bounded teaching model of one bytecode virtual machine mechanism with a stipulated instruction encoding; it is not a production VM and claims no conformance to any real specification. 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:51:22.567212+00:00.

Case digest / a48e32a5e2a397e7300ea0276f9fd82ae6f40ee9d87f20f1a36e287d5024e2e3