feat!: delete add-actor implementation (stateless migration PR 2)#1144
Merged
Conversation
Deletes add-actor now that PR 0 stopped every new connection from resolving it and fixed the restore path. Removes: add_actor.ts, its registry.ts/index_internals.ts wiring, ActorsMcpServer's toolsChangedHandler and register/unregister/notify methods (the only consumer, the internal repo's Redis reconciliation, is gone too), loadActorsAsTools(), and tests/unit/tools.add_actor.test.ts. getActorsAsTools(), the actors=/tools= URL-param path, and the enableAddingActors/enableActorAutoLoading flag are unaffected. Rewrites internals.test.ts's add-actor restore round-trip case onto a plain getActorsAsTools fixture to keep the coverage. Closes #1131.
Deleting add-actor's registry entry dropped 'add-actor' from ALL_INTERNAL_TOOL_NAMES, so resolveActorsToLoad misread a literal tools=add-actor (or tools=experimental, once its now-empty registry category is gone too) as an Actor name and tried to fetch a nonexistent Actor, surfacing as an "Actor not found" error instead of the intended call-actor substitution. Removes the now-empty experimental category from registry.ts entirely and handles 'preview'/'experimental'/'add-actor' as a reserved selector set directly in tools_loader.ts's resolveActorsToLoad, so they're never treated as Actor names regardless of registry membership — a no-op for actor-fetching purposes, with the existing call-actor substitution in getToolsForServerMode unaffected.
…l-task-8681po # Conflicts: # src/mcp/server.ts
The rewritten restore test (post add-actor removal) asserted only the restored actor tool name, dropping the pre-existing auto-injected run/storage/abort helpers that loadToolsByName restore has always added alongside any actor tool. Unrelated to add-actor's removal — restore behavior itself didn't change, only the test's expectation was wrong after the fixture swap.
isApiTokenRequired filtered retired selectors (add-actor, experimental, preview) after the empty-list check, so toolCategoryKeys: [] required a token but toolCategoryKeys: ['add-actor'] didn't, despite both loading zero tools. Filter retired selectors before the emptiness check so both cases are judged identically.
jirispilka
self-requested a review
July 24, 2026 14:50
jirispilka
approved these changes
Jul 24, 2026
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.
Deletes add-actor now that PR 0 stopped every new connection from
resolving it and fixed the restore path. Removes: add_actor.ts, its
registry.ts/index_internals.ts wiring, ActorsMcpServer's
toolsChangedHandler and register/unregister/notify methods (the only
consumer, the internal repo's Redis reconciliation, is gone too),
loadActorsAsTools(), and tests/unit/tools.add_actor.test.ts.
getActorsAsTools(), the actors=/tools= URL-param path, and the
enableAddingActors/enableActorAutoLoading flag are unaffected.
Rewrites internals.test.ts's add-actor restore round-trip case onto a
plain getActorsAsTools fixture to keep the coverage.
Closes #1131.