Skip to content

refactor(runtime): move project lifecycle to native tasks - #4361

Merged
ScriptedAlchemy merged 20 commits into
masterfrom
copilot/finish-asupersync-runtime-cutover
Oct 22, 2026
Merged

ScriptedAlchemy merged 20 commits into
masterfrom
copilot/finish-asupersync-runtime-cutover

Conversation

Copilot AI commented Oct 19, 2026 •

Copy link
Copy Markdown
Contributor

Project-server lifecycle waits and retirement supervision run through the native runtime, preserving cleanup ownership when a caller abandons its wait. Native deadlines and tracked retirement tasks retain typed cancellation receipts. The obsolete forwarding module is removed, and registered scope-set lookup and CAS admission use the canonical asynchronous SQL reader.

The cold-root journey issues successful CAS, exact readback, and stale-revision requests on native tasks while retaining the fixture's Tokio context for operations that require it. Shutdown is joined before fixture data is removed.

Includes master through 6dbbfa647c, including the LSP process-exit classification repair. The conflicting route-opening logic was already behaviorally equivalent to master; its comments and documentation now use master's version without duplicating that change in this PR.

Validation:

  • On 1a667de855c38f91911fb42371ac62d2b4c541b4, all 57 LSP integration tests passed, including the process-exit classification regression; zero failures, ignored tests, or filtered tests. Bazel invocation a97932c1-3eea-4c1e-b006-64dab9f5b05f forced Rustc and TestRunner remote, disabled local fallback, and disabled test-result caching.
  • Pinned Rust formatting and merge whitespace checks passed.
  • The previous hosted run on e1f6a54 passed 168 of 169 targets. All 939 root unit tests passed, including all three native multi-root journeys; only the now-repaired LSP suite failed. Clippy and the shipped CLI job were cancelled at their two-hour and 90-minute job limits, respectively.

Full current-head hosted CI, including Linux fleet, Clippy, shipped CLI, and aggregate results, must pass before merge.

Refs #3736

@changeset-bot

changeset-bot Bot commented Oct 19, 2026 •

Copy link
Copy Markdown

⚠️ No Changeset found

Latest commit: 1a667de

Merging this PR will not cause a version bump for any packages. If these changes should not result in a new version, you're good to go. If these changes should result in a version bump, you need to add a changeset.

Click here to learn what changesets are, and how to add one.

Click here if you're a maintainer who wants to add a changeset to this PR

Copilot AI linked an issue Oct 19, 2026 that may be closed by this pull request
Copilot AI changed the title [WIP] Finish the native Asupersync runtime cutover Run project-server lifecycle on Asupersync Oct 19, 2026
Copilot AI requested a review from ScriptedAlchemy October 19, 2026 04:15
@ScriptedAlchemy
ScriptedAlchemy force-pushed the copilot/finish-asupersync-runtime-cutover branch from dbde759 to f2db3d7 Compare October 20, 2026 22:41

@ScriptedAlchemy ScriptedAlchemy left a comment

Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Re-reviewed d14005c and cross-referenced #3736, including its recent progress updates. The new delta only reorders an import; no new concrete source defect found in the lifecycle/retirement slice.

I changed the PR body's Fixes #3736 to Refs #3736. This patch completes focused project-server timer/retirement ownership work, but the broad issue still has runtime seams and execution acceptance to track: native_runtime::handle() retains a production process_runtime() fallback in crates/tracedecay-rusqlite-runtime/src/native_runtime.rs:42–43, and this PR does not supply the owning-suite/platform, storage-wait, or paired performance/thread-use evidence required by the updated issue. Historical entry-point/framing/git/headroom migrations already recorded as landed are not being reopened.

@ScriptedAlchemy
ScriptedAlchemy marked this pull request as ready for review October 21, 2026 06:27
devin-ai-integration[bot]

This comment was marked as resolved.

@ScriptedAlchemy ScriptedAlchemy left a comment

Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pushed f07293a. Removed the three forwarding lifecycle hop wrappers and their module, imported the canonical lifecycle functions directly, and removed the obsolete Tokio-context comment. This completes the caller cutover without adding a compatibility facade.

Pinned rustfmt, commitlint, git diff --check, and the ambient-Tokio repository gate pass (2,509 production source files checked). Native lifecycle execution remains pending CI.

@ScriptedAlchemy ScriptedAlchemy left a comment

Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fixed the current Clippy E0308 failures in ee130e4. The production harness shutdown and the two affected lifecycle tests now create std::time::Instant deadlines, matching the canonical native shutdown helpers. Audited all remaining calls to both helpers; no wrappers or timeout changes were added.

Pinned rustfmt, diff checks, and commitlint passed. The three compiler errors came from the current CI job; the new head is pushed for CI compilation and existing shutdown tests. Native builds were not rerun in the constrained local environment.

ScriptedAlchemy and others added 5 commits October 21, 2026 04:53
Use the canonical asynchronous SQL reader for persisted scope lookup and
CAS admission while preserving the foreground priority and read budget.
Exercise real native-task CAS, readback, and stale-revision conflict
requests and assert that scope-set reads do not park native workers.
@ScriptedAlchemy
ScriptedAlchemy enabled auto-merge (squash) October 22, 2026 00:32
ScriptedAlchemy and others added 2 commits October 21, 2026 23:25
…ersync-runtime-cutover

# Conflicts:
#	crates/tracedecay/src/daemon/engine.rs
#	crates/tracedecay/src/daemon/tests/route_discovery.rs
@ScriptedAlchemy ScriptedAlchemy changed the title Run project-server lifecycle on Asupersync refactor(runtime): move project lifecycle to native tasks Oct 22, 2026
@ScriptedAlchemy
ScriptedAlchemy merged commit d889804 into master Oct 22, 2026
29 of 30 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.

Finish the native Asupersync runtime cutover

2 participants