Skip to content

Commit 7310f78

Browse files
authored
Merge pull request #386 from PhysShell/feat/own053-orphaned-awaitable
feat: add OWN053 orphaned-awaitable advisory
2 parents 464de8d + 380b098 commit 7310f78

56 files changed

Lines changed: 2266 additions & 77 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
P-OWN053-DOOR: orphaned_awaitables[] bound at both OwnIR strict doors (after the OWN053 promotion;
2+
prereg frozen in Own.NET-paperwork before code). Produced by the PRODUCTION build of this tree, from
3+
the repository root.
4+
5+
promo-u.door.py.txt / promo-u.door.rust.txt
6+
../promotion/promo-u.facts.json through both CLIs, whose path IS the strict door: accepted,
7+
5 advisory OWN053, 0 findings, exit 0, Python == Rust -- the rule and the message did not move.
8+
neg-garbage.facts.json an entry whose local is a list, callee an object, result_type a number
9+
(the exact shape the unbound list rendered as a real OWN053)
10+
neg-line_above.facts.json an entry with line 2147483648 (above the §4.2 domain; the unbound
11+
list degraded it to 0)
12+
neg-family.facts.json an entry with family "C_whatever" (outside the closed set)
13+
neg-*.py.txt / neg-*.rust.txt
14+
both CLIs refuse each document with exit code 2 (ordinary bad input) naming the same rule;
15+
the message text differs by language, as the cp1 ledger allows (verdict + category are the
16+
cross-language contract, tests/fixtures/ownir_validation.json section orphaned_awaitables).
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
{"ownir_version": 0, "module": "M", "orphaned_awaitables": [{"local": "tx", "callee": "T.M/0", "file": "Q.cs", "line": 1, "family": "C_whatever"}]}
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
corpus/ownership-lab/h29/door/neg-family.facts.json: error: orphaned awaitable 'family' must be one of ['A_owned_result', 'B_protocol_lifecycle'], got 'C_whatever'
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
corpus/ownership-lab/h29/door/neg-family.facts.json: error: orphaned awaitable 'family' must be one of ["A_owned_result", "B_protocol_lifecycle"], got "C_whatever"
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
{"ownir_version": 0, "module": "M", "orphaned_awaitables": [{"local": ["what", "is", "this"], "callee": {"oops": 1}, "file": "Q.cs", "line": 119, "result_type": 12345}]}
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
corpus/ownership-lab/h29/door/neg-garbage.facts.json: error: orphaned awaitable 'local' must be a non-empty string, got ['what', 'is', 'this']
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
corpus/ownership-lab/h29/door/neg-garbage.facts.json: error: orphaned awaitable: 'local' must be a non-empty string
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
{"ownir_version": 0, "module": "M", "orphaned_awaitables": [{"local": "tx", "callee": "T.M/0", "file": "Q.cs", "line": 2147483648}]}
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
corpus/ownership-lab/h29/door/neg-line_above.facts.json: error: orphaned awaitable 'line' must be a source line in [0, 2147483647], got 2147483648 (spec/OwnIR.md §4.2)
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
corpus/ownership-lab/h29/door/neg-line_above.facts.json: error: orphaned awaitable 'line' must be a source line in [0, 2147483647], got 2147483648 (spec/OwnIR.md §4.2)

0 commit comments

Comments
 (0)