fix(passives): retain exact native cleanup ownership #14

Merged
dmg merged 1 commits from us-098-retain-passive-cleanup-after-native-cancellation into main 2026-10-08 17:06:03 +00:00
Owner

US-098 / FS-SEC-15 — retain exact native passive cleanup ownership

  • Preserve the inherited two-file candidate and failure evidence; rebase onto main 3a184d52981b40279eacdf47e61331d3a72cfb05 before correction.
  • Keep Speed I / Low-Light Vision cleanup accountable through native cancellation, final death/exit and legitimate rescue, preserving exact holder/session/application identities and unrelated effects.
  • Read pinned Purpur ticking and native instance identity; bounded dispatch-stack inspection prevents stale queued by-type requests and reentrant consumption of unfinished native decisions. Never override native maps, flags, cancellation, tiers or replacement policies.
  • No potion-event listener is needed. Stop the owner timer on close; an unsafe close may make one post-dispatch attempt while enabled, not an endless shutdown retry. Unconfirmed shutdown ownership remains unresolved without false end evidence. No cross-restart ownership or forced recovery.
  • Supply DEX14/WIS12 prerequisites and explicit native-identity fixture ports. Negative-amplifier prior-snapshot cases remain supplemental API logic, not reachable native tier evidence.

Verification

  • Four meaningful new RED cases: queued removals deleted stronger/identical foreign layers; reentrant sweep/close claimed two/one effect ends before final cancellation. All four now pass; inherited failures remain retained.
  • Initial owner boundary suite: 34 native tests, including 23 US-098 cases, passed.
  • Final affected verification: 165 native /463 API /55 tool tests, including all 24 US-098 cases, passed.
  • Full ./gradlew clean check jar: 2,433 tests (1,915 native /463 API /55 tools), zero failures/errors/skips, 17m22s.
  • All 24 US-098 cases have zero SEVERE. The 649 legacy native first-cause signatures exactly match the preceding verified baseline, without suppression; no blanket diagnostic/security clearance.
  • Frozen tested tree: 0de32c9ddee5f47c71a0a03c108f736eeaf2d0ce; all 658 source and 110 runtime-JAR hashes unchanged.
  • Evidence: /tmp/us098-resumption/; canonical story: somc-okf/user-stories/purpur-fantasy-stick/us-098-retain-passive-cleanup-after-native-cancellation.md.

No balance/configuration, deadlines, harness/runner, CI/tooling, GitOps or deployment changes. Final-plugin review and artifact/delivery gates remain separate. Required current-head PR checks and fetched tested/merged-tree equality still apply.

Tested head: 0acf90909b8a1c1c21bfc5988322a2451900f17a.

## US-098 / FS-SEC-15 — retain exact native passive cleanup ownership - Preserve the inherited two-file candidate and failure evidence; rebase onto main `3a184d52981b40279eacdf47e61331d3a72cfb05` before correction. - Keep Speed I / Low-Light Vision cleanup accountable through native cancellation, final death/exit and legitimate rescue, preserving exact holder/session/application identities and unrelated effects. - Read pinned Purpur ticking and native instance identity; bounded dispatch-stack inspection prevents stale queued by-type requests and reentrant consumption of unfinished native decisions. Never override native maps, flags, cancellation, tiers or replacement policies. - No potion-event listener is needed. Stop the owner timer on close; an unsafe close may make one post-dispatch attempt while enabled, not an endless shutdown retry. Unconfirmed shutdown ownership remains unresolved without false end evidence. No cross-restart ownership or forced recovery. - Supply DEX14/WIS12 prerequisites and explicit native-identity fixture ports. Negative-amplifier prior-snapshot cases remain supplemental API logic, not reachable native tier evidence. ## Verification - Four meaningful new RED cases: queued removals deleted stronger/identical foreign layers; reentrant sweep/close claimed two/one effect ends before final cancellation. All four now pass; inherited failures remain retained. - Initial owner boundary suite: 34 native tests, including 23 US-098 cases, passed. - Final affected verification: 165 native /463 API /55 tool tests, including all 24 US-098 cases, passed. - Full `./gradlew clean check jar`: **2,433 tests** (1,915 native /463 API /55 tools), zero failures/errors/skips, **17m22s**. - All 24 US-098 cases have zero SEVERE. The 649 legacy native first-cause signatures exactly match the preceding verified baseline, without suppression; no blanket diagnostic/security clearance. - Frozen tested tree: `0de32c9ddee5f47c71a0a03c108f736eeaf2d0ce`; all 658 source and 110 runtime-JAR hashes unchanged. - Evidence: `/tmp/us098-resumption/`; canonical story: `somc-okf/user-stories/purpur-fantasy-stick/us-098-retain-passive-cleanup-after-native-cancellation.md`. No balance/configuration, deadlines, harness/runner, CI/tooling, GitOps or deployment changes. Final-plugin review and artifact/delivery gates remain separate. Required current-head PR checks and fetched tested/merged-tree equality still apply. Tested head: `0acf90909b8a1c1c21bfc5988322a2451900f17a`.
dmg added 1 commit 2026-10-08 17:03:53 +00:00
fix(passives): retain exact native cleanup ownership
CI / build (push) Successful in 54s
CI / build (pull_request) Successful in 1m9s
0acf90909b
dmg added 1 commit 2026-10-08 17:03:53 +00:00
fix(passives): retain exact native cleanup ownership
CI / build (push) Successful in 54s
CI / build (pull_request) Successful in 1m9s
0acf90909b
dmg merged commit 01e6ac6e5a into main 2026-10-08 17:06:03 +00:00
Sign in to join this conversation.
No Reviewers
No labels
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: dmg/purpur-fantasy-stick#14