Skip to content

Make robot discovery tolerate scope destruction - #301

Merged
vRallev merged 1 commit into
mainfrom
ralf/robot-discovery-destruction-race
Oct 16, 2026
Merged

vRallev merged 1 commit into
mainfrom
ralf/robot-discovery-destruction-race

Conversation

@vRallev

@vRallev vRallev commented Oct 16, 2026 •

Copy link
Copy Markdown
Owner

Robot lookup can overlap scope cleanup after navigation and fail while reading services or children. Skip those failures when the scope has been destroyed, and discard destroyed candidates before checking for ambiguity.

Preserve ancestor robot lookup and propagate failures from live scopes, robot getters, and robot factories unchanged. Keep the fix in :robot:public without changing :scope or its synchronization. Lookup does not extend a scope's lifetime.

Comment thread docs/testing.md Outdated
@vRallev
vRallev marked this pull request as ready for review October 16, 2026 19:44
Robot lookup can overlap scope cleanup after navigation and fail while reading services or children. Skip those failures when the scope has been destroyed, and discard destroyed candidates before checking for ambiguity.

Preserve ancestor robot lookup and propagate failures from live scopes, robot getters, and robot factories unchanged. Keep the fix in `:robot:public` without changing `:scope` or its synchronization. Lookup does not extend a scope's lifetime.
@vRallev
vRallev force-pushed the ralf/robot-discovery-destruction-race branch from e913ac8 to efb595a Compare October 16, 2026 19:45
@vRallev
vRallev merged commit b46f85f into main Oct 16, 2026
28 checks passed
@vRallev
vRallev deleted the ralf/robot-discovery-destruction-race branch October 16, 2026 19:58
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.

1 participant