broken_source:
"""Failure Map reference implementation. Python standard library only."""
import json

N = 1
observations = []
def solve(d):
    return {'polarity-prefix':(d['text'].startswith('-') and not d['escaped']), 'operand-strip':(d['text'][1:] if d['text'].startswith('-') and not d['escaped'] else d['text']), 'commit-gate':(bool(d['text'].strip()) and not d['quote_open'] and not d['composing']), 'delimiter-active':(d['delimiter'] and not d['quote_open'] and not d['escaped']), 'quote-feedback':('unfinished phrase' if d['quote_open'] else ''), 'empty-exclusion':(d['text']=='-')}
def check(label, actual, expected):
    observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
fixtures = {1: [({'text': '-', 'escaped': True, 'quote_open': False, 'composing': False, 'delimiter': False}, {'polarity-prefix': False, 'operand-strip': '-', 'commit-gate': True, 'delimiter-active': False, 'quote-feedback': '', 'empty-exclusion': False}), ({'text': '--x', 'escaped': False, 'quote_open': False, 'composing': True, 'delimiter': True}, {'polarity-prefix': True, 'operand-strip': '-x', 'commit-gate': False, 'delimiter-active': True, 'quote-feedback': '', 'empty-exclusion': False}), ({'text': '', 'escaped': False, 'quote_open': True, 'composing': True, 'delimiter': True}, {'polarity-prefix': False, 'operand-strip': '', 'commit-gate': False, 'delimiter-active': False, 'quote-feedback': 'unfinished phrase', 'empty-exclusion': False}), ({'text': '', 'escaped': True, 'quote_open': True, 'composing': True, 'delimiter': False}, {'polarity-prefix': False, 'operand-strip': '', 'commit-gate': False, 'delimiter-active': False, 'quote-feedback': 'unfinished phrase', 'empty-exclusion': False}), ({'text': '-', 'escaped': False, 'quote_open': True, 'composing': False, 'delimiter': True}, {'polarity-prefix': True, 'operand-strip': '', 'commit-gate': False, 'delimiter-active': False, 'quote-feedback': 'unfinished phrase', 'empty-exclusion': True}), ({'text': '-', 'escaped': True, 'quote_open': True, 'composing': False, 'delimiter': False}, {'polarity-prefix': False, 'operand-strip': '-', 'commit-gate': False, 'delimiter-active': False, 'quote-feedback': 'unfinished phrase', 'empty-exclusion': False}), ({'text': '--x', 'escaped': True, 'quote_open': False, 'composing': True, 'delimiter': False}, {'polarity-prefix': False, 'operand-strip': '--x', 'commit-gate': False, 'delimiter-active': False, 'quote-feedback': '', 'empty-exclusion': False}), ({'text': 'a-b', 'escaped': False, 'quote_open': False, 'composing': False, 'delimiter': True}, {'polarity-prefix': False, 'operand-strip': 'a-b', 'commit-gate': True, 'delimiter-active': True, 'quote-feedback': '', 'empty-exclusion': False}), ({'text': 'a-b', 'escaped': True, 'quote_open': False, 'composing': False, 'delimiter': False}, {'polarity-prefix': False, 'operand-strip': 'a-b', 'commit-gate': True, 'delimiter-active': False, 'quote-feedback': '', 'empty-exclusion': False}), ({'text': 'a-b', 'escaped': True, 'quote_open': True, 'composing': True, 'delimiter': True}, {'polarity-prefix': False, 'operand-strip': 'a-b', 'commit-gate': False, 'delimiter-active': False, 'quote-feedback': 'unfinished phrase', 'empty-exclusion': False})], 2: [({'text': '-', 'escaped': True, 'quote_open': False, 'composing': False, 'delimiter': True}, {'polarity-prefix': False, 'operand-strip': '-', 'commit-gate': True, 'delimiter-active': False, 'quote-feedback': '', 'empty-exclusion': False}), ({'text': '--x', 'escaped': False, 'quote_open': True, 'composing': True, 'delimiter': False}, {'polarity-prefix': True, 'operand-strip': '-x', 'commit-gate': False, 'delimiter-active': False, 'quote-feedback': 'unfinished phrase', 'empty-exclusion': False}), ({'text': '', 'escaped': True, 'quote_open': True, 'composing': True, 'delimiter': False}, {'polarity-prefix': False, 'operand-strip': '', 'commit-gate': False, 'delimiter-active': False, 'quote-feedback': 'unfinished phrase', 'empty-exclusion': False}), ({'text': '-', 'escaped': False, 'quote_open': True, 'composing': False, 'delimiter': True}, {'polarity-prefix': True, 'operand-strip': '', 'commit-gate': False, 'delimiter-active': False, 'quote-feedback': 'unfinished phrase', 'empty-exclusion': True}), ({'text': '-', 'escaped': True, 'quote_open': True, 'composing': False, 'delimiter': False}, {'polarity-prefix': False, 'operand-strip': '-', 'commit-gate': False, 'delimiter-active': False, 'quote-feedback': 'unfinished phrase', 'empty-exclusion': False}), ({'text': '--x', 'escaped': False, 'quote_open': False, 'composing': True, 'delimiter': True}, {'polarity-prefix': True, 'operand-strip': '-x', 'commit-gate': False, 'delimiter-active': True, 'quote-feedback': '', 'empty-exclusion': False}), ({'text': '--x', 'escaped': True, 'quote_open': False, 'composing': True, 'delimiter': False}, {'polarity-prefix': False, 'operand-strip': '--x', 'commit-gate': False, 'delimiter-active': False, 'quote-feedback': '', 'empty-exclusion': False}), ({'text': 'a-b', 'escaped': False, 'quote_open': False, 'composing': False, 'delimiter': True}, {'polarity-prefix': False, 'operand-strip': 'a-b', 'commit-gate': True, 'delimiter-active': True, 'quote-feedback': '', 'empty-exclusion': False}), ({'text': 'a-b', 'escaped': True, 'quote_open': False, 'composing': False, 'delimiter': False}, {'polarity-prefix': False, 'operand-strip': 'a-b', 'commit-gate': True, 'delimiter-active': False, 'quote-feedback': '', 'empty-exclusion': False}), ({'text': 'a-b', 'escaped': True, 'quote_open': True, 'composing': True, 'delimiter': True}, {'polarity-prefix': False, 'operand-strip': 'a-b', 'commit-gate': False, 'delimiter-active': False, 'quote-feedback': 'unfinished phrase', 'empty-exclusion': False})], 3: [({'text': '-', 'escaped': True, 'quote_open': False, 'composing': True, 'delimiter': False}, {'polarity-prefix': False, 'operand-strip': '-', 'commit-gate': False, 'delimiter-active': False, 'quote-feedback': '', 'empty-exclusion': False}), ({'text': '--x', 'escaped': False, 'quote_open': False, 'composing': False, 'delimiter': True}, {'polarity-prefix': True, 'operand-strip': '-x', 'commit-gate': True, 'delimiter-active': True, 'quote-feedback': '', 'empty-exclusion': False}), ({'text': '-', 'escaped': False, 'quote_open': True, 'composing': False, 'delimiter': True}, {'polarity-prefix': True, 'operand-strip': '', 'commit-gate': False, 'delimiter-active': False, 'quote-feedback': 'unfinished phrase', 'empty-exclusion': True}), ({'text': '-', 'escaped': True, 'quote_open': True, 'composing': False, 'delimiter': False}, {'polarity-prefix': False, 'operand-strip': '-', 'commit-gate': False, 'delimiter-active': False, 'quote-feedback': 'unfinished phrase', 'empty-exclusion': False}), ({'text': '--x', 'escaped': False, 'quote_open': False, 'composing': True, 'delimiter': True}, {'polarity-prefix': True, 'operand-strip': '-x', 'commit-gate': False, 'delimiter-active': True, 'quote-feedback': '', 'empty-exclusion': False}), ({'text': '--x', 'escaped': True, 'quote_open': False, 'composing': True, 'delimiter': False}, {'polarity-prefix': False, 'operand-strip': '--x', 'commit-gate': False, 'delimiter-active': False, 'quote-feedback': '', 'empty-exclusion': False}), ({'text': 'a-b', 'escaped': False, 'quote_open': False, 'composing': False, 'delimiter': True}, {'polarity-prefix': False, 'operand-strip': 'a-b', 'commit-gate': True, 'delimiter-active': True, 'quote-feedback': '', 'empty-exclusion': False}), ({'text': 'a-b', 'escaped': True, 'quote_open': False, 'composing': False, 'delimiter': False}, {'polarity-prefix': False, 'operand-strip': 'a-b', 'commit-gate': True, 'delimiter-active': False, 'quote-feedback': '', 'empty-exclusion': False}), ({'text': 'a-b', 'escaped': True, 'quote_open': True, 'composing': True, 'delimiter': True}, {'polarity-prefix': False, 'operand-strip': 'a-b', 'commit-gate': False, 'delimiter-active': False, 'quote-feedback': 'unfinished phrase', 'empty-exclusion': False}), ({'text': 'two words', 'escaped': False, 'quote_open': True, 'composing': True, 'delimiter': False}, {'polarity-prefix': False, 'operand-strip': 'two words', 'commit-gate': False, 'delimiter-active': False, 'quote-feedback': 'unfinished phrase', 'empty-exclusion': False})], 4: [({'text': '-', 'escaped': True, 'quote_open': False, 'composing': True, 'delimiter': True}, {'polarity-prefix': False, 'operand-strip': '-', 'commit-gate': False, 'delimiter-active': False, 'quote-feedback': '', 'empty-exclusion': False}), ({'text': '--x', 'escaped': False, 'quote_open': True, 'composing': False, 'delimiter': False}, {'polarity-prefix': True, 'operand-strip': '-x', 'commit-gate': False, 'delimiter-active': False, 'quote-feedback': 'unfinished phrase', 'empty-exclusion': False}), ({'text': '-', 'escaped': True, 'quote_open': True, 'composing': False, 'delimiter': False}, {'polarity-prefix': False, 'operand-strip': '-', 'commit-gate': False, 'delimiter-active': False, 'quote-feedback': 'unfinished phrase', 'empty-exclusion': False}), ({'text': '--x', 'escaped': False, 'quote_open': False, 'composing': True, 'delimiter': True}, {'polarity-prefix': True, 'operand-strip': '-x', 'commit-gate': False, 'delimiter-active': True, 'quote-feedback': '', 'empty-exclusion': False}), ({'text': '--x', 'escaped': True, 'quote_open': False, 'composing': True, 'delimiter': False}, {'polarity-prefix': False, 'operand-strip': '--x', 'commit-gate': False, 'delimiter-active': False, 'quote-feedback': '', 'empty-exclusion': False}), ({'text': 'a-b', 'escaped': False, 'quote_open': False, 'composing': False, 'delimiter': True}, {'polarity-prefix': False, 'operand-strip': 'a-b', 'commit-gate': True, 'delimiter-active': True, 'quote-feedback': '', 'empty-exclusion': False}), ({'text': 'a-b', 'escaped': True, 'quote_open': False, 'composing': False, 'delimiter': False}, {'polarity-prefix': False, 'operand-strip': 'a-b', 'commit-gate': True, 'delimiter-active': False, 'quote-feedback': '', 'empty-exclusion': False}), ({'text': 'a-b', 'escaped': True, 'quote_open': True, 'composing': True, 'delimiter': True}, {'polarity-prefix': False, 'operand-strip': 'a-b', 'commit-gate': False, 'delimiter-active': False, 'quote-feedback': 'unfinished phrase', 'empty-exclusion': False}), ({'text': 'two words', 'escaped': False, 'quote_open': True, 'composing': True, 'delimiter': False}, {'polarity-prefix': False, 'operand-strip': 'two words', 'commit-gate': False, 'delimiter-active': False, 'quote-feedback': 'unfinished phrase', 'empty-exclusion': False}), ({'text': 'two words', 'escaped': True, 'quote_open': True, 'composing': False, 'delimiter': True}, {'polarity-prefix': False, 'operand-strip': 'two words', 'commit-gate': False, 'delimiter-active': False, 'quote-feedback': 'unfinished phrase', 'empty-exclusion': False})], 5: [({'text': '-', 'escaped': True, 'quote_open': True, 'composing': False, 'delimiter': False}, {'polarity-prefix': False, 'operand-strip': '-', 'commit-gate': False, 'delimiter-active': False, 'quote-feedback': 'unfinished phrase', 'empty-exclusion': False}), ({'text': '--x', 'escaped': False, 'quote_open': True, 'composing': True, 'delimiter': True}, {'polarity-prefix': True, 'operand-strip': '-x', 'commit-gate': False, 'delimiter-active': False, 'quote-feedback': 'unfinished phrase', 'empty-exclusion': False}), ({'text': '--x', 'escaped': False, 'quote_open': False, 'composing': True, 'delimiter': True}, {'polarity-prefix': True, 'operand-strip': '-x', 'commit-gate': False, 'delimiter-active': True, 'quote-feedback': '', 'empty-exclusion': False}), ({'text': '--x', 'escaped': True, 'quote_open': False, 'composing': True, 'delimiter': False}, {'polarity-prefix': False, 'operand-strip': '--x', 'commit-gate': False, 'delimiter-active': False, 'quote-feedback': '', 'empty-exclusion': False}), ({'text': 'a-b', 'escaped': False, 'quote_open': False, 'composing': False, 'delimiter': True}, {'polarity-prefix': False, 'operand-strip': 'a-b', 'commit-gate': True, 'delimiter-active': True, 'quote-feedback': '', 'empty-exclusion': False}), ({'text': 'a-b', 'escaped': True, 'quote_open': False, 'composing': False, 'delimiter': False}, {'polarity-prefix': False, 'operand-strip': 'a-b', 'commit-gate': True, 'delimiter-active': False, 'quote-feedback': '', 'empty-exclusion': False}), ({'text': 'a-b', 'escaped': True, 'quote_open': True, 'composing': True, 'delimiter': True}, {'polarity-prefix': False, 'operand-strip': 'a-b', 'commit-gate': False, 'delimiter-active': False, 'quote-feedback': 'unfinished phrase', 'empty-exclusion': False}), ({'text': 'two words', 'escaped': False, 'quote_open': True, 'composing': True, 'delimiter': False}, {'polarity-prefix': False, 'operand-strip': 'two words', 'commit-gate': False, 'delimiter-active': False, 'quote-feedback': 'unfinished phrase', 'empty-exclusion': False}), ({'text': 'two words', 'escaped': True, 'quote_open': True, 'composing': False, 'delimiter': True}, {'polarity-prefix': False, 'operand-strip': 'two words', 'commit-gate': False, 'delimiter-active': False, 'quote-feedback': 'unfinished phrase', 'empty-exclusion': False}), ({'text': '', 'escaped': False, 'quote_open': True, 'composing': False, 'delimiter': False}, {'polarity-prefix': False, 'operand-strip': '', 'commit-gate': False, 'delimiter-active': False, 'quote-feedback': 'unfinished phrase', 'empty-exclusion': False})]}
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)

