Skip to content

Make native attachment ownership and cleanup explicit - #29

Merged
viralcodex merged 1 commit into
mainfrom
refactor/native-attachment-lifecycle
Nov 5, 2026
Merged

viralcodex merged 1 commit into
mainfrom
refactor/native-attachment-lifecycle

Conversation

@viralcodex

Copy link
Copy Markdown
Owner

Changes

  • Store reservation, attachment, retirement, rollback, and failed cleanup state in authoritative ownership records.
  • Make capture startup/recovery/shutdown explicit and reject helpers that exit between readiness and publication.
  • Propagate cancellation to native commands and discovery; keep shared prerequisite installation owned by the runtime.
  • Retry only unfinished cleanup and preserve the original shutdown intent.
  • Align native and RPC deadlines, and preserve execution uncertainty in tool failures.
  • Consolidate old close/reopen tests and rebuild the shipped bundles.

Verification

  • Exact PR tree: release:check passes on Node 24.13.0.
  • 287 tests pass, one existing Bun-only skip.
  • Two fresh helper installs, native module loading, offline reuse, and stale-cache rejection pass.

Sequence

2 of 3. Builds on merged #28; desktop connection and watcher recovery follow.

@viralcodex

Copy link
Copy Markdown
Owner Author

Reviewed reservation/physical-alias ownership, failed close and rollback quarantine, preserved shutdown intent, shared-task cancellation, disposal retries, and the readiness-to-publication exit race. Exact-tree release validation passes locally and in Linux CI: https://github.com/viralcodex/opencode-demul/actions/runs/42028772281. Fresh helper installation and offline-cache checks also pass on macOS arm64.

@viralcodex
viralcodex merged commit 3601e68 into main Nov 5, 2026
10 of 11 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant