{"abstract":"Destructuring assignment overwrites an owner before RHS borrow evaluation completes.","category":"Borrow checking","checks":21,"contract":"Validate borrow-sensitive desugaring proof facts. For-loop iterator temporary covers loop; question-mark error exit drops body loans; short-circuit right operand is conditionally evaluated; method autoref targets receiver after autoderef; compound assignment evaluates destination once; indexing evaluates base before index; await suspension preserves the borrowed future owner; let-else failure cannot access successful bindings; destructuring assignment stages RHS borrows before writing destinations; return expression lifetime is checked before local cleanup. Input is a fully explicit descriptor of the stated toy IR. Return rule identifiers in declaration order; absent optional obligations use the provided neutral defaults. No rule is an assertion about a production language.","evaluation_group":"s3-borrow-checking-desugared-borrow-control","failed_approach":"The partial repair uses if d['first_write']+1<d['rhs_end']: errors.append('destructure-stage-rhs'), which still violates the stipulated analysis contract.","family":"s3-borrow-checking-desugared-borrow-control-destructure-stage-rhs","id":"FA-44331","implementations":{"attempt":{"sha256":"0ea2bac7226c44fa110e5b471671d4e9af2d8d15aeb72ee710f7ea33e4f9f246","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(d):\n    errors=[]\n    if d['iterator_end']<d['loop_end']: errors.append('for-owner-duration')\n    if d['error_exit'] and bool(d['body_loans_live']): errors.append('question-error-cleanup')\n    if d['rhs_evaluated'] and not d['rhs_enabled']: errors.append('short-circuit-conditional')\n    if d['autoderef_place']!=d['autoref_place']: errors.append('autoref-after-autoderef')\n    if d['compound_assignment'] and d['destination_evaluations']!=1: errors.append('compound-destination-once')\n    if d['base_point']>d['index_point']: errors.append('index-evaluation-order')\n    if d['future_owner_end']<d['await_resume']: errors.append('await-future-owner')\n    if d['else_branch'] and bool(set(d['success_bindings'])&set(d['else_uses'])): errors.append('let-else-binding-scope')\n    if d['first_write']+1<d['rhs_end']: errors.append('destructure-stage-rhs')\n    if d['return_check']>d['cleanup_point']: errors.append('return-before-cleanup')\n    return errors\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nbase={'iterator_end': 0, 'loop_end': 0, 'error_exit': False, 'body_loans_live': [], 'rhs_evaluated': False, 'rhs_enabled': True, 'autoderef_place': [], 'autoref_place': [], 'destination_evaluations': 0, 'compound_assignment': False, 'base_point': 0, 'index_point': 0, 'future_owner_end': 0, 'await_resume': 0, 'else_branch': False, 'success_bindings': [], 'else_uses': [], 'rhs_end': 0, 'first_write': 0, 'return_check': 0, 'cleanup_point': 0}\ncheck('well formed empty obligations',solve(base),[])\ncheck('for-owner-duration regression 0', solve(dict(base, **({'iterator_end':N,'loop_end':N+1}))), ['for-owner-duration'])\ncheck('for-owner-duration regression 1', solve(dict(base, **({'iterator_end':N+1,'loop_end':N+2}))), ['for-owner-duration'])\ncheck('question-error-cleanup regression 0', solve(dict(base, **({'error_exit':True,'body_loans_live':['r']}))), ['question-error-cleanup'])\ncheck('question-error-cleanup regression 1', solve(dict(base, **({'error_exit':True,'body_loans_live':[N]}))), ['question-error-cleanup'])\ncheck('short-circuit-conditional regression 0', solve(dict(base, **({'rhs_evaluated':True,'rhs_enabled':False}))), ['short-circuit-conditional'])\ncheck('short-circuit-conditional regression 1', solve(dict(base, **({'rhs_evaluated':True,'rhs_enabled':False,'loop_end':N,'iterator_end':N}))), ['short-circuit-conditional'])\ncheck('autoref-after-autoderef regression 0', solve(dict(base, **({'autoderef_place':['r','*'],'autoref_place':['r']}))), ['autoref-after-autoderef'])\ncheck('autoref-after-autoderef regression 1', solve(dict(base, **({'autoderef_place':['r','*',N],'autoref_place':['r']}))), ['autoref-after-autoderef'])\ncheck('compound-destination-once regression 0', solve(dict(base, **({'compound_assignment':True,'destination_evaluations':2}))), ['compound-destination-once'])\ncheck('compound-destination-once regression 1', solve(dict(base, **({'compound_assignment':True,'destination_evaluations':N+2}))), ['compound-destination-once'])\ncheck('index-evaluation-order regression 0', solve(dict(base, **({'base_point':N+1,'index_point':N}))), ['index-evaluation-order'])\ncheck('index-evaluation-order regression 1', solve(dict(base, **({'base_point':N+2,'index_point':N+1}))), ['index-evaluation-order'])\ncheck('await-future-owner regression 0', solve(dict(base, **({'future_owner_end':N,'await_resume':N+1}))), ['await-future-owner'])\ncheck('await-future-owner regression 1', solve(dict(base, **({'future_owner_end':N+1,'await_resume':N+2}))), ['await-future-owner'])\ncheck('let-else-binding-scope regression 0', solve(dict(base, **({'else_branch':True,'success_bindings':['x'],'else_uses':['x']}))), ['let-else-binding-scope'])\ncheck('let-else-binding-scope regression 1', solve(dict(base, **({'else_branch':True,'success_bindings':[N],'else_uses':[N]}))), ['let-else-binding-scope'])\ncheck('destructure-stage-rhs regression 0', solve(dict(base, **({'first_write':N,'rhs_end':N+1}))), ['destructure-stage-rhs'])\ncheck('destructure-stage-rhs regression 1', solve(dict(base, **({'first_write':N+1,'rhs_end':N+2}))), ['destructure-stage-rhs'])\ncheck('return-before-cleanup regression 0', solve(dict(base, **({'return_check':N+1,'cleanup_point':N}))), ['return-before-cleanup'])\ncheck('return-before-cleanup regression 1', solve(dict(base, **({'return_check':N+2,'cleanup_point':N+1}))), ['return-before-cleanup'])\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":"4ca401c82bf25646d700d60ab1a3dcaf5512eac04ed3c41b5f04b0ec98570f95","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(d):\n    errors=[]\n    if d['iterator_end']<d['loop_end']: errors.append('for-owner-duration')\n    if d['error_exit'] and bool(d['body_loans_live']): errors.append('question-error-cleanup')\n    if d['rhs_evaluated'] and not d['rhs_enabled']: errors.append('short-circuit-conditional')\n    if d['autoderef_place']!=d['autoref_place']: errors.append('autoref-after-autoderef')\n    if d['compound_assignment'] and d['destination_evaluations']!=1: errors.append('compound-destination-once')\n    if d['base_point']>d['index_point']: errors.append('index-evaluation-order')\n    if d['future_owner_end']<d['await_resume']: errors.append('await-future-owner')\n    if d['else_branch'] and bool(set(d['success_bindings'])&set(d['else_uses'])): errors.append('let-else-binding-scope')\n    if False: errors.append('destructure-stage-rhs')\n    if d['return_check']>d['cleanup_point']: errors.append('return-before-cleanup')\n    return errors\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nbase={'iterator_end': 0, 'loop_end': 0, 'error_exit': False, 'body_loans_live': [], 'rhs_evaluated': False, 'rhs_enabled': True, 'autoderef_place': [], 'autoref_place': [], 'destination_evaluations': 0, 'compound_assignment': False, 'base_point': 0, 'index_point': 0, 'future_owner_end': 0, 'await_resume': 0, 'else_branch': False, 'success_bindings': [], 'else_uses': [], 'rhs_end': 0, 'first_write': 0, 'return_check': 0, 'cleanup_point': 0}\ncheck('well formed empty obligations',solve(base),[])\ncheck('for-owner-duration regression 0', solve(dict(base, **({'iterator_end':N,'loop_end':N+1}))), ['for-owner-duration'])\ncheck('for-owner-duration regression 1', solve(dict(base, **({'iterator_end':N+1,'loop_end':N+2}))), ['for-owner-duration'])\ncheck('question-error-cleanup regression 0', solve(dict(base, **({'error_exit':True,'body_loans_live':['r']}))), ['question-error-cleanup'])\ncheck('question-error-cleanup regression 1', solve(dict(base, **({'error_exit':True,'body_loans_live':[N]}))), ['question-error-cleanup'])\ncheck('short-circuit-conditional regression 0', solve(dict(base, **({'rhs_evaluated':True,'rhs_enabled':False}))), ['short-circuit-conditional'])\ncheck('short-circuit-conditional regression 1', solve(dict(base, **({'rhs_evaluated':True,'rhs_enabled':False,'loop_end':N,'iterator_end':N}))), ['short-circuit-conditional'])\ncheck('autoref-after-autoderef regression 0', solve(dict(base, **({'autoderef_place':['r','*'],'autoref_place':['r']}))), ['autoref-after-autoderef'])\ncheck('autoref-after-autoderef regression 1', solve(dict(base, **({'autoderef_place':['r','*',N],'autoref_place':['r']}))), ['autoref-after-autoderef'])\ncheck('compound-destination-once regression 0', solve(dict(base, **({'compound_assignment':True,'destination_evaluations':2}))), ['compound-destination-once'])\ncheck('compound-destination-once regression 1', solve(dict(base, **({'compound_assignment':True,'destination_evaluations':N+2}))), ['compound-destination-once'])\ncheck('index-evaluation-order regression 0', solve(dict(base, **({'base_point':N+1,'index_point':N}))), ['index-evaluation-order'])\ncheck('index-evaluation-order regression 1', solve(dict(base, **({'base_point':N+2,'index_point':N+1}))), ['index-evaluation-order'])\ncheck('await-future-owner regression 0', solve(dict(base, **({'future_owner_end':N,'await_resume':N+1}))), ['await-future-owner'])\ncheck('await-future-owner regression 1', solve(dict(base, **({'future_owner_end':N+1,'await_resume':N+2}))), ['await-future-owner'])\ncheck('let-else-binding-scope regression 0', solve(dict(base, **({'else_branch':True,'success_bindings':['x'],'else_uses':['x']}))), ['let-else-binding-scope'])\ncheck('let-else-binding-scope regression 1', solve(dict(base, **({'else_branch':True,'success_bindings':[N],'else_uses':[N]}))), ['let-else-binding-scope'])\ncheck('destructure-stage-rhs regression 0', solve(dict(base, **({'first_write':N,'rhs_end':N+1}))), ['destructure-stage-rhs'])\ncheck('destructure-stage-rhs regression 1', solve(dict(base, **({'first_write':N+1,'rhs_end':N+2}))), ['destructure-stage-rhs'])\ncheck('return-before-cleanup regression 0', solve(dict(base, **({'return_check':N+1,'cleanup_point':N}))), ['return-before-cleanup'])\ncheck('return-before-cleanup regression 1', solve(dict(base, **({'return_check':N+2,'cleanup_point':N+1}))), ['return-before-cleanup'])\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":"09dc5fdb4793dc667f959484cdda651ff06eed2eaa40c9d8161085b705f30929","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(d):\n    errors=[]\n    if d['iterator_end']<d['loop_end']: errors.append('for-owner-duration')\n    if d['error_exit'] and bool(d['body_loans_live']): errors.append('question-error-cleanup')\n    if d['rhs_evaluated'] and not d['rhs_enabled']: errors.append('short-circuit-conditional')\n    if d['autoderef_place']!=d['autoref_place']: errors.append('autoref-after-autoderef')\n    if d['compound_assignment'] and d['destination_evaluations']!=1: errors.append('compound-destination-once')\n    if d['base_point']>d['index_point']: errors.append('index-evaluation-order')\n    if d['future_owner_end']<d['await_resume']: errors.append('await-future-owner')\n    if d['else_branch'] and bool(set(d['success_bindings'])&set(d['else_uses'])): errors.append('let-else-binding-scope')\n    if d['first_write']<d['rhs_end']: errors.append('destructure-stage-rhs')\n    if d['return_check']>d['cleanup_point']: errors.append('return-before-cleanup')\n    return errors\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nbase={'iterator_end': 0, 'loop_end': 0, 'error_exit': False, 'body_loans_live': [], 'rhs_evaluated': False, 'rhs_enabled': True, 'autoderef_place': [], 'autoref_place': [], 'destination_evaluations': 0, 'compound_assignment': False, 'base_point': 0, 'index_point': 0, 'future_owner_end': 0, 'await_resume': 0, 'else_branch': False, 'success_bindings': [], 'else_uses': [], 'rhs_end': 0, 'first_write': 0, 'return_check': 0, 'cleanup_point': 0}\ncheck('well formed empty obligations',solve(base),[])\ncheck('for-owner-duration regression 0', solve(dict(base, **({'iterator_end':N,'loop_end':N+1}))), ['for-owner-duration'])\ncheck('for-owner-duration regression 1', solve(dict(base, **({'iterator_end':N+1,'loop_end':N+2}))), ['for-owner-duration'])\ncheck('question-error-cleanup regression 0', solve(dict(base, **({'error_exit':True,'body_loans_live':['r']}))), ['question-error-cleanup'])\ncheck('question-error-cleanup regression 1', solve(dict(base, **({'error_exit':True,'body_loans_live':[N]}))), ['question-error-cleanup'])\ncheck('short-circuit-conditional regression 0', solve(dict(base, **({'rhs_evaluated':True,'rhs_enabled':False}))), ['short-circuit-conditional'])\ncheck('short-circuit-conditional regression 1', solve(dict(base, **({'rhs_evaluated':True,'rhs_enabled':False,'loop_end':N,'iterator_end':N}))), ['short-circuit-conditional'])\ncheck('autoref-after-autoderef regression 0', solve(dict(base, **({'autoderef_place':['r','*'],'autoref_place':['r']}))), ['autoref-after-autoderef'])\ncheck('autoref-after-autoderef regression 1', solve(dict(base, **({'autoderef_place':['r','*',N],'autoref_place':['r']}))), ['autoref-after-autoderef'])\ncheck('compound-destination-once regression 0', solve(dict(base, **({'compound_assignment':True,'destination_evaluations':2}))), ['compound-destination-once'])\ncheck('compound-destination-once regression 1', solve(dict(base, **({'compound_assignment':True,'destination_evaluations':N+2}))), ['compound-destination-once'])\ncheck('index-evaluation-order regression 0', solve(dict(base, **({'base_point':N+1,'index_point':N}))), ['index-evaluation-order'])\ncheck('index-evaluation-order regression 1', solve(dict(base, **({'base_point':N+2,'index_point':N+1}))), ['index-evaluation-order'])\ncheck('await-future-owner regression 0', solve(dict(base, **({'future_owner_end':N,'await_resume':N+1}))), ['await-future-owner'])\ncheck('await-future-owner regression 1', solve(dict(base, **({'future_owner_end':N+1,'await_resume':N+2}))), ['await-future-owner'])\ncheck('let-else-binding-scope regression 0', solve(dict(base, **({'else_branch':True,'success_bindings':['x'],'else_uses':['x']}))), ['let-else-binding-scope'])\ncheck('let-else-binding-scope regression 1', solve(dict(base, **({'else_branch':True,'success_bindings':[N],'else_uses':[N]}))), ['let-else-binding-scope'])\ncheck('destructure-stage-rhs regression 0', solve(dict(base, **({'first_write':N,'rhs_end':N+1}))), ['destructure-stage-rhs'])\ncheck('destructure-stage-rhs regression 1', solve(dict(base, **({'first_write':N+1,'rhs_end':N+2}))), ['destructure-stage-rhs'])\ncheck('return-before-cleanup regression 0', solve(dict(base, **({'return_check':N+1,'cleanup_point':N}))), ['return-before-cleanup'])\ncheck('return-before-cleanup regression 1', solve(dict(base, **({'return_check':N+2,'cleanup_point':N+1}))), ['return-before-cleanup'])\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":"The explicitly stated toy language is the complete scope; this is not a production compiler or a claim about Rust semantics. This reproducer isolates one failure mechanism. Results cover the supplied fixtures. Variants within a family share a test contract and should remain grouped when constructing evaluation splits. Related mechanisms with a shared evaluation_group must also remain together; these controlled models are not independent production incidents.","method":"Deterministic executable model with adversarial boundary fixtures.","provenance":{"created_by":"Failure Map","dependencies":"Python standard library","family":"s3-borrow-checking-desugared-borrow-control-destructure-stage-rhs","generated_at":"2026-09-29T14:44:11.158011+00:00","license":"CC0-1.0","python":"3.12.14","seed":1,"split":"open-access"},"relevance":"A finite offline static-analysis model of ownership and borrowing; it does not execute the analyzed program.","repair":"Apply the specified transfer or inference rule at this site: if d['first_write']<d['rhs_end']: errors.append('destructure-stage-rhs').","root_cause":"The static analyzer mishandles destructure stage rhs: destructuring assignment overwrites an owner before rhs borrow evaluation completes.","sha256":"b82141f96e486cd4e6597e07946af9796f2a180af60da9b9aa28f7ef64e60d35","title":"Destructuring assignment overwrites an owner before RHS borrow evaluation completes · case 01","variant":1,"variant_policy":"Five numbered records share a model and may reuse boundary fixtures.","verification":{"attempt":{"elapsed_ms":45.047,"exit_code":1,"observations":[{"actual":[],"check":"well formed empty obligations","expected":[],"passed":true},{"actual":["for-owner-duration"],"check":"for-owner-duration regression 0","expected":["for-owner-duration"],"passed":true},{"actual":["for-owner-duration"],"check":"for-owner-duration regression 1","expected":["for-owner-duration"],"passed":true},{"actual":["question-error-cleanup"],"check":"question-error-cleanup regression 0","expected":["question-error-cleanup"],"passed":true},{"actual":["question-error-cleanup"],"check":"question-error-cleanup regression 1","expected":["question-error-cleanup"],"passed":true},{"actual":["short-circuit-conditional"],"check":"short-circuit-conditional regression 0","expected":["short-circuit-conditional"],"passed":true},{"actual":["short-circuit-conditional"],"check":"short-circuit-conditional regression 1","expected":["short-circuit-conditional"],"passed":true},{"actual":["autoref-after-autoderef"],"check":"autoref-after-autoderef regression 0","expected":["autoref-after-autoderef"],"passed":true},{"actual":["autoref-after-autoderef"],"check":"autoref-after-autoderef regression 1","expected":["autoref-after-autoderef"],"passed":true},{"actual":["compound-destination-once"],"check":"compound-destination-once regression 0","expected":["compound-destination-once"],"passed":true},{"actual":["compound-destination-once"],"check":"compound-destination-once regression 1","expected":["compound-destination-once"],"passed":true},{"actual":["index-evaluation-order"],"check":"index-evaluation-order regression 0","expected":["index-evaluation-order"],"passed":true},{"actual":["index-evaluation-order"],"check":"index-evaluation-order regression 1","expected":["index-evaluation-order"],"passed":true},{"actual":["await-future-owner"],"check":"await-future-owner regression 0","expected":["await-future-owner"],"passed":true},{"actual":["await-future-owner"],"check":"await-future-owner regression 1","expected":["await-future-owner"],"passed":true},{"actual":["let-else-binding-scope"],"check":"let-else-binding-scope regression 0","expected":["let-else-binding-scope"],"passed":true},{"actual":["let-else-binding-scope"],"check":"let-else-binding-scope regression 1","expected":["let-else-binding-scope"],"passed":true},{"actual":[],"check":"destructure-stage-rhs regression 0","expected":["destructure-stage-rhs"],"passed":false},{"actual":[],"check":"destructure-stage-rhs regression 1","expected":["destructure-stage-rhs"],"passed":false},{"actual":["return-before-cleanup"],"check":"return-before-cleanup regression 0","expected":["return-before-cleanup"],"passed":true},{"actual":["return-before-cleanup"],"check":"return-before-cleanup regression 1","expected":["return-before-cleanup"],"passed":true}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"well formed empty obligations\", \"actual\": [], \"expected\": [], \"passed\": true}, {\"check\": \"for-owner-duration regression 0\", \"actual\": [\"for-owner-duration\"], \"expected\": [\"for-owner-duration\"], \"passed\": true}, {\"check\": \"for-owner-duration regression 1\", \"actual\": [\"for-owner-duration\"], \"expected\": [\"for-owner-duration\"], \"passed\": true}, {\"check\": \"question-error-cleanup regression 0\", \"actual\": [\"question-error-cleanup\"], \"expected\": [\"question-error-cleanup\"], \"passed\": true}, {\"check\": \"question-error-cleanup regression 1\", \"actual\": [\"question-error-cleanup\"], \"expected\": [\"question-error-cleanup\"], \"passed\": true}, {\"check\": \"short-circuit-conditional regression 0\", \"actual\": [\"short-circuit-conditional\"], \"expected\": [\"short-circuit-conditional\"], \"passed\": true}, {\"check\": \"short-circuit-conditional regression 1\", \"actual\": [\"short-circuit-conditional\"], \"expected\": [\"short-circuit-conditional\"], \"passed\": true}, {\"check\": \"autoref-after-autoderef regression 0\", \"actual\": [\"autoref-after-autoderef\"], \"expected\": [\"autoref-after-autoderef\"], \"passed\": true}, {\"check\": \"autoref-after-autoderef regression 1\", \"actual\": [\"autoref-after-autoderef\"], \"expected\": [\"autoref-after-autoderef\"], \"passed\": true}, {\"check\": \"compound-destination-once regression 0\", \"actual\": [\"compound-destination-once\"], \"expected\": [\"compound-destination-once\"], \"passed\": true}, {\"check\": \"compound-destination-once regression 1\", \"actual\": [\"compound-destination-once\"], \"expected\": [\"compound-destination-once\"], \"passed\": true}, {\"check\": \"index-evaluation-order regression 0\", \"actual\": [\"index-evaluation-order\"], \"expected\": [\"index-evaluation-order\"], \"passed\": true}, {\"check\": \"index-evaluation-order regression 1\", \"actual\": [\"index-evaluation-order\"], \"expected\": [\"index-evaluation-order\"], \"passed\": true}, {\"check\": \"await-future-owner regression 0\", \"actual\": [\"await-future-owner\"], \"expected\": [\"await-future-owner\"], \"passed\": true}, {\"check\": \"await-future-owner regression 1\", \"actual\": [\"await-future-owner\"], \"expected\": [\"await-future-owner\"], \"passed\": true}, {\"check\": \"let-else-binding-scope regression 0\", \"actual\": [\"let-else-binding-scope\"], \"expected\": [\"let-else-binding-scope\"], \"passed\": true}, {\"check\": \"let-else-binding-scope regression 1\", \"actual\": [\"let-else-binding-scope\"], \"expected\": [\"let-else-binding-scope\"], \"passed\": true}, {\"check\": \"destructure-stage-rhs regression 0\", \"actual\": [], \"expected\": [\"destructure-stage-rhs\"], \"passed\": false}, {\"check\": \"destructure-stage-rhs regression 1\", \"actual\": [], \"expected\": [\"destructure-stage-rhs\"], \"passed\": false}, {\"check\": \"return-before-cleanup regression 0\", \"actual\": [\"return-before-cleanup\"], \"expected\": [\"return-before-cleanup\"], \"passed\": true}, {\"check\": \"return-before-cleanup regression 1\", \"actual\": [\"return-before-cleanup\"], \"expected\": [\"return-before-cleanup\"], \"passed\": true}], \"passed\": false}\n"},"broken":{"elapsed_ms":44.198,"exit_code":1,"observations":[{"actual":[],"check":"well formed empty obligations","expected":[],"passed":true},{"actual":["for-owner-duration"],"check":"for-owner-duration regression 0","expected":["for-owner-duration"],"passed":true},{"actual":["for-owner-duration"],"check":"for-owner-duration regression 1","expected":["for-owner-duration"],"passed":true},{"actual":["question-error-cleanup"],"check":"question-error-cleanup regression 0","expected":["question-error-cleanup"],"passed":true},{"actual":["question-error-cleanup"],"check":"question-error-cleanup regression 1","expected":["question-error-cleanup"],"passed":true},{"actual":["short-circuit-conditional"],"check":"short-circuit-conditional regression 0","expected":["short-circuit-conditional"],"passed":true},{"actual":["short-circuit-conditional"],"check":"short-circuit-conditional regression 1","expected":["short-circuit-conditional"],"passed":true},{"actual":["autoref-after-autoderef"],"check":"autoref-after-autoderef regression 0","expected":["autoref-after-autoderef"],"passed":true},{"actual":["autoref-after-autoderef"],"check":"autoref-after-autoderef regression 1","expected":["autoref-after-autoderef"],"passed":true},{"actual":["compound-destination-once"],"check":"compound-destination-once regression 0","expected":["compound-destination-once"],"passed":true},{"actual":["compound-destination-once"],"check":"compound-destination-once regression 1","expected":["compound-destination-once"],"passed":true},{"actual":["index-evaluation-order"],"check":"index-evaluation-order regression 0","expected":["index-evaluation-order"],"passed":true},{"actual":["index-evaluation-order"],"check":"index-evaluation-order regression 1","expected":["index-evaluation-order"],"passed":true},{"actual":["await-future-owner"],"check":"await-future-owner regression 0","expected":["await-future-owner"],"passed":true},{"actual":["await-future-owner"],"check":"await-future-owner regression 1","expected":["await-future-owner"],"passed":true},{"actual":["let-else-binding-scope"],"check":"let-else-binding-scope regression 0","expected":["let-else-binding-scope"],"passed":true},{"actual":["let-else-binding-scope"],"check":"let-else-binding-scope regression 1","expected":["let-else-binding-scope"],"passed":true},{"actual":[],"check":"destructure-stage-rhs regression 0","expected":["destructure-stage-rhs"],"passed":false},{"actual":[],"check":"destructure-stage-rhs regression 1","expected":["destructure-stage-rhs"],"passed":false},{"actual":["return-before-cleanup"],"check":"return-before-cleanup regression 0","expected":["return-before-cleanup"],"passed":true},{"actual":["return-before-cleanup"],"check":"return-before-cleanup regression 1","expected":["return-before-cleanup"],"passed":true}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"well formed empty obligations\", \"actual\": [], \"expected\": [], \"passed\": true}, {\"check\": \"for-owner-duration regression 0\", \"actual\": [\"for-owner-duration\"], \"expected\": [\"for-owner-duration\"], \"passed\": true}, {\"check\": \"for-owner-duration regression 1\", \"actual\": [\"for-owner-duration\"], \"expected\": [\"for-owner-duration\"], \"passed\": true}, {\"check\": \"question-error-cleanup regression 0\", \"actual\": [\"question-error-cleanup\"], \"expected\": [\"question-error-cleanup\"], \"passed\": true}, {\"check\": \"question-error-cleanup regression 1\", \"actual\": [\"question-error-cleanup\"], \"expected\": [\"question-error-cleanup\"], \"passed\": true}, {\"check\": \"short-circuit-conditional regression 0\", \"actual\": [\"short-circuit-conditional\"], \"expected\": [\"short-circuit-conditional\"], \"passed\": true}, {\"check\": \"short-circuit-conditional regression 1\", \"actual\": [\"short-circuit-conditional\"], \"expected\": [\"short-circuit-conditional\"], \"passed\": true}, {\"check\": \"autoref-after-autoderef regression 0\", \"actual\": [\"autoref-after-autoderef\"], \"expected\": [\"autoref-after-autoderef\"], \"passed\": true}, {\"check\": \"autoref-after-autoderef regression 1\", \"actual\": [\"autoref-after-autoderef\"], \"expected\": [\"autoref-after-autoderef\"], \"passed\": true}, {\"check\": \"compound-destination-once regression 0\", \"actual\": [\"compound-destination-once\"], \"expected\": [\"compound-destination-once\"], \"passed\": true}, {\"check\": \"compound-destination-once regression 1\", \"actual\": [\"compound-destination-once\"], \"expected\": [\"compound-destination-once\"], \"passed\": true}, {\"check\": \"index-evaluation-order regression 0\", \"actual\": [\"index-evaluation-order\"], \"expected\": [\"index-evaluation-order\"], \"passed\": true}, {\"check\": \"index-evaluation-order regression 1\", \"actual\": [\"index-evaluation-order\"], \"expected\": [\"index-evaluation-order\"], \"passed\": true}, {\"check\": \"await-future-owner regression 0\", \"actual\": [\"await-future-owner\"], \"expected\": [\"await-future-owner\"], \"passed\": true}, {\"check\": \"await-future-owner regression 1\", \"actual\": [\"await-future-owner\"], \"expected\": [\"await-future-owner\"], \"passed\": true}, {\"check\": \"let-else-binding-scope regression 0\", \"actual\": [\"let-else-binding-scope\"], \"expected\": [\"let-else-binding-scope\"], \"passed\": true}, {\"check\": \"let-else-binding-scope regression 1\", \"actual\": [\"let-else-binding-scope\"], \"expected\": [\"let-else-binding-scope\"], \"passed\": true}, {\"check\": \"destructure-stage-rhs regression 0\", \"actual\": [], \"expected\": [\"destructure-stage-rhs\"], \"passed\": false}, {\"check\": \"destructure-stage-rhs regression 1\", \"actual\": [], \"expected\": [\"destructure-stage-rhs\"], \"passed\": false}, {\"check\": \"return-before-cleanup regression 0\", \"actual\": [\"return-before-cleanup\"], \"expected\": [\"return-before-cleanup\"], \"passed\": true}, {\"check\": \"return-before-cleanup regression 1\", \"actual\": [\"return-before-cleanup\"], \"expected\": [\"return-before-cleanup\"], \"passed\": true}], \"passed\": false}\n"},"fixed":{"elapsed_ms":45.286,"exit_code":0,"observations":[{"actual":[],"check":"well formed empty obligations","expected":[],"passed":true},{"actual":["for-owner-duration"],"check":"for-owner-duration regression 0","expected":["for-owner-duration"],"passed":true},{"actual":["for-owner-duration"],"check":"for-owner-duration regression 1","expected":["for-owner-duration"],"passed":true},{"actual":["question-error-cleanup"],"check":"question-error-cleanup regression 0","expected":["question-error-cleanup"],"passed":true},{"actual":["question-error-cleanup"],"check":"question-error-cleanup regression 1","expected":["question-error-cleanup"],"passed":true},{"actual":["short-circuit-conditional"],"check":"short-circuit-conditional regression 0","expected":["short-circuit-conditional"],"passed":true},{"actual":["short-circuit-conditional"],"check":"short-circuit-conditional regression 1","expected":["short-circuit-conditional"],"passed":true},{"actual":["autoref-after-autoderef"],"check":"autoref-after-autoderef regression 0","expected":["autoref-after-autoderef"],"passed":true},{"actual":["autoref-after-autoderef"],"check":"autoref-after-autoderef regression 1","expected":["autoref-after-autoderef"],"passed":true},{"actual":["compound-destination-once"],"check":"compound-destination-once regression 0","expected":["compound-destination-once"],"passed":true},{"actual":["compound-destination-once"],"check":"compound-destination-once regression 1","expected":["compound-destination-once"],"passed":true},{"actual":["index-evaluation-order"],"check":"index-evaluation-order regression 0","expected":["index-evaluation-order"],"passed":true},{"actual":["index-evaluation-order"],"check":"index-evaluation-order regression 1","expected":["index-evaluation-order"],"passed":true},{"actual":["await-future-owner"],"check":"await-future-owner regression 0","expected":["await-future-owner"],"passed":true},{"actual":["await-future-owner"],"check":"await-future-owner regression 1","expected":["await-future-owner"],"passed":true},{"actual":["let-else-binding-scope"],"check":"let-else-binding-scope regression 0","expected":["let-else-binding-scope"],"passed":true},{"actual":["let-else-binding-scope"],"check":"let-else-binding-scope regression 1","expected":["let-else-binding-scope"],"passed":true},{"actual":["destructure-stage-rhs"],"check":"destructure-stage-rhs regression 0","expected":["destructure-stage-rhs"],"passed":true},{"actual":["destructure-stage-rhs"],"check":"destructure-stage-rhs regression 1","expected":["destructure-stage-rhs"],"passed":true},{"actual":["return-before-cleanup"],"check":"return-before-cleanup regression 0","expected":["return-before-cleanup"],"passed":true},{"actual":["return-before-cleanup"],"check":"return-before-cleanup regression 1","expected":["return-before-cleanup"],"passed":true}],"passed":true,"stderr":"","stdout":"{\"observations\": [{\"check\": \"well formed empty obligations\", \"actual\": [], \"expected\": [], \"passed\": true}, {\"check\": \"for-owner-duration regression 0\", \"actual\": [\"for-owner-duration\"], \"expected\": [\"for-owner-duration\"], \"passed\": true}, {\"check\": \"for-owner-duration regression 1\", \"actual\": [\"for-owner-duration\"], \"expected\": [\"for-owner-duration\"], \"passed\": true}, {\"check\": \"question-error-cleanup regression 0\", \"actual\": [\"question-error-cleanup\"], \"expected\": [\"question-error-cleanup\"], \"passed\": true}, {\"check\": \"question-error-cleanup regression 1\", \"actual\": [\"question-error-cleanup\"], \"expected\": [\"question-error-cleanup\"], \"passed\": true}, {\"check\": \"short-circuit-conditional regression 0\", \"actual\": [\"short-circuit-conditional\"], \"expected\": [\"short-circuit-conditional\"], \"passed\": true}, {\"check\": \"short-circuit-conditional regression 1\", \"actual\": [\"short-circuit-conditional\"], \"expected\": [\"short-circuit-conditional\"], \"passed\": true}, {\"check\": \"autoref-after-autoderef regression 0\", \"actual\": [\"autoref-after-autoderef\"], \"expected\": [\"autoref-after-autoderef\"], \"passed\": true}, {\"check\": \"autoref-after-autoderef regression 1\", \"actual\": [\"autoref-after-autoderef\"], \"expected\": [\"autoref-after-autoderef\"], \"passed\": true}, {\"check\": \"compound-destination-once regression 0\", \"actual\": [\"compound-destination-once\"], \"expected\": [\"compound-destination-once\"], \"passed\": true}, {\"check\": \"compound-destination-once regression 1\", \"actual\": [\"compound-destination-once\"], \"expected\": [\"compound-destination-once\"], \"passed\": true}, {\"check\": \"index-evaluation-order regression 0\", \"actual\": [\"index-evaluation-order\"], \"expected\": [\"index-evaluation-order\"], \"passed\": true}, {\"check\": \"index-evaluation-order regression 1\", \"actual\": [\"index-evaluation-order\"], \"expected\": [\"index-evaluation-order\"], \"passed\": true}, {\"check\": \"await-future-owner regression 0\", \"actual\": [\"await-future-owner\"], \"expected\": [\"await-future-owner\"], \"passed\": true}, {\"check\": \"await-future-owner regression 1\", \"actual\": [\"await-future-owner\"], \"expected\": [\"await-future-owner\"], \"passed\": true}, {\"check\": \"let-else-binding-scope regression 0\", \"actual\": [\"let-else-binding-scope\"], \"expected\": [\"let-else-binding-scope\"], \"passed\": true}, {\"check\": \"let-else-binding-scope regression 1\", \"actual\": [\"let-else-binding-scope\"], \"expected\": [\"let-else-binding-scope\"], \"passed\": true}, {\"check\": \"destructure-stage-rhs regression 0\", \"actual\": [\"destructure-stage-rhs\"], \"expected\": [\"destructure-stage-rhs\"], \"passed\": true}, {\"check\": \"destructure-stage-rhs regression 1\", \"actual\": [\"destructure-stage-rhs\"], \"expected\": [\"destructure-stage-rhs\"], \"passed\": true}, {\"check\": \"return-before-cleanup regression 0\", \"actual\": [\"return-before-cleanup\"], \"expected\": [\"return-before-cleanup\"], \"passed\": true}, {\"check\": \"return-before-cleanup regression 1\", \"actual\": [\"return-before-cleanup\"], \"expected\": [\"return-before-cleanup\"], \"passed\": true}], \"passed\": true}\n"}},"verified":true,"visibility":"public"}