{"abstract":"parallel candidate arrays drift out of alignment.","category":"Preference pair construction","checks":6,"contract":"Chosen and rejected rows are [pair_id,response]. Return [pair_id,chosen,rejected] for shared IDs in chosen input order.","contract_signature":"chosen, rejected","evaluation_group":"preference-cartesian-alignment","failed_approach":"Padding the shorter list with its last element fabricates a preference for unrelated records.","family":"w3-preference-pair-construction-cartesian-alignment","id":"FA-100066","implementations":{"attempt":{"sha256":"39c6217b3fea5b789f0a57bfd7174a74a7d1ce1c5563522f8de467435e419b2f","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(chosen, rejected):\n    rmap={r[0]:r[1] for r in rejected}\n    return [[c[0],c[1],rmap.get(c[0],rejected[-1][1] if rejected else None)] for c in chosen]\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\np='p'+str(N); q='q'+str(N)\ncheck('reordered keys',solve([[p,'yes'],[q,'up']],[[q,'down'],[p,'no']]),[[p,'yes','no'],[q,'up','down']])\ncheck('missing second match',solve([[p,'yes'],[q,'up']],[[p,'no']]),[[p,'yes','no']])\ncheck('empty both',solve([],[]),[])\ncheck('empty rejected',solve([[p,'yes']],[]),[])\ncheck('empty chosen',solve([],[[p,'no']]),[])\ncheck('unmatched then matched',solve([[q,'up'],[p,'yes']],[[p,'no']]),[[p,'yes','no']])\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":"725b31a10e2356544915c0a12bf52dae5b61743a5e652766ea6d5caf71b2bcdb","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(chosen, rejected):\n    return [[c[0],c[1],r[1]] for c,r in zip(chosen,rejected)]\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\np='p'+str(N); q='q'+str(N)\ncheck('reordered keys',solve([[p,'yes'],[q,'up']],[[q,'down'],[p,'no']]),[[p,'yes','no'],[q,'up','down']])\ncheck('missing second match',solve([[p,'yes'],[q,'up']],[[p,'no']]),[[p,'yes','no']])\ncheck('empty both',solve([],[]),[])\ncheck('empty rejected',solve([[p,'yes']],[]),[])\ncheck('empty chosen',solve([],[[p,'no']]),[])\ncheck('unmatched then matched',solve([[q,'up'],[p,'yes']],[[p,'no']]),[[p,'yes','no']])\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":"These are explicit toy record contracts; they do not claim compatibility with a trainer or improved model behavior. 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":"w3-preference-pair-construction-cartesian-alignment","generated_at":"2026-09-30T16:48:31.261688+00:00","license":"CC0-1.0","python":"3.12.14","seed":1,"split":"open-access"},"relevance":"A small deterministic preference-data transform makes pair semantics inspectable without a training framework.","root_cause":"A positional zip silently truncates candidates when one metadata array is short.","sha256":"2a1a0f5bab7c6e9e6f2e1dc909a457209713a4a4a58515565127d40161159ea6","title":"Preference pairs: parallel candidate arrays drift out of alignment · case 01","variant":1,"variant_policy":"The fixture code references N, supplied as 1 through 5. Fixed boundary checks may repeat. These records share one mechanism and must remain together in evaluation splits.","verified":true,"visibility":"public","verification":{"attempt":{"elapsed_ms":27.651,"exit_code":1,"observations":[{"actual":[["p1","yes","no"],["q1","up","down"]],"check":"reordered keys","expected":[["p1","yes","no"],["q1","up","down"]],"passed":true},{"actual":[["p1","yes","no"],["q1","up","no"]],"check":"missing second match","expected":[["p1","yes","no"]],"passed":false},{"actual":[],"check":"empty both","expected":[],"passed":true},{"actual":[["p1","yes",null]],"check":"empty rejected","expected":[],"passed":false},{"actual":[],"check":"empty chosen","expected":[],"passed":true},{"actual":[["q1","up","no"],["p1","yes","no"]],"check":"unmatched then matched","expected":[["p1","yes","no"]],"passed":false}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"reordered keys\", \"actual\": [[\"p1\", \"yes\", \"no\"], [\"q1\", \"up\", \"down\"]], \"expected\": [[\"p1\", \"yes\", \"no\"], [\"q1\", \"up\", \"down\"]], \"passed\": true}, {\"check\": \"missing second match\", \"actual\": [[\"p1\", \"yes\", \"no\"], [\"q1\", \"up\", \"no\"]], \"expected\": [[\"p1\", \"yes\", \"no\"]], \"passed\": false}, {\"check\": \"empty both\", \"actual\": [], \"expected\": [], \"passed\": true}, {\"check\": \"empty rejected\", \"actual\": [[\"p1\", \"yes\", null]], \"expected\": [], \"passed\": false}, {\"check\": \"empty chosen\", \"actual\": [], \"expected\": [], \"passed\": true}, {\"check\": \"unmatched then matched\", \"actual\": [[\"q1\", \"up\", \"no\"], [\"p1\", \"yes\", \"no\"]], \"expected\": [[\"p1\", \"yes\", \"no\"]], \"passed\": false}], \"passed\": false}\n"},"broken":{"elapsed_ms":28.421,"exit_code":1,"observations":[{"actual":[["p1","yes","down"],["q1","up","no"]],"check":"reordered keys","expected":[["p1","yes","no"],["q1","up","down"]],"passed":false},{"actual":[["p1","yes","no"]],"check":"missing second match","expected":[["p1","yes","no"]],"passed":true},{"actual":[],"check":"empty both","expected":[],"passed":true},{"actual":[],"check":"empty rejected","expected":[],"passed":true},{"actual":[],"check":"empty chosen","expected":[],"passed":true},{"actual":[["q1","up","no"]],"check":"unmatched then matched","expected":[["p1","yes","no"]],"passed":false}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"reordered keys\", \"actual\": [[\"p1\", \"yes\", \"down\"], [\"q1\", \"up\", \"no\"]], \"expected\": [[\"p1\", \"yes\", \"no\"], [\"q1\", \"up\", \"down\"]], \"passed\": false}, {\"check\": \"missing second match\", \"actual\": [[\"p1\", \"yes\", \"no\"]], \"expected\": [[\"p1\", \"yes\", \"no\"]], \"passed\": true}, {\"check\": \"empty both\", \"actual\": [], \"expected\": [], \"passed\": true}, {\"check\": \"empty rejected\", \"actual\": [], \"expected\": [], \"passed\": true}, {\"check\": \"empty chosen\", \"actual\": [], \"expected\": [], \"passed\": true}, {\"check\": \"unmatched then matched\", \"actual\": [[\"q1\", \"up\", \"no\"]], \"expected\": [[\"p1\", \"yes\", \"no\"]], \"passed\": false}], \"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."}}