{"abstract":"Chunk (3, 5) and (5, 3) generate identical terrain.","category":"Procedural level generation constraints","checks":8,"contract":"Coordinates are zigzag encoded (v >= 0 -> 2v, v < 0 -> -2v-1). seed = (world_seed*1000003 mod 2^32) xor (zz(cx)*73856093 mod 2^32) xor (zz(cy)*19349663 mod 2^32). The generator state is seed, or 1 when seed is 0, advanced by three 32-bit xorshift rounds (<<13, >>17, <<5, each left shift masked to 32 bits). Returns [seed, state % 100].","contract_signature":"world_seed, cx, cy","evaluation_group":"w2-procedural-level-generation-constraints-chunk-seed","failed_approach":"Hashing the coordinate sum makes whole diagonals collide.","family":"w2-procedural-level-generation-constraints-chunk-seed-axis-multiplier","id":"FA-86506","implementations":{"attempt":{"sha256":"5f381fcc676ac36232a85e3c22f188d1503cbc719c6b00df3f8fd57f179f34a4","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(world_seed, cx, cy):\n    def zz(v):\n        return v * 2 if v >= 0 else -v * 2 - 1\n    s = (world_seed * 1000003) & 0xFFFFFFFF\n    s ^= (zz(cx) * 73856093) & 0xFFFFFFFF\n    s ^= (zz(cx + cy) * 19349663) & 0xFFFFFFFF\n    x = s or 1\n    for _ in range(3):\n        x ^= (x << 13) & 0xFFFFFFFF\n        x ^= x >> 17\n        x ^= (x << 5) & 0xFFFFFFFF\n    return [s, x % 100]\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\ncases = [[('mirrored coordinates #1', [7, 3, 5], [294384589, 20]),\n  ('negative neighbour chunk #1', [42, -1, 0], [115747491, 56]),\n  ('regression axis multiplier #1', [42, -1, 1], [78162845, 87]),\n  ('fault site axis multiplier #1', [0, 0, 3], [116097978, 65]),\n  ('regression axis multiplier #2', [1099511627779, -1, 155], [1640198686, 4]),\n  ('regression axis multiplier #3', [1099511627779, 1, 1], [179220301, 79]),\n  ('origin with zero seed #1', [0, 0, 0], [0, 61]),\n  ('control #1', [1, 0, 0], [1000003, 82])],\n [('mirrored coordinates #1', [7, 3, 5], [294384589, 20]),\n  ('negative neighbour chunk #1', [42, -1, 0], [115747491, 56]),\n  ('fault site axis multiplier #1', [0, 0, 3], [116097978, 65]),\n  ('regression axis multiplier #1', [1099511627779, -1, 155], [1640198686, 4]),\n  ('regression axis multiplier #2', [42, -1, 1], [78162845, 87]),\n  ('regression axis multiplier #3', [1099511627779, 1, 1], [179220301, 79]),\n  ('origin with zero seed #1', [0, 0, 0], [0, 61]),\n  ('control #1', [1, 0, 0], [1000003, 82])],\n [('mirrored coordinates #1', [7, 3, 5], [294384589, 20]),\n  ('negative neighbour chunk #1', [42, -1, 0], [115747491, 56]),\n  ('regression axis multiplier #1', [1099511627779, 1, 1], [179220301, 79]),\n  ('regression axis multiplier #2', [0, 2, -3], [341807727, 72]),\n  ('partial repair boundary #1', [1099511627779, -374, 0], [3628518806, 87]),\n  ('regression axis multiplier #3', [1099511627779, -1, 3], [44085550, 32]),\n  ('origin with zero seed #1', [0, 0, 0], [0, 61]),\n  ('control #1', [2147483655, 0, 0], [2154483669, 77])],\n [('mirrored coordinates #1', [7, 3, 5], [294384589, 20]),\n  ('negative neighbour chunk #1', [42, -1, 0], [115747491, 56]),\n  ('regression axis multiplier #1', [1099511627779, -1, 3], [44085550, 32]),\n  ('regression axis multiplier #2', [1, -2, 1], [259333738, 52]),\n  ('regression axis multiplier #3', [0, 2, -3], [341807727, 72]),\n  ('partial repair boundary #1', [2147483655, -2, 0], [2371752642, 72]),\n  ('origin with zero seed #1', [0, 0, 0], [0, 61]),\n  ('control #1', [29957752378028, 0, 0], [3641309956, 8])],\n [('mirrored coordinates #1', [7, 3, 5], [294384589, 20]),\n  ('negative neighbour chunk #1', [42, -1, 0], [115747491, 56]),\n  ('regression axis multiplier #1', [42, -1, -303], [3206913376, 67]),\n  ('regression axis multiplier #2', [17601332116874, -1, 1], [1431083645, 95]),\n  ('partial repair boundary #1', [2147483655, -2, 0], [2371752642, 72]),\n  ('regression axis multiplier #3', [1, -2, 1], [259333738, 52]),\n  ('origin with zero seed #1', [0, 0, 0], [0, 61]),\n  ('control #1', [42, 0, 0], [42000126, 40])]]\nfor label, args, expected in cases[N-1]:\n    check(label, solve(*args), expected)\nprint(json.dumps({\"observations\": observations, \"passed\": all(x[\"passed\"] for x in observations)}, ensure_ascii=False))\nraise SystemExit(0 if all(x[\"passed\"] for x in observations) else 1)\n"},"broken":{"sha256":"b71450f29d8831755ce713bbcd9ce2017c8f31c5f9be6e920159dfd230f9d23a","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(world_seed, cx, cy):\n    def zz(v):\n        return v * 2 if v >= 0 else -v * 2 - 1\n    s = (world_seed * 1000003) & 0xFFFFFFFF\n    s ^= (zz(cx) * 73856093) & 0xFFFFFFFF\n    s ^= (zz(cy) * 73856093) & 0xFFFFFFFF\n    x = s or 1\n    for _ in range(3):\n        x ^= (x << 13) & 0xFFFFFFFF\n        x ^= x >> 17\n        x ^= (x << 5) & 0xFFFFFFFF\n    return [s, x % 100]\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\ncases = [[('mirrored coordinates #1', [7, 3, 5], [294384589, 20]),\n  ('negative neighbour chunk #1', [42, -1, 0], [115747491, 56]),\n  ('regression axis multiplier #1', [42, -1, 1], [78162845, 87]),\n  ('fault site axis multiplier #1', [0, 0, 3], [116097978, 65]),\n  ('regression axis multiplier #2', [1099511627779, -1, 155], [1640198686, 4]),\n  ('regression axis multiplier #3', [1099511627779, 1, 1], [179220301, 79]),\n  ('origin with zero seed #1', [0, 0, 0], [0, 61]),\n  ('control #1', [1, 0, 0], [1000003, 82])],\n [('mirrored coordinates #1', [7, 3, 5], [294384589, 20]),\n  ('negative neighbour chunk #1', [42, -1, 0], [115747491, 56]),\n  ('fault site axis multiplier #1', [0, 0, 3], [116097978, 65]),\n  ('regression axis multiplier #1', [1099511627779, -1, 155], [1640198686, 4]),\n  ('regression axis multiplier #2', [42, -1, 1], [78162845, 87]),\n  ('regression axis multiplier #3', [1099511627779, 1, 1], [179220301, 79]),\n  ('origin with zero seed #1', [0, 0, 0], [0, 61]),\n  ('control #1', [1, 0, 0], [1000003, 82])],\n [('mirrored coordinates #1', [7, 3, 5], [294384589, 20]),\n  ('negative neighbour chunk #1', [42, -1, 0], [115747491, 56]),\n  ('regression axis multiplier #1', [1099511627779, 1, 1], [179220301, 79]),\n  ('regression axis multiplier #2', [0, 2, -3], [341807727, 72]),\n  ('partial repair boundary #1', [1099511627779, -374, 0], [3628518806, 87]),\n  ('regression axis multiplier #3', [1099511627779, -1, 3], [44085550, 32]),\n  ('origin with zero seed #1', [0, 0, 0], [0, 61]),\n  ('control #1', [2147483655, 0, 0], [2154483669, 77])],\n [('mirrored coordinates #1', [7, 3, 5], [294384589, 20]),\n  ('negative neighbour chunk #1', [42, -1, 0], [115747491, 56]),\n  ('regression axis multiplier #1', [1099511627779, -1, 3], [44085550, 32]),\n  ('regression axis multiplier #2', [1, -2, 1], [259333738, 52]),\n  ('regression axis multiplier #3', [0, 2, -3], [341807727, 72]),\n  ('partial repair boundary #1', [2147483655, -2, 0], [2371752642, 72]),\n  ('origin with zero seed #1', [0, 0, 0], [0, 61]),\n  ('control #1', [29957752378028, 0, 0], [3641309956, 8])],\n [('mirrored coordinates #1', [7, 3, 5], [294384589, 20]),\n  ('negative neighbour chunk #1', [42, -1, 0], [115747491, 56]),\n  ('regression axis multiplier #1', [42, -1, -303], [3206913376, 67]),\n  ('regression axis multiplier #2', [17601332116874, -1, 1], [1431083645, 95]),\n  ('partial repair boundary #1', [2147483655, -2, 0], [2371752642, 72]),\n  ('regression axis multiplier #3', [1, -2, 1], [259333738, 52]),\n  ('origin with zero seed #1', [0, 0, 0], [0, 61]),\n  ('control #1', [42, 0, 0], [42000126, 40])]]\nfor label, args, expected in cases[N-1]:\n    check(label, solve(*args), expected)\nprint(json.dumps({\"observations\": observations, \"passed\": all(x[\"passed\"] for x in observations)}, ensure_ascii=False))\nraise SystemExit(0 if all(x[\"passed\"] for x in observations) else 1)\n"}},"limitations":"Deterministic toy contract stipulated for this model; integer or exact arithmetic only, not a reproduction of any specific game engine. 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.","method":"Deterministic executable model with adversarial boundary fixtures.","provenance":{"created_by":"Failure Map","dependencies":"Python standard library","family":"w2-procedural-level-generation-constraints-chunk-seed-axis-multiplier","generated_at":"2026-09-29T14:50:50.198739+00:00","license":"CC0-1.0","python":"3.12.14","seed":1,"split":"open-access"},"relevance":"Procedural generators silently emit unplayable or unfair levels when a single constraint check uses the wrong boundary, axis, neighborhood or update order; the defect is visible in exact generated geometry.","root_cause":"Both axes use the same multiplier, making the hash symmetric.","sha256":"28818aa47ab6493882a1bbfe1d7effc950ffc01a9055422da72d2a94f3407fbe","title":"Chunk seed derivation: Transposed chunks share a seed · case 01","variant":1,"variant_policy":"Five numbered records share a model and may reuse boundary fixtures.","verified":true,"visibility":"public","verification":{"attempt":{"elapsed_ms":40.786,"exit_code":1,"observations":[{"actual":[142048267,81],"check":"mirrored coordinates #1","expected":[294384589,20],"passed":false},{"actual":[130116156,65],"check":"negative neighbour chunk #1","expected":[115747491,56],"passed":false},{"actual":[115747491,56],"check":"regression axis multiplier #1","expected":[78162845,87],"passed":false},{"actual":[116097978,65],"check":"fault site axis multiplier #1","expected":[116097978,65],"passed":true},{"actual":[1735560664,5],"check":"regression axis multiplier #2","expected":[1640198686,4],"passed":false},{"actual":[209529871,42],"check":"regression axis multiplier #3","expected":[179220301,79],"passed":false},{"actual":[0,61],"check":"origin with zero seed #1","expected":[0,61],"passed":true},{"actual":[1000003,82],"check":"control #1","expected":[1000003,82],"passed":true}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"mirrored coordinates #1\", \"actual\": [142048267, 81], \"expected\": [294384589, 20], \"passed\": false}, {\"check\": \"negative neighbour chunk #1\", \"actual\": [130116156, 65], \"expected\": [115747491, 56], \"passed\": false}, {\"check\": \"regression axis multiplier #1\", \"actual\": [115747491, 56], \"expected\": [78162845, 87], \"passed\": false}, {\"check\": \"fault site axis multiplier #1\", \"actual\": [116097978, 65], \"expected\": [116097978, 65], \"passed\": true}, {\"check\": \"regression axis multiplier #2\", \"actual\": [1735560664, 5], \"expected\": [1640198686, 4], \"passed\": false}, {\"check\": \"regression axis multiplier #3\", \"actual\": [209529871, 42], \"expected\": [179220301, 79], \"passed\": false}, {\"check\": \"origin with zero seed #1\", \"actual\": [0, 61], \"expected\": [0, 61], \"passed\": true}, {\"check\": \"control #1\", \"actual\": [1000003, 82], \"expected\": [1000003, 82], \"passed\": true}], \"passed\": false}\n"},"broken":{"elapsed_ms":40.448,"exit_code":1,"observations":[{"actual":[906427993,47],"check":"mirrored coordinates #1","expected":[294384589,20],"passed":false},{"actual":[115747491,56],"check":"negative neighbour chunk #1","expected":[115747491,56],"passed":true},{"actual":[237748761,93],"check":"regression axis multiplier #1","expected":[78162845,87],"passed":false},{"actual":[443136558,49],"check":"fault site axis multiplier #1","expected":[116097978,65],"passed":false},{"actual":[1356913162,20],"check":"regression axis multiplier #2","expected":[1640198686,4],"passed":false},{"actual":[3000009,29],"check":"regression axis multiplier #3","expected":[179220301,79],"passed":false},{"actual":[0,61],"check":"origin with zero seed #1","expected":[0,61],"passed":true},{"actual":[1000003,82],"check":"control #1","expected":[1000003,82],"passed":true}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"mirrored coordinates #1\", \"actual\": [906427993, 47], \"expected\": [294384589, 20], \"passed\": false}, {\"check\": \"negative neighbour chunk #1\", \"actual\": [115747491, 56], \"expected\": [115747491, 56], \"passed\": true}, {\"check\": \"regression axis multiplier #1\", \"actual\": [237748761, 93], \"expected\": [78162845, 87], \"passed\": false}, {\"check\": \"fault site axis multiplier #1\", \"actual\": [443136558, 49], \"expected\": [116097978, 65], \"passed\": false}, {\"check\": \"regression axis multiplier #2\", \"actual\": [1356913162, 20], \"expected\": [1640198686, 4], \"passed\": false}, {\"check\": \"regression axis multiplier #3\", \"actual\": [3000009, 29], \"expected\": [179220301, 79], \"passed\": false}, {\"check\": \"origin with zero seed #1\", \"actual\": [0, 61], \"expected\": [0, 61], \"passed\": true}, {\"check\": \"control #1\", \"actual\": [1000003, 82], \"expected\": [1000003, 82], \"passed\": true}], \"passed\": false}\n"}},"member_only":{"stages":["fixed"],"fields":["implementations.fixed","verification.fixed","harness","repair"],"note":"The verified repair, its recorded checks, the repair description, and the scoring harness are available to members."}}