{"abstract":"The vector claims dots that were never observed, so unseen additions are later discarded.","category":"CRDT convergence","checks":10,"contract":"A state is {\"dots\": [[element, replica, n]], \"vv\": {replica: n}, \"cloud\": [[replica, n]]}. A context covers (r, n) when n <= vv[r] or [r, n] is in the cloud. Join keeps dots present in both states plus dots of one state not covered by the other's context; contexts join by vector maximum and cloud union, then the cloud is compacted: an entry equal to vv[r]+1 advances vv[r], entries at or below vv[r] are pruned. Return elements, dots, vector and cloud, all sorted.","evaluation_group":"w2-crdt-convergence-delta-causal-context-join","failed_approach":"Requiring the replica to be present already stops compaction for replicas known only through the cloud.","family":"w2-crdt-convergence-delta-causal-context-join-compaction-contiguity","id":"FA-75001","implementations":{"attempt":{"sha256":"7537110b2b3ce7014fbe01eb0fe555decb2a60b2c0d1517aaa9ff3ab9fc3036f","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(a, b):\n    def covered(c, rep, n):\n        return n <= c['vv'].get(rep, 0) or [rep, n] in c['cloud']\n    da = {tuple(x) for x in a['dots']}\n    db = {tuple(x) for x in b['dots']}\n    dots = (da & db) | {x for x in da if not covered(b, x[1], x[2])} | {x for x in db if not covered(a, x[1], x[2])}\n    vv = dict(a['vv'])\n    for rep, n in b['vv'].items():\n        vv[rep] = max(vv.get(rep, 0), n)\n    cloud = {tuple(x) for x in a['cloud']} | {tuple(x) for x in b['cloud']}\n    changed = True\n    while changed:\n        changed = False\n        for rep, n in sorted(cloud):\n            if n == vv.get(rep, 0) + 1 and rep in vv:\n                vv[rep] = n\n                cloud.discard((rep, n))\n                changed = True\n            elif n <= vv.get(rep, 0):\n                cloud.discard((rep, n))\n                changed = True\n    return {'elements': sorted({x[0] for x in dots}), 'dots': sorted([list(x) for x in dots]), 'vv': sorted([k, v] for k, v in vv.items()), 'cloud': sorted([list(x) for x in cloud])}\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\ncases = {\n    1: [('dot unseen by the peer survives', [{'dots': [['x', 'a', 1]], 'vv': {'a': 1}, 'cloud': []}, {'dots': [], 'vv': {}, 'cloud': []}], {'elements': ['x'], 'dots': [['x', 'a', 1]], 'vv': [['a', 1]], 'cloud': []}), ('dot removed by the peer is dropped', [{'dots': [['x', 'a', 1], ['y', 'a', 2]], 'vv': {'a': 2}, 'cloud': []}, {'dots': [['y', 'a', 2]], 'vv': {'a': 2}, 'cloud': []}], {'elements': ['y'], 'dots': [['y', 'a', 2]], 'vv': [['a', 2]], 'cloud': []}), ('dot covered only by the peer cloud is dropped', [{'dots': [['x', 'a', 3], ['y', 'b', 1]], 'vv': {'a': 3, 'b': 1}, 'cloud': []}, {'dots': [['y', 'b', 1]], 'vv': {'a': 1, 'b': 1}, 'cloud': [['a', 3]]}], {'elements': ['y'], 'dots': [['y', 'b', 1]], 'vv': [['a', 3], ['b', 1]], 'cloud': []}), ('dot at the vector boundary is covered', [{'dots': [['x', 'a', 1]], 'vv': {'a': 1}, 'cloud': []}, {'dots': [], 'vv': {'a': 1}, 'cloud': []}], {'elements': [], 'dots': [], 'vv': [['a', 1]], 'cloud': []}), ('cloud compacts into the vector', [{'dots': [['z', 'c', 3]], 'vv': {'c': 1}, 'cloud': [['c', 3]]}, {'dots': [['w', 'c', 2]], 'vv': {'c': 1}, 'cloud': [['c', 2]]}], {'elements': ['w', 'z'], 'dots': [['w', 'c', 2], ['z', 'c', 3]], 'vv': [['c', 3]], 'cloud': []}), ('gaps stay in the cloud', [{'dots': [], 'vv': {'a': 1}, 'cloud': [['a', 3]]}, {'dots': [['q', 'a', 5]], 'vv': {}, 'cloud': [['a', 5]]}], {'elements': ['q'], 'dots': [['q', 'a', 5]], 'vv': [['a', 1]], 'cloud': [['a', 3], ['a', 5]]}), ('vectors join by maximum', [{'dots': [['p', 'b', 1]], 'vv': {'a': 2, 'b': 1}, 'cloud': []}, {'dots': [['r', 'a', 4]], 'vv': {'a': 4, 'b': 1}, 'cloud': []}], {'elements': ['r'], 'dots': [['r', 'a', 4]], 'vv': [['a', 4], ['b', 1]], 'cloud': []}), ('cloud entries for a fresh replica compact from zero', [{'dots': [['m', 'd', 1], ['m', 'd', 2]], 'vv': {}, 'cloud': [['d', 1], ['d', 2]]}, {'dots': [], 'vv': {}, 'cloud': []}], {'elements': ['m'], 'dots': [['m', 'd', 1], ['m', 'd', 2]], 'vv': [['d', 2]], 'cloud': []}), ('cloud entries already under the vector are pruned', [{'dots': [], 'vv': {'a': 3}, 'cloud': []}, {'dots': [], 'vv': {'a': 1}, 'cloud': [['a', 2], ['a', 4]]}], {'elements': [], 'dots': [], 'vv': [['a', 4]], 'cloud': []}), ('peer-only dot unseen locally survives', [{'dots': [], 'vv': {'b': 1}, 'cloud': []}, {'dots': [['k', 'a', 1], ['k', 'b', 1]], 'vv': {'a': 1, 'b': 1}, 'cloud': []}], {'elements': ['k'], 'dots': [['k', 'a', 1]], 'vv': [['a', 1], ['b', 1]], 'cloud': []})],\n    2: [('dot unseen by the peer survives', [{'dots': [['x', 'a', 1]], 'vv': {'a': 1}, 'cloud': []}, {'dots': [], 'vv': {}, 'cloud': []}], {'elements': ['x'], 'dots': [['x', 'a', 1]], 'vv': [['a', 1]], 'cloud': []}), ('dot removed by the peer is dropped', [{'dots': [['x', 'a', 1], ['y', 'a', 2]], 'vv': {'a': 2}, 'cloud': []}, {'dots': [['y', 'a', 2]], 'vv': {'a': 2}, 'cloud': []}], {'elements': ['y'], 'dots': [['y', 'a', 2]], 'vv': [['a', 2]], 'cloud': []}), ('dot covered only by the peer cloud is dropped', [{'dots': [['x', 'a', 3], ['y', 'b', 1]], 'vv': {'a': 3, 'b': 1}, 'cloud': []}, {'dots': [['y', 'b', 1]], 'vv': {'a': 1, 'b': 1}, 'cloud': [['a', 3]]}], {'elements': ['y'], 'dots': [['y', 'b', 1]], 'vv': [['a', 3], ['b', 1]], 'cloud': []}), ('dot at the vector boundary is covered', [{'dots': [['x', 'a', 2]], 'vv': {'a': 2}, 'cloud': []}, {'dots': [], 'vv': {'a': 2}, 'cloud': []}], {'elements': [], 'dots': [], 'vv': [['a', 2]], 'cloud': []}), ('cloud compacts into the vector', [{'dots': [['z', 'c', 4]], 'vv': {'c': 2}, 'cloud': [['c', 4]]}, {'dots': [['w', 'c', 3]], 'vv': {'c': 2}, 'cloud': [['c', 3]]}], {'elements': ['w', 'z'], 'dots': [['w', 'c', 3], ['z', 'c', 4]], 'vv': [['c', 4]], 'cloud': []}), ('gaps stay in the cloud', [{'dots': [], 'vv': {'a': 1}, 'cloud': [['a', 3]]}, {'dots': [['q', 'a', 6]], 'vv': {}, 'cloud': [['a', 6]]}], {'elements': ['q'], 'dots': [['q', 'a', 6]], 'vv': [['a', 1]], 'cloud': [['a', 3], ['a', 6]]}), ('vectors join by maximum', [{'dots': [['p', 'b', 2]], 'vv': {'a': 2, 'b': 2}, 'cloud': []}, {'dots': [['r', 'a', 4]], 'vv': {'a': 4, 'b': 1}, 'cloud': []}], {'elements': ['p', 'r'], 'dots': [['p', 'b', 2], ['r', 'a', 4]], 'vv': [['a', 4], ['b', 2]], 'cloud': []}), ('cloud entries for a fresh replica compact from zero', [{'dots': [['m', 'd', 1], ['m', 'd', 2]], 'vv': {}, 'cloud': [['d', 1], ['d', 2]]}, {'dots': [], 'vv': {}, 'cloud': []}], {'elements': ['m'], 'dots': [['m', 'd', 1], ['m', 'd', 2]], 'vv': [['d', 2]], 'cloud': []}), ('cloud entries already under the vector are pruned', [{'dots': [], 'vv': {'a': 4}, 'cloud': []}, {'dots': [], 'vv': {'a': 1}, 'cloud': [['a', 2], ['a', 5]]}], {'elements': [], 'dots': [], 'vv': [['a', 5]], 'cloud': []}), ('peer-only dot unseen locally survives', [{'dots': [], 'vv': {'b': 1}, 'cloud': []}, {'dots': [['k', 'a', 2], ['k', 'b', 1]], 'vv': {'a': 2, 'b': 1}, 'cloud': []}], {'elements': ['k'], 'dots': [['k', 'a', 2]], 'vv': [['a', 2], ['b', 1]], 'cloud': []})],\n    3: [('dot unseen by the peer survives', [{'dots': [['x', 'a', 1]], 'vv': {'a': 1}, 'cloud': []}, {'dots': [], 'vv': {}, 'cloud': []}], {'elements': ['x'], 'dots': [['x', 'a', 1]], 'vv': [['a', 1]], 'cloud': []}), ('dot removed by the peer is dropped', [{'dots': [['x', 'a', 1], ['y', 'a', 2]], 'vv': {'a': 2}, 'cloud': []}, {'dots': [['y', 'a', 2]], 'vv': {'a': 2}, 'cloud': []}], {'elements': ['y'], 'dots': [['y', 'a', 2]], 'vv': [['a', 2]], 'cloud': []}), ('dot covered only by the peer cloud is dropped', [{'dots': [['x', 'a', 3], ['y', 'b', 1]], 'vv': {'a': 3, 'b': 1}, 'cloud': []}, {'dots': [['y', 'b', 1]], 'vv': {'a': 1, 'b': 1}, 'cloud': [['a', 3]]}], {'elements': ['y'], 'dots': [['y', 'b', 1]], 'vv': [['a', 3], ['b', 1]], 'cloud': []}), ('dot at the vector boundary is covered', [{'dots': [['x', 'a', 3]], 'vv': {'a': 3}, 'cloud': []}, {'dots': [], 'vv': {'a': 3}, 'cloud': []}], {'elements': [], 'dots': [], 'vv': [['a', 3]], 'cloud': []}), ('cloud compacts into the vector', [{'dots': [['z', 'c', 5]], 'vv': {'c': 3}, 'cloud': [['c', 5]]}, {'dots': [['w', 'c', 4]], 'vv': {'c': 3}, 'cloud': [['c', 4]]}], {'elements': ['w', 'z'], 'dots': [['w', 'c', 4], ['z', 'c', 5]], 'vv': [['c', 5]], 'cloud': []}), ('gaps stay in the cloud', [{'dots': [], 'vv': {'a': 1}, 'cloud': [['a', 3]]}, {'dots': [['q', 'a', 7]], 'vv': {}, 'cloud': [['a', 7]]}], {'elements': ['q'], 'dots': [['q', 'a', 7]], 'vv': [['a', 1]], 'cloud': [['a', 3], ['a', 7]]}), ('vectors join by maximum', [{'dots': [['p', 'b', 3]], 'vv': {'a': 2, 'b': 3}, 'cloud': []}, {'dots': [['r', 'a', 4]], 'vv': {'a': 4, 'b': 1}, 'cloud': []}], {'elements': ['p', 'r'], 'dots': [['p', 'b', 3], ['r', 'a', 4]], 'vv': [['a', 4], ['b', 3]], 'cloud': []}), ('cloud entries for a fresh replica compact from zero', [{'dots': [['m', 'd', 1], ['m', 'd', 2]], 'vv': {}, 'cloud': [['d', 1], ['d', 2]]}, {'dots': [], 'vv': {}, 'cloud': []}], {'elements': ['m'], 'dots': [['m', 'd', 1], ['m', 'd', 2]], 'vv': [['d', 2]], 'cloud': []}), ('cloud entries already under the vector are pruned', [{'dots': [], 'vv': {'a': 5}, 'cloud': []}, {'dots': [], 'vv': {'a': 1}, 'cloud': [['a', 2], ['a', 6]]}], {'elements': [], 'dots': [], 'vv': [['a', 6]], 'cloud': []}), ('peer-only dot unseen locally survives', [{'dots': [], 'vv': {'b': 1}, 'cloud': []}, {'dots': [['k', 'a', 3], ['k', 'b', 1]], 'vv': {'a': 3, 'b': 1}, 'cloud': []}], {'elements': ['k'], 'dots': [['k', 'a', 3]], 'vv': [['a', 3], ['b', 1]], 'cloud': []})],\n    4: [('dot unseen by the peer survives', [{'dots': [['x', 'a', 1]], 'vv': {'a': 1}, 'cloud': []}, {'dots': [], 'vv': {}, 'cloud': []}], {'elements': ['x'], 'dots': [['x', 'a', 1]], 'vv': [['a', 1]], 'cloud': []}), ('dot removed by the peer is dropped', [{'dots': [['x', 'a', 1], ['y', 'a', 2]], 'vv': {'a': 2}, 'cloud': []}, {'dots': [['y', 'a', 2]], 'vv': {'a': 2}, 'cloud': []}], {'elements': ['y'], 'dots': [['y', 'a', 2]], 'vv': [['a', 2]], 'cloud': []}), ('dot covered only by the peer cloud is dropped', [{'dots': [['x', 'a', 3], ['y', 'b', 1]], 'vv': {'a': 3, 'b': 1}, 'cloud': []}, {'dots': [['y', 'b', 1]], 'vv': {'a': 1, 'b': 1}, 'cloud': [['a', 3]]}], {'elements': ['y'], 'dots': [['y', 'b', 1]], 'vv': [['a', 3], ['b', 1]], 'cloud': []}), ('dot at the vector boundary is covered', [{'dots': [['x', 'a', 4]], 'vv': {'a': 4}, 'cloud': []}, {'dots': [], 'vv': {'a': 4}, 'cloud': []}], {'elements': [], 'dots': [], 'vv': [['a', 4]], 'cloud': []}), ('cloud compacts into the vector', [{'dots': [['z', 'c', 6]], 'vv': {'c': 4}, 'cloud': [['c', 6]]}, {'dots': [['w', 'c', 5]], 'vv': {'c': 4}, 'cloud': [['c', 5]]}], {'elements': ['w', 'z'], 'dots': [['w', 'c', 5], ['z', 'c', 6]], 'vv': [['c', 6]], 'cloud': []}), ('gaps stay in the cloud', [{'dots': [], 'vv': {'a': 1}, 'cloud': [['a', 3]]}, {'dots': [['q', 'a', 8]], 'vv': {}, 'cloud': [['a', 8]]}], {'elements': ['q'], 'dots': [['q', 'a', 8]], 'vv': [['a', 1]], 'cloud': [['a', 3], ['a', 8]]}), ('vectors join by maximum', [{'dots': [['p', 'b', 4]], 'vv': {'a': 2, 'b': 4}, 'cloud': []}, {'dots': [['r', 'a', 4]], 'vv': {'a': 4, 'b': 1}, 'cloud': []}], {'elements': ['p', 'r'], 'dots': [['p', 'b', 4], ['r', 'a', 4]], 'vv': [['a', 4], ['b', 4]], 'cloud': []}), ('cloud entries for a fresh replica compact from zero', [{'dots': [['m', 'd', 1], ['m', 'd', 2]], 'vv': {}, 'cloud': [['d', 1], ['d', 2]]}, {'dots': [], 'vv': {}, 'cloud': []}], {'elements': ['m'], 'dots': [['m', 'd', 1], ['m', 'd', 2]], 'vv': [['d', 2]], 'cloud': []}), ('cloud entries already under the vector are pruned', [{'dots': [], 'vv': {'a': 6}, 'cloud': []}, {'dots': [], 'vv': {'a': 1}, 'cloud': [['a', 2], ['a', 7]]}], {'elements': [], 'dots': [], 'vv': [['a', 7]], 'cloud': []}), ('peer-only dot unseen locally survives', [{'dots': [], 'vv': {'b': 1}, 'cloud': []}, {'dots': [['k', 'a', 4], ['k', 'b', 1]], 'vv': {'a': 4, 'b': 1}, 'cloud': []}], {'elements': ['k'], 'dots': [['k', 'a', 4]], 'vv': [['a', 4], ['b', 1]], 'cloud': []})],\n    5: [('dot unseen by the peer survives', [{'dots': [['x', 'a', 1]], 'vv': {'a': 1}, 'cloud': []}, {'dots': [], 'vv': {}, 'cloud': []}], {'elements': ['x'], 'dots': [['x', 'a', 1]], 'vv': [['a', 1]], 'cloud': []}), ('dot removed by the peer is dropped', [{'dots': [['x', 'a', 1], ['y', 'a', 2]], 'vv': {'a': 2}, 'cloud': []}, {'dots': [['y', 'a', 2]], 'vv': {'a': 2}, 'cloud': []}], {'elements': ['y'], 'dots': [['y', 'a', 2]], 'vv': [['a', 2]], 'cloud': []}), ('dot covered only by the peer cloud is dropped', [{'dots': [['x', 'a', 3], ['y', 'b', 1]], 'vv': {'a': 3, 'b': 1}, 'cloud': []}, {'dots': [['y', 'b', 1]], 'vv': {'a': 1, 'b': 1}, 'cloud': [['a', 3]]}], {'elements': ['y'], 'dots': [['y', 'b', 1]], 'vv': [['a', 3], ['b', 1]], 'cloud': []}), ('dot at the vector boundary is covered', [{'dots': [['x', 'a', 5]], 'vv': {'a': 5}, 'cloud': []}, {'dots': [], 'vv': {'a': 5}, 'cloud': []}], {'elements': [], 'dots': [], 'vv': [['a', 5]], 'cloud': []}), ('cloud compacts into the vector', [{'dots': [['z', 'c', 7]], 'vv': {'c': 5}, 'cloud': [['c', 7]]}, {'dots': [['w', 'c', 6]], 'vv': {'c': 5}, 'cloud': [['c', 6]]}], {'elements': ['w', 'z'], 'dots': [['w', 'c', 6], ['z', 'c', 7]], 'vv': [['c', 7]], 'cloud': []}), ('gaps stay in the cloud', [{'dots': [], 'vv': {'a': 1}, 'cloud': [['a', 3]]}, {'dots': [['q', 'a', 9]], 'vv': {}, 'cloud': [['a', 9]]}], {'elements': ['q'], 'dots': [['q', 'a', 9]], 'vv': [['a', 1]], 'cloud': [['a', 3], ['a', 9]]}), ('vectors join by maximum', [{'dots': [['p', 'b', 5]], 'vv': {'a': 2, 'b': 5}, 'cloud': []}, {'dots': [['r', 'a', 4]], 'vv': {'a': 4, 'b': 1}, 'cloud': []}], {'elements': ['p', 'r'], 'dots': [['p', 'b', 5], ['r', 'a', 4]], 'vv': [['a', 4], ['b', 5]], 'cloud': []}), ('cloud entries for a fresh replica compact from zero', [{'dots': [['m', 'd', 1], ['m', 'd', 2]], 'vv': {}, 'cloud': [['d', 1], ['d', 2]]}, {'dots': [], 'vv': {}, 'cloud': []}], {'elements': ['m'], 'dots': [['m', 'd', 1], ['m', 'd', 2]], 'vv': [['d', 2]], 'cloud': []}), ('cloud entries already under the vector are pruned', [{'dots': [], 'vv': {'a': 7}, 'cloud': []}, {'dots': [], 'vv': {'a': 1}, 'cloud': [['a', 2], ['a', 8]]}], {'elements': [], 'dots': [], 'vv': [['a', 8]], 'cloud': []}), ('peer-only dot unseen locally survives', [{'dots': [], 'vv': {'b': 1}, 'cloud': []}, {'dots': [['k', 'a', 5], ['k', 'b', 1]], 'vv': {'a': 5, 'b': 1}, 'cloud': []}], {'elements': ['k'], 'dots': [['k', 'a', 5]], 'vv': [['a', 5], ['b', 1]], 'cloud': []})],\n}[N]\nfor label, args, expected in cases:\n    check(label, solve(*args), expected)\nprint(json.dumps({\"observations\": observations, \"passed\": all(x[\"passed\"] for x in observations)}, ensure_ascii=False))\nraise SystemExit(0 if all(x[\"passed\"] for x in observations) else 1)\n"},"broken":{"sha256":"b029754f91ad2e66f85ecaba70feab9cea36f2226853efed59e79c1598600e22","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(a, b):\n    def covered(c, rep, n):\n        return n <= c['vv'].get(rep, 0) or [rep, n] in c['cloud']\n    da = {tuple(x) for x in a['dots']}\n    db = {tuple(x) for x in b['dots']}\n    dots = (da & db) | {x for x in da if not covered(b, x[1], x[2])} | {x for x in db if not covered(a, x[1], x[2])}\n    vv = dict(a['vv'])\n    for rep, n in b['vv'].items():\n        vv[rep] = max(vv.get(rep, 0), n)\n    cloud = {tuple(x) for x in a['cloud']} | {tuple(x) for x in b['cloud']}\n    changed = True\n    while changed:\n        changed = False\n        for rep, n in sorted(cloud):\n            if n >= vv.get(rep, 0) + 1:\n                vv[rep] = n\n                cloud.discard((rep, n))\n                changed = True\n            elif n <= vv.get(rep, 0):\n                cloud.discard((rep, n))\n                changed = True\n    return {'elements': sorted({x[0] for x in dots}), 'dots': sorted([list(x) for x in dots]), 'vv': sorted([k, v] for k, v in vv.items()), 'cloud': sorted([list(x) for x in cloud])}\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\ncases = {\n    1: [('dot unseen by the peer survives', [{'dots': [['x', 'a', 1]], 'vv': {'a': 1}, 'cloud': []}, {'dots': [], 'vv': {}, 'cloud': []}], {'elements': ['x'], 'dots': [['x', 'a', 1]], 'vv': [['a', 1]], 'cloud': []}), ('dot removed by the peer is dropped', [{'dots': [['x', 'a', 1], ['y', 'a', 2]], 'vv': {'a': 2}, 'cloud': []}, {'dots': [['y', 'a', 2]], 'vv': {'a': 2}, 'cloud': []}], {'elements': ['y'], 'dots': [['y', 'a', 2]], 'vv': [['a', 2]], 'cloud': []}), ('dot covered only by the peer cloud is dropped', [{'dots': [['x', 'a', 3], ['y', 'b', 1]], 'vv': {'a': 3, 'b': 1}, 'cloud': []}, {'dots': [['y', 'b', 1]], 'vv': {'a': 1, 'b': 1}, 'cloud': [['a', 3]]}], {'elements': ['y'], 'dots': [['y', 'b', 1]], 'vv': [['a', 3], ['b', 1]], 'cloud': []}), ('dot at the vector boundary is covered', [{'dots': [['x', 'a', 1]], 'vv': {'a': 1}, 'cloud': []}, {'dots': [], 'vv': {'a': 1}, 'cloud': []}], {'elements': [], 'dots': [], 'vv': [['a', 1]], 'cloud': []}), ('cloud compacts into the vector', [{'dots': [['z', 'c', 3]], 'vv': {'c': 1}, 'cloud': [['c', 3]]}, {'dots': [['w', 'c', 2]], 'vv': {'c': 1}, 'cloud': [['c', 2]]}], {'elements': ['w', 'z'], 'dots': [['w', 'c', 2], ['z', 'c', 3]], 'vv': [['c', 3]], 'cloud': []}), ('gaps stay in the cloud', [{'dots': [], 'vv': {'a': 1}, 'cloud': [['a', 3]]}, {'dots': [['q', 'a', 5]], 'vv': {}, 'cloud': [['a', 5]]}], {'elements': ['q'], 'dots': [['q', 'a', 5]], 'vv': [['a', 1]], 'cloud': [['a', 3], ['a', 5]]}), ('vectors join by maximum', [{'dots': [['p', 'b', 1]], 'vv': {'a': 2, 'b': 1}, 'cloud': []}, {'dots': [['r', 'a', 4]], 'vv': {'a': 4, 'b': 1}, 'cloud': []}], {'elements': ['r'], 'dots': [['r', 'a', 4]], 'vv': [['a', 4], ['b', 1]], 'cloud': []}), ('cloud entries for a fresh replica compact from zero', [{'dots': [['m', 'd', 1], ['m', 'd', 2]], 'vv': {}, 'cloud': [['d', 1], ['d', 2]]}, {'dots': [], 'vv': {}, 'cloud': []}], {'elements': ['m'], 'dots': [['m', 'd', 1], ['m', 'd', 2]], 'vv': [['d', 2]], 'cloud': []}), ('cloud entries already under the vector are pruned', [{'dots': [], 'vv': {'a': 3}, 'cloud': []}, {'dots': [], 'vv': {'a': 1}, 'cloud': [['a', 2], ['a', 4]]}], {'elements': [], 'dots': [], 'vv': [['a', 4]], 'cloud': []}), ('peer-only dot unseen locally survives', [{'dots': [], 'vv': {'b': 1}, 'cloud': []}, {'dots': [['k', 'a', 1], ['k', 'b', 1]], 'vv': {'a': 1, 'b': 1}, 'cloud': []}], {'elements': ['k'], 'dots': [['k', 'a', 1]], 'vv': [['a', 1], ['b', 1]], 'cloud': []})],\n    2: [('dot unseen by the peer survives', [{'dots': [['x', 'a', 1]], 'vv': {'a': 1}, 'cloud': []}, {'dots': [], 'vv': {}, 'cloud': []}], {'elements': ['x'], 'dots': [['x', 'a', 1]], 'vv': [['a', 1]], 'cloud': []}), ('dot removed by the peer is dropped', [{'dots': [['x', 'a', 1], ['y', 'a', 2]], 'vv': {'a': 2}, 'cloud': []}, {'dots': [['y', 'a', 2]], 'vv': {'a': 2}, 'cloud': []}], {'elements': ['y'], 'dots': [['y', 'a', 2]], 'vv': [['a', 2]], 'cloud': []}), ('dot covered only by the peer cloud is dropped', [{'dots': [['x', 'a', 3], ['y', 'b', 1]], 'vv': {'a': 3, 'b': 1}, 'cloud': []}, {'dots': [['y', 'b', 1]], 'vv': {'a': 1, 'b': 1}, 'cloud': [['a', 3]]}], {'elements': ['y'], 'dots': [['y', 'b', 1]], 'vv': [['a', 3], ['b', 1]], 'cloud': []}), ('dot at the vector boundary is covered', [{'dots': [['x', 'a', 2]], 'vv': {'a': 2}, 'cloud': []}, {'dots': [], 'vv': {'a': 2}, 'cloud': []}], {'elements': [], 'dots': [], 'vv': [['a', 2]], 'cloud': []}), ('cloud compacts into the vector', [{'dots': [['z', 'c', 4]], 'vv': {'c': 2}, 'cloud': [['c', 4]]}, {'dots': [['w', 'c', 3]], 'vv': {'c': 2}, 'cloud': [['c', 3]]}], {'elements': ['w', 'z'], 'dots': [['w', 'c', 3], ['z', 'c', 4]], 'vv': [['c', 4]], 'cloud': []}), ('gaps stay in the cloud', [{'dots': [], 'vv': {'a': 1}, 'cloud': [['a', 3]]}, {'dots': [['q', 'a', 6]], 'vv': {}, 'cloud': [['a', 6]]}], {'elements': ['q'], 'dots': [['q', 'a', 6]], 'vv': [['a', 1]], 'cloud': [['a', 3], ['a', 6]]}), ('vectors join by maximum', [{'dots': [['p', 'b', 2]], 'vv': {'a': 2, 'b': 2}, 'cloud': []}, {'dots': [['r', 'a', 4]], 'vv': {'a': 4, 'b': 1}, 'cloud': []}], {'elements': ['p', 'r'], 'dots': [['p', 'b', 2], ['r', 'a', 4]], 'vv': [['a', 4], ['b', 2]], 'cloud': []}), ('cloud entries for a fresh replica compact from zero', [{'dots': [['m', 'd', 1], ['m', 'd', 2]], 'vv': {}, 'cloud': [['d', 1], ['d', 2]]}, {'dots': [], 'vv': {}, 'cloud': []}], {'elements': ['m'], 'dots': [['m', 'd', 1], ['m', 'd', 2]], 'vv': [['d', 2]], 'cloud': []}), ('cloud entries already under the vector are pruned', [{'dots': [], 'vv': {'a': 4}, 'cloud': []}, {'dots': [], 'vv': {'a': 1}, 'cloud': [['a', 2], ['a', 5]]}], {'elements': [], 'dots': [], 'vv': [['a', 5]], 'cloud': []}), ('peer-only dot unseen locally survives', [{'dots': [], 'vv': {'b': 1}, 'cloud': []}, {'dots': [['k', 'a', 2], ['k', 'b', 1]], 'vv': {'a': 2, 'b': 1}, 'cloud': []}], {'elements': ['k'], 'dots': [['k', 'a', 2]], 'vv': [['a', 2], ['b', 1]], 'cloud': []})],\n    3: [('dot unseen by the peer survives', [{'dots': [['x', 'a', 1]], 'vv': {'a': 1}, 'cloud': []}, {'dots': [], 'vv': {}, 'cloud': []}], {'elements': ['x'], 'dots': [['x', 'a', 1]], 'vv': [['a', 1]], 'cloud': []}), ('dot removed by the peer is dropped', [{'dots': [['x', 'a', 1], ['y', 'a', 2]], 'vv': {'a': 2}, 'cloud': []}, {'dots': [['y', 'a', 2]], 'vv': {'a': 2}, 'cloud': []}], {'elements': ['y'], 'dots': [['y', 'a', 2]], 'vv': [['a', 2]], 'cloud': []}), ('dot covered only by the peer cloud is dropped', [{'dots': [['x', 'a', 3], ['y', 'b', 1]], 'vv': {'a': 3, 'b': 1}, 'cloud': []}, {'dots': [['y', 'b', 1]], 'vv': {'a': 1, 'b': 1}, 'cloud': [['a', 3]]}], {'elements': ['y'], 'dots': [['y', 'b', 1]], 'vv': [['a', 3], ['b', 1]], 'cloud': []}), ('dot at the vector boundary is covered', [{'dots': [['x', 'a', 3]], 'vv': {'a': 3}, 'cloud': []}, {'dots': [], 'vv': {'a': 3}, 'cloud': []}], {'elements': [], 'dots': [], 'vv': [['a', 3]], 'cloud': []}), ('cloud compacts into the vector', [{'dots': [['z', 'c', 5]], 'vv': {'c': 3}, 'cloud': [['c', 5]]}, {'dots': [['w', 'c', 4]], 'vv': {'c': 3}, 'cloud': [['c', 4]]}], {'elements': ['w', 'z'], 'dots': [['w', 'c', 4], ['z', 'c', 5]], 'vv': [['c', 5]], 'cloud': []}), ('gaps stay in the cloud', [{'dots': [], 'vv': {'a': 1}, 'cloud': [['a', 3]]}, {'dots': [['q', 'a', 7]], 'vv': {}, 'cloud': [['a', 7]]}], {'elements': ['q'], 'dots': [['q', 'a', 7]], 'vv': [['a', 1]], 'cloud': [['a', 3], ['a', 7]]}), ('vectors join by maximum', [{'dots': [['p', 'b', 3]], 'vv': {'a': 2, 'b': 3}, 'cloud': []}, {'dots': [['r', 'a', 4]], 'vv': {'a': 4, 'b': 1}, 'cloud': []}], {'elements': ['p', 'r'], 'dots': [['p', 'b', 3], ['r', 'a', 4]], 'vv': [['a', 4], ['b', 3]], 'cloud': []}), ('cloud entries for a fresh replica compact from zero', [{'dots': [['m', 'd', 1], ['m', 'd', 2]], 'vv': {}, 'cloud': [['d', 1], ['d', 2]]}, {'dots': [], 'vv': {}, 'cloud': []}], {'elements': ['m'], 'dots': [['m', 'd', 1], ['m', 'd', 2]], 'vv': [['d', 2]], 'cloud': []}), ('cloud entries already under the vector are pruned', [{'dots': [], 'vv': {'a': 5}, 'cloud': []}, {'dots': [], 'vv': {'a': 1}, 'cloud': [['a', 2], ['a', 6]]}], {'elements': [], 'dots': [], 'vv': [['a', 6]], 'cloud': []}), ('peer-only dot unseen locally survives', [{'dots': [], 'vv': {'b': 1}, 'cloud': []}, {'dots': [['k', 'a', 3], ['k', 'b', 1]], 'vv': {'a': 3, 'b': 1}, 'cloud': []}], {'elements': ['k'], 'dots': [['k', 'a', 3]], 'vv': [['a', 3], ['b', 1]], 'cloud': []})],\n    4: [('dot unseen by the peer survives', [{'dots': [['x', 'a', 1]], 'vv': {'a': 1}, 'cloud': []}, {'dots': [], 'vv': {}, 'cloud': []}], {'elements': ['x'], 'dots': [['x', 'a', 1]], 'vv': [['a', 1]], 'cloud': []}), ('dot removed by the peer is dropped', [{'dots': [['x', 'a', 1], ['y', 'a', 2]], 'vv': {'a': 2}, 'cloud': []}, {'dots': [['y', 'a', 2]], 'vv': {'a': 2}, 'cloud': []}], {'elements': ['y'], 'dots': [['y', 'a', 2]], 'vv': [['a', 2]], 'cloud': []}), ('dot covered only by the peer cloud is dropped', [{'dots': [['x', 'a', 3], ['y', 'b', 1]], 'vv': {'a': 3, 'b': 1}, 'cloud': []}, {'dots': [['y', 'b', 1]], 'vv': {'a': 1, 'b': 1}, 'cloud': [['a', 3]]}], {'elements': ['y'], 'dots': [['y', 'b', 1]], 'vv': [['a', 3], ['b', 1]], 'cloud': []}), ('dot at the vector boundary is covered', [{'dots': [['x', 'a', 4]], 'vv': {'a': 4}, 'cloud': []}, {'dots': [], 'vv': {'a': 4}, 'cloud': []}], {'elements': [], 'dots': [], 'vv': [['a', 4]], 'cloud': []}), ('cloud compacts into the vector', [{'dots': [['z', 'c', 6]], 'vv': {'c': 4}, 'cloud': [['c', 6]]}, {'dots': [['w', 'c', 5]], 'vv': {'c': 4}, 'cloud': [['c', 5]]}], {'elements': ['w', 'z'], 'dots': [['w', 'c', 5], ['z', 'c', 6]], 'vv': [['c', 6]], 'cloud': []}), ('gaps stay in the cloud', [{'dots': [], 'vv': {'a': 1}, 'cloud': [['a', 3]]}, {'dots': [['q', 'a', 8]], 'vv': {}, 'cloud': [['a', 8]]}], {'elements': ['q'], 'dots': [['q', 'a', 8]], 'vv': [['a', 1]], 'cloud': [['a', 3], ['a', 8]]}), ('vectors join by maximum', [{'dots': [['p', 'b', 4]], 'vv': {'a': 2, 'b': 4}, 'cloud': []}, {'dots': [['r', 'a', 4]], 'vv': {'a': 4, 'b': 1}, 'cloud': []}], {'elements': ['p', 'r'], 'dots': [['p', 'b', 4], ['r', 'a', 4]], 'vv': [['a', 4], ['b', 4]], 'cloud': []}), ('cloud entries for a fresh replica compact from zero', [{'dots': [['m', 'd', 1], ['m', 'd', 2]], 'vv': {}, 'cloud': [['d', 1], ['d', 2]]}, {'dots': [], 'vv': {}, 'cloud': []}], {'elements': ['m'], 'dots': [['m', 'd', 1], ['m', 'd', 2]], 'vv': [['d', 2]], 'cloud': []}), ('cloud entries already under the vector are pruned', [{'dots': [], 'vv': {'a': 6}, 'cloud': []}, {'dots': [], 'vv': {'a': 1}, 'cloud': [['a', 2], ['a', 7]]}], {'elements': [], 'dots': [], 'vv': [['a', 7]], 'cloud': []}), ('peer-only dot unseen locally survives', [{'dots': [], 'vv': {'b': 1}, 'cloud': []}, {'dots': [['k', 'a', 4], ['k', 'b', 1]], 'vv': {'a': 4, 'b': 1}, 'cloud': []}], {'elements': ['k'], 'dots': [['k', 'a', 4]], 'vv': [['a', 4], ['b', 1]], 'cloud': []})],\n    5: [('dot unseen by the peer survives', [{'dots': [['x', 'a', 1]], 'vv': {'a': 1}, 'cloud': []}, {'dots': [], 'vv': {}, 'cloud': []}], {'elements': ['x'], 'dots': [['x', 'a', 1]], 'vv': [['a', 1]], 'cloud': []}), ('dot removed by the peer is dropped', [{'dots': [['x', 'a', 1], ['y', 'a', 2]], 'vv': {'a': 2}, 'cloud': []}, {'dots': [['y', 'a', 2]], 'vv': {'a': 2}, 'cloud': []}], {'elements': ['y'], 'dots': [['y', 'a', 2]], 'vv': [['a', 2]], 'cloud': []}), ('dot covered only by the peer cloud is dropped', [{'dots': [['x', 'a', 3], ['y', 'b', 1]], 'vv': {'a': 3, 'b': 1}, 'cloud': []}, {'dots': [['y', 'b', 1]], 'vv': {'a': 1, 'b': 1}, 'cloud': [['a', 3]]}], {'elements': ['y'], 'dots': [['y', 'b', 1]], 'vv': [['a', 3], ['b', 1]], 'cloud': []}), ('dot at the vector boundary is covered', [{'dots': [['x', 'a', 5]], 'vv': {'a': 5}, 'cloud': []}, {'dots': [], 'vv': {'a': 5}, 'cloud': []}], {'elements': [], 'dots': [], 'vv': [['a', 5]], 'cloud': []}), ('cloud compacts into the vector', [{'dots': [['z', 'c', 7]], 'vv': {'c': 5}, 'cloud': [['c', 7]]}, {'dots': [['w', 'c', 6]], 'vv': {'c': 5}, 'cloud': [['c', 6]]}], {'elements': ['w', 'z'], 'dots': [['w', 'c', 6], ['z', 'c', 7]], 'vv': [['c', 7]], 'cloud': []}), ('gaps stay in the cloud', [{'dots': [], 'vv': {'a': 1}, 'cloud': [['a', 3]]}, {'dots': [['q', 'a', 9]], 'vv': {}, 'cloud': [['a', 9]]}], {'elements': ['q'], 'dots': [['q', 'a', 9]], 'vv': [['a', 1]], 'cloud': [['a', 3], ['a', 9]]}), ('vectors join by maximum', [{'dots': [['p', 'b', 5]], 'vv': {'a': 2, 'b': 5}, 'cloud': []}, {'dots': [['r', 'a', 4]], 'vv': {'a': 4, 'b': 1}, 'cloud': []}], {'elements': ['p', 'r'], 'dots': [['p', 'b', 5], ['r', 'a', 4]], 'vv': [['a', 4], ['b', 5]], 'cloud': []}), ('cloud entries for a fresh replica compact from zero', [{'dots': [['m', 'd', 1], ['m', 'd', 2]], 'vv': {}, 'cloud': [['d', 1], ['d', 2]]}, {'dots': [], 'vv': {}, 'cloud': []}], {'elements': ['m'], 'dots': [['m', 'd', 1], ['m', 'd', 2]], 'vv': [['d', 2]], 'cloud': []}), ('cloud entries already under the vector are pruned', [{'dots': [], 'vv': {'a': 7}, 'cloud': []}, {'dots': [], 'vv': {'a': 1}, 'cloud': [['a', 2], ['a', 8]]}], {'elements': [], 'dots': [], 'vv': [['a', 8]], 'cloud': []}), ('peer-only dot unseen locally survives', [{'dots': [], 'vv': {'b': 1}, 'cloud': []}, {'dots': [['k', 'a', 5], ['k', 'b', 1]], 'vv': {'a': 5, 'b': 1}, 'cloud': []}], {'elements': ['k'], 'dots': [['k', 'a', 5]], 'vv': [['a', 5], ['b', 1]], 'cloud': []})],\n}[N]\nfor label, args, expected in cases:\n    check(label, solve(*args), expected)\nprint(json.dumps({\"observations\": observations, \"passed\": all(x[\"passed\"] for x in observations)}, ensure_ascii=False))\nraise SystemExit(0 if all(x[\"passed\"] for x in observations) else 1)\n"},"fixed":{"sha256":"131b85b5338e7bf0799694cc70f58c7453da629e11cfbed9157920d1c184e82a","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(a, b):\n    def covered(c, rep, n):\n        return n <= c['vv'].get(rep, 0) or [rep, n] in c['cloud']\n    da = {tuple(x) for x in a['dots']}\n    db = {tuple(x) for x in b['dots']}\n    dots = (da & db) | {x for x in da if not covered(b, x[1], x[2])} | {x for x in db if not covered(a, x[1], x[2])}\n    vv = dict(a['vv'])\n    for rep, n in b['vv'].items():\n        vv[rep] = max(vv.get(rep, 0), n)\n    cloud = {tuple(x) for x in a['cloud']} | {tuple(x) for x in b['cloud']}\n    changed = True\n    while changed:\n        changed = False\n        for rep, n in sorted(cloud):\n            if n == vv.get(rep, 0) + 1:\n                vv[rep] = n\n                cloud.discard((rep, n))\n                changed = True\n            elif n <= vv.get(rep, 0):\n                cloud.discard((rep, n))\n                changed = True\n    return {'elements': sorted({x[0] for x in dots}), 'dots': sorted([list(x) for x in dots]), 'vv': sorted([k, v] for k, v in vv.items()), 'cloud': sorted([list(x) for x in cloud])}\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\ncases = {\n    1: [('dot unseen by the peer survives', [{'dots': [['x', 'a', 1]], 'vv': {'a': 1}, 'cloud': []}, {'dots': [], 'vv': {}, 'cloud': []}], {'elements': ['x'], 'dots': [['x', 'a', 1]], 'vv': [['a', 1]], 'cloud': []}), ('dot removed by the peer is dropped', [{'dots': [['x', 'a', 1], ['y', 'a', 2]], 'vv': {'a': 2}, 'cloud': []}, {'dots': [['y', 'a', 2]], 'vv': {'a': 2}, 'cloud': []}], {'elements': ['y'], 'dots': [['y', 'a', 2]], 'vv': [['a', 2]], 'cloud': []}), ('dot covered only by the peer cloud is dropped', [{'dots': [['x', 'a', 3], ['y', 'b', 1]], 'vv': {'a': 3, 'b': 1}, 'cloud': []}, {'dots': [['y', 'b', 1]], 'vv': {'a': 1, 'b': 1}, 'cloud': [['a', 3]]}], {'elements': ['y'], 'dots': [['y', 'b', 1]], 'vv': [['a', 3], ['b', 1]], 'cloud': []}), ('dot at the vector boundary is covered', [{'dots': [['x', 'a', 1]], 'vv': {'a': 1}, 'cloud': []}, {'dots': [], 'vv': {'a': 1}, 'cloud': []}], {'elements': [], 'dots': [], 'vv': [['a', 1]], 'cloud': []}), ('cloud compacts into the vector', [{'dots': [['z', 'c', 3]], 'vv': {'c': 1}, 'cloud': [['c', 3]]}, {'dots': [['w', 'c', 2]], 'vv': {'c': 1}, 'cloud': [['c', 2]]}], {'elements': ['w', 'z'], 'dots': [['w', 'c', 2], ['z', 'c', 3]], 'vv': [['c', 3]], 'cloud': []}), ('gaps stay in the cloud', [{'dots': [], 'vv': {'a': 1}, 'cloud': [['a', 3]]}, {'dots': [['q', 'a', 5]], 'vv': {}, 'cloud': [['a', 5]]}], {'elements': ['q'], 'dots': [['q', 'a', 5]], 'vv': [['a', 1]], 'cloud': [['a', 3], ['a', 5]]}), ('vectors join by maximum', [{'dots': [['p', 'b', 1]], 'vv': {'a': 2, 'b': 1}, 'cloud': []}, {'dots': [['r', 'a', 4]], 'vv': {'a': 4, 'b': 1}, 'cloud': []}], {'elements': ['r'], 'dots': [['r', 'a', 4]], 'vv': [['a', 4], ['b', 1]], 'cloud': []}), ('cloud entries for a fresh replica compact from zero', [{'dots': [['m', 'd', 1], ['m', 'd', 2]], 'vv': {}, 'cloud': [['d', 1], ['d', 2]]}, {'dots': [], 'vv': {}, 'cloud': []}], {'elements': ['m'], 'dots': [['m', 'd', 1], ['m', 'd', 2]], 'vv': [['d', 2]], 'cloud': []}), ('cloud entries already under the vector are pruned', [{'dots': [], 'vv': {'a': 3}, 'cloud': []}, {'dots': [], 'vv': {'a': 1}, 'cloud': [['a', 2], ['a', 4]]}], {'elements': [], 'dots': [], 'vv': [['a', 4]], 'cloud': []}), ('peer-only dot unseen locally survives', [{'dots': [], 'vv': {'b': 1}, 'cloud': []}, {'dots': [['k', 'a', 1], ['k', 'b', 1]], 'vv': {'a': 1, 'b': 1}, 'cloud': []}], {'elements': ['k'], 'dots': [['k', 'a', 1]], 'vv': [['a', 1], ['b', 1]], 'cloud': []})],\n    2: [('dot unseen by the peer survives', [{'dots': [['x', 'a', 1]], 'vv': {'a': 1}, 'cloud': []}, {'dots': [], 'vv': {}, 'cloud': []}], {'elements': ['x'], 'dots': [['x', 'a', 1]], 'vv': [['a', 1]], 'cloud': []}), ('dot removed by the peer is dropped', [{'dots': [['x', 'a', 1], ['y', 'a', 2]], 'vv': {'a': 2}, 'cloud': []}, {'dots': [['y', 'a', 2]], 'vv': {'a': 2}, 'cloud': []}], {'elements': ['y'], 'dots': [['y', 'a', 2]], 'vv': [['a', 2]], 'cloud': []}), ('dot covered only by the peer cloud is dropped', [{'dots': [['x', 'a', 3], ['y', 'b', 1]], 'vv': {'a': 3, 'b': 1}, 'cloud': []}, {'dots': [['y', 'b', 1]], 'vv': {'a': 1, 'b': 1}, 'cloud': [['a', 3]]}], {'elements': ['y'], 'dots': [['y', 'b', 1]], 'vv': [['a', 3], ['b', 1]], 'cloud': []}), ('dot at the vector boundary is covered', [{'dots': [['x', 'a', 2]], 'vv': {'a': 2}, 'cloud': []}, {'dots': [], 'vv': {'a': 2}, 'cloud': []}], {'elements': [], 'dots': [], 'vv': [['a', 2]], 'cloud': []}), ('cloud compacts into the vector', [{'dots': [['z', 'c', 4]], 'vv': {'c': 2}, 'cloud': [['c', 4]]}, {'dots': [['w', 'c', 3]], 'vv': {'c': 2}, 'cloud': [['c', 3]]}], {'elements': ['w', 'z'], 'dots': [['w', 'c', 3], ['z', 'c', 4]], 'vv': [['c', 4]], 'cloud': []}), ('gaps stay in the cloud', [{'dots': [], 'vv': {'a': 1}, 'cloud': [['a', 3]]}, {'dots': [['q', 'a', 6]], 'vv': {}, 'cloud': [['a', 6]]}], {'elements': ['q'], 'dots': [['q', 'a', 6]], 'vv': [['a', 1]], 'cloud': [['a', 3], ['a', 6]]}), ('vectors join by maximum', [{'dots': [['p', 'b', 2]], 'vv': {'a': 2, 'b': 2}, 'cloud': []}, {'dots': [['r', 'a', 4]], 'vv': {'a': 4, 'b': 1}, 'cloud': []}], {'elements': ['p', 'r'], 'dots': [['p', 'b', 2], ['r', 'a', 4]], 'vv': [['a', 4], ['b', 2]], 'cloud': []}), ('cloud entries for a fresh replica compact from zero', [{'dots': [['m', 'd', 1], ['m', 'd', 2]], 'vv': {}, 'cloud': [['d', 1], ['d', 2]]}, {'dots': [], 'vv': {}, 'cloud': []}], {'elements': ['m'], 'dots': [['m', 'd', 1], ['m', 'd', 2]], 'vv': [['d', 2]], 'cloud': []}), ('cloud entries already under the vector are pruned', [{'dots': [], 'vv': {'a': 4}, 'cloud': []}, {'dots': [], 'vv': {'a': 1}, 'cloud': [['a', 2], ['a', 5]]}], {'elements': [], 'dots': [], 'vv': [['a', 5]], 'cloud': []}), ('peer-only dot unseen locally survives', [{'dots': [], 'vv': {'b': 1}, 'cloud': []}, {'dots': [['k', 'a', 2], ['k', 'b', 1]], 'vv': {'a': 2, 'b': 1}, 'cloud': []}], {'elements': ['k'], 'dots': [['k', 'a', 2]], 'vv': [['a', 2], ['b', 1]], 'cloud': []})],\n    3: [('dot unseen by the peer survives', [{'dots': [['x', 'a', 1]], 'vv': {'a': 1}, 'cloud': []}, {'dots': [], 'vv': {}, 'cloud': []}], {'elements': ['x'], 'dots': [['x', 'a', 1]], 'vv': [['a', 1]], 'cloud': []}), ('dot removed by the peer is dropped', [{'dots': [['x', 'a', 1], ['y', 'a', 2]], 'vv': {'a': 2}, 'cloud': []}, {'dots': [['y', 'a', 2]], 'vv': {'a': 2}, 'cloud': []}], {'elements': ['y'], 'dots': [['y', 'a', 2]], 'vv': [['a', 2]], 'cloud': []}), ('dot covered only by the peer cloud is dropped', [{'dots': [['x', 'a', 3], ['y', 'b', 1]], 'vv': {'a': 3, 'b': 1}, 'cloud': []}, {'dots': [['y', 'b', 1]], 'vv': {'a': 1, 'b': 1}, 'cloud': [['a', 3]]}], {'elements': ['y'], 'dots': [['y', 'b', 1]], 'vv': [['a', 3], ['b', 1]], 'cloud': []}), ('dot at the vector boundary is covered', [{'dots': [['x', 'a', 3]], 'vv': {'a': 3}, 'cloud': []}, {'dots': [], 'vv': {'a': 3}, 'cloud': []}], {'elements': [], 'dots': [], 'vv': [['a', 3]], 'cloud': []}), ('cloud compacts into the vector', [{'dots': [['z', 'c', 5]], 'vv': {'c': 3}, 'cloud': [['c', 5]]}, {'dots': [['w', 'c', 4]], 'vv': {'c': 3}, 'cloud': [['c', 4]]}], {'elements': ['w', 'z'], 'dots': [['w', 'c', 4], ['z', 'c', 5]], 'vv': [['c', 5]], 'cloud': []}), ('gaps stay in the cloud', [{'dots': [], 'vv': {'a': 1}, 'cloud': [['a', 3]]}, {'dots': [['q', 'a', 7]], 'vv': {}, 'cloud': [['a', 7]]}], {'elements': ['q'], 'dots': [['q', 'a', 7]], 'vv': [['a', 1]], 'cloud': [['a', 3], ['a', 7]]}), ('vectors join by maximum', [{'dots': [['p', 'b', 3]], 'vv': {'a': 2, 'b': 3}, 'cloud': []}, {'dots': [['r', 'a', 4]], 'vv': {'a': 4, 'b': 1}, 'cloud': []}], {'elements': ['p', 'r'], 'dots': [['p', 'b', 3], ['r', 'a', 4]], 'vv': [['a', 4], ['b', 3]], 'cloud': []}), ('cloud entries for a fresh replica compact from zero', [{'dots': [['m', 'd', 1], ['m', 'd', 2]], 'vv': {}, 'cloud': [['d', 1], ['d', 2]]}, {'dots': [], 'vv': {}, 'cloud': []}], {'elements': ['m'], 'dots': [['m', 'd', 1], ['m', 'd', 2]], 'vv': [['d', 2]], 'cloud': []}), ('cloud entries already under the vector are pruned', [{'dots': [], 'vv': {'a': 5}, 'cloud': []}, {'dots': [], 'vv': {'a': 1}, 'cloud': [['a', 2], ['a', 6]]}], {'elements': [], 'dots': [], 'vv': [['a', 6]], 'cloud': []}), ('peer-only dot unseen locally survives', [{'dots': [], 'vv': {'b': 1}, 'cloud': []}, {'dots': [['k', 'a', 3], ['k', 'b', 1]], 'vv': {'a': 3, 'b': 1}, 'cloud': []}], {'elements': ['k'], 'dots': [['k', 'a', 3]], 'vv': [['a', 3], ['b', 1]], 'cloud': []})],\n    4: [('dot unseen by the peer survives', [{'dots': [['x', 'a', 1]], 'vv': {'a': 1}, 'cloud': []}, {'dots': [], 'vv': {}, 'cloud': []}], {'elements': ['x'], 'dots': [['x', 'a', 1]], 'vv': [['a', 1]], 'cloud': []}), ('dot removed by the peer is dropped', [{'dots': [['x', 'a', 1], ['y', 'a', 2]], 'vv': {'a': 2}, 'cloud': []}, {'dots': [['y', 'a', 2]], 'vv': {'a': 2}, 'cloud': []}], {'elements': ['y'], 'dots': [['y', 'a', 2]], 'vv': [['a', 2]], 'cloud': []}), ('dot covered only by the peer cloud is dropped', [{'dots': [['x', 'a', 3], ['y', 'b', 1]], 'vv': {'a': 3, 'b': 1}, 'cloud': []}, {'dots': [['y', 'b', 1]], 'vv': {'a': 1, 'b': 1}, 'cloud': [['a', 3]]}], {'elements': ['y'], 'dots': [['y', 'b', 1]], 'vv': [['a', 3], ['b', 1]], 'cloud': []}), ('dot at the vector boundary is covered', [{'dots': [['x', 'a', 4]], 'vv': {'a': 4}, 'cloud': []}, {'dots': [], 'vv': {'a': 4}, 'cloud': []}], {'elements': [], 'dots': [], 'vv': [['a', 4]], 'cloud': []}), ('cloud compacts into the vector', [{'dots': [['z', 'c', 6]], 'vv': {'c': 4}, 'cloud': [['c', 6]]}, {'dots': [['w', 'c', 5]], 'vv': {'c': 4}, 'cloud': [['c', 5]]}], {'elements': ['w', 'z'], 'dots': [['w', 'c', 5], ['z', 'c', 6]], 'vv': [['c', 6]], 'cloud': []}), ('gaps stay in the cloud', [{'dots': [], 'vv': {'a': 1}, 'cloud': [['a', 3]]}, {'dots': [['q', 'a', 8]], 'vv': {}, 'cloud': [['a', 8]]}], {'elements': ['q'], 'dots': [['q', 'a', 8]], 'vv': [['a', 1]], 'cloud': [['a', 3], ['a', 8]]}), ('vectors join by maximum', [{'dots': [['p', 'b', 4]], 'vv': {'a': 2, 'b': 4}, 'cloud': []}, {'dots': [['r', 'a', 4]], 'vv': {'a': 4, 'b': 1}, 'cloud': []}], {'elements': ['p', 'r'], 'dots': [['p', 'b', 4], ['r', 'a', 4]], 'vv': [['a', 4], ['b', 4]], 'cloud': []}), ('cloud entries for a fresh replica compact from zero', [{'dots': [['m', 'd', 1], ['m', 'd', 2]], 'vv': {}, 'cloud': [['d', 1], ['d', 2]]}, {'dots': [], 'vv': {}, 'cloud': []}], {'elements': ['m'], 'dots': [['m', 'd', 1], ['m', 'd', 2]], 'vv': [['d', 2]], 'cloud': []}), ('cloud entries already under the vector are pruned', [{'dots': [], 'vv': {'a': 6}, 'cloud': []}, {'dots': [], 'vv': {'a': 1}, 'cloud': [['a', 2], ['a', 7]]}], {'elements': [], 'dots': [], 'vv': [['a', 7]], 'cloud': []}), ('peer-only dot unseen locally survives', [{'dots': [], 'vv': {'b': 1}, 'cloud': []}, {'dots': [['k', 'a', 4], ['k', 'b', 1]], 'vv': {'a': 4, 'b': 1}, 'cloud': []}], {'elements': ['k'], 'dots': [['k', 'a', 4]], 'vv': [['a', 4], ['b', 1]], 'cloud': []})],\n    5: [('dot unseen by the peer survives', [{'dots': [['x', 'a', 1]], 'vv': {'a': 1}, 'cloud': []}, {'dots': [], 'vv': {}, 'cloud': []}], {'elements': ['x'], 'dots': [['x', 'a', 1]], 'vv': [['a', 1]], 'cloud': []}), ('dot removed by the peer is dropped', [{'dots': [['x', 'a', 1], ['y', 'a', 2]], 'vv': {'a': 2}, 'cloud': []}, {'dots': [['y', 'a', 2]], 'vv': {'a': 2}, 'cloud': []}], {'elements': ['y'], 'dots': [['y', 'a', 2]], 'vv': [['a', 2]], 'cloud': []}), ('dot covered only by the peer cloud is dropped', [{'dots': [['x', 'a', 3], ['y', 'b', 1]], 'vv': {'a': 3, 'b': 1}, 'cloud': []}, {'dots': [['y', 'b', 1]], 'vv': {'a': 1, 'b': 1}, 'cloud': [['a', 3]]}], {'elements': ['y'], 'dots': [['y', 'b', 1]], 'vv': [['a', 3], ['b', 1]], 'cloud': []}), ('dot at the vector boundary is covered', [{'dots': [['x', 'a', 5]], 'vv': {'a': 5}, 'cloud': []}, {'dots': [], 'vv': {'a': 5}, 'cloud': []}], {'elements': [], 'dots': [], 'vv': [['a', 5]], 'cloud': []}), ('cloud compacts into the vector', [{'dots': [['z', 'c', 7]], 'vv': {'c': 5}, 'cloud': [['c', 7]]}, {'dots': [['w', 'c', 6]], 'vv': {'c': 5}, 'cloud': [['c', 6]]}], {'elements': ['w', 'z'], 'dots': [['w', 'c', 6], ['z', 'c', 7]], 'vv': [['c', 7]], 'cloud': []}), ('gaps stay in the cloud', [{'dots': [], 'vv': {'a': 1}, 'cloud': [['a', 3]]}, {'dots': [['q', 'a', 9]], 'vv': {}, 'cloud': [['a', 9]]}], {'elements': ['q'], 'dots': [['q', 'a', 9]], 'vv': [['a', 1]], 'cloud': [['a', 3], ['a', 9]]}), ('vectors join by maximum', [{'dots': [['p', 'b', 5]], 'vv': {'a': 2, 'b': 5}, 'cloud': []}, {'dots': [['r', 'a', 4]], 'vv': {'a': 4, 'b': 1}, 'cloud': []}], {'elements': ['p', 'r'], 'dots': [['p', 'b', 5], ['r', 'a', 4]], 'vv': [['a', 4], ['b', 5]], 'cloud': []}), ('cloud entries for a fresh replica compact from zero', [{'dots': [['m', 'd', 1], ['m', 'd', 2]], 'vv': {}, 'cloud': [['d', 1], ['d', 2]]}, {'dots': [], 'vv': {}, 'cloud': []}], {'elements': ['m'], 'dots': [['m', 'd', 1], ['m', 'd', 2]], 'vv': [['d', 2]], 'cloud': []}), ('cloud entries already under the vector are pruned', [{'dots': [], 'vv': {'a': 7}, 'cloud': []}, {'dots': [], 'vv': {'a': 1}, 'cloud': [['a', 2], ['a', 8]]}], {'elements': [], 'dots': [], 'vv': [['a', 8]], 'cloud': []}), ('peer-only dot unseen locally survives', [{'dots': [], 'vv': {'b': 1}, 'cloud': []}, {'dots': [['k', 'a', 5], ['k', 'b', 1]], 'vv': {'a': 5, 'b': 1}, 'cloud': []}], {'elements': ['k'], 'dots': [['k', 'a', 5]], 'vv': [['a', 5], ['b', 1]], 'cloud': []})],\n}[N]\nfor label, args, expected in cases:\n    check(label, solve(*args), expected)\nprint(json.dumps({\"observations\": observations, \"passed\": all(x[\"passed\"] for x in observations)}, ensure_ascii=False))\nraise SystemExit(0 if all(x[\"passed\"] for x in observations) else 1)\n"}},"limitations":"A deterministic, bounded teaching model of one replicated data type with stipulated operation and merge rules; it is not a production CRDT library and makes no claim of conformance to any specific published design. This reproducer isolates one failure mechanism. Results cover the supplied fixtures. Variants within a family share a test contract and should remain grouped when constructing evaluation splits. Related mechanisms with a shared evaluation_group must also remain together; these controlled models are not independent production incidents.","method":"Deterministic executable model with adversarial boundary fixtures.","provenance":{"created_by":"Failure Map","dependencies":"Python standard library","family":"w2-crdt-convergence-delta-causal-context-join-compaction-contiguity","generated_at":"2026-09-29T14:49:02.006108+00:00","license":"CC0-1.0","python":"3.12.14","seed":1,"split":"open-access"},"relevance":"Delta-state add-wins sets rely on causal contexts to tell removals from unseen additions.","repair":"Advance vv[r] only by an entry exactly one above it, repeating until no entry qualifies.","root_cause":"Any cloud entry above the vector advances it, even when intermediate dots are missing.","sha256":"8eac557e80af1acec136f0398b0907c4eb344c9977bf03d0811c96f92ac4442a","title":"Delta causal context join: compaction jumps over gaps · case 01","variant":1,"variant_policy":"Five numbered records share a model and may reuse boundary fixtures.","verification":{"attempt":{"elapsed_ms":45.224,"exit_code":1,"observations":[{"actual":{"cloud":[],"dots":[["x","a",1]],"elements":["x"],"vv":[["a",1]]},"check":"dot unseen by the peer survives","expected":{"cloud":[],"dots":[["x","a",1]],"elements":["x"],"vv":[["a",1]]},"passed":true},{"actual":{"cloud":[],"dots":[["y","a",2]],"elements":["y"],"vv":[["a",2]]},"check":"dot removed by the peer is dropped","expected":{"cloud":[],"dots":[["y","a",2]],"elements":["y"],"vv":[["a",2]]},"passed":true},{"actual":{"cloud":[],"dots":[["y","b",1]],"elements":["y"],"vv":[["a",3],["b",1]]},"check":"dot covered only by the peer cloud is dropped","expected":{"cloud":[],"dots":[["y","b",1]],"elements":["y"],"vv":[["a",3],["b",1]]},"passed":true},{"actual":{"cloud":[],"dots":[],"elements":[],"vv":[["a",1]]},"check":"dot at the vector boundary is covered","expected":{"cloud":[],"dots":[],"elements":[],"vv":[["a",1]]},"passed":true},{"actual":{"cloud":[],"dots":[["w","c",2],["z","c",3]],"elements":["w","z"],"vv":[["c",3]]},"check":"cloud compacts into the vector","expected":{"cloud":[],"dots":[["w","c",2],["z","c",3]],"elements":["w","z"],"vv":[["c",3]]},"passed":true},{"actual":{"cloud":[["a",3],["a",5]],"dots":[["q","a",5]],"elements":["q"],"vv":[["a",1]]},"check":"gaps stay in the cloud","expected":{"cloud":[["a",3],["a",5]],"dots":[["q","a",5]],"elements":["q"],"vv":[["a",1]]},"passed":true},{"actual":{"cloud":[],"dots":[["r","a",4]],"elements":["r"],"vv":[["a",4],["b",1]]},"check":"vectors join by maximum","expected":{"cloud":[],"dots":[["r","a",4]],"elements":["r"],"vv":[["a",4],["b",1]]},"passed":true},{"actual":{"cloud":[["d",1],["d",2]],"dots":[["m","d",1],["m","d",2]],"elements":["m"],"vv":[]},"check":"cloud entries for a fresh replica compact from zero","expected":{"cloud":[],"dots":[["m","d",1],["m","d",2]],"elements":["m"],"vv":[["d",2]]},"passed":false},{"actual":{"cloud":[],"dots":[],"elements":[],"vv":[["a",4]]},"check":"cloud entries already under the vector are pruned","expected":{"cloud":[],"dots":[],"elements":[],"vv":[["a",4]]},"passed":true},{"actual":{"cloud":[],"dots":[["k","a",1]],"elements":["k"],"vv":[["a",1],["b",1]]},"check":"peer-only dot unseen locally survives","expected":{"cloud":[],"dots":[["k","a",1]],"elements":["k"],"vv":[["a",1],["b",1]]},"passed":true}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"dot unseen by the peer survives\", \"actual\": {\"elements\": [\"x\"], \"dots\": [[\"x\", \"a\", 1]], \"vv\": [[\"a\", 1]], \"cloud\": []}, \"expected\": {\"elements\": [\"x\"], \"dots\": [[\"x\", \"a\", 1]], \"vv\": [[\"a\", 1]], \"cloud\": []}, \"passed\": true}, {\"check\": \"dot removed by the peer is dropped\", \"actual\": {\"elements\": [\"y\"], \"dots\": [[\"y\", \"a\", 2]], \"vv\": [[\"a\", 2]], \"cloud\": []}, \"expected\": {\"elements\": [\"y\"], \"dots\": [[\"y\", \"a\", 2]], \"vv\": [[\"a\", 2]], \"cloud\": []}, \"passed\": true}, {\"check\": \"dot covered only by the peer cloud is dropped\", \"actual\": {\"elements\": [\"y\"], \"dots\": [[\"y\", \"b\", 1]], \"vv\": [[\"a\", 3], [\"b\", 1]], \"cloud\": []}, \"expected\": {\"elements\": [\"y\"], \"dots\": [[\"y\", \"b\", 1]], \"vv\": [[\"a\", 3], [\"b\", 1]], \"cloud\": []}, \"passed\": true}, {\"check\": \"dot at the vector boundary is covered\", \"actual\": {\"elements\": [], \"dots\": [], \"vv\": [[\"a\", 1]], \"cloud\": []}, \"expected\": {\"elements\": [], \"dots\": [], \"vv\": [[\"a\", 1]], \"cloud\": []}, \"passed\": true}, {\"check\": \"cloud compacts into the vector\", \"actual\": {\"elements\": [\"w\", \"z\"], \"dots\": [[\"w\", \"c\", 2], [\"z\", \"c\", 3]], \"vv\": [[\"c\", 3]], \"cloud\": []}, \"expected\": {\"elements\": [\"w\", \"z\"], \"dots\": [[\"w\", \"c\", 2], [\"z\", \"c\", 3]], \"vv\": [[\"c\", 3]], \"cloud\": []}, \"passed\": true}, {\"check\": \"gaps stay in the cloud\", \"actual\": {\"elements\": [\"q\"], \"dots\": [[\"q\", \"a\", 5]], \"vv\": [[\"a\", 1]], \"cloud\": [[\"a\", 3], [\"a\", 5]]}, \"expected\": {\"elements\": [\"q\"], \"dots\": [[\"q\", \"a\", 5]], \"vv\": [[\"a\", 1]], \"cloud\": [[\"a\", 3], [\"a\", 5]]}, \"passed\": true}, {\"check\": \"vectors join by maximum\", \"actual\": {\"elements\": [\"r\"], \"dots\": [[\"r\", \"a\", 4]], \"vv\": [[\"a\", 4], [\"b\", 1]], \"cloud\": []}, \"expected\": {\"elements\": [\"r\"], \"dots\": [[\"r\", \"a\", 4]], \"vv\": [[\"a\", 4], [\"b\", 1]], \"cloud\": []}, \"passed\": true}, {\"check\": \"cloud entries for a fresh replica compact from zero\", \"actual\": {\"elements\": [\"m\"], \"dots\": [[\"m\", \"d\", 1], [\"m\", \"d\", 2]], \"vv\": [], \"cloud\": [[\"d\", 1], [\"d\", 2]]}, \"expected\": {\"elements\": [\"m\"], \"dots\": [[\"m\", \"d\", 1], [\"m\", \"d\", 2]], \"vv\": [[\"d\", 2]], \"cloud\": []}, \"passed\": false}, {\"check\": \"cloud entries already under the vector are pruned\", \"actual\": {\"elements\": [], \"dots\": [], \"vv\": [[\"a\", 4]], \"cloud\": []}, \"expected\": {\"elements\": [], \"dots\": [], \"vv\": [[\"a\", 4]], \"cloud\": []}, \"passed\": true}, {\"check\": \"peer-only dot unseen locally survives\", \"actual\": {\"elements\": [\"k\"], \"dots\": [[\"k\", \"a\", 1]], \"vv\": [[\"a\", 1], [\"b\", 1]], \"cloud\": []}, \"expected\": {\"elements\": [\"k\"], \"dots\": [[\"k\", \"a\", 1]], \"vv\": [[\"a\", 1], [\"b\", 1]], \"cloud\": []}, \"passed\": true}], \"passed\": false}\n"},"broken":{"elapsed_ms":48.205,"exit_code":1,"observations":[{"actual":{"cloud":[],"dots":[["x","a",1]],"elements":["x"],"vv":[["a",1]]},"check":"dot unseen by the peer survives","expected":{"cloud":[],"dots":[["x","a",1]],"elements":["x"],"vv":[["a",1]]},"passed":true},{"actual":{"cloud":[],"dots":[["y","a",2]],"elements":["y"],"vv":[["a",2]]},"check":"dot removed by the peer is dropped","expected":{"cloud":[],"dots":[["y","a",2]],"elements":["y"],"vv":[["a",2]]},"passed":true},{"actual":{"cloud":[],"dots":[["y","b",1]],"elements":["y"],"vv":[["a",3],["b",1]]},"check":"dot covered only by the peer cloud is dropped","expected":{"cloud":[],"dots":[["y","b",1]],"elements":["y"],"vv":[["a",3],["b",1]]},"passed":true},{"actual":{"cloud":[],"dots":[],"elements":[],"vv":[["a",1]]},"check":"dot at the vector boundary is covered","expected":{"cloud":[],"dots":[],"elements":[],"vv":[["a",1]]},"passed":true},{"actual":{"cloud":[],"dots":[["w","c",2],["z","c",3]],"elements":["w","z"],"vv":[["c",3]]},"check":"cloud compacts into the vector","expected":{"cloud":[],"dots":[["w","c",2],["z","c",3]],"elements":["w","z"],"vv":[["c",3]]},"passed":true},{"actual":{"cloud":[],"dots":[["q","a",5]],"elements":["q"],"vv":[["a",5]]},"check":"gaps stay in the cloud","expected":{"cloud":[["a",3],["a",5]],"dots":[["q","a",5]],"elements":["q"],"vv":[["a",1]]},"passed":false},{"actual":{"cloud":[],"dots":[["r","a",4]],"elements":["r"],"vv":[["a",4],["b",1]]},"check":"vectors join by maximum","expected":{"cloud":[],"dots":[["r","a",4]],"elements":["r"],"vv":[["a",4],["b",1]]},"passed":true},{"actual":{"cloud":[],"dots":[["m","d",1],["m","d",2]],"elements":["m"],"vv":[["d",2]]},"check":"cloud entries for a fresh replica compact from zero","expected":{"cloud":[],"dots":[["m","d",1],["m","d",2]],"elements":["m"],"vv":[["d",2]]},"passed":true},{"actual":{"cloud":[],"dots":[],"elements":[],"vv":[["a",4]]},"check":"cloud entries already under the vector are pruned","expected":{"cloud":[],"dots":[],"elements":[],"vv":[["a",4]]},"passed":true},{"actual":{"cloud":[],"dots":[["k","a",1]],"elements":["k"],"vv":[["a",1],["b",1]]},"check":"peer-only dot unseen locally survives","expected":{"cloud":[],"dots":[["k","a",1]],"elements":["k"],"vv":[["a",1],["b",1]]},"passed":true}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"dot unseen by the peer survives\", \"actual\": {\"elements\": [\"x\"], \"dots\": [[\"x\", \"a\", 1]], \"vv\": [[\"a\", 1]], \"cloud\": []}, \"expected\": {\"elements\": [\"x\"], \"dots\": [[\"x\", \"a\", 1]], \"vv\": [[\"a\", 1]], \"cloud\": []}, \"passed\": true}, {\"check\": \"dot removed by the peer is dropped\", \"actual\": {\"elements\": [\"y\"], \"dots\": [[\"y\", \"a\", 2]], \"vv\": [[\"a\", 2]], \"cloud\": []}, \"expected\": {\"elements\": [\"y\"], \"dots\": [[\"y\", \"a\", 2]], \"vv\": [[\"a\", 2]], \"cloud\": []}, \"passed\": true}, {\"check\": \"dot covered only by the peer cloud is dropped\", \"actual\": {\"elements\": [\"y\"], \"dots\": [[\"y\", \"b\", 1]], \"vv\": [[\"a\", 3], [\"b\", 1]], \"cloud\": []}, \"expected\": {\"elements\": [\"y\"], \"dots\": [[\"y\", \"b\", 1]], \"vv\": [[\"a\", 3], [\"b\", 1]], \"cloud\": []}, \"passed\": true}, {\"check\": \"dot at the vector boundary is covered\", \"actual\": {\"elements\": [], \"dots\": [], \"vv\": [[\"a\", 1]], \"cloud\": []}, \"expected\": {\"elements\": [], \"dots\": [], \"vv\": [[\"a\", 1]], \"cloud\": []}, \"passed\": true}, {\"check\": \"cloud compacts into the vector\", \"actual\": {\"elements\": [\"w\", \"z\"], \"dots\": [[\"w\", \"c\", 2], [\"z\", \"c\", 3]], \"vv\": [[\"c\", 3]], \"cloud\": []}, \"expected\": {\"elements\": [\"w\", \"z\"], \"dots\": [[\"w\", \"c\", 2], [\"z\", \"c\", 3]], \"vv\": [[\"c\", 3]], \"cloud\": []}, \"passed\": true}, {\"check\": \"gaps stay in the cloud\", \"actual\": {\"elements\": [\"q\"], \"dots\": [[\"q\", \"a\", 5]], \"vv\": [[\"a\", 5]], \"cloud\": []}, \"expected\": {\"elements\": [\"q\"], \"dots\": [[\"q\", \"a\", 5]], \"vv\": [[\"a\", 1]], \"cloud\": [[\"a\", 3], [\"a\", 5]]}, \"passed\": false}, {\"check\": \"vectors join by maximum\", \"actual\": {\"elements\": [\"r\"], \"dots\": [[\"r\", \"a\", 4]], \"vv\": [[\"a\", 4], [\"b\", 1]], \"cloud\": []}, \"expected\": {\"elements\": [\"r\"], \"dots\": [[\"r\", \"a\", 4]], \"vv\": [[\"a\", 4], [\"b\", 1]], \"cloud\": []}, \"passed\": true}, {\"check\": \"cloud entries for a fresh replica compact from zero\", \"actual\": {\"elements\": [\"m\"], \"dots\": [[\"m\", \"d\", 1], [\"m\", \"d\", 2]], \"vv\": [[\"d\", 2]], \"cloud\": []}, \"expected\": {\"elements\": [\"m\"], \"dots\": [[\"m\", \"d\", 1], [\"m\", \"d\", 2]], \"vv\": [[\"d\", 2]], \"cloud\": []}, \"passed\": true}, {\"check\": \"cloud entries already under the vector are pruned\", \"actual\": {\"elements\": [], \"dots\": [], \"vv\": [[\"a\", 4]], \"cloud\": []}, \"expected\": {\"elements\": [], \"dots\": [], \"vv\": [[\"a\", 4]], \"cloud\": []}, \"passed\": true}, {\"check\": \"peer-only dot unseen locally survives\", \"actual\": {\"elements\": [\"k\"], \"dots\": [[\"k\", \"a\", 1]], \"vv\": [[\"a\", 1], [\"b\", 1]], \"cloud\": []}, \"expected\": {\"elements\": [\"k\"], \"dots\": [[\"k\", \"a\", 1]], \"vv\": [[\"a\", 1], [\"b\", 1]], \"cloud\": []}, \"passed\": true}], \"passed\": false}\n"},"fixed":{"elapsed_ms":44.506,"exit_code":0,"observations":[{"actual":{"cloud":[],"dots":[["x","a",1]],"elements":["x"],"vv":[["a",1]]},"check":"dot unseen by the peer survives","expected":{"cloud":[],"dots":[["x","a",1]],"elements":["x"],"vv":[["a",1]]},"passed":true},{"actual":{"cloud":[],"dots":[["y","a",2]],"elements":["y"],"vv":[["a",2]]},"check":"dot removed by the peer is dropped","expected":{"cloud":[],"dots":[["y","a",2]],"elements":["y"],"vv":[["a",2]]},"passed":true},{"actual":{"cloud":[],"dots":[["y","b",1]],"elements":["y"],"vv":[["a",3],["b",1]]},"check":"dot covered only by the peer cloud is dropped","expected":{"cloud":[],"dots":[["y","b",1]],"elements":["y"],"vv":[["a",3],["b",1]]},"passed":true},{"actual":{"cloud":[],"dots":[],"elements":[],"vv":[["a",1]]},"check":"dot at the vector boundary is covered","expected":{"cloud":[],"dots":[],"elements":[],"vv":[["a",1]]},"passed":true},{"actual":{"cloud":[],"dots":[["w","c",2],["z","c",3]],"elements":["w","z"],"vv":[["c",3]]},"check":"cloud compacts into the vector","expected":{"cloud":[],"dots":[["w","c",2],["z","c",3]],"elements":["w","z"],"vv":[["c",3]]},"passed":true},{"actual":{"cloud":[["a",3],["a",5]],"dots":[["q","a",5]],"elements":["q"],"vv":[["a",1]]},"check":"gaps stay in the cloud","expected":{"cloud":[["a",3],["a",5]],"dots":[["q","a",5]],"elements":["q"],"vv":[["a",1]]},"passed":true},{"actual":{"cloud":[],"dots":[["r","a",4]],"elements":["r"],"vv":[["a",4],["b",1]]},"check":"vectors join by maximum","expected":{"cloud":[],"dots":[["r","a",4]],"elements":["r"],"vv":[["a",4],["b",1]]},"passed":true},{"actual":{"cloud":[],"dots":[["m","d",1],["m","d",2]],"elements":["m"],"vv":[["d",2]]},"check":"cloud entries for a fresh replica compact from zero","expected":{"cloud":[],"dots":[["m","d",1],["m","d",2]],"elements":["m"],"vv":[["d",2]]},"passed":true},{"actual":{"cloud":[],"dots":[],"elements":[],"vv":[["a",4]]},"check":"cloud entries already under the vector are pruned","expected":{"cloud":[],"dots":[],"elements":[],"vv":[["a",4]]},"passed":true},{"actual":{"cloud":[],"dots":[["k","a",1]],"elements":["k"],"vv":[["a",1],["b",1]]},"check":"peer-only dot unseen locally survives","expected":{"cloud":[],"dots":[["k","a",1]],"elements":["k"],"vv":[["a",1],["b",1]]},"passed":true}],"passed":true,"stderr":"","stdout":"{\"observations\": [{\"check\": \"dot unseen by the peer survives\", \"actual\": {\"elements\": [\"x\"], \"dots\": [[\"x\", \"a\", 1]], \"vv\": [[\"a\", 1]], \"cloud\": []}, \"expected\": {\"elements\": [\"x\"], \"dots\": [[\"x\", \"a\", 1]], \"vv\": [[\"a\", 1]], \"cloud\": []}, \"passed\": true}, {\"check\": \"dot removed by the peer is dropped\", \"actual\": {\"elements\": [\"y\"], \"dots\": [[\"y\", \"a\", 2]], \"vv\": [[\"a\", 2]], \"cloud\": []}, \"expected\": {\"elements\": [\"y\"], \"dots\": [[\"y\", \"a\", 2]], \"vv\": [[\"a\", 2]], \"cloud\": []}, \"passed\": true}, {\"check\": \"dot covered only by the peer cloud is dropped\", \"actual\": {\"elements\": [\"y\"], \"dots\": [[\"y\", \"b\", 1]], \"vv\": [[\"a\", 3], [\"b\", 1]], \"cloud\": []}, \"expected\": {\"elements\": [\"y\"], \"dots\": [[\"y\", \"b\", 1]], \"vv\": [[\"a\", 3], [\"b\", 1]], \"cloud\": []}, \"passed\": true}, {\"check\": \"dot at the vector boundary is covered\", \"actual\": {\"elements\": [], \"dots\": [], \"vv\": [[\"a\", 1]], \"cloud\": []}, \"expected\": {\"elements\": [], \"dots\": [], \"vv\": [[\"a\", 1]], \"cloud\": []}, \"passed\": true}, {\"check\": \"cloud compacts into the vector\", \"actual\": {\"elements\": [\"w\", \"z\"], \"dots\": [[\"w\", \"c\", 2], [\"z\", \"c\", 3]], \"vv\": [[\"c\", 3]], \"cloud\": []}, \"expected\": {\"elements\": [\"w\", \"z\"], \"dots\": [[\"w\", \"c\", 2], [\"z\", \"c\", 3]], \"vv\": [[\"c\", 3]], \"cloud\": []}, \"passed\": true}, {\"check\": \"gaps stay in the cloud\", \"actual\": {\"elements\": [\"q\"], \"dots\": [[\"q\", \"a\", 5]], \"vv\": [[\"a\", 1]], \"cloud\": [[\"a\", 3], [\"a\", 5]]}, \"expected\": {\"elements\": [\"q\"], \"dots\": [[\"q\", \"a\", 5]], \"vv\": [[\"a\", 1]], \"cloud\": [[\"a\", 3], [\"a\", 5]]}, \"passed\": true}, {\"check\": \"vectors join by maximum\", \"actual\": {\"elements\": [\"r\"], \"dots\": [[\"r\", \"a\", 4]], \"vv\": [[\"a\", 4], [\"b\", 1]], \"cloud\": []}, \"expected\": {\"elements\": [\"r\"], \"dots\": [[\"r\", \"a\", 4]], \"vv\": [[\"a\", 4], [\"b\", 1]], \"cloud\": []}, \"passed\": true}, {\"check\": \"cloud entries for a fresh replica compact from zero\", \"actual\": {\"elements\": [\"m\"], \"dots\": [[\"m\", \"d\", 1], [\"m\", \"d\", 2]], \"vv\": [[\"d\", 2]], \"cloud\": []}, \"expected\": {\"elements\": [\"m\"], \"dots\": [[\"m\", \"d\", 1], [\"m\", \"d\", 2]], \"vv\": [[\"d\", 2]], \"cloud\": []}, \"passed\": true}, {\"check\": \"cloud entries already under the vector are pruned\", \"actual\": {\"elements\": [], \"dots\": [], \"vv\": [[\"a\", 4]], \"cloud\": []}, \"expected\": {\"elements\": [], \"dots\": [], \"vv\": [[\"a\", 4]], \"cloud\": []}, \"passed\": true}, {\"check\": \"peer-only dot unseen locally survives\", \"actual\": {\"elements\": [\"k\"], \"dots\": [[\"k\", \"a\", 1]], \"vv\": [[\"a\", 1], [\"b\", 1]], \"cloud\": []}, \"expected\": {\"elements\": [\"k\"], \"dots\": [[\"k\", \"a\", 1]], \"vv\": [[\"a\", 1], [\"b\", 1]], \"cloud\": []}, \"passed\": true}], \"passed\": true}\n"}},"verified":true,"visibility":"public"}