@geohar/un-bien 0.9.0 → 0.14.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (136) hide show
  1. package/README.md +99 -130
  2. package/dist/actions/handlers.js.map +1 -1
  3. package/dist/actions/registry.js.map +1 -1
  4. package/dist/bin/launcher.js.map +1 -1
  5. package/dist/commands/deps.d.ts +156 -0
  6. package/dist/commands/deps.js +2 -0
  7. package/dist/commands/deps.js.map +1 -0
  8. package/dist/commands/fork_link.d.ts +4 -0
  9. package/dist/commands/fork_link.js +45 -0
  10. package/dist/commands/fork_link.js.map +1 -0
  11. package/dist/commands/housekeeping.d.ts +34 -0
  12. package/dist/commands/housekeeping.js +275 -0
  13. package/dist/commands/housekeeping.js.map +1 -0
  14. package/dist/commands/info.d.ts +43 -0
  15. package/dist/commands/info.js +127 -0
  16. package/dist/commands/info.js.map +1 -0
  17. package/dist/commands/lifecycle.d.ts +45 -0
  18. package/dist/commands/lifecycle.js +708 -0
  19. package/dist/commands/lifecycle.js.map +1 -0
  20. package/dist/commands/pairing.d.ts +26 -0
  21. package/dist/commands/pairing.js +167 -0
  22. package/dist/commands/pairing.js.map +1 -0
  23. package/dist/commands/register.d.ts +12 -0
  24. package/dist/commands/register.js +255 -0
  25. package/dist/commands/register.js.map +1 -0
  26. package/dist/commands/relay.d.ts +28 -0
  27. package/dist/commands/relay.js +81 -0
  28. package/dist/commands/relay.js.map +1 -0
  29. package/dist/commands/session_ops.d.ts +52 -0
  30. package/dist/commands/session_ops.js +75 -0
  31. package/dist/commands/session_ops.js.map +1 -0
  32. package/dist/config.d.ts +2 -1
  33. package/dist/config.js.map +1 -1
  34. package/dist/daemon/install.d.ts +4 -3
  35. package/dist/daemon/install.js +7 -1
  36. package/dist/daemon/install.js.map +1 -1
  37. package/dist/enrich_tool_args.js.map +1 -1
  38. package/dist/extension_ui_bridge.js.map +1 -1
  39. package/dist/image_codec.js.map +1 -1
  40. package/dist/index.d.ts +32 -101
  41. package/dist/index.js +818 -2867
  42. package/dist/index.js.map +1 -1
  43. package/dist/launch.d.ts +9 -1
  44. package/dist/launch.js +39 -4
  45. package/dist/launch.js.map +1 -1
  46. package/dist/launcher/launcher.js +21 -2
  47. package/dist/launcher/launcher.js.map +1 -1
  48. package/dist/mcp/mesh_result.js.map +1 -1
  49. package/dist/mcp/mesh_server.js.map +1 -1
  50. package/dist/mesh/canonical.js +1 -1
  51. package/dist/mesh/canonical.js.map +1 -1
  52. package/dist/mesh/client.js.map +1 -1
  53. package/dist/mesh/encoding.js.map +1 -1
  54. package/dist/mesh/self_revoke.js.map +1 -1
  55. package/dist/mesh/siblings.js.map +1 -1
  56. package/dist/mesh/verify.js +1 -1
  57. package/dist/mesh/verify.js.map +1 -1
  58. package/dist/pairing/crypto.js +0 -1
  59. package/dist/pairing/crypto.js.map +1 -1
  60. package/dist/pairing/peer_trust.js.map +1 -1
  61. package/dist/pairing/qr.js.map +1 -1
  62. package/dist/pairing/storage.js +4 -3
  63. package/dist/pairing/storage.js.map +1 -1
  64. package/dist/panel_bridge.js +1 -0
  65. package/dist/panel_bridge.js.map +1 -1
  66. package/dist/paths.d.ts +22 -8
  67. package/dist/paths.js +37 -10
  68. package/dist/paths.js.map +1 -1
  69. package/dist/protocol/codec.js.map +1 -1
  70. package/dist/rooms.js +1 -4
  71. package/dist/rooms.js.map +1 -1
  72. package/dist/session/bridge.js.map +1 -1
  73. package/dist/session/broker.js.map +1 -1
  74. package/dist/session/broker_remote.js.map +1 -1
  75. package/dist/session/capabilities.d.ts +11 -0
  76. package/dist/session/capabilities.js +35 -0
  77. package/dist/session/capabilities.js.map +1 -0
  78. package/dist/session/cwd_lock.js +3 -3
  79. package/dist/session/cwd_lock.js.map +1 -1
  80. package/dist/session/debug_log.js +13 -3
  81. package/dist/session/debug_log.js.map +1 -1
  82. package/dist/session/envelope.js.map +1 -1
  83. package/dist/session/global_config.d.ts +1 -1
  84. package/dist/session/global_config.js +1 -1
  85. package/dist/session/global_config.js.map +1 -1
  86. package/dist/session/ipc.d.ts +2 -2
  87. package/dist/session/ipc.js.map +1 -1
  88. package/dist/session/leader_election.js.map +1 -1
  89. package/dist/session/local_config.d.ts +37 -0
  90. package/dist/session/local_config.js +45 -1
  91. package/dist/session/local_config.js.map +1 -1
  92. package/dist/session/mesh_node.d.ts +1 -1
  93. package/dist/session/mesh_node.js +1 -1
  94. package/dist/session/mesh_node.js.map +1 -1
  95. package/dist/session/peer.js.map +1 -1
  96. package/dist/session/peer_inventory.js.map +1 -1
  97. package/dist/session/peer_limits.js.map +1 -1
  98. package/dist/session/received_images.d.ts +63 -0
  99. package/dist/session/received_images.js +273 -0
  100. package/dist/session/received_images.js.map +1 -0
  101. package/dist/session/relay_lifecycle.d.ts +219 -0
  102. package/dist/session/relay_lifecycle.js +764 -0
  103. package/dist/session/relay_lifecycle.js.map +1 -0
  104. package/dist/session/rpc_envelope.d.ts +10 -0
  105. package/dist/session/rpc_envelope.js +9 -0
  106. package/dist/session/rpc_envelope.js.map +1 -1
  107. package/dist/session/rpc_handlers.d.ts +53 -0
  108. package/dist/session/rpc_handlers.js +268 -0
  109. package/dist/session/rpc_handlers.js.map +1 -0
  110. package/dist/session/rpc_inbound.d.ts +41 -6
  111. package/dist/session/rpc_inbound.js +55 -0
  112. package/dist/session/rpc_inbound.js.map +1 -1
  113. package/dist/session/setup_wizard.js.map +1 -1
  114. package/dist/session/tools.js.map +1 -1
  115. package/dist/session/wizard.js.map +1 -1
  116. package/dist/state_migration.d.ts +45 -0
  117. package/dist/state_migration.js +104 -0
  118. package/dist/state_migration.js.map +1 -0
  119. package/dist/subagent_rooms.d.ts +19 -0
  120. package/dist/subagent_rooms.js +146 -14
  121. package/dist/subagent_rooms.js.map +1 -1
  122. package/dist/test_hooks.d.ts +180 -0
  123. package/dist/test_hooks.js +98 -0
  124. package/dist/test_hooks.js.map +1 -0
  125. package/dist/transport/peer_channel.d.ts +11 -0
  126. package/dist/transport/peer_channel.js +34 -11
  127. package/dist/transport/peer_channel.js.map +1 -1
  128. package/dist/transport/pi_forward_client.js.map +1 -1
  129. package/dist/transport/relay_client.d.ts +5 -2
  130. package/dist/transport/relay_client.js +6 -3
  131. package/dist/transport/relay_client.js.map +1 -1
  132. package/dist/ui/footer.js.map +1 -1
  133. package/docs/daemon.md +160 -170
  134. package/package.json +1 -1
  135. package/service-templates/launchd.plist.template +5 -4
  136. package/service-templates/systemd.service.template +3 -2