source:
"""Failure Map reference implementation. Python standard library only."""
import json

N = 1
observations = []
def solve(d):
    return {'polarity-prefix':(d['text'].startswith('-') and not d['escaped']), 'operand-strip':(d['text'][1:] if d['text'].startswith('-') and not d['escaped'] else d['text']), 'commit-gate':(bool(d['text'].strip()) and not d['quote_open'] and not d['composing']), 'delimiter-active':(d['delimiter'] and not d['quote_open'] and not d['escaped']), 'quote-feedback':('unfinished phrase' if d['quote_open'] else ''), 'empty-exclusion':(d['text'].startswith('-') and not d['escaped'])}
def check(label, actual, expected):
    observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
fixtures = {1: [({'text': '-', 'escaped': True, 'quote_open': False, 'composing': False, 'delimiter': False}, {'polarity-prefix': False, 'operand-strip': '-', 'commit-gate': True, 'delimiter-active': False, 'quote-feedback': '', 'empty-exclusion': False}), ({'text': '--x', 'escaped': False, 'quote_open': False, 'composing': True, 'delimiter': True}, {'polarity-prefix': True, 'operand-strip': '-x', 'commit-gate': False, 'delimiter-active': True, 'quote-feedback': '', 'empty-exclusion': False}), ({'text': '', 'escaped': False, 'quote_open': True, 'composing': True, 'delimiter': True}, {'polarity-prefix': False, 'operand-strip': '', 'commit-gate': False, 'delimiter-active': False, 'quote-feedback': 'unfinished phrase', 'empty-exclusion': False}), ({'text': '', 'escaped': True, 'quote_open': True, 'composing': True, 'delimiter': False}, {'polarity-prefix': False, 'operand-strip': '', 'commit-gate': False, 'delimiter-active': False, 'quote-feedback': 'unfinished phrase', 'empty-exclusion': False}), ({'text': '-', 'escaped': False, 'quote_open': True, 'composing': False, 'delimiter': True}, {'polarity-prefix': True, 'operand-strip': '', 'commit-gate': False, 'delimiter-active': False, 'quote-feedback': 'unfinished phrase', 'empty-exclusion': True}), ({'text': '-', 'escaped': True, 'quote_open': True, 'composing': False, 'delimiter': False}, {'polarity-prefix': False, 'operand-strip': '-', 'commit-gate': False, 'delimiter-active': False, 'quote-feedback': 'unfinished phrase', 'empty-exclusion': False}), ({'text': '--x', 'escaped': True, 'quote_open': False, 'composing': True, 'delimiter': False}, {'polarity-prefix': False, 'operand-strip': '--x', 'commit-gate': False, 'delimiter-active': False, 'quote-feedback': '', 'empty-exclusion': False}), ({'text': 'a-b', 'escaped': False, 'quote_open': False, 'composing': False, 'delimiter': True}, {'polarity-prefix': False, 'operand-strip': 'a-b', 'commit-gate': True, 'delimiter-active': True, 'quote-feedback': '', 'empty-exclusion': False}), ({'text': 'a-b', 'escaped': True, 'quote_open': False, 'composing': False, 'delimiter': False}, {'polarity-prefix': False, 'operand-strip': 'a-b', 'commit-gate': True, 'delimiter-active': False, 'quote-feedback': '', 'empty-exclusion': False}), ({'text': 'a-b', 'escaped': True, 'quote_open': True, 'composing': True, 'delimiter': True}, {'polarity-prefix': False, 'operand-strip': 'a-b', 'commit-gate': False, 'delimiter-active': False, 'quote-feedback': 'unfinished phrase', 'empty-exclusion': False})], 2: [({'text': '-', 'escaped': True, 'quote_open': False, 'composing': False, 'delimiter': True}, {'polarity-prefix': False, 'operand-strip': '-', 'commit-gate': True, 'delimiter-active': False, 'quote-feedback': '', 'empty-exclusion': False}), ({'text': '--x', 'escaped': False, 'quote_open': True, 'composing': True, 'delimiter': False}, {'polarity-prefix': True, 'operand-strip': '-x', 'commit-gate': False, 'delimiter-active': False, 'quote-feedback': 'unfinished phrase', 'empty-exclusion': False}), ({'text': '', 'escaped': True, 'quote_open': True, 'composing': True, 'delimiter': False}, {'polarity-prefix': False, 'operand-strip': '', 'commit-gate': False, 'delimiter-active': False, 'quote-feedback': 'unfinished phrase', 'empty-exclusion': False}), ({'text': '-', 'escaped': False, 'quote_open': True, 'composing': False, 'delimiter': True}, {'polarity-prefix': True, 'operand-strip': '', 'commit-gate': False, 'delimiter-active': False, 'quote-feedback': 'unfinished phrase', 'empty-exclusion': True}), ({'text': '-', 'escaped': True, 'quote_open': True, 'composing': False, 'delimiter': False}, {'polarity-prefix': False, 'operand-strip': '-', 'commit-gate': False, 'delimiter-active': False, 'quote-feedback': 'unfinished phrase', 'empty-exclusion': False}), ({'text': '--x', 'escaped': False, 'quote_open': False, 'composing': True, 'delimiter': True}, {'polarity-prefix': True, 'operand-strip': '-x', 'commit-gate': False, 'delimiter-active': True, 'quote-feedback': '', 'empty-exclusion': False}), ({'text': '--x', 'escaped': True, 'quote_open': False, 'composing': True, 'delimiter': False}, {'polarity-prefix': False, 'operand-strip': '--x', 'commit-gate': False, 'delimiter-active': False, 'quote-feedback': '', 'empty-exclusion': False}), ({'text': 'a-b', 'escaped': False, 'quote_open': False, 'composing': False, 'delimiter': True}, {'polarity-prefix': False, 'operand-strip': 'a-b', 'commit-gate': True, 'delimiter-active': True, 'quote-feedback': '', 'empty-exclusion': False}), ({'text': 'a-b', 'escaped': True, 'quote_open': False, 'composing': False, 'delimiter': False}, {'polarity-prefix': False, 'operand-strip': 'a-b', 'commit-gate': True, 'delimiter-active': False, 'quote-feedback': '', 'empty-exclusion': False}), ({'text': 'a-b', 'escaped': True, 'quote_open': True, 'composing': True, 'delimiter': True}, {'polarity-prefix': False, 'operand-strip': 'a-b', 'commit-gate': False, 'delimiter-active': False, 'quote-feedback': 'unfinished phrase', 'empty-exclusion': False})], 3: [({'text': '-', 'escaped': True, 'quote_open': False, 'composing': True, 'delimiter': False}, {'polarity-prefix': False, 'operand-strip': '-', 'commit-gate': False, 'delimiter-active': False, 'quote-feedback': '', 'empty-exclusion': False}), ({'text': '--x', 'escaped': False, 'quote_open': False, 'composing': False, 'delimiter': True}, {'polarity-prefix': True, 'operand-strip': '-x', 'commit-gate': True, 'delimiter-active': True, 'quote-feedback': '', 'empty-exclusion': False}), ({'text': '-', 'escaped': False, 'quote_open': True, 'composing': False, 'delimiter': True}, {'polarity-prefix': True, 'operand-strip': '', 'commit-gate': False, 'delimiter-active': False, 'quote-feedback': 'unfinished phrase', 'empty-exclusion': True}), ({'text': '-', 'escaped': True, 'quote_open': True, 'composing': False, 'delimiter': False}, {'polarity-prefix': False, 'operand-strip': '-', 'commit-gate': False, 'delimiter-active': False, 'quote-feedback': 'unfinished phrase', 'empty-exclusion': False}), ({'text': '--x', 'escaped': False, 'quote_open': False, 'composing': True, 'delimiter': True}, {'polarity-prefix': True, 'operand-strip': '-x', 'commit-gate': False, 'delimiter-active': True, 'quote-feedback': '', 'empty-exclusion': False}), ({'text': '--x', 'escaped': True, 'quote_open': False, 'composing': True, 'delimiter': False}, {'polarity-prefix': False, 'operand-strip': '--x', 'commit-gate': False, 'delimiter-active': False, 'quote-feedback': '', 'empty-exclusion': False}), ({'text': 'a-b', 'escaped': False, 'quote_open': False, 'composing': False, 'delimiter': True}, {'polarity-prefix': False, 'operand-strip': 'a-b', 'commit-gate': True, 'delimiter-active': True, 'quote-feedback': '', 'empty-exclusion': False}), ({'text': 'a-b', 'escaped': True, 'quote_open': False, 'composing': False, 'delimiter': False}, {'polarity-prefix': False, 'operand-strip': 'a-b', 'commit-gate': True, 'delimiter-active': False, 'quote-feedback': '', 'empty-exclusion': False}), ({'text': 'a-b', 'escaped': True, 'quote_open': True, 'composing': True, 'delimiter': True}, {'polarity-prefix': False, 'operand-strip': 'a-b', 'commit-gate': False, 'delimiter-active': False, 'quote-feedback': 'unfinished phrase', 'empty-exclusion': False}), ({'text': 'two words', 'escaped': False, 'quote_open': True, 'composing': True, 'delimiter': False}, {'polarity-prefix': False, 'operand-strip': 'two words', 'commit-gate': False, 'delimiter-active': False, 'quote-feedback': 'unfinished phrase', 'empty-exclusion': False})], 4: [({'text': '-', 'escaped': True, 'quote_open': False, 'composing': True, 'delimiter': True}, {'polarity-prefix': False, 'operand-strip': '-', 'commit-gate': False, 'delimiter-active': False, 'quote-feedback': '', 'empty-exclusion': False}), ({'text': '--x', 'escaped': False, 'quote_open': True, 'composing': False, 'delimiter': False}, {'polarity-prefix': True, 'operand-strip': '-x', 'commit-gate': False, 'delimiter-active': False, 'quote-feedback': 'unfinished phrase', 'empty-exclusion': False}), ({'text': '-', 'escaped': True, 'quote_open': True, 'composing': False, 'delimiter': False}, {'polarity-prefix': False, 'operand-strip': '-', 'commit-gate': False, 'delimiter-active': False, 'quote-feedback': 'unfinished phrase', 'empty-exclusion': False}), ({'text': '--x', 'escaped': False, 'quote_open': False, 'composing': True, 'delimiter': True}, {'polarity-prefix': True, 'operand-strip': '-x', 'commit-gate': False, 'delimiter-active': True, 'quote-feedback': '', 'empty-exclusion': False}), ({'text': '--x', 'escaped': True, 'quote_open': False, 'composing': True, 'delimiter': False}, {'polarity-prefix': False, 'operand-strip': '--x', 'commit-gate': False, 'delimiter-active': False, 'quote-feedback': '', 'empty-exclusion': False}), ({'text': 'a-b', 'escaped': False, 'quote_open': False, 'composing': False, 'delimiter': True}, {'polarity-prefix': False, 'operand-strip': 'a-b', 'commit-gate': True, 'delimiter-active': True, 'quote-feedback': '', 'empty-exclusion': False}), ({'text': 'a-b', 'escaped': True, 'quote_open': False, 'composing': False, 'delimiter': False}, {'polarity-prefix': False, 'operand-strip': 'a-b', 'commit-gate': True, 'delimiter-active': False, 'quote-feedback': '', 'empty-exclusion': False}), ({'text': 'a-b', 'escaped': True, 'quote_open': True, 'composing': True, 'delimiter': True}, {'polarity-prefix': False, 'operand-strip': 'a-b', 'commit-gate': False, 'delimiter-active': False, 'quote-feedback': 'unfinished phrase', 'empty-exclusion': False}), ({'text': 'two words', 'escaped': False, 'quote_open': True, 'composing': True, 'delimiter': False}, {'polarity-prefix': False, 'operand-strip': 'two words', 'commit-gate': False, 'delimiter-active': False, 'quote-feedback': 'unfinished phrase', 'empty-exclusion': False}), ({'text': 'two words', 'escaped': True, 'quote_open': True, 'composing': False, 'delimiter': True}, {'polarity-prefix': False, 'operand-strip': 'two words', 'commit-gate': False, 'delimiter-active': False, 'quote-feedback': 'unfinished phrase', 'empty-exclusion': False})], 5: [({'text': '-', 'escaped': True, 'quote_open': True, 'composing': False, 'delimiter': False}, {'polarity-prefix': False, 'operand-strip': '-', 'commit-gate': False, 'delimiter-active': False, 'quote-feedback': 'unfinished phrase', 'empty-exclusion': False}), ({'text': '--x', 'escaped': False, 'quote_open': True, 'composing': True, 'delimiter': True}, {'polarity-prefix': True, 'operand-strip': '-x', 'commit-gate': False, 'delimiter-active': False, 'quote-feedback': 'unfinished phrase', 'empty-exclusion': False}), ({'text': '--x', 'escaped': False, 'quote_open': False, 'composing': True, 'delimiter': True}, {'polarity-prefix': True, 'operand-strip': '-x', 'commit-gate': False, 'delimiter-active': True, 'quote-feedback': '', 'empty-exclusion': False}), ({'text': '--x', 'escaped': True, 'quote_open': False, 'composing': True, 'delimiter': False}, {'polarity-prefix': False, 'operand-strip': '--x', 'commit-gate': False, 'delimiter-active': False, 'quote-feedback': '', 'empty-exclusion': False}), ({'text': 'a-b', 'escaped': False, 'quote_open': False, 'composing': False, 'delimiter': True}, {'polarity-prefix': False, 'operand-strip': 'a-b', 'commit-gate': True, 'delimiter-active': True, 'quote-feedback': '', 'empty-exclusion': False}), ({'text': 'a-b', 'escaped': True, 'quote_open': False, 'composing': False, 'delimiter': False}, {'polarity-prefix': False, 'operand-strip': 'a-b', 'commit-gate': True, 'delimiter-active': False, 'quote-feedback': '', 'empty-exclusion': False}), ({'text': 'a-b', 'escaped': True, 'quote_open': True, 'composing': True, 'delimiter': True}, {'polarity-prefix': False, 'operand-strip': 'a-b', 'commit-gate': False, 'delimiter-active': False, 'quote-feedback': 'unfinished phrase', 'empty-exclusion': False}), ({'text': 'two words', 'escaped': False, 'quote_open': True, 'composing': True, 'delimiter': False}, {'polarity-prefix': False, 'operand-strip': 'two words', 'commit-gate': False, 'delimiter-active': False, 'quote-feedback': 'unfinished phrase', 'empty-exclusion': False}), ({'text': 'two words', 'escaped': True, 'quote_open': True, 'composing': False, 'delimiter': True}, {'polarity-prefix': False, 'operand-strip': 'two words', 'commit-gate': False, 'delimiter-active': False, 'quote-feedback': 'unfinished phrase', 'empty-exclusion': False}), ({'text': '', 'escaped': False, 'quote_open': True, 'composing': False, 'delimiter': False}, {'polarity-prefix': False, 'operand-strip': '', 'commit-gate': False, 'delimiter-active': False, 'quote-feedback': 'unfinished phrase', 'empty-exclusion': False})]}
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)

