Allow environment readiness updates in place (#35875)

## What changed

- Add `EnvironmentManager::publish_ready_info` to update the selected capability
  roots for an existing environment without replacing it.
- Store readiness as an atomically replaceable snapshot so repeated publications
  expose the latest roots while deferred completion still controls connection
  readiness.
- Validate published roots and reject updates for missing environments.

## Testing

- Cover publication, replacement, repeated and invalid updates, and interaction
  with deferred environment completion.

GitOrigin-RevId: 1477f60e1319f840e6b33703ef2af052713779fd
This commit is contained in:
TAFOYA-OAI authored and copyberry committed 2026-07-29 03:07:13 +00:00
1 parent 0a6616f4cf
commit 6c13b113a3
3 files changed
+219 -22

No files matched your search

+2 -1
View File
@@ -323,6 +323,7 @@ impl Session {
.services
.selected_capability_roots
.iter()
.cloned()
.chain(
environments
.turn_environments()
@@ -352,7 +353,7 @@ impl Session {
ready_environment_root_count += 1;
}
root_locations_by_id.insert(root.id.clone(), root.location.clone());
selected_capability_roots.push(root.clone());
selected_capability_roots.push(root);
}
self.services
.turn_environments