openmeld 0.3.217 → 0.3.219

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 (111) hide show
  1. package/LICENSE +21 -0
  2. package/dist/{add-me-membership-C2Ys6Gq2.js → add-me-membership-DUspkb62.js} +2 -2
  3. package/dist/{add-me-membership-C2Ys6Gq2.js.map → add-me-membership-DUspkb62.js.map} +1 -1
  4. package/dist/{agents-ClqMS9aO.js → agents-B0LFMdki.js} +9 -9
  5. package/dist/{agents-ClqMS9aO.js.map → agents-B0LFMdki.js.map} +1 -1
  6. package/dist/{api-client-foundation-CMVD057A.js → api-client-foundation-DJ9KlXwz.js} +1 -1
  7. package/dist/{api-client-foundation-Cib1elkI.js → api-client-foundation-Dmjk9vVk.js} +3 -3
  8. package/dist/{api-client-foundation-Cib1elkI.js.map → api-client-foundation-Dmjk9vVk.js.map} +1 -1
  9. package/dist/{auth-session-DOjVKRI_.js → auth-session-CDhQANWx.js} +22 -6
  10. package/dist/auth-session-CDhQANWx.js.map +1 -0
  11. package/dist/auth-session-DsBkEFct.js +4 -0
  12. package/dist/{channel-BfTy6fDo.js → channel-D5ABuavH.js} +3 -3
  13. package/dist/{channel-BfTy6fDo.js.map → channel-D5ABuavH.js.map} +1 -1
  14. package/dist/{cli-space-api-BT_Pu9Yg.js → cli-space-api-DVfyQOhC.js} +6 -6
  15. package/dist/{cli-space-api-BT_Pu9Yg.js.map → cli-space-api-DVfyQOhC.js.map} +1 -1
  16. package/dist/{command-C1w0UpIu.js → command-CFDUoorG.js} +15 -15
  17. package/dist/{command-C1w0UpIu.js.map → command-CFDUoorG.js.map} +1 -1
  18. package/dist/{computer-connection-DsjsjmPp.js → computer-connection-DYnof5Xw.js} +2 -2
  19. package/dist/{computer-connection-DsjsjmPp.js.map → computer-connection-DYnof5Xw.js.map} +1 -1
  20. package/dist/{computer-connection-review-RXJyryCh.js → computer-connection-review-Brrrl6Hk.js} +5 -5
  21. package/dist/{computer-connection-review-RXJyryCh.js.map → computer-connection-review-Brrrl6Hk.js.map} +1 -1
  22. package/dist/{computer-disconnect-B_LZM2QE.js → computer-disconnect-B0BqUt8x.js} +7 -7
  23. package/dist/{computer-disconnect-B_LZM2QE.js.map → computer-disconnect-B0BqUt8x.js.map} +1 -1
  24. package/dist/{computer-setup-continuation-BVI7SD0M.js → computer-setup-continuation-BWwd7hfl.js} +3 -3
  25. package/dist/{computer-setup-continuation-BVI7SD0M.js.map → computer-setup-continuation-BWwd7hfl.js.map} +1 -1
  26. package/dist/{context-Di5R4iik.js → context-D9Ebb5wl.js} +4 -4
  27. package/dist/{context-Di5R4iik.js.map → context-D9Ebb5wl.js.map} +1 -1
  28. package/dist/{daemon-device-id-bfkbZj9G.js → daemon-device-id-YnLMx1kN.js} +5 -5
  29. package/dist/{daemon-device-id-bfkbZj9G.js.map → daemon-device-id-YnLMx1kN.js.map} +1 -1
  30. package/dist/{daemon-frame-transport-saNQVOyi.js → daemon-frame-transport-BOZpAMMJ.js} +34 -7
  31. package/dist/daemon-frame-transport-BOZpAMMJ.js.map +1 -0
  32. package/dist/{daemon-lifecycle-journal-DP01txRB.js → daemon-lifecycle-journal-Bp0fPeui.js} +7 -8
  33. package/dist/{daemon-lifecycle-journal-DP01txRB.js.map → daemon-lifecycle-journal-Bp0fPeui.js.map} +1 -1
  34. package/dist/{daemon-service-manager-CRHq3YSj.js → daemon-service-manager-ReGjcyjq.js} +1 -1
  35. package/dist/{daemon-service-manager-CXbN836B.js → daemon-service-manager-rNRRVrj1.js} +2 -2
  36. package/dist/{daemon-service-manager-CXbN836B.js.map → daemon-service-manager-rNRRVrj1.js.map} +1 -1
  37. package/dist/{daemon-service-runtime-DpiD8oap.js → daemon-service-runtime-BYWOcDb7.js} +5 -5
  38. package/dist/{daemon-service-runtime-DpiD8oap.js.map → daemon-service-runtime-BYWOcDb7.js.map} +1 -1
  39. package/dist/{daemon-service-update-coordinator-BuCEBJoe.js → daemon-service-update-coordinator-Cf4NtdK7.js} +16 -12
  40. package/dist/daemon-service-update-coordinator-Cf4NtdK7.js.map +1 -0
  41. package/dist/{dist-DkRliHib.js → dist-B6Z-8B4v.js} +44 -4
  42. package/dist/dist-B6Z-8B4v.js.map +1 -0
  43. package/dist/{dist-BdibASYs.js → dist-ChS52b_E.js} +2 -2
  44. package/dist/{dist-BdibASYs.js.map → dist-ChS52b_E.js.map} +1 -1
  45. package/dist/{dist-RR7jryeV.js → dist-uyFidGQU.js} +1 -1
  46. package/dist/{elapsed-time-CR9OIZSD.js → elapsed-time-BP84Tz_l.js} +5 -5
  47. package/dist/{elapsed-time-CR9OIZSD.js.map → elapsed-time-BP84Tz_l.js.map} +1 -1
  48. package/dist/{entry-CSoHtCQ9.js → entry-B4G_hqId.js} +7 -7
  49. package/dist/{entry-CSoHtCQ9.js.map → entry-B4G_hqId.js.map} +1 -1
  50. package/dist/{installation-inventory-CscX0nmD.js → installation-inventory-vyAkTNzT.js} +3 -3
  51. package/dist/{installation-inventory-CscX0nmD.js.map → installation-inventory-vyAkTNzT.js.map} +1 -1
  52. package/dist/{installer-CkF3gSdD.js → installer-Cw05xb5l.js} +2 -2
  53. package/dist/{installer-CkF3gSdD.js.map → installer-Cw05xb5l.js.map} +1 -1
  54. package/dist/native/openmeld-keychain.node +0 -0
  55. package/dist/{open-code-permission-Doem1R2N.js → open-code-permission-DHFJYc_o.js} +5 -1
  56. package/dist/open-code-permission-DHFJYc_o.js.map +1 -0
  57. package/dist/{openmeld-BcyBlby4.js → openmeld-CheYNGUc.js} +238 -43
  58. package/dist/openmeld-CheYNGUc.js.map +1 -0
  59. package/dist/openmeld-dev.js +0 -0
  60. package/dist/{openmeld-maintenance-worker-Brsfy22C.js → openmeld-maintenance-worker-BlGoUmXC.js} +10 -10
  61. package/dist/{openmeld-maintenance-worker-Brsfy22C.js.map → openmeld-maintenance-worker-BlGoUmXC.js.map} +1 -1
  62. package/dist/{openmeld-tools-update-join-CUh0JERe.js → openmeld-tools-update-join-BZp2dx06.js} +4 -4
  63. package/dist/{openmeld-tools-update-join-CUh0JERe.js.map → openmeld-tools-update-join-BZp2dx06.js.map} +1 -1
  64. package/dist/openmeld.js +4 -4
  65. package/dist/{prepare-provider-runtime-DxaGSe3R.js → prepare-provider-runtime-niE5QEAv.js} +100 -74
  66. package/dist/prepare-provider-runtime-niE5QEAv.js.map +1 -0
  67. package/dist/{prepare-session-executor-CyouBl49.js → prepare-session-executor-DhWSYpJX.js} +19 -19
  68. package/dist/{prepare-session-executor-CyouBl49.js.map → prepare-session-executor-DhWSYpJX.js.map} +1 -1
  69. package/dist/{process-channel-Cocpv3Br.js → process-channel-B2BU2X7x.js} +2 -2
  70. package/dist/{process-channel-Cocpv3Br.js.map → process-channel-B2BU2X7x.js.map} +1 -1
  71. package/dist/{runtime-DGT66AR-.js → runtime-COI2XGXX.js} +142 -21
  72. package/dist/runtime-COI2XGXX.js.map +1 -0
  73. package/dist/{runtime-agent-controller-reporting-submission-C1Vc_JWm.js → runtime-agent-controller-reporting-submission-BgkhnPU5.js} +8 -8
  74. package/dist/{runtime-agent-controller-reporting-submission-C1Vc_JWm.js.map → runtime-agent-controller-reporting-submission-BgkhnPU5.js.map} +1 -1
  75. package/dist/{runtime-reporting-health-state-CPWlQ5IX.js → runtime-reporting-health-state-HhsHeySN.js} +9 -36
  76. package/dist/runtime-reporting-health-state-HhsHeySN.js.map +1 -0
  77. package/dist/{runtime-transport-BLtOFrtv.js → runtime-transport-0F5E6So6.js} +73 -2
  78. package/dist/runtime-transport-0F5E6So6.js.map +1 -0
  79. package/dist/{service-ClETdJbz.js → service-CgAFfq0Y.js} +21 -21
  80. package/dist/service-CgAFfq0Y.js.map +1 -0
  81. package/dist/{service-account-authorization-kciEaW5t.js → service-account-authorization-DAPQy2yP.js} +2 -2
  82. package/dist/{service-account-authorization-kciEaW5t.js.map → service-account-authorization-DAPQy2yP.js.map} +1 -1
  83. package/dist/{service-account-control-3n_YwNsF.js → service-account-control-DiLG-w18.js} +10 -10
  84. package/dist/{service-account-control-3n_YwNsF.js.map → service-account-control-DiLG-w18.js.map} +1 -1
  85. package/dist/{service-control-capabilities-DoW5MW7A.js → service-control-capabilities-BP8sLHBA.js} +1 -1
  86. package/dist/{service-control-capabilities-C2tMMuFl.js → service-control-capabilities-DEiDpmzc.js} +4 -4
  87. package/dist/{service-control-capabilities-C2tMMuFl.js.map → service-control-capabilities-DEiDpmzc.js.map} +1 -1
  88. package/dist/{state-CMs4p0wo.js → state-Cwf0cTLu.js} +2 -2
  89. package/dist/{state-CMs4p0wo.js.map → state-Cwf0cTLu.js.map} +1 -1
  90. package/dist/{upgrade-2epQATRq.js → upgrade-CaPzHLuW.js} +14 -7
  91. package/dist/upgrade-CaPzHLuW.js.map +1 -0
  92. package/dist/upgrade-DYxQKdbJ.js +4 -0
  93. package/dist/{windows-user-task-CSJpDs-S.js → windows-user-task-D4uMvea3.js} +84 -3
  94. package/dist/windows-user-task-D4uMvea3.js.map +1 -0
  95. package/dist/{windows-user-task-CWDzkJCq.js → windows-user-task-hNE24Gqr.js} +1 -1
  96. package/package.json +41 -43
  97. package/dist/auth-session-D7oAIuHk.js +0 -4
  98. package/dist/auth-session-DOjVKRI_.js.map +0 -1
  99. package/dist/daemon-frame-transport-saNQVOyi.js.map +0 -1
  100. package/dist/daemon-service-update-coordinator-BuCEBJoe.js.map +0 -1
  101. package/dist/dist-DkRliHib.js.map +0 -1
  102. package/dist/open-code-permission-Doem1R2N.js.map +0 -1
  103. package/dist/openmeld-BcyBlby4.js.map +0 -1
  104. package/dist/prepare-provider-runtime-DxaGSe3R.js.map +0 -1
  105. package/dist/runtime-DGT66AR-.js.map +0 -1
  106. package/dist/runtime-reporting-health-state-CPWlQ5IX.js.map +0 -1
  107. package/dist/runtime-transport-BLtOFrtv.js.map +0 -1
  108. package/dist/service-ClETdJbz.js.map +0 -1
  109. package/dist/upgrade-2epQATRq.js.map +0 -1
  110. package/dist/upgrade-BVIot_cP.js +0 -4
  111. package/dist/windows-user-task-CSJpDs-S.js.map +0 -1
