-
Notifications
You must be signed in to change notification settings - Fork 2.5k
Metadata‑driven subtasks (no UI changes): automatic parent resume and single‑open safety #9090
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
f71b6bb to
53f3b2d
Compare
6d0d066 to
9fa17c7
Compare
b2a0e60 to
d734788
Compare
d734788 to
05e6a98
Compare
All previously flagged issues have been resolved. No new issues found.
Mention @roomote in a comment to request specific changes to this pull request or fix all unresolved issues. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Skipping the entire test suite defeats the purpose of having tests for critical abort noise prevention logic. If these tests are no longer relevant due to the refactor, they should be updated to reflect the new implementation rather than disabled. This leaves the checkpoint abort handling untested and could allow regressions in error handling during task disposal.
Fix it with Roo Code or mention @roomote and request a fix.
…nused import; type-safe ExtensionChannel event publishing
The Task.resumeAfterDelegation() method was added in the implementation but the test mocks were not updated accordingly. This caused test failures with 'resumeAfterDelegation is not a function' errors. Updated mock task instances in: - src/__tests__/history-resume-delegation.spec.ts - src/__tests__/attempt-completion-delegation.spec.ts All mocks now include: - resumeAfterDelegation: vi.fn().mockResolvedValue(undefined) - overwriteClineMessages: vi.fn().mockResolvedValue(undefined) (where needed) - overwriteApiConversationHistory: vi.fn().mockResolvedValue(undefined) (where needed)
- Reset all localization files (src/i18n and webview-ui/i18n) to main - Remove isFocused prop usage from DelegationUI test - Keep PR focused on backend metadata orchestration only
Keep only core feature tests: - single-open-invariant.spec.ts (single-open safety) - nested-delegation-resume.spec.ts (automatic parent resume) - delegation-events.spec.ts (lifecycle events) - history-resume-delegation.spec.ts (history resume) - new-task-delegation.spec.ts (new_task tool) - provider-delegation.spec.ts (provider delegation) Remove edge case tests to keep PR focused on core functionality.
1977ea5 to
b47a930
Compare
Closes: #8081
Summary
This update makes subtask hand‑offs smoother while keeping the UI exactly the same:
What you’ll notice
Important
Introduce metadata-driven subtasks with automatic parent resume and single-open safety, adding delegation events and updating task handling logic.
TaskDelegated,TaskDelegationCompleted,TaskDelegationResumedinExtensionChannel.tsandapi.ts.finishSubTaskmethod inClineProvider.tsand replaces it with metadata-driven delegation logic.ExtensionChannel.test.tsand new test files likedelegation-events.spec.ts.single-open-invariant.spec.ts.Taskclass inTask.tsto support new delegation flow.webviewMessageHandler.tsto handle task clearing with new logic.This description was created by
for 624f12e. You can customize this summary. It will automatically update as commits are pushed.