{"abstract":"The adapter reports an incorrect reference x while other fields remain valid.","category":"Astronomical coordinate conventions","checks":6,"contract":"A stipulated small-field interferometer phase-center update supplies old uvw u,v,w and direction differences l,m,nminus1. Delay cycles are u*l+v*m+w*nminus1. Visibility represented by phase cycles subtracts this delay; image tangent reference and phase provenance change together. Output fields are defined by: delay_cycles = d['u']*d['l']+d['v']*d['m']+d['w']*d['dn']; shifted_phase = d['phase']-d['u']*d['l']-d['v']*d['m']-d['w']*d['dn']; reference_x = d['oldx']+d['l']; reference_y = d['oldy']+d['m']; inverse_delay = -d['u']*d['l']-d['v']*d['m']-d['w']*d['dn']; line_of_sight_direction = 1+d['dn']","evaluation_group":"astro-phase-center-shift","failed_approach":"A partial convention repair still uses d['l']","family":"s3-astronomical-coordinate-conventions-phase-center-shift-reference_x","id":"FA-55181","implementations":{"attempt":{"sha256":"0fcc25c6a2facc630c275e481377cae21bdc3e75123b88b67d0bad5e0a4f39e4","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(d):\n    return {'delay_cycles': d['u']*d['l']+d['v']*d['m']+d['w']*d['dn'], 'shifted_phase': d['phase']-d['u']*d['l']-d['v']*d['m']-d['w']*d['dn'], 'reference_x': d['l'], 'reference_y': d['oldy']+d['m'], 'inverse_delay': -d['u']*d['l']-d['v']*d['m']-d['w']*d['dn'], 'line_of_sight_direction': 1+d['dn']}\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = {1: [({'u': 3, 'v': 5, 'w': 7, 'l': 2, 'm': -1, 'dn': 1, 'phase': 10, 'oldx': 20, 'oldy': 30}, {'delay_cycles': 8, 'shifted_phase': 2, 'reference_x': 22, 'reference_y': 29, 'inverse_delay': -8, 'line_of_sight_direction': 2}), ({'u': 3, 'v': 5, 'w': 7, 'l': 0, 'm': 0, 'dn': 0, 'phase': 10, 'oldx': 20, 'oldy': 30}, {'delay_cycles': 0, 'shifted_phase': 10, 'reference_x': 20, 'reference_y': 30, 'inverse_delay': 0, 'line_of_sight_direction': 1}), ({'u': 3, 'v': 5, 'w': 0, 'l': 2, 'm': -1, 'dn': 1, 'phase': 10, 'oldx': 20, 'oldy': 30}, {'delay_cycles': 1, 'shifted_phase': 9, 'reference_x': 22, 'reference_y': 29, 'inverse_delay': -1, 'line_of_sight_direction': 2}), ({'u': 3, 'v': 5, 'w': 7, 'l': 2, 'm': -1, 'dn': -2, 'phase': 10, 'oldx': 20, 'oldy': 30}, {'delay_cycles': -13, 'shifted_phase': 23, 'reference_x': 22, 'reference_y': 29, 'inverse_delay': 13, 'line_of_sight_direction': -1}), ({'u': 3, 'v': 5, 'w': 7, 'l': -3, 'm': 4, 'dn': 1, 'phase': 10, 'oldx': 20, 'oldy': 30}, {'delay_cycles': 18, 'shifted_phase': -8, 'reference_x': 17, 'reference_y': 34, 'inverse_delay': -18, 'line_of_sight_direction': 2}), ({'u': 3, 'v': 0, 'w': 7, 'l': 2, 'm': -1, 'dn': 1, 'phase': 0, 'oldx': 20, 'oldy': 30}, {'delay_cycles': 13, 'shifted_phase': -13, 'reference_x': 22, 'reference_y': 29, 'inverse_delay': -13, 'line_of_sight_direction': 2})], 2: [({'u': 4, 'v': 5, 'w': 7, 'l': 2, 'm': -1, 'dn': 1, 'phase': 10, 'oldx': 20, 'oldy': 30}, {'delay_cycles': 10, 'shifted_phase': 0, 'reference_x': 22, 'reference_y': 29, 'inverse_delay': -10, 'line_of_sight_direction': 2}), ({'u': 4, 'v': 5, 'w': 7, 'l': 0, 'm': 0, 'dn': 0, 'phase': 10, 'oldx': 20, 'oldy': 30}, {'delay_cycles': 0, 'shifted_phase': 10, 'reference_x': 20, 'reference_y': 30, 'inverse_delay': 0, 'line_of_sight_direction': 1}), ({'u': 4, 'v': 5, 'w': 0, 'l': 2, 'm': -1, 'dn': 1, 'phase': 10, 'oldx': 20, 'oldy': 30}, {'delay_cycles': 3, 'shifted_phase': 7, 'reference_x': 22, 'reference_y': 29, 'inverse_delay': -3, 'line_of_sight_direction': 2}), ({'u': 4, 'v': 5, 'w': 7, 'l': 2, 'm': -1, 'dn': -2, 'phase': 10, 'oldx': 20, 'oldy': 30}, {'delay_cycles': -11, 'shifted_phase': 21, 'reference_x': 22, 'reference_y': 29, 'inverse_delay': 11, 'line_of_sight_direction': -1}), ({'u': 4, 'v': 5, 'w': 7, 'l': -3, 'm': 4, 'dn': 1, 'phase': 10, 'oldx': 20, 'oldy': 30}, {'delay_cycles': 15, 'shifted_phase': -5, 'reference_x': 17, 'reference_y': 34, 'inverse_delay': -15, 'line_of_sight_direction': 2}), ({'u': 4, 'v': 0, 'w': 7, 'l': 2, 'm': -1, 'dn': 1, 'phase': 0, 'oldx': 20, 'oldy': 30}, {'delay_cycles': 15, 'shifted_phase': -15, 'reference_x': 22, 'reference_y': 29, 'inverse_delay': -15, 'line_of_sight_direction': 2})], 3: [({'u': 5, 'v': 5, 'w': 7, 'l': 2, 'm': -1, 'dn': 1, 'phase': 10, 'oldx': 20, 'oldy': 30}, {'delay_cycles': 12, 'shifted_phase': -2, 'reference_x': 22, 'reference_y': 29, 'inverse_delay': -12, 'line_of_sight_direction': 2}), ({'u': 5, 'v': 5, 'w': 7, 'l': 0, 'm': 0, 'dn': 0, 'phase': 10, 'oldx': 20, 'oldy': 30}, {'delay_cycles': 0, 'shifted_phase': 10, 'reference_x': 20, 'reference_y': 30, 'inverse_delay': 0, 'line_of_sight_direction': 1}), ({'u': 5, 'v': 5, 'w': 0, 'l': 2, 'm': -1, 'dn': 1, 'phase': 10, 'oldx': 20, 'oldy': 30}, {'delay_cycles': 5, 'shifted_phase': 5, 'reference_x': 22, 'reference_y': 29, 'inverse_delay': -5, 'line_of_sight_direction': 2}), ({'u': 5, 'v': 5, 'w': 7, 'l': 2, 'm': -1, 'dn': -2, 'phase': 10, 'oldx': 20, 'oldy': 30}, {'delay_cycles': -9, 'shifted_phase': 19, 'reference_x': 22, 'reference_y': 29, 'inverse_delay': 9, 'line_of_sight_direction': -1}), ({'u': 5, 'v': 5, 'w': 7, 'l': -3, 'm': 4, 'dn': 1, 'phase': 10, 'oldx': 20, 'oldy': 30}, {'delay_cycles': 12, 'shifted_phase': -2, 'reference_x': 17, 'reference_y': 34, 'inverse_delay': -12, 'line_of_sight_direction': 2}), ({'u': 5, 'v': 0, 'w': 7, 'l': 2, 'm': -1, 'dn': 1, 'phase': 0, 'oldx': 20, 'oldy': 30}, {'delay_cycles': 17, 'shifted_phase': -17, 'reference_x': 22, 'reference_y': 29, 'inverse_delay': -17, 'line_of_sight_direction': 2})], 4: [({'u': 6, 'v': 5, 'w': 7, 'l': 2, 'm': -1, 'dn': 1, 'phase': 10, 'oldx': 20, 'oldy': 30}, {'delay_cycles': 14, 'shifted_phase': -4, 'reference_x': 22, 'reference_y': 29, 'inverse_delay': -14, 'line_of_sight_direction': 2}), ({'u': 6, 'v': 5, 'w': 7, 'l': 0, 'm': 0, 'dn': 0, 'phase': 10, 'oldx': 20, 'oldy': 30}, {'delay_cycles': 0, 'shifted_phase': 10, 'reference_x': 20, 'reference_y': 30, 'inverse_delay': 0, 'line_of_sight_direction': 1}), ({'u': 6, 'v': 5, 'w': 0, 'l': 2, 'm': -1, 'dn': 1, 'phase': 10, 'oldx': 20, 'oldy': 30}, {'delay_cycles': 7, 'shifted_phase': 3, 'reference_x': 22, 'reference_y': 29, 'inverse_delay': -7, 'line_of_sight_direction': 2}), ({'u': 6, 'v': 5, 'w': 7, 'l': 2, 'm': -1, 'dn': -2, 'phase': 10, 'oldx': 20, 'oldy': 30}, {'delay_cycles': -7, 'shifted_phase': 17, 'reference_x': 22, 'reference_y': 29, 'inverse_delay': 7, 'line_of_sight_direction': -1}), ({'u': 6, 'v': 5, 'w': 7, 'l': -3, 'm': 4, 'dn': 1, 'phase': 10, 'oldx': 20, 'oldy': 30}, {'delay_cycles': 9, 'shifted_phase': 1, 'reference_x': 17, 'reference_y': 34, 'inverse_delay': -9, 'line_of_sight_direction': 2}), ({'u': 6, 'v': 0, 'w': 7, 'l': 2, 'm': -1, 'dn': 1, 'phase': 0, 'oldx': 20, 'oldy': 30}, {'delay_cycles': 19, 'shifted_phase': -19, 'reference_x': 22, 'reference_y': 29, 'inverse_delay': -19, 'line_of_sight_direction': 2})], 5: [({'u': 7, 'v': 5, 'w': 7, 'l': 2, 'm': -1, 'dn': 1, 'phase': 10, 'oldx': 20, 'oldy': 30}, {'delay_cycles': 16, 'shifted_phase': -6, 'reference_x': 22, 'reference_y': 29, 'inverse_delay': -16, 'line_of_sight_direction': 2}), ({'u': 7, 'v': 5, 'w': 7, 'l': 0, 'm': 0, 'dn': 0, 'phase': 10, 'oldx': 20, 'oldy': 30}, {'delay_cycles': 0, 'shifted_phase': 10, 'reference_x': 20, 'reference_y': 30, 'inverse_delay': 0, 'line_of_sight_direction': 1}), ({'u': 7, 'v': 5, 'w': 0, 'l': 2, 'm': -1, 'dn': 1, 'phase': 10, 'oldx': 20, 'oldy': 30}, {'delay_cycles': 9, 'shifted_phase': 1, 'reference_x': 22, 'reference_y': 29, 'inverse_delay': -9, 'line_of_sight_direction': 2}), ({'u': 7, 'v': 5, 'w': 7, 'l': 2, 'm': -1, 'dn': -2, 'phase': 10, 'oldx': 20, 'oldy': 30}, {'delay_cycles': -5, 'shifted_phase': 15, 'reference_x': 22, 'reference_y': 29, 'inverse_delay': 5, 'line_of_sight_direction': -1}), ({'u': 7, 'v': 5, 'w': 7, 'l': -3, 'm': 4, 'dn': 1, 'phase': 10, 'oldx': 20, 'oldy': 30}, {'delay_cycles': 6, 'shifted_phase': 4, 'reference_x': 17, 'reference_y': 34, 'inverse_delay': -6, 'line_of_sight_direction': 2}), ({'u': 7, 'v': 0, 'w': 7, 'l': 2, 'm': -1, 'dn': 1, 'phase': 0, 'oldx': 20, 'oldy': 30}, {'delay_cycles': 21, 'shifted_phase': -21, 'reference_x': 22, 'reference_y': 29, 'inverse_delay': -21, 'line_of_sight_direction': 2})]}\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":"35a7898f89534d1d5bbaafa93ec3a7fc54aca193c7a24be279fe8902d5332a85","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(d):\n    return {'delay_cycles': d['u']*d['l']+d['v']*d['m']+d['w']*d['dn'], 'shifted_phase': d['phase']-d['u']*d['l']-d['v']*d['m']-d['w']*d['dn'], 'reference_x': d['oldx']-d['l'], 'reference_y': d['oldy']+d['m'], 'inverse_delay': -d['u']*d['l']-d['v']*d['m']-d['w']*d['dn'], 'line_of_sight_direction': 1+d['dn']}\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = {1: [({'u': 3, 'v': 5, 'w': 7, 'l': 2, 'm': -1, 'dn': 1, 'phase': 10, 'oldx': 20, 'oldy': 30}, {'delay_cycles': 8, 'shifted_phase': 2, 'reference_x': 22, 'reference_y': 29, 'inverse_delay': -8, 'line_of_sight_direction': 2}), ({'u': 3, 'v': 5, 'w': 7, 'l': 0, 'm': 0, 'dn': 0, 'phase': 10, 'oldx': 20, 'oldy': 30}, {'delay_cycles': 0, 'shifted_phase': 10, 'reference_x': 20, 'reference_y': 30, 'inverse_delay': 0, 'line_of_sight_direction': 1}), ({'u': 3, 'v': 5, 'w': 0, 'l': 2, 'm': -1, 'dn': 1, 'phase': 10, 'oldx': 20, 'oldy': 30}, {'delay_cycles': 1, 'shifted_phase': 9, 'reference_x': 22, 'reference_y': 29, 'inverse_delay': -1, 'line_of_sight_direction': 2}), ({'u': 3, 'v': 5, 'w': 7, 'l': 2, 'm': -1, 'dn': -2, 'phase': 10, 'oldx': 20, 'oldy': 30}, {'delay_cycles': -13, 'shifted_phase': 23, 'reference_x': 22, 'reference_y': 29, 'inverse_delay': 13, 'line_of_sight_direction': -1}), ({'u': 3, 'v': 5, 'w': 7, 'l': -3, 'm': 4, 'dn': 1, 'phase': 10, 'oldx': 20, 'oldy': 30}, {'delay_cycles': 18, 'shifted_phase': -8, 'reference_x': 17, 'reference_y': 34, 'inverse_delay': -18, 'line_of_sight_direction': 2}), ({'u': 3, 'v': 0, 'w': 7, 'l': 2, 'm': -1, 'dn': 1, 'phase': 0, 'oldx': 20, 'oldy': 30}, {'delay_cycles': 13, 'shifted_phase': -13, 'reference_x': 22, 'reference_y': 29, 'inverse_delay': -13, 'line_of_sight_direction': 2})], 2: [({'u': 4, 'v': 5, 'w': 7, 'l': 2, 'm': -1, 'dn': 1, 'phase': 10, 'oldx': 20, 'oldy': 30}, {'delay_cycles': 10, 'shifted_phase': 0, 'reference_x': 22, 'reference_y': 29, 'inverse_delay': -10, 'line_of_sight_direction': 2}), ({'u': 4, 'v': 5, 'w': 7, 'l': 0, 'm': 0, 'dn': 0, 'phase': 10, 'oldx': 20, 'oldy': 30}, {'delay_cycles': 0, 'shifted_phase': 10, 'reference_x': 20, 'reference_y': 30, 'inverse_delay': 0, 'line_of_sight_direction': 1}), ({'u': 4, 'v': 5, 'w': 0, 'l': 2, 'm': -1, 'dn': 1, 'phase': 10, 'oldx': 20, 'oldy': 30}, {'delay_cycles': 3, 'shifted_phase': 7, 'reference_x': 22, 'reference_y': 29, 'inverse_delay': -3, 'line_of_sight_direction': 2}), ({'u': 4, 'v': 5, 'w': 7, 'l': 2, 'm': -1, 'dn': -2, 'phase': 10, 'oldx': 20, 'oldy': 30}, {'delay_cycles': -11, 'shifted_phase': 21, 'reference_x': 22, 'reference_y': 29, 'inverse_delay': 11, 'line_of_sight_direction': -1}), ({'u': 4, 'v': 5, 'w': 7, 'l': -3, 'm': 4, 'dn': 1, 'phase': 10, 'oldx': 20, 'oldy': 30}, {'delay_cycles': 15, 'shifted_phase': -5, 'reference_x': 17, 'reference_y': 34, 'inverse_delay': -15, 'line_of_sight_direction': 2}), ({'u': 4, 'v': 0, 'w': 7, 'l': 2, 'm': -1, 'dn': 1, 'phase': 0, 'oldx': 20, 'oldy': 30}, {'delay_cycles': 15, 'shifted_phase': -15, 'reference_x': 22, 'reference_y': 29, 'inverse_delay': -15, 'line_of_sight_direction': 2})], 3: [({'u': 5, 'v': 5, 'w': 7, 'l': 2, 'm': -1, 'dn': 1, 'phase': 10, 'oldx': 20, 'oldy': 30}, {'delay_cycles': 12, 'shifted_phase': -2, 'reference_x': 22, 'reference_y': 29, 'inverse_delay': -12, 'line_of_sight_direction': 2}), ({'u': 5, 'v': 5, 'w': 7, 'l': 0, 'm': 0, 'dn': 0, 'phase': 10, 'oldx': 20, 'oldy': 30}, {'delay_cycles': 0, 'shifted_phase': 10, 'reference_x': 20, 'reference_y': 30, 'inverse_delay': 0, 'line_of_sight_direction': 1}), ({'u': 5, 'v': 5, 'w': 0, 'l': 2, 'm': -1, 'dn': 1, 'phase': 10, 'oldx': 20, 'oldy': 30}, {'delay_cycles': 5, 'shifted_phase': 5, 'reference_x': 22, 'reference_y': 29, 'inverse_delay': -5, 'line_of_sight_direction': 2}), ({'u': 5, 'v': 5, 'w': 7, 'l': 2, 'm': -1, 'dn': -2, 'phase': 10, 'oldx': 20, 'oldy': 30}, {'delay_cycles': -9, 'shifted_phase': 19, 'reference_x': 22, 'reference_y': 29, 'inverse_delay': 9, 'line_of_sight_direction': -1}), ({'u': 5, 'v': 5, 'w': 7, 'l': -3, 'm': 4, 'dn': 1, 'phase': 10, 'oldx': 20, 'oldy': 30}, {'delay_cycles': 12, 'shifted_phase': -2, 'reference_x': 17, 'reference_y': 34, 'inverse_delay': -12, 'line_of_sight_direction': 2}), ({'u': 5, 'v': 0, 'w': 7, 'l': 2, 'm': -1, 'dn': 1, 'phase': 0, 'oldx': 20, 'oldy': 30}, {'delay_cycles': 17, 'shifted_phase': -17, 'reference_x': 22, 'reference_y': 29, 'inverse_delay': -17, 'line_of_sight_direction': 2})], 4: [({'u': 6, 'v': 5, 'w': 7, 'l': 2, 'm': -1, 'dn': 1, 'phase': 10, 'oldx': 20, 'oldy': 30}, {'delay_cycles': 14, 'shifted_phase': -4, 'reference_x': 22, 'reference_y': 29, 'inverse_delay': -14, 'line_of_sight_direction': 2}), ({'u': 6, 'v': 5, 'w': 7, 'l': 0, 'm': 0, 'dn': 0, 'phase': 10, 'oldx': 20, 'oldy': 30}, {'delay_cycles': 0, 'shifted_phase': 10, 'reference_x': 20, 'reference_y': 30, 'inverse_delay': 0, 'line_of_sight_direction': 1}), ({'u': 6, 'v': 5, 'w': 0, 'l': 2, 'm': -1, 'dn': 1, 'phase': 10, 'oldx': 20, 'oldy': 30}, {'delay_cycles': 7, 'shifted_phase': 3, 'reference_x': 22, 'reference_y': 29, 'inverse_delay': -7, 'line_of_sight_direction': 2}), ({'u': 6, 'v': 5, 'w': 7, 'l': 2, 'm': -1, 'dn': -2, 'phase': 10, 'oldx': 20, 'oldy': 30}, {'delay_cycles': -7, 'shifted_phase': 17, 'reference_x': 22, 'reference_y': 29, 'inverse_delay': 7, 'line_of_sight_direction': -1}), ({'u': 6, 'v': 5, 'w': 7, 'l': -3, 'm': 4, 'dn': 1, 'phase': 10, 'oldx': 20, 'oldy': 30}, {'delay_cycles': 9, 'shifted_phase': 1, 'reference_x': 17, 'reference_y': 34, 'inverse_delay': -9, 'line_of_sight_direction': 2}), ({'u': 6, 'v': 0, 'w': 7, 'l': 2, 'm': -1, 'dn': 1, 'phase': 0, 'oldx': 20, 'oldy': 30}, {'delay_cycles': 19, 'shifted_phase': -19, 'reference_x': 22, 'reference_y': 29, 'inverse_delay': -19, 'line_of_sight_direction': 2})], 5: [({'u': 7, 'v': 5, 'w': 7, 'l': 2, 'm': -1, 'dn': 1, 'phase': 10, 'oldx': 20, 'oldy': 30}, {'delay_cycles': 16, 'shifted_phase': -6, 'reference_x': 22, 'reference_y': 29, 'inverse_delay': -16, 'line_of_sight_direction': 2}), ({'u': 7, 'v': 5, 'w': 7, 'l': 0, 'm': 0, 'dn': 0, 'phase': 10, 'oldx': 20, 'oldy': 30}, {'delay_cycles': 0, 'shifted_phase': 10, 'reference_x': 20, 'reference_y': 30, 'inverse_delay': 0, 'line_of_sight_direction': 1}), ({'u': 7, 'v': 5, 'w': 0, 'l': 2, 'm': -1, 'dn': 1, 'phase': 10, 'oldx': 20, 'oldy': 30}, {'delay_cycles': 9, 'shifted_phase': 1, 'reference_x': 22, 'reference_y': 29, 'inverse_delay': -9, 'line_of_sight_direction': 2}), ({'u': 7, 'v': 5, 'w': 7, 'l': 2, 'm': -1, 'dn': -2, 'phase': 10, 'oldx': 20, 'oldy': 30}, {'delay_cycles': -5, 'shifted_phase': 15, 'reference_x': 22, 'reference_y': 29, 'inverse_delay': 5, 'line_of_sight_direction': -1}), ({'u': 7, 'v': 5, 'w': 7, 'l': -3, 'm': 4, 'dn': 1, 'phase': 10, 'oldx': 20, 'oldy': 30}, {'delay_cycles': 6, 'shifted_phase': 4, 'reference_x': 17, 'reference_y': 34, 'inverse_delay': -6, 'line_of_sight_direction': 2}), ({'u': 7, 'v': 0, 'w': 7, 'l': 2, 'm': -1, 'dn': 1, 'phase': 0, 'oldx': 20, 'oldy': 30}, {'delay_cycles': 21, 'shifted_phase': -21, 'reference_x': 22, 'reference_y': 29, 'inverse_delay': -21, 'line_of_sight_direction': 2})]}\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":"e58f8cac8580fcf6bdf205f02a24a14685b4b1738641f8a49478aef4bddc791e","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(d):\n    return {'delay_cycles': d['u']*d['l']+d['v']*d['m']+d['w']*d['dn'], 'shifted_phase': d['phase']-d['u']*d['l']-d['v']*d['m']-d['w']*d['dn'], 'reference_x': d['oldx']+d['l'], 'reference_y': d['oldy']+d['m'], 'inverse_delay': -d['u']*d['l']-d['v']*d['m']-d['w']*d['dn'], 'line_of_sight_direction': 1+d['dn']}\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = {1: [({'u': 3, 'v': 5, 'w': 7, 'l': 2, 'm': -1, 'dn': 1, 'phase': 10, 'oldx': 20, 'oldy': 30}, {'delay_cycles': 8, 'shifted_phase': 2, 'reference_x': 22, 'reference_y': 29, 'inverse_delay': -8, 'line_of_sight_direction': 2}), ({'u': 3, 'v': 5, 'w': 7, 'l': 0, 'm': 0, 'dn': 0, 'phase': 10, 'oldx': 20, 'oldy': 30}, {'delay_cycles': 0, 'shifted_phase': 10, 'reference_x': 20, 'reference_y': 30, 'inverse_delay': 0, 'line_of_sight_direction': 1}), ({'u': 3, 'v': 5, 'w': 0, 'l': 2, 'm': -1, 'dn': 1, 'phase': 10, 'oldx': 20, 'oldy': 30}, {'delay_cycles': 1, 'shifted_phase': 9, 'reference_x': 22, 'reference_y': 29, 'inverse_delay': -1, 'line_of_sight_direction': 2}), ({'u': 3, 'v': 5, 'w': 7, 'l': 2, 'm': -1, 'dn': -2, 'phase': 10, 'oldx': 20, 'oldy': 30}, {'delay_cycles': -13, 'shifted_phase': 23, 'reference_x': 22, 'reference_y': 29, 'inverse_delay': 13, 'line_of_sight_direction': -1}), ({'u': 3, 'v': 5, 'w': 7, 'l': -3, 'm': 4, 'dn': 1, 'phase': 10, 'oldx': 20, 'oldy': 30}, {'delay_cycles': 18, 'shifted_phase': -8, 'reference_x': 17, 'reference_y': 34, 'inverse_delay': -18, 'line_of_sight_direction': 2}), ({'u': 3, 'v': 0, 'w': 7, 'l': 2, 'm': -1, 'dn': 1, 'phase': 0, 'oldx': 20, 'oldy': 30}, {'delay_cycles': 13, 'shifted_phase': -13, 'reference_x': 22, 'reference_y': 29, 'inverse_delay': -13, 'line_of_sight_direction': 2})], 2: [({'u': 4, 'v': 5, 'w': 7, 'l': 2, 'm': -1, 'dn': 1, 'phase': 10, 'oldx': 20, 'oldy': 30}, {'delay_cycles': 10, 'shifted_phase': 0, 'reference_x': 22, 'reference_y': 29, 'inverse_delay': -10, 'line_of_sight_direction': 2}), ({'u': 4, 'v': 5, 'w': 7, 'l': 0, 'm': 0, 'dn': 0, 'phase': 10, 'oldx': 20, 'oldy': 30}, {'delay_cycles': 0, 'shifted_phase': 10, 'reference_x': 20, 'reference_y': 30, 'inverse_delay': 0, 'line_of_sight_direction': 1}), ({'u': 4, 'v': 5, 'w': 0, 'l': 2, 'm': -1, 'dn': 1, 'phase': 10, 'oldx': 20, 'oldy': 30}, {'delay_cycles': 3, 'shifted_phase': 7, 'reference_x': 22, 'reference_y': 29, 'inverse_delay': -3, 'line_of_sight_direction': 2}), ({'u': 4, 'v': 5, 'w': 7, 'l': 2, 'm': -1, 'dn': -2, 'phase': 10, 'oldx': 20, 'oldy': 30}, {'delay_cycles': -11, 'shifted_phase': 21, 'reference_x': 22, 'reference_y': 29, 'inverse_delay': 11, 'line_of_sight_direction': -1}), ({'u': 4, 'v': 5, 'w': 7, 'l': -3, 'm': 4, 'dn': 1, 'phase': 10, 'oldx': 20, 'oldy': 30}, {'delay_cycles': 15, 'shifted_phase': -5, 'reference_x': 17, 'reference_y': 34, 'inverse_delay': -15, 'line_of_sight_direction': 2}), ({'u': 4, 'v': 0, 'w': 7, 'l': 2, 'm': -1, 'dn': 1, 'phase': 0, 'oldx': 20, 'oldy': 30}, {'delay_cycles': 15, 'shifted_phase': -15, 'reference_x': 22, 'reference_y': 29, 'inverse_delay': -15, 'line_of_sight_direction': 2})], 3: [({'u': 5, 'v': 5, 'w': 7, 'l': 2, 'm': -1, 'dn': 1, 'phase': 10, 'oldx': 20, 'oldy': 30}, {'delay_cycles': 12, 'shifted_phase': -2, 'reference_x': 22, 'reference_y': 29, 'inverse_delay': -12, 'line_of_sight_direction': 2}), ({'u': 5, 'v': 5, 'w': 7, 'l': 0, 'm': 0, 'dn': 0, 'phase': 10, 'oldx': 20, 'oldy': 30}, {'delay_cycles': 0, 'shifted_phase': 10, 'reference_x': 20, 'reference_y': 30, 'inverse_delay': 0, 'line_of_sight_direction': 1}), ({'u': 5, 'v': 5, 'w': 0, 'l': 2, 'm': -1, 'dn': 1, 'phase': 10, 'oldx': 20, 'oldy': 30}, {'delay_cycles': 5, 'shifted_phase': 5, 'reference_x': 22, 'reference_y': 29, 'inverse_delay': -5, 'line_of_sight_direction': 2}), ({'u': 5, 'v': 5, 'w': 7, 'l': 2, 'm': -1, 'dn': -2, 'phase': 10, 'oldx': 20, 'oldy': 30}, {'delay_cycles': -9, 'shifted_phase': 19, 'reference_x': 22, 'reference_y': 29, 'inverse_delay': 9, 'line_of_sight_direction': -1}), ({'u': 5, 'v': 5, 'w': 7, 'l': -3, 'm': 4, 'dn': 1, 'phase': 10, 'oldx': 20, 'oldy': 30}, {'delay_cycles': 12, 'shifted_phase': -2, 'reference_x': 17, 'reference_y': 34, 'inverse_delay': -12, 'line_of_sight_direction': 2}), ({'u': 5, 'v': 0, 'w': 7, 'l': 2, 'm': -1, 'dn': 1, 'phase': 0, 'oldx': 20, 'oldy': 30}, {'delay_cycles': 17, 'shifted_phase': -17, 'reference_x': 22, 'reference_y': 29, 'inverse_delay': -17, 'line_of_sight_direction': 2})], 4: [({'u': 6, 'v': 5, 'w': 7, 'l': 2, 'm': -1, 'dn': 1, 'phase': 10, 'oldx': 20, 'oldy': 30}, {'delay_cycles': 14, 'shifted_phase': -4, 'reference_x': 22, 'reference_y': 29, 'inverse_delay': -14, 'line_of_sight_direction': 2}), ({'u': 6, 'v': 5, 'w': 7, 'l': 0, 'm': 0, 'dn': 0, 'phase': 10, 'oldx': 20, 'oldy': 30}, {'delay_cycles': 0, 'shifted_phase': 10, 'reference_x': 20, 'reference_y': 30, 'inverse_delay': 0, 'line_of_sight_direction': 1}), ({'u': 6, 'v': 5, 'w': 0, 'l': 2, 'm': -1, 'dn': 1, 'phase': 10, 'oldx': 20, 'oldy': 30}, {'delay_cycles': 7, 'shifted_phase': 3, 'reference_x': 22, 'reference_y': 29, 'inverse_delay': -7, 'line_of_sight_direction': 2}), ({'u': 6, 'v': 5, 'w': 7, 'l': 2, 'm': -1, 'dn': -2, 'phase': 10, 'oldx': 20, 'oldy': 30}, {'delay_cycles': -7, 'shifted_phase': 17, 'reference_x': 22, 'reference_y': 29, 'inverse_delay': 7, 'line_of_sight_direction': -1}), ({'u': 6, 'v': 5, 'w': 7, 'l': -3, 'm': 4, 'dn': 1, 'phase': 10, 'oldx': 20, 'oldy': 30}, {'delay_cycles': 9, 'shifted_phase': 1, 'reference_x': 17, 'reference_y': 34, 'inverse_delay': -9, 'line_of_sight_direction': 2}), ({'u': 6, 'v': 0, 'w': 7, 'l': 2, 'm': -1, 'dn': 1, 'phase': 0, 'oldx': 20, 'oldy': 30}, {'delay_cycles': 19, 'shifted_phase': -19, 'reference_x': 22, 'reference_y': 29, 'inverse_delay': -19, 'line_of_sight_direction': 2})], 5: [({'u': 7, 'v': 5, 'w': 7, 'l': 2, 'm': -1, 'dn': 1, 'phase': 10, 'oldx': 20, 'oldy': 30}, {'delay_cycles': 16, 'shifted_phase': -6, 'reference_x': 22, 'reference_y': 29, 'inverse_delay': -16, 'line_of_sight_direction': 2}), ({'u': 7, 'v': 5, 'w': 7, 'l': 0, 'm': 0, 'dn': 0, 'phase': 10, 'oldx': 20, 'oldy': 30}, {'delay_cycles': 0, 'shifted_phase': 10, 'reference_x': 20, 'reference_y': 30, 'inverse_delay': 0, 'line_of_sight_direction': 1}), ({'u': 7, 'v': 5, 'w': 0, 'l': 2, 'm': -1, 'dn': 1, 'phase': 10, 'oldx': 20, 'oldy': 30}, {'delay_cycles': 9, 'shifted_phase': 1, 'reference_x': 22, 'reference_y': 29, 'inverse_delay': -9, 'line_of_sight_direction': 2}), ({'u': 7, 'v': 5, 'w': 7, 'l': 2, 'm': -1, 'dn': -2, 'phase': 10, 'oldx': 20, 'oldy': 30}, {'delay_cycles': -5, 'shifted_phase': 15, 'reference_x': 22, 'reference_y': 29, 'inverse_delay': 5, 'line_of_sight_direction': -1}), ({'u': 7, 'v': 5, 'w': 7, 'l': -3, 'm': 4, 'dn': 1, 'phase': 10, 'oldx': 20, 'oldy': 30}, {'delay_cycles': 6, 'shifted_phase': 4, 'reference_x': 17, 'reference_y': 34, 'inverse_delay': -6, 'line_of_sight_direction': 2}), ({'u': 7, 'v': 0, 'w': 7, 'l': 2, 'm': -1, 'dn': 1, 'phase': 0, 'oldx': 20, 'oldy': 30}, {'delay_cycles': 21, 'shifted_phase': -21, 'reference_x': 22, 'reference_y': 29, 'inverse_delay': -21, 'line_of_sight_direction': 2})]}\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-phase-center-shift-reference_x","generated_at":"2026-09-29T14:45:55.384965+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['oldx']+d['l']","root_cause":"Phase-center tangent longitude is replaced by an offset-only coordinate. Faulty expression: d['oldx']-d['l']","sha256":"28606461a132a208fcd26c5ec1533a4c339d42aecd21188fa8f43b13e4024602","title":"Phase center shift: Phase-center tangent longitude is replaced by an offset-only coordinate · case 01","variant":1,"variant_policy":"Five numbered records share a model and may reuse boundary fixtures.","verification":{"attempt":{"elapsed_ms":42.992,"exit_code":1,"observations":[{"actual":{"delay_cycles":8,"inverse_delay":-8,"line_of_sight_direction":2,"reference_x":2,"reference_y":29,"shifted_phase":2},"check":"astronomical fixture 0","expected":{"delay_cycles":8,"inverse_delay":-8,"line_of_sight_direction":2,"reference_x":22,"reference_y":29,"shifted_phase":2},"passed":false},{"actual":{"delay_cycles":0,"inverse_delay":0,"line_of_sight_direction":1,"reference_x":0,"reference_y":30,"shifted_phase":10},"check":"astronomical fixture 1","expected":{"delay_cycles":0,"inverse_delay":0,"line_of_sight_direction":1,"reference_x":20,"reference_y":30,"shifted_phase":10},"passed":false},{"actual":{"delay_cycles":1,"inverse_delay":-1,"line_of_sight_direction":2,"reference_x":2,"reference_y":29,"shifted_phase":9},"check":"astronomical fixture 2","expected":{"delay_cycles":1,"inverse_delay":-1,"line_of_sight_direction":2,"reference_x":22,"reference_y":29,"shifted_phase":9},"passed":false},{"actual":{"delay_cycles":-13,"inverse_delay":13,"line_of_sight_direction":-1,"reference_x":2,"reference_y":29,"shifted_phase":23},"check":"astronomical fixture 3","expected":{"delay_cycles":-13,"inverse_delay":13,"line_of_sight_direction":-1,"reference_x":22,"reference_y":29,"shifted_phase":23},"passed":false},{"actual":{"delay_cycles":18,"inverse_delay":-18,"line_of_sight_direction":2,"reference_x":-3,"reference_y":34,"shifted_phase":-8},"check":"astronomical fixture 4","expected":{"delay_cycles":18,"inverse_delay":-18,"line_of_sight_direction":2,"reference_x":17,"reference_y":34,"shifted_phase":-8},"passed":false},{"actual":{"delay_cycles":13,"inverse_delay":-13,"line_of_sight_direction":2,"reference_x":2,"reference_y":29,"shifted_phase":-13},"check":"astronomical fixture 5","expected":{"delay_cycles":13,"inverse_delay":-13,"line_of_sight_direction":2,"reference_x":22,"reference_y":29,"shifted_phase":-13},"passed":false}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"astronomical fixture 0\", \"actual\": {\"delay_cycles\": 8, \"shifted_phase\": 2, \"reference_x\": 2, \"reference_y\": 29, \"inverse_delay\": -8, \"line_of_sight_direction\": 2}, \"expected\": {\"delay_cycles\": 8, \"shifted_phase\": 2, \"reference_x\": 22, \"reference_y\": 29, \"inverse_delay\": -8, \"line_of_sight_direction\": 2}, \"passed\": false}, {\"check\": \"astronomical fixture 1\", \"actual\": {\"delay_cycles\": 0, \"shifted_phase\": 10, \"reference_x\": 0, \"reference_y\": 30, \"inverse_delay\": 0, \"line_of_sight_direction\": 1}, \"expected\": {\"delay_cycles\": 0, \"shifted_phase\": 10, \"reference_x\": 20, \"reference_y\": 30, \"inverse_delay\": 0, \"line_of_sight_direction\": 1}, \"passed\": false}, {\"check\": \"astronomical fixture 2\", \"actual\": {\"delay_cycles\": 1, \"shifted_phase\": 9, \"reference_x\": 2, \"reference_y\": 29, \"inverse_delay\": -1, \"line_of_sight_direction\": 2}, \"expected\": {\"delay_cycles\": 1, \"shifted_phase\": 9, \"reference_x\": 22, \"reference_y\": 29, \"inverse_delay\": -1, \"line_of_sight_direction\": 2}, \"passed\": false}, {\"check\": \"astronomical fixture 3\", \"actual\": {\"delay_cycles\": -13, \"shifted_phase\": 23, \"reference_x\": 2, \"reference_y\": 29, \"inverse_delay\": 13, \"line_of_sight_direction\": -1}, \"expected\": {\"delay_cycles\": -13, \"shifted_phase\": 23, \"reference_x\": 22, \"reference_y\": 29, \"inverse_delay\": 13, \"line_of_sight_direction\": -1}, \"passed\": false}, {\"check\": \"astronomical fixture 4\", \"actual\": {\"delay_cycles\": 18, \"shifted_phase\": -8, \"reference_x\": -3, \"reference_y\": 34, \"inverse_delay\": -18, \"line_of_sight_direction\": 2}, \"expected\": {\"delay_cycles\": 18, \"shifted_phase\": -8, \"reference_x\": 17, \"reference_y\": 34, \"inverse_delay\": -18, \"line_of_sight_direction\": 2}, \"passed\": false}, {\"check\": \"astronomical fixture 5\", \"actual\": {\"delay_cycles\": 13, \"shifted_phase\": -13, \"reference_x\": 2, \"reference_y\": 29, \"inverse_delay\": -13, \"line_of_sight_direction\": 2}, \"expected\": {\"delay_cycles\": 13, \"shifted_phase\": -13, \"reference_x\": 22, \"reference_y\": 29, \"inverse_delay\": -13, \"line_of_sight_direction\": 2}, \"passed\": false}], \"passed\": false}\n"},"broken":{"elapsed_ms":44.925,"exit_code":1,"observations":[{"actual":{"delay_cycles":8,"inverse_delay":-8,"line_of_sight_direction":2,"reference_x":18,"reference_y":29,"shifted_phase":2},"check":"astronomical fixture 0","expected":{"delay_cycles":8,"inverse_delay":-8,"line_of_sight_direction":2,"reference_x":22,"reference_y":29,"shifted_phase":2},"passed":false},{"actual":{"delay_cycles":0,"inverse_delay":0,"line_of_sight_direction":1,"reference_x":20,"reference_y":30,"shifted_phase":10},"check":"astronomical fixture 1","expected":{"delay_cycles":0,"inverse_delay":0,"line_of_sight_direction":1,"reference_x":20,"reference_y":30,"shifted_phase":10},"passed":true},{"actual":{"delay_cycles":1,"inverse_delay":-1,"line_of_sight_direction":2,"reference_x":18,"reference_y":29,"shifted_phase":9},"check":"astronomical fixture 2","expected":{"delay_cycles":1,"inverse_delay":-1,"line_of_sight_direction":2,"reference_x":22,"reference_y":29,"shifted_phase":9},"passed":false},{"actual":{"delay_cycles":-13,"inverse_delay":13,"line_of_sight_direction":-1,"reference_x":18,"reference_y":29,"shifted_phase":23},"check":"astronomical fixture 3","expected":{"delay_cycles":-13,"inverse_delay":13,"line_of_sight_direction":-1,"reference_x":22,"reference_y":29,"shifted_phase":23},"passed":false},{"actual":{"delay_cycles":18,"inverse_delay":-18,"line_of_sight_direction":2,"reference_x":23,"reference_y":34,"shifted_phase":-8},"check":"astronomical fixture 4","expected":{"delay_cycles":18,"inverse_delay":-18,"line_of_sight_direction":2,"reference_x":17,"reference_y":34,"shifted_phase":-8},"passed":false},{"actual":{"delay_cycles":13,"inverse_delay":-13,"line_of_sight_direction":2,"reference_x":18,"reference_y":29,"shifted_phase":-13},"check":"astronomical fixture 5","expected":{"delay_cycles":13,"inverse_delay":-13,"line_of_sight_direction":2,"reference_x":22,"reference_y":29,"shifted_phase":-13},"passed":false}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"astronomical fixture 0\", \"actual\": {\"delay_cycles\": 8, \"shifted_phase\": 2, \"reference_x\": 18, \"reference_y\": 29, \"inverse_delay\": -8, \"line_of_sight_direction\": 2}, \"expected\": {\"delay_cycles\": 8, \"shifted_phase\": 2, \"reference_x\": 22, \"reference_y\": 29, \"inverse_delay\": -8, \"line_of_sight_direction\": 2}, \"passed\": false}, {\"check\": \"astronomical fixture 1\", \"actual\": {\"delay_cycles\": 0, \"shifted_phase\": 10, \"reference_x\": 20, \"reference_y\": 30, \"inverse_delay\": 0, \"line_of_sight_direction\": 1}, \"expected\": {\"delay_cycles\": 0, \"shifted_phase\": 10, \"reference_x\": 20, \"reference_y\": 30, \"inverse_delay\": 0, \"line_of_sight_direction\": 1}, \"passed\": true}, {\"check\": \"astronomical fixture 2\", \"actual\": {\"delay_cycles\": 1, \"shifted_phase\": 9, \"reference_x\": 18, \"reference_y\": 29, \"inverse_delay\": -1, \"line_of_sight_direction\": 2}, \"expected\": {\"delay_cycles\": 1, \"shifted_phase\": 9, \"reference_x\": 22, \"reference_y\": 29, \"inverse_delay\": -1, \"line_of_sight_direction\": 2}, \"passed\": false}, {\"check\": \"astronomical fixture 3\", \"actual\": {\"delay_cycles\": -13, \"shifted_phase\": 23, \"reference_x\": 18, \"reference_y\": 29, \"inverse_delay\": 13, \"line_of_sight_direction\": -1}, \"expected\": {\"delay_cycles\": -13, \"shifted_phase\": 23, \"reference_x\": 22, \"reference_y\": 29, \"inverse_delay\": 13, \"line_of_sight_direction\": -1}, \"passed\": false}, {\"check\": \"astronomical fixture 4\", \"actual\": {\"delay_cycles\": 18, \"shifted_phase\": -8, \"reference_x\": 23, \"reference_y\": 34, \"inverse_delay\": -18, \"line_of_sight_direction\": 2}, \"expected\": {\"delay_cycles\": 18, \"shifted_phase\": -8, \"reference_x\": 17, \"reference_y\": 34, \"inverse_delay\": -18, \"line_of_sight_direction\": 2}, \"passed\": false}, {\"check\": \"astronomical fixture 5\", \"actual\": {\"delay_cycles\": 13, \"shifted_phase\": -13, \"reference_x\": 18, \"reference_y\": 29, \"inverse_delay\": -13, \"line_of_sight_direction\": 2}, \"expected\": {\"delay_cycles\": 13, \"shifted_phase\": -13, \"reference_x\": 22, \"reference_y\": 29, \"inverse_delay\": -13, \"line_of_sight_direction\": 2}, \"passed\": false}], \"passed\": false}\n"},"fixed":{"elapsed_ms":42.023,"exit_code":0,"observations":[{"actual":{"delay_cycles":8,"inverse_delay":-8,"line_of_sight_direction":2,"reference_x":22,"reference_y":29,"shifted_phase":2},"check":"astronomical fixture 0","expected":{"delay_cycles":8,"inverse_delay":-8,"line_of_sight_direction":2,"reference_x":22,"reference_y":29,"shifted_phase":2},"passed":true},{"actual":{"delay_cycles":0,"inverse_delay":0,"line_of_sight_direction":1,"reference_x":20,"reference_y":30,"shifted_phase":10},"check":"astronomical fixture 1","expected":{"delay_cycles":0,"inverse_delay":0,"line_of_sight_direction":1,"reference_x":20,"reference_y":30,"shifted_phase":10},"passed":true},{"actual":{"delay_cycles":1,"inverse_delay":-1,"line_of_sight_direction":2,"reference_x":22,"reference_y":29,"shifted_phase":9},"check":"astronomical fixture 2","expected":{"delay_cycles":1,"inverse_delay":-1,"line_of_sight_direction":2,"reference_x":22,"reference_y":29,"shifted_phase":9},"passed":true},{"actual":{"delay_cycles":-13,"inverse_delay":13,"line_of_sight_direction":-1,"reference_x":22,"reference_y":29,"shifted_phase":23},"check":"astronomical fixture 3","expected":{"delay_cycles":-13,"inverse_delay":13,"line_of_sight_direction":-1,"reference_x":22,"reference_y":29,"shifted_phase":23},"passed":true},{"actual":{"delay_cycles":18,"inverse_delay":-18,"line_of_sight_direction":2,"reference_x":17,"reference_y":34,"shifted_phase":-8},"check":"astronomical fixture 4","expected":{"delay_cycles":18,"inverse_delay":-18,"line_of_sight_direction":2,"reference_x":17,"reference_y":34,"shifted_phase":-8},"passed":true},{"actual":{"delay_cycles":13,"inverse_delay":-13,"line_of_sight_direction":2,"reference_x":22,"reference_y":29,"shifted_phase":-13},"check":"astronomical fixture 5","expected":{"delay_cycles":13,"inverse_delay":-13,"line_of_sight_direction":2,"reference_x":22,"reference_y":29,"shifted_phase":-13},"passed":true}],"passed":true,"stderr":"","stdout":"{\"observations\": [{\"check\": \"astronomical fixture 0\", \"actual\": {\"delay_cycles\": 8, \"shifted_phase\": 2, \"reference_x\": 22, \"reference_y\": 29, \"inverse_delay\": -8, \"line_of_sight_direction\": 2}, \"expected\": {\"delay_cycles\": 8, \"shifted_phase\": 2, \"reference_x\": 22, \"reference_y\": 29, \"inverse_delay\": -8, \"line_of_sight_direction\": 2}, \"passed\": true}, {\"check\": \"astronomical fixture 1\", \"actual\": {\"delay_cycles\": 0, \"shifted_phase\": 10, \"reference_x\": 20, \"reference_y\": 30, \"inverse_delay\": 0, \"line_of_sight_direction\": 1}, \"expected\": {\"delay_cycles\": 0, \"shifted_phase\": 10, \"reference_x\": 20, \"reference_y\": 30, \"inverse_delay\": 0, \"line_of_sight_direction\": 1}, \"passed\": true}, {\"check\": \"astronomical fixture 2\", \"actual\": {\"delay_cycles\": 1, \"shifted_phase\": 9, \"reference_x\": 22, \"reference_y\": 29, \"inverse_delay\": -1, \"line_of_sight_direction\": 2}, \"expected\": {\"delay_cycles\": 1, \"shifted_phase\": 9, \"reference_x\": 22, \"reference_y\": 29, \"inverse_delay\": -1, \"line_of_sight_direction\": 2}, \"passed\": true}, {\"check\": \"astronomical fixture 3\", \"actual\": {\"delay_cycles\": -13, \"shifted_phase\": 23, \"reference_x\": 22, \"reference_y\": 29, \"inverse_delay\": 13, \"line_of_sight_direction\": -1}, \"expected\": {\"delay_cycles\": -13, \"shifted_phase\": 23, \"reference_x\": 22, \"reference_y\": 29, \"inverse_delay\": 13, \"line_of_sight_direction\": -1}, \"passed\": true}, {\"check\": \"astronomical fixture 4\", \"actual\": {\"delay_cycles\": 18, \"shifted_phase\": -8, \"reference_x\": 17, \"reference_y\": 34, \"inverse_delay\": -18, \"line_of_sight_direction\": 2}, \"expected\": {\"delay_cycles\": 18, \"shifted_phase\": -8, \"reference_x\": 17, \"reference_y\": 34, \"inverse_delay\": -18, \"line_of_sight_direction\": 2}, \"passed\": true}, {\"check\": \"astronomical fixture 5\", \"actual\": {\"delay_cycles\": 13, \"shifted_phase\": -13, \"reference_x\": 22, \"reference_y\": 29, \"inverse_delay\": -13, \"line_of_sight_direction\": 2}, \"expected\": {\"delay_cycles\": 13, \"shifted_phase\": -13, \"reference_x\": 22, \"reference_y\": 29, \"inverse_delay\": -13, \"line_of_sight_direction\": 2}, \"passed\": true}], \"passed\": true}\n"}},"verified":true,"visibility":"public"}