prompt:
A polarity-only token is incomplete but escaped minus is literal is violated by the widget projection.

A token composer recognizes leading minus as exclusion unless escaped, keeps quoted phrases intact, and commits only complete nonblank tokens. This example checks: A polarity-only token is incomplete but escaped minus is literal.

split: open-access


broken_source:
"""Failure Map reference implementation. Python standard library only."""
import json

N = 1
observations = []
def solve(d):
    return {'operator-options':(list(d['operators'])), 'retain-operator':(d['op'] if d['op'] in d['supported'] else d['default']), 'operand-reset':(d['value'] if d['old_type']==d['new_type'] else None), 'unknown-field':(d['field'] not in d['fields']), 'nullable-op':('missing' in d['supported'] and d['nullable']), 'row-complete':(d['field'] in d['fields'] and d['op'] in d['supported'] and (d['op']=='missing' or d['value'] is not None))}
def check(label, actual, expected):
    observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
fixtures = {1: [({'operators': ['eq', 'missing'], 'supported': ['eq'], 'op': 'eq', 'default': 'eq', 'value': None, 'old_type': 'number', 'new_type': 'number', 'field': 'a', 'fields': ['a'], 'nullable': False}, {'operator-options': ['eq'], 'retain-operator': 'eq', 'operand-reset': None, 'unknown-field': False, 'nullable-op': False, 'row-complete': False}), ({'operators': ['eq', 'missing'], 'supported': ['missing', 'in'], 'op': 'eq', 'default': 'eq', 'value': None, 'old_type': 'number', 'new_type': 'number', 'field': 'z', 'fields': ['a'], 'nullable': True}, {'operator-options': ['missing'], 'retain-operator': 'eq', 'operand-reset': None, 'unknown-field': True, 'nullable-op': True, 'row-complete': False}), ({'operators': ['eq', 'missing'], 'supported': ['eq'], 'op': 'eq', 'default': 'eq', 'value': None, 'old_type': 'number', 'new_type': 'text', 'field': 'z', 'fields': ['a'], 'nullable': True}, {'operator-options': ['eq'], 'retain-operator': 'eq', 'operand-reset': None, 'unknown-field': True, 'nullable-op': False, 'row-complete': False}), ({'operators': ['eq', 'missing'], 'supported': ['eq'], 'op': 'eq', 'default': 'eq', 'value': 0, 'old_type': 'number', 'new_type': 'text', 'field': 'a', 'fields': ['a'], 'nullable': False}, {'operator-options': ['eq'], 'retain-operator': 'eq', 'operand-reset': None, 'unknown-field': False, 'nullable-op': False, 'row-complete': True}), ({'operators': ['eq', 'missing'], 'supported': ['eq'], 'op': 'missing', 'default': 'eq', 'value': None, 'old_type': 'number', 'new_type': 'number', 'field': 'a', 'fields': ['a'], 'nullable': True}, {'operator-options': ['eq'], 'retain-operator': 'eq', 'operand-reset': None, 'unknown-field': False, 'nullable-op': False, 'row-complete': False}), ({'operators': ['eq', 'missing'], 'supported': ['eq'], 'op': 'missing', 'default': 'eq', 'value': None, 'old_type': 'number', 'new_type': 'text', 'field': 'z', 'fields': ['a'], 'nullable': False}, {'operator-options': ['eq'], 'retain-operator': 'eq', 'operand-reset': None, 'unknown-field': True, 'nullable-op': False, 'row-complete': False}), ({'operators': ['eq', 'missing'], 'supported': ['eq'], 'op': 'missing', 'default': 'eq', 'value': 0, 'old_type': 'number', 'new_type': 'number', 'field': 'z', 'fields': ['a'], 'nullable': True}, {'operator-options': ['eq'], 'retain-operator': 'eq', 'operand-reset': 0, 'unknown-field': True, 'nullable-op': False, 'row-complete': False}), ({'operators': ['eq', 'missing'], 'supported': ['missing', 'in'], 'op': 'eq', 'default': 'eq', 'value': None, 'old_type': 'number', 'new_type': 'number', 'field': 'a', 'fields': ['a'], 'nullable': False}, {'operator-options': ['missing'], 'retain-operator': 'eq', 'operand-reset': None, 'unknown-field': False, 'nullable-op': False, 'row-complete': False}), ({'operators': ['eq', 'missing'], 'supported': ['missing', 'in'], 'op': 'eq', 'default': 'eq', 'value': None, 'old_type': 'number', 'new_type': 'text', 'field': 'a', 'fields': ['a'], 'nullable': True}, {'operator-options': ['missing'], 'retain-operator': 'eq', 'operand-reset': None, 'unknown-field': False, 'nullable-op': True, 'row-complete': False}), ({'operators': ['eq', 'missing'], 'supported': ['missing', 'in'], 'op': 'eq', 'default': 'eq', 'value': 0, 'old_type': 'number', 'new_type': 'number', 'field': 'z', 'fields': ['a'], 'nullable': False}, {'operator-options': ['missing'], 'retain-operator': 'eq', 'operand-reset': 0, 'unknown-field': True, 'nullable-op': False, 'row-complete': False})], 2: [({'operators': ['eq', 'missing'], 'supported': ['eq'], 'op': 'eq', 'default': 'eq', 'value': None, 'old_type': 'number', 'new_type': 'number', 'field': 'a', 'fields': ['a'], 'nullable': True}, {'operator-options': ['eq'], 'retain-operator': 'eq', 'operand-reset': None, 'unknown-field': False, 'nullable-op': False, 'row-complete': False}), ({'operators': ['eq', 'missing'], 'supported': ['missing', 'in'], 'op': 'eq', 'default': 'eq', 'value': None, 'old_type': 'number', 'new_type': 'text', 'field': 'z', 'fields': ['a'], 'nullable': False}, {'operator-options': ['missing'], 'retain-operator': 'eq', 'operand-reset': None, 'unknown-field': True, 'nullable-op': False, 'row-complete': False}), ({'operators': ['eq', 'missing'], 'supported': ['eq'], 'op': 'eq', 'default': 'eq', 'value': 0, 'old_type': 'number', 'new_type': 'text', 'field': 'z', 'fields': ['a'], 'nullable': False}, {'operator-options': ['eq'], 'retain-operator': 'eq', 'operand-reset': None, 'unknown-field': True, 'nullable-op': False, 'row-complete': False}), ({'operators': ['eq', 'missing'], 'supported': ['eq'], 'op': 'missing', 'default': 'eq', 'value': None, 'old_type': 'number', 'new_type': 'number', 'field': 'z', 'fields': ['a'], 'nullable': True}, {'operator-options': ['eq'], 'retain-operator': 'eq', 'operand-reset': None, 'unknown-field': True, 'nullable-op': False, 'row-complete': False}), ({'operators': ['eq', 'missing'], 'supported': ['eq'], 'op': 'missing', 'default': 'eq', 'value': 0, 'old_type': 'number', 'new_type': 'number', 'field': 'a', 'fields': ['a'], 'nullable': False}, {'operator-options': ['eq'], 'retain-operator': 'eq', 'operand-reset': 0, 'unknown-field': False, 'nullable-op': False, 'row-complete': False}), ({'operators': ['eq', 'missing'], 'supported': ['eq'], 'op': 'missing', 'default': 'eq', 'value': 0, 'old_type': 'number', 'new_type': 'text', 'field': 'a', 'fields': ['a'], 'nullable': True}, {'operator-options': ['eq'], 'retain-operator': 'eq', 'operand-reset': None, 'unknown-field': False, 'nullable-op': False, 'row-complete': False}), ({'operators': ['eq', 'missing'], 'supported': ['missing', 'in'], 'op': 'eq', 'default': 'eq', 'value': None, 'old_type': 'number', 'new_type': 'number', 'field': 'z', 'fields': ['a'], 'nullable': False}, {'operator-options': ['missing'], 'retain-operator': 'eq', 'operand-reset': None, 'unknown-field': True, 'nullable-op': False, 'row-complete': False}), ({'operators': ['eq', 'missing'], 'supported': ['missing', 'in'], 'op': 'eq', 'default': 'eq', 'value': None, 'old_type': 'number', 'new_type': 'text', 'field': 'z', 'fields': ['a'], 'nullable': True}, {'operator-options': ['missing'], 'retain-operator': 'eq', 'operand-reset': None, 'unknown-field': True, 'nullable-op': True, 'row-complete': False}), ({'operators': ['eq', 'missing'], 'supported': ['missing', 'in'], 'op': 'eq', 'default': 'eq', 'value': 0, 'old_type': 'number', 'new_type': 'text', 'field': 'a', 'fields': ['a'], 'nullable': False}, {'operator-options': ['missing'], 'retain-operator': 'eq', 'operand-reset': None, 'unknown-field': False, 'nullable-op': False, 'row-complete': False}), ({'operators': ['eq', 'missing'], 'supported': ['missing', 'in'], 'op': 'missing', 'default': 'eq', 'value': None, 'old_type': 'number', 'new_type': 'number', 'field': 'a', 'fields': ['a'], 'nullable': True}, {'operator-options': ['missing'], 'retain-operator': 'missing', 'operand-reset': None, 'unknown-field': False, 'nullable-op': True, 'row-complete': True})], 3: [({'operators': ['eq', 'missing'], 'supported': ['eq'], 'op': 'eq', 'default': 'eq', 'value': None, 'old_type': 'number', 'new_type': 'number', 'field': 'z', 'fields': ['a'], 'nullable': False}, {'operator-options': ['eq'], 'retain-operator': 'eq', 'operand-reset': None, 'unknown-field': True, 'nullable-op': False, 'row-complete': False}), ({'operators': ['eq', 'missing'], 'supported': ['missing', 'in'], 'op': 'eq', 'default': 'eq', 'value': 0, 'old_type': 'number', 'new_type': 'number', 'field': 'a', 'fields': ['a'], 'nullable': True}, {'operator-options': ['missing'], 'retain-operator': 'eq', 'operand-reset': 0, 'unknown-field': False, 'nullable-op': True, 'row-complete': False}), ({'operators': ['eq', 'missing'], 'supported': ['eq'], 'op': 'missing', 'default': 'eq', 'value': None, 'old_type': 'number', 'new_type': 'text', 'field': 'a', 'fields': ['a'], 'nullable': True}, {'operator-options': ['eq'], 'retain-operator': 'eq', 'operand-reset': None, 'unknown-field': False, 'nullable-op': False, 'row-complete': False}), ({'operators': ['eq', 'missing'], 'supported': ['eq'], 'op': 'missing', 'default': 'eq', 'value': 0, 'old_type': 'number', 'new_type': 'number', 'field': 'z', 'fields': ['a'], 'nullable': False}, {'operator-options': ['eq'], 'retain-operator': 'eq', 'operand-reset': 0, 'unknown-field': True, 'nullable-op': False, 'row-complete': False}), ({'operators': ['eq', 'missing'], 'supported': ['eq'], 'op': 'missing', 'default': 'eq', 'value': 0, 'old_type': 'number', 'new_type': 'text', 'field': 'z', 'fields': ['a'], 'nullable': True}, {'operator-options': ['eq'], 'retain-operator': 'eq', 'operand-reset': None, 'unknown-field': True, 'nullable-op': False, 'row-complete': False}), ({'operators': ['eq', 'missing'], 'supported': ['missing', 'in'], 'op': 'eq', 'default': 'eq', 'value': None, 'old_type': 'number', 'new_type': 'text', 'field': 'a', 'fields': ['a'], 'nullable': False}, {'operator-options': ['missing'], 'retain-operator': 'eq', 'operand-reset': None, 'unknown-field': False, 'nullable-op': False, 'row-complete': False}), ({'operators': ['eq', 'missing'], 'supported': ['missing', 'in'], 'op': 'eq', 'default': 'eq', 'value': 0, 'old_type': 'number', 'new_type': 'text', 'field': 'z', 'fields': ['a'], 'nullable': False}, {'operator-options': ['missing'], 'retain-operator': 'eq', 'operand-reset': None, 'unknown-field': True, 'nullable-op': False, 'row-complete': False}), ({'operators': ['eq', 'missing'], 'supported': ['missing', 'in'], 'op': 'missing', 'default': 'eq', 'value': None, 'old_type': 'number', 'new_type': 'number', 'field': 'z', 'fields': ['a'], 'nullable': True}, {'operator-options': ['missing'], 'retain-operator': 'missing', 'operand-reset': None, 'unknown-field': True, 'nullable-op': True, 'row-complete': False}), ({'operators': ['eq', 'missing'], 'supported': ['missing', 'in'], 'op': 'missing', 'default': 'eq', 'value': 0, 'old_type': 'number', 'new_type': 'number', 'field': 'a', 'fields': ['a'], 'nullable': False}, {'operator-options': ['missing'], 'retain-operator': 'missing', 'operand-reset': 0, 'unknown-field': False, 'nullable-op': False, 'row-complete': True}), ({'operators': ['eq', 'missing'], 'supported': ['missing', 'in'], 'op': 'missing', 'default': 'eq', 'value': 0, 'old_type': 'number', 'new_type': 'text', 'field': 'a', 'fields': ['a'], 'nullable': True}, {'operator-options': ['missing'], 'retain-operator': 'missing', 'operand-reset': None, 'unknown-field': False, 'nullable-op': True, 'row-complete': True})], 4: [({'operators': ['eq', 'missing'], 'supported': ['eq'], 'op': 'eq', 'default': 'eq', 'value': None, 'old_type': 'number', 'new_type': 'number', 'field': 'z', 'fields': ['a'], 'nullable': True}, {'operator-options': ['eq'], 'retain-operator': 'eq', 'operand-reset': None, 'unknown-field': True, 'nullable-op': False, 'row-complete': False}), ({'operators': ['eq', 'missing'], 'supported': ['missing', 'in'], 'op': 'eq', 'default': 'eq', 'value': 0, 'old_type': 'number', 'new_type': 'text', 'field': 'a', 'fields': ['a'], 'nullable': False}, {'operator-options': ['missing'], 'retain-operator': 'eq', 'operand-reset': None, 'unknown-field': False, 'nullable-op': False, 'row-complete': False}), ({'operators': ['eq', 'missing'], 'supported': ['eq'], 'op': 'missing', 'default': 'eq', 'value': 0, 'old_type': 'number', 'new_type': 'text', 'field': 'a', 'fields': ['a'], 'nullable': False}, {'operator-options': ['eq'], 'retain-operator': 'eq', 'operand-reset': None, 'unknown-field': False, 'nullable-op': False, 'row-complete': False}), ({'operators': ['eq', 'missing'], 'supported': ['missing', 'in'], 'op': 'eq', 'default': 'eq', 'value': None, 'old_type': 'number', 'new_type': 'number', 'field': 'a', 'fields': ['a'], 'nullable': True}, {'operator-options': ['missing'], 'retain-operator': 'eq', 'operand-reset': None, 'unknown-field': False, 'nullable-op': True, 'row-complete': False}), ({'operators': ['eq', 'missing'], 'supported': ['missing', 'in'], 'op': 'eq', 'default': 'eq', 'value': None, 'old_type': 'number', 'new_type': 'text', 'field': 'z', 'fields': ['a'], 'nullable': False}, {'operator-options': ['missing'], 'retain-operator': 'eq', 'operand-reset': None, 'unknown-field': True, 'nullable-op': False, 'row-complete': False}), ({'operators': ['eq', 'missing'], 'supported': ['missing', 'in'], 'op': 'eq', 'default': 'eq', 'value': 0, 'old_type': 'number', 'new_type': 'number', 'field': 'z', 'fields': ['a'], 'nullable': True}, {'operator-options': ['missing'], 'retain-operator': 'eq', 'operand-reset': 0, 'unknown-field': True, 'nullable-op': True, 'row-complete': False}), ({'operators': ['eq', 'missing'], 'supported': ['missing', 'in'], 'op': 'missing', 'default': 'eq', 'value': None, 'old_type': 'number', 'new_type': 'number', 'field': 'a', 'fields': ['a'], 'nullable': False}, {'operator-options': ['missing'], 'retain-operator': 'missing', 'operand-reset': None, 'unknown-field': False, 'nullable-op': False, 'row-complete': True}), ({'operators': ['eq', 'missing'], 'supported': ['missing', 'in'], 'op': 'missing', 'default': 'eq', 'value': None, 'old_type': 'number', 'new_type': 'text', 'field': 'a', 'fields': ['a'], 'nullable': True}, {'operator-options': ['missing'], 'retain-operator': 'missing', 'operand-reset': None, 'unknown-field': False, 'nullable-op': True, 'row-complete': True}), ({'operators': ['eq', 'missing'], 'supported': ['missing', 'in'], 'op': 'missing', 'default': 'eq', 'value': 0, 'old_type': 'number', 'new_type': 'number', 'field': 'z', 'fields': ['a'], 'nullable': False}, {'operator-options': ['missing'], 'retain-operator': 'missing', 'operand-reset': 0, 'unknown-field': True, 'nullable-op': False, 'row-complete': False}), ({'operators': ['eq', 'missing'], 'supported': ['missing', 'in'], 'op': 'missing', 'default': 'eq', 'value': 0, 'old_type': 'number', 'new_type': 'text', 'field': 'z', 'fields': ['a'], 'nullable': True}, {'operator-options': ['missing'], 'retain-operator': 'missing', 'operand-reset': None, 'unknown-field': True, 'nullable-op': True, 'row-complete': False})], 5: [({'operators': ['eq', 'missing'], 'supported': ['eq'], 'op': 'eq', 'default': 'eq', 'value': None, 'old_type': 'number', 'new_type': 'text', 'field': 'a', 'fields': ['a'], 'nullable': False}, {'operator-options': ['eq'], 'retain-operator': 'eq', 'operand-reset': None, 'unknown-field': False, 'nullable-op': False, 'row-complete': False}), ({'operators': ['eq', 'missing'], 'supported': ['missing', 'in'], 'op': 'eq', 'default': 'eq', 'value': 0, 'old_type': 'number', 'new_type': 'text', 'field': 'z', 'fields': ['a'], 'nullable': True}, {'operator-options': ['missing'], 'retain-operator': 'eq', 'operand-reset': None, 'unknown-field': True, 'nullable-op': True, 'row-complete': False}), ({'operators': ['eq', 'missing'], 'supported': ['missing', 'in'], 'op': 'eq', 'default': 'eq', 'value': None, 'old_type': 'number', 'new_type': 'number', 'field': 'z', 'fields': ['a'], 'nullable': True}, {'operator-options': ['missing'], 'retain-operator': 'eq', 'operand-reset': None, 'unknown-field': True, 'nullable-op': True, 'row-complete': False}), ({'operators': ['eq', 'missing'], 'supported': ['missing', 'in'], 'op': 'eq', 'default': 'eq', 'value': 0, 'old_type': 'number', 'new_type': 'number', 'field': 'a', 'fields': ['a'], 'nullable': False}, {'operator-options': ['missing'], 'retain-operator': 'eq', 'operand-reset': 0, 'unknown-field': False, 'nullable-op': False, 'row-complete': False}), ({'operators': ['eq', 'missing'], 'supported': ['missing', 'in'], 'op': 'eq', 'default': 'eq', 'value': 0, 'old_type': 'number', 'new_type': 'text', 'field': 'a', 'fields': ['a'], 'nullable': True}, {'operator-options': ['missing'], 'retain-operator': 'eq', 'operand-reset': None, 'unknown-field': False, 'nullable-op': True, 'row-complete': False}), ({'operators': ['eq', 'missing'], 'supported': ['missing', 'in'], 'op': 'missing', 'default': 'eq', 'value': None, 'old_type': 'number', 'new_type': 'number', 'field': 'z', 'fields': ['a'], 'nullable': False}, {'operator-options': ['missing'], 'retain-operator': 'missing', 'operand-reset': None, 'unknown-field': True, 'nullable-op': False, 'row-complete': False}), ({'operators': ['eq', 'missing'], 'supported': ['missing', 'in'], 'op': 'missing', 'default': 'eq', 'value': None, 'old_type': 'number', 'new_type': 'text', 'field': 'z', 'fields': ['a'], 'nullable': True}, {'operator-options': ['missing'], 'retain-operator': 'missing', 'operand-reset': None, 'unknown-field': True, 'nullable-op': True, 'row-complete': False}), ({'operators': ['eq', 'missing'], 'supported': ['missing', 'in'], 'op': 'missing', 'default': 'eq', 'value': 0, 'old_type': 'number', 'new_type': 'text', 'field': 'a', 'fields': ['a'], 'nullable': False}, {'operator-options': ['missing'], 'retain-operator': 'missing', 'operand-reset': None, 'unknown-field': False, 'nullable-op': False, 'row-complete': True}), ({'operators': ['eq', 'missing'], 'supported': ['eq'], 'op': 'eq', 'default': 'eq', 'value': None, 'old_type': 'number', 'new_type': 'number', 'field': 'a', 'fields': ['a'], 'nullable': True}, {'operator-options': ['eq'], 'retain-operator': 'eq', 'operand-reset': None, 'unknown-field': False, 'nullable-op': False, 'row-complete': False}), ({'operators': ['eq', 'missing'], 'supported': ['eq'], 'op': 'eq', 'default': 'eq', 'value': None, 'old_type': 'number', 'new_type': 'text', 'field': 'z', 'fields': ['a'], 'nullable': False}, {'operator-options': ['eq'], 'retain-operator': 'eq', 'operand-reset': None, 'unknown-field': True, 'nullable-op': False, 'row-complete': False})]}
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)

