fix(server): propagate request cancellation through ADT Server - #160
Conversation
✅ Deploy Preview for adt-cli canceled.
|
|
Warning Review limit reached
Next review available in: 42 minutes You've used all free OSS reviews for now. Wait for the free limit to reset to keep reviewing this public repository. How can I continue?After more reviews become available, a review can be triggered using the To avoid repeated limits, reduce automatic review volume by pausing incremental auto-reviews earlier, using label-based review opt-in, excluding WIP or generated PR titles, or requesting reviews manually when the PR is ready. If your team needs uninterrupted high-volume reviews, an organization admin can enable usage-based reviews. How do review limits work?CodeRabbit enforces per-developer PR review limits for each organization. Most developers receive the normal plan review availability. For paid Pro and Pro+ PR reviews, CodeRabbit uses adaptive limits for sustained high-volume activity. When a developer's recent PR review activity reaches the 95th percentile or higher among CodeRabbit users, additional reviews become available more gradually as earlier reviews age out of the rolling window. Please refer docs for additional details. Review details⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Pro Plus Run ID: 📒 Files selected for processing (1)
📝 WalkthroughWalkthroughThe generated ADT client adds ChangesBAdI client operation
Request cancellation propagation
Estimated code review effort: 4 (Complex) | ~45 minutes Possibly related PRs
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✨ Finishing Touches📝 Generate docstrings
🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
The implementation correctly propagates caller cancellation through the ADT Server client and REST boundary. The changes properly add optional AbortSignal support to all generated client methods and implement request-scoped cancellation in the server request handler with proper event listener cleanup. All tests pass and verify the expected behavior for both normal completion and abort scenarios.
You can now have the agent implement changes and create commits directly on your pull request's source branch. Simply comment with /q followed by your request in natural language to ask the agent to make changes.
|
View your CI Pipeline Execution ↗ for commit b6bff2b
💡 Verify your cache is correct by running tasks in a sandbox. Read docs ↗ ☁️ Nx Cloud last updated this comment at |
Up to standards ✅🟢 Issues
|
| Metric | Results |
|---|---|
| Complexity | 45 |
| Duplication | 7 |
NEW Get contextual insights on your PRs based on Codacy's metrics, along with PR and Jira context, without leaving GitHub. Enable AI reviewer
TIP This summary will be updated as you push new changes.
|
You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard. |
|
ⓘ Qodo reviews are paused because the subscription is no longer active. Ask your workspace admin to reactivate the subscription to resume reviews. Manage billing |
There was a problem hiding this comment.
Actionable comments posted: 1
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@packages/adt-server-client/tests/client.test.ts`:
- Around line 106-112: Update the fetch mock in the relevant client test so it
immediately rejects when init?.signal is absent, while retaining the existing
abort-listener behavior when a signal is provided. This ensures
signal-forwarding regressions fail promptly instead of leaving the promise
pending.
🪄 Autofix
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: defaults
Review profile: CHILL
Plan: Pro Plus
Run ID: 108fc015-232d-4a74-aaa8-b8d6aa1863d9
📒 Files selected for processing (5)
packages/adt-server-client/scripts/generate.tspackages/adt-server-client/src/generated.tspackages/adt-server-client/tests/client.test.tspackages/adt-server/src/request-handler.tspackages/adt-server/tests/server.test.ts
MergerWaiting for CI and review to complete. Commit |
…t signal Co-Authored-By: Petr Plenkov <petr.plenkov@gmail.com>
|
You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard. |
Goal
Propagate caller cancellation through the generated ADT Server client and the ADT Server REST boundary so disconnected requests stop downstream ADT work.
GitLab shadow review: booking-com/finsys-devops/adt-cli!36
Changes
AbortSignal, including parameterless operationsVerification
adt-server-clienttests: 5 passedadt-servertests: 22 passedadt-server-clientbuild and dependent server builds passedTest plan
nx run adt-server-client:test adt-server:testMade with Cursor
Summary by cubic
Propagates request cancellation across the generated ADT client and the REST server so disconnected HTTP clients stop downstream ADT work. Refreshes the generated client from the latest OpenAPI and adds per-request
AbortSignalsupport.New Features
@abapify/adt-server-client: all methods acceptAdtServerRequestOptionswithsignalto cancel a single call, including parameterless operations; fetch uses only the provided signal.getBaditypes and client method.Bug Fixes
@abapify/adt-server: maps HTTP request aborts and premature response closes to@abapify/adt-clientviarunWithAdtAbortSignal; normal response completion keeps downstream work active.@abapify/adt-server-client: tests ensure calls forward the caller-providedAbortSignaland fail fast if a signal is omitted.Written for commit 72d7815. Summary will update on new commits.
Summary by CodeRabbit
New Features
getBadiclient operation with destination, name, and implementation options.Bug Fixes