feat(http-tracker): [#2289] migrate HTTP tracker to token lifecycle - #2297
Merged
josecelano merged 3 commits intoSep 22, 2026
Conversation
There was a problem hiding this comment.
Warning
Copilot couldn't run its full agentic review because it didn't start before the timeout. Make sure your repository has a runner available, or add a copilot-code-review.yml file specifying one with the runs-on attribute. See the docs for more details.
Copilot review overview
Review effort: Lite
Findings: 4
Open (5)
On registration failure, this awaits both the server task and drain controller to completion.… · New Instart_token_aware_runtime, the start-notification oneshot is sent and awaited within the same… · New Instart_token_aware_runtime, the start-notification oneshot is sent and awaited within the same… · New Instart_token_aware_runtime, the start-notification oneshot is sent and awaited within the same… · New The 90-second graceful-drain timeout is a magic constant in the token-aware path. To keep behavior… · New
What changed in this PR
This PR migrates the HTTP tracker bootstrap/runtime to a token-driven lifecycle, ensuring the Axum drain controller is retained and joined deterministically while keeping the legacy start/stop API intact.
Changes:
- Introduces
TokenAwareServerTaskto own and abort/join both the server task and its drain controller. - Adds a token-aware
HttpServer::start_with_cancellationpath returning both runtime and shutdown-controller handles. - Expands tests across bootstrap + HTTP server crates to validate cancellation, independent completion/failure, and bootstrap propagation.
| File | Description |
|---|---|
| src/bootstrap/jobs/manager.rs | Adds TokenAwareServerTask to encapsulate server + controller ownership. |
| src/bootstrap/jobs/http_tracker.rs | Switches HTTP tracker job to token-aware server start and supervises both task handles; adds lifecycle tests. |
| src/app.rs | Passes a per-instance child cancellation token into HTTP tracker bootstrap; adds propagation test. |
| packages/axum-http-server/src/server.rs | Adds token-aware server start returning task + drain-controller handles; refactors server future creation; adds tests. |
| docs/issues/open/2289-1488-si-11-migrate-http-tracker-token-lifecycle/*.md | Updates verification/retrospective/evidence documents for the migration. |
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
Copilot stopped reviewing on behalf of
josecelano due to an error
September 22, 2026 13:30
josecelano
force-pushed
the
2289-1488-si-11-migrate-http-tracker-token-lifecycle
branch
from
September 22, 2026 15:54
0ea7772 to
e6dba8c
Compare
josecelano
force-pushed
the
2289-1488-si-11-migrate-http-tracker-token-lifecycle
branch
from
September 22, 2026 16:10
e6dba8c to
d93f3eb
Compare
josecelano
force-pushed
the
2289-1488-si-11-migrate-http-tracker-token-lifecycle
branch
from
September 22, 2026 17:04
d93f3eb to
5de3875
Compare
Member
Author
|
ACK 5de3875 |
josecelano
added a commit
that referenced
this pull request
Sep 22, 2026
…ssues/closed 51e1b1b chore(issues): archive closed issue #2289 spec to docs/issues/closed (Jose Celano) Pull request description: Archives the completed SI-11 specification for #2289 after PR #2297 merged and closed the issue. - Moved the issue folder and evidence from `docs/issues/open/` to `docs/issues/closed/` - Updated archived metadata: `status: done`, `spec-path`, `related-pr`, and closure checkpoint - Updated the live #1488 roadmap link and status to `Done` - Retained the PR #2291 review path as immutable historical context Validation: `linter markdown`, pre-commit, and pre-push passed. ACKs for top commit: josecelano: ACK 51e1b1b Tree-SHA512: d6ea6eddbce8e014e3ef68ed0f3e75a24ea34fdcdbe9e52083511a2eb5e6e058af1734782adae0df694ddf336087767536e7a75e9809e4a8609f3b0441587344
This branch was successfully deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.


Closes #2289
Summary
Validation