Repository navigation
Commit 9ba53df
committed
fix(daemon): key the implicit session by workspace and platform
An implicit session was addressed by `cwd:<workspace>:default`, one slot per checkout, so a repo
driving both platforms could not open the second one: after `open --platform ios`,
`open --platform android` and `boot --platform android` from the same directory failed with
INVALID_ARGS against a session they never asked for. The workaround named a session by hand on
every command of both legs.
`--platform` now selects the implicit session, so `cwd:<workspace>:ios` and
`cwd:<workspace>:android` coexist. A platform-naming request joins a session it genuinely agrees
with, so a session opened without `--platform` stays reachable and keeps its own artifact
directory; a same-platform device or target mismatch still gets the existing refusal instead of
forking a twin. A request naming no platform joins the workspace's only implicit session and
refuses with AMBIGUOUS_MATCH when several exist, while `sessionKind: 'inventory'` commands keep
routing so `session list` can resolve the ambiguity.
Two adjacent repairs were load-bearing: a settling interaction published the live session under
`SessionState.name` rather than the address the store owns, which `session list` already reported
as a phantom second row; and `--session-lock`'s platform reaches `flags` only after the key is
chosen, so routing now reads `meta.lockPlatform` too.1 parent 775163b commit 9ba53df
12 files changed
Lines changed: 726 additions & 16 deletions
File tree
- packages/command-registry/src
- src/daemon
- __tests__
- interaction
- website/docs/docs
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
2 | 2 | | |
3 | 3 | | |
4 | 4 | | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
| 23 | + | |
| 24 | + | |
| 25 | + | |
| 26 | + | |
| 27 | + | |
| 28 | + | |
| 29 | + | |
| 30 | + | |
| 31 | + | |
| 32 | + | |
| 33 | + | |
| 34 | + | |
| 35 | + | |
| 36 | + | |
| 37 | + | |
| 38 | + | |
| 39 | + | |
| 40 | + | |
| 41 | + | |
| 42 | + | |
| 43 | + | |
| 44 | + | |
5 | 45 | | |
6 | 46 | | |
7 | 47 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
417 | 417 | | |
418 | 418 | | |
419 | 419 | | |
420 | | - | |
| 420 | + | |
421 | 421 | | |
422 | 422 | | |
423 | 423 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
20 | 20 | | |
21 | 21 | | |
22 | 22 | | |
| 23 | + | |
23 | 24 | | |
24 | 25 | | |
25 | 26 | | |
| |||
935 | 936 | | |
936 | 937 | | |
937 | 938 | | |
| 939 | + | |
| 940 | + | |
| 941 | + | |
| 942 | + | |
| 943 | + | |
| 944 | + | |
| 945 | + | |
| 946 | + | |
| 947 | + | |
| 948 | + | |
| 949 | + | |
| 950 | + | |
| 951 | + | |
| 952 | + | |
| 953 | + | |
| 954 | + | |
| 955 | + | |
| 956 | + | |
| 957 | + | |
| 958 | + | |
| 959 | + | |
| 960 | + | |
| 961 | + | |
| 962 | + | |
| 963 | + | |
| 964 | + | |
| 965 | + | |
| 966 | + | |
| 967 | + | |
| 968 | + | |
| 969 | + | |
| 970 | + | |
| 971 | + | |
| 972 | + | |
| 973 | + | |
| 974 | + | |
| 975 | + | |
| 976 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
179 | 179 | | |
180 | 180 | | |
181 | 181 | | |
182 | | - | |
| 182 | + | |
| 183 | + | |
183 | 184 | | |
184 | 185 | | |
185 | 186 | | |
| |||
0 commit comments