@@ -1,6 +1,6 @@
1
1
  #!/usr/bin/env node
2
2
 
3
- import { t as ExecutionHostError } from "./channel-BfTy6fDo.js";
3
+ import { t as ExecutionHostError } from "./channel-D5ABuavH.js";
4
4
  //#region src/local-service/execution-host/process-channel.ts
5
5
  function childExecutionHostChannel(child) {
6
6
  return {
@@ -61,4 +61,4 @@ function parentExecutionHostChannel() {
61
61
  //#endregion
62
62
  export { parentExecutionHostChannel as n, childExecutionHostChannel as t };
63
63
 
64
- //# sourceMappingURL=process-channel-Cocpv3Br.js.map
64
+ //# sourceMappingURL=process-channel-B2BU2X7x.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"process-channel-Cocpv3Br.js","names":[],"sources":["../src/local-service/execution-host/process-channel.ts"],"sourcesContent":["import type { ChildProcess } from \"node:child_process\";\nimport type { ExecutionHostChannel } from \"./channel\";\nimport { ExecutionHostError } from \"./channel\";\n\n// Use inherited Node-compatible IPC with JSON serialization. Provider stdout is\n// not a protocol channel; ordinary logs cannot become control messages.\nexport function childExecutionHostChannel(\n child: ChildProcess\n): ExecutionHostChannel {\n return {\n connected: () => child.connected,\n send: (message, completed) => {\n child.send(message, (error) => completed(error ?? null));\n },\n onMessage: (listener) => {\n child.on(\"message\", listener);\n return () => {\n child.off(\"message\", listener);\n };\n },\n onDisconnect: (listener) => {\n let observed = false;\n const finish = (error?: Error) => {\n if (!observed) {\n observed = true;\n listener(error);\n }\n };\n const exited = (code: number | null, signal: NodeJS.Signals | null) => {\n finish(\n new Error(`Host process exited (${signal ?? code ?? \"unknown\"})`)\n );\n };\n child.on(\"disconnect\", finish);\n child.on(\"exit\", exited);\n // Spawn/send failures must not become unhandled EventEmitter errors.\n child.on(\"error\", finish);\n return () => {\n child.off(\"disconnect\", finish);\n child.off(\"exit\", exited);\n child.off(\"error\", finish);\n };\n },\n };\n}\n\nexport function parentExecutionHostChannel(): ExecutionHostChannel {\n const send = process.send?.bind(process);\n if (!(send && process.connected)) {\n throw new ExecutionHostError(\n \"host.inherited_channel_required\",\n \"The execution host requires its supervisor's inherited IPC channel.\"\n );\n }\n return {\n connected: () => process.connected === true,\n send: (message, completed) => {\n send(message, undefined, undefined, (error) => completed(error ?? null));\n },\n onMessage: (listener) => {\n process.on(\"message\", listener);\n return () => {\n process.off(\"message\", listener);\n };\n },\n onDisconnect: (listener) => {\n process.on(\"disconnect\", listener);\n return () => {\n process.off(\"disconnect\", listener);\n };\n },\n };\n}\n"],"mappings":";;;;AAMA,SAAgB,0BACd,OACsB;CACtB,OAAO;EACL,iBAAiB,MAAM;EACvB,OAAO,SAAS,cAAc;GAC5B,MAAM,KAAK,UAAU,UAAU,UAAU,SAAS,IAAI,CAAC;EACzD;EACA,YAAY,aAAa;GACvB,MAAM,GAAG,WAAW,QAAQ;GAC5B,aAAa;IACX,MAAM,IAAI,WAAW,QAAQ;GAC/B;EACF;EACA,eAAe,aAAa;GAC1B,IAAI,WAAW;GACf,MAAM,UAAU,UAAkB;IAChC,IAAI,CAAC,UAAU;KACb,WAAW;KACX,SAAS,KAAK;IAChB;GACF;GACA,MAAM,UAAU,MAAqB,WAAkC;IACrE,uBACE,IAAI,MAAM,wBAAwB,UAAU,QAAQ,UAAU,EAAE,CAClE;GACF;GACA,MAAM,GAAG,cAAc,MAAM;GAC7B,MAAM,GAAG,QAAQ,MAAM;GAEvB,MAAM,GAAG,SAAS,MAAM;GACxB,aAAa;IACX,MAAM,IAAI,cAAc,MAAM;IAC9B,MAAM,IAAI,QAAQ,MAAM;IACxB,MAAM,IAAI,SAAS,MAAM;GAC3B;EACF;CACF;AACF;AAEA,SAAgB,6BAAmD;CACjE,MAAM,OAAO,QAAQ,MAAM,KAAK,OAAO;CACvC,IAAI,EAAE,QAAQ,QAAQ,YACpB,MAAM,IAAI,mBACR,mCACA,qEACF;CAEF,OAAO;EACL,iBAAiB,QAAQ,cAAc;EACvC,OAAO,SAAS,cAAc;GAC5B,KAAK,SAAS,KAAA,GAAW,KAAA,IAAY,UAAU,UAAU,SAAS,IAAI,CAAC;EACzE;EACA,YAAY,aAAa;GACvB,QAAQ,GAAG,WAAW,QAAQ;GAC9B,aAAa;IACX,QAAQ,IAAI,WAAW,QAAQ;GACjC;EACF;EACA,eAAe,aAAa;GAC1B,QAAQ,GAAG,cAAc,QAAQ;GACjC,aAAa;IACX,QAAQ,IAAI,cAAc,QAAQ;GACpC;EACF;CACF;AACF"}
1
+ {"version":3,"file":"process-channel-B2BU2X7x.js","names":[],"sources":["../src/local-service/execution-host/process-channel.ts"],"sourcesContent":["import type { ChildProcess } from \"node:child_process\";\nimport type { ExecutionHostChannel } from \"./channel\";\nimport { ExecutionHostError } from \"./channel\";\n\n// Use inherited Node-compatible IPC with JSON serialization. Provider stdout is\n// not a protocol channel; ordinary logs cannot become control messages.\nexport function childExecutionHostChannel(\n child: ChildProcess\n): ExecutionHostChannel {\n return {\n connected: () => child.connected,\n send: (message, completed) => {\n child.send(message, (error) => completed(error ?? null));\n },\n onMessage: (listener) => {\n child.on(\"message\", listener);\n return () => {\n child.off(\"message\", listener);\n };\n },\n onDisconnect: (listener) => {\n let observed = false;\n const finish = (error?: Error) => {\n if (!observed) {\n observed = true;\n listener(error);\n }\n };\n const exited = (code: number | null, signal: NodeJS.Signals | null) => {\n finish(\n new Error(`Host process exited (${signal ?? code ?? \"unknown\"})`)\n );\n };\n child.on(\"disconnect\", finish);\n child.on(\"exit\", exited);\n // Spawn/send failures must not become unhandled EventEmitter errors.\n child.on(\"error\", finish);\n return () => {\n child.off(\"disconnect\", finish);\n child.off(\"exit\", exited);\n child.off(\"error\", finish);\n };\n },\n };\n}\n\nexport function parentExecutionHostChannel(): ExecutionHostChannel {\n const send = process.send?.bind(process);\n if (!(send && process.connected)) {\n throw new ExecutionHostError(\n \"host.inherited_channel_required\",\n \"The execution host requires its supervisor's inherited IPC channel.\"\n );\n }\n return {\n connected: () => process.connected === true,\n send: (message, completed) => {\n send(message, undefined, undefined, (error) => completed(error ?? null));\n },\n onMessage: (listener) => {\n process.on(\"message\", listener);\n return () => {\n process.off(\"message\", listener);\n };\n },\n onDisconnect: (listener) => {\n process.on(\"disconnect\", listener);\n return () => {\n process.off(\"disconnect\", listener);\n };\n },\n };\n}\n"],"mappings":";;;;AAMA,SAAgB,0BACd,OACsB;CACtB,OAAO;EACL,iBAAiB,MAAM;EACvB,OAAO,SAAS,cAAc;GAC5B,MAAM,KAAK,UAAU,UAAU,UAAU,SAAS,IAAI,CAAC;EACzD;EACA,YAAY,aAAa;GACvB,MAAM,GAAG,WAAW,QAAQ;GAC5B,aAAa;IACX,MAAM,IAAI,WAAW,QAAQ;GAC/B;EACF;EACA,eAAe,aAAa;GAC1B,IAAI,WAAW;GACf,MAAM,UAAU,UAAkB;IAChC,IAAI,CAAC,UAAU;KACb,WAAW;KACX,SAAS,KAAK;IAChB;GACF;GACA,MAAM,UAAU,MAAqB,WAAkC;IACrE,uBACE,IAAI,MAAM,wBAAwB,UAAU,QAAQ,UAAU,EAAE,CAClE;GACF;GACA,MAAM,GAAG,cAAc,MAAM;GAC7B,MAAM,GAAG,QAAQ,MAAM;GAEvB,MAAM,GAAG,SAAS,MAAM;GACxB,aAAa;IACX,MAAM,IAAI,cAAc,MAAM;IAC9B,MAAM,IAAI,QAAQ,MAAM;IACxB,MAAM,IAAI,SAAS,MAAM;GAC3B;EACF;CACF;AACF;AAEA,SAAgB,6BAAmD;CACjE,MAAM,OAAO,QAAQ,MAAM,KAAK,OAAO;CACvC,IAAI,EAAE,QAAQ,QAAQ,YACpB,MAAM,IAAI,mBACR,mCACA,qEACF;CAEF,OAAO;EACL,iBAAiB,QAAQ,cAAc;EACvC,OAAO,SAAS,cAAc;GAC5B,KAAK,SAAS,KAAA,GAAW,KAAA,IAAY,UAAU,UAAU,SAAS,IAAI,CAAC;EACzE;EACA,YAAY,aAAa;GACvB,QAAQ,GAAG,WAAW,QAAQ;GAC9B,aAAa;IACX,QAAQ,IAAI,WAAW,QAAQ;GACjC;EACF;EACA,eAAe,aAAa;GAC1B,QAAQ,GAAG,cAAc,QAAQ;GACjC,aAAa;IACX,QAAQ,IAAI,cAAc,QAAQ;GACpC;EACF;CACF;AACF"}
@@ -1,24 +1,24 @@
1
1
  #!/usr/bin/env node
2
2
 
3
3
  import { d as runWithHeldLock, lt as resolveOpenMeldRootDir, s as releaseLock, t as acquireLock } from "./lock-Bsl_ElWy.js";
4
- import { Pi as COMPUTER_FILE_ACCESS_OWNER_CANCELLED_REASON_CODE, Sr as SPACE_DISPATCH_TRACE_PROMPT_PREVIEW_MAX_CHARS, Tt as buildSpaceAttachmentDownloadPath, Xt as createOrganizationSkillsApi, sn as createSpaceApi } from "./dist-DkRliHib.js";
4
+ import { Pi as COMPUTER_FILE_ACCESS_OWNER_CANCELLED_REASON_CODE, Sr as SPACE_DISPATCH_TRACE_PROMPT_PREVIEW_MAX_CHARS, Tt as buildSpaceAttachmentDownloadPath, Xt as createOrganizationSkillsApi, sn as createSpaceApi } from "./dist-B6Z-8B4v.js";
5
5
  import { b as normalizeKnownBuiltinAgentControllerId, d as resolveBuiltinAgentControllerConversationKind, l as buildAgentControllerConversationRef } from "./controller-contract-DAOCaefz.js";
6
- import { $ as canManageRegistryAgentSkillTargets, $t as mergeOpenClawGatewayVisibility, An as runRuntimeTask, Bn as upsertConversationExecutionState, Bt as createMutableRouteCatalogState, Cn as verifyCodexAppServerThread, E as resolveProfileWorkspaceRuntime, Fn as loadLedgerState, Gt as syncRuntimeEventToInflightTaskControlRegistry, In as removeConversationExecutionState, Kt as SPACE_ACTION_CONTEXT_GUIDANCE_LINES, L as manageAgentRegistrationInstallation, Ln as resolveConversationExecutionStateByLookupKey, Nn as appendLedgerHistoryEntry, Pn as commitResolvedAgentContext, Qn as DEFAULT_TASK_LIFECYCLE_HEARTBEAT_INTERVAL_MS, Qt as createPendingAgentInteractionRegistry, Rn as seedLegacyAgentContext, Sn as resolveCodexAppServerCompletedTurn, U as setAgentRegistrationEnabled, Un as assertLegacyAgentContextAssociation, Vn as withLedgerStateTransaction, Vt as createRouteCatalogFromMutableState, Wn as buildAgentContextLookupKey, Wt as normalizeDispatchThreadAction, Xn as listAgentControllerSupervisedProcessIds, Yt as createSerialAgentInteractionCallback, Zt as normalizeDispatchPostMessageAction, _ as loadDaemonRouteCatalog, a as buildOpenClawSpaceSessionKey, an as resolveDispatchContinuityObservation, b as resolveLocalController, bn as resolveInstalledCodexLaunchCandidates, cn as resolveLatestScopedConversationExecutionState, dn as createLocalAdapterEntries, en as createLocalTaskInterruptSender, ft as listProjectBindings, g as writeDaemonRouteCatalogCache, h as readDaemonRouteCatalogCache, in as resolveDispatchQueueLogMeta, jn as buildRuntimeWorkspaceFingerprint, kn as DaemonServiceRunError, kt as resolveRegistryRuntimeAdapterContractByAgentControllerRef, mn as resolveInstalledOpenCodeLaunchCandidates, nn as createLocalExecutionSlots, o as normalizeOpenClawSpaceIdPrefix, on as resolveCompatibleAgentContextMatch, pn as forkOpenCodeServerSession, qt as SPACE_ACTION_TARGET_GUIDANCE_LINES, rn as createInflightTaskControlRegistry, rt as resolveBuiltinAgentControllerDefinition, s as slugifyOpenClawNamePart, sn as resolveCompatibleConversationExecutionState, t as prepareProviderRuntime, tt as resolveSkillsAgentRegistry, un as createLocalAdapterContainer, v as buildRuntimeRouteTargets, w as resolveCurrentEffectiveProfileWorkingFolderRuntime, x as resolveLocalRuntimeControllerSupport, xn as forkCodexAppServerThread, y as readLocalEnabledControllers, yn as resolveCodexTimeoutMs, z as reconcileNewRunnableBuiltinAgentRegistrations, zn as settleInflightTask } from "./prepare-provider-runtime-DxaGSe3R.js";
7
- import { D as runtimeTransportLocalAgentControlManageInstallationFramePayloadSchema, E as runtimeTransportLocalAgentControlInterruptFramePayloadSchema, Jn as executionContextAssignmentSchema, L as runtimeTransportResumeControllerConversationFramePayloadSchema, R as runtimeTransportResumeControllerConversationResultFramePayloadSchema, T as runtimeTransportLocalAgentControlForkSessionFramePayloadSchema, Wt as spaceWorkSelectionSchema, Xn as executionContextTaskSchema, Y as openMeldDaemonTaskResultPayloadSchema, _r as runtimeTransportDeliveryExecutionIdentitySchema, b as runtimeTransportForkAgentSessionResultSchema, c as runtimeTransportDeliverDispatchRequestSchema, d as runtimeTransportDispatchInteractionResponseFramePayloadSchema, f as runtimeTransportDispatchLifecycleAcknowledgementSchema, gr as runtimeCoordinatorExecutionTokenEnvelopeSchema, ir as AGENT_INTERACTION_DEFAULT_TIMEOUT_MS, jr as localAgentReasoningPreferencesSchema, k as runtimeTransportLocalAgentControlSetEnabledFramePayloadSchema, kr as LOCAL_AGENT_REASONING_MAX_CHARS, l as runtimeTransportDispatchInteractionDeliveredRequestSchema, or as agentInteractionRequestSchema, p as runtimeTransportDispatchLifecycleRequestSchema, w as runtimeTransportLocalAgentControlCancelFramePayloadSchema } from "./runtime-transport-BLtOFrtv.js";
8
- import { d as getAuthSessionState } from "./auth-session-DOjVKRI_.js";
6
+ import { $ as canManageRegistryAgentSkillTargets, $t as mergeOpenClawGatewayVisibility, An as runRuntimeTask, Bn as upsertConversationExecutionState, Bt as createMutableRouteCatalogState, Cn as verifyCodexAppServerThread, E as resolveProfileWorkspaceRuntime, Fn as loadLedgerState, Gt as syncRuntimeEventToInflightTaskControlRegistry, In as removeConversationExecutionState, Kt as SPACE_ACTION_CONTEXT_GUIDANCE_LINES, L as manageAgentRegistrationInstallation, Ln as resolveConversationExecutionStateByLookupKey, Nn as appendLedgerHistoryEntry, Pn as commitResolvedAgentContext, Qn as DEFAULT_TASK_LIFECYCLE_HEARTBEAT_INTERVAL_MS, Qt as createPendingAgentInteractionRegistry, Rn as seedLegacyAgentContext, Sn as resolveCodexAppServerCompletedTurn, U as setAgentRegistrationEnabled, Un as assertLegacyAgentContextAssociation, Vn as withLedgerStateTransaction, Vt as createRouteCatalogFromMutableState, Wn as buildAgentContextLookupKey, Wt as normalizeDispatchThreadAction, Xn as listAgentControllerSupervisedProcessIds, Yt as createSerialAgentInteractionCallback, Zt as normalizeDispatchPostMessageAction, _ as loadDaemonRouteCatalog, a as buildOpenClawSpaceSessionKey, an as resolveDispatchContinuityObservation, b as resolveLocalController, bn as resolveInstalledCodexLaunchCandidates, cn as resolveLatestScopedConversationExecutionState, dn as createLocalAdapterEntries, en as createLocalTaskInterruptSender, ft as listProjectBindings, g as writeDaemonRouteCatalogCache, h as readDaemonRouteCatalogCache, in as resolveDispatchQueueLogMeta, jn as buildRuntimeWorkspaceFingerprint, kn as DaemonServiceRunError, kt as resolveRegistryRuntimeAdapterContractByAgentControllerRef, mn as resolveInstalledOpenCodeLaunchCandidates, nn as createLocalExecutionSlots, o as normalizeOpenClawSpaceIdPrefix, on as resolveCompatibleAgentContextMatch, pn as forkOpenCodeServerSession, qt as SPACE_ACTION_TARGET_GUIDANCE_LINES, rn as createInflightTaskControlRegistry, rt as resolveBuiltinAgentControllerDefinition, s as slugifyOpenClawNamePart, sn as resolveCompatibleConversationExecutionState, t as prepareProviderRuntime, tt as resolveSkillsAgentRegistry, un as createLocalAdapterContainer, v as buildRuntimeRouteTargets, w as resolveCurrentEffectiveProfileWorkingFolderRuntime, x as resolveLocalRuntimeControllerSupport, xn as forkCodexAppServerThread, y as readLocalEnabledControllers, yn as resolveCodexTimeoutMs, z as reconcileNewRunnableBuiltinAgentRegistrations, zn as settleInflightTask } from "./prepare-provider-runtime-niE5QEAv.js";
7
+ import { D as runtimeTransportLocalAgentControlManageInstallationFramePayloadSchema, E as runtimeTransportLocalAgentControlInterruptFramePayloadSchema, Jn as executionContextAssignmentSchema, L as runtimeTransportResumeControllerConversationFramePayloadSchema, R as runtimeTransportResumeControllerConversationResultFramePayloadSchema, T as runtimeTransportLocalAgentControlForkSessionFramePayloadSchema, Wt as spaceWorkSelectionSchema, Xn as executionContextTaskSchema, Y as openMeldDaemonTaskResultPayloadSchema, _r as runtimeTransportDeliveryExecutionIdentitySchema, b as runtimeTransportForkAgentSessionResultSchema, c as runtimeTransportDeliverDispatchRequestSchema, d as runtimeTransportDispatchInteractionResponseFramePayloadSchema, f as runtimeTransportDispatchLifecycleAcknowledgementSchema, gr as runtimeCoordinatorExecutionTokenEnvelopeSchema, ir as AGENT_INTERACTION_DEFAULT_TIMEOUT_MS, jr as localAgentReasoningPreferencesSchema, k as runtimeTransportLocalAgentControlSetEnabledFramePayloadSchema, kr as LOCAL_AGENT_REASONING_MAX_CHARS, l as runtimeTransportDispatchInteractionDeliveredRequestSchema, or as agentInteractionRequestSchema, p as runtimeTransportDispatchLifecycleRequestSchema, w as runtimeTransportLocalAgentControlCancelFramePayloadSchema } from "./runtime-transport-0F5E6So6.js";
8
+ import { d as getAuthSessionState } from "./auth-session-CDhQANWx.js";
9
9
  import { n as OPENMELD_DAEMON_CANCEL_WITHDRAWN_BEFORE_START_REASON_CODE, t as OPENMELD_DAEMON_CANCEL_STOP_REQUESTED_AFTER_START_REASON_CODE } from "./control-plane-BDS63N7Y.js";
10
- import { f as withSkillsInstallLock, h as OFFICIAL_CLI_SKILL_URL, r as ensureLocalSkills, t as resolveSkillInstallStateForTarget } from "./state-CMs4p0wo.js";
11
- import { C as defaultManagedIntegrationPaths, a as fetchSpaceUpdates, c as downloadWorkingCopyFile, f as discoverLocalAgentSessionProviders, i as recordRuntimeReportingSuccess, l as materializeOrganizationSkillRelease, n as recordRuntimeReportingFailure, o as createSpaceWorkingCopies, p as recordOpenMeldCreatedLocalAgentSession, r as recordRuntimeReportingNotApplicable, s as createLedgerIo, u as startLocalAgentActivitySyncLoop, w as installAgentActivityIntegrations, y as registerAgentActivityRoute } from "./runtime-reporting-health-state-CPWlQ5IX.js";
12
- import { S as CONTROLLED_SHUTDOWN_RESULT_ACK_TIMEOUT_MS, _ as toErrorMessage$2, n as ensureDaemonRuntimePaths, s as emitRunLine, t as buildLedgerPaths, u as normalizeOptionalText$3, v as warnDaemonEvent } from "./daemon-device-id-bfkbZj9G.js";
13
- import { i as SPACE_PERSONAL_CONTRIBUTION_RULE, n as SPACE_COLLABORATION_CONTEXT_RULE, v as resolvePublicAgentFailureReason, y as resolveSpacePublicationRequirement } from "./dist-BdibASYs.js";
14
- import { B as flushDispatchResultOutbox, D as consumeArmedAgentControllerInterfaceReprobe, G as sendDispatchInteractionRequestFrame, Gt as createDispatchContinuationSpaceAccessContext, H as waitForDispatchResultOutboxAcknowledgement, J as sendDispatchPreviewFrame, K as sendDispatchLifecycleFrame, Q as emitDaemonDispatchJournalEvent, Qt as getSpaceAccessRequestContext, R as acknowledgeDispatchResultOutboxRecord, U as buildFailedTaskResultPayload, V as listDispatchResultOutboxPendingAcknowledgementKeys, Vt as buildSpaceRoundSignalPublication, W as resolveDispatchResultPayload, X as sendDispatchRuntimeEvidenceFrame, Y as sendDispatchReasoningFrame, Z as sendDispatchToolActivityFrame, Zt as getSpaceAccessPassword, a as resolveRegisterResponseFrame, at as buildDispatchBootstrapTemplateFacts, ct as buildDispatchSessionTitle, dt as resolveBootstrapTargetProfileContext, ft as resolveDispatchMentionSourceContext, i as resolveHeartbeatResponseFrame, it as isSameOrDescendantPath, lt as parseDispatchTask, nn as listSpaceMemberDirectorySendTargets, nt as resolveComputerFileAccessStorePath, o as sendDaemonFrame, ot as buildDispatchCorrelation, pn as DISPATCH_SPACE_ACTION_CLI_FALLBACK_COMMAND, q as sendDispatchPreviewEndFrame, r as parseDaemonFrame, st as buildDispatchPromptPlan, t as emitDaemonErrorFrame, tn as isWakeClosingSystemNoticeType, tt as readComputerFileAccessPolicy, ut as resolveBootstrapSpaceOwnerProfileId, z as enqueueDispatchResultOutboxRecord } from "./daemon-frame-transport-saNQVOyi.js";
15
- import { a as serviceExecutionHostCatalogSchema, i as SERVICE_EXECUTION_HOST_PROTOCOL, t as ExecutionHostError } from "./channel-BfTy6fDo.js";
10
+ import { f as withSkillsInstallLock, h as OFFICIAL_CLI_SKILL_URL, r as ensureLocalSkills, t as resolveSkillInstallStateForTarget } from "./state-Cwf0cTLu.js";
11
+ import { C as defaultManagedIntegrationPaths, a as fetchSpaceUpdates, c as downloadWorkingCopyFile, f as discoverLocalAgentSessionProviders, i as recordRuntimeReportingSuccess, l as materializeOrganizationSkillRelease, n as recordRuntimeReportingFailure, o as createSpaceWorkingCopies, p as recordOpenMeldCreatedLocalAgentSession, r as recordRuntimeReportingNotApplicable, s as createLedgerIo, u as startLocalAgentActivitySyncLoop, w as installAgentActivityIntegrations, y as registerAgentActivityRoute } from "./runtime-reporting-health-state-HhsHeySN.js";
12
+ import { S as CONTROLLED_SHUTDOWN_RESULT_ACK_TIMEOUT_MS, _ as toErrorMessage$2, n as ensureDaemonRuntimePaths, s as emitRunLine, t as buildLedgerPaths, u as normalizeOptionalText$3, v as warnDaemonEvent } from "./daemon-device-id-YnLMx1kN.js";
13
+ import { i as SPACE_PERSONAL_CONTRIBUTION_RULE, n as SPACE_COLLABORATION_CONTEXT_RULE, v as resolvePublicAgentFailureReason, y as resolveSpacePublicationRequirement } from "./dist-ChS52b_E.js";
14
+ import { $ as emitDaemonDispatchJournalEvent, $t as getSpaceAccessRequestContext, B as enqueueDispatchResultOutboxRecord, G as resolveDispatchResultPayload, H as listDispatchResultOutboxPendingAcknowledgementKeys, Ht as buildSpaceRoundSignalPublication, J as sendDispatchPreviewEndFrame, K as sendDispatchInteractionRequestFrame, Kt as createDispatchContinuationSpaceAccessContext, O as consumeArmedAgentControllerInterfaceReprobe, Q as sendDispatchToolActivityFrame, Qt as getSpaceAccessPassword, U as waitForDispatchResultOutboxAcknowledgement, V as flushDispatchResultOutbox, W as buildFailedTaskResultPayload, X as sendDispatchReasoningFrame, Y as sendDispatchPreviewFrame, Z as sendDispatchRuntimeEvidenceFrame, a as resolveRegisterResponseFrame, at as isSameOrDescendantPath, ct as buildDispatchPromptPlan, dt as resolveBootstrapSpaceOwnerProfileId, f as resolveOpenCodeDatabasePath, ft as resolveBootstrapTargetProfileContext, i as resolveHeartbeatResponseFrame, lt as buildDispatchSessionTitle, mn as DISPATCH_SPACE_ACTION_CLI_FALLBACK_COMMAND, nn as isWakeClosingSystemNoticeType, nt as readComputerFileAccessPolicy, o as sendDaemonFrame, ot as buildDispatchBootstrapTemplateFacts, pt as resolveDispatchMentionSourceContext, q as sendDispatchLifecycleFrame, r as parseDaemonFrame, rn as listSpaceMemberDirectorySendTargets, rt as resolveComputerFileAccessStorePath, st as buildDispatchCorrelation, t as emitDaemonErrorFrame, u as readOpenCodeSessionRows, ut as parseDispatchTask, z as acknowledgeDispatchResultOutboxRecord } from "./daemon-frame-transport-BOZpAMMJ.js";
15
+ import { a as serviceExecutionHostCatalogSchema, i as SERVICE_EXECUTION_HOST_PROTOCOL, t as ExecutionHostError } from "./channel-D5ABuavH.js";
16
16
  import { a as resolveBaseUrl, f as getConfiguredDaemonDispatchLimits, g as getConfiguredSkillsConfig } from "./base-url-D7uE_xTo.js";
17
- import { t as emitDaemonLifecycleEvent } from "./daemon-lifecycle-journal-DP01txRB.js";
18
- import { a as buildOpenMeldProfileIdentityRequestHeadersWithAuth, f as buildOpenMeldRequestContextFromProfileIdentity, n as fetchSpaceRequestWithTimeout, t as createCliApiClientFoundation } from "./api-client-foundation-Cib1elkI.js";
19
- import { a as submitRuntimeProviderConversationProofs, f as recordRuntimeProviderUsageLimits, i as submitRuntimeAgentControllerReports, l as resolveLocalAgentControllerReportDecision, o as collectLocalAgentControllerInventory, t as notifyRuntimeReportingAttemptObserver, u as probeAgentControllerUsageObservationAuth } from "./runtime-agent-controller-reporting-submission-C1Vc_JWm.js";
20
- import { t as installSkillsToTargets } from "./installer-CkF3gSdD.js";
21
- import { b as supersedeDispatchSpaceActionRecordForReconsideration, f as buildDispatchOwnedRuntimeEnv, g as createDispatchSpaceActionContext, h as OPENMELD_SPACE_ACTION_CONTEXT_PATH_ENV, n as fetchSpaceMeta, t as createCliSpaceApi, y as readDispatchSpaceActionRecord } from "./cli-space-api-BT_Pu9Yg.js";
17
+ import { t as emitDaemonLifecycleEvent } from "./daemon-lifecycle-journal-Bp0fPeui.js";
18
+ import { a as buildOpenMeldProfileIdentityRequestHeadersWithAuth, f as buildOpenMeldRequestContextFromProfileIdentity, n as fetchSpaceRequestWithTimeout, t as createCliApiClientFoundation } from "./api-client-foundation-Dmjk9vVk.js";
19
+ import { a as submitRuntimeProviderConversationProofs, f as recordRuntimeProviderUsageLimits, i as submitRuntimeAgentControllerReports, l as resolveLocalAgentControllerReportDecision, o as collectLocalAgentControllerInventory, t as notifyRuntimeReportingAttemptObserver, u as probeAgentControllerUsageObservationAuth } from "./runtime-agent-controller-reporting-submission-BgkhnPU5.js";
20
+ import { t as installSkillsToTargets } from "./installer-Cw05xb5l.js";
21
+ import { b as supersedeDispatchSpaceActionRecordForReconsideration, f as buildDispatchOwnedRuntimeEnv, g as createDispatchSpaceActionContext, h as OPENMELD_SPACE_ACTION_CONTEXT_PATH_ENV, n as fetchSpaceMeta, t as createCliSpaceApi, y as readDispatchSpaceActionRecord } from "./cli-space-api-DVfyQOhC.js";
22
22
  import { createHash, randomUUID } from "node:crypto";
23
23
  import { homedir } from "node:os";
24
24
  import { basename, dirname, extname, isAbsolute, join, relative, resolve, sep } from "node:path";
@@ -30,6 +30,43 @@ import { setTimeout as setTimeout$1 } from "node:timers/promises";
30
30
  import { promisify } from "node:util";
31
31
  import { forkSession, getSessionInfo, getSessionMessages } from "@anthropic-ai/claude-agent-sdk";
32
32
  import { performance } from "node:perf_hooks";
33
+ //#region ../../packages/schemas/dist/working-folder-recovery.js
34
+ const WORKING_FOLDER_RECOVERY_QUESTION_ID = "working_folder_recovery";
35
+ const WORKING_FOLDER_RECOVERY_DECLINED = "context.workspace_recovery_declined";
36
+ function buildWorkingFolderRecoveryQuestion(input) {
37
+ let description = "This conversation started in a different folder. The task has not started.";
38
+ if (input.previousFolder === "missing") description = "The previous conversation’s folder is no longer available. The task has not started.";
39
+ else if (input.previousFolder === "restricted") description = "The previous conversation’s folder is outside this Computer’s allowed folders. The task has not started.";
40
+ return {
41
+ kind: "question",
42
+ title: "Choose where to continue",
43
+ description,
44
+ questions: [{
45
+ questionId: WORKING_FOLDER_RECOVERY_QUESTION_ID,
46
+ prompt: "Which conversation should this task use?",
47
+ multiple: false,
48
+ allowOther: false,
49
+ options: [
50
+ ...input.previousFolder === "available" ? [{
51
+ optionId: "use_previous_folder",
52
+ label: "Continue the previous conversation",
53
+ description: `Use ${input.previousFolderLabel} for this task. Keep its conversation history. The Agent’s default folder stays unchanged.`
54
+ }] : [],
55
+ {
56
+ optionId: "start_new_conversation",
57
+ label: "Start a new conversation",
58
+ description: `Use ${input.selectedFolderLabel} with the same Agent. The previous conversation stays saved, but its history will not carry over.`
59
+ },
60
+ {
61
+ optionId: "leave_task",
62
+ label: "Stop this task",
63
+ description: "Keep the previous conversation and folder settings."
64
+ }
65
+ ]
66
+ }]
67
+ };
68
+ }
69
+ //#endregion
33
70
  //#region src/agent-activity/integration-refresh.ts
34
71
  async function refreshManagedAgentActivityIntegrations(input) {
35
72
  const rootDir = input?.rootDir ?? resolveOpenMeldRootDir();
@@ -347,6 +384,74 @@ async function assertComputerFileAccessWorkingDirectoryAllowed(input) {
347
384
  });
348
385
  }
349
386
  //#endregion
387
+ //#region src/local-service/continuation/working-folder-recovery.ts
388
+ /** Admission asks the owner before any prompt, attachment, or bootstrap uses a folder. */
389
+ async function resolveWorkingFolderRecovery(input) {
390
+ const unchanged = {
391
+ workingDirectory: input.workingDirectory,
392
+ startNewConversation: false
393
+ };
394
+ if (input.hasExecutionContext || input.agentControllerRef !== "builtin:opencode" || !input.nativeSessionId) return unchanged;
395
+ const nativeSessionId = input.nativeSessionId;
396
+ const inspect = () => (input.inspectSession ?? inspectRetainedOpenCodeSession)(nativeSessionId);
397
+ const session = await inspect();
398
+ const selectedFolder = await realpath(input.workingDirectory);
399
+ const previousFolder = await realpath(session.directory).catch(() => null);
400
+ if (selectedFolder === previousFolder) return unchanged;
401
+ let previousFolderAllowed = previousFolder !== null;
402
+ if (previousFolder && input.policy.mode !== "local_agent_settings") try {
403
+ await assertComputerFileAccessWorkingDirectoryAllowed({
404
+ boundary: input.policy,
405
+ providerRuntimeWorkingDirectory: previousFolder
406
+ });
407
+ } catch {
408
+ previousFolderAllowed = false;
409
+ }
410
+ const previousFolderStatus = previousFolder ? "restricted" : "missing";
411
+ const response = await input.onInteractionRequest(buildWorkingFolderRecoveryQuestion({
412
+ previousFolder: previousFolderAllowed ? "available" : previousFolderStatus,
413
+ previousFolderLabel: basename(session.directory),
414
+ selectedFolderLabel: basename(selectedFolder)
415
+ }));
416
+ const choice = response.kind === "question" && response.answers.length === 1 && response.answers[0]?.questionId === "working_folder_recovery" && response.answers[0].values.length === 1 ? response.answers[0].values[0] : null;
417
+ if (choice === "leave_task") throw failure$1(WORKING_FOLDER_RECOVERY_DECLINED, "The Computer owner stopped this task before the Agent started. The previous conversation is saved.");
418
+ if (choice !== "start_new_conversation" && !(choice === "use_previous_folder" && previousFolderAllowed)) throw failure$1("context.workspace_recovery_unanswered", "This task did not start because no folder choice was confirmed. Send it again when you’re ready.");
419
+ const latest = await inspect();
420
+ if (latest.sessionId !== session.sessionId || latest.directory !== session.directory || await realpath(input.workingDirectory).catch(() => null) !== selectedFolder || previousFolder && await realpath(session.directory).catch(() => null) !== previousFolder) throw failure$1("context.workspace_recovery_changed", "The conversation or folder changed while waiting. Send this task again to review the current choices.");
421
+ return {
422
+ workingDirectory: choice === "use_previous_folder" && previousFolder ? previousFolder : selectedFolder,
423
+ startNewConversation: choice === "start_new_conversation"
424
+ };
425
+ }
426
+ function resolveRecoveredLedgerConversation(input) {
427
+ return input.startNewConversation ? {
428
+ bindingConversationId: null,
429
+ existingContextId: null,
430
+ currentExecutionState: null
431
+ } : input;
432
+ }
433
+ function failure$1(code, message, cause) {
434
+ const error = new DaemonServiceRunError({
435
+ code,
436
+ message
437
+ });
438
+ if (cause !== void 0) error.cause = cause;
439
+ return error;
440
+ }
441
+ async function inspectRetainedOpenCodeSession(nativeSessionId) {
442
+ try {
443
+ const rows = await readOpenCodeSessionRows(resolveOpenCodeDatabasePath({ homeDir: homedir() }), nativeSessionId);
444
+ const session = rows[0];
445
+ if (rows.length === 1 && session?.id === nativeSessionId && typeof session.directory === "string" && session.directory.trim()) return {
446
+ directory: session.directory,
447
+ sessionId: nativeSessionId
448
+ };
449
+ } catch (cause) {
450
+ throw failure$1("context.workspace_verification_unavailable", "OpenMeld could not read this conversation’s folder. Open the conversation in OpenCode, then try this task again.", cause);
451
+ }
452
+ throw failure$1("context.workspace_verification_unavailable", "OpenMeld could not read this conversation’s folder. Open the conversation in OpenCode, then try this task again.");
453
+ }
454
+ //#endregion
350
455
  //#region src/local-service/file-access/computer-file-access-prompt.ts
351
456
  const COMPUTER_FILE_ACCESS_AWARENESS = "Stay within the file access available to this OpenMeld run. Treat denied paths as intentional and continue with the safest useful alternative. Only the Computer owner can change this boundary.";
352
457
  function applyComputerFileAccessAwareness(input) {
@@ -3316,6 +3421,16 @@ async function handleDispatchDeliverFrame(input) {
3316
3421
  routeConfig,
3317
3422
  targetProfileId: parsedTask.targetProfileId
3318
3423
  });
3424
+ const folderRecovery = await resolveWorkingFolderRecovery({
3425
+ agentControllerRef: parsedTask.agentControllerRef,
3426
+ nativeSessionId: parsedTask.agentControllerConversationId,
3427
+ hasExecutionContext: Boolean(parsedTask.executionContext),
3428
+ workingDirectory: dispatchRuntimeContext.providerRuntimeWorkingDirectory,
3429
+ policy: await readComputerFileAccessPolicy(input.computerFileAccessStorePath),
3430
+ onInteractionRequest
3431
+ });
3432
+ dispatchRuntimeContext = { providerRuntimeWorkingDirectory: folderRecovery.workingDirectory };
3433
+ await currentSocketRef.confirmExecutionAdmission?.(input.deliverRequest);
3319
3434
  const skillPreflight = await ensureDispatchControllerOpenMeldSkill({ agentControllerRef: parsedTask.agentControllerRef });
3320
3435
  emitRunLine({
3321
3436
  presenter: input.presenter,
@@ -3419,10 +3534,16 @@ async function handleDispatchDeliverFrame(input) {
3419
3534
  runtimeWorkspaceFingerprint: buildRuntimeWorkspaceFingerprint(activeRuntimeContext.providerRuntimeWorkingDirectory)
3420
3535
  });
3421
3536
  contextLookupKey = dispatchLedgerContext.contextLookupKey;
3422
- currentExecutionState = dispatchLedgerContext.currentExecutionState;
3423
- existingContextId = dispatchLedgerContext.existingContextId;
3537
+ const recoveredConversation = resolveRecoveredLedgerConversation({
3538
+ startNewConversation: folderRecovery.startNewConversation,
3539
+ bindingConversationId: parsedTask.agentControllerConversationId,
3540
+ currentExecutionState: dispatchLedgerContext.currentExecutionState,
3541
+ existingContextId: dispatchLedgerContext.existingContextId
3542
+ });
3543
+ currentExecutionState = recoveredConversation.currentExecutionState;
3544
+ existingContextId = recoveredConversation.existingContextId;
3424
3545
  effectiveAgentControllerConversationId = resolveEffectiveAgentControllerConversationId({
3425
- agentControllerConversationId: parsedTask.agentControllerConversationId,
3546
+ agentControllerConversationId: recoveredConversation.bindingConversationId,
3426
3547
  existingContextId
3427
3548
  });
3428
3549
  workspaceUse = await markExecutionContextWorkspaceInUse({
@@ -5821,10 +5942,10 @@ function resolveStructuredSpaceActionProvenance(input) {
5821
5942
  async function runDispatchRuntimeExecution(input) {
5822
5943
  await input.onNativeTurnStarted();
5823
5944
  const result = await runRuntimeTask({
5824
- ...input.parsedTask.executionContext || input.agentControllerConversationOverride ? { agentContextOverride: {
5945
+ agentContextOverride: {
5825
5946
  agentControllerConversationId: input.contextId,
5826
5947
  agentControllerConversationOverride: input.agentControllerConversationOverride ?? null
5827
- } } : {},
5948
+ },
5828
5949
  io: input.io,
5829
5950
  ...input.onInteractionRequest ? { onInteractionRequest: input.onInteractionRequest } : {},
5830
5951
  ...input.onPreview ? { onPreview: input.onPreview } : {},
@@ -9013,4 +9134,4 @@ function createExecutionHostRuntime(input) {
9013
9134
  //#endregion
9014
9135
  export { createExecutionHostResources, createExecutionHostRuntime };
9015
9136
 
9016
- //# sourceMappingURL=runtime-DGT66AR-.js.map
9137
+ //# sourceMappingURL=runtime-COI2XGXX.js.map