@@ -1 +1 @@
1
- {"version":3,"file":"setup_wizard.js","sourceRoot":"","sources":["../../src/session/setup_wizard.ts"],"names":[],"mappings":"AAwBA,MAAM,GAAG,GAAG,KAAK,CAAC;AAClB,MAAM,EAAE,GAAG,IAAI,CAAC;AAChB,MAAM,YAAY,GAAG,YAAY,CAAC;AAElC;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CAClC,EAAY,EACZ,QAAwB;IAExB,MAAM,UAAU,GAAG,MAAM,QAAQ,CAAC,EAAE,EAAE,aAAa,EAAE,QAAQ,CAAC,UAAU,CAAC,CAAC;IAC1E,IAAI,UAAU,KAAK,IAAI;QAAE,OAAO,IAAI,CAAC;IAErC,EAAE,CAAC,MAAM,EAAE,CACT,6JAA6J,EAC7J,MAAM,CACP,CAAC;IACF,MAAM,cAAc,GAAG,MAAM,EAAE,CAAC,MAAM,CACpC,8EAA8E,EAC9E,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,GAAG,CAAC,CAC3C,CAAC;IACF,IAAI,CAAC,cAAc;QAAE,OAAO,IAAI,CAAC;IACjC,MAAM,gBAAgB,GAAG,cAAc,KAAK,GAAG,CAAC;IAEhD,mBAAmB;IACnB,MAAM,OAAO,GAAG;QACd,oBAAoB,UAAU,EAAE;QAChC,oBAAoB,gBAAgB,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;KAClD,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACb,EAAE,CAAC,MAAM,EAAE,CAAC,aAAa,OAAO,EAAE,EAAE,MAAM,CAAC,CAAC;IAE5C,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,MAAM,CAAC,oBAAoB,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC;IACjE,IAAI,OAAO,KAAK,GAAG;QAAE,OAAO,IAAI,CAAC;IAEjC,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,CAAC;AAC1C,CAAC;AAED;;;;;;GAMG;AACH,KAAK,UAAU,QAAQ,CACrB,EAAY,EACZ,KAAa,EACb,YAAoB;IAEpB,MAAM,aAAa,GAAG,GAAG,KAAK,cAAc,YAAY,GAAG,CAAC;IAC5D,MAAM,GAAG,GAAG,EAAE,CAAC,KAAK;QAClB,CAAC,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,aAAa,EAAE,EAAE,YAAY,EAAE,CAAC;QACjD,CAAC,CAAC,MAAM,EAAE,CAAC,MAAM,CAAC,aAAa,EAAE,CAAC,YAAY,EAAE,YAAY,CAAC,CAAC,CAAC;IACjE,IAAI,GAAG,KAAK,SAAS;QAAE,OAAO,IAAI,CAAC;IACnC,IAAI,GAAG,KAAK,YAAY;QAAE,OAAO,IAAI,CAAC;IACtC,MAAM,OAAO,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC;IAC3B,wEAAwE;IACxE,0DAA0D;IAC1D,OAAO,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,YAAY,CAAC;AACrD,CAAC"}
1
+ {"version":3,"file":"setup_wizard.js","sourceRoot":"","sources":["../../src/session/setup_wizard.ts"],"names":[],"mappings":"AAwBA,MAAM,GAAG,GAAG,KAAK,CAAA;AACjB,MAAM,EAAE,GAAG,IAAI,CAAA;AACf,MAAM,YAAY,GAAG,YAAY,CAAA;AAEjC;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CAClC,EAAY,EACZ,QAAwB;IAExB,MAAM,UAAU,GAAG,MAAM,QAAQ,CAAC,EAAE,EAAE,aAAa,EAAE,QAAQ,CAAC,UAAU,CAAC,CAAA;IACzE,IAAI,UAAU,KAAK,IAAI;QAAE,OAAO,IAAI,CAAA;IAEpC,EAAE,CAAC,MAAM,EAAE,CACT,6JAA6J,EAC7J,MAAM,CACP,CAAA;IACD,MAAM,cAAc,GAAG,MAAM,EAAE,CAAC,MAAM,CACpC,8EAA8E,EAC9E,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,GAAG,CAAC,CAC3C,CAAA;IACD,IAAI,CAAC,cAAc;QAAE,OAAO,IAAI,CAAA;IAChC,MAAM,gBAAgB,GAAG,cAAc,KAAK,GAAG,CAAA;IAE/C,mBAAmB;IACnB,MAAM,OAAO,GAAG;QACd,oBAAoB,UAAU,EAAE;QAChC,oBAAoB,gBAAgB,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;KAClD,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IACZ,EAAE,CAAC,MAAM,EAAE,CAAC,aAAa,OAAO,EAAE,EAAE,MAAM,CAAC,CAAA;IAE3C,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,MAAM,CAAC,oBAAoB,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,CAAA;IAChE,IAAI,OAAO,KAAK,GAAG;QAAE,OAAO,IAAI,CAAA;IAEhC,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,CAAA;AACzC,CAAC;AAED;;;;;;GAMG;AACH,KAAK,UAAU,QAAQ,CACrB,EAAY,EACZ,KAAa,EACb,YAAoB;IAEpB,MAAM,aAAa,GAAG,GAAG,KAAK,cAAc,YAAY,GAAG,CAAA;IAC3D,MAAM,GAAG,GAAG,EAAE,CAAC,KAAK;QAClB,CAAC,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,aAAa,EAAE,EAAE,YAAY,EAAE,CAAC;QACjD,CAAC,CAAC,MAAM,EAAE,CAAC,MAAM,CAAC,aAAa,EAAE,CAAC,YAAY,EAAE,YAAY,CAAC,CAAC,CAAA;IAChE,IAAI,GAAG,KAAK,SAAS;QAAE,OAAO,IAAI,CAAA;IAClC,IAAI,GAAG,KAAK,YAAY;QAAE,OAAO,IAAI,CAAA;IACrC,MAAM,OAAO,GAAG,GAAG,CAAC,IAAI,EAAE,CAAA;IAC1B,wEAAwE;IACxE,0DAA0D;IAC1D,OAAO,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,YAAY,CAAA;AACpD,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"tools.js","sourceRoot":"","sources":["../../src/session/tools.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tools.js","sourceRoot":"","sources":["../../src/session/tools.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"wizard.js","sourceRoot":"","sources":["../../src/session/wizard.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAelE,MAAM,eAAe,GAAG,4BAA4B,CAAC;AAErD,MAAM,CAAC,KAAK,UAAU,UAAU,CAC9B,EAAY,EACZ,WAAmB;IAEnB,MAAM,QAAQ,GAAG,YAAY,EAAE,CAAC;IAChC,MAAM,YAAY,GAAG,QAAQ,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;IACrD,MAAM,OAAO,GAAG,CAAC,GAAG,YAAY,EAAE,eAAe,CAAC,CAAC;IACnD,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,MAAM,CAC5B,YAAY,CAAC,MAAM;QACjB,CAAC,CAAC,+CAA+C;QACjD,CAAC,CAAC,iCAAiC,EACrC,OAAO,CACR,CAAC;IACF,IAAI,CAAC,MAAM;QAAE,OAAO,IAAI,CAAC;IACzB,IAAI,MAAM,KAAK,eAAe,EAAE,CAAC;QAC/B,uEAAuE;QACvE,wEAAwE;QACxE,gBAAgB;QAChB,OAAO,WAAW,CAAC;IACrB,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC"}
1
+ {"version":3,"file":"wizard.js","sourceRoot":"","sources":["../../src/session/wizard.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAA;AAejE,MAAM,eAAe,GAAG,4BAA4B,CAAA;AAEpD,MAAM,CAAC,KAAK,UAAU,UAAU,CAC9B,EAAY,EACZ,WAAmB;IAEnB,MAAM,QAAQ,GAAG,YAAY,EAAE,CAAA;IAC/B,MAAM,YAAY,GAAG,QAAQ,CAAC,MAAM,CAAC,cAAc,CAAC,CAAA;IACpD,MAAM,OAAO,GAAG,CAAC,GAAG,YAAY,EAAE,eAAe,CAAC,CAAA;IAClD,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,MAAM,CAC5B,YAAY,CAAC,MAAM;QACjB,CAAC,CAAC,+CAA+C;QACjD,CAAC,CAAC,iCAAiC,EACrC,OAAO,CACR,CAAA;IACD,IAAI,CAAC,MAAM;QAAE,OAAO,IAAI,CAAA;IACxB,IAAI,MAAM,KAAK,eAAe,EAAE,CAAC;QAC/B,uEAAuE;QACvE,wEAAwE;QACxE,gBAAgB;QAChB,OAAO,WAAW,CAAA;IACpB,CAAC;IACD,OAAO,MAAM,CAAA;AACf,CAAC"}
@@ -0,0 +1,45 @@
1
+ export type MigrationStatus =
2
+ /** The resolved root IS the legacy dir — nothing to move. */
3
+ "same-dir"
4
+ /** The resolved root already has peers.json — skip entirely. */
5
+ | "already-populated"
6
+ /** No legacy `~/.pi/un-bien` with peers.json — nothing to migrate. */
7
+ | "no-legacy"
8
+ /** Entries were moved (renamed, or copied+removed cross-device). */
9
+ | "migrated"
10
+ /** Something unexpected failed; legacy data is left untouched. */
11
+ | "error";
12
+ export interface MigrationResult {
13
+ status: MigrationStatus;
14
+ /** Entry names moved via rename. */
15
+ renamed: string[];
16
+ /** Entry names moved via the copy fallback (rename failed, e.g. EXDEV or a
17
+ * non-empty target dir; copied recursively, then removed from legacy). */
18
+ copied: string[];
19
+ /** Entry names that could not be moved at all (left behind in legacy). */
20
+ failed: string[];
21
+ }
22
+ /**
23
+ * The legacy state root: literally `~/.pi/un-bien` off the REAL home — never
24
+ * env-overridable, so `UNBIEN_HOME` test fixtures can't redirect the search.
25
+ */
26
+ export declare function legacyStateDir(): string;
27
+ /**
28
+ * Move the legacy `~/.pi/un-bien` contents into `root`.
29
+ *
30
+ * Runs only when `root` lacks `peers.json` AND the legacy dir has one (i.e.
31
+ * the new root is not yet populated and there is pairing trust to carry
32
+ * over). Per entry: rename, with a recursive-copy-then-remove fallback for
33
+ * cross-device roots or non-empty target dirs. Legacy entries are never
34
+ * deleted unless the copy succeeded, so a mid-migration failure leaves the
35
+ * old root fully intact for a retry. Never throws.
36
+ */
37
+ export declare function migrateLegacyState(root: string, legacyDir?: string): MigrationResult;
38
+ /**
39
+ * Auto-hook invoked from `unbienStateHome()`: run the one-time migration at
40
+ * most once per process, against the currently-resolved root. Skipped under
41
+ * vitest so test runs never touch a developer's real home — the migration
42
+ * itself is covered by `state_migration.test.ts` calling
43
+ * `migrateLegacyState()` directly.
44
+ */
45
+ export declare function migrateLegacyStateOnce(): void;
@@ -0,0 +1,104 @@
1
+ // One-time, best-effort migration of legacy state (`~/.pi/un-bien`) into the
2
+ // resolved state root — design 01M1CB6Q (config/state split). The legacy root
3
+ // predates the `UNBIEN_STATE_DIR` / XDG default; `peers.json` is PAIRING
4
+ // TRUST, so it (and everything else under the legacy root) must survive the
5
+ // move. Never throws; idempotent; skips entirely once the new root is
6
+ // populated. Same best-effort style as `envLog`.
7
+ import { cpSync, existsSync, mkdirSync, readdirSync, renameSync, rmSync, } from "node:fs";
8
+ import { homedir } from "node:os";
9
+ import { join } from "node:path";
10
+ import { unbienStateHome } from "./paths.js";
11
+ import { envLog } from "./session/debug_log.js";
12
+ const EMPTY = {
13
+ status: "no-legacy",
14
+ renamed: [],
15
+ copied: [],
16
+ failed: [],
17
+ };
18
+ /**
19
+ * The legacy state root: literally `~/.pi/un-bien` off the REAL home — never
20
+ * env-overridable, so `UNBIEN_HOME` test fixtures can't redirect the search.
21
+ */
22
+ export function legacyStateDir() {
23
+ return join(homedir(), ".pi", "un-bien");
24
+ }
25
+ /**
26
+ * Move the legacy `~/.pi/un-bien` contents into `root`.
27
+ *
28
+ * Runs only when `root` lacks `peers.json` AND the legacy dir has one (i.e.
29
+ * the new root is not yet populated and there is pairing trust to carry
30
+ * over). Per entry: rename, with a recursive-copy-then-remove fallback for
31
+ * cross-device roots or non-empty target dirs. Legacy entries are never
32
+ * deleted unless the copy succeeded, so a mid-migration failure leaves the
33
+ * old root fully intact for a retry. Never throws.
34
+ */
35
+ export function migrateLegacyState(root, legacyDir = legacyStateDir()) {
36
+ try {
37
+ if (root === legacyDir)
38
+ return { ...EMPTY, status: "same-dir" };
39
+ const rootPeers = join(root, "peers.json");
40
+ const legacyPeers = join(legacyDir, "peers.json");
41
+ if (existsSync(rootPeers)) {
42
+ return { ...EMPTY, status: "already-populated" };
43
+ }
44
+ if (!existsSync(legacyPeers))
45
+ return EMPTY;
46
+ mkdirSync(root, { recursive: true });
47
+ const renamed = [];
48
+ const copied = [];
49
+ const failed = [];
50
+ for (const entry of readdirSync(legacyDir)) {
51
+ const from = join(legacyDir, entry);
52
+ const to = join(root, entry);
53
+ try {
54
+ renameSync(from, to);
55
+ renamed.push(entry);
56
+ }
57
+ catch {
58
+ // Cross-device (EXDEV) or a non-empty target dir — merge via copy,
59
+ // then remove the legacy copy. Best-effort: on failure the entry
60
+ // simply stays put in the legacy root.
61
+ try {
62
+ cpSync(from, to, { force: true, recursive: true });
63
+ rmSync(from, { recursive: true, force: true });
64
+ copied.push(entry);
65
+ }
66
+ catch {
67
+ failed.push(entry);
68
+ }
69
+ }
70
+ }
71
+ const result = {
72
+ status: "migrated",
73
+ renamed,
74
+ copied,
75
+ failed,
76
+ };
77
+ envLog(`legacy state migration: moved ${renamed.length} entr(ies) (renamed) + ` +
78
+ `${copied.length} (copied) from ${legacyDir} to ${root}` +
79
+ (failed.length > 0 ? `; FAILED to move: ${failed.join(", ")}` : ""));
80
+ return result;
81
+ }
82
+ catch {
83
+ // Never throws — an unreadable legacy root, a read-only new root, etc.
84
+ // just means no migration this run; the next attempt retries.
85
+ return { ...EMPTY, status: "error" };
86
+ }
87
+ }
88
+ let autoAttempted = false;
89
+ /**
90
+ * Auto-hook invoked from `unbienStateHome()`: run the one-time migration at
91
+ * most once per process, against the currently-resolved root. Skipped under
92
+ * vitest so test runs never touch a developer's real home — the migration
93
+ * itself is covered by `state_migration.test.ts` calling
94
+ * `migrateLegacyState()` directly.
95
+ */
96
+ export function migrateLegacyStateOnce() {
97
+ if (autoAttempted)
98
+ return;
99
+ autoAttempted = true;
100
+ if (process.env["VITEST"])
101
+ return;
102
+ migrateLegacyState(unbienStateHome());
103
+ }
104
+ //# sourceMappingURL=state_migration.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"state_migration.js","sourceRoot":"","sources":["../src/state_migration.ts"],"names":[],"mappings":"AAAA,6EAA6E;AAC7E,8EAA8E;AAC9E,yEAAyE;AACzE,4EAA4E;AAC5E,sEAAsE;AACtE,iDAAiD;AAEjD,OAAO,EACL,MAAM,EACN,UAAU,EACV,SAAS,EACT,WAAW,EACX,UAAU,EACV,MAAM,GACP,MAAM,SAAS,CAAA;AAChB,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AACjC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAChC,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AAC5C,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAA;AAyB/C,MAAM,KAAK,GAAoB;IAC7B,MAAM,EAAE,WAAW;IACnB,OAAO,EAAE,EAAE;IACX,MAAM,EAAE,EAAE;IACV,MAAM,EAAE,EAAE;CACX,CAAA;AAED;;;GAGG;AACH,MAAM,UAAU,cAAc;IAC5B,OAAO,IAAI,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,SAAS,CAAC,CAAA;AAC1C,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,kBAAkB,CAChC,IAAY,EACZ,YAAoB,cAAc,EAAE;IAEpC,IAAI,CAAC;QACH,IAAI,IAAI,KAAK,SAAS;YAAE,OAAO,EAAE,GAAG,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,CAAA;QAC/D,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,EAAE,YAAY,CAAC,CAAA;QAC1C,MAAM,WAAW,GAAG,IAAI,CAAC,SAAS,EAAE,YAAY,CAAC,CAAA;QACjD,IAAI,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;YAC1B,OAAO,EAAE,GAAG,KAAK,EAAE,MAAM,EAAE,mBAAmB,EAAE,CAAA;QAClD,CAAC;QACD,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC;YAAE,OAAO,KAAK,CAAA;QAE1C,SAAS,CAAC,IAAI,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;QACpC,MAAM,OAAO,GAAa,EAAE,CAAA;QAC5B,MAAM,MAAM,GAAa,EAAE,CAAA;QAC3B,MAAM,MAAM,GAAa,EAAE,CAAA;QAC3B,KAAK,MAAM,KAAK,IAAI,WAAW,CAAC,SAAS,CAAC,EAAE,CAAC;YAC3C,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,EAAE,KAAK,CAAC,CAAA;YACnC,MAAM,EAAE,GAAG,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,CAAA;YAC5B,IAAI,CAAC;gBACH,UAAU,CAAC,IAAI,EAAE,EAAE,CAAC,CAAA;gBACpB,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;YACrB,CAAC;YAAC,MAAM,CAAC;gBACP,mEAAmE;gBACnE,iEAAiE;gBACjE,uCAAuC;gBACvC,IAAI,CAAC;oBACH,MAAM,CAAC,IAAI,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;oBAClD,MAAM,CAAC,IAAI,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAA;oBAC9C,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;gBACpB,CAAC;gBAAC,MAAM,CAAC;oBACP,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;gBACpB,CAAC;YACH,CAAC;QACH,CAAC;QACD,MAAM,MAAM,GAAoB;YAC9B,MAAM,EAAE,UAAU;YAClB,OAAO;YACP,MAAM;YACN,MAAM;SACP,CAAA;QACD,MAAM,CACJ,iCAAiC,OAAO,CAAC,MAAM,yBAAyB;YACtE,GAAG,MAAM,CAAC,MAAM,kBAAkB,SAAS,OAAO,IAAI,EAAE;YACxD,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,qBAAqB,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CACtE,CAAA;QACD,OAAO,MAAM,CAAA;IACf,CAAC;IAAC,MAAM,CAAC;QACP,uEAAuE;QACvE,8DAA8D;QAC9D,OAAO,EAAE,GAAG,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,CAAA;IACtC,CAAC;AACH,CAAC;AAED,IAAI,aAAa,GAAG,KAAK,CAAA;AAEzB;;;;;;GAMG;AACH,MAAM,UAAU,sBAAsB;IACpC,IAAI,aAAa;QAAE,OAAM;IACzB,aAAa,GAAG,IAAI,CAAA;IACpB,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC;QAAE,OAAM;IACjC,kBAAkB,CAAC,eAAe,EAAE,CAAC,CAAA;AACvC,CAAC"}
@@ -33,7 +33,26 @@ export interface SubagentRoomsController {
33
33
  /** Hook: called at a NON-root session_start with the child's pi + ctx. */
34
34
  onChildSession(childPi: ExtensionAPI, ctx: ExtensionContext | undefined): void;
35
35
  dispose(): void;
36
+ /**
37
+ * app-driven close (`close_child_room` ub frame): permanently close the
38
+ * child room with this id — tombstone the sid FIRST (in-flight builds
39
+ * dispose instead of registering), then dispose the room (drops its conn;
40
+ * last conn at the relay => room_ended, which purges the app row). An
41
+ * in-process SDK child is NOT force-killed (v1: its run finishes headless;
42
+ * the panel row stamps terminal on natural completion) — this kills the
43
+ * CHAT, not the subagent's work. Returns whether a room was found.
44
+ */
45
+ closeChildRoom(roomId: string): boolean;
36
46
  }
47
+ /**
48
+ * Child rooms are ALWAYS `roomIdForSession(sessionId)` (design 01M1CAW0 —
49
+ * announce waits for the session id, so a child's self-announce always
50
+ * registers the sid-hash room). A pre-registered/caller-supplied id that
51
+ * DIFFERS — e.g. residue of the retired cwd-derived announce, which was
52
+ * identical for same-cwd processes — is suspect: refuse it in favor of the
53
+ * sid-hash id. Returns the room id to use. Pure + exported for tests.
54
+ */
55
+ export declare function normalizeChildRoomId(sessionId: string, candidate?: string): string;
37
56
  /**
38
57
  * Root-side init. Subscribes to the subagents:* bus (record metadata) so a
39
58
  * child session_start can bind to the record that spawned it. `getParentRoomId`
@@ -5,9 +5,10 @@ import { getOrCreateEd25519Keypair } from "./pairing/storage.js";
5
5
  import { _findKnownPeer } from "./pairing/peer_trust.js";
6
6
  import { roomIdForSession } from "./rooms.js";
7
7
  import { loadConfig, resolveRelayUrl } from "./config.js";
8
- import { dispatchRpcCommand, } from "./session/rpc_inbound.js";
8
+ import { dispatchRpcCommand, pageEntries, } from "./session/rpc_inbound.js";
9
9
  import { createRpcEnvelope, helloEnvelope, isEnvelopeFrame, } from "./session/rpc_envelope.js";
10
10
  import { envLog } from "./session/debug_log.js";
11
+ import { effectiveAllowRemoteTerminate, loadLocalConfig, } from "./session/local_config.js";
11
12
  /**
12
13
  * Surface each Pi SUBAGENT as its OWN, separate app-facing session — a distinct
13
14
  * relay ROOM under the SAME machine identity.
@@ -43,7 +44,29 @@ export function subagentRoomsEnabled() {
43
44
  const NOOP = {
44
45
  onChildSession() { },
45
46
  dispose() { },
47
+ closeChildRoom() {
48
+ return false;
49
+ },
46
50
  };
51
+ /**
52
+ * Child rooms are ALWAYS `roomIdForSession(sessionId)` (design 01M1CAW0 —
53
+ * announce waits for the session id, so a child's self-announce always
54
+ * registers the sid-hash room). A pre-registered/caller-supplied id that
55
+ * DIFFERS — e.g. residue of the retired cwd-derived announce, which was
56
+ * identical for same-cwd processes — is suspect: refuse it in favor of the
57
+ * sid-hash id. Returns the room id to use. Pure + exported for tests.
58
+ */
59
+ export function normalizeChildRoomId(sessionId, candidate) {
60
+ const sidRoomId = roomIdForSession(sessionId);
61
+ if (candidate && candidate !== sidRoomId) {
62
+ envLog(`subagent room id mismatch — refusing "${candidate}" for sid=${sessionId.slice(0, 8)} (design 01M1CAW0)`);
63
+ console.warn(`[un-bien] subagent room id "${candidate}" differs from the ` +
64
+ `session-derived id — using the sid-hash room instead ` +
65
+ `(design 01M1CAW0)`);
66
+ return sidRoomId;
67
+ }
68
+ return candidate ?? sidRoomId;
69
+ }
47
70
  /**
48
71
  * Root-side init. Subscribes to the subagents:* bus (record metadata) so a
49
72
  * child session_start can bind to the record that spawned it. `getParentRoomId`
@@ -186,9 +209,11 @@ export function initSubagentRooms(rootPi, opts) {
186
209
  const status = typeof p.status === "string" ? p.status : undefined;
187
210
  // Enrich if an in-process room already owns this child (dedup on sessionId),
188
211
  // else register it fleet-side WITHOUT building a room (the child owns its own).
212
+ // The row's roomId is ALWAYS the sid-hash id — a pre-registered foreign id
213
+ // (retired cwd-derived residue) is refused (design 01M1CAW0).
189
214
  const existing = panelBySession.get(sessionId);
190
215
  panelBySession.set(sessionId, {
191
- roomId: existing?.roomId ?? roomIdForSession(sessionId),
216
+ roomId: normalizeChildRoomId(sessionId, existing?.roomId),
192
217
  type: type ?? existing?.type,
193
218
  description: description ?? existing?.description,
194
219
  status: status ?? existing?.status ?? "started",
@@ -218,16 +243,28 @@ export function initSubagentRooms(rootPi, opts) {
218
243
  // launch (if any) later attaches the producer to THIS same room via
219
244
  // ensureChildRoom. Keyed by child sessionId; needs the parent room up.
220
245
  const parentRoomId = opts.getParentRoomId();
246
+ // design 01M1CAW0: parentage comes from the MARKER only. The old chain
247
+ // fell back to opts.getParentSessionId() — the RECEIVING process's root —
248
+ // so a marker with no parent of its own got THIS process's root stamped
249
+ // as its parent (set-once on the relay, never correctable). A parent-less
250
+ // marker now builds the room WITHOUT parent (the in-process path still
251
+ // sets it authoritatively later via onChildSession) — never a guess.
221
252
  const parentSessionId = (typeof p.parentSessionId === "string" && p.parentSessionId) ||
222
253
  (typeof p.parentSession === "string" && p.parentSession) ||
223
254
  (typeof p.parent === "string" && p.parent) ||
224
- opts.getParentSessionId() ||
225
255
  undefined;
256
+ if (!parentSessionId) {
257
+ envLog(`subagent marker without parent — not guessing (design 01M1CAW0): sid=${sessionId.slice(0, 8)}`);
258
+ console.warn("[un-bien] subagent marker carries no parentSessionId — creating " +
259
+ "the room WITHOUT parentage rather than guessing the local root " +
260
+ "(design 01M1CAW0)");
261
+ }
226
262
  if (parentRoomId) {
263
+ const markerRoomId = normalizeChildRoomId(sessionId, existing?.roomId);
227
264
  ensureChildRoom(sessionId, {
228
265
  relayUrl,
229
266
  sessionId,
230
- roomId: existing?.roomId ?? roomIdForSession(sessionId),
267
+ roomId: markerRoomId,
231
268
  parentRoomId,
232
269
  parentSessionId,
233
270
  startedAt: existing?.startedAt ?? Date.now(),
@@ -235,6 +272,7 @@ export function initSubagentRooms(rootPi, opts) {
235
272
  subagentId: id,
236
273
  makeHandlers,
237
274
  getStatus: () => normalizeStatus(panelBySession.get(sessionId)?.status),
275
+ onTerminate: () => terminateChildRoom(sessionId, markerRoomId),
238
276
  });
239
277
  }
240
278
  }
@@ -430,6 +468,15 @@ export function initSubagentRooms(rootPi, opts) {
430
468
  : undefined;
431
469
  const existing = children.get(sessionId);
432
470
  if (existing) {
471
+ // design 01M1CAW0: a LIVE room keyed by anything but the sid-hash id is
472
+ // residue of the retired cwd-derived announce. It cannot be rebuilt
473
+ // (the room is already open on the relay) — log loudly and keep serving.
474
+ if (existing.roomId !== roomIdForSession(sessionId)) {
475
+ envLog(`subagent live room id mismatch: ${existing.roomId} != sid-hash for sid=${sessionId.slice(0, 8)} (design 01M1CAW0)`);
476
+ console.warn(`[un-bien] subagent room "${existing.roomId}" is not the ` +
477
+ `session-derived room — set-once parentage on it is suspect ` +
478
+ `(design 01M1CAW0)`);
479
+ }
433
480
  if (launch)
434
481
  existing.attach(launch.childPi, launch.ctx);
435
482
  if (parent)
@@ -444,8 +491,13 @@ export function initSubagentRooms(rootPi, opts) {
444
491
  return;
445
492
  }
446
493
  building.add(sessionId);
494
+ // design 01M1CAW0: the room this build opens is ALWAYS the sid-hash id —
495
+ // a buildArgs.roomId that differs (cwd-derived residue fed from a stale
496
+ // panel row) is refused here, the single authoritative choke point.
497
+ const roomId = normalizeChildRoomId(sessionId, buildArgs.roomId);
447
498
  void startChildRoom({
448
499
  ...buildArgs,
500
+ roomId,
449
501
  onClosed: () => children.delete(sessionId),
450
502
  }).then((room) => {
451
503
  building.delete(sessionId);
@@ -493,14 +545,16 @@ export function initSubagentRooms(rootPi, opts) {
493
545
  setModel: ro,
494
546
  setThinkingLevel: ro,
495
547
  getEntries: async (since) => {
548
+ // PAGED like the root room's handler (design: get_entries backfill
549
+ // paging) — a lingered child's finished transcript can also exceed a
550
+ // transport cap in one frame. pi-faithful `since` semantics: unknown
551
+ // id → `Entry not found` error (dispatch turns a throw into
552
+ // success:false + error on the response envelope).
496
553
  const all = sm.getEntries();
497
- const sliced = typeof since === "string"
498
- ? (() => {
499
- const i = all.findIndex((e) => e.id === since);
500
- return i === -1 ? all : all.slice(i + 1);
501
- })()
502
- : all;
503
- return { entries: sliced, leafId: sm.getLeafId() };
554
+ if (typeof since === "string" &&
555
+ all.findIndex((e) => e.id === since) === -1)
556
+ throw new Error(`Entry not found: ${since}`);
557
+ return pageEntries(all, since, sm.getLeafId());
504
558
  },
505
559
  };
506
560
  }
@@ -542,7 +596,7 @@ export function initSubagentRooms(rootPi, opts) {
542
596
  unboundSessions.push(sessionId);
543
597
  unboundInProcess.add(sessionId);
544
598
  }
545
- const roomId = existing?.roomId ?? roomIdForSession(sessionId);
599
+ const roomId = normalizeChildRoomId(sessionId, existing?.roomId);
546
600
  const name = existing?.description ?? existing?.type ?? "subagent";
547
601
  // Register/enrich the panel row keyed by the CHILD sessionId (identity from
548
602
  // detection); labels enrich from a bound record's events once correlated.
@@ -587,10 +641,68 @@ export function initSubagentRooms(rootPi, opts) {
587
641
  name,
588
642
  makeHandlers,
589
643
  getStatus: () => normalizeStatus(panelBySession.get(sessionId)?.status),
644
+ onTerminate: () => terminateChildRoom(sessionId, roomId),
590
645
  });
591
646
  }
647
+ /**
648
+ * The config gate for app-driven termination, read at call time (config can
649
+ * change mid-run). Shared by the root dispatcher's `terminate` /
650
+ * `close_child_room` gates and the child-room `onTerminate` callback.
651
+ */
652
+ function allowRemoteTerminate() {
653
+ return effectiveAllowRemoteTerminate(loadLocalConfig(process.cwd()));
654
+ }
655
+ /**
656
+
657
+ /**
658
+ * app-driven close (`close_child_room` ub frame + child-room `terminate`):
659
+ * permanently close the child room — tombstone the sid FIRST (in-flight
660
+ * builds dispose instead of registering), then dispose the room (drops its
661
+ * conn; last conn at the relay => room_ended, which purges the app row). An
662
+ * in-process SDK child is NOT force-killed (v1: its run finishes headless;
663
+ * the panel row stamps terminal on natural completion) — this kills the
664
+ * CHAT, not the subagent's work. `room_id` must be the sid-hash id of
665
+ * `sid` (normalizeChildRoomId contract); the sid comes from the marker/
666
+ * ensure path that owns the room. Returns whether the gate allowed it.
667
+ * Closure-level so the controller method, the root dispatcher's
668
+ * `close_child_room` (via the controller) and the startChildRoom
669
+ * `onTerminate` callback share ONE teardown path.
670
+ */
671
+ function terminateChildRoom(sessionId, roomId) {
672
+ if (!allowRemoteTerminate())
673
+ return false;
674
+ const room = children.get(sessionId);
675
+ if (room && room.roomId !== roomId) {
676
+ // design 01M1CAW0: never tear down a room keyed by a foreign id.
677
+ envLog(`terminate refused: room ${roomId.slice(0, 8)} != sid-hash for sid=${sessionId.slice(0, 8)}`);
678
+ return false;
679
+ }
680
+ keeperReleased.add(sessionId);
681
+ children.delete(sessionId);
682
+ building.delete(sessionId);
683
+ pendingAttach.delete(sessionId);
684
+ pendingParent.delete(sessionId);
685
+ try {
686
+ room?.dispose();
687
+ }
688
+ catch {
689
+ /* best-effort — the conn drops with the process either way */
690
+ }
691
+ envLog(`close_child_room: room=${roomId.slice(0, 8)} (sid=${sessionId.slice(0, 8)})`);
692
+ return true;
693
+ }
592
694
  return {
593
695
  onChildSession,
696
+ closeChildRoom(roomId) {
697
+ // Root-dispatcher path (`close_child_room`): close by ROOM id — the app
698
+ // knows only the room. The gate lives in the root dispatcher.
699
+ for (const [sid, room] of children) {
700
+ if (room.roomId !== roomId)
701
+ continue;
702
+ return terminateChildRoom(sid, roomId);
703
+ }
704
+ return false;
705
+ },
594
706
  dispose() {
595
707
  disposed = true;
596
708
  for (const u of unsub) {
@@ -667,6 +779,21 @@ async function startChildRoom(args) {
667
779
  },
668
780
  });
669
781
  }
782
+ else if (f.type === "terminate") {
783
+ // app-driven kill of a CHILD chat (plan [lifecycle][send]): stop
784
+ // serving this room + tombstone it. The in-process SDK child is not
785
+ // force-killed (v1) — its run finishes headless and the panel row
786
+ // stamps terminal on natural completion. There is NO re-serve: the
787
+ // tombstone is lifted only by a genuine same-sid session_start
788
+ // (resume of the same session file), never by reconnect. The actual
789
+ // teardown runs through the controller's closeChildRoom (closure
790
+ // state — tombstone + map cleanup + dispose), reached via the
791
+ // onTerminate callback the room was built with.
792
+ if (!args.onTerminate()) {
793
+ envLog("terminate(ub): remote terminate disabled on this machine");
794
+ return;
795
+ }
796
+ }
670
797
  }
671
798
  }
672
799
  async function gateAndAttach(peer, firstInner) {
@@ -722,10 +849,15 @@ async function startChildRoom(args) {
722
849
  // Pi ids — the app nests + maps by these; parent (roomId) + subagentId are
723
850
  // kept as supplementary (not the logic keys).
724
851
  sessionId: args.sessionId,
852
+ // design 01M1CAW0: parentage (parent roomId + parentSessionId) is
853
+ // advertised ONLY when the parent SESSION is known — the relay merges
854
+ // it SET-ONCE, so a parent-less build must never stamp a guessed parent.
725
855
  ...(args.parentSessionId
726
- ? { parentSessionId: args.parentSessionId }
856
+ ? {
857
+ parent: args.parentRoomId,
858
+ parentSessionId: args.parentSessionId,
859
+ }
727
860
  : {}),
728
- parent: args.parentRoomId,
729
861
  ...(args.subagentId ? { subagentId: args.subagentId } : {}),
730
862
  },
731
863
  });
@@ -1 +1 @@
1
- {"version":3,"file":"subagent_rooms.js","sourceRoot":"","sources":["../src/subagent_rooms.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"subagent_rooms.js","sourceRoot":"","sources":["../src/subagent_rooms.ts"],"names":[],"mappings":"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"}