FA-25856 / Filter interfaces / Open access
Nested field paths serialize as segments without flattening literal dots · case 01
Nested field paths serialize as segments without flattening literal dots is violated by the widget projection.
ROOT CAUSE
The field-path decision uses `{'path':'.'.join(d['path'])}` instead of the stipulated wire-operand-shape projection.
VERIFIED REPAIR
Implement the declared field-path projection: `{'path':d['path']}`.
Unsuccessful approach: The attempted correction `{'path':d['path'][-1:]}` still violates the explicit contract fixtures.
Case contract
The filter wire format represents scalar, set, range and unary constraints with distinct operand structures; omission differs from a null scalar operand. This example checks: Nested field paths serialize as segments without flattening literal dots.
Why this case matters
Filter-widget state and serialization must preserve user constraints while the view changes.
1 / The failure
Exit 1"""Failure Map reference implementation. Python standard library only."""
import json
N = 1
observations = []
def solve(d):
return {'scalar-envelope':({'value':d['scalar']}), 'set-envelope':({'values':d['values']}), 'range-envelope':({'lower':d['lo'],'upper':d['hi']}), 'unary-envelope':({'operator':d['op']} if d['unary'] else {'operator':d['op'],'value':d['scalar']}), 'operator-preserve':(d['op']), 'field-path':({'path':'.'.join(d['path'])})}
def check(label, actual, expected):
observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
fixtures = {1: [({'scalar': None, 'values': [], 'lo': None, 'hi': None, 'op': 'EQ', 'unary': False, 'path': ['a', 'b.c']}, {'scalar-envelope': {'value': None}, 'set-envelope': {'values': []}, 'range-envelope': {'lower': None, 'upper': None}, 'unary-envelope': {'operator': 'EQ', 'value': None}, 'operator-preserve': 'EQ', 'field-path': {'path': ['a', 'b.c']}}), ({'scalar': None, 'values': [], 'lo': None, 'hi': None, 'op': 'not-in', 'unary': True, 'path': ['a', 'b.c']}, {'scalar-envelope': {'value': None}, 'set-envelope': {'values': []}, 'range-envelope': {'lower': None, 'upper': None}, 'unary-envelope': {'operator': 'not-in'}, 'operator-preserve': 'not-in', 'field-path': {'path': ['a', 'b.c']}}), ({'scalar': None, 'values': [], 'lo': None, 'hi': None, 'op': 'not-in', 'unary': True, 'path': ['x']}, {'scalar-envelope': {'value': None}, 'set-envelope': {'values': []}, 'range-envelope': {'lower': None, 'upper': None}, 'unary-envelope': {'operator': 'not-in'}, 'operator-preserve': 'not-in', 'field-path': {'path': ['x']}}), ({'scalar': None, 'values': [], 'lo': 0, 'hi': 2, 'op': 'EQ', 'unary': False, 'path': ['a', 'b.c']}, {'scalar-envelope': {'value': None}, 'set-envelope': {'values': []}, 'range-envelope': {'lower': 0, 'upper': 2}, 'unary-envelope': {'operator': 'EQ', 'value': None}, 'operator-preserve': 'EQ', 'field-path': {'path': ['a', 'b.c']}}), ({'scalar': None, 'values': ['a,b', 'c'], 'lo': None, 'hi': 2, 'op': 'EQ', 'unary': False, 'path': ['x']}, {'scalar-envelope': {'value': None}, 'set-envelope': {'values': ['a,b', 'c']}, 'range-envelope': {'lower': None, 'upper': 2}, 'unary-envelope': {'operator': 'EQ', 'value': None}, 'operator-preserve': 'EQ', 'field-path': {'path': ['x']}}), ({'scalar': None, 'values': ['a,b', 'c'], 'lo': 0, 'hi': 2, 'op': 'EQ', 'unary': True, 'path': ['a', 'b.c']}, {'scalar-envelope': {'value': None}, 'set-envelope': {'values': ['a,b', 'c']}, 'range-envelope': {'lower': 0, 'upper': 2}, 'unary-envelope': {'operator': 'EQ'}, 'operator-preserve': 'EQ', 'field-path': {'path': ['a', 'b.c']}}), ({'scalar': 0, 'values': [], 'lo': None, 'hi': 2, 'op': 'EQ', 'unary': True, 'path': ['x']}, {'scalar-envelope': {'value': 0}, 'set-envelope': {'values': []}, 'range-envelope': {'lower': None, 'upper': 2}, 'unary-envelope': {'operator': 'EQ'}, 'operator-preserve': 'EQ', 'field-path': {'path': ['x']}}), ({'scalar': 0, 'values': [], 'lo': 0, 'hi': 2, 'op': 'not-in', 'unary': False, 'path': ['a', 'b.c']}, {'scalar-envelope': {'value': 0}, 'set-envelope': {'values': []}, 'range-envelope': {'lower': 0, 'upper': 2}, 'unary-envelope': {'operator': 'not-in', 'value': 0}, 'operator-preserve': 'not-in', 'field-path': {'path': ['a', 'b.c']}}), ({'scalar': 0, 'values': ['a,b', 'c'], 'lo': None, 'hi': 2, 'op': 'not-in', 'unary': False, 'path': ['x']}, {'scalar-envelope': {'value': 0}, 'set-envelope': {'values': ['a,b', 'c']}, 'range-envelope': {'lower': None, 'upper': 2}, 'unary-envelope': {'operator': 'not-in', 'value': 0}, 'operator-preserve': 'not-in', 'field-path': {'path': ['x']}}), ({'scalar': 0, 'values': ['a,b', 'c'], 'lo': 0, 'hi': 2, 'op': 'not-in', 'unary': True, 'path': ['a', 'b.c']}, {'scalar-envelope': {'value': 0}, 'set-envelope': {'values': ['a,b', 'c']}, 'range-envelope': {'lower': 0, 'upper': 2}, 'unary-envelope': {'operator': 'not-in'}, 'operator-preserve': 'not-in', 'field-path': {'path': ['a', 'b.c']}})], 2: [({'scalar': None, 'values': [], 'lo': None, 'hi': None, 'op': 'EQ', 'unary': False, 'path': ['x']}, {'scalar-envelope': {'value': None}, 'set-envelope': {'values': []}, 'range-envelope': {'lower': None, 'upper': None}, 'unary-envelope': {'operator': 'EQ', 'value': None}, 'operator-preserve': 'EQ', 'field-path': {'path': ['x']}}), ({'scalar': None, 'values': [], 'lo': None, 'hi': 2, 'op': 'not-in', 'unary': False, 'path': ['a', 'b.c']}, {'scalar-envelope': {'value': None}, 'set-envelope': {'values': []}, 'range-envelope': {'lower': None, 'upper': 2}, 'unary-envelope': {'operator': 'not-in', 'value': None}, 'operator-preserve': 'not-in', 'field-path': {'path': ['a', 'b.c']}}), ({'scalar': None, 'values': [], 'lo': None, 'hi': 2, 'op': 'not-in', 'unary': True, 'path': ['a', 'b.c']}, {'scalar-envelope': {'value': None}, 'set-envelope': {'values': []}, 'range-envelope': {'lower': None, 'upper': 2}, 'unary-envelope': {'operator': 'not-in'}, 'operator-preserve': 'not-in', 'field-path': {'path': ['a', 'b.c']}}), ({'scalar': None, 'values': [], 'lo': 0, 'hi': 2, 'op': 'not-in', 'unary': True, 'path': ['x']}, {'scalar-envelope': {'value': None}, 'set-envelope': {'values': []}, 'range-envelope': {'lower': 0, 'upper': 2}, 'unary-envelope': {'operator': 'not-in'}, 'operator-preserve': 'not-in', 'field-path': {'path': ['x']}}), ({'scalar': None, 'values': ['a,b', 'c'], 'lo': 0, 'hi': None, 'op': 'EQ', 'unary': False, 'path': ['a', 'b.c']}, {'scalar-envelope': {'value': None}, 'set-envelope': {'values': ['a,b', 'c']}, 'range-envelope': {'lower': 0, 'upper': None}, 'unary-envelope': {'operator': 'EQ', 'value': None}, 'operator-preserve': 'EQ', 'field-path': {'path': ['a', 'b.c']}}), ({'scalar': 0, 'values': [], 'lo': None, 'hi': None, 'op': 'EQ', 'unary': False, 'path': ['x']}, {'scalar-envelope': {'value': 0}, 'set-envelope': {'values': []}, 'range-envelope': {'lower': None, 'upper': None}, 'unary-envelope': {'operator': 'EQ', 'value': 0}, 'operator-preserve': 'EQ', 'field-path': {'path': ['x']}}), ({'scalar': 0, 'values': [], 'lo': 0, 'hi': None, 'op': 'EQ', 'unary': True, 'path': ['a', 'b.c']}, {'scalar-envelope': {'value': 0}, 'set-envelope': {'values': []}, 'range-envelope': {'lower': 0, 'upper': None}, 'unary-envelope': {'operator': 'EQ'}, 'operator-preserve': 'EQ', 'field-path': {'path': ['a', 'b.c']}}), ({'scalar': 0, 'values': ['a,b', 'c'], 'lo': None, 'hi': None, 'op': 'EQ', 'unary': True, 'path': ['x']}, {'scalar-envelope': {'value': 0}, 'set-envelope': {'values': ['a,b', 'c']}, 'range-envelope': {'lower': None, 'upper': None}, 'unary-envelope': {'operator': 'EQ'}, 'operator-preserve': 'EQ', 'field-path': {'path': ['x']}}), ({'scalar': 0, 'values': ['a,b', 'c'], 'lo': 0, 'hi': None, 'op': 'not-in', 'unary': False, 'path': ['a', 'b.c']}, {'scalar-envelope': {'value': 0}, 'set-envelope': {'values': ['a,b', 'c']}, 'range-envelope': {'lower': 0, 'upper': None}, 'unary-envelope': {'operator': 'not-in', 'value': 0}, 'operator-preserve': 'not-in', 'field-path': {'path': ['a', 'b.c']}}), ({'scalar': 'x', 'values': [], 'lo': None, 'hi': None, 'op': 'not-in', 'unary': False, 'path': ['x']}, {'scalar-envelope': {'value': 'x'}, 'set-envelope': {'values': []}, 'range-envelope': {'lower': None, 'upper': None}, 'unary-envelope': {'operator': 'not-in', 'value': 'x'}, 'operator-preserve': 'not-in', 'field-path': {'path': ['x']}})], 3: [({'scalar': None, 'values': [], 'lo': None, 'hi': None, 'op': 'EQ', 'unary': True, 'path': ['a', 'b.c']}, {'scalar-envelope': {'value': None}, 'set-envelope': {'values': []}, 'range-envelope': {'lower': None, 'upper': None}, 'unary-envelope': {'operator': 'EQ'}, 'operator-preserve': 'EQ', 'field-path': {'path': ['a', 'b.c']}}), ({'scalar': None, 'values': [], 'lo': 0, 'hi': None, 'op': 'EQ', 'unary': True, 'path': ['a', 'b.c']}, {'scalar-envelope': {'value': None}, 'set-envelope': {'values': []}, 'range-envelope': {'lower': 0, 'upper': None}, 'unary-envelope': {'operator': 'EQ'}, 'operator-preserve': 'EQ', 'field-path': {'path': ['a', 'b.c']}}), ({'scalar': None, 'values': [], 'lo': 0, 'hi': None, 'op': 'not-in', 'unary': False, 'path': ['x']}, {'scalar-envelope': {'value': None}, 'set-envelope': {'values': []}, 'range-envelope': {'lower': 0, 'upper': None}, 'unary-envelope': {'operator': 'not-in', 'value': None}, 'operator-preserve': 'not-in', 'field-path': {'path': ['x']}}), ({'scalar': None, 'values': ['a,b', 'c'], 'lo': None, 'hi': None, 'op': 'not-in', 'unary': True, 'path': ['a', 'b.c']}, {'scalar-envelope': {'value': None}, 'set-envelope': {'values': ['a,b', 'c']}, 'range-envelope': {'lower': None, 'upper': None}, 'unary-envelope': {'operator': 'not-in'}, 'operator-preserve': 'not-in', 'field-path': {'path': ['a', 'b.c']}}), ({'scalar': None, 'values': ['a,b', 'c'], 'lo': 0, 'hi': None, 'op': 'not-in', 'unary': True, 'path': ['x']}, {'scalar-envelope': {'value': None}, 'set-envelope': {'values': ['a,b', 'c']}, 'range-envelope': {'lower': 0, 'upper': None}, 'unary-envelope': {'operator': 'not-in'}, 'operator-preserve': 'not-in', 'field-path': {'path': ['x']}}), ({'scalar': 0, 'values': [], 'lo': None, 'hi': 2, 'op': 'EQ', 'unary': False, 'path': ['a', 'b.c']}, {'scalar-envelope': {'value': 0}, 'set-envelope': {'values': []}, 'range-envelope': {'lower': None, 'upper': 2}, 'unary-envelope': {'operator': 'EQ', 'value': 0}, 'operator-preserve': 'EQ', 'field-path': {'path': ['a', 'b.c']}}), ({'scalar': 0, 'values': [], 'lo': 0, 'hi': 2, 'op': 'EQ', 'unary': False, 'path': ['x']}, {'scalar-envelope': {'value': 0}, 'set-envelope': {'values': []}, 'range-envelope': {'lower': 0, 'upper': 2}, 'unary-envelope': {'operator': 'EQ', 'value': 0}, 'operator-preserve': 'EQ', 'field-path': {'path': ['x']}}), ({'scalar': 0, 'values': ['a,b', 'c'], 'lo': None, 'hi': 2, 'op': 'EQ', 'unary': True, 'path': ['a', 'b.c']}, {'scalar-envelope': {'value': 0}, 'set-envelope': {'values': ['a,b', 'c']}, 'range-envelope': {'lower': None, 'upper': 2}, 'unary-envelope': {'operator': 'EQ'}, 'operator-preserve': 'EQ', 'field-path': {'path': ['a', 'b.c']}}), ({'scalar': 0, 'values': ['a,b', 'c'], 'lo': 0, 'hi': 2, 'op': 'EQ', 'unary': True, 'path': ['x']}, {'scalar-envelope': {'value': 0}, 'set-envelope': {'values': ['a,b', 'c']}, 'range-envelope': {'lower': 0, 'upper': 2}, 'unary-envelope': {'operator': 'EQ'}, 'operator-preserve': 'EQ', 'field-path': {'path': ['x']}}), ({'scalar': 'x', 'values': [], 'lo': None, 'hi': 2, 'op': 'not-in', 'unary': False, 'path': ['a', 'b.c']}, {'scalar-envelope': {'value': 'x'}, 'set-envelope': {'values': []}, 'range-envelope': {'lower': None, 'upper': 2}, 'unary-envelope': {'operator': 'not-in', 'value': 'x'}, 'operator-preserve': 'not-in', 'field-path': {'path': ['a', 'b.c']}})], 4: [({'scalar': None, 'values': [], 'lo': None, 'hi': None, 'op': 'EQ', 'unary': True, 'path': ['x']}, {'scalar-envelope': {'value': None}, 'set-envelope': {'values': []}, 'range-envelope': {'lower': None, 'upper': None}, 'unary-envelope': {'operator': 'EQ'}, 'operator-preserve': 'EQ', 'field-path': {'path': ['x']}}), ({'scalar': None, 'values': [], 'lo': 0, 'hi': 2, 'op': 'EQ', 'unary': False, 'path': ['a', 'b.c']}, {'scalar-envelope': {'value': None}, 'set-envelope': {'values': []}, 'range-envelope': {'lower': 0, 'upper': 2}, 'unary-envelope': {'operator': 'EQ', 'value': None}, 'operator-preserve': 'EQ', 'field-path': {'path': ['a', 'b.c']}}), ({'scalar': None, 'values': [], 'lo': 0, 'hi': 2, 'op': 'not-in', 'unary': False, 'path': ['a', 'b.c']}, {'scalar-envelope': {'value': None}, 'set-envelope': {'values': []}, 'range-envelope': {'lower': 0, 'upper': 2}, 'unary-envelope': {'operator': 'not-in', 'value': None}, 'operator-preserve': 'not-in', 'field-path': {'path': ['a', 'b.c']}}), ({'scalar': None, 'values': ['a,b', 'c'], 'lo': None, 'hi': 2, 'op': 'not-in', 'unary': False, 'path': ['x']}, {'scalar-envelope': {'value': None}, 'set-envelope': {'values': ['a,b', 'c']}, 'range-envelope': {'lower': None, 'upper': 2}, 'unary-envelope': {'operator': 'not-in', 'value': None}, 'operator-preserve': 'not-in', 'field-path': {'path': ['x']}}), ({'scalar': None, 'values': ['a,b', 'c'], 'lo': 0, 'hi': 2, 'op': 'not-in', 'unary': True, 'path': ['a', 'b.c']}, {'scalar-envelope': {'value': None}, 'set-envelope': {'values': ['a,b', 'c']}, 'range-envelope': {'lower': 0, 'upper': 2}, 'unary-envelope': {'operator': 'not-in'}, 'operator-preserve': 'not-in', 'field-path': {'path': ['a', 'b.c']}}), ({'scalar': 0, 'values': [], 'lo': None, 'hi': 2, 'op': 'not-in', 'unary': True, 'path': ['x']}, {'scalar-envelope': {'value': 0}, 'set-envelope': {'values': []}, 'range-envelope': {'lower': None, 'upper': 2}, 'unary-envelope': {'operator': 'not-in'}, 'operator-preserve': 'not-in', 'field-path': {'path': ['x']}}), ({'scalar': 0, 'values': ['a,b', 'c'], 'lo': None, 'hi': None, 'op': 'EQ', 'unary': False, 'path': ['a', 'b.c']}, {'scalar-envelope': {'value': 0}, 'set-envelope': {'values': ['a,b', 'c']}, 'range-envelope': {'lower': None, 'upper': None}, 'unary-envelope': {'operator': 'EQ', 'value': 0}, 'operator-preserve': 'EQ', 'field-path': {'path': ['a', 'b.c']}}), ({'scalar': 0, 'values': ['a,b', 'c'], 'lo': 0, 'hi': None, 'op': 'EQ', 'unary': False, 'path': ['x']}, {'scalar-envelope': {'value': 0}, 'set-envelope': {'values': ['a,b', 'c']}, 'range-envelope': {'lower': 0, 'upper': None}, 'unary-envelope': {'operator': 'EQ', 'value': 0}, 'operator-preserve': 'EQ', 'field-path': {'path': ['x']}}), ({'scalar': 'x', 'values': [], 'lo': None, 'hi': None, 'op': 'EQ', 'unary': True, 'path': ['a', 'b.c']}, {'scalar-envelope': {'value': 'x'}, 'set-envelope': {'values': []}, 'range-envelope': {'lower': None, 'upper': None}, 'unary-envelope': {'operator': 'EQ'}, 'operator-preserve': 'EQ', 'field-path': {'path': ['a', 'b.c']}}), ({'scalar': 'x', 'values': [], 'lo': 0, 'hi': None, 'op': 'EQ', 'unary': True, 'path': ['x']}, {'scalar-envelope': {'value': 'x'}, 'set-envelope': {'values': []}, 'range-envelope': {'lower': 0, 'upper': None}, 'unary-envelope': {'operator': 'EQ'}, 'operator-preserve': 'EQ', 'field-path': {'path': ['x']}})], 5: [({'scalar': None, 'values': [], 'lo': None, 'hi': None, 'op': 'not-in', 'unary': False, 'path': ['a', 'b.c']}, {'scalar-envelope': {'value': None}, 'set-envelope': {'values': []}, 'range-envelope': {'lower': None, 'upper': None}, 'unary-envelope': {'operator': 'not-in', 'value': None}, 'operator-preserve': 'not-in', 'field-path': {'path': ['a', 'b.c']}}), ({'scalar': None, 'values': [], 'lo': 0, 'hi': 2, 'op': 'not-in', 'unary': True, 'path': ['a', 'b.c']}, {'scalar-envelope': {'value': None}, 'set-envelope': {'values': []}, 'range-envelope': {'lower': 0, 'upper': 2}, 'unary-envelope': {'operator': 'not-in'}, 'operator-preserve': 'not-in', 'field-path': {'path': ['a', 'b.c']}}), ({'scalar': None, 'values': ['a,b', 'c'], 'lo': None, 'hi': None, 'op': 'EQ', 'unary': True, 'path': ['x']}, {'scalar-envelope': {'value': None}, 'set-envelope': {'values': ['a,b', 'c']}, 'range-envelope': {'lower': None, 'upper': None}, 'unary-envelope': {'operator': 'EQ'}, 'operator-preserve': 'EQ', 'field-path': {'path': ['x']}}), ({'scalar': None, 'values': ['a,b', 'c'], 'lo': 0, 'hi': None, 'op': 'not-in', 'unary': False, 'path': ['a', 'b.c']}, {'scalar-envelope': {'value': None}, 'set-envelope': {'values': ['a,b', 'c']}, 'range-envelope': {'lower': 0, 'upper': None}, 'unary-envelope': {'operator': 'not-in', 'value': None}, 'operator-preserve': 'not-in', 'field-path': {'path': ['a', 'b.c']}}), ({'scalar': 0, 'values': [], 'lo': None, 'hi': None, 'op': 'not-in', 'unary': False, 'path': ['x']}, {'scalar-envelope': {'value': 0}, 'set-envelope': {'values': []}, 'range-envelope': {'lower': None, 'upper': None}, 'unary-envelope': {'operator': 'not-in', 'value': 0}, 'operator-preserve': 'not-in', 'field-path': {'path': ['x']}}), ({'scalar': 0, 'values': [], 'lo': 0, 'hi': None, 'op': 'not-in', 'unary': True, 'path': ['a', 'b.c']}, {'scalar-envelope': {'value': 0}, 'set-envelope': {'values': []}, 'range-envelope': {'lower': 0, 'upper': None}, 'unary-envelope': {'operator': 'not-in'}, 'operator-preserve': 'not-in', 'field-path': {'path': ['a', 'b.c']}}), ({'scalar': 0, 'values': ['a,b', 'c'], 'lo': None, 'hi': None, 'op': 'not-in', 'unary': True, 'path': ['x']}, {'scalar-envelope': {'value': 0}, 'set-envelope': {'values': ['a,b', 'c']}, 'range-envelope': {'lower': None, 'upper': None}, 'unary-envelope': {'operator': 'not-in'}, 'operator-preserve': 'not-in', 'field-path': {'path': ['x']}}), ({'scalar': 0, 'values': ['a,b', 'c'], 'lo': 0, 'hi': 2, 'op': 'EQ', 'unary': False, 'path': ['a', 'b.c']}, {'scalar-envelope': {'value': 0}, 'set-envelope': {'values': ['a,b', 'c']}, 'range-envelope': {'lower': 0, 'upper': 2}, 'unary-envelope': {'operator': 'EQ', 'value': 0}, 'operator-preserve': 'EQ', 'field-path': {'path': ['a', 'b.c']}}), ({'scalar': 'x', 'values': [], 'lo': None, 'hi': 2, 'op': 'EQ', 'unary': False, 'path': ['x']}, {'scalar-envelope': {'value': 'x'}, 'set-envelope': {'values': []}, 'range-envelope': {'lower': None, 'upper': 2}, 'unary-envelope': {'operator': 'EQ', 'value': 'x'}, 'operator-preserve': 'EQ', 'field-path': {'path': ['x']}}), ({'scalar': 'x', 'values': [], 'lo': 0, 'hi': 2, 'op': 'EQ', 'unary': True, 'path': ['a', 'b.c']}, {'scalar-envelope': {'value': 'x'}, 'set-envelope': {'values': []}, 'range-envelope': {'lower': 0, 'upper': 2}, 'unary-envelope': {'operator': 'EQ'}, 'operator-preserve': 'EQ', 'field-path': {'path': ['a', 'b.c']}})]}
for index, (data, expected) in enumerate(fixtures[N]):
check("contract fixture " + str(index), solve(data), expected)
print(json.dumps({"observations": observations, "passed": all(x["passed"] for x in observations)}, ensure_ascii=False))
raise SystemExit(0 if all(x["passed"] for x in observations) else 1)
| Boundary fixture | Actual | Expected | Outcome |
|---|---|---|---|
| contract fixture 0 | {'field-path': {'path': 'a.b.c'}, 'operator-preserve': 'EQ', 'range-envelope': {'lower': None, 'upper': None}, 'scalar-envelope': {'value': None}, 'set-envelope': {'values': []}, 'unary-envelope': {'operator': 'EQ', 'value': None}} | {'field-path': {'path': ['a', 'b.c']}, 'operator-preserve': 'EQ', 'range-envelope': {'lower': None, 'upper': None}, 'scalar-envelope': {'value': None}, 'set-envelope': {'values': []}, 'unary-envelope': {'operator': 'EQ', 'value': None}} | Failed |
| contract fixture 1 | {'field-path': {'path': 'a.b.c'}, 'operator-preserve': 'not-in', 'range-envelope': {'lower': None, 'upper': None}, 'scalar-envelope': {'value': None}, 'set-envelope': {'values': []}, 'unary-envelope': {'operator': 'not-in'}} | {'field-path': {'path': ['a', 'b.c']}, 'operator-preserve': 'not-in', 'range-envelope': {'lower': None, 'upper': None}, 'scalar-envelope': {'value': None}, 'set-envelope': {'values': []}, 'unary-envelope': {'operator': 'not-in'}} | Failed |
| contract fixture 2 | {'field-path': {'path': 'x'}, 'operator-preserve': 'not-in', 'range-envelope': {'lower': None, 'upper': None}, 'scalar-envelope': {'value': None}, 'set-envelope': {'values': []}, 'unary-envelope': {'operator': 'not-in'}} | {'field-path': {'path': ['x']}, 'operator-preserve': 'not-in', 'range-envelope': {'lower': None, 'upper': None}, 'scalar-envelope': {'value': None}, 'set-envelope': {'values': []}, 'unary-envelope': {'operator': 'not-in'}} | Failed |
| contract fixture 3 | {'field-path': {'path': 'a.b.c'}, 'operator-preserve': 'EQ', 'range-envelope': {'lower': 0, 'upper': 2}, 'scalar-envelope': {'value': None}, 'set-envelope': {'values': []}, 'unary-envelope': {'operator': 'EQ', 'value': None}} | {'field-path': {'path': ['a', 'b.c']}, 'operator-preserve': 'EQ', 'range-envelope': {'lower': 0, 'upper': 2}, 'scalar-envelope': {'value': None}, 'set-envelope': {'values': []}, 'unary-envelope': {'operator': 'EQ', 'value': None}} | Failed |
| contract fixture 4 | {'field-path': {'path': 'x'}, 'operator-preserve': 'EQ', 'range-envelope': {'lower': None, 'upper': 2}, 'scalar-envelope': {'value': None}, 'set-envelope': {'values': ['a,b', 'c']}, 'unary-envelope': {'operator': 'EQ', 'value': None}} | {'field-path': {'path': ['x']}, 'operator-preserve': 'EQ', 'range-envelope': {'lower': None, 'upper': 2}, 'scalar-envelope': {'value': None}, 'set-envelope': {'values': ['a,b', 'c']}, 'unary-envelope': {'operator': 'EQ', 'value': None}} | Failed |
| contract fixture 5 | {'field-path': {'path': 'a.b.c'}, 'operator-preserve': 'EQ', 'range-envelope': {'lower': 0, 'upper': 2}, 'scalar-envelope': {'value': None}, 'set-envelope': {'values': ['a,b', 'c']}, 'unary-envelope': {'operator': 'EQ'}} | {'field-path': {'path': ['a', 'b.c']}, 'operator-preserve': 'EQ', 'range-envelope': {'lower': 0, 'upper': 2}, 'scalar-envelope': {'value': None}, 'set-envelope': {'values': ['a,b', 'c']}, 'unary-envelope': {'operator': 'EQ'}} | Failed |
| contract fixture 6 | {'field-path': {'path': 'x'}, 'operator-preserve': 'EQ', 'range-envelope': {'lower': None, 'upper': 2}, 'scalar-envelope': {'value': 0}, 'set-envelope': {'values': []}, 'unary-envelope': {'operator': 'EQ'}} | {'field-path': {'path': ['x']}, 'operator-preserve': 'EQ', 'range-envelope': {'lower': None, 'upper': 2}, 'scalar-envelope': {'value': 0}, 'set-envelope': {'values': []}, 'unary-envelope': {'operator': 'EQ'}} | Failed |
| contract fixture 7 | {'field-path': {'path': 'a.b.c'}, 'operator-preserve': 'not-in', 'range-envelope': {'lower': 0, 'upper': 2}, 'scalar-envelope': {'value': 0}, 'set-envelope': {'values': []}, 'unary-envelope': {'operator': 'not-in', 'value': 0}} | {'field-path': {'path': ['a', 'b.c']}, 'operator-preserve': 'not-in', 'range-envelope': {'lower': 0, 'upper': 2}, 'scalar-envelope': {'value': 0}, 'set-envelope': {'values': []}, 'unary-envelope': {'operator': 'not-in', 'value': 0}} | Failed |
| contract fixture 8 | {'field-path': {'path': 'x'}, 'operator-preserve': 'not-in', 'range-envelope': {'lower': None, 'upper': 2}, 'scalar-envelope': {'value': 0}, 'set-envelope': {'values': ['a,b', 'c']}, 'unary-envelope': {'operator': 'not-in', 'value': 0}} | {'field-path': {'path': ['x']}, 'operator-preserve': 'not-in', 'range-envelope': {'lower': None, 'upper': 2}, 'scalar-envelope': {'value': 0}, 'set-envelope': {'values': ['a,b', 'c']}, 'unary-envelope': {'operator': 'not-in', 'value': 0}} | Failed |
| contract fixture 9 | {'field-path': {'path': 'a.b.c'}, 'operator-preserve': 'not-in', 'range-envelope': {'lower': 0, 'upper': 2}, 'scalar-envelope': {'value': 0}, 'set-envelope': {'values': ['a,b', 'c']}, 'unary-envelope': {'operator': 'not-in'}} | {'field-path': {'path': ['a', 'b.c']}, 'operator-preserve': 'not-in', 'range-envelope': {'lower': 0, 'upper': 2}, 'scalar-envelope': {'value': 0}, 'set-envelope': {'values': ['a,b', 'c']}, 'unary-envelope': {'operator': 'not-in'}} | Failed |
SHA-256 / 565bea71dc4ead11f7efb959c544c27cbe6fc94a27588a8bb74c5efa4a6ce45b
2 / The unsuccessful fix
Exit 1"""Failure Map reference implementation. Python standard library only."""
import json
N = 1
observations = []
def solve(d):
return {'scalar-envelope':({'value':d['scalar']}), 'set-envelope':({'values':d['values']}), 'range-envelope':({'lower':d['lo'],'upper':d['hi']}), 'unary-envelope':({'operator':d['op']} if d['unary'] else {'operator':d['op'],'value':d['scalar']}), 'operator-preserve':(d['op']), 'field-path':({'path':d['path'][-1:]})}
def check(label, actual, expected):
observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
fixtures = {1: [({'scalar': None, 'values': [], 'lo': None, 'hi': None, 'op': 'EQ', 'unary': False, 'path': ['a', 'b.c']}, {'scalar-envelope': {'value': None}, 'set-envelope': {'values': []}, 'range-envelope': {'lower': None, 'upper': None}, 'unary-envelope': {'operator': 'EQ', 'value': None}, 'operator-preserve': 'EQ', 'field-path': {'path': ['a', 'b.c']}}), ({'scalar': None, 'values': [], 'lo': None, 'hi': None, 'op': 'not-in', 'unary': True, 'path': ['a', 'b.c']}, {'scalar-envelope': {'value': None}, 'set-envelope': {'values': []}, 'range-envelope': {'lower': None, 'upper': None}, 'unary-envelope': {'operator': 'not-in'}, 'operator-preserve': 'not-in', 'field-path': {'path': ['a', 'b.c']}}), ({'scalar': None, 'values': [], 'lo': None, 'hi': None, 'op': 'not-in', 'unary': True, 'path': ['x']}, {'scalar-envelope': {'value': None}, 'set-envelope': {'values': []}, 'range-envelope': {'lower': None, 'upper': None}, 'unary-envelope': {'operator': 'not-in'}, 'operator-preserve': 'not-in', 'field-path': {'path': ['x']}}), ({'scalar': None, 'values': [], 'lo': 0, 'hi': 2, 'op': 'EQ', 'unary': False, 'path': ['a', 'b.c']}, {'scalar-envelope': {'value': None}, 'set-envelope': {'values': []}, 'range-envelope': {'lower': 0, 'upper': 2}, 'unary-envelope': {'operator': 'EQ', 'value': None}, 'operator-preserve': 'EQ', 'field-path': {'path': ['a', 'b.c']}}), ({'scalar': None, 'values': ['a,b', 'c'], 'lo': None, 'hi': 2, 'op': 'EQ', 'unary': False, 'path': ['x']}, {'scalar-envelope': {'value': None}, 'set-envelope': {'values': ['a,b', 'c']}, 'range-envelope': {'lower': None, 'upper': 2}, 'unary-envelope': {'operator': 'EQ', 'value': None}, 'operator-preserve': 'EQ', 'field-path': {'path': ['x']}}), ({'scalar': None, 'values': ['a,b', 'c'], 'lo': 0, 'hi': 2, 'op': 'EQ', 'unary': True, 'path': ['a', 'b.c']}, {'scalar-envelope': {'value': None}, 'set-envelope': {'values': ['a,b', 'c']}, 'range-envelope': {'lower': 0, 'upper': 2}, 'unary-envelope': {'operator': 'EQ'}, 'operator-preserve': 'EQ', 'field-path': {'path': ['a', 'b.c']}}), ({'scalar': 0, 'values': [], 'lo': None, 'hi': 2, 'op': 'EQ', 'unary': True, 'path': ['x']}, {'scalar-envelope': {'value': 0}, 'set-envelope': {'values': []}, 'range-envelope': {'lower': None, 'upper': 2}, 'unary-envelope': {'operator': 'EQ'}, 'operator-preserve': 'EQ', 'field-path': {'path': ['x']}}), ({'scalar': 0, 'values': [], 'lo': 0, 'hi': 2, 'op': 'not-in', 'unary': False, 'path': ['a', 'b.c']}, {'scalar-envelope': {'value': 0}, 'set-envelope': {'values': []}, 'range-envelope': {'lower': 0, 'upper': 2}, 'unary-envelope': {'operator': 'not-in', 'value': 0}, 'operator-preserve': 'not-in', 'field-path': {'path': ['a', 'b.c']}}), ({'scalar': 0, 'values': ['a,b', 'c'], 'lo': None, 'hi': 2, 'op': 'not-in', 'unary': False, 'path': ['x']}, {'scalar-envelope': {'value': 0}, 'set-envelope': {'values': ['a,b', 'c']}, 'range-envelope': {'lower': None, 'upper': 2}, 'unary-envelope': {'operator': 'not-in', 'value': 0}, 'operator-preserve': 'not-in', 'field-path': {'path': ['x']}}), ({'scalar': 0, 'values': ['a,b', 'c'], 'lo': 0, 'hi': 2, 'op': 'not-in', 'unary': True, 'path': ['a', 'b.c']}, {'scalar-envelope': {'value': 0}, 'set-envelope': {'values': ['a,b', 'c']}, 'range-envelope': {'lower': 0, 'upper': 2}, 'unary-envelope': {'operator': 'not-in'}, 'operator-preserve': 'not-in', 'field-path': {'path': ['a', 'b.c']}})], 2: [({'scalar': None, 'values': [], 'lo': None, 'hi': None, 'op': 'EQ', 'unary': False, 'path': ['x']}, {'scalar-envelope': {'value': None}, 'set-envelope': {'values': []}, 'range-envelope': {'lower': None, 'upper': None}, 'unary-envelope': {'operator': 'EQ', 'value': None}, 'operator-preserve': 'EQ', 'field-path': {'path': ['x']}}), ({'scalar': None, 'values': [], 'lo': None, 'hi': 2, 'op': 'not-in', 'unary': False, 'path': ['a', 'b.c']}, {'scalar-envelope': {'value': None}, 'set-envelope': {'values': []}, 'range-envelope': {'lower': None, 'upper': 2}, 'unary-envelope': {'operator': 'not-in', 'value': None}, 'operator-preserve': 'not-in', 'field-path': {'path': ['a', 'b.c']}}), ({'scalar': None, 'values': [], 'lo': None, 'hi': 2, 'op': 'not-in', 'unary': True, 'path': ['a', 'b.c']}, {'scalar-envelope': {'value': None}, 'set-envelope': {'values': []}, 'range-envelope': {'lower': None, 'upper': 2}, 'unary-envelope': {'operator': 'not-in'}, 'operator-preserve': 'not-in', 'field-path': {'path': ['a', 'b.c']}}), ({'scalar': None, 'values': [], 'lo': 0, 'hi': 2, 'op': 'not-in', 'unary': True, 'path': ['x']}, {'scalar-envelope': {'value': None}, 'set-envelope': {'values': []}, 'range-envelope': {'lower': 0, 'upper': 2}, 'unary-envelope': {'operator': 'not-in'}, 'operator-preserve': 'not-in', 'field-path': {'path': ['x']}}), ({'scalar': None, 'values': ['a,b', 'c'], 'lo': 0, 'hi': None, 'op': 'EQ', 'unary': False, 'path': ['a', 'b.c']}, {'scalar-envelope': {'value': None}, 'set-envelope': {'values': ['a,b', 'c']}, 'range-envelope': {'lower': 0, 'upper': None}, 'unary-envelope': {'operator': 'EQ', 'value': None}, 'operator-preserve': 'EQ', 'field-path': {'path': ['a', 'b.c']}}), ({'scalar': 0, 'values': [], 'lo': None, 'hi': None, 'op': 'EQ', 'unary': False, 'path': ['x']}, {'scalar-envelope': {'value': 0}, 'set-envelope': {'values': []}, 'range-envelope': {'lower': None, 'upper': None}, 'unary-envelope': {'operator': 'EQ', 'value': 0}, 'operator-preserve': 'EQ', 'field-path': {'path': ['x']}}), ({'scalar': 0, 'values': [], 'lo': 0, 'hi': None, 'op': 'EQ', 'unary': True, 'path': ['a', 'b.c']}, {'scalar-envelope': {'value': 0}, 'set-envelope': {'values': []}, 'range-envelope': {'lower': 0, 'upper': None}, 'unary-envelope': {'operator': 'EQ'}, 'operator-preserve': 'EQ', 'field-path': {'path': ['a', 'b.c']}}), ({'scalar': 0, 'values': ['a,b', 'c'], 'lo': None, 'hi': None, 'op': 'EQ', 'unary': True, 'path': ['x']}, {'scalar-envelope': {'value': 0}, 'set-envelope': {'values': ['a,b', 'c']}, 'range-envelope': {'lower': None, 'upper': None}, 'unary-envelope': {'operator': 'EQ'}, 'operator-preserve': 'EQ', 'field-path': {'path': ['x']}}), ({'scalar': 0, 'values': ['a,b', 'c'], 'lo': 0, 'hi': None, 'op': 'not-in', 'unary': False, 'path': ['a', 'b.c']}, {'scalar-envelope': {'value': 0}, 'set-envelope': {'values': ['a,b', 'c']}, 'range-envelope': {'lower': 0, 'upper': None}, 'unary-envelope': {'operator': 'not-in', 'value': 0}, 'operator-preserve': 'not-in', 'field-path': {'path': ['a', 'b.c']}}), ({'scalar': 'x', 'values': [], 'lo': None, 'hi': None, 'op': 'not-in', 'unary': False, 'path': ['x']}, {'scalar-envelope': {'value': 'x'}, 'set-envelope': {'values': []}, 'range-envelope': {'lower': None, 'upper': None}, 'unary-envelope': {'operator': 'not-in', 'value': 'x'}, 'operator-preserve': 'not-in', 'field-path': {'path': ['x']}})], 3: [({'scalar': None, 'values': [], 'lo': None, 'hi': None, 'op': 'EQ', 'unary': True, 'path': ['a', 'b.c']}, {'scalar-envelope': {'value': None}, 'set-envelope': {'values': []}, 'range-envelope': {'lower': None, 'upper': None}, 'unary-envelope': {'operator': 'EQ'}, 'operator-preserve': 'EQ', 'field-path': {'path': ['a', 'b.c']}}), ({'scalar': None, 'values': [], 'lo': 0, 'hi': None, 'op': 'EQ', 'unary': True, 'path': ['a', 'b.c']}, {'scalar-envelope': {'value': None}, 'set-envelope': {'values': []}, 'range-envelope': {'lower': 0, 'upper': None}, 'unary-envelope': {'operator': 'EQ'}, 'operator-preserve': 'EQ', 'field-path': {'path': ['a', 'b.c']}}), ({'scalar': None, 'values': [], 'lo': 0, 'hi': None, 'op': 'not-in', 'unary': False, 'path': ['x']}, {'scalar-envelope': {'value': None}, 'set-envelope': {'values': []}, 'range-envelope': {'lower': 0, 'upper': None}, 'unary-envelope': {'operator': 'not-in', 'value': None}, 'operator-preserve': 'not-in', 'field-path': {'path': ['x']}}), ({'scalar': None, 'values': ['a,b', 'c'], 'lo': None, 'hi': None, 'op': 'not-in', 'unary': True, 'path': ['a', 'b.c']}, {'scalar-envelope': {'value': None}, 'set-envelope': {'values': ['a,b', 'c']}, 'range-envelope': {'lower': None, 'upper': None}, 'unary-envelope': {'operator': 'not-in'}, 'operator-preserve': 'not-in', 'field-path': {'path': ['a', 'b.c']}}), ({'scalar': None, 'values': ['a,b', 'c'], 'lo': 0, 'hi': None, 'op': 'not-in', 'unary': True, 'path': ['x']}, {'scalar-envelope': {'value': None}, 'set-envelope': {'values': ['a,b', 'c']}, 'range-envelope': {'lower': 0, 'upper': None}, 'unary-envelope': {'operator': 'not-in'}, 'operator-preserve': 'not-in', 'field-path': {'path': ['x']}}), ({'scalar': 0, 'values': [], 'lo': None, 'hi': 2, 'op': 'EQ', 'unary': False, 'path': ['a', 'b.c']}, {'scalar-envelope': {'value': 0}, 'set-envelope': {'values': []}, 'range-envelope': {'lower': None, 'upper': 2}, 'unary-envelope': {'operator': 'EQ', 'value': 0}, 'operator-preserve': 'EQ', 'field-path': {'path': ['a', 'b.c']}}), ({'scalar': 0, 'values': [], 'lo': 0, 'hi': 2, 'op': 'EQ', 'unary': False, 'path': ['x']}, {'scalar-envelope': {'value': 0}, 'set-envelope': {'values': []}, 'range-envelope': {'lower': 0, 'upper': 2}, 'unary-envelope': {'operator': 'EQ', 'value': 0}, 'operator-preserve': 'EQ', 'field-path': {'path': ['x']}}), ({'scalar': 0, 'values': ['a,b', 'c'], 'lo': None, 'hi': 2, 'op': 'EQ', 'unary': True, 'path': ['a', 'b.c']}, {'scalar-envelope': {'value': 0}, 'set-envelope': {'values': ['a,b', 'c']}, 'range-envelope': {'lower': None, 'upper': 2}, 'unary-envelope': {'operator': 'EQ'}, 'operator-preserve': 'EQ', 'field-path': {'path': ['a', 'b.c']}}), ({'scalar': 0, 'values': ['a,b', 'c'], 'lo': 0, 'hi': 2, 'op': 'EQ', 'unary': True, 'path': ['x']}, {'scalar-envelope': {'value': 0}, 'set-envelope': {'values': ['a,b', 'c']}, 'range-envelope': {'lower': 0, 'upper': 2}, 'unary-envelope': {'operator': 'EQ'}, 'operator-preserve': 'EQ', 'field-path': {'path': ['x']}}), ({'scalar': 'x', 'values': [], 'lo': None, 'hi': 2, 'op': 'not-in', 'unary': False, 'path': ['a', 'b.c']}, {'scalar-envelope': {'value': 'x'}, 'set-envelope': {'values': []}, 'range-envelope': {'lower': None, 'upper': 2}, 'unary-envelope': {'operator': 'not-in', 'value': 'x'}, 'operator-preserve': 'not-in', 'field-path': {'path': ['a', 'b.c']}})], 4: [({'scalar': None, 'values': [], 'lo': None, 'hi': None, 'op': 'EQ', 'unary': True, 'path': ['x']}, {'scalar-envelope': {'value': None}, 'set-envelope': {'values': []}, 'range-envelope': {'lower': None, 'upper': None}, 'unary-envelope': {'operator': 'EQ'}, 'operator-preserve': 'EQ', 'field-path': {'path': ['x']}}), ({'scalar': None, 'values': [], 'lo': 0, 'hi': 2, 'op': 'EQ', 'unary': False, 'path': ['a', 'b.c']}, {'scalar-envelope': {'value': None}, 'set-envelope': {'values': []}, 'range-envelope': {'lower': 0, 'upper': 2}, 'unary-envelope': {'operator': 'EQ', 'value': None}, 'operator-preserve': 'EQ', 'field-path': {'path': ['a', 'b.c']}}), ({'scalar': None, 'values': [], 'lo': 0, 'hi': 2, 'op': 'not-in', 'unary': False, 'path': ['a', 'b.c']}, {'scalar-envelope': {'value': None}, 'set-envelope': {'values': []}, 'range-envelope': {'lower': 0, 'upper': 2}, 'unary-envelope': {'operator': 'not-in', 'value': None}, 'operator-preserve': 'not-in', 'field-path': {'path': ['a', 'b.c']}}), ({'scalar': None, 'values': ['a,b', 'c'], 'lo': None, 'hi': 2, 'op': 'not-in', 'unary': False, 'path': ['x']}, {'scalar-envelope': {'value': None}, 'set-envelope': {'values': ['a,b', 'c']}, 'range-envelope': {'lower': None, 'upper': 2}, 'unary-envelope': {'operator': 'not-in', 'value': None}, 'operator-preserve': 'not-in', 'field-path': {'path': ['x']}}), ({'scalar': None, 'values': ['a,b', 'c'], 'lo': 0, 'hi': 2, 'op': 'not-in', 'unary': True, 'path': ['a', 'b.c']}, {'scalar-envelope': {'value': None}, 'set-envelope': {'values': ['a,b', 'c']}, 'range-envelope': {'lower': 0, 'upper': 2}, 'unary-envelope': {'operator': 'not-in'}, 'operator-preserve': 'not-in', 'field-path': {'path': ['a', 'b.c']}}), ({'scalar': 0, 'values': [], 'lo': None, 'hi': 2, 'op': 'not-in', 'unary': True, 'path': ['x']}, {'scalar-envelope': {'value': 0}, 'set-envelope': {'values': []}, 'range-envelope': {'lower': None, 'upper': 2}, 'unary-envelope': {'operator': 'not-in'}, 'operator-preserve': 'not-in', 'field-path': {'path': ['x']}}), ({'scalar': 0, 'values': ['a,b', 'c'], 'lo': None, 'hi': None, 'op': 'EQ', 'unary': False, 'path': ['a', 'b.c']}, {'scalar-envelope': {'value': 0}, 'set-envelope': {'values': ['a,b', 'c']}, 'range-envelope': {'lower': None, 'upper': None}, 'unary-envelope': {'operator': 'EQ', 'value': 0}, 'operator-preserve': 'EQ', 'field-path': {'path': ['a', 'b.c']}}), ({'scalar': 0, 'values': ['a,b', 'c'], 'lo': 0, 'hi': None, 'op': 'EQ', 'unary': False, 'path': ['x']}, {'scalar-envelope': {'value': 0}, 'set-envelope': {'values': ['a,b', 'c']}, 'range-envelope': {'lower': 0, 'upper': None}, 'unary-envelope': {'operator': 'EQ', 'value': 0}, 'operator-preserve': 'EQ', 'field-path': {'path': ['x']}}), ({'scalar': 'x', 'values': [], 'lo': None, 'hi': None, 'op': 'EQ', 'unary': True, 'path': ['a', 'b.c']}, {'scalar-envelope': {'value': 'x'}, 'set-envelope': {'values': []}, 'range-envelope': {'lower': None, 'upper': None}, 'unary-envelope': {'operator': 'EQ'}, 'operator-preserve': 'EQ', 'field-path': {'path': ['a', 'b.c']}}), ({'scalar': 'x', 'values': [], 'lo': 0, 'hi': None, 'op': 'EQ', 'unary': True, 'path': ['x']}, {'scalar-envelope': {'value': 'x'}, 'set-envelope': {'values': []}, 'range-envelope': {'lower': 0, 'upper': None}, 'unary-envelope': {'operator': 'EQ'}, 'operator-preserve': 'EQ', 'field-path': {'path': ['x']}})], 5: [({'scalar': None, 'values': [], 'lo': None, 'hi': None, 'op': 'not-in', 'unary': False, 'path': ['a', 'b.c']}, {'scalar-envelope': {'value': None}, 'set-envelope': {'values': []}, 'range-envelope': {'lower': None, 'upper': None}, 'unary-envelope': {'operator': 'not-in', 'value': None}, 'operator-preserve': 'not-in', 'field-path': {'path': ['a', 'b.c']}}), ({'scalar': None, 'values': [], 'lo': 0, 'hi': 2, 'op': 'not-in', 'unary': True, 'path': ['a', 'b.c']}, {'scalar-envelope': {'value': None}, 'set-envelope': {'values': []}, 'range-envelope': {'lower': 0, 'upper': 2}, 'unary-envelope': {'operator': 'not-in'}, 'operator-preserve': 'not-in', 'field-path': {'path': ['a', 'b.c']}}), ({'scalar': None, 'values': ['a,b', 'c'], 'lo': None, 'hi': None, 'op': 'EQ', 'unary': True, 'path': ['x']}, {'scalar-envelope': {'value': None}, 'set-envelope': {'values': ['a,b', 'c']}, 'range-envelope': {'lower': None, 'upper': None}, 'unary-envelope': {'operator': 'EQ'}, 'operator-preserve': 'EQ', 'field-path': {'path': ['x']}}), ({'scalar': None, 'values': ['a,b', 'c'], 'lo': 0, 'hi': None, 'op': 'not-in', 'unary': False, 'path': ['a', 'b.c']}, {'scalar-envelope': {'value': None}, 'set-envelope': {'values': ['a,b', 'c']}, 'range-envelope': {'lower': 0, 'upper': None}, 'unary-envelope': {'operator': 'not-in', 'value': None}, 'operator-preserve': 'not-in', 'field-path': {'path': ['a', 'b.c']}}), ({'scalar': 0, 'values': [], 'lo': None, 'hi': None, 'op': 'not-in', 'unary': False, 'path': ['x']}, {'scalar-envelope': {'value': 0}, 'set-envelope': {'values': []}, 'range-envelope': {'lower': None, 'upper': None}, 'unary-envelope': {'operator': 'not-in', 'value': 0}, 'operator-preserve': 'not-in', 'field-path': {'path': ['x']}}), ({'scalar': 0, 'values': [], 'lo': 0, 'hi': None, 'op': 'not-in', 'unary': True, 'path': ['a', 'b.c']}, {'scalar-envelope': {'value': 0}, 'set-envelope': {'values': []}, 'range-envelope': {'lower': 0, 'upper': None}, 'unary-envelope': {'operator': 'not-in'}, 'operator-preserve': 'not-in', 'field-path': {'path': ['a', 'b.c']}}), ({'scalar': 0, 'values': ['a,b', 'c'], 'lo': None, 'hi': None, 'op': 'not-in', 'unary': True, 'path': ['x']}, {'scalar-envelope': {'value': 0}, 'set-envelope': {'values': ['a,b', 'c']}, 'range-envelope': {'lower': None, 'upper': None}, 'unary-envelope': {'operator': 'not-in'}, 'operator-preserve': 'not-in', 'field-path': {'path': ['x']}}), ({'scalar': 0, 'values': ['a,b', 'c'], 'lo': 0, 'hi': 2, 'op': 'EQ', 'unary': False, 'path': ['a', 'b.c']}, {'scalar-envelope': {'value': 0}, 'set-envelope': {'values': ['a,b', 'c']}, 'range-envelope': {'lower': 0, 'upper': 2}, 'unary-envelope': {'operator': 'EQ', 'value': 0}, 'operator-preserve': 'EQ', 'field-path': {'path': ['a', 'b.c']}}), ({'scalar': 'x', 'values': [], 'lo': None, 'hi': 2, 'op': 'EQ', 'unary': False, 'path': ['x']}, {'scalar-envelope': {'value': 'x'}, 'set-envelope': {'values': []}, 'range-envelope': {'lower': None, 'upper': 2}, 'unary-envelope': {'operator': 'EQ', 'value': 'x'}, 'operator-preserve': 'EQ', 'field-path': {'path': ['x']}}), ({'scalar': 'x', 'values': [], 'lo': 0, 'hi': 2, 'op': 'EQ', 'unary': True, 'path': ['a', 'b.c']}, {'scalar-envelope': {'value': 'x'}, 'set-envelope': {'values': []}, 'range-envelope': {'lower': 0, 'upper': 2}, 'unary-envelope': {'operator': 'EQ'}, 'operator-preserve': 'EQ', 'field-path': {'path': ['a', 'b.c']}})]}
for index, (data, expected) in enumerate(fixtures[N]):
check("contract fixture " + str(index), solve(data), expected)
print(json.dumps({"observations": observations, "passed": all(x["passed"] for x in observations)}, ensure_ascii=False))
raise SystemExit(0 if all(x["passed"] for x in observations) else 1)
| Boundary fixture | Actual | Expected | Outcome |
|---|---|---|---|
| contract fixture 0 | {'field-path': {'path': ['b.c']}, 'operator-preserve': 'EQ', 'range-envelope': {'lower': None, 'upper': None}, 'scalar-envelope': {'value': None}, 'set-envelope': {'values': []}, 'unary-envelope': {'operator': 'EQ', 'value': None}} | {'field-path': {'path': ['a', 'b.c']}, 'operator-preserve': 'EQ', 'range-envelope': {'lower': None, 'upper': None}, 'scalar-envelope': {'value': None}, 'set-envelope': {'values': []}, 'unary-envelope': {'operator': 'EQ', 'value': None}} | Failed |
| contract fixture 1 | {'field-path': {'path': ['b.c']}, 'operator-preserve': 'not-in', 'range-envelope': {'lower': None, 'upper': None}, 'scalar-envelope': {'value': None}, 'set-envelope': {'values': []}, 'unary-envelope': {'operator': 'not-in'}} | {'field-path': {'path': ['a', 'b.c']}, 'operator-preserve': 'not-in', 'range-envelope': {'lower': None, 'upper': None}, 'scalar-envelope': {'value': None}, 'set-envelope': {'values': []}, 'unary-envelope': {'operator': 'not-in'}} | Failed |
| contract fixture 2 | {'field-path': {'path': ['x']}, 'operator-preserve': 'not-in', 'range-envelope': {'lower': None, 'upper': None}, 'scalar-envelope': {'value': None}, 'set-envelope': {'values': []}, 'unary-envelope': {'operator': 'not-in'}} | {'field-path': {'path': ['x']}, 'operator-preserve': 'not-in', 'range-envelope': {'lower': None, 'upper': None}, 'scalar-envelope': {'value': None}, 'set-envelope': {'values': []}, 'unary-envelope': {'operator': 'not-in'}} | Passed |
| contract fixture 3 | {'field-path': {'path': ['b.c']}, 'operator-preserve': 'EQ', 'range-envelope': {'lower': 0, 'upper': 2}, 'scalar-envelope': {'value': None}, 'set-envelope': {'values': []}, 'unary-envelope': {'operator': 'EQ', 'value': None}} | {'field-path': {'path': ['a', 'b.c']}, 'operator-preserve': 'EQ', 'range-envelope': {'lower': 0, 'upper': 2}, 'scalar-envelope': {'value': None}, 'set-envelope': {'values': []}, 'unary-envelope': {'operator': 'EQ', 'value': None}} | Failed |
| contract fixture 4 | {'field-path': {'path': ['x']}, 'operator-preserve': 'EQ', 'range-envelope': {'lower': None, 'upper': 2}, 'scalar-envelope': {'value': None}, 'set-envelope': {'values': ['a,b', 'c']}, 'unary-envelope': {'operator': 'EQ', 'value': None}} | {'field-path': {'path': ['x']}, 'operator-preserve': 'EQ', 'range-envelope': {'lower': None, 'upper': 2}, 'scalar-envelope': {'value': None}, 'set-envelope': {'values': ['a,b', 'c']}, 'unary-envelope': {'operator': 'EQ', 'value': None}} | Passed |
| contract fixture 5 | {'field-path': {'path': ['b.c']}, 'operator-preserve': 'EQ', 'range-envelope': {'lower': 0, 'upper': 2}, 'scalar-envelope': {'value': None}, 'set-envelope': {'values': ['a,b', 'c']}, 'unary-envelope': {'operator': 'EQ'}} | {'field-path': {'path': ['a', 'b.c']}, 'operator-preserve': 'EQ', 'range-envelope': {'lower': 0, 'upper': 2}, 'scalar-envelope': {'value': None}, 'set-envelope': {'values': ['a,b', 'c']}, 'unary-envelope': {'operator': 'EQ'}} | Failed |
| contract fixture 6 | {'field-path': {'path': ['x']}, 'operator-preserve': 'EQ', 'range-envelope': {'lower': None, 'upper': 2}, 'scalar-envelope': {'value': 0}, 'set-envelope': {'values': []}, 'unary-envelope': {'operator': 'EQ'}} | {'field-path': {'path': ['x']}, 'operator-preserve': 'EQ', 'range-envelope': {'lower': None, 'upper': 2}, 'scalar-envelope': {'value': 0}, 'set-envelope': {'values': []}, 'unary-envelope': {'operator': 'EQ'}} | Passed |
| contract fixture 7 | {'field-path': {'path': ['b.c']}, 'operator-preserve': 'not-in', 'range-envelope': {'lower': 0, 'upper': 2}, 'scalar-envelope': {'value': 0}, 'set-envelope': {'values': []}, 'unary-envelope': {'operator': 'not-in', 'value': 0}} | {'field-path': {'path': ['a', 'b.c']}, 'operator-preserve': 'not-in', 'range-envelope': {'lower': 0, 'upper': 2}, 'scalar-envelope': {'value': 0}, 'set-envelope': {'values': []}, 'unary-envelope': {'operator': 'not-in', 'value': 0}} | Failed |
| contract fixture 8 | {'field-path': {'path': ['x']}, 'operator-preserve': 'not-in', 'range-envelope': {'lower': None, 'upper': 2}, 'scalar-envelope': {'value': 0}, 'set-envelope': {'values': ['a,b', 'c']}, 'unary-envelope': {'operator': 'not-in', 'value': 0}} | {'field-path': {'path': ['x']}, 'operator-preserve': 'not-in', 'range-envelope': {'lower': None, 'upper': 2}, 'scalar-envelope': {'value': 0}, 'set-envelope': {'values': ['a,b', 'c']}, 'unary-envelope': {'operator': 'not-in', 'value': 0}} | Passed |
| contract fixture 9 | {'field-path': {'path': ['b.c']}, 'operator-preserve': 'not-in', 'range-envelope': {'lower': 0, 'upper': 2}, 'scalar-envelope': {'value': 0}, 'set-envelope': {'values': ['a,b', 'c']}, 'unary-envelope': {'operator': 'not-in'}} | {'field-path': {'path': ['a', 'b.c']}, 'operator-preserve': 'not-in', 'range-envelope': {'lower': 0, 'upper': 2}, 'scalar-envelope': {'value': 0}, 'set-envelope': {'values': ['a,b', 'c']}, 'unary-envelope': {'operator': 'not-in'}} | Failed |
SHA-256 / ea1c36ecc3abe26b50675cb79b9f9d3f2718d1f529c9480082a2f974a1a2381b
3 / The verified repair
Exit 0"""Failure Map reference implementation. Python standard library only."""
import json
N = 1
observations = []
def solve(d):
return {'scalar-envelope':({'value':d['scalar']}), 'set-envelope':({'values':d['values']}), 'range-envelope':({'lower':d['lo'],'upper':d['hi']}), 'unary-envelope':({'operator':d['op']} if d['unary'] else {'operator':d['op'],'value':d['scalar']}), 'operator-preserve':(d['op']), 'field-path':({'path':d['path']})}
def check(label, actual, expected):
observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
fixtures = {1: [({'scalar': None, 'values': [], 'lo': None, 'hi': None, 'op': 'EQ', 'unary': False, 'path': ['a', 'b.c']}, {'scalar-envelope': {'value': None}, 'set-envelope': {'values': []}, 'range-envelope': {'lower': None, 'upper': None}, 'unary-envelope': {'operator': 'EQ', 'value': None}, 'operator-preserve': 'EQ', 'field-path': {'path': ['a', 'b.c']}}), ({'scalar': None, 'values': [], 'lo': None, 'hi': None, 'op': 'not-in', 'unary': True, 'path': ['a', 'b.c']}, {'scalar-envelope': {'value': None}, 'set-envelope': {'values': []}, 'range-envelope': {'lower': None, 'upper': None}, 'unary-envelope': {'operator': 'not-in'}, 'operator-preserve': 'not-in', 'field-path': {'path': ['a', 'b.c']}}), ({'scalar': None, 'values': [], 'lo': None, 'hi': None, 'op': 'not-in', 'unary': True, 'path': ['x']}, {'scalar-envelope': {'value': None}, 'set-envelope': {'values': []}, 'range-envelope': {'lower': None, 'upper': None}, 'unary-envelope': {'operator': 'not-in'}, 'operator-preserve': 'not-in', 'field-path': {'path': ['x']}}), ({'scalar': None, 'values': [], 'lo': 0, 'hi': 2, 'op': 'EQ', 'unary': False, 'path': ['a', 'b.c']}, {'scalar-envelope': {'value': None}, 'set-envelope': {'values': []}, 'range-envelope': {'lower': 0, 'upper': 2}, 'unary-envelope': {'operator': 'EQ', 'value': None}, 'operator-preserve': 'EQ', 'field-path': {'path': ['a', 'b.c']}}), ({'scalar': None, 'values': ['a,b', 'c'], 'lo': None, 'hi': 2, 'op': 'EQ', 'unary': False, 'path': ['x']}, {'scalar-envelope': {'value': None}, 'set-envelope': {'values': ['a,b', 'c']}, 'range-envelope': {'lower': None, 'upper': 2}, 'unary-envelope': {'operator': 'EQ', 'value': None}, 'operator-preserve': 'EQ', 'field-path': {'path': ['x']}}), ({'scalar': None, 'values': ['a,b', 'c'], 'lo': 0, 'hi': 2, 'op': 'EQ', 'unary': True, 'path': ['a', 'b.c']}, {'scalar-envelope': {'value': None}, 'set-envelope': {'values': ['a,b', 'c']}, 'range-envelope': {'lower': 0, 'upper': 2}, 'unary-envelope': {'operator': 'EQ'}, 'operator-preserve': 'EQ', 'field-path': {'path': ['a', 'b.c']}}), ({'scalar': 0, 'values': [], 'lo': None, 'hi': 2, 'op': 'EQ', 'unary': True, 'path': ['x']}, {'scalar-envelope': {'value': 0}, 'set-envelope': {'values': []}, 'range-envelope': {'lower': None, 'upper': 2}, 'unary-envelope': {'operator': 'EQ'}, 'operator-preserve': 'EQ', 'field-path': {'path': ['x']}}), ({'scalar': 0, 'values': [], 'lo': 0, 'hi': 2, 'op': 'not-in', 'unary': False, 'path': ['a', 'b.c']}, {'scalar-envelope': {'value': 0}, 'set-envelope': {'values': []}, 'range-envelope': {'lower': 0, 'upper': 2}, 'unary-envelope': {'operator': 'not-in', 'value': 0}, 'operator-preserve': 'not-in', 'field-path': {'path': ['a', 'b.c']}}), ({'scalar': 0, 'values': ['a,b', 'c'], 'lo': None, 'hi': 2, 'op': 'not-in', 'unary': False, 'path': ['x']}, {'scalar-envelope': {'value': 0}, 'set-envelope': {'values': ['a,b', 'c']}, 'range-envelope': {'lower': None, 'upper': 2}, 'unary-envelope': {'operator': 'not-in', 'value': 0}, 'operator-preserve': 'not-in', 'field-path': {'path': ['x']}}), ({'scalar': 0, 'values': ['a,b', 'c'], 'lo': 0, 'hi': 2, 'op': 'not-in', 'unary': True, 'path': ['a', 'b.c']}, {'scalar-envelope': {'value': 0}, 'set-envelope': {'values': ['a,b', 'c']}, 'range-envelope': {'lower': 0, 'upper': 2}, 'unary-envelope': {'operator': 'not-in'}, 'operator-preserve': 'not-in', 'field-path': {'path': ['a', 'b.c']}})], 2: [({'scalar': None, 'values': [], 'lo': None, 'hi': None, 'op': 'EQ', 'unary': False, 'path': ['x']}, {'scalar-envelope': {'value': None}, 'set-envelope': {'values': []}, 'range-envelope': {'lower': None, 'upper': None}, 'unary-envelope': {'operator': 'EQ', 'value': None}, 'operator-preserve': 'EQ', 'field-path': {'path': ['x']}}), ({'scalar': None, 'values': [], 'lo': None, 'hi': 2, 'op': 'not-in', 'unary': False, 'path': ['a', 'b.c']}, {'scalar-envelope': {'value': None}, 'set-envelope': {'values': []}, 'range-envelope': {'lower': None, 'upper': 2}, 'unary-envelope': {'operator': 'not-in', 'value': None}, 'operator-preserve': 'not-in', 'field-path': {'path': ['a', 'b.c']}}), ({'scalar': None, 'values': [], 'lo': None, 'hi': 2, 'op': 'not-in', 'unary': True, 'path': ['a', 'b.c']}, {'scalar-envelope': {'value': None}, 'set-envelope': {'values': []}, 'range-envelope': {'lower': None, 'upper': 2}, 'unary-envelope': {'operator': 'not-in'}, 'operator-preserve': 'not-in', 'field-path': {'path': ['a', 'b.c']}}), ({'scalar': None, 'values': [], 'lo': 0, 'hi': 2, 'op': 'not-in', 'unary': True, 'path': ['x']}, {'scalar-envelope': {'value': None}, 'set-envelope': {'values': []}, 'range-envelope': {'lower': 0, 'upper': 2}, 'unary-envelope': {'operator': 'not-in'}, 'operator-preserve': 'not-in', 'field-path': {'path': ['x']}}), ({'scalar': None, 'values': ['a,b', 'c'], 'lo': 0, 'hi': None, 'op': 'EQ', 'unary': False, 'path': ['a', 'b.c']}, {'scalar-envelope': {'value': None}, 'set-envelope': {'values': ['a,b', 'c']}, 'range-envelope': {'lower': 0, 'upper': None}, 'unary-envelope': {'operator': 'EQ', 'value': None}, 'operator-preserve': 'EQ', 'field-path': {'path': ['a', 'b.c']}}), ({'scalar': 0, 'values': [], 'lo': None, 'hi': None, 'op': 'EQ', 'unary': False, 'path': ['x']}, {'scalar-envelope': {'value': 0}, 'set-envelope': {'values': []}, 'range-envelope': {'lower': None, 'upper': None}, 'unary-envelope': {'operator': 'EQ', 'value': 0}, 'operator-preserve': 'EQ', 'field-path': {'path': ['x']}}), ({'scalar': 0, 'values': [], 'lo': 0, 'hi': None, 'op': 'EQ', 'unary': True, 'path': ['a', 'b.c']}, {'scalar-envelope': {'value': 0}, 'set-envelope': {'values': []}, 'range-envelope': {'lower': 0, 'upper': None}, 'unary-envelope': {'operator': 'EQ'}, 'operator-preserve': 'EQ', 'field-path': {'path': ['a', 'b.c']}}), ({'scalar': 0, 'values': ['a,b', 'c'], 'lo': None, 'hi': None, 'op': 'EQ', 'unary': True, 'path': ['x']}, {'scalar-envelope': {'value': 0}, 'set-envelope': {'values': ['a,b', 'c']}, 'range-envelope': {'lower': None, 'upper': None}, 'unary-envelope': {'operator': 'EQ'}, 'operator-preserve': 'EQ', 'field-path': {'path': ['x']}}), ({'scalar': 0, 'values': ['a,b', 'c'], 'lo': 0, 'hi': None, 'op': 'not-in', 'unary': False, 'path': ['a', 'b.c']}, {'scalar-envelope': {'value': 0}, 'set-envelope': {'values': ['a,b', 'c']}, 'range-envelope': {'lower': 0, 'upper': None}, 'unary-envelope': {'operator': 'not-in', 'value': 0}, 'operator-preserve': 'not-in', 'field-path': {'path': ['a', 'b.c']}}), ({'scalar': 'x', 'values': [], 'lo': None, 'hi': None, 'op': 'not-in', 'unary': False, 'path': ['x']}, {'scalar-envelope': {'value': 'x'}, 'set-envelope': {'values': []}, 'range-envelope': {'lower': None, 'upper': None}, 'unary-envelope': {'operator': 'not-in', 'value': 'x'}, 'operator-preserve': 'not-in', 'field-path': {'path': ['x']}})], 3: [({'scalar': None, 'values': [], 'lo': None, 'hi': None, 'op': 'EQ', 'unary': True, 'path': ['a', 'b.c']}, {'scalar-envelope': {'value': None}, 'set-envelope': {'values': []}, 'range-envelope': {'lower': None, 'upper': None}, 'unary-envelope': {'operator': 'EQ'}, 'operator-preserve': 'EQ', 'field-path': {'path': ['a', 'b.c']}}), ({'scalar': None, 'values': [], 'lo': 0, 'hi': None, 'op': 'EQ', 'unary': True, 'path': ['a', 'b.c']}, {'scalar-envelope': {'value': None}, 'set-envelope': {'values': []}, 'range-envelope': {'lower': 0, 'upper': None}, 'unary-envelope': {'operator': 'EQ'}, 'operator-preserve': 'EQ', 'field-path': {'path': ['a', 'b.c']}}), ({'scalar': None, 'values': [], 'lo': 0, 'hi': None, 'op': 'not-in', 'unary': False, 'path': ['x']}, {'scalar-envelope': {'value': None}, 'set-envelope': {'values': []}, 'range-envelope': {'lower': 0, 'upper': None}, 'unary-envelope': {'operator': 'not-in', 'value': None}, 'operator-preserve': 'not-in', 'field-path': {'path': ['x']}}), ({'scalar': None, 'values': ['a,b', 'c'], 'lo': None, 'hi': None, 'op': 'not-in', 'unary': True, 'path': ['a', 'b.c']}, {'scalar-envelope': {'value': None}, 'set-envelope': {'values': ['a,b', 'c']}, 'range-envelope': {'lower': None, 'upper': None}, 'unary-envelope': {'operator': 'not-in'}, 'operator-preserve': 'not-in', 'field-path': {'path': ['a', 'b.c']}}), ({'scalar': None, 'values': ['a,b', 'c'], 'lo': 0, 'hi': None, 'op': 'not-in', 'unary': True, 'path': ['x']}, {'scalar-envelope': {'value': None}, 'set-envelope': {'values': ['a,b', 'c']}, 'range-envelope': {'lower': 0, 'upper': None}, 'unary-envelope': {'operator': 'not-in'}, 'operator-preserve': 'not-in', 'field-path': {'path': ['x']}}), ({'scalar': 0, 'values': [], 'lo': None, 'hi': 2, 'op': 'EQ', 'unary': False, 'path': ['a', 'b.c']}, {'scalar-envelope': {'value': 0}, 'set-envelope': {'values': []}, 'range-envelope': {'lower': None, 'upper': 2}, 'unary-envelope': {'operator': 'EQ', 'value': 0}, 'operator-preserve': 'EQ', 'field-path': {'path': ['a', 'b.c']}}), ({'scalar': 0, 'values': [], 'lo': 0, 'hi': 2, 'op': 'EQ', 'unary': False, 'path': ['x']}, {'scalar-envelope': {'value': 0}, 'set-envelope': {'values': []}, 'range-envelope': {'lower': 0, 'upper': 2}, 'unary-envelope': {'operator': 'EQ', 'value': 0}, 'operator-preserve': 'EQ', 'field-path': {'path': ['x']}}), ({'scalar': 0, 'values': ['a,b', 'c'], 'lo': None, 'hi': 2, 'op': 'EQ', 'unary': True, 'path': ['a', 'b.c']}, {'scalar-envelope': {'value': 0}, 'set-envelope': {'values': ['a,b', 'c']}, 'range-envelope': {'lower': None, 'upper': 2}, 'unary-envelope': {'operator': 'EQ'}, 'operator-preserve': 'EQ', 'field-path': {'path': ['a', 'b.c']}}), ({'scalar': 0, 'values': ['a,b', 'c'], 'lo': 0, 'hi': 2, 'op': 'EQ', 'unary': True, 'path': ['x']}, {'scalar-envelope': {'value': 0}, 'set-envelope': {'values': ['a,b', 'c']}, 'range-envelope': {'lower': 0, 'upper': 2}, 'unary-envelope': {'operator': 'EQ'}, 'operator-preserve': 'EQ', 'field-path': {'path': ['x']}}), ({'scalar': 'x', 'values': [], 'lo': None, 'hi': 2, 'op': 'not-in', 'unary': False, 'path': ['a', 'b.c']}, {'scalar-envelope': {'value': 'x'}, 'set-envelope': {'values': []}, 'range-envelope': {'lower': None, 'upper': 2}, 'unary-envelope': {'operator': 'not-in', 'value': 'x'}, 'operator-preserve': 'not-in', 'field-path': {'path': ['a', 'b.c']}})], 4: [({'scalar': None, 'values': [], 'lo': None, 'hi': None, 'op': 'EQ', 'unary': True, 'path': ['x']}, {'scalar-envelope': {'value': None}, 'set-envelope': {'values': []}, 'range-envelope': {'lower': None, 'upper': None}, 'unary-envelope': {'operator': 'EQ'}, 'operator-preserve': 'EQ', 'field-path': {'path': ['x']}}), ({'scalar': None, 'values': [], 'lo': 0, 'hi': 2, 'op': 'EQ', 'unary': False, 'path': ['a', 'b.c']}, {'scalar-envelope': {'value': None}, 'set-envelope': {'values': []}, 'range-envelope': {'lower': 0, 'upper': 2}, 'unary-envelope': {'operator': 'EQ', 'value': None}, 'operator-preserve': 'EQ', 'field-path': {'path': ['a', 'b.c']}}), ({'scalar': None, 'values': [], 'lo': 0, 'hi': 2, 'op': 'not-in', 'unary': False, 'path': ['a', 'b.c']}, {'scalar-envelope': {'value': None}, 'set-envelope': {'values': []}, 'range-envelope': {'lower': 0, 'upper': 2}, 'unary-envelope': {'operator': 'not-in', 'value': None}, 'operator-preserve': 'not-in', 'field-path': {'path': ['a', 'b.c']}}), ({'scalar': None, 'values': ['a,b', 'c'], 'lo': None, 'hi': 2, 'op': 'not-in', 'unary': False, 'path': ['x']}, {'scalar-envelope': {'value': None}, 'set-envelope': {'values': ['a,b', 'c']}, 'range-envelope': {'lower': None, 'upper': 2}, 'unary-envelope': {'operator': 'not-in', 'value': None}, 'operator-preserve': 'not-in', 'field-path': {'path': ['x']}}), ({'scalar': None, 'values': ['a,b', 'c'], 'lo': 0, 'hi': 2, 'op': 'not-in', 'unary': True, 'path': ['a', 'b.c']}, {'scalar-envelope': {'value': None}, 'set-envelope': {'values': ['a,b', 'c']}, 'range-envelope': {'lower': 0, 'upper': 2}, 'unary-envelope': {'operator': 'not-in'}, 'operator-preserve': 'not-in', 'field-path': {'path': ['a', 'b.c']}}), ({'scalar': 0, 'values': [], 'lo': None, 'hi': 2, 'op': 'not-in', 'unary': True, 'path': ['x']}, {'scalar-envelope': {'value': 0}, 'set-envelope': {'values': []}, 'range-envelope': {'lower': None, 'upper': 2}, 'unary-envelope': {'operator': 'not-in'}, 'operator-preserve': 'not-in', 'field-path': {'path': ['x']}}), ({'scalar': 0, 'values': ['a,b', 'c'], 'lo': None, 'hi': None, 'op': 'EQ', 'unary': False, 'path': ['a', 'b.c']}, {'scalar-envelope': {'value': 0}, 'set-envelope': {'values': ['a,b', 'c']}, 'range-envelope': {'lower': None, 'upper': None}, 'unary-envelope': {'operator': 'EQ', 'value': 0}, 'operator-preserve': 'EQ', 'field-path': {'path': ['a', 'b.c']}}), ({'scalar': 0, 'values': ['a,b', 'c'], 'lo': 0, 'hi': None, 'op': 'EQ', 'unary': False, 'path': ['x']}, {'scalar-envelope': {'value': 0}, 'set-envelope': {'values': ['a,b', 'c']}, 'range-envelope': {'lower': 0, 'upper': None}, 'unary-envelope': {'operator': 'EQ', 'value': 0}, 'operator-preserve': 'EQ', 'field-path': {'path': ['x']}}), ({'scalar': 'x', 'values': [], 'lo': None, 'hi': None, 'op': 'EQ', 'unary': True, 'path': ['a', 'b.c']}, {'scalar-envelope': {'value': 'x'}, 'set-envelope': {'values': []}, 'range-envelope': {'lower': None, 'upper': None}, 'unary-envelope': {'operator': 'EQ'}, 'operator-preserve': 'EQ', 'field-path': {'path': ['a', 'b.c']}}), ({'scalar': 'x', 'values': [], 'lo': 0, 'hi': None, 'op': 'EQ', 'unary': True, 'path': ['x']}, {'scalar-envelope': {'value': 'x'}, 'set-envelope': {'values': []}, 'range-envelope': {'lower': 0, 'upper': None}, 'unary-envelope': {'operator': 'EQ'}, 'operator-preserve': 'EQ', 'field-path': {'path': ['x']}})], 5: [({'scalar': None, 'values': [], 'lo': None, 'hi': None, 'op': 'not-in', 'unary': False, 'path': ['a', 'b.c']}, {'scalar-envelope': {'value': None}, 'set-envelope': {'values': []}, 'range-envelope': {'lower': None, 'upper': None}, 'unary-envelope': {'operator': 'not-in', 'value': None}, 'operator-preserve': 'not-in', 'field-path': {'path': ['a', 'b.c']}}), ({'scalar': None, 'values': [], 'lo': 0, 'hi': 2, 'op': 'not-in', 'unary': True, 'path': ['a', 'b.c']}, {'scalar-envelope': {'value': None}, 'set-envelope': {'values': []}, 'range-envelope': {'lower': 0, 'upper': 2}, 'unary-envelope': {'operator': 'not-in'}, 'operator-preserve': 'not-in', 'field-path': {'path': ['a', 'b.c']}}), ({'scalar': None, 'values': ['a,b', 'c'], 'lo': None, 'hi': None, 'op': 'EQ', 'unary': True, 'path': ['x']}, {'scalar-envelope': {'value': None}, 'set-envelope': {'values': ['a,b', 'c']}, 'range-envelope': {'lower': None, 'upper': None}, 'unary-envelope': {'operator': 'EQ'}, 'operator-preserve': 'EQ', 'field-path': {'path': ['x']}}), ({'scalar': None, 'values': ['a,b', 'c'], 'lo': 0, 'hi': None, 'op': 'not-in', 'unary': False, 'path': ['a', 'b.c']}, {'scalar-envelope': {'value': None}, 'set-envelope': {'values': ['a,b', 'c']}, 'range-envelope': {'lower': 0, 'upper': None}, 'unary-envelope': {'operator': 'not-in', 'value': None}, 'operator-preserve': 'not-in', 'field-path': {'path': ['a', 'b.c']}}), ({'scalar': 0, 'values': [], 'lo': None, 'hi': None, 'op': 'not-in', 'unary': False, 'path': ['x']}, {'scalar-envelope': {'value': 0}, 'set-envelope': {'values': []}, 'range-envelope': {'lower': None, 'upper': None}, 'unary-envelope': {'operator': 'not-in', 'value': 0}, 'operator-preserve': 'not-in', 'field-path': {'path': ['x']}}), ({'scalar': 0, 'values': [], 'lo': 0, 'hi': None, 'op': 'not-in', 'unary': True, 'path': ['a', 'b.c']}, {'scalar-envelope': {'value': 0}, 'set-envelope': {'values': []}, 'range-envelope': {'lower': 0, 'upper': None}, 'unary-envelope': {'operator': 'not-in'}, 'operator-preserve': 'not-in', 'field-path': {'path': ['a', 'b.c']}}), ({'scalar': 0, 'values': ['a,b', 'c'], 'lo': None, 'hi': None, 'op': 'not-in', 'unary': True, 'path': ['x']}, {'scalar-envelope': {'value': 0}, 'set-envelope': {'values': ['a,b', 'c']}, 'range-envelope': {'lower': None, 'upper': None}, 'unary-envelope': {'operator': 'not-in'}, 'operator-preserve': 'not-in', 'field-path': {'path': ['x']}}), ({'scalar': 0, 'values': ['a,b', 'c'], 'lo': 0, 'hi': 2, 'op': 'EQ', 'unary': False, 'path': ['a', 'b.c']}, {'scalar-envelope': {'value': 0}, 'set-envelope': {'values': ['a,b', 'c']}, 'range-envelope': {'lower': 0, 'upper': 2}, 'unary-envelope': {'operator': 'EQ', 'value': 0}, 'operator-preserve': 'EQ', 'field-path': {'path': ['a', 'b.c']}}), ({'scalar': 'x', 'values': [], 'lo': None, 'hi': 2, 'op': 'EQ', 'unary': False, 'path': ['x']}, {'scalar-envelope': {'value': 'x'}, 'set-envelope': {'values': []}, 'range-envelope': {'lower': None, 'upper': 2}, 'unary-envelope': {'operator': 'EQ', 'value': 'x'}, 'operator-preserve': 'EQ', 'field-path': {'path': ['x']}}), ({'scalar': 'x', 'values': [], 'lo': 0, 'hi': 2, 'op': 'EQ', 'unary': True, 'path': ['a', 'b.c']}, {'scalar-envelope': {'value': 'x'}, 'set-envelope': {'values': []}, 'range-envelope': {'lower': 0, 'upper': 2}, 'unary-envelope': {'operator': 'EQ'}, 'operator-preserve': 'EQ', 'field-path': {'path': ['a', 'b.c']}})]}
for index, (data, expected) in enumerate(fixtures[N]):
check("contract fixture " + str(index), solve(data), expected)
print(json.dumps({"observations": observations, "passed": all(x["passed"] for x in observations)}, ensure_ascii=False))
raise SystemExit(0 if all(x["passed"] for x in observations) else 1)
| Boundary fixture | Actual | Expected | Outcome |
|---|---|---|---|
| contract fixture 0 | {'field-path': {'path': ['a', 'b.c']}, 'operator-preserve': 'EQ', 'range-envelope': {'lower': None, 'upper': None}, 'scalar-envelope': {'value': None}, 'set-envelope': {'values': []}, 'unary-envelope': {'operator': 'EQ', 'value': None}} | {'field-path': {'path': ['a', 'b.c']}, 'operator-preserve': 'EQ', 'range-envelope': {'lower': None, 'upper': None}, 'scalar-envelope': {'value': None}, 'set-envelope': {'values': []}, 'unary-envelope': {'operator': 'EQ', 'value': None}} | Passed |
| contract fixture 1 | {'field-path': {'path': ['a', 'b.c']}, 'operator-preserve': 'not-in', 'range-envelope': {'lower': None, 'upper': None}, 'scalar-envelope': {'value': None}, 'set-envelope': {'values': []}, 'unary-envelope': {'operator': 'not-in'}} | {'field-path': {'path': ['a', 'b.c']}, 'operator-preserve': 'not-in', 'range-envelope': {'lower': None, 'upper': None}, 'scalar-envelope': {'value': None}, 'set-envelope': {'values': []}, 'unary-envelope': {'operator': 'not-in'}} | Passed |
| contract fixture 2 | {'field-path': {'path': ['x']}, 'operator-preserve': 'not-in', 'range-envelope': {'lower': None, 'upper': None}, 'scalar-envelope': {'value': None}, 'set-envelope': {'values': []}, 'unary-envelope': {'operator': 'not-in'}} | {'field-path': {'path': ['x']}, 'operator-preserve': 'not-in', 'range-envelope': {'lower': None, 'upper': None}, 'scalar-envelope': {'value': None}, 'set-envelope': {'values': []}, 'unary-envelope': {'operator': 'not-in'}} | Passed |
| contract fixture 3 | {'field-path': {'path': ['a', 'b.c']}, 'operator-preserve': 'EQ', 'range-envelope': {'lower': 0, 'upper': 2}, 'scalar-envelope': {'value': None}, 'set-envelope': {'values': []}, 'unary-envelope': {'operator': 'EQ', 'value': None}} | {'field-path': {'path': ['a', 'b.c']}, 'operator-preserve': 'EQ', 'range-envelope': {'lower': 0, 'upper': 2}, 'scalar-envelope': {'value': None}, 'set-envelope': {'values': []}, 'unary-envelope': {'operator': 'EQ', 'value': None}} | Passed |
| contract fixture 4 | {'field-path': {'path': ['x']}, 'operator-preserve': 'EQ', 'range-envelope': {'lower': None, 'upper': 2}, 'scalar-envelope': {'value': None}, 'set-envelope': {'values': ['a,b', 'c']}, 'unary-envelope': {'operator': 'EQ', 'value': None}} | {'field-path': {'path': ['x']}, 'operator-preserve': 'EQ', 'range-envelope': {'lower': None, 'upper': 2}, 'scalar-envelope': {'value': None}, 'set-envelope': {'values': ['a,b', 'c']}, 'unary-envelope': {'operator': 'EQ', 'value': None}} | Passed |
| contract fixture 5 | {'field-path': {'path': ['a', 'b.c']}, 'operator-preserve': 'EQ', 'range-envelope': {'lower': 0, 'upper': 2}, 'scalar-envelope': {'value': None}, 'set-envelope': {'values': ['a,b', 'c']}, 'unary-envelope': {'operator': 'EQ'}} | {'field-path': {'path': ['a', 'b.c']}, 'operator-preserve': 'EQ', 'range-envelope': {'lower': 0, 'upper': 2}, 'scalar-envelope': {'value': None}, 'set-envelope': {'values': ['a,b', 'c']}, 'unary-envelope': {'operator': 'EQ'}} | Passed |
| contract fixture 6 | {'field-path': {'path': ['x']}, 'operator-preserve': 'EQ', 'range-envelope': {'lower': None, 'upper': 2}, 'scalar-envelope': {'value': 0}, 'set-envelope': {'values': []}, 'unary-envelope': {'operator': 'EQ'}} | {'field-path': {'path': ['x']}, 'operator-preserve': 'EQ', 'range-envelope': {'lower': None, 'upper': 2}, 'scalar-envelope': {'value': 0}, 'set-envelope': {'values': []}, 'unary-envelope': {'operator': 'EQ'}} | Passed |
| contract fixture 7 | {'field-path': {'path': ['a', 'b.c']}, 'operator-preserve': 'not-in', 'range-envelope': {'lower': 0, 'upper': 2}, 'scalar-envelope': {'value': 0}, 'set-envelope': {'values': []}, 'unary-envelope': {'operator': 'not-in', 'value': 0}} | {'field-path': {'path': ['a', 'b.c']}, 'operator-preserve': 'not-in', 'range-envelope': {'lower': 0, 'upper': 2}, 'scalar-envelope': {'value': 0}, 'set-envelope': {'values': []}, 'unary-envelope': {'operator': 'not-in', 'value': 0}} | Passed |
| contract fixture 8 | {'field-path': {'path': ['x']}, 'operator-preserve': 'not-in', 'range-envelope': {'lower': None, 'upper': 2}, 'scalar-envelope': {'value': 0}, 'set-envelope': {'values': ['a,b', 'c']}, 'unary-envelope': {'operator': 'not-in', 'value': 0}} | {'field-path': {'path': ['x']}, 'operator-preserve': 'not-in', 'range-envelope': {'lower': None, 'upper': 2}, 'scalar-envelope': {'value': 0}, 'set-envelope': {'values': ['a,b', 'c']}, 'unary-envelope': {'operator': 'not-in', 'value': 0}} | Passed |
| contract fixture 9 | {'field-path': {'path': ['a', 'b.c']}, 'operator-preserve': 'not-in', 'range-envelope': {'lower': 0, 'upper': 2}, 'scalar-envelope': {'value': 0}, 'set-envelope': {'values': ['a,b', 'c']}, 'unary-envelope': {'operator': 'not-in'}} | {'field-path': {'path': ['a', 'b.c']}, 'operator-preserve': 'not-in', 'range-envelope': {'lower': 0, 'upper': 2}, 'scalar-envelope': {'value': 0}, 'set-envelope': {'values': ['a,b', 'c']}, 'unary-envelope': {'operator': 'not-in'}} | Passed |
SHA-256 / 3285bfe0b666120f9245b349ed9cb482405ad3ee6d9dc5cc3f30db45e6aa6930
Verification & scope
Deterministic bounded UI-state model only; no browser, query engine, network, or production-standard conformance is claimed. This reproducer isolates one failure mechanism. Results cover the supplied fixtures. Variants within a family share a test contract and should remain grouped when constructing evaluation splits. Related mechanisms with a shared evaluation_group must also remain together; these controlled models are not independent production incidents.
Observations recorded using Python 3.12.14 at 2026-09-29T14:41:10.572720+00:00.
Case digest / cb73ea5da4880dc18752b4d761a32d649c26405a98170fa0deab7ccc0429bc79