Skip to content

fix(runtime): reject duplicate in-flight task IDs (#257) - #343

Merged
David-patrick-chuks-02 merged 2 commits into
Lilly-Protocol:mainfrom
Glastonburyk:sauron/issue-257-duplicate-inflight
Sep 6, 2026
Merged

fix(runtime): reject duplicate in-flight task IDs (#257)#343
David-patrick-chuks-02 merged 2 commits into
Lilly-Protocol:mainfrom
Glastonburyk:sauron/issue-257-duplicate-inflight

Conversation

@Glastonburyk

Copy link
Copy Markdown
Contributor

Summary

Addresses #257 by rejecting a second executeTask() invocation while the same task ID is already active. The duplicate call fails with typed DUPLICATE_IN_FLIGHT_TASK before duplicate tool execution or duplicate failed lifecycle events can occur. Task IDs can be reused after the previous execution settles.

Regression coverage launches concurrent duplicate IDs, checks the typed error and active task count, confirms no duplicate runtime.task.failed event, and verifies reuse after settlement.

Verification

The initial isolated run exposed two TypeScript defects in the test. Those were repaired. The exact final patch then passed the repository's complete npm run verify gate with formatting, ESLint, TypeScript, Vitest and coverage under network-disabled repository execution.

This is an independent competing submission for the still-open bounty.

Closes #257

@David-patrick-chuks-02
David-patrick-chuks-02 merged commit 91b4fd2 into Lilly-Protocol:main Sep 6, 2026
0 of 2 checks passed
@Glastonburyk

Copy link
Copy Markdown
Contributor Author

Thanks for merging this. Could you confirm whether there is anything else required from me to complete the bounty settlement/payment, and what the next step is? If payout details are needed, please point me to the appropriate official/private route.

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.

[Bounty: $65] Reject duplicate in-flight task IDs in AgentRuntime.executeTask

3 participants