{"abstract":"The adapter reports an incorrect valid while other fields remain valid.","category":"Astronomical coordinate conventions","checks":6,"contract":"A supplied direction e,n,z is mapped by a stipulated stereographic sky chart with scale 2/(1+z), valid z>-1. Reference chart origin ox,oy is added only after projection. Exact antipode has no finite chart coordinate; inputs here have z>=-1. Output fields are defined by: plane_east = 2*d['e']/(1+d['z']) if d['z']>-1 else None; plane_north = 2*d['n']/(1+d['z']) if d['z']>-1 else None; valid = d['z']>-1; translated_east = d['ox']+2*d['e']/(1+d['z']) if d['z']>-1 else None; translated_north = d['oy']+2*d['n']/(1+d['z']) if d['z']>-1 else None; radial_scale = 2/(1+d['z']) if d['z']>-1 else None","evaluation_group":"astro-celestial-stereographic-projection","failed_approach":"A partial convention repair still uses d['z']>0","family":"s3-astronomical-coordinate-conventions-celestial-stereographic-projection-valid","id":"FA-55781","implementations":{"attempt":{"sha256":"5b16d62743c752c6b6834bdd83610008e40afa2bbd04e90f76f4129ae18dcfa5","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(d):\n    return {'plane_east': 2*d['e']/(1+d['z']) if d['z']>-1 else None, 'plane_north': 2*d['n']/(1+d['z']) if d['z']>-1 else None, 'valid': d['z']>0, 'translated_east': d['ox']+2*d['e']/(1+d['z']) if d['z']>-1 else None, 'translated_north': d['oy']+2*d['n']/(1+d['z']) if d['z']>-1 else None, 'radial_scale': 2/(1+d['z']) if d['z']>-1 else None}\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = {1: [({'e': 2, 'n': 3, 'z': 1, 'ox': 10, 'oy': 20}, {'plane_east': 2.0, 'plane_north': 3.0, 'valid': True, 'translated_east': 12.0, 'translated_north': 23.0, 'radial_scale': 1.0}), ({'e': 2, 'n': 3, 'z': 0, 'ox': 10, 'oy': 20}, {'plane_east': 4.0, 'plane_north': 6.0, 'valid': True, 'translated_east': 14.0, 'translated_north': 26.0, 'radial_scale': 2.0}), ({'e': 2, 'n': 3, 'z': -1, 'ox': 10, 'oy': 20}, {'plane_east': None, 'plane_north': None, 'valid': False, 'translated_east': None, 'translated_north': None, 'radial_scale': None}), ({'e': 2, 'n': 3, 'z': 0.5, 'ox': 10, 'oy': 20}, {'plane_east': 2.6666666666666665, 'plane_north': 4.0, 'valid': True, 'translated_east': 12.666666666666666, 'translated_north': 24.0, 'radial_scale': 1.3333333333333333}), ({'e': 2, 'n': 3, 'z': 1, 'ox': 0, 'oy': 0}, {'plane_east': 2.0, 'plane_north': 3.0, 'valid': True, 'translated_east': 2.0, 'translated_north': 3.0, 'radial_scale': 1.0}), ({'e': 2, 'n': -2, 'z': -0.5, 'ox': 10, 'oy': 20}, {'plane_east': 8.0, 'plane_north': -8.0, 'valid': True, 'translated_east': 18.0, 'translated_north': 12.0, 'radial_scale': 4.0})], 2: [({'e': 3, 'n': 3, 'z': 1, 'ox': 10, 'oy': 20}, {'plane_east': 3.0, 'plane_north': 3.0, 'valid': True, 'translated_east': 13.0, 'translated_north': 23.0, 'radial_scale': 1.0}), ({'e': 3, 'n': 3, 'z': 0, 'ox': 10, 'oy': 20}, {'plane_east': 6.0, 'plane_north': 6.0, 'valid': True, 'translated_east': 16.0, 'translated_north': 26.0, 'radial_scale': 2.0}), ({'e': 3, 'n': 3, 'z': -1, 'ox': 10, 'oy': 20}, {'plane_east': None, 'plane_north': None, 'valid': False, 'translated_east': None, 'translated_north': None, 'radial_scale': None}), ({'e': 3, 'n': 3, 'z': 0.5, 'ox': 10, 'oy': 20}, {'plane_east': 4.0, 'plane_north': 4.0, 'valid': True, 'translated_east': 14.0, 'translated_north': 24.0, 'radial_scale': 1.3333333333333333}), ({'e': 3, 'n': 3, 'z': 1, 'ox': 0, 'oy': 0}, {'plane_east': 3.0, 'plane_north': 3.0, 'valid': True, 'translated_east': 3.0, 'translated_north': 3.0, 'radial_scale': 1.0}), ({'e': 3, 'n': -2, 'z': -0.5, 'ox': 10, 'oy': 20}, {'plane_east': 12.0, 'plane_north': -8.0, 'valid': True, 'translated_east': 22.0, 'translated_north': 12.0, 'radial_scale': 4.0})], 3: [({'e': 4, 'n': 3, 'z': 1, 'ox': 10, 'oy': 20}, {'plane_east': 4.0, 'plane_north': 3.0, 'valid': True, 'translated_east': 14.0, 'translated_north': 23.0, 'radial_scale': 1.0}), ({'e': 4, 'n': 3, 'z': 0, 'ox': 10, 'oy': 20}, {'plane_east': 8.0, 'plane_north': 6.0, 'valid': True, 'translated_east': 18.0, 'translated_north': 26.0, 'radial_scale': 2.0}), ({'e': 4, 'n': 3, 'z': -1, 'ox': 10, 'oy': 20}, {'plane_east': None, 'plane_north': None, 'valid': False, 'translated_east': None, 'translated_north': None, 'radial_scale': None}), ({'e': 4, 'n': 3, 'z': 0.5, 'ox': 10, 'oy': 20}, {'plane_east': 5.333333333333333, 'plane_north': 4.0, 'valid': True, 'translated_east': 15.333333333333332, 'translated_north': 24.0, 'radial_scale': 1.3333333333333333}), ({'e': 4, 'n': 3, 'z': 1, 'ox': 0, 'oy': 0}, {'plane_east': 4.0, 'plane_north': 3.0, 'valid': True, 'translated_east': 4.0, 'translated_north': 3.0, 'radial_scale': 1.0}), ({'e': 4, 'n': -2, 'z': -0.5, 'ox': 10, 'oy': 20}, {'plane_east': 16.0, 'plane_north': -8.0, 'valid': True, 'translated_east': 26.0, 'translated_north': 12.0, 'radial_scale': 4.0})], 4: [({'e': 5, 'n': 3, 'z': 1, 'ox': 10, 'oy': 20}, {'plane_east': 5.0, 'plane_north': 3.0, 'valid': True, 'translated_east': 15.0, 'translated_north': 23.0, 'radial_scale': 1.0}), ({'e': 5, 'n': 3, 'z': 0, 'ox': 10, 'oy': 20}, {'plane_east': 10.0, 'plane_north': 6.0, 'valid': True, 'translated_east': 20.0, 'translated_north': 26.0, 'radial_scale': 2.0}), ({'e': 5, 'n': 3, 'z': -1, 'ox': 10, 'oy': 20}, {'plane_east': None, 'plane_north': None, 'valid': False, 'translated_east': None, 'translated_north': None, 'radial_scale': None}), ({'e': 5, 'n': 3, 'z': 0.5, 'ox': 10, 'oy': 20}, {'plane_east': 6.666666666666667, 'plane_north': 4.0, 'valid': True, 'translated_east': 16.666666666666668, 'translated_north': 24.0, 'radial_scale': 1.3333333333333333}), ({'e': 5, 'n': 3, 'z': 1, 'ox': 0, 'oy': 0}, {'plane_east': 5.0, 'plane_north': 3.0, 'valid': True, 'translated_east': 5.0, 'translated_north': 3.0, 'radial_scale': 1.0}), ({'e': 5, 'n': -2, 'z': -0.5, 'ox': 10, 'oy': 20}, {'plane_east': 20.0, 'plane_north': -8.0, 'valid': True, 'translated_east': 30.0, 'translated_north': 12.0, 'radial_scale': 4.0})], 5: [({'e': 6, 'n': 3, 'z': 1, 'ox': 10, 'oy': 20}, {'plane_east': 6.0, 'plane_north': 3.0, 'valid': True, 'translated_east': 16.0, 'translated_north': 23.0, 'radial_scale': 1.0}), ({'e': 6, 'n': 3, 'z': 0, 'ox': 10, 'oy': 20}, {'plane_east': 12.0, 'plane_north': 6.0, 'valid': True, 'translated_east': 22.0, 'translated_north': 26.0, 'radial_scale': 2.0}), ({'e': 6, 'n': 3, 'z': -1, 'ox': 10, 'oy': 20}, {'plane_east': None, 'plane_north': None, 'valid': False, 'translated_east': None, 'translated_north': None, 'radial_scale': None}), ({'e': 6, 'n': 3, 'z': 0.5, 'ox': 10, 'oy': 20}, {'plane_east': 8.0, 'plane_north': 4.0, 'valid': True, 'translated_east': 18.0, 'translated_north': 24.0, 'radial_scale': 1.3333333333333333}), ({'e': 6, 'n': 3, 'z': 1, 'ox': 0, 'oy': 0}, {'plane_east': 6.0, 'plane_north': 3.0, 'valid': True, 'translated_east': 6.0, 'translated_north': 3.0, 'radial_scale': 1.0}), ({'e': 6, 'n': -2, 'z': -0.5, 'ox': 10, 'oy': 20}, {'plane_east': 24.0, 'plane_north': -8.0, 'valid': True, 'translated_east': 34.0, 'translated_north': 12.0, 'radial_scale': 4.0})]}\nfor i, (record, expected) in enumerate(fixtures[N]):\n    check('astronomical fixture %s' % i, solve(record), 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":"bff90a33058d9b5a371119e14a8327eae412fb10282c89dbd972e96ab38eb5eb","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(d):\n    return {'plane_east': 2*d['e']/(1+d['z']) if d['z']>-1 else None, 'plane_north': 2*d['n']/(1+d['z']) if d['z']>-1 else None, 'valid': d['z']>=-1, 'translated_east': d['ox']+2*d['e']/(1+d['z']) if d['z']>-1 else None, 'translated_north': d['oy']+2*d['n']/(1+d['z']) if d['z']>-1 else None, 'radial_scale': 2/(1+d['z']) if d['z']>-1 else None}\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = {1: [({'e': 2, 'n': 3, 'z': 1, 'ox': 10, 'oy': 20}, {'plane_east': 2.0, 'plane_north': 3.0, 'valid': True, 'translated_east': 12.0, 'translated_north': 23.0, 'radial_scale': 1.0}), ({'e': 2, 'n': 3, 'z': 0, 'ox': 10, 'oy': 20}, {'plane_east': 4.0, 'plane_north': 6.0, 'valid': True, 'translated_east': 14.0, 'translated_north': 26.0, 'radial_scale': 2.0}), ({'e': 2, 'n': 3, 'z': -1, 'ox': 10, 'oy': 20}, {'plane_east': None, 'plane_north': None, 'valid': False, 'translated_east': None, 'translated_north': None, 'radial_scale': None}), ({'e': 2, 'n': 3, 'z': 0.5, 'ox': 10, 'oy': 20}, {'plane_east': 2.6666666666666665, 'plane_north': 4.0, 'valid': True, 'translated_east': 12.666666666666666, 'translated_north': 24.0, 'radial_scale': 1.3333333333333333}), ({'e': 2, 'n': 3, 'z': 1, 'ox': 0, 'oy': 0}, {'plane_east': 2.0, 'plane_north': 3.0, 'valid': True, 'translated_east': 2.0, 'translated_north': 3.0, 'radial_scale': 1.0}), ({'e': 2, 'n': -2, 'z': -0.5, 'ox': 10, 'oy': 20}, {'plane_east': 8.0, 'plane_north': -8.0, 'valid': True, 'translated_east': 18.0, 'translated_north': 12.0, 'radial_scale': 4.0})], 2: [({'e': 3, 'n': 3, 'z': 1, 'ox': 10, 'oy': 20}, {'plane_east': 3.0, 'plane_north': 3.0, 'valid': True, 'translated_east': 13.0, 'translated_north': 23.0, 'radial_scale': 1.0}), ({'e': 3, 'n': 3, 'z': 0, 'ox': 10, 'oy': 20}, {'plane_east': 6.0, 'plane_north': 6.0, 'valid': True, 'translated_east': 16.0, 'translated_north': 26.0, 'radial_scale': 2.0}), ({'e': 3, 'n': 3, 'z': -1, 'ox': 10, 'oy': 20}, {'plane_east': None, 'plane_north': None, 'valid': False, 'translated_east': None, 'translated_north': None, 'radial_scale': None}), ({'e': 3, 'n': 3, 'z': 0.5, 'ox': 10, 'oy': 20}, {'plane_east': 4.0, 'plane_north': 4.0, 'valid': True, 'translated_east': 14.0, 'translated_north': 24.0, 'radial_scale': 1.3333333333333333}), ({'e': 3, 'n': 3, 'z': 1, 'ox': 0, 'oy': 0}, {'plane_east': 3.0, 'plane_north': 3.0, 'valid': True, 'translated_east': 3.0, 'translated_north': 3.0, 'radial_scale': 1.0}), ({'e': 3, 'n': -2, 'z': -0.5, 'ox': 10, 'oy': 20}, {'plane_east': 12.0, 'plane_north': -8.0, 'valid': True, 'translated_east': 22.0, 'translated_north': 12.0, 'radial_scale': 4.0})], 3: [({'e': 4, 'n': 3, 'z': 1, 'ox': 10, 'oy': 20}, {'plane_east': 4.0, 'plane_north': 3.0, 'valid': True, 'translated_east': 14.0, 'translated_north': 23.0, 'radial_scale': 1.0}), ({'e': 4, 'n': 3, 'z': 0, 'ox': 10, 'oy': 20}, {'plane_east': 8.0, 'plane_north': 6.0, 'valid': True, 'translated_east': 18.0, 'translated_north': 26.0, 'radial_scale': 2.0}), ({'e': 4, 'n': 3, 'z': -1, 'ox': 10, 'oy': 20}, {'plane_east': None, 'plane_north': None, 'valid': False, 'translated_east': None, 'translated_north': None, 'radial_scale': None}), ({'e': 4, 'n': 3, 'z': 0.5, 'ox': 10, 'oy': 20}, {'plane_east': 5.333333333333333, 'plane_north': 4.0, 'valid': True, 'translated_east': 15.333333333333332, 'translated_north': 24.0, 'radial_scale': 1.3333333333333333}), ({'e': 4, 'n': 3, 'z': 1, 'ox': 0, 'oy': 0}, {'plane_east': 4.0, 'plane_north': 3.0, 'valid': True, 'translated_east': 4.0, 'translated_north': 3.0, 'radial_scale': 1.0}), ({'e': 4, 'n': -2, 'z': -0.5, 'ox': 10, 'oy': 20}, {'plane_east': 16.0, 'plane_north': -8.0, 'valid': True, 'translated_east': 26.0, 'translated_north': 12.0, 'radial_scale': 4.0})], 4: [({'e': 5, 'n': 3, 'z': 1, 'ox': 10, 'oy': 20}, {'plane_east': 5.0, 'plane_north': 3.0, 'valid': True, 'translated_east': 15.0, 'translated_north': 23.0, 'radial_scale': 1.0}), ({'e': 5, 'n': 3, 'z': 0, 'ox': 10, 'oy': 20}, {'plane_east': 10.0, 'plane_north': 6.0, 'valid': True, 'translated_east': 20.0, 'translated_north': 26.0, 'radial_scale': 2.0}), ({'e': 5, 'n': 3, 'z': -1, 'ox': 10, 'oy': 20}, {'plane_east': None, 'plane_north': None, 'valid': False, 'translated_east': None, 'translated_north': None, 'radial_scale': None}), ({'e': 5, 'n': 3, 'z': 0.5, 'ox': 10, 'oy': 20}, {'plane_east': 6.666666666666667, 'plane_north': 4.0, 'valid': True, 'translated_east': 16.666666666666668, 'translated_north': 24.0, 'radial_scale': 1.3333333333333333}), ({'e': 5, 'n': 3, 'z': 1, 'ox': 0, 'oy': 0}, {'plane_east': 5.0, 'plane_north': 3.0, 'valid': True, 'translated_east': 5.0, 'translated_north': 3.0, 'radial_scale': 1.0}), ({'e': 5, 'n': -2, 'z': -0.5, 'ox': 10, 'oy': 20}, {'plane_east': 20.0, 'plane_north': -8.0, 'valid': True, 'translated_east': 30.0, 'translated_north': 12.0, 'radial_scale': 4.0})], 5: [({'e': 6, 'n': 3, 'z': 1, 'ox': 10, 'oy': 20}, {'plane_east': 6.0, 'plane_north': 3.0, 'valid': True, 'translated_east': 16.0, 'translated_north': 23.0, 'radial_scale': 1.0}), ({'e': 6, 'n': 3, 'z': 0, 'ox': 10, 'oy': 20}, {'plane_east': 12.0, 'plane_north': 6.0, 'valid': True, 'translated_east': 22.0, 'translated_north': 26.0, 'radial_scale': 2.0}), ({'e': 6, 'n': 3, 'z': -1, 'ox': 10, 'oy': 20}, {'plane_east': None, 'plane_north': None, 'valid': False, 'translated_east': None, 'translated_north': None, 'radial_scale': None}), ({'e': 6, 'n': 3, 'z': 0.5, 'ox': 10, 'oy': 20}, {'plane_east': 8.0, 'plane_north': 4.0, 'valid': True, 'translated_east': 18.0, 'translated_north': 24.0, 'radial_scale': 1.3333333333333333}), ({'e': 6, 'n': 3, 'z': 1, 'ox': 0, 'oy': 0}, {'plane_east': 6.0, 'plane_north': 3.0, 'valid': True, 'translated_east': 6.0, 'translated_north': 3.0, 'radial_scale': 1.0}), ({'e': 6, 'n': -2, 'z': -0.5, 'ox': 10, 'oy': 20}, {'plane_east': 24.0, 'plane_north': -8.0, 'valid': True, 'translated_east': 34.0, 'translated_north': 12.0, 'radial_scale': 4.0})]}\nfor i, (record, expected) in enumerate(fixtures[N]):\n    check('astronomical fixture %s' % i, solve(record), 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"},"fixed":{"sha256":"a0b80aee50b23fc7cb3daa90b2eccf63756f35dcf01c810199a8da8b5ce59377","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(d):\n    return {'plane_east': 2*d['e']/(1+d['z']) if d['z']>-1 else None, 'plane_north': 2*d['n']/(1+d['z']) if d['z']>-1 else None, 'valid': d['z']>-1, 'translated_east': d['ox']+2*d['e']/(1+d['z']) if d['z']>-1 else None, 'translated_north': d['oy']+2*d['n']/(1+d['z']) if d['z']>-1 else None, 'radial_scale': 2/(1+d['z']) if d['z']>-1 else None}\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = {1: [({'e': 2, 'n': 3, 'z': 1, 'ox': 10, 'oy': 20}, {'plane_east': 2.0, 'plane_north': 3.0, 'valid': True, 'translated_east': 12.0, 'translated_north': 23.0, 'radial_scale': 1.0}), ({'e': 2, 'n': 3, 'z': 0, 'ox': 10, 'oy': 20}, {'plane_east': 4.0, 'plane_north': 6.0, 'valid': True, 'translated_east': 14.0, 'translated_north': 26.0, 'radial_scale': 2.0}), ({'e': 2, 'n': 3, 'z': -1, 'ox': 10, 'oy': 20}, {'plane_east': None, 'plane_north': None, 'valid': False, 'translated_east': None, 'translated_north': None, 'radial_scale': None}), ({'e': 2, 'n': 3, 'z': 0.5, 'ox': 10, 'oy': 20}, {'plane_east': 2.6666666666666665, 'plane_north': 4.0, 'valid': True, 'translated_east': 12.666666666666666, 'translated_north': 24.0, 'radial_scale': 1.3333333333333333}), ({'e': 2, 'n': 3, 'z': 1, 'ox': 0, 'oy': 0}, {'plane_east': 2.0, 'plane_north': 3.0, 'valid': True, 'translated_east': 2.0, 'translated_north': 3.0, 'radial_scale': 1.0}), ({'e': 2, 'n': -2, 'z': -0.5, 'ox': 10, 'oy': 20}, {'plane_east': 8.0, 'plane_north': -8.0, 'valid': True, 'translated_east': 18.0, 'translated_north': 12.0, 'radial_scale': 4.0})], 2: [({'e': 3, 'n': 3, 'z': 1, 'ox': 10, 'oy': 20}, {'plane_east': 3.0, 'plane_north': 3.0, 'valid': True, 'translated_east': 13.0, 'translated_north': 23.0, 'radial_scale': 1.0}), ({'e': 3, 'n': 3, 'z': 0, 'ox': 10, 'oy': 20}, {'plane_east': 6.0, 'plane_north': 6.0, 'valid': True, 'translated_east': 16.0, 'translated_north': 26.0, 'radial_scale': 2.0}), ({'e': 3, 'n': 3, 'z': -1, 'ox': 10, 'oy': 20}, {'plane_east': None, 'plane_north': None, 'valid': False, 'translated_east': None, 'translated_north': None, 'radial_scale': None}), ({'e': 3, 'n': 3, 'z': 0.5, 'ox': 10, 'oy': 20}, {'plane_east': 4.0, 'plane_north': 4.0, 'valid': True, 'translated_east': 14.0, 'translated_north': 24.0, 'radial_scale': 1.3333333333333333}), ({'e': 3, 'n': 3, 'z': 1, 'ox': 0, 'oy': 0}, {'plane_east': 3.0, 'plane_north': 3.0, 'valid': True, 'translated_east': 3.0, 'translated_north': 3.0, 'radial_scale': 1.0}), ({'e': 3, 'n': -2, 'z': -0.5, 'ox': 10, 'oy': 20}, {'plane_east': 12.0, 'plane_north': -8.0, 'valid': True, 'translated_east': 22.0, 'translated_north': 12.0, 'radial_scale': 4.0})], 3: [({'e': 4, 'n': 3, 'z': 1, 'ox': 10, 'oy': 20}, {'plane_east': 4.0, 'plane_north': 3.0, 'valid': True, 'translated_east': 14.0, 'translated_north': 23.0, 'radial_scale': 1.0}), ({'e': 4, 'n': 3, 'z': 0, 'ox': 10, 'oy': 20}, {'plane_east': 8.0, 'plane_north': 6.0, 'valid': True, 'translated_east': 18.0, 'translated_north': 26.0, 'radial_scale': 2.0}), ({'e': 4, 'n': 3, 'z': -1, 'ox': 10, 'oy': 20}, {'plane_east': None, 'plane_north': None, 'valid': False, 'translated_east': None, 'translated_north': None, 'radial_scale': None}), ({'e': 4, 'n': 3, 'z': 0.5, 'ox': 10, 'oy': 20}, {'plane_east': 5.333333333333333, 'plane_north': 4.0, 'valid': True, 'translated_east': 15.333333333333332, 'translated_north': 24.0, 'radial_scale': 1.3333333333333333}), ({'e': 4, 'n': 3, 'z': 1, 'ox': 0, 'oy': 0}, {'plane_east': 4.0, 'plane_north': 3.0, 'valid': True, 'translated_east': 4.0, 'translated_north': 3.0, 'radial_scale': 1.0}), ({'e': 4, 'n': -2, 'z': -0.5, 'ox': 10, 'oy': 20}, {'plane_east': 16.0, 'plane_north': -8.0, 'valid': True, 'translated_east': 26.0, 'translated_north': 12.0, 'radial_scale': 4.0})], 4: [({'e': 5, 'n': 3, 'z': 1, 'ox': 10, 'oy': 20}, {'plane_east': 5.0, 'plane_north': 3.0, 'valid': True, 'translated_east': 15.0, 'translated_north': 23.0, 'radial_scale': 1.0}), ({'e': 5, 'n': 3, 'z': 0, 'ox': 10, 'oy': 20}, {'plane_east': 10.0, 'plane_north': 6.0, 'valid': True, 'translated_east': 20.0, 'translated_north': 26.0, 'radial_scale': 2.0}), ({'e': 5, 'n': 3, 'z': -1, 'ox': 10, 'oy': 20}, {'plane_east': None, 'plane_north': None, 'valid': False, 'translated_east': None, 'translated_north': None, 'radial_scale': None}), ({'e': 5, 'n': 3, 'z': 0.5, 'ox': 10, 'oy': 20}, {'plane_east': 6.666666666666667, 'plane_north': 4.0, 'valid': True, 'translated_east': 16.666666666666668, 'translated_north': 24.0, 'radial_scale': 1.3333333333333333}), ({'e': 5, 'n': 3, 'z': 1, 'ox': 0, 'oy': 0}, {'plane_east': 5.0, 'plane_north': 3.0, 'valid': True, 'translated_east': 5.0, 'translated_north': 3.0, 'radial_scale': 1.0}), ({'e': 5, 'n': -2, 'z': -0.5, 'ox': 10, 'oy': 20}, {'plane_east': 20.0, 'plane_north': -8.0, 'valid': True, 'translated_east': 30.0, 'translated_north': 12.0, 'radial_scale': 4.0})], 5: [({'e': 6, 'n': 3, 'z': 1, 'ox': 10, 'oy': 20}, {'plane_east': 6.0, 'plane_north': 3.0, 'valid': True, 'translated_east': 16.0, 'translated_north': 23.0, 'radial_scale': 1.0}), ({'e': 6, 'n': 3, 'z': 0, 'ox': 10, 'oy': 20}, {'plane_east': 12.0, 'plane_north': 6.0, 'valid': True, 'translated_east': 22.0, 'translated_north': 26.0, 'radial_scale': 2.0}), ({'e': 6, 'n': 3, 'z': -1, 'ox': 10, 'oy': 20}, {'plane_east': None, 'plane_north': None, 'valid': False, 'translated_east': None, 'translated_north': None, 'radial_scale': None}), ({'e': 6, 'n': 3, 'z': 0.5, 'ox': 10, 'oy': 20}, {'plane_east': 8.0, 'plane_north': 4.0, 'valid': True, 'translated_east': 18.0, 'translated_north': 24.0, 'radial_scale': 1.3333333333333333}), ({'e': 6, 'n': 3, 'z': 1, 'ox': 0, 'oy': 0}, {'plane_east': 6.0, 'plane_north': 3.0, 'valid': True, 'translated_east': 6.0, 'translated_north': 3.0, 'radial_scale': 1.0}), ({'e': 6, 'n': -2, 'z': -0.5, 'ox': 10, 'oy': 20}, {'plane_east': 24.0, 'plane_north': -8.0, 'valid': True, 'translated_east': 34.0, 'translated_north': 12.0, 'radial_scale': 4.0})]}\nfor i, (record, expected) in enumerate(fixtures[N]):\n    check('astronomical fixture %s' % i, solve(record), 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":"Explicitly stipulated finite algebraic adapter; no standards conformance, physical accuracy, or production-library claim. Inputs are the documented finite valid model domain. 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":"s3-astronomical-coordinate-conventions-celestial-stereographic-projection-valid","generated_at":"2026-09-29T14:46:01.115203+00:00","license":"CC0-1.0","python":"3.12.14","seed":1,"split":"open-access"},"relevance":"Catalog, detector, sky-coordinate, and spectroscopy adapters must preserve the association between numeric coordinates and their declared reference conventions.","repair":"Preserve the declared model convention at this site: d['z']>-1","root_cause":"Stereographic domain is replaced by TAN front-hemisphere validity. Faulty expression: d['z']>=-1","sha256":"8eec36ff8058c05daf635d2f8aa95ae913e5154bf63f91024f1f68b5097c1adb","title":"Celestial stereographic projection: Stereographic domain is replaced by TAN front-hemisphere validity · case 01","variant":1,"variant_policy":"Five numbered records share a model and may reuse boundary fixtures.","verification":{"attempt":{"elapsed_ms":40.625,"exit_code":1,"observations":[{"actual":{"plane_east":2.0,"plane_north":3.0,"radial_scale":1.0,"translated_east":12.0,"translated_north":23.0,"valid":true},"check":"astronomical fixture 0","expected":{"plane_east":2.0,"plane_north":3.0,"radial_scale":1.0,"translated_east":12.0,"translated_north":23.0,"valid":true},"passed":true},{"actual":{"plane_east":4.0,"plane_north":6.0,"radial_scale":2.0,"translated_east":14.0,"translated_north":26.0,"valid":false},"check":"astronomical fixture 1","expected":{"plane_east":4.0,"plane_north":6.0,"radial_scale":2.0,"translated_east":14.0,"translated_north":26.0,"valid":true},"passed":false},{"actual":{"plane_east":null,"plane_north":null,"radial_scale":null,"translated_east":null,"translated_north":null,"valid":false},"check":"astronomical fixture 2","expected":{"plane_east":null,"plane_north":null,"radial_scale":null,"translated_east":null,"translated_north":null,"valid":false},"passed":true},{"actual":{"plane_east":2.6666666666666665,"plane_north":4.0,"radial_scale":1.3333333333333333,"translated_east":12.666666666666666,"translated_north":24.0,"valid":true},"check":"astronomical fixture 3","expected":{"plane_east":2.6666666666666665,"plane_north":4.0,"radial_scale":1.3333333333333333,"translated_east":12.666666666666666,"translated_north":24.0,"valid":true},"passed":true},{"actual":{"plane_east":2.0,"plane_north":3.0,"radial_scale":1.0,"translated_east":2.0,"translated_north":3.0,"valid":true},"check":"astronomical fixture 4","expected":{"plane_east":2.0,"plane_north":3.0,"radial_scale":1.0,"translated_east":2.0,"translated_north":3.0,"valid":true},"passed":true},{"actual":{"plane_east":8.0,"plane_north":-8.0,"radial_scale":4.0,"translated_east":18.0,"translated_north":12.0,"valid":false},"check":"astronomical fixture 5","expected":{"plane_east":8.0,"plane_north":-8.0,"radial_scale":4.0,"translated_east":18.0,"translated_north":12.0,"valid":true},"passed":false}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"astronomical fixture 0\", \"actual\": {\"plane_east\": 2.0, \"plane_north\": 3.0, \"valid\": true, \"translated_east\": 12.0, \"translated_north\": 23.0, \"radial_scale\": 1.0}, \"expected\": {\"plane_east\": 2.0, \"plane_north\": 3.0, \"valid\": true, \"translated_east\": 12.0, \"translated_north\": 23.0, \"radial_scale\": 1.0}, \"passed\": true}, {\"check\": \"astronomical fixture 1\", \"actual\": {\"plane_east\": 4.0, \"plane_north\": 6.0, \"valid\": false, \"translated_east\": 14.0, \"translated_north\": 26.0, \"radial_scale\": 2.0}, \"expected\": {\"plane_east\": 4.0, \"plane_north\": 6.0, \"valid\": true, \"translated_east\": 14.0, \"translated_north\": 26.0, \"radial_scale\": 2.0}, \"passed\": false}, {\"check\": \"astronomical fixture 2\", \"actual\": {\"plane_east\": null, \"plane_north\": null, \"valid\": false, \"translated_east\": null, \"translated_north\": null, \"radial_scale\": null}, \"expected\": {\"plane_east\": null, \"plane_north\": null, \"valid\": false, \"translated_east\": null, \"translated_north\": null, \"radial_scale\": null}, \"passed\": true}, {\"check\": \"astronomical fixture 3\", \"actual\": {\"plane_east\": 2.6666666666666665, \"plane_north\": 4.0, \"valid\": true, \"translated_east\": 12.666666666666666, \"translated_north\": 24.0, \"radial_scale\": 1.3333333333333333}, \"expected\": {\"plane_east\": 2.6666666666666665, \"plane_north\": 4.0, \"valid\": true, \"translated_east\": 12.666666666666666, \"translated_north\": 24.0, \"radial_scale\": 1.3333333333333333}, \"passed\": true}, {\"check\": \"astronomical fixture 4\", \"actual\": {\"plane_east\": 2.0, \"plane_north\": 3.0, \"valid\": true, \"translated_east\": 2.0, \"translated_north\": 3.0, \"radial_scale\": 1.0}, \"expected\": {\"plane_east\": 2.0, \"plane_north\": 3.0, \"valid\": true, \"translated_east\": 2.0, \"translated_north\": 3.0, \"radial_scale\": 1.0}, \"passed\": true}, {\"check\": \"astronomical fixture 5\", \"actual\": {\"plane_east\": 8.0, \"plane_north\": -8.0, \"valid\": false, \"translated_east\": 18.0, \"translated_north\": 12.0, \"radial_scale\": 4.0}, \"expected\": {\"plane_east\": 8.0, \"plane_north\": -8.0, \"valid\": true, \"translated_east\": 18.0, \"translated_north\": 12.0, \"radial_scale\": 4.0}, \"passed\": false}], \"passed\": false}\n"},"broken":{"elapsed_ms":41.136,"exit_code":1,"observations":[{"actual":{"plane_east":2.0,"plane_north":3.0,"radial_scale":1.0,"translated_east":12.0,"translated_north":23.0,"valid":true},"check":"astronomical fixture 0","expected":{"plane_east":2.0,"plane_north":3.0,"radial_scale":1.0,"translated_east":12.0,"translated_north":23.0,"valid":true},"passed":true},{"actual":{"plane_east":4.0,"plane_north":6.0,"radial_scale":2.0,"translated_east":14.0,"translated_north":26.0,"valid":true},"check":"astronomical fixture 1","expected":{"plane_east":4.0,"plane_north":6.0,"radial_scale":2.0,"translated_east":14.0,"translated_north":26.0,"valid":true},"passed":true},{"actual":{"plane_east":null,"plane_north":null,"radial_scale":null,"translated_east":null,"translated_north":null,"valid":true},"check":"astronomical fixture 2","expected":{"plane_east":null,"plane_north":null,"radial_scale":null,"translated_east":null,"translated_north":null,"valid":false},"passed":false},{"actual":{"plane_east":2.6666666666666665,"plane_north":4.0,"radial_scale":1.3333333333333333,"translated_east":12.666666666666666,"translated_north":24.0,"valid":true},"check":"astronomical fixture 3","expected":{"plane_east":2.6666666666666665,"plane_north":4.0,"radial_scale":1.3333333333333333,"translated_east":12.666666666666666,"translated_north":24.0,"valid":true},"passed":true},{"actual":{"plane_east":2.0,"plane_north":3.0,"radial_scale":1.0,"translated_east":2.0,"translated_north":3.0,"valid":true},"check":"astronomical fixture 4","expected":{"plane_east":2.0,"plane_north":3.0,"radial_scale":1.0,"translated_east":2.0,"translated_north":3.0,"valid":true},"passed":true},{"actual":{"plane_east":8.0,"plane_north":-8.0,"radial_scale":4.0,"translated_east":18.0,"translated_north":12.0,"valid":true},"check":"astronomical fixture 5","expected":{"plane_east":8.0,"plane_north":-8.0,"radial_scale":4.0,"translated_east":18.0,"translated_north":12.0,"valid":true},"passed":true}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"astronomical fixture 0\", \"actual\": {\"plane_east\": 2.0, \"plane_north\": 3.0, \"valid\": true, \"translated_east\": 12.0, \"translated_north\": 23.0, \"radial_scale\": 1.0}, \"expected\": {\"plane_east\": 2.0, \"plane_north\": 3.0, \"valid\": true, \"translated_east\": 12.0, \"translated_north\": 23.0, \"radial_scale\": 1.0}, \"passed\": true}, {\"check\": \"astronomical fixture 1\", \"actual\": {\"plane_east\": 4.0, \"plane_north\": 6.0, \"valid\": true, \"translated_east\": 14.0, \"translated_north\": 26.0, \"radial_scale\": 2.0}, \"expected\": {\"plane_east\": 4.0, \"plane_north\": 6.0, \"valid\": true, \"translated_east\": 14.0, \"translated_north\": 26.0, \"radial_scale\": 2.0}, \"passed\": true}, {\"check\": \"astronomical fixture 2\", \"actual\": {\"plane_east\": null, \"plane_north\": null, \"valid\": true, \"translated_east\": null, \"translated_north\": null, \"radial_scale\": null}, \"expected\": {\"plane_east\": null, \"plane_north\": null, \"valid\": false, \"translated_east\": null, \"translated_north\": null, \"radial_scale\": null}, \"passed\": false}, {\"check\": \"astronomical fixture 3\", \"actual\": {\"plane_east\": 2.6666666666666665, \"plane_north\": 4.0, \"valid\": true, \"translated_east\": 12.666666666666666, \"translated_north\": 24.0, \"radial_scale\": 1.3333333333333333}, \"expected\": {\"plane_east\": 2.6666666666666665, \"plane_north\": 4.0, \"valid\": true, \"translated_east\": 12.666666666666666, \"translated_north\": 24.0, \"radial_scale\": 1.3333333333333333}, \"passed\": true}, {\"check\": \"astronomical fixture 4\", \"actual\": {\"plane_east\": 2.0, \"plane_north\": 3.0, \"valid\": true, \"translated_east\": 2.0, \"translated_north\": 3.0, \"radial_scale\": 1.0}, \"expected\": {\"plane_east\": 2.0, \"plane_north\": 3.0, \"valid\": true, \"translated_east\": 2.0, \"translated_north\": 3.0, \"radial_scale\": 1.0}, \"passed\": true}, {\"check\": \"astronomical fixture 5\", \"actual\": {\"plane_east\": 8.0, \"plane_north\": -8.0, \"valid\": true, \"translated_east\": 18.0, \"translated_north\": 12.0, \"radial_scale\": 4.0}, \"expected\": {\"plane_east\": 8.0, \"plane_north\": -8.0, \"valid\": true, \"translated_east\": 18.0, \"translated_north\": 12.0, \"radial_scale\": 4.0}, \"passed\": true}], \"passed\": false}\n"},"fixed":{"elapsed_ms":39.465,"exit_code":0,"observations":[{"actual":{"plane_east":2.0,"plane_north":3.0,"radial_scale":1.0,"translated_east":12.0,"translated_north":23.0,"valid":true},"check":"astronomical fixture 0","expected":{"plane_east":2.0,"plane_north":3.0,"radial_scale":1.0,"translated_east":12.0,"translated_north":23.0,"valid":true},"passed":true},{"actual":{"plane_east":4.0,"plane_north":6.0,"radial_scale":2.0,"translated_east":14.0,"translated_north":26.0,"valid":true},"check":"astronomical fixture 1","expected":{"plane_east":4.0,"plane_north":6.0,"radial_scale":2.0,"translated_east":14.0,"translated_north":26.0,"valid":true},"passed":true},{"actual":{"plane_east":null,"plane_north":null,"radial_scale":null,"translated_east":null,"translated_north":null,"valid":false},"check":"astronomical fixture 2","expected":{"plane_east":null,"plane_north":null,"radial_scale":null,"translated_east":null,"translated_north":null,"valid":false},"passed":true},{"actual":{"plane_east":2.6666666666666665,"plane_north":4.0,"radial_scale":1.3333333333333333,"translated_east":12.666666666666666,"translated_north":24.0,"valid":true},"check":"astronomical fixture 3","expected":{"plane_east":2.6666666666666665,"plane_north":4.0,"radial_scale":1.3333333333333333,"translated_east":12.666666666666666,"translated_north":24.0,"valid":true},"passed":true},{"actual":{"plane_east":2.0,"plane_north":3.0,"radial_scale":1.0,"translated_east":2.0,"translated_north":3.0,"valid":true},"check":"astronomical fixture 4","expected":{"plane_east":2.0,"plane_north":3.0,"radial_scale":1.0,"translated_east":2.0,"translated_north":3.0,"valid":true},"passed":true},{"actual":{"plane_east":8.0,"plane_north":-8.0,"radial_scale":4.0,"translated_east":18.0,"translated_north":12.0,"valid":true},"check":"astronomical fixture 5","expected":{"plane_east":8.0,"plane_north":-8.0,"radial_scale":4.0,"translated_east":18.0,"translated_north":12.0,"valid":true},"passed":true}],"passed":true,"stderr":"","stdout":"{\"observations\": [{\"check\": \"astronomical fixture 0\", \"actual\": {\"plane_east\": 2.0, \"plane_north\": 3.0, \"valid\": true, \"translated_east\": 12.0, \"translated_north\": 23.0, \"radial_scale\": 1.0}, \"expected\": {\"plane_east\": 2.0, \"plane_north\": 3.0, \"valid\": true, \"translated_east\": 12.0, \"translated_north\": 23.0, \"radial_scale\": 1.0}, \"passed\": true}, {\"check\": \"astronomical fixture 1\", \"actual\": {\"plane_east\": 4.0, \"plane_north\": 6.0, \"valid\": true, \"translated_east\": 14.0, \"translated_north\": 26.0, \"radial_scale\": 2.0}, \"expected\": {\"plane_east\": 4.0, \"plane_north\": 6.0, \"valid\": true, \"translated_east\": 14.0, \"translated_north\": 26.0, \"radial_scale\": 2.0}, \"passed\": true}, {\"check\": \"astronomical fixture 2\", \"actual\": {\"plane_east\": null, \"plane_north\": null, \"valid\": false, \"translated_east\": null, \"translated_north\": null, \"radial_scale\": null}, \"expected\": {\"plane_east\": null, \"plane_north\": null, \"valid\": false, \"translated_east\": null, \"translated_north\": null, \"radial_scale\": null}, \"passed\": true}, {\"check\": \"astronomical fixture 3\", \"actual\": {\"plane_east\": 2.6666666666666665, \"plane_north\": 4.0, \"valid\": true, \"translated_east\": 12.666666666666666, \"translated_north\": 24.0, \"radial_scale\": 1.3333333333333333}, \"expected\": {\"plane_east\": 2.6666666666666665, \"plane_north\": 4.0, \"valid\": true, \"translated_east\": 12.666666666666666, \"translated_north\": 24.0, \"radial_scale\": 1.3333333333333333}, \"passed\": true}, {\"check\": \"astronomical fixture 4\", \"actual\": {\"plane_east\": 2.0, \"plane_north\": 3.0, \"valid\": true, \"translated_east\": 2.0, \"translated_north\": 3.0, \"radial_scale\": 1.0}, \"expected\": {\"plane_east\": 2.0, \"plane_north\": 3.0, \"valid\": true, \"translated_east\": 2.0, \"translated_north\": 3.0, \"radial_scale\": 1.0}, \"passed\": true}, {\"check\": \"astronomical fixture 5\", \"actual\": {\"plane_east\": 8.0, \"plane_north\": -8.0, \"valid\": true, \"translated_east\": 18.0, \"translated_north\": 12.0, \"radial_scale\": 4.0}, \"expected\": {\"plane_east\": 8.0, \"plane_north\": -8.0, \"valid\": true, \"translated_east\": 18.0, \"translated_north\": 12.0, \"radial_scale\": 4.0}, \"passed\": true}], \"passed\": true}\n"}},"verified":true,"visibility":"public"}