FA-25946 / Filter interfaces / Open access
Pinned headers keep user pin order and exclude absent options · case 01
Pinned headers keep user pin order and exclude absent options is violated by the widget projection.
ROOT CAUSE
The pin-visible-only decision uses `list(d['pinned'])` instead of the stipulated facet-ordering projection.
VERIFIED REPAIR
Implement the declared pin-visible-only projection: `[x for x in d['pinned'] if x in d['options']]`.
Unsuccessful approach: The attempted correction `[x for x in d['options'] if x in d['pinned']]` still violates the explicit contract fixtures.
Case contract
Facet ordering uses pinned then selected priority, descending known counts, and stable server order for ties; unknown counts sort behind known counts. This example checks: Pinned headers keep user pin order and exclude absent options.
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 {'pin-priority':([x for x in d['options'] if x in d['pinned']]+[x for x in d['options'] if x not in d['pinned']]), 'selection-priority':([x for x in d['options'] if x in d['selected']]+[x for x in d['options'] if x not in d['selected']]), 'unknown-last':(sorted(d['options'],key=lambda x:d['counts'][x] is None)), 'descending-count':(sorted(d['options'],key=lambda x:-(d['counts'][x] if d['counts'][x] is not None else -1))), 'stable-count-ties':(sorted(d['options'],key=lambda x:-(d['counts'][x] if d['counts'][x] is not None else -1))), 'pin-visible-only':(list(d['pinned']))}
def check(label, actual, expected):
observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
fixtures = {1: [({'options': ['b', 'a', 'c'], 'pinned': ['a', 'z', 'b'], 'selected': ['a'], 'counts': {'a': 0, 'b': None, 'c': 3}}, {'pin-priority': ['b', 'a', 'c'], 'selection-priority': ['a', 'b', 'c'], 'unknown-last': ['a', 'c', 'b'], 'descending-count': ['c', 'a', 'b'], 'stable-count-ties': ['c', 'a', 'b'], 'pin-visible-only': ['a', 'b']}), ({'options': ['b', 'a', 'c'], 'pinned': ['a', 'z', 'b'], 'selected': ['b', 'c'], 'counts': {'a': 0, 'b': None, 'c': 3}}, {'pin-priority': ['b', 'a', 'c'], 'selection-priority': ['b', 'c', 'a'], 'unknown-last': ['a', 'c', 'b'], 'descending-count': ['c', 'a', 'b'], 'stable-count-ties': ['c', 'a', 'b'], 'pin-visible-only': ['a', 'b']}), ({'options': ['b', 'a', 'c'], 'pinned': ['a', 'z', 'b'], 'selected': ['a'], 'counts': {'a': 2, 'b': 2, 'c': None}}, {'pin-priority': ['b', 'a', 'c'], 'selection-priority': ['a', 'b', 'c'], 'unknown-last': ['b', 'a', 'c'], 'descending-count': ['b', 'a', 'c'], 'stable-count-ties': ['b', 'a', 'c'], 'pin-visible-only': ['a', 'b']}), ({'options': ['b', 'a', 'c'], 'pinned': ['a', 'z', 'b'], 'selected': ['b', 'c'], 'counts': {'a': None, 'b': 0, 'c': 0}}, {'pin-priority': ['b', 'a', 'c'], 'selection-priority': ['b', 'c', 'a'], 'unknown-last': ['b', 'c', 'a'], 'descending-count': ['b', 'c', 'a'], 'stable-count-ties': ['b', 'c', 'a'], 'pin-visible-only': ['a', 'b']}), ({'options': ['c', 'b', 'a'], 'pinned': [], 'selected': ['a'], 'counts': {'a': 2, 'b': 2, 'c': None}}, {'pin-priority': ['c', 'b', 'a'], 'selection-priority': ['a', 'c', 'b'], 'unknown-last': ['b', 'a', 'c'], 'descending-count': ['b', 'a', 'c'], 'stable-count-ties': ['b', 'a', 'c'], 'pin-visible-only': []}), ({'options': ['c', 'b', 'a'], 'pinned': [], 'selected': ['b', 'c'], 'counts': {'a': 0, 'b': None, 'c': 3}}, {'pin-priority': ['c', 'b', 'a'], 'selection-priority': ['c', 'b', 'a'], 'unknown-last': ['c', 'a', 'b'], 'descending-count': ['c', 'a', 'b'], 'stable-count-ties': ['c', 'a', 'b'], 'pin-visible-only': []}), ({'options': ['c', 'b', 'a'], 'pinned': [], 'selected': ['b', 'c'], 'counts': {'a': None, 'b': 0, 'c': 0}}, {'pin-priority': ['c', 'b', 'a'], 'selection-priority': ['c', 'b', 'a'], 'unknown-last': ['c', 'b', 'a'], 'descending-count': ['c', 'b', 'a'], 'stable-count-ties': ['c', 'b', 'a'], 'pin-visible-only': []}), ({'options': ['c', 'b', 'a'], 'pinned': ['a', 'z', 'b'], 'selected': ['a'], 'counts': {'a': 2, 'b': 2, 'c': None}}, {'pin-priority': ['b', 'a', 'c'], 'selection-priority': ['a', 'c', 'b'], 'unknown-last': ['b', 'a', 'c'], 'descending-count': ['b', 'a', 'c'], 'stable-count-ties': ['b', 'a', 'c'], 'pin-visible-only': ['a', 'b']}), ({'options': ['c', 'b', 'a'], 'pinned': ['a', 'z', 'b'], 'selected': ['b', 'c'], 'counts': {'a': 0, 'b': None, 'c': 3}}, {'pin-priority': ['b', 'a', 'c'], 'selection-priority': ['c', 'b', 'a'], 'unknown-last': ['c', 'a', 'b'], 'descending-count': ['c', 'a', 'b'], 'stable-count-ties': ['c', 'a', 'b'], 'pin-visible-only': ['a', 'b']}), ({'options': ['c', 'b', 'a'], 'pinned': ['a', 'z', 'b'], 'selected': ['b', 'c'], 'counts': {'a': None, 'b': 0, 'c': 0}}, {'pin-priority': ['b', 'a', 'c'], 'selection-priority': ['c', 'b', 'a'], 'unknown-last': ['c', 'b', 'a'], 'descending-count': ['c', 'b', 'a'], 'stable-count-ties': ['c', 'b', 'a'], 'pin-visible-only': ['a', 'b']})], 2: [({'options': ['b', 'a', 'c'], 'pinned': ['a', 'z', 'b'], 'selected': ['a'], 'counts': {'a': 2, 'b': 2, 'c': None}}, {'pin-priority': ['b', 'a', 'c'], 'selection-priority': ['a', 'b', 'c'], 'unknown-last': ['b', 'a', 'c'], 'descending-count': ['b', 'a', 'c'], 'stable-count-ties': ['b', 'a', 'c'], 'pin-visible-only': ['a', 'b']}), ({'options': ['c', 'b', 'a'], 'pinned': ['a', 'z', 'b'], 'selected': ['a'], 'counts': {'a': 0, 'b': None, 'c': 3}}, {'pin-priority': ['b', 'a', 'c'], 'selection-priority': ['a', 'c', 'b'], 'unknown-last': ['c', 'a', 'b'], 'descending-count': ['c', 'a', 'b'], 'stable-count-ties': ['c', 'a', 'b'], 'pin-visible-only': ['a', 'b']}), ({'options': ['c', 'b', 'a'], 'pinned': [], 'selected': ['a'], 'counts': {'a': None, 'b': 0, 'c': 0}}, {'pin-priority': ['c', 'b', 'a'], 'selection-priority': ['a', 'c', 'b'], 'unknown-last': ['c', 'b', 'a'], 'descending-count': ['c', 'b', 'a'], 'stable-count-ties': ['c', 'b', 'a'], 'pin-visible-only': []}), ({'options': ['c', 'b', 'a'], 'pinned': [], 'selected': ['b', 'c'], 'counts': {'a': 2, 'b': 2, 'c': None}}, {'pin-priority': ['c', 'b', 'a'], 'selection-priority': ['c', 'b', 'a'], 'unknown-last': ['b', 'a', 'c'], 'descending-count': ['b', 'a', 'c'], 'stable-count-ties': ['b', 'a', 'c'], 'pin-visible-only': []}), ({'options': ['c', 'b', 'a'], 'pinned': ['a', 'z', 'b'], 'selected': ['a'], 'counts': {'a': None, 'b': 0, 'c': 0}}, {'pin-priority': ['b', 'a', 'c'], 'selection-priority': ['a', 'c', 'b'], 'unknown-last': ['c', 'b', 'a'], 'descending-count': ['c', 'b', 'a'], 'stable-count-ties': ['c', 'b', 'a'], 'pin-visible-only': ['a', 'b']}), ({'options': ['c', 'b', 'a'], 'pinned': ['a', 'z', 'b'], 'selected': ['b', 'c'], 'counts': {'a': 2, 'b': 2, 'c': None}}, {'pin-priority': ['b', 'a', 'c'], 'selection-priority': ['c', 'b', 'a'], 'unknown-last': ['b', 'a', 'c'], 'descending-count': ['b', 'a', 'c'], 'stable-count-ties': ['b', 'a', 'c'], 'pin-visible-only': ['a', 'b']}), ({'options': ['b', 'a', 'c'], 'pinned': [], 'selected': ['a'], 'counts': {'a': 0, 'b': None, 'c': 3}}, {'pin-priority': ['b', 'a', 'c'], 'selection-priority': ['a', 'b', 'c'], 'unknown-last': ['a', 'c', 'b'], 'descending-count': ['c', 'a', 'b'], 'stable-count-ties': ['c', 'a', 'b'], 'pin-visible-only': []}), ({'options': ['b', 'a', 'c'], 'pinned': [], 'selected': ['a'], 'counts': {'a': None, 'b': 0, 'c': 0}}, {'pin-priority': ['b', 'a', 'c'], 'selection-priority': ['a', 'b', 'c'], 'unknown-last': ['b', 'c', 'a'], 'descending-count': ['b', 'c', 'a'], 'stable-count-ties': ['b', 'c', 'a'], 'pin-visible-only': []}), ({'options': ['b', 'a', 'c'], 'pinned': [], 'selected': ['b', 'c'], 'counts': {'a': 2, 'b': 2, 'c': None}}, {'pin-priority': ['b', 'a', 'c'], 'selection-priority': ['b', 'c', 'a'], 'unknown-last': ['b', 'a', 'c'], 'descending-count': ['b', 'a', 'c'], 'stable-count-ties': ['b', 'a', 'c'], 'pin-visible-only': []}), ({'options': ['b', 'a', 'c'], 'pinned': ['a', 'z', 'b'], 'selected': ['a'], 'counts': {'a': 0, 'b': None, 'c': 3}}, {'pin-priority': ['b', 'a', 'c'], 'selection-priority': ['a', 'b', 'c'], 'unknown-last': ['a', 'c', 'b'], 'descending-count': ['c', 'a', 'b'], 'stable-count-ties': ['c', 'a', 'b'], 'pin-visible-only': ['a', 'b']})], 3: [({'options': ['b', 'a', 'c'], 'pinned': ['a', 'z', 'b'], 'selected': ['a'], 'counts': {'a': None, 'b': 0, 'c': 0}}, {'pin-priority': ['b', 'a', 'c'], 'selection-priority': ['a', 'b', 'c'], 'unknown-last': ['b', 'c', 'a'], 'descending-count': ['b', 'c', 'a'], 'stable-count-ties': ['b', 'c', 'a'], 'pin-visible-only': ['a', 'b']}), ({'options': ['c', 'b', 'a'], 'pinned': ['a', 'z', 'b'], 'selected': ['b', 'c'], 'counts': {'a': 0, 'b': None, 'c': 3}}, {'pin-priority': ['b', 'a', 'c'], 'selection-priority': ['c', 'b', 'a'], 'unknown-last': ['c', 'a', 'b'], 'descending-count': ['c', 'a', 'b'], 'stable-count-ties': ['c', 'a', 'b'], 'pin-visible-only': ['a', 'b']}), ({'options': ['c', 'b', 'a'], 'pinned': ['a', 'z', 'b'], 'selected': ['b', 'c'], 'counts': {'a': None, 'b': 0, 'c': 0}}, {'pin-priority': ['b', 'a', 'c'], 'selection-priority': ['c', 'b', 'a'], 'unknown-last': ['c', 'b', 'a'], 'descending-count': ['c', 'b', 'a'], 'stable-count-ties': ['c', 'b', 'a'], 'pin-visible-only': ['a', 'b']}), ({'options': ['b', 'a', 'c'], 'pinned': [], 'selected': ['a'], 'counts': {'a': 2, 'b': 2, 'c': None}}, {'pin-priority': ['b', 'a', 'c'], 'selection-priority': ['a', 'b', 'c'], 'unknown-last': ['b', 'a', 'c'], 'descending-count': ['b', 'a', 'c'], 'stable-count-ties': ['b', 'a', 'c'], 'pin-visible-only': []}), ({'options': ['b', 'a', 'c'], 'pinned': [], 'selected': ['b', 'c'], 'counts': {'a': 0, 'b': None, 'c': 3}}, {'pin-priority': ['b', 'a', 'c'], 'selection-priority': ['b', 'c', 'a'], 'unknown-last': ['a', 'c', 'b'], 'descending-count': ['c', 'a', 'b'], 'stable-count-ties': ['c', 'a', 'b'], 'pin-visible-only': []}), ({'options': ['b', 'a', 'c'], 'pinned': [], 'selected': ['b', 'c'], 'counts': {'a': None, 'b': 0, 'c': 0}}, {'pin-priority': ['b', 'a', 'c'], 'selection-priority': ['b', 'c', 'a'], 'unknown-last': ['b', 'c', 'a'], 'descending-count': ['b', 'c', 'a'], 'stable-count-ties': ['b', 'c', 'a'], 'pin-visible-only': []}), ({'options': ['b', 'a', 'c'], 'pinned': ['a', 'z', 'b'], 'selected': ['a'], 'counts': {'a': 2, 'b': 2, 'c': None}}, {'pin-priority': ['b', 'a', 'c'], 'selection-priority': ['a', 'b', 'c'], 'unknown-last': ['b', 'a', 'c'], 'descending-count': ['b', 'a', 'c'], 'stable-count-ties': ['b', 'a', 'c'], 'pin-visible-only': ['a', 'b']}), ({'options': ['b', 'a', 'c'], 'pinned': ['a', 'z', 'b'], 'selected': ['b', 'c'], 'counts': {'a': 0, 'b': None, 'c': 3}}, {'pin-priority': ['b', 'a', 'c'], 'selection-priority': ['b', 'c', 'a'], 'unknown-last': ['a', 'c', 'b'], 'descending-count': ['c', 'a', 'b'], 'stable-count-ties': ['c', 'a', 'b'], 'pin-visible-only': ['a', 'b']}), ({'options': ['b', 'a', 'c'], 'pinned': ['a', 'z', 'b'], 'selected': ['b', 'c'], 'counts': {'a': None, 'b': 0, 'c': 0}}, {'pin-priority': ['b', 'a', 'c'], 'selection-priority': ['b', 'c', 'a'], 'unknown-last': ['b', 'c', 'a'], 'descending-count': ['b', 'c', 'a'], 'stable-count-ties': ['b', 'c', 'a'], 'pin-visible-only': ['a', 'b']}), ({'options': ['c', 'b', 'a'], 'pinned': [], 'selected': ['a'], 'counts': {'a': 2, 'b': 2, 'c': None}}, {'pin-priority': ['c', 'b', 'a'], 'selection-priority': ['a', 'c', 'b'], 'unknown-last': ['b', 'a', 'c'], 'descending-count': ['b', 'a', 'c'], 'stable-count-ties': ['b', 'a', 'c'], 'pin-visible-only': []})], 4: [({'options': ['b', 'a', 'c'], 'pinned': ['a', 'z', 'b'], 'selected': ['b', 'c'], 'counts': {'a': 0, 'b': None, 'c': 3}}, {'pin-priority': ['b', 'a', 'c'], 'selection-priority': ['b', 'c', 'a'], 'unknown-last': ['a', 'c', 'b'], 'descending-count': ['c', 'a', 'b'], 'stable-count-ties': ['c', 'a', 'b'], 'pin-visible-only': ['a', 'b']}), ({'options': ['b', 'a', 'c'], 'pinned': ['a', 'z', 'b'], 'selected': ['a'], 'counts': {'a': 0, 'b': None, 'c': 3}}, {'pin-priority': ['b', 'a', 'c'], 'selection-priority': ['a', 'b', 'c'], 'unknown-last': ['a', 'c', 'b'], 'descending-count': ['c', 'a', 'b'], 'stable-count-ties': ['c', 'a', 'b'], 'pin-visible-only': ['a', 'b']}), ({'options': ['b', 'a', 'c'], 'pinned': [], 'selected': ['b', 'c'], 'counts': {'a': 2, 'b': 2, 'c': None}}, {'pin-priority': ['b', 'a', 'c'], 'selection-priority': ['b', 'c', 'a'], 'unknown-last': ['b', 'a', 'c'], 'descending-count': ['b', 'a', 'c'], 'stable-count-ties': ['b', 'a', 'c'], 'pin-visible-only': []}), ({'options': ['b', 'a', 'c'], 'pinned': ['a', 'z', 'b'], 'selected': ['a'], 'counts': {'a': None, 'b': 0, 'c': 0}}, {'pin-priority': ['b', 'a', 'c'], 'selection-priority': ['a', 'b', 'c'], 'unknown-last': ['b', 'c', 'a'], 'descending-count': ['b', 'c', 'a'], 'stable-count-ties': ['b', 'c', 'a'], 'pin-visible-only': ['a', 'b']}), ({'options': ['b', 'a', 'c'], 'pinned': ['a', 'z', 'b'], 'selected': ['b', 'c'], 'counts': {'a': 2, 'b': 2, 'c': None}}, {'pin-priority': ['b', 'a', 'c'], 'selection-priority': ['b', 'c', 'a'], 'unknown-last': ['b', 'a', 'c'], 'descending-count': ['b', 'a', 'c'], 'stable-count-ties': ['b', 'a', 'c'], 'pin-visible-only': ['a', 'b']}), ({'options': ['c', 'b', 'a'], 'pinned': [], 'selected': ['a'], 'counts': {'a': 0, 'b': None, 'c': 3}}, {'pin-priority': ['c', 'b', 'a'], 'selection-priority': ['a', 'c', 'b'], 'unknown-last': ['c', 'a', 'b'], 'descending-count': ['c', 'a', 'b'], 'stable-count-ties': ['c', 'a', 'b'], 'pin-visible-only': []}), ({'options': ['c', 'b', 'a'], 'pinned': [], 'selected': ['a'], 'counts': {'a': None, 'b': 0, 'c': 0}}, {'pin-priority': ['c', 'b', 'a'], 'selection-priority': ['a', 'c', 'b'], 'unknown-last': ['c', 'b', 'a'], 'descending-count': ['c', 'b', 'a'], 'stable-count-ties': ['c', 'b', 'a'], 'pin-visible-only': []}), ({'options': ['c', 'b', 'a'], 'pinned': [], 'selected': ['b', 'c'], 'counts': {'a': 2, 'b': 2, 'c': None}}, {'pin-priority': ['c', 'b', 'a'], 'selection-priority': ['c', 'b', 'a'], 'unknown-last': ['b', 'a', 'c'], 'descending-count': ['b', 'a', 'c'], 'stable-count-ties': ['b', 'a', 'c'], 'pin-visible-only': []}), ({'options': ['c', 'b', 'a'], 'pinned': ['a', 'z', 'b'], 'selected': ['a'], 'counts': {'a': 0, 'b': None, 'c': 3}}, {'pin-priority': ['b', 'a', 'c'], 'selection-priority': ['a', 'c', 'b'], 'unknown-last': ['c', 'a', 'b'], 'descending-count': ['c', 'a', 'b'], 'stable-count-ties': ['c', 'a', 'b'], 'pin-visible-only': ['a', 'b']}), ({'options': ['c', 'b', 'a'], 'pinned': ['a', 'z', 'b'], 'selected': ['a'], 'counts': {'a': None, 'b': 0, 'c': 0}}, {'pin-priority': ['b', 'a', 'c'], 'selection-priority': ['a', 'c', 'b'], 'unknown-last': ['c', 'b', 'a'], 'descending-count': ['c', 'b', 'a'], 'stable-count-ties': ['c', 'b', 'a'], 'pin-visible-only': ['a', 'b']})], 5: [({'options': ['b', 'a', 'c'], 'pinned': ['a', 'z', 'b'], 'selected': ['b', 'c'], 'counts': {'a': 2, 'b': 2, 'c': None}}, {'pin-priority': ['b', 'a', 'c'], 'selection-priority': ['b', 'c', 'a'], 'unknown-last': ['b', 'a', 'c'], 'descending-count': ['b', 'a', 'c'], 'stable-count-ties': ['b', 'a', 'c'], 'pin-visible-only': ['a', 'b']}), ({'options': ['b', 'a', 'c'], 'pinned': ['a', 'z', 'b'], 'selected': ['b', 'c'], 'counts': {'a': 0, 'b': None, 'c': 3}}, {'pin-priority': ['b', 'a', 'c'], 'selection-priority': ['b', 'c', 'a'], 'unknown-last': ['a', 'c', 'b'], 'descending-count': ['c', 'a', 'b'], 'stable-count-ties': ['c', 'a', 'b'], 'pin-visible-only': ['a', 'b']}), ({'options': ['b', 'a', 'c'], 'pinned': ['a', 'z', 'b'], 'selected': ['b', 'c'], 'counts': {'a': None, 'b': 0, 'c': 0}}, {'pin-priority': ['b', 'a', 'c'], 'selection-priority': ['b', 'c', 'a'], 'unknown-last': ['b', 'c', 'a'], 'descending-count': ['b', 'c', 'a'], 'stable-count-ties': ['b', 'c', 'a'], 'pin-visible-only': ['a', 'b']}), ({'options': ['c', 'b', 'a'], 'pinned': [], 'selected': ['a'], 'counts': {'a': 2, 'b': 2, 'c': None}}, {'pin-priority': ['c', 'b', 'a'], 'selection-priority': ['a', 'c', 'b'], 'unknown-last': ['b', 'a', 'c'], 'descending-count': ['b', 'a', 'c'], 'stable-count-ties': ['b', 'a', 'c'], 'pin-visible-only': []}), ({'options': ['c', 'b', 'a'], 'pinned': [], 'selected': ['b', 'c'], 'counts': {'a': 0, 'b': None, 'c': 3}}, {'pin-priority': ['c', 'b', 'a'], 'selection-priority': ['c', 'b', 'a'], 'unknown-last': ['c', 'a', 'b'], 'descending-count': ['c', 'a', 'b'], 'stable-count-ties': ['c', 'a', 'b'], 'pin-visible-only': []}), ({'options': ['c', 'b', 'a'], 'pinned': [], 'selected': ['b', 'c'], 'counts': {'a': None, 'b': 0, 'c': 0}}, {'pin-priority': ['c', 'b', 'a'], 'selection-priority': ['c', 'b', 'a'], 'unknown-last': ['c', 'b', 'a'], 'descending-count': ['c', 'b', 'a'], 'stable-count-ties': ['c', 'b', 'a'], 'pin-visible-only': []}), ({'options': ['c', 'b', 'a'], 'pinned': ['a', 'z', 'b'], 'selected': ['a'], 'counts': {'a': 2, 'b': 2, 'c': None}}, {'pin-priority': ['b', 'a', 'c'], 'selection-priority': ['a', 'c', 'b'], 'unknown-last': ['b', 'a', 'c'], 'descending-count': ['b', 'a', 'c'], 'stable-count-ties': ['b', 'a', 'c'], 'pin-visible-only': ['a', 'b']}), ({'options': ['c', 'b', 'a'], 'pinned': ['a', 'z', 'b'], 'selected': ['b', 'c'], 'counts': {'a': 0, 'b': None, 'c': 3}}, {'pin-priority': ['b', 'a', 'c'], 'selection-priority': ['c', 'b', 'a'], 'unknown-last': ['c', 'a', 'b'], 'descending-count': ['c', 'a', 'b'], 'stable-count-ties': ['c', 'a', 'b'], 'pin-visible-only': ['a', 'b']}), ({'options': ['c', 'b', 'a'], 'pinned': ['a', 'z', 'b'], 'selected': ['b', 'c'], 'counts': {'a': None, 'b': 0, 'c': 0}}, {'pin-priority': ['b', 'a', 'c'], 'selection-priority': ['c', 'b', 'a'], 'unknown-last': ['c', 'b', 'a'], 'descending-count': ['c', 'b', 'a'], 'stable-count-ties': ['c', 'b', 'a'], 'pin-visible-only': ['a', 'b']}), ({'options': ['b', 'a', 'c'], 'pinned': [], 'selected': ['a'], 'counts': {'a': 2, 'b': 2, 'c': None}}, {'pin-priority': ['b', 'a', 'c'], 'selection-priority': ['a', 'b', 'c'], 'unknown-last': ['b', 'a', 'c'], 'descending-count': ['b', 'a', 'c'], 'stable-count-ties': ['b', 'a', 'c'], 'pin-visible-only': []})]}
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 | {'descending-count': ['c', 'a', 'b'], 'pin-priority': ['b', 'a', 'c'], 'pin-visible-only': ['a', 'z', 'b'], 'selection-priority': ['a', 'b', 'c'], 'stable-count-ties': ['c', 'a', 'b'], 'unknown-last': ['a', 'c', 'b']} | {'descending-count': ['c', 'a', 'b'], 'pin-priority': ['b', 'a', 'c'], 'pin-visible-only': ['a', 'b'], 'selection-priority': ['a', 'b', 'c'], 'stable-count-ties': ['c', 'a', 'b'], 'unknown-last': ['a', 'c', 'b']} | Failed |
| contract fixture 1 | {'descending-count': ['c', 'a', 'b'], 'pin-priority': ['b', 'a', 'c'], 'pin-visible-only': ['a', 'z', 'b'], 'selection-priority': ['b', 'c', 'a'], 'stable-count-ties': ['c', 'a', 'b'], 'unknown-last': ['a', 'c', 'b']} | {'descending-count': ['c', 'a', 'b'], 'pin-priority': ['b', 'a', 'c'], 'pin-visible-only': ['a', 'b'], 'selection-priority': ['b', 'c', 'a'], 'stable-count-ties': ['c', 'a', 'b'], 'unknown-last': ['a', 'c', 'b']} | Failed |
| contract fixture 2 | {'descending-count': ['b', 'a', 'c'], 'pin-priority': ['b', 'a', 'c'], 'pin-visible-only': ['a', 'z', 'b'], 'selection-priority': ['a', 'b', 'c'], 'stable-count-ties': ['b', 'a', 'c'], 'unknown-last': ['b', 'a', 'c']} | {'descending-count': ['b', 'a', 'c'], 'pin-priority': ['b', 'a', 'c'], 'pin-visible-only': ['a', 'b'], 'selection-priority': ['a', 'b', 'c'], 'stable-count-ties': ['b', 'a', 'c'], 'unknown-last': ['b', 'a', 'c']} | Failed |
| contract fixture 3 | {'descending-count': ['b', 'c', 'a'], 'pin-priority': ['b', 'a', 'c'], 'pin-visible-only': ['a', 'z', 'b'], 'selection-priority': ['b', 'c', 'a'], 'stable-count-ties': ['b', 'c', 'a'], 'unknown-last': ['b', 'c', 'a']} | {'descending-count': ['b', 'c', 'a'], 'pin-priority': ['b', 'a', 'c'], 'pin-visible-only': ['a', 'b'], 'selection-priority': ['b', 'c', 'a'], 'stable-count-ties': ['b', 'c', 'a'], 'unknown-last': ['b', 'c', 'a']} | Failed |
| contract fixture 4 | {'descending-count': ['b', 'a', 'c'], 'pin-priority': ['c', 'b', 'a'], 'pin-visible-only': [], 'selection-priority': ['a', 'c', 'b'], 'stable-count-ties': ['b', 'a', 'c'], 'unknown-last': ['b', 'a', 'c']} | {'descending-count': ['b', 'a', 'c'], 'pin-priority': ['c', 'b', 'a'], 'pin-visible-only': [], 'selection-priority': ['a', 'c', 'b'], 'stable-count-ties': ['b', 'a', 'c'], 'unknown-last': ['b', 'a', 'c']} | Passed |
| contract fixture 5 | {'descending-count': ['c', 'a', 'b'], 'pin-priority': ['c', 'b', 'a'], 'pin-visible-only': [], 'selection-priority': ['c', 'b', 'a'], 'stable-count-ties': ['c', 'a', 'b'], 'unknown-last': ['c', 'a', 'b']} | {'descending-count': ['c', 'a', 'b'], 'pin-priority': ['c', 'b', 'a'], 'pin-visible-only': [], 'selection-priority': ['c', 'b', 'a'], 'stable-count-ties': ['c', 'a', 'b'], 'unknown-last': ['c', 'a', 'b']} | Passed |
| contract fixture 6 | {'descending-count': ['c', 'b', 'a'], 'pin-priority': ['c', 'b', 'a'], 'pin-visible-only': [], 'selection-priority': ['c', 'b', 'a'], 'stable-count-ties': ['c', 'b', 'a'], 'unknown-last': ['c', 'b', 'a']} | {'descending-count': ['c', 'b', 'a'], 'pin-priority': ['c', 'b', 'a'], 'pin-visible-only': [], 'selection-priority': ['c', 'b', 'a'], 'stable-count-ties': ['c', 'b', 'a'], 'unknown-last': ['c', 'b', 'a']} | Passed |
| contract fixture 7 | {'descending-count': ['b', 'a', 'c'], 'pin-priority': ['b', 'a', 'c'], 'pin-visible-only': ['a', 'z', 'b'], 'selection-priority': ['a', 'c', 'b'], 'stable-count-ties': ['b', 'a', 'c'], 'unknown-last': ['b', 'a', 'c']} | {'descending-count': ['b', 'a', 'c'], 'pin-priority': ['b', 'a', 'c'], 'pin-visible-only': ['a', 'b'], 'selection-priority': ['a', 'c', 'b'], 'stable-count-ties': ['b', 'a', 'c'], 'unknown-last': ['b', 'a', 'c']} | Failed |
| contract fixture 8 | {'descending-count': ['c', 'a', 'b'], 'pin-priority': ['b', 'a', 'c'], 'pin-visible-only': ['a', 'z', 'b'], 'selection-priority': ['c', 'b', 'a'], 'stable-count-ties': ['c', 'a', 'b'], 'unknown-last': ['c', 'a', 'b']} | {'descending-count': ['c', 'a', 'b'], 'pin-priority': ['b', 'a', 'c'], 'pin-visible-only': ['a', 'b'], 'selection-priority': ['c', 'b', 'a'], 'stable-count-ties': ['c', 'a', 'b'], 'unknown-last': ['c', 'a', 'b']} | Failed |
| contract fixture 9 | {'descending-count': ['c', 'b', 'a'], 'pin-priority': ['b', 'a', 'c'], 'pin-visible-only': ['a', 'z', 'b'], 'selection-priority': ['c', 'b', 'a'], 'stable-count-ties': ['c', 'b', 'a'], 'unknown-last': ['c', 'b', 'a']} | {'descending-count': ['c', 'b', 'a'], 'pin-priority': ['b', 'a', 'c'], 'pin-visible-only': ['a', 'b'], 'selection-priority': ['c', 'b', 'a'], 'stable-count-ties': ['c', 'b', 'a'], 'unknown-last': ['c', 'b', 'a']} | Failed |
SHA-256 / b0fcfa7c0044552c106ab0d4a45b5e521b6a4241de8577dbb289c5ebd2f3c91c
2 / The unsuccessful fix
Exit 1"""Failure Map reference implementation. Python standard library only."""
import json
N = 1
observations = []
def solve(d):
return {'pin-priority':([x for x in d['options'] if x in d['pinned']]+[x for x in d['options'] if x not in d['pinned']]), 'selection-priority':([x for x in d['options'] if x in d['selected']]+[x for x in d['options'] if x not in d['selected']]), 'unknown-last':(sorted(d['options'],key=lambda x:d['counts'][x] is None)), 'descending-count':(sorted(d['options'],key=lambda x:-(d['counts'][x] if d['counts'][x] is not None else -1))), 'stable-count-ties':(sorted(d['options'],key=lambda x:-(d['counts'][x] if d['counts'][x] is not None else -1))), 'pin-visible-only':([x for x in d['options'] if x in d['pinned']])}
def check(label, actual, expected):
observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
fixtures = {1: [({'options': ['b', 'a', 'c'], 'pinned': ['a', 'z', 'b'], 'selected': ['a'], 'counts': {'a': 0, 'b': None, 'c': 3}}, {'pin-priority': ['b', 'a', 'c'], 'selection-priority': ['a', 'b', 'c'], 'unknown-last': ['a', 'c', 'b'], 'descending-count': ['c', 'a', 'b'], 'stable-count-ties': ['c', 'a', 'b'], 'pin-visible-only': ['a', 'b']}), ({'options': ['b', 'a', 'c'], 'pinned': ['a', 'z', 'b'], 'selected': ['b', 'c'], 'counts': {'a': 0, 'b': None, 'c': 3}}, {'pin-priority': ['b', 'a', 'c'], 'selection-priority': ['b', 'c', 'a'], 'unknown-last': ['a', 'c', 'b'], 'descending-count': ['c', 'a', 'b'], 'stable-count-ties': ['c', 'a', 'b'], 'pin-visible-only': ['a', 'b']}), ({'options': ['b', 'a', 'c'], 'pinned': ['a', 'z', 'b'], 'selected': ['a'], 'counts': {'a': 2, 'b': 2, 'c': None}}, {'pin-priority': ['b', 'a', 'c'], 'selection-priority': ['a', 'b', 'c'], 'unknown-last': ['b', 'a', 'c'], 'descending-count': ['b', 'a', 'c'], 'stable-count-ties': ['b', 'a', 'c'], 'pin-visible-only': ['a', 'b']}), ({'options': ['b', 'a', 'c'], 'pinned': ['a', 'z', 'b'], 'selected': ['b', 'c'], 'counts': {'a': None, 'b': 0, 'c': 0}}, {'pin-priority': ['b', 'a', 'c'], 'selection-priority': ['b', 'c', 'a'], 'unknown-last': ['b', 'c', 'a'], 'descending-count': ['b', 'c', 'a'], 'stable-count-ties': ['b', 'c', 'a'], 'pin-visible-only': ['a', 'b']}), ({'options': ['c', 'b', 'a'], 'pinned': [], 'selected': ['a'], 'counts': {'a': 2, 'b': 2, 'c': None}}, {'pin-priority': ['c', 'b', 'a'], 'selection-priority': ['a', 'c', 'b'], 'unknown-last': ['b', 'a', 'c'], 'descending-count': ['b', 'a', 'c'], 'stable-count-ties': ['b', 'a', 'c'], 'pin-visible-only': []}), ({'options': ['c', 'b', 'a'], 'pinned': [], 'selected': ['b', 'c'], 'counts': {'a': 0, 'b': None, 'c': 3}}, {'pin-priority': ['c', 'b', 'a'], 'selection-priority': ['c', 'b', 'a'], 'unknown-last': ['c', 'a', 'b'], 'descending-count': ['c', 'a', 'b'], 'stable-count-ties': ['c', 'a', 'b'], 'pin-visible-only': []}), ({'options': ['c', 'b', 'a'], 'pinned': [], 'selected': ['b', 'c'], 'counts': {'a': None, 'b': 0, 'c': 0}}, {'pin-priority': ['c', 'b', 'a'], 'selection-priority': ['c', 'b', 'a'], 'unknown-last': ['c', 'b', 'a'], 'descending-count': ['c', 'b', 'a'], 'stable-count-ties': ['c', 'b', 'a'], 'pin-visible-only': []}), ({'options': ['c', 'b', 'a'], 'pinned': ['a', 'z', 'b'], 'selected': ['a'], 'counts': {'a': 2, 'b': 2, 'c': None}}, {'pin-priority': ['b', 'a', 'c'], 'selection-priority': ['a', 'c', 'b'], 'unknown-last': ['b', 'a', 'c'], 'descending-count': ['b', 'a', 'c'], 'stable-count-ties': ['b', 'a', 'c'], 'pin-visible-only': ['a', 'b']}), ({'options': ['c', 'b', 'a'], 'pinned': ['a', 'z', 'b'], 'selected': ['b', 'c'], 'counts': {'a': 0, 'b': None, 'c': 3}}, {'pin-priority': ['b', 'a', 'c'], 'selection-priority': ['c', 'b', 'a'], 'unknown-last': ['c', 'a', 'b'], 'descending-count': ['c', 'a', 'b'], 'stable-count-ties': ['c', 'a', 'b'], 'pin-visible-only': ['a', 'b']}), ({'options': ['c', 'b', 'a'], 'pinned': ['a', 'z', 'b'], 'selected': ['b', 'c'], 'counts': {'a': None, 'b': 0, 'c': 0}}, {'pin-priority': ['b', 'a', 'c'], 'selection-priority': ['c', 'b', 'a'], 'unknown-last': ['c', 'b', 'a'], 'descending-count': ['c', 'b', 'a'], 'stable-count-ties': ['c', 'b', 'a'], 'pin-visible-only': ['a', 'b']})], 2: [({'options': ['b', 'a', 'c'], 'pinned': ['a', 'z', 'b'], 'selected': ['a'], 'counts': {'a': 2, 'b': 2, 'c': None}}, {'pin-priority': ['b', 'a', 'c'], 'selection-priority': ['a', 'b', 'c'], 'unknown-last': ['b', 'a', 'c'], 'descending-count': ['b', 'a', 'c'], 'stable-count-ties': ['b', 'a', 'c'], 'pin-visible-only': ['a', 'b']}), ({'options': ['c', 'b', 'a'], 'pinned': ['a', 'z', 'b'], 'selected': ['a'], 'counts': {'a': 0, 'b': None, 'c': 3}}, {'pin-priority': ['b', 'a', 'c'], 'selection-priority': ['a', 'c', 'b'], 'unknown-last': ['c', 'a', 'b'], 'descending-count': ['c', 'a', 'b'], 'stable-count-ties': ['c', 'a', 'b'], 'pin-visible-only': ['a', 'b']}), ({'options': ['c', 'b', 'a'], 'pinned': [], 'selected': ['a'], 'counts': {'a': None, 'b': 0, 'c': 0}}, {'pin-priority': ['c', 'b', 'a'], 'selection-priority': ['a', 'c', 'b'], 'unknown-last': ['c', 'b', 'a'], 'descending-count': ['c', 'b', 'a'], 'stable-count-ties': ['c', 'b', 'a'], 'pin-visible-only': []}), ({'options': ['c', 'b', 'a'], 'pinned': [], 'selected': ['b', 'c'], 'counts': {'a': 2, 'b': 2, 'c': None}}, {'pin-priority': ['c', 'b', 'a'], 'selection-priority': ['c', 'b', 'a'], 'unknown-last': ['b', 'a', 'c'], 'descending-count': ['b', 'a', 'c'], 'stable-count-ties': ['b', 'a', 'c'], 'pin-visible-only': []}), ({'options': ['c', 'b', 'a'], 'pinned': ['a', 'z', 'b'], 'selected': ['a'], 'counts': {'a': None, 'b': 0, 'c': 0}}, {'pin-priority': ['b', 'a', 'c'], 'selection-priority': ['a', 'c', 'b'], 'unknown-last': ['c', 'b', 'a'], 'descending-count': ['c', 'b', 'a'], 'stable-count-ties': ['c', 'b', 'a'], 'pin-visible-only': ['a', 'b']}), ({'options': ['c', 'b', 'a'], 'pinned': ['a', 'z', 'b'], 'selected': ['b', 'c'], 'counts': {'a': 2, 'b': 2, 'c': None}}, {'pin-priority': ['b', 'a', 'c'], 'selection-priority': ['c', 'b', 'a'], 'unknown-last': ['b', 'a', 'c'], 'descending-count': ['b', 'a', 'c'], 'stable-count-ties': ['b', 'a', 'c'], 'pin-visible-only': ['a', 'b']}), ({'options': ['b', 'a', 'c'], 'pinned': [], 'selected': ['a'], 'counts': {'a': 0, 'b': None, 'c': 3}}, {'pin-priority': ['b', 'a', 'c'], 'selection-priority': ['a', 'b', 'c'], 'unknown-last': ['a', 'c', 'b'], 'descending-count': ['c', 'a', 'b'], 'stable-count-ties': ['c', 'a', 'b'], 'pin-visible-only': []}), ({'options': ['b', 'a', 'c'], 'pinned': [], 'selected': ['a'], 'counts': {'a': None, 'b': 0, 'c': 0}}, {'pin-priority': ['b', 'a', 'c'], 'selection-priority': ['a', 'b', 'c'], 'unknown-last': ['b', 'c', 'a'], 'descending-count': ['b', 'c', 'a'], 'stable-count-ties': ['b', 'c', 'a'], 'pin-visible-only': []}), ({'options': ['b', 'a', 'c'], 'pinned': [], 'selected': ['b', 'c'], 'counts': {'a': 2, 'b': 2, 'c': None}}, {'pin-priority': ['b', 'a', 'c'], 'selection-priority': ['b', 'c', 'a'], 'unknown-last': ['b', 'a', 'c'], 'descending-count': ['b', 'a', 'c'], 'stable-count-ties': ['b', 'a', 'c'], 'pin-visible-only': []}), ({'options': ['b', 'a', 'c'], 'pinned': ['a', 'z', 'b'], 'selected': ['a'], 'counts': {'a': 0, 'b': None, 'c': 3}}, {'pin-priority': ['b', 'a', 'c'], 'selection-priority': ['a', 'b', 'c'], 'unknown-last': ['a', 'c', 'b'], 'descending-count': ['c', 'a', 'b'], 'stable-count-ties': ['c', 'a', 'b'], 'pin-visible-only': ['a', 'b']})], 3: [({'options': ['b', 'a', 'c'], 'pinned': ['a', 'z', 'b'], 'selected': ['a'], 'counts': {'a': None, 'b': 0, 'c': 0}}, {'pin-priority': ['b', 'a', 'c'], 'selection-priority': ['a', 'b', 'c'], 'unknown-last': ['b', 'c', 'a'], 'descending-count': ['b', 'c', 'a'], 'stable-count-ties': ['b', 'c', 'a'], 'pin-visible-only': ['a', 'b']}), ({'options': ['c', 'b', 'a'], 'pinned': ['a', 'z', 'b'], 'selected': ['b', 'c'], 'counts': {'a': 0, 'b': None, 'c': 3}}, {'pin-priority': ['b', 'a', 'c'], 'selection-priority': ['c', 'b', 'a'], 'unknown-last': ['c', 'a', 'b'], 'descending-count': ['c', 'a', 'b'], 'stable-count-ties': ['c', 'a', 'b'], 'pin-visible-only': ['a', 'b']}), ({'options': ['c', 'b', 'a'], 'pinned': ['a', 'z', 'b'], 'selected': ['b', 'c'], 'counts': {'a': None, 'b': 0, 'c': 0}}, {'pin-priority': ['b', 'a', 'c'], 'selection-priority': ['c', 'b', 'a'], 'unknown-last': ['c', 'b', 'a'], 'descending-count': ['c', 'b', 'a'], 'stable-count-ties': ['c', 'b', 'a'], 'pin-visible-only': ['a', 'b']}), ({'options': ['b', 'a', 'c'], 'pinned': [], 'selected': ['a'], 'counts': {'a': 2, 'b': 2, 'c': None}}, {'pin-priority': ['b', 'a', 'c'], 'selection-priority': ['a', 'b', 'c'], 'unknown-last': ['b', 'a', 'c'], 'descending-count': ['b', 'a', 'c'], 'stable-count-ties': ['b', 'a', 'c'], 'pin-visible-only': []}), ({'options': ['b', 'a', 'c'], 'pinned': [], 'selected': ['b', 'c'], 'counts': {'a': 0, 'b': None, 'c': 3}}, {'pin-priority': ['b', 'a', 'c'], 'selection-priority': ['b', 'c', 'a'], 'unknown-last': ['a', 'c', 'b'], 'descending-count': ['c', 'a', 'b'], 'stable-count-ties': ['c', 'a', 'b'], 'pin-visible-only': []}), ({'options': ['b', 'a', 'c'], 'pinned': [], 'selected': ['b', 'c'], 'counts': {'a': None, 'b': 0, 'c': 0}}, {'pin-priority': ['b', 'a', 'c'], 'selection-priority': ['b', 'c', 'a'], 'unknown-last': ['b', 'c', 'a'], 'descending-count': ['b', 'c', 'a'], 'stable-count-ties': ['b', 'c', 'a'], 'pin-visible-only': []}), ({'options': ['b', 'a', 'c'], 'pinned': ['a', 'z', 'b'], 'selected': ['a'], 'counts': {'a': 2, 'b': 2, 'c': None}}, {'pin-priority': ['b', 'a', 'c'], 'selection-priority': ['a', 'b', 'c'], 'unknown-last': ['b', 'a', 'c'], 'descending-count': ['b', 'a', 'c'], 'stable-count-ties': ['b', 'a', 'c'], 'pin-visible-only': ['a', 'b']}), ({'options': ['b', 'a', 'c'], 'pinned': ['a', 'z', 'b'], 'selected': ['b', 'c'], 'counts': {'a': 0, 'b': None, 'c': 3}}, {'pin-priority': ['b', 'a', 'c'], 'selection-priority': ['b', 'c', 'a'], 'unknown-last': ['a', 'c', 'b'], 'descending-count': ['c', 'a', 'b'], 'stable-count-ties': ['c', 'a', 'b'], 'pin-visible-only': ['a', 'b']}), ({'options': ['b', 'a', 'c'], 'pinned': ['a', 'z', 'b'], 'selected': ['b', 'c'], 'counts': {'a': None, 'b': 0, 'c': 0}}, {'pin-priority': ['b', 'a', 'c'], 'selection-priority': ['b', 'c', 'a'], 'unknown-last': ['b', 'c', 'a'], 'descending-count': ['b', 'c', 'a'], 'stable-count-ties': ['b', 'c', 'a'], 'pin-visible-only': ['a', 'b']}), ({'options': ['c', 'b', 'a'], 'pinned': [], 'selected': ['a'], 'counts': {'a': 2, 'b': 2, 'c': None}}, {'pin-priority': ['c', 'b', 'a'], 'selection-priority': ['a', 'c', 'b'], 'unknown-last': ['b', 'a', 'c'], 'descending-count': ['b', 'a', 'c'], 'stable-count-ties': ['b', 'a', 'c'], 'pin-visible-only': []})], 4: [({'options': ['b', 'a', 'c'], 'pinned': ['a', 'z', 'b'], 'selected': ['b', 'c'], 'counts': {'a': 0, 'b': None, 'c': 3}}, {'pin-priority': ['b', 'a', 'c'], 'selection-priority': ['b', 'c', 'a'], 'unknown-last': ['a', 'c', 'b'], 'descending-count': ['c', 'a', 'b'], 'stable-count-ties': ['c', 'a', 'b'], 'pin-visible-only': ['a', 'b']}), ({'options': ['b', 'a', 'c'], 'pinned': ['a', 'z', 'b'], 'selected': ['a'], 'counts': {'a': 0, 'b': None, 'c': 3}}, {'pin-priority': ['b', 'a', 'c'], 'selection-priority': ['a', 'b', 'c'], 'unknown-last': ['a', 'c', 'b'], 'descending-count': ['c', 'a', 'b'], 'stable-count-ties': ['c', 'a', 'b'], 'pin-visible-only': ['a', 'b']}), ({'options': ['b', 'a', 'c'], 'pinned': [], 'selected': ['b', 'c'], 'counts': {'a': 2, 'b': 2, 'c': None}}, {'pin-priority': ['b', 'a', 'c'], 'selection-priority': ['b', 'c', 'a'], 'unknown-last': ['b', 'a', 'c'], 'descending-count': ['b', 'a', 'c'], 'stable-count-ties': ['b', 'a', 'c'], 'pin-visible-only': []}), ({'options': ['b', 'a', 'c'], 'pinned': ['a', 'z', 'b'], 'selected': ['a'], 'counts': {'a': None, 'b': 0, 'c': 0}}, {'pin-priority': ['b', 'a', 'c'], 'selection-priority': ['a', 'b', 'c'], 'unknown-last': ['b', 'c', 'a'], 'descending-count': ['b', 'c', 'a'], 'stable-count-ties': ['b', 'c', 'a'], 'pin-visible-only': ['a', 'b']}), ({'options': ['b', 'a', 'c'], 'pinned': ['a', 'z', 'b'], 'selected': ['b', 'c'], 'counts': {'a': 2, 'b': 2, 'c': None}}, {'pin-priority': ['b', 'a', 'c'], 'selection-priority': ['b', 'c', 'a'], 'unknown-last': ['b', 'a', 'c'], 'descending-count': ['b', 'a', 'c'], 'stable-count-ties': ['b', 'a', 'c'], 'pin-visible-only': ['a', 'b']}), ({'options': ['c', 'b', 'a'], 'pinned': [], 'selected': ['a'], 'counts': {'a': 0, 'b': None, 'c': 3}}, {'pin-priority': ['c', 'b', 'a'], 'selection-priority': ['a', 'c', 'b'], 'unknown-last': ['c', 'a', 'b'], 'descending-count': ['c', 'a', 'b'], 'stable-count-ties': ['c', 'a', 'b'], 'pin-visible-only': []}), ({'options': ['c', 'b', 'a'], 'pinned': [], 'selected': ['a'], 'counts': {'a': None, 'b': 0, 'c': 0}}, {'pin-priority': ['c', 'b', 'a'], 'selection-priority': ['a', 'c', 'b'], 'unknown-last': ['c', 'b', 'a'], 'descending-count': ['c', 'b', 'a'], 'stable-count-ties': ['c', 'b', 'a'], 'pin-visible-only': []}), ({'options': ['c', 'b', 'a'], 'pinned': [], 'selected': ['b', 'c'], 'counts': {'a': 2, 'b': 2, 'c': None}}, {'pin-priority': ['c', 'b', 'a'], 'selection-priority': ['c', 'b', 'a'], 'unknown-last': ['b', 'a', 'c'], 'descending-count': ['b', 'a', 'c'], 'stable-count-ties': ['b', 'a', 'c'], 'pin-visible-only': []}), ({'options': ['c', 'b', 'a'], 'pinned': ['a', 'z', 'b'], 'selected': ['a'], 'counts': {'a': 0, 'b': None, 'c': 3}}, {'pin-priority': ['b', 'a', 'c'], 'selection-priority': ['a', 'c', 'b'], 'unknown-last': ['c', 'a', 'b'], 'descending-count': ['c', 'a', 'b'], 'stable-count-ties': ['c', 'a', 'b'], 'pin-visible-only': ['a', 'b']}), ({'options': ['c', 'b', 'a'], 'pinned': ['a', 'z', 'b'], 'selected': ['a'], 'counts': {'a': None, 'b': 0, 'c': 0}}, {'pin-priority': ['b', 'a', 'c'], 'selection-priority': ['a', 'c', 'b'], 'unknown-last': ['c', 'b', 'a'], 'descending-count': ['c', 'b', 'a'], 'stable-count-ties': ['c', 'b', 'a'], 'pin-visible-only': ['a', 'b']})], 5: [({'options': ['b', 'a', 'c'], 'pinned': ['a', 'z', 'b'], 'selected': ['b', 'c'], 'counts': {'a': 2, 'b': 2, 'c': None}}, {'pin-priority': ['b', 'a', 'c'], 'selection-priority': ['b', 'c', 'a'], 'unknown-last': ['b', 'a', 'c'], 'descending-count': ['b', 'a', 'c'], 'stable-count-ties': ['b', 'a', 'c'], 'pin-visible-only': ['a', 'b']}), ({'options': ['b', 'a', 'c'], 'pinned': ['a', 'z', 'b'], 'selected': ['b', 'c'], 'counts': {'a': 0, 'b': None, 'c': 3}}, {'pin-priority': ['b', 'a', 'c'], 'selection-priority': ['b', 'c', 'a'], 'unknown-last': ['a', 'c', 'b'], 'descending-count': ['c', 'a', 'b'], 'stable-count-ties': ['c', 'a', 'b'], 'pin-visible-only': ['a', 'b']}), ({'options': ['b', 'a', 'c'], 'pinned': ['a', 'z', 'b'], 'selected': ['b', 'c'], 'counts': {'a': None, 'b': 0, 'c': 0}}, {'pin-priority': ['b', 'a', 'c'], 'selection-priority': ['b', 'c', 'a'], 'unknown-last': ['b', 'c', 'a'], 'descending-count': ['b', 'c', 'a'], 'stable-count-ties': ['b', 'c', 'a'], 'pin-visible-only': ['a', 'b']}), ({'options': ['c', 'b', 'a'], 'pinned': [], 'selected': ['a'], 'counts': {'a': 2, 'b': 2, 'c': None}}, {'pin-priority': ['c', 'b', 'a'], 'selection-priority': ['a', 'c', 'b'], 'unknown-last': ['b', 'a', 'c'], 'descending-count': ['b', 'a', 'c'], 'stable-count-ties': ['b', 'a', 'c'], 'pin-visible-only': []}), ({'options': ['c', 'b', 'a'], 'pinned': [], 'selected': ['b', 'c'], 'counts': {'a': 0, 'b': None, 'c': 3}}, {'pin-priority': ['c', 'b', 'a'], 'selection-priority': ['c', 'b', 'a'], 'unknown-last': ['c', 'a', 'b'], 'descending-count': ['c', 'a', 'b'], 'stable-count-ties': ['c', 'a', 'b'], 'pin-visible-only': []}), ({'options': ['c', 'b', 'a'], 'pinned': [], 'selected': ['b', 'c'], 'counts': {'a': None, 'b': 0, 'c': 0}}, {'pin-priority': ['c', 'b', 'a'], 'selection-priority': ['c', 'b', 'a'], 'unknown-last': ['c', 'b', 'a'], 'descending-count': ['c', 'b', 'a'], 'stable-count-ties': ['c', 'b', 'a'], 'pin-visible-only': []}), ({'options': ['c', 'b', 'a'], 'pinned': ['a', 'z', 'b'], 'selected': ['a'], 'counts': {'a': 2, 'b': 2, 'c': None}}, {'pin-priority': ['b', 'a', 'c'], 'selection-priority': ['a', 'c', 'b'], 'unknown-last': ['b', 'a', 'c'], 'descending-count': ['b', 'a', 'c'], 'stable-count-ties': ['b', 'a', 'c'], 'pin-visible-only': ['a', 'b']}), ({'options': ['c', 'b', 'a'], 'pinned': ['a', 'z', 'b'], 'selected': ['b', 'c'], 'counts': {'a': 0, 'b': None, 'c': 3}}, {'pin-priority': ['b', 'a', 'c'], 'selection-priority': ['c', 'b', 'a'], 'unknown-last': ['c', 'a', 'b'], 'descending-count': ['c', 'a', 'b'], 'stable-count-ties': ['c', 'a', 'b'], 'pin-visible-only': ['a', 'b']}), ({'options': ['c', 'b', 'a'], 'pinned': ['a', 'z', 'b'], 'selected': ['b', 'c'], 'counts': {'a': None, 'b': 0, 'c': 0}}, {'pin-priority': ['b', 'a', 'c'], 'selection-priority': ['c', 'b', 'a'], 'unknown-last': ['c', 'b', 'a'], 'descending-count': ['c', 'b', 'a'], 'stable-count-ties': ['c', 'b', 'a'], 'pin-visible-only': ['a', 'b']}), ({'options': ['b', 'a', 'c'], 'pinned': [], 'selected': ['a'], 'counts': {'a': 2, 'b': 2, 'c': None}}, {'pin-priority': ['b', 'a', 'c'], 'selection-priority': ['a', 'b', 'c'], 'unknown-last': ['b', 'a', 'c'], 'descending-count': ['b', 'a', 'c'], 'stable-count-ties': ['b', 'a', 'c'], 'pin-visible-only': []})]}
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 | {'descending-count': ['c', 'a', 'b'], 'pin-priority': ['b', 'a', 'c'], 'pin-visible-only': ['b', 'a'], 'selection-priority': ['a', 'b', 'c'], 'stable-count-ties': ['c', 'a', 'b'], 'unknown-last': ['a', 'c', 'b']} | {'descending-count': ['c', 'a', 'b'], 'pin-priority': ['b', 'a', 'c'], 'pin-visible-only': ['a', 'b'], 'selection-priority': ['a', 'b', 'c'], 'stable-count-ties': ['c', 'a', 'b'], 'unknown-last': ['a', 'c', 'b']} | Failed |
| contract fixture 1 | {'descending-count': ['c', 'a', 'b'], 'pin-priority': ['b', 'a', 'c'], 'pin-visible-only': ['b', 'a'], 'selection-priority': ['b', 'c', 'a'], 'stable-count-ties': ['c', 'a', 'b'], 'unknown-last': ['a', 'c', 'b']} | {'descending-count': ['c', 'a', 'b'], 'pin-priority': ['b', 'a', 'c'], 'pin-visible-only': ['a', 'b'], 'selection-priority': ['b', 'c', 'a'], 'stable-count-ties': ['c', 'a', 'b'], 'unknown-last': ['a', 'c', 'b']} | Failed |
| contract fixture 2 | {'descending-count': ['b', 'a', 'c'], 'pin-priority': ['b', 'a', 'c'], 'pin-visible-only': ['b', 'a'], 'selection-priority': ['a', 'b', 'c'], 'stable-count-ties': ['b', 'a', 'c'], 'unknown-last': ['b', 'a', 'c']} | {'descending-count': ['b', 'a', 'c'], 'pin-priority': ['b', 'a', 'c'], 'pin-visible-only': ['a', 'b'], 'selection-priority': ['a', 'b', 'c'], 'stable-count-ties': ['b', 'a', 'c'], 'unknown-last': ['b', 'a', 'c']} | Failed |
| contract fixture 3 | {'descending-count': ['b', 'c', 'a'], 'pin-priority': ['b', 'a', 'c'], 'pin-visible-only': ['b', 'a'], 'selection-priority': ['b', 'c', 'a'], 'stable-count-ties': ['b', 'c', 'a'], 'unknown-last': ['b', 'c', 'a']} | {'descending-count': ['b', 'c', 'a'], 'pin-priority': ['b', 'a', 'c'], 'pin-visible-only': ['a', 'b'], 'selection-priority': ['b', 'c', 'a'], 'stable-count-ties': ['b', 'c', 'a'], 'unknown-last': ['b', 'c', 'a']} | Failed |
| contract fixture 4 | {'descending-count': ['b', 'a', 'c'], 'pin-priority': ['c', 'b', 'a'], 'pin-visible-only': [], 'selection-priority': ['a', 'c', 'b'], 'stable-count-ties': ['b', 'a', 'c'], 'unknown-last': ['b', 'a', 'c']} | {'descending-count': ['b', 'a', 'c'], 'pin-priority': ['c', 'b', 'a'], 'pin-visible-only': [], 'selection-priority': ['a', 'c', 'b'], 'stable-count-ties': ['b', 'a', 'c'], 'unknown-last': ['b', 'a', 'c']} | Passed |
| contract fixture 5 | {'descending-count': ['c', 'a', 'b'], 'pin-priority': ['c', 'b', 'a'], 'pin-visible-only': [], 'selection-priority': ['c', 'b', 'a'], 'stable-count-ties': ['c', 'a', 'b'], 'unknown-last': ['c', 'a', 'b']} | {'descending-count': ['c', 'a', 'b'], 'pin-priority': ['c', 'b', 'a'], 'pin-visible-only': [], 'selection-priority': ['c', 'b', 'a'], 'stable-count-ties': ['c', 'a', 'b'], 'unknown-last': ['c', 'a', 'b']} | Passed |
| contract fixture 6 | {'descending-count': ['c', 'b', 'a'], 'pin-priority': ['c', 'b', 'a'], 'pin-visible-only': [], 'selection-priority': ['c', 'b', 'a'], 'stable-count-ties': ['c', 'b', 'a'], 'unknown-last': ['c', 'b', 'a']} | {'descending-count': ['c', 'b', 'a'], 'pin-priority': ['c', 'b', 'a'], 'pin-visible-only': [], 'selection-priority': ['c', 'b', 'a'], 'stable-count-ties': ['c', 'b', 'a'], 'unknown-last': ['c', 'b', 'a']} | Passed |
| contract fixture 7 | {'descending-count': ['b', 'a', 'c'], 'pin-priority': ['b', 'a', 'c'], 'pin-visible-only': ['b', 'a'], 'selection-priority': ['a', 'c', 'b'], 'stable-count-ties': ['b', 'a', 'c'], 'unknown-last': ['b', 'a', 'c']} | {'descending-count': ['b', 'a', 'c'], 'pin-priority': ['b', 'a', 'c'], 'pin-visible-only': ['a', 'b'], 'selection-priority': ['a', 'c', 'b'], 'stable-count-ties': ['b', 'a', 'c'], 'unknown-last': ['b', 'a', 'c']} | Failed |
| contract fixture 8 | {'descending-count': ['c', 'a', 'b'], 'pin-priority': ['b', 'a', 'c'], 'pin-visible-only': ['b', 'a'], 'selection-priority': ['c', 'b', 'a'], 'stable-count-ties': ['c', 'a', 'b'], 'unknown-last': ['c', 'a', 'b']} | {'descending-count': ['c', 'a', 'b'], 'pin-priority': ['b', 'a', 'c'], 'pin-visible-only': ['a', 'b'], 'selection-priority': ['c', 'b', 'a'], 'stable-count-ties': ['c', 'a', 'b'], 'unknown-last': ['c', 'a', 'b']} | Failed |
| contract fixture 9 | {'descending-count': ['c', 'b', 'a'], 'pin-priority': ['b', 'a', 'c'], 'pin-visible-only': ['b', 'a'], 'selection-priority': ['c', 'b', 'a'], 'stable-count-ties': ['c', 'b', 'a'], 'unknown-last': ['c', 'b', 'a']} | {'descending-count': ['c', 'b', 'a'], 'pin-priority': ['b', 'a', 'c'], 'pin-visible-only': ['a', 'b'], 'selection-priority': ['c', 'b', 'a'], 'stable-count-ties': ['c', 'b', 'a'], 'unknown-last': ['c', 'b', 'a']} | Failed |
SHA-256 / 1bfaf65d70fea2ce91ffc3acce2085e7eb39fa81d3b6db3461db14fec57cdf21
3 / The verified repair
Exit 0"""Failure Map reference implementation. Python standard library only."""
import json
N = 1
observations = []
def solve(d):
return {'pin-priority':([x for x in d['options'] if x in d['pinned']]+[x for x in d['options'] if x not in d['pinned']]), 'selection-priority':([x for x in d['options'] if x in d['selected']]+[x for x in d['options'] if x not in d['selected']]), 'unknown-last':(sorted(d['options'],key=lambda x:d['counts'][x] is None)), 'descending-count':(sorted(d['options'],key=lambda x:-(d['counts'][x] if d['counts'][x] is not None else -1))), 'stable-count-ties':(sorted(d['options'],key=lambda x:-(d['counts'][x] if d['counts'][x] is not None else -1))), 'pin-visible-only':([x for x in d['pinned'] if x in d['options']])}
def check(label, actual, expected):
observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
fixtures = {1: [({'options': ['b', 'a', 'c'], 'pinned': ['a', 'z', 'b'], 'selected': ['a'], 'counts': {'a': 0, 'b': None, 'c': 3}}, {'pin-priority': ['b', 'a', 'c'], 'selection-priority': ['a', 'b', 'c'], 'unknown-last': ['a', 'c', 'b'], 'descending-count': ['c', 'a', 'b'], 'stable-count-ties': ['c', 'a', 'b'], 'pin-visible-only': ['a', 'b']}), ({'options': ['b', 'a', 'c'], 'pinned': ['a', 'z', 'b'], 'selected': ['b', 'c'], 'counts': {'a': 0, 'b': None, 'c': 3}}, {'pin-priority': ['b', 'a', 'c'], 'selection-priority': ['b', 'c', 'a'], 'unknown-last': ['a', 'c', 'b'], 'descending-count': ['c', 'a', 'b'], 'stable-count-ties': ['c', 'a', 'b'], 'pin-visible-only': ['a', 'b']}), ({'options': ['b', 'a', 'c'], 'pinned': ['a', 'z', 'b'], 'selected': ['a'], 'counts': {'a': 2, 'b': 2, 'c': None}}, {'pin-priority': ['b', 'a', 'c'], 'selection-priority': ['a', 'b', 'c'], 'unknown-last': ['b', 'a', 'c'], 'descending-count': ['b', 'a', 'c'], 'stable-count-ties': ['b', 'a', 'c'], 'pin-visible-only': ['a', 'b']}), ({'options': ['b', 'a', 'c'], 'pinned': ['a', 'z', 'b'], 'selected': ['b', 'c'], 'counts': {'a': None, 'b': 0, 'c': 0}}, {'pin-priority': ['b', 'a', 'c'], 'selection-priority': ['b', 'c', 'a'], 'unknown-last': ['b', 'c', 'a'], 'descending-count': ['b', 'c', 'a'], 'stable-count-ties': ['b', 'c', 'a'], 'pin-visible-only': ['a', 'b']}), ({'options': ['c', 'b', 'a'], 'pinned': [], 'selected': ['a'], 'counts': {'a': 2, 'b': 2, 'c': None}}, {'pin-priority': ['c', 'b', 'a'], 'selection-priority': ['a', 'c', 'b'], 'unknown-last': ['b', 'a', 'c'], 'descending-count': ['b', 'a', 'c'], 'stable-count-ties': ['b', 'a', 'c'], 'pin-visible-only': []}), ({'options': ['c', 'b', 'a'], 'pinned': [], 'selected': ['b', 'c'], 'counts': {'a': 0, 'b': None, 'c': 3}}, {'pin-priority': ['c', 'b', 'a'], 'selection-priority': ['c', 'b', 'a'], 'unknown-last': ['c', 'a', 'b'], 'descending-count': ['c', 'a', 'b'], 'stable-count-ties': ['c', 'a', 'b'], 'pin-visible-only': []}), ({'options': ['c', 'b', 'a'], 'pinned': [], 'selected': ['b', 'c'], 'counts': {'a': None, 'b': 0, 'c': 0}}, {'pin-priority': ['c', 'b', 'a'], 'selection-priority': ['c', 'b', 'a'], 'unknown-last': ['c', 'b', 'a'], 'descending-count': ['c', 'b', 'a'], 'stable-count-ties': ['c', 'b', 'a'], 'pin-visible-only': []}), ({'options': ['c', 'b', 'a'], 'pinned': ['a', 'z', 'b'], 'selected': ['a'], 'counts': {'a': 2, 'b': 2, 'c': None}}, {'pin-priority': ['b', 'a', 'c'], 'selection-priority': ['a', 'c', 'b'], 'unknown-last': ['b', 'a', 'c'], 'descending-count': ['b', 'a', 'c'], 'stable-count-ties': ['b', 'a', 'c'], 'pin-visible-only': ['a', 'b']}), ({'options': ['c', 'b', 'a'], 'pinned': ['a', 'z', 'b'], 'selected': ['b', 'c'], 'counts': {'a': 0, 'b': None, 'c': 3}}, {'pin-priority': ['b', 'a', 'c'], 'selection-priority': ['c', 'b', 'a'], 'unknown-last': ['c', 'a', 'b'], 'descending-count': ['c', 'a', 'b'], 'stable-count-ties': ['c', 'a', 'b'], 'pin-visible-only': ['a', 'b']}), ({'options': ['c', 'b', 'a'], 'pinned': ['a', 'z', 'b'], 'selected': ['b', 'c'], 'counts': {'a': None, 'b': 0, 'c': 0}}, {'pin-priority': ['b', 'a', 'c'], 'selection-priority': ['c', 'b', 'a'], 'unknown-last': ['c', 'b', 'a'], 'descending-count': ['c', 'b', 'a'], 'stable-count-ties': ['c', 'b', 'a'], 'pin-visible-only': ['a', 'b']})], 2: [({'options': ['b', 'a', 'c'], 'pinned': ['a', 'z', 'b'], 'selected': ['a'], 'counts': {'a': 2, 'b': 2, 'c': None}}, {'pin-priority': ['b', 'a', 'c'], 'selection-priority': ['a', 'b', 'c'], 'unknown-last': ['b', 'a', 'c'], 'descending-count': ['b', 'a', 'c'], 'stable-count-ties': ['b', 'a', 'c'], 'pin-visible-only': ['a', 'b']}), ({'options': ['c', 'b', 'a'], 'pinned': ['a', 'z', 'b'], 'selected': ['a'], 'counts': {'a': 0, 'b': None, 'c': 3}}, {'pin-priority': ['b', 'a', 'c'], 'selection-priority': ['a', 'c', 'b'], 'unknown-last': ['c', 'a', 'b'], 'descending-count': ['c', 'a', 'b'], 'stable-count-ties': ['c', 'a', 'b'], 'pin-visible-only': ['a', 'b']}), ({'options': ['c', 'b', 'a'], 'pinned': [], 'selected': ['a'], 'counts': {'a': None, 'b': 0, 'c': 0}}, {'pin-priority': ['c', 'b', 'a'], 'selection-priority': ['a', 'c', 'b'], 'unknown-last': ['c', 'b', 'a'], 'descending-count': ['c', 'b', 'a'], 'stable-count-ties': ['c', 'b', 'a'], 'pin-visible-only': []}), ({'options': ['c', 'b', 'a'], 'pinned': [], 'selected': ['b', 'c'], 'counts': {'a': 2, 'b': 2, 'c': None}}, {'pin-priority': ['c', 'b', 'a'], 'selection-priority': ['c', 'b', 'a'], 'unknown-last': ['b', 'a', 'c'], 'descending-count': ['b', 'a', 'c'], 'stable-count-ties': ['b', 'a', 'c'], 'pin-visible-only': []}), ({'options': ['c', 'b', 'a'], 'pinned': ['a', 'z', 'b'], 'selected': ['a'], 'counts': {'a': None, 'b': 0, 'c': 0}}, {'pin-priority': ['b', 'a', 'c'], 'selection-priority': ['a', 'c', 'b'], 'unknown-last': ['c', 'b', 'a'], 'descending-count': ['c', 'b', 'a'], 'stable-count-ties': ['c', 'b', 'a'], 'pin-visible-only': ['a', 'b']}), ({'options': ['c', 'b', 'a'], 'pinned': ['a', 'z', 'b'], 'selected': ['b', 'c'], 'counts': {'a': 2, 'b': 2, 'c': None}}, {'pin-priority': ['b', 'a', 'c'], 'selection-priority': ['c', 'b', 'a'], 'unknown-last': ['b', 'a', 'c'], 'descending-count': ['b', 'a', 'c'], 'stable-count-ties': ['b', 'a', 'c'], 'pin-visible-only': ['a', 'b']}), ({'options': ['b', 'a', 'c'], 'pinned': [], 'selected': ['a'], 'counts': {'a': 0, 'b': None, 'c': 3}}, {'pin-priority': ['b', 'a', 'c'], 'selection-priority': ['a', 'b', 'c'], 'unknown-last': ['a', 'c', 'b'], 'descending-count': ['c', 'a', 'b'], 'stable-count-ties': ['c', 'a', 'b'], 'pin-visible-only': []}), ({'options': ['b', 'a', 'c'], 'pinned': [], 'selected': ['a'], 'counts': {'a': None, 'b': 0, 'c': 0}}, {'pin-priority': ['b', 'a', 'c'], 'selection-priority': ['a', 'b', 'c'], 'unknown-last': ['b', 'c', 'a'], 'descending-count': ['b', 'c', 'a'], 'stable-count-ties': ['b', 'c', 'a'], 'pin-visible-only': []}), ({'options': ['b', 'a', 'c'], 'pinned': [], 'selected': ['b', 'c'], 'counts': {'a': 2, 'b': 2, 'c': None}}, {'pin-priority': ['b', 'a', 'c'], 'selection-priority': ['b', 'c', 'a'], 'unknown-last': ['b', 'a', 'c'], 'descending-count': ['b', 'a', 'c'], 'stable-count-ties': ['b', 'a', 'c'], 'pin-visible-only': []}), ({'options': ['b', 'a', 'c'], 'pinned': ['a', 'z', 'b'], 'selected': ['a'], 'counts': {'a': 0, 'b': None, 'c': 3}}, {'pin-priority': ['b', 'a', 'c'], 'selection-priority': ['a', 'b', 'c'], 'unknown-last': ['a', 'c', 'b'], 'descending-count': ['c', 'a', 'b'], 'stable-count-ties': ['c', 'a', 'b'], 'pin-visible-only': ['a', 'b']})], 3: [({'options': ['b', 'a', 'c'], 'pinned': ['a', 'z', 'b'], 'selected': ['a'], 'counts': {'a': None, 'b': 0, 'c': 0}}, {'pin-priority': ['b', 'a', 'c'], 'selection-priority': ['a', 'b', 'c'], 'unknown-last': ['b', 'c', 'a'], 'descending-count': ['b', 'c', 'a'], 'stable-count-ties': ['b', 'c', 'a'], 'pin-visible-only': ['a', 'b']}), ({'options': ['c', 'b', 'a'], 'pinned': ['a', 'z', 'b'], 'selected': ['b', 'c'], 'counts': {'a': 0, 'b': None, 'c': 3}}, {'pin-priority': ['b', 'a', 'c'], 'selection-priority': ['c', 'b', 'a'], 'unknown-last': ['c', 'a', 'b'], 'descending-count': ['c', 'a', 'b'], 'stable-count-ties': ['c', 'a', 'b'], 'pin-visible-only': ['a', 'b']}), ({'options': ['c', 'b', 'a'], 'pinned': ['a', 'z', 'b'], 'selected': ['b', 'c'], 'counts': {'a': None, 'b': 0, 'c': 0}}, {'pin-priority': ['b', 'a', 'c'], 'selection-priority': ['c', 'b', 'a'], 'unknown-last': ['c', 'b', 'a'], 'descending-count': ['c', 'b', 'a'], 'stable-count-ties': ['c', 'b', 'a'], 'pin-visible-only': ['a', 'b']}), ({'options': ['b', 'a', 'c'], 'pinned': [], 'selected': ['a'], 'counts': {'a': 2, 'b': 2, 'c': None}}, {'pin-priority': ['b', 'a', 'c'], 'selection-priority': ['a', 'b', 'c'], 'unknown-last': ['b', 'a', 'c'], 'descending-count': ['b', 'a', 'c'], 'stable-count-ties': ['b', 'a', 'c'], 'pin-visible-only': []}), ({'options': ['b', 'a', 'c'], 'pinned': [], 'selected': ['b', 'c'], 'counts': {'a': 0, 'b': None, 'c': 3}}, {'pin-priority': ['b', 'a', 'c'], 'selection-priority': ['b', 'c', 'a'], 'unknown-last': ['a', 'c', 'b'], 'descending-count': ['c', 'a', 'b'], 'stable-count-ties': ['c', 'a', 'b'], 'pin-visible-only': []}), ({'options': ['b', 'a', 'c'], 'pinned': [], 'selected': ['b', 'c'], 'counts': {'a': None, 'b': 0, 'c': 0}}, {'pin-priority': ['b', 'a', 'c'], 'selection-priority': ['b', 'c', 'a'], 'unknown-last': ['b', 'c', 'a'], 'descending-count': ['b', 'c', 'a'], 'stable-count-ties': ['b', 'c', 'a'], 'pin-visible-only': []}), ({'options': ['b', 'a', 'c'], 'pinned': ['a', 'z', 'b'], 'selected': ['a'], 'counts': {'a': 2, 'b': 2, 'c': None}}, {'pin-priority': ['b', 'a', 'c'], 'selection-priority': ['a', 'b', 'c'], 'unknown-last': ['b', 'a', 'c'], 'descending-count': ['b', 'a', 'c'], 'stable-count-ties': ['b', 'a', 'c'], 'pin-visible-only': ['a', 'b']}), ({'options': ['b', 'a', 'c'], 'pinned': ['a', 'z', 'b'], 'selected': ['b', 'c'], 'counts': {'a': 0, 'b': None, 'c': 3}}, {'pin-priority': ['b', 'a', 'c'], 'selection-priority': ['b', 'c', 'a'], 'unknown-last': ['a', 'c', 'b'], 'descending-count': ['c', 'a', 'b'], 'stable-count-ties': ['c', 'a', 'b'], 'pin-visible-only': ['a', 'b']}), ({'options': ['b', 'a', 'c'], 'pinned': ['a', 'z', 'b'], 'selected': ['b', 'c'], 'counts': {'a': None, 'b': 0, 'c': 0}}, {'pin-priority': ['b', 'a', 'c'], 'selection-priority': ['b', 'c', 'a'], 'unknown-last': ['b', 'c', 'a'], 'descending-count': ['b', 'c', 'a'], 'stable-count-ties': ['b', 'c', 'a'], 'pin-visible-only': ['a', 'b']}), ({'options': ['c', 'b', 'a'], 'pinned': [], 'selected': ['a'], 'counts': {'a': 2, 'b': 2, 'c': None}}, {'pin-priority': ['c', 'b', 'a'], 'selection-priority': ['a', 'c', 'b'], 'unknown-last': ['b', 'a', 'c'], 'descending-count': ['b', 'a', 'c'], 'stable-count-ties': ['b', 'a', 'c'], 'pin-visible-only': []})], 4: [({'options': ['b', 'a', 'c'], 'pinned': ['a', 'z', 'b'], 'selected': ['b', 'c'], 'counts': {'a': 0, 'b': None, 'c': 3}}, {'pin-priority': ['b', 'a', 'c'], 'selection-priority': ['b', 'c', 'a'], 'unknown-last': ['a', 'c', 'b'], 'descending-count': ['c', 'a', 'b'], 'stable-count-ties': ['c', 'a', 'b'], 'pin-visible-only': ['a', 'b']}), ({'options': ['b', 'a', 'c'], 'pinned': ['a', 'z', 'b'], 'selected': ['a'], 'counts': {'a': 0, 'b': None, 'c': 3}}, {'pin-priority': ['b', 'a', 'c'], 'selection-priority': ['a', 'b', 'c'], 'unknown-last': ['a', 'c', 'b'], 'descending-count': ['c', 'a', 'b'], 'stable-count-ties': ['c', 'a', 'b'], 'pin-visible-only': ['a', 'b']}), ({'options': ['b', 'a', 'c'], 'pinned': [], 'selected': ['b', 'c'], 'counts': {'a': 2, 'b': 2, 'c': None}}, {'pin-priority': ['b', 'a', 'c'], 'selection-priority': ['b', 'c', 'a'], 'unknown-last': ['b', 'a', 'c'], 'descending-count': ['b', 'a', 'c'], 'stable-count-ties': ['b', 'a', 'c'], 'pin-visible-only': []}), ({'options': ['b', 'a', 'c'], 'pinned': ['a', 'z', 'b'], 'selected': ['a'], 'counts': {'a': None, 'b': 0, 'c': 0}}, {'pin-priority': ['b', 'a', 'c'], 'selection-priority': ['a', 'b', 'c'], 'unknown-last': ['b', 'c', 'a'], 'descending-count': ['b', 'c', 'a'], 'stable-count-ties': ['b', 'c', 'a'], 'pin-visible-only': ['a', 'b']}), ({'options': ['b', 'a', 'c'], 'pinned': ['a', 'z', 'b'], 'selected': ['b', 'c'], 'counts': {'a': 2, 'b': 2, 'c': None}}, {'pin-priority': ['b', 'a', 'c'], 'selection-priority': ['b', 'c', 'a'], 'unknown-last': ['b', 'a', 'c'], 'descending-count': ['b', 'a', 'c'], 'stable-count-ties': ['b', 'a', 'c'], 'pin-visible-only': ['a', 'b']}), ({'options': ['c', 'b', 'a'], 'pinned': [], 'selected': ['a'], 'counts': {'a': 0, 'b': None, 'c': 3}}, {'pin-priority': ['c', 'b', 'a'], 'selection-priority': ['a', 'c', 'b'], 'unknown-last': ['c', 'a', 'b'], 'descending-count': ['c', 'a', 'b'], 'stable-count-ties': ['c', 'a', 'b'], 'pin-visible-only': []}), ({'options': ['c', 'b', 'a'], 'pinned': [], 'selected': ['a'], 'counts': {'a': None, 'b': 0, 'c': 0}}, {'pin-priority': ['c', 'b', 'a'], 'selection-priority': ['a', 'c', 'b'], 'unknown-last': ['c', 'b', 'a'], 'descending-count': ['c', 'b', 'a'], 'stable-count-ties': ['c', 'b', 'a'], 'pin-visible-only': []}), ({'options': ['c', 'b', 'a'], 'pinned': [], 'selected': ['b', 'c'], 'counts': {'a': 2, 'b': 2, 'c': None}}, {'pin-priority': ['c', 'b', 'a'], 'selection-priority': ['c', 'b', 'a'], 'unknown-last': ['b', 'a', 'c'], 'descending-count': ['b', 'a', 'c'], 'stable-count-ties': ['b', 'a', 'c'], 'pin-visible-only': []}), ({'options': ['c', 'b', 'a'], 'pinned': ['a', 'z', 'b'], 'selected': ['a'], 'counts': {'a': 0, 'b': None, 'c': 3}}, {'pin-priority': ['b', 'a', 'c'], 'selection-priority': ['a', 'c', 'b'], 'unknown-last': ['c', 'a', 'b'], 'descending-count': ['c', 'a', 'b'], 'stable-count-ties': ['c', 'a', 'b'], 'pin-visible-only': ['a', 'b']}), ({'options': ['c', 'b', 'a'], 'pinned': ['a', 'z', 'b'], 'selected': ['a'], 'counts': {'a': None, 'b': 0, 'c': 0}}, {'pin-priority': ['b', 'a', 'c'], 'selection-priority': ['a', 'c', 'b'], 'unknown-last': ['c', 'b', 'a'], 'descending-count': ['c', 'b', 'a'], 'stable-count-ties': ['c', 'b', 'a'], 'pin-visible-only': ['a', 'b']})], 5: [({'options': ['b', 'a', 'c'], 'pinned': ['a', 'z', 'b'], 'selected': ['b', 'c'], 'counts': {'a': 2, 'b': 2, 'c': None}}, {'pin-priority': ['b', 'a', 'c'], 'selection-priority': ['b', 'c', 'a'], 'unknown-last': ['b', 'a', 'c'], 'descending-count': ['b', 'a', 'c'], 'stable-count-ties': ['b', 'a', 'c'], 'pin-visible-only': ['a', 'b']}), ({'options': ['b', 'a', 'c'], 'pinned': ['a', 'z', 'b'], 'selected': ['b', 'c'], 'counts': {'a': 0, 'b': None, 'c': 3}}, {'pin-priority': ['b', 'a', 'c'], 'selection-priority': ['b', 'c', 'a'], 'unknown-last': ['a', 'c', 'b'], 'descending-count': ['c', 'a', 'b'], 'stable-count-ties': ['c', 'a', 'b'], 'pin-visible-only': ['a', 'b']}), ({'options': ['b', 'a', 'c'], 'pinned': ['a', 'z', 'b'], 'selected': ['b', 'c'], 'counts': {'a': None, 'b': 0, 'c': 0}}, {'pin-priority': ['b', 'a', 'c'], 'selection-priority': ['b', 'c', 'a'], 'unknown-last': ['b', 'c', 'a'], 'descending-count': ['b', 'c', 'a'], 'stable-count-ties': ['b', 'c', 'a'], 'pin-visible-only': ['a', 'b']}), ({'options': ['c', 'b', 'a'], 'pinned': [], 'selected': ['a'], 'counts': {'a': 2, 'b': 2, 'c': None}}, {'pin-priority': ['c', 'b', 'a'], 'selection-priority': ['a', 'c', 'b'], 'unknown-last': ['b', 'a', 'c'], 'descending-count': ['b', 'a', 'c'], 'stable-count-ties': ['b', 'a', 'c'], 'pin-visible-only': []}), ({'options': ['c', 'b', 'a'], 'pinned': [], 'selected': ['b', 'c'], 'counts': {'a': 0, 'b': None, 'c': 3}}, {'pin-priority': ['c', 'b', 'a'], 'selection-priority': ['c', 'b', 'a'], 'unknown-last': ['c', 'a', 'b'], 'descending-count': ['c', 'a', 'b'], 'stable-count-ties': ['c', 'a', 'b'], 'pin-visible-only': []}), ({'options': ['c', 'b', 'a'], 'pinned': [], 'selected': ['b', 'c'], 'counts': {'a': None, 'b': 0, 'c': 0}}, {'pin-priority': ['c', 'b', 'a'], 'selection-priority': ['c', 'b', 'a'], 'unknown-last': ['c', 'b', 'a'], 'descending-count': ['c', 'b', 'a'], 'stable-count-ties': ['c', 'b', 'a'], 'pin-visible-only': []}), ({'options': ['c', 'b', 'a'], 'pinned': ['a', 'z', 'b'], 'selected': ['a'], 'counts': {'a': 2, 'b': 2, 'c': None}}, {'pin-priority': ['b', 'a', 'c'], 'selection-priority': ['a', 'c', 'b'], 'unknown-last': ['b', 'a', 'c'], 'descending-count': ['b', 'a', 'c'], 'stable-count-ties': ['b', 'a', 'c'], 'pin-visible-only': ['a', 'b']}), ({'options': ['c', 'b', 'a'], 'pinned': ['a', 'z', 'b'], 'selected': ['b', 'c'], 'counts': {'a': 0, 'b': None, 'c': 3}}, {'pin-priority': ['b', 'a', 'c'], 'selection-priority': ['c', 'b', 'a'], 'unknown-last': ['c', 'a', 'b'], 'descending-count': ['c', 'a', 'b'], 'stable-count-ties': ['c', 'a', 'b'], 'pin-visible-only': ['a', 'b']}), ({'options': ['c', 'b', 'a'], 'pinned': ['a', 'z', 'b'], 'selected': ['b', 'c'], 'counts': {'a': None, 'b': 0, 'c': 0}}, {'pin-priority': ['b', 'a', 'c'], 'selection-priority': ['c', 'b', 'a'], 'unknown-last': ['c', 'b', 'a'], 'descending-count': ['c', 'b', 'a'], 'stable-count-ties': ['c', 'b', 'a'], 'pin-visible-only': ['a', 'b']}), ({'options': ['b', 'a', 'c'], 'pinned': [], 'selected': ['a'], 'counts': {'a': 2, 'b': 2, 'c': None}}, {'pin-priority': ['b', 'a', 'c'], 'selection-priority': ['a', 'b', 'c'], 'unknown-last': ['b', 'a', 'c'], 'descending-count': ['b', 'a', 'c'], 'stable-count-ties': ['b', 'a', 'c'], 'pin-visible-only': []})]}
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 | {'descending-count': ['c', 'a', 'b'], 'pin-priority': ['b', 'a', 'c'], 'pin-visible-only': ['a', 'b'], 'selection-priority': ['a', 'b', 'c'], 'stable-count-ties': ['c', 'a', 'b'], 'unknown-last': ['a', 'c', 'b']} | {'descending-count': ['c', 'a', 'b'], 'pin-priority': ['b', 'a', 'c'], 'pin-visible-only': ['a', 'b'], 'selection-priority': ['a', 'b', 'c'], 'stable-count-ties': ['c', 'a', 'b'], 'unknown-last': ['a', 'c', 'b']} | Passed |
| contract fixture 1 | {'descending-count': ['c', 'a', 'b'], 'pin-priority': ['b', 'a', 'c'], 'pin-visible-only': ['a', 'b'], 'selection-priority': ['b', 'c', 'a'], 'stable-count-ties': ['c', 'a', 'b'], 'unknown-last': ['a', 'c', 'b']} | {'descending-count': ['c', 'a', 'b'], 'pin-priority': ['b', 'a', 'c'], 'pin-visible-only': ['a', 'b'], 'selection-priority': ['b', 'c', 'a'], 'stable-count-ties': ['c', 'a', 'b'], 'unknown-last': ['a', 'c', 'b']} | Passed |
| contract fixture 2 | {'descending-count': ['b', 'a', 'c'], 'pin-priority': ['b', 'a', 'c'], 'pin-visible-only': ['a', 'b'], 'selection-priority': ['a', 'b', 'c'], 'stable-count-ties': ['b', 'a', 'c'], 'unknown-last': ['b', 'a', 'c']} | {'descending-count': ['b', 'a', 'c'], 'pin-priority': ['b', 'a', 'c'], 'pin-visible-only': ['a', 'b'], 'selection-priority': ['a', 'b', 'c'], 'stable-count-ties': ['b', 'a', 'c'], 'unknown-last': ['b', 'a', 'c']} | Passed |
| contract fixture 3 | {'descending-count': ['b', 'c', 'a'], 'pin-priority': ['b', 'a', 'c'], 'pin-visible-only': ['a', 'b'], 'selection-priority': ['b', 'c', 'a'], 'stable-count-ties': ['b', 'c', 'a'], 'unknown-last': ['b', 'c', 'a']} | {'descending-count': ['b', 'c', 'a'], 'pin-priority': ['b', 'a', 'c'], 'pin-visible-only': ['a', 'b'], 'selection-priority': ['b', 'c', 'a'], 'stable-count-ties': ['b', 'c', 'a'], 'unknown-last': ['b', 'c', 'a']} | Passed |
| contract fixture 4 | {'descending-count': ['b', 'a', 'c'], 'pin-priority': ['c', 'b', 'a'], 'pin-visible-only': [], 'selection-priority': ['a', 'c', 'b'], 'stable-count-ties': ['b', 'a', 'c'], 'unknown-last': ['b', 'a', 'c']} | {'descending-count': ['b', 'a', 'c'], 'pin-priority': ['c', 'b', 'a'], 'pin-visible-only': [], 'selection-priority': ['a', 'c', 'b'], 'stable-count-ties': ['b', 'a', 'c'], 'unknown-last': ['b', 'a', 'c']} | Passed |
| contract fixture 5 | {'descending-count': ['c', 'a', 'b'], 'pin-priority': ['c', 'b', 'a'], 'pin-visible-only': [], 'selection-priority': ['c', 'b', 'a'], 'stable-count-ties': ['c', 'a', 'b'], 'unknown-last': ['c', 'a', 'b']} | {'descending-count': ['c', 'a', 'b'], 'pin-priority': ['c', 'b', 'a'], 'pin-visible-only': [], 'selection-priority': ['c', 'b', 'a'], 'stable-count-ties': ['c', 'a', 'b'], 'unknown-last': ['c', 'a', 'b']} | Passed |
| contract fixture 6 | {'descending-count': ['c', 'b', 'a'], 'pin-priority': ['c', 'b', 'a'], 'pin-visible-only': [], 'selection-priority': ['c', 'b', 'a'], 'stable-count-ties': ['c', 'b', 'a'], 'unknown-last': ['c', 'b', 'a']} | {'descending-count': ['c', 'b', 'a'], 'pin-priority': ['c', 'b', 'a'], 'pin-visible-only': [], 'selection-priority': ['c', 'b', 'a'], 'stable-count-ties': ['c', 'b', 'a'], 'unknown-last': ['c', 'b', 'a']} | Passed |
| contract fixture 7 | {'descending-count': ['b', 'a', 'c'], 'pin-priority': ['b', 'a', 'c'], 'pin-visible-only': ['a', 'b'], 'selection-priority': ['a', 'c', 'b'], 'stable-count-ties': ['b', 'a', 'c'], 'unknown-last': ['b', 'a', 'c']} | {'descending-count': ['b', 'a', 'c'], 'pin-priority': ['b', 'a', 'c'], 'pin-visible-only': ['a', 'b'], 'selection-priority': ['a', 'c', 'b'], 'stable-count-ties': ['b', 'a', 'c'], 'unknown-last': ['b', 'a', 'c']} | Passed |
| contract fixture 8 | {'descending-count': ['c', 'a', 'b'], 'pin-priority': ['b', 'a', 'c'], 'pin-visible-only': ['a', 'b'], 'selection-priority': ['c', 'b', 'a'], 'stable-count-ties': ['c', 'a', 'b'], 'unknown-last': ['c', 'a', 'b']} | {'descending-count': ['c', 'a', 'b'], 'pin-priority': ['b', 'a', 'c'], 'pin-visible-only': ['a', 'b'], 'selection-priority': ['c', 'b', 'a'], 'stable-count-ties': ['c', 'a', 'b'], 'unknown-last': ['c', 'a', 'b']} | Passed |
| contract fixture 9 | {'descending-count': ['c', 'b', 'a'], 'pin-priority': ['b', 'a', 'c'], 'pin-visible-only': ['a', 'b'], 'selection-priority': ['c', 'b', 'a'], 'stable-count-ties': ['c', 'b', 'a'], 'unknown-last': ['c', 'b', 'a']} | {'descending-count': ['c', 'b', 'a'], 'pin-priority': ['b', 'a', 'c'], 'pin-visible-only': ['a', 'b'], 'selection-priority': ['c', 'b', 'a'], 'stable-count-ties': ['c', 'b', 'a'], 'unknown-last': ['c', 'b', 'a']} | Passed |
SHA-256 / cb35332bfb59a6ba2ae828d19739edb5bfe06d19c1f8618ce3a1c0247fac20fb
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:11.383345+00:00.
Case digest / 2b79c75f7428ca02ccad71cfac45a07ae509d9e18915fc92f7e252339a6c306a