Skip to content

feat: include every device slot in workspace cleanup - #767

Merged
janicduplessis merged 2 commits into
feat/device-slot-registryfrom
feat/device-slot-lifecycle
Sep 13, 2026
Merged

janicduplessis merged 2 commits into
feat/device-slot-registryfrom
feat/device-slot-lifecycle

Conversation

@janicduplessis

Copy link
Copy Markdown
Collaborator

Description

Devices in named slots must stay claimed during GC and participate in workspace stop/removal. Reading only the default assignment would leave devices running or mistake them for orphans.

Depends on #764. Fixes #763.

Solution

Enumerate every slot for cleanup, ownership references, simulator-name reservations, and device capacity. Stop retains its default outcomes and reports named outcomes by platform and slot; a named-device failure fails the overall stop while allowing sibling cleanup.

Pool transfers operate on the selected slot under the config lock. Parking verifies its current device identity, and adoption refuses an occupied slot. Failed teardown keeps the project claim for a later cleanup attempt. Public launch selection follows in another layer of the stack.

Test plan

Regression tests cover slot-aware GC, cleanup continuing after failures, safe pool transfers, and device capacity. Native tool arguments are unchanged.

@janicduplessis
janicduplessis force-pushed the feat/device-slot-lifecycle branch from 902dec0 to 7eac923 Compare September 12, 2026 16:55
@janicduplessis
janicduplessis marked this pull request as ready for review September 13, 2026 01:08
@janicduplessis
janicduplessis merged commit ffff5ef into main Sep 13, 2026
10 of 13 checks passed
@janicduplessis
janicduplessis deleted the feat/device-slot-lifecycle branch September 13, 2026 01:09
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.

Include every device slot in ownership and lifecycle operations

1 participant