meaning: Fixture-count band, not measured model difficulty

deps: stdlib

source:
"""Failure Map reference implementation. Python standard library only."""
import json

N = 1
observations = []
def solve(d):
    return {'operator-options':(list(d['supported'])), 'retain-operator':(d['op'] if d['op'] in d['supported'] else d['default']), 'operand-reset':(d['value'] if d['old_type']==d['new_type'] else None), 'unknown-field':(d['field'] not in d['fields']), 'nullable-op':('missing' in d['supported'] and d['nullable']), 'row-complete':(d['field'] in d['fields'] and d['op'] in d['supported'] and (d['op']=='missing' or d['value'] is not None))}
def check(label, actual, expected):
    observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
fixtures = {1: [({'operators': ['eq', 'missing'], 'supported': ['eq'], 'op': 'eq', 'default': 'eq', 'value': None, 'old_type': 'number', 'new_type': 'number', 'field': 'a', 'fields': ['a'], 'nullable': False}, {'operator-options': ['eq'], 'retain-operator': 'eq', 'operand-reset': None, 'unknown-field': False, 'nullable-op': False, 'row-complete': False}), ({'operators': ['eq', 'missing'], 'supported': ['missing', 'in'], 'op': 'eq', 'default': 'eq', 'value': None, 'old_type': 'number', 'new_type': 'number', 'field': 'z', 'fields': ['a'], 'nullable': True}, {'operator-options': ['missing'], 'retain-operator': 'eq', 'operand-reset': None, 'unknown-field': True, 'nullable-op': True, 'row-complete': False}), ({'operators': ['eq', 'missing'], 'supported': ['eq'], 'op': 'eq', 'default': 'eq', 'value': None, 'old_type': 'number', 'new_type': 'text', 'field': 'z', 'fields': ['a'], 'nullable': True}, {'operator-options': ['eq'], 'retain-operator': 'eq', 'operand-reset': None, 'unknown-field': True, 'nullable-op': False, 'row-complete': False}), ({'operators': ['eq', 'missing'], 'supported': ['eq'], 'op': 'eq', 'default': 'eq', 'value': 0, 'old_type': 'number', 'new_type': 'text', 'field': 'a', 'fields': ['a'], 'nullable': False}, {'operator-options': ['eq'], 'retain-operator': 'eq', 'operand-reset': None, 'unknown-field': False, 'nullable-op': False, 'row-complete': True}), ({'operators': ['eq', 'missing'], 'supported': ['eq'], 'op': 'missing', 'default': 'eq', 'value': None, 'old_type': 'number', 'new_type': 'number', 'field': 'a', 'fields': ['a'], 'nullable': True}, {'operator-options': ['eq'], 'retain-operator': 'eq', 'operand-reset': None, 'unknown-field': False, 'nullable-op': False, 'row-complete': False}), ({'operators': ['eq', 'missing'], 'supported': ['eq'], 'op': 'missing', 'default': 'eq', 'value': None, 'old_type': 'number', 'new_type': 'text', 'field': 'z', 'fields': ['a'], 'nullable': False}, {'operator-options': ['eq'], 'retain-operator': 'eq', 'operand-reset': None, 'unknown-field': True, 'nullable-op': False, 'row-complete': False}), ({'operators': ['eq', 'missing'], 'supported': ['eq'], 'op': 'missing', 'default': 'eq', 'value': 0, 'old_type': 'number', 'new_type': 'number', 'field': 'z', 'fields': ['a'], 'nullable': True}, {'operator-options': ['eq'], 'retain-operator': 'eq', 'operand-reset': 0, 'unknown-field': True, 'nullable-op': False, 'row-complete': False}), ({'operators': ['eq', 'missing'], 'supported': ['missing', 'in'], 'op': 'eq', 'default': 'eq', 'value': None, 'old_type': 'number', 'new_type': 'number', 'field': 'a', 'fields': ['a'], 'nullable': False}, {'operator-options': ['missing'], 'retain-operator': 'eq', 'operand-reset': None, 'unknown-field': False, 'nullable-op': False, 'row-complete': False}), ({'operators': ['eq', 'missing'], 'supported': ['missing', 'in'], 'op': 'eq', 'default': 'eq', 'value': None, 'old_type': 'number', 'new_type': 'text', 'field': 'a', 'fields': ['a'], 'nullable': True}, {'operator-options': ['missing'], 'retain-operator': 'eq', 'operand-reset': None, 'unknown-field': False, 'nullable-op': True, 'row-complete': False}), ({'operators': ['eq', 'missing'], 'supported': ['missing', 'in'], 'op': 'eq', 'default': 'eq', 'value': 0, 'old_type': 'number', 'new_type': 'number', 'field': 'z', 'fields': ['a'], 'nullable': False}, {'operator-options': ['missing'], 'retain-operator': 'eq', 'operand-reset': 0, 'unknown-field': True, 'nullable-op': False, 'row-complete': False})], 2: [({'operators': ['eq', 'missing'], 'supported': ['eq'], 'op': 'eq', 'default': 'eq', 'value': None, 'old_type': 'number', 'new_type': 'number', 'field': 'a', 'fields': ['a'], 'nullable': True}, {'operator-options': ['eq'], 'retain-operator': 'eq', 'operand-reset': None, 'unknown-field': False, 'nullable-op': False, 'row-complete': False}), ({'operators': ['eq', 'missing'], 'supported': ['missing', 'in'], 'op': 'eq', 'default': 'eq', 'value': None, 'old_type': 'number', 'new_type': 'text', 'field': 'z', 'fields': ['a'], 'nullable': False}, {'operator-options': ['missing'], 'retain-operator': 'eq', 'operand-reset': None, 'unknown-field': True, 'nullable-op': False, 'row-complete': False}), ({'operators': ['eq', 'missing'], 'supported': ['eq'], 'op': 'eq', 'default': 'eq', 'value': 0, 'old_type': 'number', 'new_type': 'text', 'field': 'z', 'fields': ['a'], 'nullable': False}, {'operator-options': ['eq'], 'retain-operator': 'eq', 'operand-reset': None, 'unknown-field': True, 'nullable-op': False, 'row-complete': False}), ({'operators': ['eq', 'missing'], 'supported': ['eq'], 'op': 'missing', 'default': 'eq', 'value': None, 'old_type': 'number', 'new_type': 'number', 'field': 'z', 'fields': ['a'], 'nullable': True}, {'operator-options': ['eq'], 'retain-operator': 'eq', 'operand-reset': None, 'unknown-field': True, 'nullable-op': False, 'row-complete': False}), ({'operators': ['eq', 'missing'], 'supported': ['eq'], 'op': 'missing', 'default': 'eq', 'value': 0, 'old_type': 'number', 'new_type': 'number', 'field': 'a', 'fields': ['a'], 'nullable': False}, {'operator-options': ['eq'], 'retain-operator': 'eq', 'operand-reset': 0, 'unknown-field': False, 'nullable-op': False, 'row-complete': False}), ({'operators': ['eq', 'missing'], 'supported': ['eq'], 'op': 'missing', 'default': 'eq', 'value': 0, 'old_type': 'number', 'new_type': 'text', 'field': 'a', 'fields': ['a'], 'nullable': True}, {'operator-options': ['eq'], 'retain-operator': 'eq', 'operand-reset': None, 'unknown-field': False, 'nullable-op': False, 'row-complete': False}), ({'operators': ['eq', 'missing'], 'supported': ['missing', 'in'], 'op': 'eq', 'default': 'eq', 'value': None, 'old_type': 'number', 'new_type': 'number', 'field': 'z', 'fields': ['a'], 'nullable': False}, {'operator-options': ['missing'], 'retain-operator': 'eq', 'operand-reset': None, 'unknown-field': True, 'nullable-op': False, 'row-complete': False}), ({'operators': ['eq', 'missing'], 'supported': ['missing', 'in'], 'op': 'eq', 'default': 'eq', 'value': None, 'old_type': 'number', 'new_type': 'text', 'field': 'z', 'fields': ['a'], 'nullable': True}, {'operator-options': ['missing'], 'retain-operator': 'eq', 'operand-reset': None, 'unknown-field': True, 'nullable-op': True, 'row-complete': False}), ({'operators': ['eq', 'missing'], 'supported': ['missing', 'in'], 'op': 'eq', 'default': 'eq', 'value': 0, 'old_type': 'number', 'new_type': 'text', 'field': 'a', 'fields': ['a'], 'nullable': False}, {'operator-options': ['missing'], 'retain-operator': 'eq', 'operand-reset': None, 'unknown-field': False, 'nullable-op': False, 'row-complete': False}), ({'operators': ['eq', 'missing'], 'supported': ['missing', 'in'], 'op': 'missing', 'default': 'eq', 'value': None, 'old_type': 'number', 'new_type': 'number', 'field': 'a', 'fields': ['a'], 'nullable': True}, {'operator-options': ['missing'], 'retain-operator': 'missing', 'operand-reset': None, 'unknown-field': False, 'nullable-op': True, 'row-complete': True})], 3: [({'operators': ['eq', 'missing'], 'supported': ['eq'], 'op': 'eq', 'default': 'eq', 'value': None, 'old_type': 'number', 'new_type': 'number', 'field': 'z', 'fields': ['a'], 'nullable': False}, {'operator-options': ['eq'], 'retain-operator': 'eq', 'operand-reset': None, 'unknown-field': True, 'nullable-op': False, 'row-complete': False}), ({'operators': ['eq', 'missing'], 'supported': ['missing', 'in'], 'op': 'eq', 'default': 'eq', 'value': 0, 'old_type': 'number', 'new_type': 'number', 'field': 'a', 'fields': ['a'], 'nullable': True}, {'operator-options': ['missing'], 'retain-operator': 'eq', 'operand-reset': 0, 'unknown-field': False, 'nullable-op': True, 'row-complete': False}), ({'operators': ['eq', 'missing'], 'supported': ['eq'], 'op': 'missing', 'default': 'eq', 'value': None, 'old_type': 'number', 'new_type': 'text', 'field': 'a', 'fields': ['a'], 'nullable': True}, {'operator-options': ['eq'], 'retain-operator': 'eq', 'operand-reset': None, 'unknown-field': False, 'nullable-op': False, 'row-complete': False}), ({'operators': ['eq', 'missing'], 'supported': ['eq'], 'op': 'missing', 'default': 'eq', 'value': 0, 'old_type': 'number', 'new_type': 'number', 'field': 'z', 'fields': ['a'], 'nullable': False}, {'operator-options': ['eq'], 'retain-operator': 'eq', 'operand-reset': 0, 'unknown-field': True, 'nullable-op': False, 'row-complete': False}), ({'operators': ['eq', 'missing'], 'supported': ['eq'], 'op': 'missing', 'default': 'eq', 'value': 0, 'old_type': 'number', 'new_type': 'text', 'field': 'z', 'fields': ['a'], 'nullable': True}, {'operator-options': ['eq'], 'retain-operator': 'eq', 'operand-reset': None, 'unknown-field': True, 'nullable-op': False, 'row-complete': False}), ({'operators': ['eq', 'missing'], 'supported': ['missing', 'in'], 'op': 'eq', 'default': 'eq', 'value': None, 'old_type': 'number', 'new_type': 'text', 'field': 'a', 'fields': ['a'], 'nullable': False}, {'operator-options': ['missing'], 'retain-operator': 'eq', 'operand-reset': None, 'unknown-field': False, 'nullable-op': False, 'row-complete': False}), ({'operators': ['eq', 'missing'], 'supported': ['missing', 'in'], 'op': 'eq', 'default': 'eq', 'value': 0, 'old_type': 'number', 'new_type': 'text', 'field': 'z', 'fields': ['a'], 'nullable': False}, {'operator-options': ['missing'], 'retain-operator': 'eq', 'operand-reset': None, 'unknown-field': True, 'nullable-op': False, 'row-complete': False}), ({'operators': ['eq', 'missing'], 'supported': ['missing', 'in'], 'op': 'missing', 'default': 'eq', 'value': None, 'old_type': 'number', 'new_type': 'number', 'field': 'z', 'fields': ['a'], 'nullable': True}, {'operator-options': ['missing'], 'retain-operator': 'missing', 'operand-reset': None, 'unknown-field': True, 'nullable-op': True, 'row-complete': False}), ({'operators': ['eq', 'missing'], 'supported': ['missing', 'in'], 'op': 'missing', 'default': 'eq', 'value': 0, 'old_type': 'number', 'new_type': 'number', 'field': 'a', 'fields': ['a'], 'nullable': False}, {'operator-options': ['missing'], 'retain-operator': 'missing', 'operand-reset': 0, 'unknown-field': False, 'nullable-op': False, 'row-complete': True}), ({'operators': ['eq', 'missing'], 'supported': ['missing', 'in'], 'op': 'missing', 'default': 'eq', 'value': 0, 'old_type': 'number', 'new_type': 'text', 'field': 'a', 'fields': ['a'], 'nullable': True}, {'operator-options': ['missing'], 'retain-operator': 'missing', 'operand-reset': None, 'unknown-field': False, 'nullable-op': True, 'row-complete': True})], 4: [({'operators': ['eq', 'missing'], 'supported': ['eq'], 'op': 'eq', 'default': 'eq', 'value': None, 'old_type': 'number', 'new_type': 'number', 'field': 'z', 'fields': ['a'], 'nullable': True}, {'operator-options': ['eq'], 'retain-operator': 'eq', 'operand-reset': None, 'unknown-field': True, 'nullable-op': False, 'row-complete': False}), ({'operators': ['eq', 'missing'], 'supported': ['missing', 'in'], 'op': 'eq', 'default': 'eq', 'value': 0, 'old_type': 'number', 'new_type': 'text', 'field': 'a', 'fields': ['a'], 'nullable': False}, {'operator-options': ['missing'], 'retain-operator': 'eq', 'operand-reset': None, 'unknown-field': False, 'nullable-op': False, 'row-complete': False}), ({'operators': ['eq', 'missing'], 'supported': ['eq'], 'op': 'missing', 'default': 'eq', 'value': 0, 'old_type': 'number', 'new_type': 'text', 'field': 'a', 'fields': ['a'], 'nullable': False}, {'operator-options': ['eq'], 'retain-operator': 'eq', 'operand-reset': None, 'unknown-field': False, 'nullable-op': False, 'row-complete': False}), ({'operators': ['eq', 'missing'], 'supported': ['missing', 'in'], 'op': 'eq', 'default': 'eq', 'value': None, 'old_type': 'number', 'new_type': 'number', 'field': 'a', 'fields': ['a'], 'nullable': True}, {'operator-options': ['missing'], 'retain-operator': 'eq', 'operand-reset': None, 'unknown-field': False, 'nullable-op': True, 'row-complete': False}), ({'operators': ['eq', 'missing'], 'supported': ['missing', 'in'], 'op': 'eq', 'default': 'eq', 'value': None, 'old_type': 'number', 'new_type': 'text', 'field': 'z', 'fields': ['a'], 'nullable': False}, {'operator-options': ['missing'], 'retain-operator': 'eq', 'operand-reset': None, 'unknown-field': True, 'nullable-op': False, 'row-complete': False}), ({'operators': ['eq', 'missing'], 'supported': ['missing', 'in'], 'op': 'eq', 'default': 'eq', 'value': 0, 'old_type': 'number', 'new_type': 'number', 'field': 'z', 'fields': ['a'], 'nullable': True}, {'operator-options': ['missing'], 'retain-operator': 'eq', 'operand-reset': 0, 'unknown-field': True, 'nullable-op': True, 'row-complete': False}), ({'operators': ['eq', 'missing'], 'supported': ['missing', 'in'], 'op': 'missing', 'default': 'eq', 'value': None, 'old_type': 'number', 'new_type': 'number', 'field': 'a', 'fields': ['a'], 'nullable': False}, {'operator-options': ['missing'], 'retain-operator': 'missing', 'operand-reset': None, 'unknown-field': False, 'nullable-op': False, 'row-complete': True}), ({'operators': ['eq', 'missing'], 'supported': ['missing', 'in'], 'op': 'missing', 'default': 'eq', 'value': None, 'old_type': 'number', 'new_type': 'text', 'field': 'a', 'fields': ['a'], 'nullable': True}, {'operator-options': ['missing'], 'retain-operator': 'missing', 'operand-reset': None, 'unknown-field': False, 'nullable-op': True, 'row-complete': True}), ({'operators': ['eq', 'missing'], 'supported': ['missing', 'in'], 'op': 'missing', 'default': 'eq', 'value': 0, 'old_type': 'number', 'new_type': 'number', 'field': 'z', 'fields': ['a'], 'nullable': False}, {'operator-options': ['missing'], 'retain-operator': 'missing', 'operand-reset': 0, 'unknown-field': True, 'nullable-op': False, 'row-complete': False}), ({'operators': ['eq', 'missing'], 'supported': ['missing', 'in'], 'op': 'missing', 'default': 'eq', 'value': 0, 'old_type': 'number', 'new_type': 'text', 'field': 'z', 'fields': ['a'], 'nullable': True}, {'operator-options': ['missing'], 'retain-operator': 'missing', 'operand-reset': None, 'unknown-field': True, 'nullable-op': True, 'row-complete': False})], 5: [({'operators': ['eq', 'missing'], 'supported': ['eq'], 'op': 'eq', 'default': 'eq', 'value': None, 'old_type': 'number', 'new_type': 'text', 'field': 'a', 'fields': ['a'], 'nullable': False}, {'operator-options': ['eq'], 'retain-operator': 'eq', 'operand-reset': None, 'unknown-field': False, 'nullable-op': False, 'row-complete': False}), ({'operators': ['eq', 'missing'], 'supported': ['missing', 'in'], 'op': 'eq', 'default': 'eq', 'value': 0, 'old_type': 'number', 'new_type': 'text', 'field': 'z', 'fields': ['a'], 'nullable': True}, {'operator-options': ['missing'], 'retain-operator': 'eq', 'operand-reset': None, 'unknown-field': True, 'nullable-op': True, 'row-complete': False}), ({'operators': ['eq', 'missing'], 'supported': ['missing', 'in'], 'op': 'eq', 'default': 'eq', 'value': None, 'old_type': 'number', 'new_type': 'number', 'field': 'z', 'fields': ['a'], 'nullable': True}, {'operator-options': ['missing'], 'retain-operator': 'eq', 'operand-reset': None, 'unknown-field': True, 'nullable-op': True, 'row-complete': False}), ({'operators': ['eq', 'missing'], 'supported': ['missing', 'in'], 'op': 'eq', 'default': 'eq', 'value': 0, 'old_type': 'number', 'new_type': 'number', 'field': 'a', 'fields': ['a'], 'nullable': False}, {'operator-options': ['missing'], 'retain-operator': 'eq', 'operand-reset': 0, 'unknown-field': False, 'nullable-op': False, 'row-complete': False}), ({'operators': ['eq', 'missing'], 'supported': ['missing', 'in'], 'op': 'eq', 'default': 'eq', 'value': 0, 'old_type': 'number', 'new_type': 'text', 'field': 'a', 'fields': ['a'], 'nullable': True}, {'operator-options': ['missing'], 'retain-operator': 'eq', 'operand-reset': None, 'unknown-field': False, 'nullable-op': True, 'row-complete': False}), ({'operators': ['eq', 'missing'], 'supported': ['missing', 'in'], 'op': 'missing', 'default': 'eq', 'value': None, 'old_type': 'number', 'new_type': 'number', 'field': 'z', 'fields': ['a'], 'nullable': False}, {'operator-options': ['missing'], 'retain-operator': 'missing', 'operand-reset': None, 'unknown-field': True, 'nullable-op': False, 'row-complete': False}), ({'operators': ['eq', 'missing'], 'supported': ['missing', 'in'], 'op': 'missing', 'default': 'eq', 'value': None, 'old_type': 'number', 'new_type': 'text', 'field': 'z', 'fields': ['a'], 'nullable': True}, {'operator-options': ['missing'], 'retain-operator': 'missing', 'operand-reset': None, 'unknown-field': True, 'nullable-op': True, 'row-complete': False}), ({'operators': ['eq', 'missing'], 'supported': ['missing', 'in'], 'op': 'missing', 'default': 'eq', 'value': 0, 'old_type': 'number', 'new_type': 'text', 'field': 'a', 'fields': ['a'], 'nullable': False}, {'operator-options': ['missing'], 'retain-operator': 'missing', 'operand-reset': None, 'unknown-field': False, 'nullable-op': False, 'row-complete': True}), ({'operators': ['eq', 'missing'], 'supported': ['eq'], 'op': 'eq', 'default': 'eq', 'value': None, 'old_type': 'number', 'new_type': 'number', 'field': 'a', 'fields': ['a'], 'nullable': True}, {'operator-options': ['eq'], 'retain-operator': 'eq', 'operand-reset': None, 'unknown-field': False, 'nullable-op': False, 'row-complete': False}), ({'operators': ['eq', 'missing'], 'supported': ['eq'], 'op': 'eq', 'default': 'eq', 'value': None, 'old_type': 'number', 'new_type': 'text', 'field': 'z', 'fields': ['a'], 'nullable': False}, {'operator-options': ['eq'], 'retain-operator': 'eq', 'operand-reset': None, 'unknown-field': True, 'nullable-op': False, 'row-complete': False})]}
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)

prompt:
Operator menus intersect field support with globally enabled operations is violated by the widget projection.

A filter-builder row uses schema capability lists to determine available operators and reset incompatible operands when its field changes. This example checks: Operator menus intersect field support with globally enabled operations.

split: open-access