FA-51981 / Raster memory layout / Open access
Bricked Volume: Allocation ignores padded brick depth and metadata · case 01
The returned physical layout descriptor disagrees with the declared buffer mapping at allocation.
ROOT CAUSE
Allocation ignores padded brick depth and metadata The faulty expression is brick_columns*brick_rows*brick_pitch.
VERIFIED REPAIR
Apply the stipulated layout rule at allocation: brick_columns*brick_rows*brick_layers*brick_pitch.
Unsuccessful approach: The attempted repair uses p["w"]*p["h"]*p["d"]*p["b"] and still violates the layout contract.
Case contract
Volume storage uses 4x2x3 bricks in x-fastest brick order. Bricks have a metadata prefix; x-fastest texels fill each brick including edge padding. Return the named intermediate layout descriptor and final address fields; all quantities are integer byte offsets unless explicitly stated.
Why this case matters
Offline raster resource, upload, readback, and storage-layout regression model.
1 / The failure
Exit 1"""Failure Map reference implementation. Python standard library only."""
import json
N = 1
observations = []
def solve(p):
p = dict(p)
brick_columns = (p["w"]+3)//4
brick_rows = (p["h"]+1)//2
brick_layers = (p["d"]+2)//3
brick_xy = (p["y"]//2)*brick_columns+p["x"]//4
brick_id = (p["z"]//3)*brick_columns*brick_rows+brick_xy
local_slice = p["z"]%3
local_texel = local_slice*8+(p["y"]%2)*4+p["x"]%4
brick_pitch = 24*p["b"]+p["meta"]
allocation = brick_columns*brick_rows*brick_pitch
address = p["base"]+brick_id*brick_pitch+p["meta"]+local_texel*p["b"]
return {'brick_columns': brick_columns, 'brick_rows': brick_rows, 'brick_layers': brick_layers, 'brick_xy': brick_xy, 'brick_id': brick_id, 'local_slice': local_slice, 'local_texel': local_texel, 'brick_pitch': brick_pitch, 'allocation': allocation, 'address': address}
def check(label, actual, expected):
observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
cases = {1: [({'w': 1, 'h': 1, 'x': 0, 'y': 0, 'b': 2, 'base': 11, 'd': 8, 'z': 0, 'meta': 2}, {'brick_columns': 1, 'brick_rows': 1, 'brick_layers': 3, 'brick_xy': 0, 'brick_id': 0, 'local_slice': 0, 'local_texel': 0, 'brick_pitch': 50, 'allocation': 150, 'address': 13}), ({'w': 6, 'h': 4, 'x': 1, 'y': 2, 'b': 2, 'base': 11, 'd': 9, 'z': 1, 'meta': 2}, {'brick_columns': 2, 'brick_rows': 2, 'brick_layers': 3, 'brick_xy': 2, 'brick_id': 2, 'local_slice': 1, 'local_texel': 9, 'brick_pitch': 50, 'allocation': 600, 'address': 131}), ({'w': 10, 'h': 8, 'x': 8, 'y': 6, 'b': 2, 'base': 11, 'd': 10, 'z': 3, 'meta': 2}, {'brick_columns': 3, 'brick_rows': 4, 'brick_layers': 4, 'brick_xy': 11, 'brick_id': 23, 'local_slice': 0, 'local_texel': 0, 'brick_pitch': 50, 'allocation': 2400, 'address': 1163}), ({'w': 16, 'h': 8, 'x': 15, 'y': 7, 'b': 2, 'base': 11, 'd': 11, 'z': 6, 'meta': 2}, {'brick_columns': 4, 'brick_rows': 4, 'brick_layers': 4, 'brick_xy': 15, 'brick_id': 47, 'local_slice': 0, 'local_texel': 7, 'brick_pitch': 50, 'allocation': 3200, 'address': 2377}), ({'w': 18, 'h': 10, 'x': 16, 'y': 8, 'b': 2, 'base': 11, 'd': 12, 'z': 7, 'meta': 2}, {'brick_columns': 5, 'brick_rows': 5, 'brick_layers': 4, 'brick_xy': 24, 'brick_id': 74, 'local_slice': 1, 'local_texel': 8, 'brick_pitch': 50, 'allocation': 5000, 'address': 3729}), ({'w': 7, 'h': 13, 'x': 3, 'y': 12, 'b': 2, 'base': 11, 'd': 13, 'z': 2, 'meta': 2}, {'brick_columns': 2, 'brick_rows': 7, 'brick_layers': 5, 'brick_xy': 12, 'brick_id': 12, 'local_slice': 2, 'local_texel': 19, 'brick_pitch': 50, 'allocation': 3500, 'address': 651})], 2: [({'w': 1, 'h': 1, 'x': 0, 'y': 0, 'b': 3, 'base': 22, 'd': 9, 'z': 0, 'meta': 4}, {'brick_columns': 1, 'brick_rows': 1, 'brick_layers': 3, 'brick_xy': 0, 'brick_id': 0, 'local_slice': 0, 'local_texel': 0, 'brick_pitch': 76, 'allocation': 228, 'address': 26}), ({'w': 7, 'h': 5, 'x': 1, 'y': 2, 'b': 3, 'base': 22, 'd': 10, 'z': 1, 'meta': 4}, {'brick_columns': 2, 'brick_rows': 3, 'brick_layers': 4, 'brick_xy': 2, 'brick_id': 2, 'local_slice': 1, 'local_texel': 9, 'brick_pitch': 76, 'allocation': 1824, 'address': 205}), ({'w': 11, 'h': 9, 'x': 8, 'y': 6, 'b': 3, 'base': 22, 'd': 11, 'z': 3, 'meta': 4}, {'brick_columns': 3, 'brick_rows': 5, 'brick_layers': 4, 'brick_xy': 11, 'brick_id': 26, 'local_slice': 0, 'local_texel': 0, 'brick_pitch': 76, 'allocation': 4560, 'address': 2002}), ({'w': 16, 'h': 8, 'x': 15, 'y': 7, 'b': 3, 'base': 22, 'd': 12, 'z': 6, 'meta': 4}, {'brick_columns': 4, 'brick_rows': 4, 'brick_layers': 4, 'brick_xy': 15, 'brick_id': 47, 'local_slice': 0, 'local_texel': 7, 'brick_pitch': 76, 'allocation': 4864, 'address': 3619}), ({'w': 19, 'h': 11, 'x': 16, 'y': 8, 'b': 3, 'base': 22, 'd': 13, 'z': 7, 'meta': 4}, {'brick_columns': 5, 'brick_rows': 6, 'brick_layers': 5, 'brick_xy': 24, 'brick_id': 84, 'local_slice': 1, 'local_texel': 8, 'brick_pitch': 76, 'allocation': 11400, 'address': 6434}), ({'w': 7, 'h': 13, 'x': 3, 'y': 12, 'b': 3, 'base': 22, 'd': 14, 'z': 2, 'meta': 4}, {'brick_columns': 2, 'brick_rows': 7, 'brick_layers': 5, 'brick_xy': 12, 'brick_id': 12, 'local_slice': 2, 'local_texel': 19, 'brick_pitch': 76, 'allocation': 5320, 'address': 995})], 3: [({'w': 1, 'h': 1, 'x': 0, 'y': 0, 'b': 4, 'base': 33, 'd': 10, 'z': 0, 'meta': 6}, {'brick_columns': 1, 'brick_rows': 1, 'brick_layers': 4, 'brick_xy': 0, 'brick_id': 0, 'local_slice': 0, 'local_texel': 0, 'brick_pitch': 102, 'allocation': 408, 'address': 39}), ({'w': 8, 'h': 6, 'x': 1, 'y': 2, 'b': 4, 'base': 33, 'd': 11, 'z': 1, 'meta': 6}, {'brick_columns': 2, 'brick_rows': 3, 'brick_layers': 4, 'brick_xy': 2, 'brick_id': 2, 'local_slice': 1, 'local_texel': 9, 'brick_pitch': 102, 'allocation': 2448, 'address': 279}), ({'w': 12, 'h': 10, 'x': 8, 'y': 6, 'b': 4, 'base': 33, 'd': 12, 'z': 3, 'meta': 6}, {'brick_columns': 3, 'brick_rows': 5, 'brick_layers': 4, 'brick_xy': 11, 'brick_id': 26, 'local_slice': 0, 'local_texel': 0, 'brick_pitch': 102, 'allocation': 6120, 'address': 2691}), ({'w': 16, 'h': 8, 'x': 15, 'y': 7, 'b': 4, 'base': 33, 'd': 13, 'z': 6, 'meta': 6}, {'brick_columns': 4, 'brick_rows': 4, 'brick_layers': 5, 'brick_xy': 15, 'brick_id': 47, 'local_slice': 0, 'local_texel': 7, 'brick_pitch': 102, 'allocation': 8160, 'address': 4861}), ({'w': 20, 'h': 12, 'x': 16, 'y': 8, 'b': 4, 'base': 33, 'd': 14, 'z': 7, 'meta': 6}, {'brick_columns': 5, 'brick_rows': 6, 'brick_layers': 5, 'brick_xy': 24, 'brick_id': 84, 'local_slice': 1, 'local_texel': 8, 'brick_pitch': 102, 'allocation': 15300, 'address': 8639}), ({'w': 7, 'h': 13, 'x': 3, 'y': 12, 'b': 4, 'base': 33, 'd': 15, 'z': 2, 'meta': 6}, {'brick_columns': 2, 'brick_rows': 7, 'brick_layers': 5, 'brick_xy': 12, 'brick_id': 12, 'local_slice': 2, 'local_texel': 19, 'brick_pitch': 102, 'allocation': 7140, 'address': 1339})], 4: [({'w': 1, 'h': 1, 'x': 0, 'y': 0, 'b': 5, 'base': 44, 'd': 11, 'z': 0, 'meta': 8}, {'brick_columns': 1, 'brick_rows': 1, 'brick_layers': 4, 'brick_xy': 0, 'brick_id': 0, 'local_slice': 0, 'local_texel': 0, 'brick_pitch': 128, 'allocation': 512, 'address': 52}), ({'w': 9, 'h': 7, 'x': 1, 'y': 2, 'b': 5, 'base': 44, 'd': 12, 'z': 1, 'meta': 8}, {'brick_columns': 3, 'brick_rows': 4, 'brick_layers': 4, 'brick_xy': 3, 'brick_id': 3, 'local_slice': 1, 'local_texel': 9, 'brick_pitch': 128, 'allocation': 6144, 'address': 481}), ({'w': 13, 'h': 11, 'x': 8, 'y': 6, 'b': 5, 'base': 44, 'd': 13, 'z': 3, 'meta': 8}, {'brick_columns': 4, 'brick_rows': 6, 'brick_layers': 5, 'brick_xy': 14, 'brick_id': 38, 'local_slice': 0, 'local_texel': 0, 'brick_pitch': 128, 'allocation': 15360, 'address': 4916}), ({'w': 16, 'h': 8, 'x': 15, 'y': 7, 'b': 5, 'base': 44, 'd': 14, 'z': 6, 'meta': 8}, {'brick_columns': 4, 'brick_rows': 4, 'brick_layers': 5, 'brick_xy': 15, 'brick_id': 47, 'local_slice': 0, 'local_texel': 7, 'brick_pitch': 128, 'allocation': 10240, 'address': 6103}), ({'w': 21, 'h': 13, 'x': 16, 'y': 8, 'b': 5, 'base': 44, 'd': 15, 'z': 7, 'meta': 8}, {'brick_columns': 6, 'brick_rows': 7, 'brick_layers': 5, 'brick_xy': 28, 'brick_id': 112, 'local_slice': 1, 'local_texel': 8, 'brick_pitch': 128, 'allocation': 26880, 'address': 14428}), ({'w': 7, 'h': 13, 'x': 3, 'y': 12, 'b': 5, 'base': 44, 'd': 16, 'z': 2, 'meta': 8}, {'brick_columns': 2, 'brick_rows': 7, 'brick_layers': 6, 'brick_xy': 12, 'brick_id': 12, 'local_slice': 2, 'local_texel': 19, 'brick_pitch': 128, 'allocation': 10752, 'address': 1683})], 5: [({'w': 1, 'h': 1, 'x': 0, 'y': 0, 'b': 6, 'base': 55, 'd': 12, 'z': 0, 'meta': 10}, {'brick_columns': 1, 'brick_rows': 1, 'brick_layers': 4, 'brick_xy': 0, 'brick_id': 0, 'local_slice': 0, 'local_texel': 0, 'brick_pitch': 154, 'allocation': 616, 'address': 65}), ({'w': 10, 'h': 8, 'x': 1, 'y': 2, 'b': 6, 'base': 55, 'd': 13, 'z': 1, 'meta': 10}, {'brick_columns': 3, 'brick_rows': 4, 'brick_layers': 5, 'brick_xy': 3, 'brick_id': 3, 'local_slice': 1, 'local_texel': 9, 'brick_pitch': 154, 'allocation': 9240, 'address': 581}), ({'w': 14, 'h': 12, 'x': 8, 'y': 6, 'b': 6, 'base': 55, 'd': 14, 'z': 3, 'meta': 10}, {'brick_columns': 4, 'brick_rows': 6, 'brick_layers': 5, 'brick_xy': 14, 'brick_id': 38, 'local_slice': 0, 'local_texel': 0, 'brick_pitch': 154, 'allocation': 18480, 'address': 5917}), ({'w': 16, 'h': 8, 'x': 15, 'y': 7, 'b': 6, 'base': 55, 'd': 15, 'z': 6, 'meta': 10}, {'brick_columns': 4, 'brick_rows': 4, 'brick_layers': 5, 'brick_xy': 15, 'brick_id': 47, 'local_slice': 0, 'local_texel': 7, 'brick_pitch': 154, 'allocation': 12320, 'address': 7345}), ({'w': 22, 'h': 14, 'x': 16, 'y': 8, 'b': 6, 'base': 55, 'd': 16, 'z': 7, 'meta': 10}, {'brick_columns': 6, 'brick_rows': 7, 'brick_layers': 6, 'brick_xy': 28, 'brick_id': 112, 'local_slice': 1, 'local_texel': 8, 'brick_pitch': 154, 'allocation': 38808, 'address': 17361}), ({'w': 7, 'h': 13, 'x': 3, 'y': 12, 'b': 6, 'base': 55, 'd': 17, 'z': 2, 'meta': 10}, {'brick_columns': 2, 'brick_rows': 7, 'brick_layers': 6, 'brick_xy': 12, 'brick_id': 12, 'local_slice': 2, 'local_texel': 19, 'brick_pitch': 154, 'allocation': 12936, 'address': 2027})]}
for i, (p, expected) in enumerate(cases[N]):
check("layout fixture " + str(i + 1), solve(p), 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 fixture | Actual | Expected | Outcome |
|---|---|---|---|
| layout fixture 1 | {'address': 13, 'allocation': 50, 'brick_columns': 1, 'brick_id': 0, 'brick_layers': 3, 'brick_pitch': 50, 'brick_rows': 1, 'brick_xy': 0, 'local_slice': 0, 'local_texel': 0} | {'address': 13, 'allocation': 150, 'brick_columns': 1, 'brick_id': 0, 'brick_layers': 3, 'brick_pitch': 50, 'brick_rows': 1, 'brick_xy': 0, 'local_slice': 0, 'local_texel': 0} | Failed |
| layout fixture 2 | {'address': 131, 'allocation': 200, 'brick_columns': 2, 'brick_id': 2, 'brick_layers': 3, 'brick_pitch': 50, 'brick_rows': 2, 'brick_xy': 2, 'local_slice': 1, 'local_texel': 9} | {'address': 131, 'allocation': 600, 'brick_columns': 2, 'brick_id': 2, 'brick_layers': 3, 'brick_pitch': 50, 'brick_rows': 2, 'brick_xy': 2, 'local_slice': 1, 'local_texel': 9} | Failed |
| layout fixture 3 | {'address': 1163, 'allocation': 600, 'brick_columns': 3, 'brick_id': 23, 'brick_layers': 4, 'brick_pitch': 50, 'brick_rows': 4, 'brick_xy': 11, 'local_slice': 0, 'local_texel': 0} | {'address': 1163, 'allocation': 2400, 'brick_columns': 3, 'brick_id': 23, 'brick_layers': 4, 'brick_pitch': 50, 'brick_rows': 4, 'brick_xy': 11, 'local_slice': 0, 'local_texel': 0} | Failed |
| layout fixture 4 | {'address': 2377, 'allocation': 800, 'brick_columns': 4, 'brick_id': 47, 'brick_layers': 4, 'brick_pitch': 50, 'brick_rows': 4, 'brick_xy': 15, 'local_slice': 0, 'local_texel': 7} | {'address': 2377, 'allocation': 3200, 'brick_columns': 4, 'brick_id': 47, 'brick_layers': 4, 'brick_pitch': 50, 'brick_rows': 4, 'brick_xy': 15, 'local_slice': 0, 'local_texel': 7} | Failed |
| layout fixture 5 | {'address': 3729, 'allocation': 1250, 'brick_columns': 5, 'brick_id': 74, 'brick_layers': 4, 'brick_pitch': 50, 'brick_rows': 5, 'brick_xy': 24, 'local_slice': 1, 'local_texel': 8} | {'address': 3729, 'allocation': 5000, 'brick_columns': 5, 'brick_id': 74, 'brick_layers': 4, 'brick_pitch': 50, 'brick_rows': 5, 'brick_xy': 24, 'local_slice': 1, 'local_texel': 8} | Failed |
| layout fixture 6 | {'address': 651, 'allocation': 700, 'brick_columns': 2, 'brick_id': 12, 'brick_layers': 5, 'brick_pitch': 50, 'brick_rows': 7, 'brick_xy': 12, 'local_slice': 2, 'local_texel': 19} | {'address': 651, 'allocation': 3500, 'brick_columns': 2, 'brick_id': 12, 'brick_layers': 5, 'brick_pitch': 50, 'brick_rows': 7, 'brick_xy': 12, 'local_slice': 2, 'local_texel': 19} | Failed |
SHA-256 / 4766043953cdfc62419c1c5c76c9bf875b7f93e6ceccff160da7282354894d86
2 / The unsuccessful fix
Exit 1"""Failure Map reference implementation. Python standard library only."""
import json
N = 1
observations = []
def solve(p):
p = dict(p)
brick_columns = (p["w"]+3)//4
brick_rows = (p["h"]+1)//2
brick_layers = (p["d"]+2)//3
brick_xy = (p["y"]//2)*brick_columns+p["x"]//4
brick_id = (p["z"]//3)*brick_columns*brick_rows+brick_xy
local_slice = p["z"]%3
local_texel = local_slice*8+(p["y"]%2)*4+p["x"]%4
brick_pitch = 24*p["b"]+p["meta"]
allocation = p["w"]*p["h"]*p["d"]*p["b"]
address = p["base"]+brick_id*brick_pitch+p["meta"]+local_texel*p["b"]
return {'brick_columns': brick_columns, 'brick_rows': brick_rows, 'brick_layers': brick_layers, 'brick_xy': brick_xy, 'brick_id': brick_id, 'local_slice': local_slice, 'local_texel': local_texel, 'brick_pitch': brick_pitch, 'allocation': allocation, 'address': address}
def check(label, actual, expected):
observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
cases = {1: [({'w': 1, 'h': 1, 'x': 0, 'y': 0, 'b': 2, 'base': 11, 'd': 8, 'z': 0, 'meta': 2}, {'brick_columns': 1, 'brick_rows': 1, 'brick_layers': 3, 'brick_xy': 0, 'brick_id': 0, 'local_slice': 0, 'local_texel': 0, 'brick_pitch': 50, 'allocation': 150, 'address': 13}), ({'w': 6, 'h': 4, 'x': 1, 'y': 2, 'b': 2, 'base': 11, 'd': 9, 'z': 1, 'meta': 2}, {'brick_columns': 2, 'brick_rows': 2, 'brick_layers': 3, 'brick_xy': 2, 'brick_id': 2, 'local_slice': 1, 'local_texel': 9, 'brick_pitch': 50, 'allocation': 600, 'address': 131}), ({'w': 10, 'h': 8, 'x': 8, 'y': 6, 'b': 2, 'base': 11, 'd': 10, 'z': 3, 'meta': 2}, {'brick_columns': 3, 'brick_rows': 4, 'brick_layers': 4, 'brick_xy': 11, 'brick_id': 23, 'local_slice': 0, 'local_texel': 0, 'brick_pitch': 50, 'allocation': 2400, 'address': 1163}), ({'w': 16, 'h': 8, 'x': 15, 'y': 7, 'b': 2, 'base': 11, 'd': 11, 'z': 6, 'meta': 2}, {'brick_columns': 4, 'brick_rows': 4, 'brick_layers': 4, 'brick_xy': 15, 'brick_id': 47, 'local_slice': 0, 'local_texel': 7, 'brick_pitch': 50, 'allocation': 3200, 'address': 2377}), ({'w': 18, 'h': 10, 'x': 16, 'y': 8, 'b': 2, 'base': 11, 'd': 12, 'z': 7, 'meta': 2}, {'brick_columns': 5, 'brick_rows': 5, 'brick_layers': 4, 'brick_xy': 24, 'brick_id': 74, 'local_slice': 1, 'local_texel': 8, 'brick_pitch': 50, 'allocation': 5000, 'address': 3729}), ({'w': 7, 'h': 13, 'x': 3, 'y': 12, 'b': 2, 'base': 11, 'd': 13, 'z': 2, 'meta': 2}, {'brick_columns': 2, 'brick_rows': 7, 'brick_layers': 5, 'brick_xy': 12, 'brick_id': 12, 'local_slice': 2, 'local_texel': 19, 'brick_pitch': 50, 'allocation': 3500, 'address': 651})], 2: [({'w': 1, 'h': 1, 'x': 0, 'y': 0, 'b': 3, 'base': 22, 'd': 9, 'z': 0, 'meta': 4}, {'brick_columns': 1, 'brick_rows': 1, 'brick_layers': 3, 'brick_xy': 0, 'brick_id': 0, 'local_slice': 0, 'local_texel': 0, 'brick_pitch': 76, 'allocation': 228, 'address': 26}), ({'w': 7, 'h': 5, 'x': 1, 'y': 2, 'b': 3, 'base': 22, 'd': 10, 'z': 1, 'meta': 4}, {'brick_columns': 2, 'brick_rows': 3, 'brick_layers': 4, 'brick_xy': 2, 'brick_id': 2, 'local_slice': 1, 'local_texel': 9, 'brick_pitch': 76, 'allocation': 1824, 'address': 205}), ({'w': 11, 'h': 9, 'x': 8, 'y': 6, 'b': 3, 'base': 22, 'd': 11, 'z': 3, 'meta': 4}, {'brick_columns': 3, 'brick_rows': 5, 'brick_layers': 4, 'brick_xy': 11, 'brick_id': 26, 'local_slice': 0, 'local_texel': 0, 'brick_pitch': 76, 'allocation': 4560, 'address': 2002}), ({'w': 16, 'h': 8, 'x': 15, 'y': 7, 'b': 3, 'base': 22, 'd': 12, 'z': 6, 'meta': 4}, {'brick_columns': 4, 'brick_rows': 4, 'brick_layers': 4, 'brick_xy': 15, 'brick_id': 47, 'local_slice': 0, 'local_texel': 7, 'brick_pitch': 76, 'allocation': 4864, 'address': 3619}), ({'w': 19, 'h': 11, 'x': 16, 'y': 8, 'b': 3, 'base': 22, 'd': 13, 'z': 7, 'meta': 4}, {'brick_columns': 5, 'brick_rows': 6, 'brick_layers': 5, 'brick_xy': 24, 'brick_id': 84, 'local_slice': 1, 'local_texel': 8, 'brick_pitch': 76, 'allocation': 11400, 'address': 6434}), ({'w': 7, 'h': 13, 'x': 3, 'y': 12, 'b': 3, 'base': 22, 'd': 14, 'z': 2, 'meta': 4}, {'brick_columns': 2, 'brick_rows': 7, 'brick_layers': 5, 'brick_xy': 12, 'brick_id': 12, 'local_slice': 2, 'local_texel': 19, 'brick_pitch': 76, 'allocation': 5320, 'address': 995})], 3: [({'w': 1, 'h': 1, 'x': 0, 'y': 0, 'b': 4, 'base': 33, 'd': 10, 'z': 0, 'meta': 6}, {'brick_columns': 1, 'brick_rows': 1, 'brick_layers': 4, 'brick_xy': 0, 'brick_id': 0, 'local_slice': 0, 'local_texel': 0, 'brick_pitch': 102, 'allocation': 408, 'address': 39}), ({'w': 8, 'h': 6, 'x': 1, 'y': 2, 'b': 4, 'base': 33, 'd': 11, 'z': 1, 'meta': 6}, {'brick_columns': 2, 'brick_rows': 3, 'brick_layers': 4, 'brick_xy': 2, 'brick_id': 2, 'local_slice': 1, 'local_texel': 9, 'brick_pitch': 102, 'allocation': 2448, 'address': 279}), ({'w': 12, 'h': 10, 'x': 8, 'y': 6, 'b': 4, 'base': 33, 'd': 12, 'z': 3, 'meta': 6}, {'brick_columns': 3, 'brick_rows': 5, 'brick_layers': 4, 'brick_xy': 11, 'brick_id': 26, 'local_slice': 0, 'local_texel': 0, 'brick_pitch': 102, 'allocation': 6120, 'address': 2691}), ({'w': 16, 'h': 8, 'x': 15, 'y': 7, 'b': 4, 'base': 33, 'd': 13, 'z': 6, 'meta': 6}, {'brick_columns': 4, 'brick_rows': 4, 'brick_layers': 5, 'brick_xy': 15, 'brick_id': 47, 'local_slice': 0, 'local_texel': 7, 'brick_pitch': 102, 'allocation': 8160, 'address': 4861}), ({'w': 20, 'h': 12, 'x': 16, 'y': 8, 'b': 4, 'base': 33, 'd': 14, 'z': 7, 'meta': 6}, {'brick_columns': 5, 'brick_rows': 6, 'brick_layers': 5, 'brick_xy': 24, 'brick_id': 84, 'local_slice': 1, 'local_texel': 8, 'brick_pitch': 102, 'allocation': 15300, 'address': 8639}), ({'w': 7, 'h': 13, 'x': 3, 'y': 12, 'b': 4, 'base': 33, 'd': 15, 'z': 2, 'meta': 6}, {'brick_columns': 2, 'brick_rows': 7, 'brick_layers': 5, 'brick_xy': 12, 'brick_id': 12, 'local_slice': 2, 'local_texel': 19, 'brick_pitch': 102, 'allocation': 7140, 'address': 1339})], 4: [({'w': 1, 'h': 1, 'x': 0, 'y': 0, 'b': 5, 'base': 44, 'd': 11, 'z': 0, 'meta': 8}, {'brick_columns': 1, 'brick_rows': 1, 'brick_layers': 4, 'brick_xy': 0, 'brick_id': 0, 'local_slice': 0, 'local_texel': 0, 'brick_pitch': 128, 'allocation': 512, 'address': 52}), ({'w': 9, 'h': 7, 'x': 1, 'y': 2, 'b': 5, 'base': 44, 'd': 12, 'z': 1, 'meta': 8}, {'brick_columns': 3, 'brick_rows': 4, 'brick_layers': 4, 'brick_xy': 3, 'brick_id': 3, 'local_slice': 1, 'local_texel': 9, 'brick_pitch': 128, 'allocation': 6144, 'address': 481}), ({'w': 13, 'h': 11, 'x': 8, 'y': 6, 'b': 5, 'base': 44, 'd': 13, 'z': 3, 'meta': 8}, {'brick_columns': 4, 'brick_rows': 6, 'brick_layers': 5, 'brick_xy': 14, 'brick_id': 38, 'local_slice': 0, 'local_texel': 0, 'brick_pitch': 128, 'allocation': 15360, 'address': 4916}), ({'w': 16, 'h': 8, 'x': 15, 'y': 7, 'b': 5, 'base': 44, 'd': 14, 'z': 6, 'meta': 8}, {'brick_columns': 4, 'brick_rows': 4, 'brick_layers': 5, 'brick_xy': 15, 'brick_id': 47, 'local_slice': 0, 'local_texel': 7, 'brick_pitch': 128, 'allocation': 10240, 'address': 6103}), ({'w': 21, 'h': 13, 'x': 16, 'y': 8, 'b': 5, 'base': 44, 'd': 15, 'z': 7, 'meta': 8}, {'brick_columns': 6, 'brick_rows': 7, 'brick_layers': 5, 'brick_xy': 28, 'brick_id': 112, 'local_slice': 1, 'local_texel': 8, 'brick_pitch': 128, 'allocation': 26880, 'address': 14428}), ({'w': 7, 'h': 13, 'x': 3, 'y': 12, 'b': 5, 'base': 44, 'd': 16, 'z': 2, 'meta': 8}, {'brick_columns': 2, 'brick_rows': 7, 'brick_layers': 6, 'brick_xy': 12, 'brick_id': 12, 'local_slice': 2, 'local_texel': 19, 'brick_pitch': 128, 'allocation': 10752, 'address': 1683})], 5: [({'w': 1, 'h': 1, 'x': 0, 'y': 0, 'b': 6, 'base': 55, 'd': 12, 'z': 0, 'meta': 10}, {'brick_columns': 1, 'brick_rows': 1, 'brick_layers': 4, 'brick_xy': 0, 'brick_id': 0, 'local_slice': 0, 'local_texel': 0, 'brick_pitch': 154, 'allocation': 616, 'address': 65}), ({'w': 10, 'h': 8, 'x': 1, 'y': 2, 'b': 6, 'base': 55, 'd': 13, 'z': 1, 'meta': 10}, {'brick_columns': 3, 'brick_rows': 4, 'brick_layers': 5, 'brick_xy': 3, 'brick_id': 3, 'local_slice': 1, 'local_texel': 9, 'brick_pitch': 154, 'allocation': 9240, 'address': 581}), ({'w': 14, 'h': 12, 'x': 8, 'y': 6, 'b': 6, 'base': 55, 'd': 14, 'z': 3, 'meta': 10}, {'brick_columns': 4, 'brick_rows': 6, 'brick_layers': 5, 'brick_xy': 14, 'brick_id': 38, 'local_slice': 0, 'local_texel': 0, 'brick_pitch': 154, 'allocation': 18480, 'address': 5917}), ({'w': 16, 'h': 8, 'x': 15, 'y': 7, 'b': 6, 'base': 55, 'd': 15, 'z': 6, 'meta': 10}, {'brick_columns': 4, 'brick_rows': 4, 'brick_layers': 5, 'brick_xy': 15, 'brick_id': 47, 'local_slice': 0, 'local_texel': 7, 'brick_pitch': 154, 'allocation': 12320, 'address': 7345}), ({'w': 22, 'h': 14, 'x': 16, 'y': 8, 'b': 6, 'base': 55, 'd': 16, 'z': 7, 'meta': 10}, {'brick_columns': 6, 'brick_rows': 7, 'brick_layers': 6, 'brick_xy': 28, 'brick_id': 112, 'local_slice': 1, 'local_texel': 8, 'brick_pitch': 154, 'allocation': 38808, 'address': 17361}), ({'w': 7, 'h': 13, 'x': 3, 'y': 12, 'b': 6, 'base': 55, 'd': 17, 'z': 2, 'meta': 10}, {'brick_columns': 2, 'brick_rows': 7, 'brick_layers': 6, 'brick_xy': 12, 'brick_id': 12, 'local_slice': 2, 'local_texel': 19, 'brick_pitch': 154, 'allocation': 12936, 'address': 2027})]}
for i, (p, expected) in enumerate(cases[N]):
check("layout fixture " + str(i + 1), solve(p), 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 fixture | Actual | Expected | Outcome |
|---|---|---|---|
| layout fixture 1 | {'address': 13, 'allocation': 16, 'brick_columns': 1, 'brick_id': 0, 'brick_layers': 3, 'brick_pitch': 50, 'brick_rows': 1, 'brick_xy': 0, 'local_slice': 0, 'local_texel': 0} | {'address': 13, 'allocation': 150, 'brick_columns': 1, 'brick_id': 0, 'brick_layers': 3, 'brick_pitch': 50, 'brick_rows': 1, 'brick_xy': 0, 'local_slice': 0, 'local_texel': 0} | Failed |
| layout fixture 2 | {'address': 131, 'allocation': 432, 'brick_columns': 2, 'brick_id': 2, 'brick_layers': 3, 'brick_pitch': 50, 'brick_rows': 2, 'brick_xy': 2, 'local_slice': 1, 'local_texel': 9} | {'address': 131, 'allocation': 600, 'brick_columns': 2, 'brick_id': 2, 'brick_layers': 3, 'brick_pitch': 50, 'brick_rows': 2, 'brick_xy': 2, 'local_slice': 1, 'local_texel': 9} | Failed |
| layout fixture 3 | {'address': 1163, 'allocation': 1600, 'brick_columns': 3, 'brick_id': 23, 'brick_layers': 4, 'brick_pitch': 50, 'brick_rows': 4, 'brick_xy': 11, 'local_slice': 0, 'local_texel': 0} | {'address': 1163, 'allocation': 2400, 'brick_columns': 3, 'brick_id': 23, 'brick_layers': 4, 'brick_pitch': 50, 'brick_rows': 4, 'brick_xy': 11, 'local_slice': 0, 'local_texel': 0} | Failed |
| layout fixture 4 | {'address': 2377, 'allocation': 2816, 'brick_columns': 4, 'brick_id': 47, 'brick_layers': 4, 'brick_pitch': 50, 'brick_rows': 4, 'brick_xy': 15, 'local_slice': 0, 'local_texel': 7} | {'address': 2377, 'allocation': 3200, 'brick_columns': 4, 'brick_id': 47, 'brick_layers': 4, 'brick_pitch': 50, 'brick_rows': 4, 'brick_xy': 15, 'local_slice': 0, 'local_texel': 7} | Failed |
| layout fixture 5 | {'address': 3729, 'allocation': 4320, 'brick_columns': 5, 'brick_id': 74, 'brick_layers': 4, 'brick_pitch': 50, 'brick_rows': 5, 'brick_xy': 24, 'local_slice': 1, 'local_texel': 8} | {'address': 3729, 'allocation': 5000, 'brick_columns': 5, 'brick_id': 74, 'brick_layers': 4, 'brick_pitch': 50, 'brick_rows': 5, 'brick_xy': 24, 'local_slice': 1, 'local_texel': 8} | Failed |
| layout fixture 6 | {'address': 651, 'allocation': 2366, 'brick_columns': 2, 'brick_id': 12, 'brick_layers': 5, 'brick_pitch': 50, 'brick_rows': 7, 'brick_xy': 12, 'local_slice': 2, 'local_texel': 19} | {'address': 651, 'allocation': 3500, 'brick_columns': 2, 'brick_id': 12, 'brick_layers': 5, 'brick_pitch': 50, 'brick_rows': 7, 'brick_xy': 12, 'local_slice': 2, 'local_texel': 19} | Failed |
SHA-256 / d5c5549a8e84188acf753a37868aafd694e34cfc23d1e7df2d033a6e3f3128c6
3 / The verified repair
Exit 0"""Failure Map reference implementation. Python standard library only."""
import json
N = 1
observations = []
def solve(p):
p = dict(p)
brick_columns = (p["w"]+3)//4
brick_rows = (p["h"]+1)//2
brick_layers = (p["d"]+2)//3
brick_xy = (p["y"]//2)*brick_columns+p["x"]//4
brick_id = (p["z"]//3)*brick_columns*brick_rows+brick_xy
local_slice = p["z"]%3
local_texel = local_slice*8+(p["y"]%2)*4+p["x"]%4
brick_pitch = 24*p["b"]+p["meta"]
allocation = brick_columns*brick_rows*brick_layers*brick_pitch
address = p["base"]+brick_id*brick_pitch+p["meta"]+local_texel*p["b"]
return {'brick_columns': brick_columns, 'brick_rows': brick_rows, 'brick_layers': brick_layers, 'brick_xy': brick_xy, 'brick_id': brick_id, 'local_slice': local_slice, 'local_texel': local_texel, 'brick_pitch': brick_pitch, 'allocation': allocation, 'address': address}
def check(label, actual, expected):
observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
cases = {1: [({'w': 1, 'h': 1, 'x': 0, 'y': 0, 'b': 2, 'base': 11, 'd': 8, 'z': 0, 'meta': 2}, {'brick_columns': 1, 'brick_rows': 1, 'brick_layers': 3, 'brick_xy': 0, 'brick_id': 0, 'local_slice': 0, 'local_texel': 0, 'brick_pitch': 50, 'allocation': 150, 'address': 13}), ({'w': 6, 'h': 4, 'x': 1, 'y': 2, 'b': 2, 'base': 11, 'd': 9, 'z': 1, 'meta': 2}, {'brick_columns': 2, 'brick_rows': 2, 'brick_layers': 3, 'brick_xy': 2, 'brick_id': 2, 'local_slice': 1, 'local_texel': 9, 'brick_pitch': 50, 'allocation': 600, 'address': 131}), ({'w': 10, 'h': 8, 'x': 8, 'y': 6, 'b': 2, 'base': 11, 'd': 10, 'z': 3, 'meta': 2}, {'brick_columns': 3, 'brick_rows': 4, 'brick_layers': 4, 'brick_xy': 11, 'brick_id': 23, 'local_slice': 0, 'local_texel': 0, 'brick_pitch': 50, 'allocation': 2400, 'address': 1163}), ({'w': 16, 'h': 8, 'x': 15, 'y': 7, 'b': 2, 'base': 11, 'd': 11, 'z': 6, 'meta': 2}, {'brick_columns': 4, 'brick_rows': 4, 'brick_layers': 4, 'brick_xy': 15, 'brick_id': 47, 'local_slice': 0, 'local_texel': 7, 'brick_pitch': 50, 'allocation': 3200, 'address': 2377}), ({'w': 18, 'h': 10, 'x': 16, 'y': 8, 'b': 2, 'base': 11, 'd': 12, 'z': 7, 'meta': 2}, {'brick_columns': 5, 'brick_rows': 5, 'brick_layers': 4, 'brick_xy': 24, 'brick_id': 74, 'local_slice': 1, 'local_texel': 8, 'brick_pitch': 50, 'allocation': 5000, 'address': 3729}), ({'w': 7, 'h': 13, 'x': 3, 'y': 12, 'b': 2, 'base': 11, 'd': 13, 'z': 2, 'meta': 2}, {'brick_columns': 2, 'brick_rows': 7, 'brick_layers': 5, 'brick_xy': 12, 'brick_id': 12, 'local_slice': 2, 'local_texel': 19, 'brick_pitch': 50, 'allocation': 3500, 'address': 651})], 2: [({'w': 1, 'h': 1, 'x': 0, 'y': 0, 'b': 3, 'base': 22, 'd': 9, 'z': 0, 'meta': 4}, {'brick_columns': 1, 'brick_rows': 1, 'brick_layers': 3, 'brick_xy': 0, 'brick_id': 0, 'local_slice': 0, 'local_texel': 0, 'brick_pitch': 76, 'allocation': 228, 'address': 26}), ({'w': 7, 'h': 5, 'x': 1, 'y': 2, 'b': 3, 'base': 22, 'd': 10, 'z': 1, 'meta': 4}, {'brick_columns': 2, 'brick_rows': 3, 'brick_layers': 4, 'brick_xy': 2, 'brick_id': 2, 'local_slice': 1, 'local_texel': 9, 'brick_pitch': 76, 'allocation': 1824, 'address': 205}), ({'w': 11, 'h': 9, 'x': 8, 'y': 6, 'b': 3, 'base': 22, 'd': 11, 'z': 3, 'meta': 4}, {'brick_columns': 3, 'brick_rows': 5, 'brick_layers': 4, 'brick_xy': 11, 'brick_id': 26, 'local_slice': 0, 'local_texel': 0, 'brick_pitch': 76, 'allocation': 4560, 'address': 2002}), ({'w': 16, 'h': 8, 'x': 15, 'y': 7, 'b': 3, 'base': 22, 'd': 12, 'z': 6, 'meta': 4}, {'brick_columns': 4, 'brick_rows': 4, 'brick_layers': 4, 'brick_xy': 15, 'brick_id': 47, 'local_slice': 0, 'local_texel': 7, 'brick_pitch': 76, 'allocation': 4864, 'address': 3619}), ({'w': 19, 'h': 11, 'x': 16, 'y': 8, 'b': 3, 'base': 22, 'd': 13, 'z': 7, 'meta': 4}, {'brick_columns': 5, 'brick_rows': 6, 'brick_layers': 5, 'brick_xy': 24, 'brick_id': 84, 'local_slice': 1, 'local_texel': 8, 'brick_pitch': 76, 'allocation': 11400, 'address': 6434}), ({'w': 7, 'h': 13, 'x': 3, 'y': 12, 'b': 3, 'base': 22, 'd': 14, 'z': 2, 'meta': 4}, {'brick_columns': 2, 'brick_rows': 7, 'brick_layers': 5, 'brick_xy': 12, 'brick_id': 12, 'local_slice': 2, 'local_texel': 19, 'brick_pitch': 76, 'allocation': 5320, 'address': 995})], 3: [({'w': 1, 'h': 1, 'x': 0, 'y': 0, 'b': 4, 'base': 33, 'd': 10, 'z': 0, 'meta': 6}, {'brick_columns': 1, 'brick_rows': 1, 'brick_layers': 4, 'brick_xy': 0, 'brick_id': 0, 'local_slice': 0, 'local_texel': 0, 'brick_pitch': 102, 'allocation': 408, 'address': 39}), ({'w': 8, 'h': 6, 'x': 1, 'y': 2, 'b': 4, 'base': 33, 'd': 11, 'z': 1, 'meta': 6}, {'brick_columns': 2, 'brick_rows': 3, 'brick_layers': 4, 'brick_xy': 2, 'brick_id': 2, 'local_slice': 1, 'local_texel': 9, 'brick_pitch': 102, 'allocation': 2448, 'address': 279}), ({'w': 12, 'h': 10, 'x': 8, 'y': 6, 'b': 4, 'base': 33, 'd': 12, 'z': 3, 'meta': 6}, {'brick_columns': 3, 'brick_rows': 5, 'brick_layers': 4, 'brick_xy': 11, 'brick_id': 26, 'local_slice': 0, 'local_texel': 0, 'brick_pitch': 102, 'allocation': 6120, 'address': 2691}), ({'w': 16, 'h': 8, 'x': 15, 'y': 7, 'b': 4, 'base': 33, 'd': 13, 'z': 6, 'meta': 6}, {'brick_columns': 4, 'brick_rows': 4, 'brick_layers': 5, 'brick_xy': 15, 'brick_id': 47, 'local_slice': 0, 'local_texel': 7, 'brick_pitch': 102, 'allocation': 8160, 'address': 4861}), ({'w': 20, 'h': 12, 'x': 16, 'y': 8, 'b': 4, 'base': 33, 'd': 14, 'z': 7, 'meta': 6}, {'brick_columns': 5, 'brick_rows': 6, 'brick_layers': 5, 'brick_xy': 24, 'brick_id': 84, 'local_slice': 1, 'local_texel': 8, 'brick_pitch': 102, 'allocation': 15300, 'address': 8639}), ({'w': 7, 'h': 13, 'x': 3, 'y': 12, 'b': 4, 'base': 33, 'd': 15, 'z': 2, 'meta': 6}, {'brick_columns': 2, 'brick_rows': 7, 'brick_layers': 5, 'brick_xy': 12, 'brick_id': 12, 'local_slice': 2, 'local_texel': 19, 'brick_pitch': 102, 'allocation': 7140, 'address': 1339})], 4: [({'w': 1, 'h': 1, 'x': 0, 'y': 0, 'b': 5, 'base': 44, 'd': 11, 'z': 0, 'meta': 8}, {'brick_columns': 1, 'brick_rows': 1, 'brick_layers': 4, 'brick_xy': 0, 'brick_id': 0, 'local_slice': 0, 'local_texel': 0, 'brick_pitch': 128, 'allocation': 512, 'address': 52}), ({'w': 9, 'h': 7, 'x': 1, 'y': 2, 'b': 5, 'base': 44, 'd': 12, 'z': 1, 'meta': 8}, {'brick_columns': 3, 'brick_rows': 4, 'brick_layers': 4, 'brick_xy': 3, 'brick_id': 3, 'local_slice': 1, 'local_texel': 9, 'brick_pitch': 128, 'allocation': 6144, 'address': 481}), ({'w': 13, 'h': 11, 'x': 8, 'y': 6, 'b': 5, 'base': 44, 'd': 13, 'z': 3, 'meta': 8}, {'brick_columns': 4, 'brick_rows': 6, 'brick_layers': 5, 'brick_xy': 14, 'brick_id': 38, 'local_slice': 0, 'local_texel': 0, 'brick_pitch': 128, 'allocation': 15360, 'address': 4916}), ({'w': 16, 'h': 8, 'x': 15, 'y': 7, 'b': 5, 'base': 44, 'd': 14, 'z': 6, 'meta': 8}, {'brick_columns': 4, 'brick_rows': 4, 'brick_layers': 5, 'brick_xy': 15, 'brick_id': 47, 'local_slice': 0, 'local_texel': 7, 'brick_pitch': 128, 'allocation': 10240, 'address': 6103}), ({'w': 21, 'h': 13, 'x': 16, 'y': 8, 'b': 5, 'base': 44, 'd': 15, 'z': 7, 'meta': 8}, {'brick_columns': 6, 'brick_rows': 7, 'brick_layers': 5, 'brick_xy': 28, 'brick_id': 112, 'local_slice': 1, 'local_texel': 8, 'brick_pitch': 128, 'allocation': 26880, 'address': 14428}), ({'w': 7, 'h': 13, 'x': 3, 'y': 12, 'b': 5, 'base': 44, 'd': 16, 'z': 2, 'meta': 8}, {'brick_columns': 2, 'brick_rows': 7, 'brick_layers': 6, 'brick_xy': 12, 'brick_id': 12, 'local_slice': 2, 'local_texel': 19, 'brick_pitch': 128, 'allocation': 10752, 'address': 1683})], 5: [({'w': 1, 'h': 1, 'x': 0, 'y': 0, 'b': 6, 'base': 55, 'd': 12, 'z': 0, 'meta': 10}, {'brick_columns': 1, 'brick_rows': 1, 'brick_layers': 4, 'brick_xy': 0, 'brick_id': 0, 'local_slice': 0, 'local_texel': 0, 'brick_pitch': 154, 'allocation': 616, 'address': 65}), ({'w': 10, 'h': 8, 'x': 1, 'y': 2, 'b': 6, 'base': 55, 'd': 13, 'z': 1, 'meta': 10}, {'brick_columns': 3, 'brick_rows': 4, 'brick_layers': 5, 'brick_xy': 3, 'brick_id': 3, 'local_slice': 1, 'local_texel': 9, 'brick_pitch': 154, 'allocation': 9240, 'address': 581}), ({'w': 14, 'h': 12, 'x': 8, 'y': 6, 'b': 6, 'base': 55, 'd': 14, 'z': 3, 'meta': 10}, {'brick_columns': 4, 'brick_rows': 6, 'brick_layers': 5, 'brick_xy': 14, 'brick_id': 38, 'local_slice': 0, 'local_texel': 0, 'brick_pitch': 154, 'allocation': 18480, 'address': 5917}), ({'w': 16, 'h': 8, 'x': 15, 'y': 7, 'b': 6, 'base': 55, 'd': 15, 'z': 6, 'meta': 10}, {'brick_columns': 4, 'brick_rows': 4, 'brick_layers': 5, 'brick_xy': 15, 'brick_id': 47, 'local_slice': 0, 'local_texel': 7, 'brick_pitch': 154, 'allocation': 12320, 'address': 7345}), ({'w': 22, 'h': 14, 'x': 16, 'y': 8, 'b': 6, 'base': 55, 'd': 16, 'z': 7, 'meta': 10}, {'brick_columns': 6, 'brick_rows': 7, 'brick_layers': 6, 'brick_xy': 28, 'brick_id': 112, 'local_slice': 1, 'local_texel': 8, 'brick_pitch': 154, 'allocation': 38808, 'address': 17361}), ({'w': 7, 'h': 13, 'x': 3, 'y': 12, 'b': 6, 'base': 55, 'd': 17, 'z': 2, 'meta': 10}, {'brick_columns': 2, 'brick_rows': 7, 'brick_layers': 6, 'brick_xy': 12, 'brick_id': 12, 'local_slice': 2, 'local_texel': 19, 'brick_pitch': 154, 'allocation': 12936, 'address': 2027})]}
for i, (p, expected) in enumerate(cases[N]):
check("layout fixture " + str(i + 1), solve(p), 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 fixture | Actual | Expected | Outcome |
|---|---|---|---|
| layout fixture 1 | {'address': 13, 'allocation': 150, 'brick_columns': 1, 'brick_id': 0, 'brick_layers': 3, 'brick_pitch': 50, 'brick_rows': 1, 'brick_xy': 0, 'local_slice': 0, 'local_texel': 0} | {'address': 13, 'allocation': 150, 'brick_columns': 1, 'brick_id': 0, 'brick_layers': 3, 'brick_pitch': 50, 'brick_rows': 1, 'brick_xy': 0, 'local_slice': 0, 'local_texel': 0} | Passed |
| layout fixture 2 | {'address': 131, 'allocation': 600, 'brick_columns': 2, 'brick_id': 2, 'brick_layers': 3, 'brick_pitch': 50, 'brick_rows': 2, 'brick_xy': 2, 'local_slice': 1, 'local_texel': 9} | {'address': 131, 'allocation': 600, 'brick_columns': 2, 'brick_id': 2, 'brick_layers': 3, 'brick_pitch': 50, 'brick_rows': 2, 'brick_xy': 2, 'local_slice': 1, 'local_texel': 9} | Passed |
| layout fixture 3 | {'address': 1163, 'allocation': 2400, 'brick_columns': 3, 'brick_id': 23, 'brick_layers': 4, 'brick_pitch': 50, 'brick_rows': 4, 'brick_xy': 11, 'local_slice': 0, 'local_texel': 0} | {'address': 1163, 'allocation': 2400, 'brick_columns': 3, 'brick_id': 23, 'brick_layers': 4, 'brick_pitch': 50, 'brick_rows': 4, 'brick_xy': 11, 'local_slice': 0, 'local_texel': 0} | Passed |
| layout fixture 4 | {'address': 2377, 'allocation': 3200, 'brick_columns': 4, 'brick_id': 47, 'brick_layers': 4, 'brick_pitch': 50, 'brick_rows': 4, 'brick_xy': 15, 'local_slice': 0, 'local_texel': 7} | {'address': 2377, 'allocation': 3200, 'brick_columns': 4, 'brick_id': 47, 'brick_layers': 4, 'brick_pitch': 50, 'brick_rows': 4, 'brick_xy': 15, 'local_slice': 0, 'local_texel': 7} | Passed |
| layout fixture 5 | {'address': 3729, 'allocation': 5000, 'brick_columns': 5, 'brick_id': 74, 'brick_layers': 4, 'brick_pitch': 50, 'brick_rows': 5, 'brick_xy': 24, 'local_slice': 1, 'local_texel': 8} | {'address': 3729, 'allocation': 5000, 'brick_columns': 5, 'brick_id': 74, 'brick_layers': 4, 'brick_pitch': 50, 'brick_rows': 5, 'brick_xy': 24, 'local_slice': 1, 'local_texel': 8} | Passed |
| layout fixture 6 | {'address': 651, 'allocation': 3500, 'brick_columns': 2, 'brick_id': 12, 'brick_layers': 5, 'brick_pitch': 50, 'brick_rows': 7, 'brick_xy': 12, 'local_slice': 2, 'local_texel': 19} | {'address': 651, 'allocation': 3500, 'brick_columns': 2, 'brick_id': 12, 'brick_layers': 5, 'brick_pitch': 50, 'brick_rows': 7, 'brick_xy': 12, 'local_slice': 2, 'local_texel': 19} | Passed |
SHA-256 / 804bb804ed072245735cbc5dc592f092980cf8cece9cc27763b60178735f2fdd
Verification & scope
Stipulated deterministic toy buffer layout; not a graphics API, codec, GPU vendor tiling specification, or hardware-conformance claim. Inputs satisfy the dimensions and bounds stated by the model. 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:24.503327+00:00.
Case digest / 7db70646c33243fa53edda9871dd264a6188da3e70d4ebac06961ec32b4dc458