openmeld 0.3.263 → 0.3.264

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 (139) hide show
  1. package/dist/{add-me-membership-C_t_Mg-Z.js → add-me-membership-EPcbBXio.js} +2 -2
  2. package/dist/{add-me-membership-C_t_Mg-Z.js.map → add-me-membership-EPcbBXio.js.map} +1 -1
  3. package/dist/{agents-DFHWtOt8.js → agents-c6vjR3-E.js} +13 -13
  4. package/dist/{agents-DFHWtOt8.js.map → agents-c6vjR3-E.js.map} +1 -1
  5. package/dist/{api-client-foundation-BPJBWsRD.js → api-client-foundation-BqzfXt-g.js} +1 -1
  6. package/dist/{api-client-foundation-6MeNwklv.js → api-client-foundation-a7D_P57X.js} +4 -4
  7. package/dist/{api-client-foundation-6MeNwklv.js.map → api-client-foundation-a7D_P57X.js.map} +1 -1
  8. package/dist/{auth-session-B0J2UwSR.js → auth-session-BpRplB8x.js} +7 -7
  9. package/dist/auth-session-BpRplB8x.js.map +1 -0
  10. package/dist/auth-session-D2gF0lru.js +4 -0
  11. package/dist/{auth-url-BheLcWg9.js → auth-url-0Y8BrR9l.js} +2 -2
  12. package/dist/{auth-url-BheLcWg9.js.map → auth-url-0Y8BrR9l.js.map} +1 -1
  13. package/dist/{base-url-D84aBKXK.js → base-url-B7zX2h2d.js} +1 -1
  14. package/dist/{base-url-CLMqlF1w.js → base-url-Cno_Uo8f.js} +3 -3
  15. package/dist/{base-url-CLMqlF1w.js.map → base-url-Cno_Uo8f.js.map} +1 -1
  16. package/dist/{channel-7iF6DSp4.js → channel-D-a2qCEW.js} +2 -2
  17. package/dist/{channel-7iF6DSp4.js.map → channel-D-a2qCEW.js.map} +1 -1
  18. package/dist/{cloud-computer-BddlwRAk.js → cloud-computer-CSK4RYD2.js} +6 -6
  19. package/dist/{cloud-computer-BddlwRAk.js.map → cloud-computer-CSK4RYD2.js.map} +1 -1
  20. package/dist/{command-7ZoDO_Hy.js → command-pywjcxYD.js} +17 -17
  21. package/dist/{command-7ZoDO_Hy.js.map → command-pywjcxYD.js.map} +1 -1
  22. package/dist/{computer-connection-review-vYYCtG_l.js → computer-connection-review-BDhdk1ne.js} +8 -8
  23. package/dist/computer-connection-review-BDhdk1ne.js.map +1 -0
  24. package/dist/{computer-disconnect-C0n2IGfR.js → computer-disconnect-Bu5HPoJH.js} +9 -9
  25. package/dist/{computer-disconnect-C0n2IGfR.js.map → computer-disconnect-Bu5HPoJH.js.map} +1 -1
  26. package/dist/{computer-setup-continuation-DiT88kEQ.js → computer-setup-continuation-DDx2bdZv.js} +3 -3
  27. package/dist/{computer-setup-continuation-DiT88kEQ.js.map → computer-setup-continuation-DDx2bdZv.js.map} +1 -1
  28. package/dist/{context-DFf16i-C.js → context-NLQSSnf9.js} +7 -7
  29. package/dist/{context-DFf16i-C.js.map → context-NLQSSnf9.js.map} +1 -1
  30. package/dist/{daemon-device-id-C3UTBv9T.js → daemon-device-id-Dd-E5NjT.js} +4 -4
  31. package/dist/{daemon-device-id-C3UTBv9T.js.map → daemon-device-id-Dd-E5NjT.js.map} +1 -1
  32. package/dist/{daemon-lifecycle-journal-DoAQ-E6K.js → daemon-lifecycle-journal-DfYlngmT.js} +7 -9
  33. package/dist/daemon-lifecycle-journal-DfYlngmT.js.map +1 -0
  34. package/dist/{daemon-runtime-lease-D5f4zLXB.js → daemon-runtime-lease-Bu1vPY5k.js} +3 -3
  35. package/dist/{daemon-runtime-lease-D5f4zLXB.js.map → daemon-runtime-lease-Bu1vPY5k.js.map} +1 -1
  36. package/dist/{daemon-runtime-lease-CACGRuZ3.js → daemon-runtime-lease-DJx3N2Sa.js} +1 -1
  37. package/dist/{daemon-service-contract-D9gUVdhc.js → daemon-service-contract-D9Gs4YVs.js} +31 -5
  38. package/dist/daemon-service-contract-D9Gs4YVs.js.map +1 -0
  39. package/dist/{daemon-service-manager-BDIsfrfx.js → daemon-service-manager-ChWTp6s8.js} +5 -5
  40. package/dist/{daemon-service-manager-BDIsfrfx.js.map → daemon-service-manager-ChWTp6s8.js.map} +1 -1
  41. package/dist/{daemon-service-manager-k9IJJuqv.js → daemon-service-manager-Df537dYj.js} +1 -1
  42. package/dist/{daemon-service-runtime-LFoUNQQu.js → daemon-service-runtime-Dk8OyRtf.js} +14 -14
  43. package/dist/{daemon-service-runtime-LFoUNQQu.js.map → daemon-service-runtime-Dk8OyRtf.js.map} +1 -1
  44. package/dist/{daemon-service-update-coordinator-4WJr8-5_.js → daemon-service-update-coordinator-CyvjkmsR.js} +21 -21
  45. package/dist/{daemon-service-update-coordinator-4WJr8-5_.js.map → daemon-service-update-coordinator-CyvjkmsR.js.map} +1 -1
  46. package/dist/{daemon-state-C09DaALw.js → daemon-state-CiTQcAWA.js} +3 -3
  47. package/dist/{daemon-state-C09DaALw.js.map → daemon-state-CiTQcAWA.js.map} +1 -1
  48. package/dist/{dispatch-owned-runtime-BTK0uuOV.js → dispatch-owned-runtime-rL1dMpSL.js} +77 -29
  49. package/dist/dispatch-owned-runtime-rL1dMpSL.js.map +1 -0
  50. package/dist/{dist-YSbIHBnl.js → dist-BOBe5eOZ.js} +22 -2
  51. package/dist/dist-BOBe5eOZ.js.map +1 -0
  52. package/dist/{dist-DY8oLAop.js → dist-CP5KSxWw.js} +2 -2
  53. package/dist/{dist-DY8oLAop.js.map → dist-CP5KSxWw.js.map} +1 -1
  54. package/dist/dist-DyKCU9Uu.js +4 -0
  55. package/dist/{dist-DRfPWuFM.js → dist-LObwcebd.js} +1 -1
  56. package/dist/{dual-view-guide-catalog-3LaB18SR.js → dual-view-guide-catalog-CSV_FNr4.js} +3 -3
  57. package/dist/{dual-view-guide-catalog-3LaB18SR.js.map → dual-view-guide-catalog-CSV_FNr4.js.map} +1 -1
  58. package/dist/{elapsed-time-CGeKqTzX.js → elapsed-time-DFp-tAB8.js} +4 -4
  59. package/dist/{elapsed-time-CGeKqTzX.js.map → elapsed-time-DFp-tAB8.js.map} +1 -1
  60. package/dist/{entry-CMDScEVO.js → entry-DnUl6Ms1.js} +12 -12
  61. package/dist/{entry-CMDScEVO.js.map → entry-DnUl6Ms1.js.map} +1 -1
  62. package/dist/{installation-inventory-CvtmIZj8.js → installation-inventory-87Vo7lnz.js} +4 -4
  63. package/dist/{installation-inventory-CvtmIZj8.js.map → installation-inventory-87Vo7lnz.js.map} +1 -1
  64. package/dist/{installer-CwK5uV4Q.js → installer-CbmSCmp3.js} +2 -2
  65. package/dist/{installer-CwK5uV4Q.js.map → installer-CbmSCmp3.js.map} +1 -1
  66. package/dist/{lock-Cz8h_yJh.js → lock-y1PCtVSn.js} +3 -3
  67. package/dist/{lock-Cz8h_yJh.js.map → lock-y1PCtVSn.js.map} +1 -1
  68. package/dist/{meta-api-B01L3fo4.js → meta-api-CBfmjR2R.js} +7 -7
  69. package/dist/{meta-api-B01L3fo4.js.map → meta-api-CBfmjR2R.js.map} +1 -1
  70. package/dist/{openmeld-RoIfH4iG.js → openmeld-NTZxD9-J.js} +41 -41
  71. package/dist/{openmeld-RoIfH4iG.js.map → openmeld-NTZxD9-J.js.map} +1 -1
  72. package/dist/{openmeld-dev-environment-POXQHtTN.js → openmeld-dev-environment-Bx6D1B6_.js} +3 -3
  73. package/dist/{openmeld-dev-environment-POXQHtTN.js.map → openmeld-dev-environment-Bx6D1B6_.js.map} +1 -1
  74. package/dist/openmeld-dev.js +1 -1
  75. package/dist/{openmeld-environment-target-B0Z7eI6O.js → openmeld-environment-target-oDaSSRO3.js} +3 -3
  76. package/dist/{openmeld-environment-target-B0Z7eI6O.js.map → openmeld-environment-target-oDaSSRO3.js.map} +1 -1
  77. package/dist/{openmeld-maintenance-worker--ucPEftH.js → openmeld-maintenance-worker-DKV1YZ77.js} +14 -14
  78. package/dist/{openmeld-maintenance-worker--ucPEftH.js.map → openmeld-maintenance-worker-DKV1YZ77.js.map} +1 -1
  79. package/dist/{openmeld-tools-update-join-gps19byt.js → openmeld-tools-update-join-DC_rkVk4.js} +4 -4
  80. package/dist/{openmeld-tools-update-join-gps19byt.js.map → openmeld-tools-update-join-DC_rkVk4.js.map} +1 -1
  81. package/dist/{openmeld-tools-update-process-frame-Ctim4GrA.js → openmeld-tools-update-process-frame-BOdfnz6g.js} +2 -2
  82. package/dist/{openmeld-tools-update-process-frame-Ctim4GrA.js.map → openmeld-tools-update-process-frame-BOdfnz6g.js.map} +1 -1
  83. package/dist/{openmeld-tools-update-process-frame-C9hDfFXg.js → openmeld-tools-update-process-frame-CHxv33b4.js} +1 -1
  84. package/dist/openmeld.js +7 -7
  85. package/dist/{prepare-provider-runtime-CyIGaDTC.js → prepare-provider-runtime-BbJnigvx.js} +17 -17
  86. package/dist/{prepare-provider-runtime-CyIGaDTC.js.map → prepare-provider-runtime-BbJnigvx.js.map} +1 -1
  87. package/dist/{prepare-session-executor-BesIXfWv.js → prepare-session-executor-DtrZ5-G9.js} +25 -25
  88. package/dist/{prepare-session-executor-BesIXfWv.js.map → prepare-session-executor-DtrZ5-G9.js.map} +1 -1
  89. package/dist/{process-channel-DILzf1ek.js → process-channel-B6Y2-Xau.js} +2 -2
  90. package/dist/{process-channel-DILzf1ek.js.map → process-channel-B6Y2-Xau.js.map} +1 -1
  91. package/dist/{process-identity-D_VPVruT.js → process-identity-DCYUeRGI.js} +2 -2
  92. package/dist/{process-identity-D_VPVruT.js.map → process-identity-DCYUeRGI.js.map} +1 -1
  93. package/dist/{runtime-BsLzW985.js → runtime-CMUFvQzB.js} +150 -293
  94. package/dist/runtime-CMUFvQzB.js.map +1 -0
  95. package/dist/{runtime-agent-controller-reporting-submission-Dtvml_vt.js → runtime-agent-controller-reporting-submission-COEd2PQD.js} +9 -9
  96. package/dist/{runtime-agent-controller-reporting-submission-Dtvml_vt.js.map → runtime-agent-controller-reporting-submission-COEd2PQD.js.map} +1 -1
  97. package/dist/{service-BNpxWxYQ.js → service-Cz9hwU7z.js} +163 -53
  98. package/dist/service-Cz9hwU7z.js.map +1 -0
  99. package/dist/{service-account-authorization-CJv1vZzm.js → service-account-authorization-Dh5cBGYr.js} +5 -5
  100. package/dist/{service-account-authorization-CJv1vZzm.js.map → service-account-authorization-Dh5cBGYr.js.map} +1 -1
  101. package/dist/{service-account-control-f9-hQZzW.js → service-account-control-Bgady7sO.js} +32 -22
  102. package/dist/service-account-control-Bgady7sO.js.map +1 -0
  103. package/dist/{service-control-capabilities-DyX9foHw.js → service-control-capabilities-CJVtLeLz.js} +6 -6
  104. package/dist/{service-control-capabilities-DyX9foHw.js.map → service-control-capabilities-CJVtLeLz.js.map} +1 -1
  105. package/dist/{service-control-capabilities-D2-b-23n.js → service-control-capabilities-DMzx-Tde.js} +1 -1
  106. package/dist/{service-control-carrier-capability-B8-5s0Z4.js → service-control-carrier-capability-DT97FTao.js} +3 -3
  107. package/dist/{service-control-carrier-capability-B8-5s0Z4.js.map → service-control-carrier-capability-DT97FTao.js.map} +1 -1
  108. package/dist/{state-BlZXA4Rd.js → state-B3ORUW8a.js} +3 -3
  109. package/dist/{state-BlZXA4Rd.js.map → state-B3ORUW8a.js.map} +1 -1
  110. package/dist/{updates-api-BpuVusi5.js → updates-api-Dc2hLgXj.js} +14 -14
  111. package/dist/{updates-api-BpuVusi5.js.map → updates-api-Dc2hLgXj.js.map} +1 -1
  112. package/dist/upgrade-Cb9hoK5-.js +4 -0
  113. package/dist/{upgrade-CII-Xiab.js → upgrade-CeUhMgzW.js} +9 -9
  114. package/dist/{upgrade-CII-Xiab.js.map → upgrade-CeUhMgzW.js.map} +1 -1
  115. package/dist/windows/openmeld-windows-process.exe +0 -0
  116. package/dist/{windows-managed-install-Db8X1tQ4.js → windows-managed-install-Do1KTI4o.js} +2 -2
  117. package/dist/{windows-managed-install-Db8X1tQ4.js.map → windows-managed-install-Do1KTI4o.js.map} +1 -1
  118. package/dist/{windows-preview-channel-BJfMRixx.js → windows-preview-channel-7qDoCslK.js} +3 -3
  119. package/dist/{windows-preview-channel-BJfMRixx.js.map → windows-preview-channel-7qDoCslK.js.map} +1 -1
  120. package/dist/{windows-task-command-BGrlQDFJ.js → windows-task-command-DR3N78Zm.js} +2 -2
  121. package/dist/{windows-task-command-BGrlQDFJ.js.map → windows-task-command-DR3N78Zm.js.map} +1 -1
  122. package/dist/{windows-task-entry-bzn-6mTB.js → windows-task-entry-2RQM6JR9.js} +3 -3
  123. package/dist/{windows-task-entry-bzn-6mTB.js.map → windows-task-entry-2RQM6JR9.js.map} +1 -1
  124. package/dist/{windows-user-task-bkBjpShZ.js → windows-user-task-BX4n6qHn.js} +6 -6
  125. package/dist/{windows-user-task-bkBjpShZ.js.map → windows-user-task-BX4n6qHn.js.map} +1 -1
  126. package/dist/{windows-user-task-GqNzbzc9.js → windows-user-task-DBahPxza.js} +1 -1
  127. package/package.json +5 -5
  128. package/dist/auth-session-B0J2UwSR.js.map +0 -1
  129. package/dist/auth-session-DkDdLUPZ.js +0 -4
  130. package/dist/computer-connection-review-vYYCtG_l.js.map +0 -1
  131. package/dist/daemon-lifecycle-journal-DoAQ-E6K.js.map +0 -1
  132. package/dist/daemon-service-contract-D9gUVdhc.js.map +0 -1
  133. package/dist/dispatch-owned-runtime-BTK0uuOV.js.map +0 -1
  134. package/dist/dist-Df2Qywqr.js +0 -4
  135. package/dist/dist-YSbIHBnl.js.map +0 -1
  136. package/dist/runtime-BsLzW985.js.map +0 -1
  137. package/dist/service-BNpxWxYQ.js.map +0 -1
  138. package/dist/service-account-control-f9-hQZzW.js.map +0 -1
  139. package/dist/upgrade-D3f82xoM.js +0 -4
@@ -1,6 +1,6 @@
1
1
  #!/usr/bin/env node
2
2
 
3
- import { t as ExecutionHostError } from "./channel-7iF6DSp4.js";
3
+ import { t as ExecutionHostError } from "./channel-D-a2qCEW.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-DILzf1ek.js.map
64
+ //# sourceMappingURL=process-channel-B6Y2-Xau.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"process-channel-DILzf1ek.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-B6Y2-Xau.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,6 +1,6 @@
1
1
  #!/usr/bin/env node
2
2
 
3
- import { Pa as windowsNativeProcessRequestSchema, wF as WINDOWS_PROCESS_HELPER_FILENAME } from "./dist-YSbIHBnl.js";
3
+ import { Pa as windowsNativeProcessRequestSchema, TF as WINDOWS_PROCESS_HELPER_FILENAME } from "./dist-BOBe5eOZ.js";
4
4
  import { n as normalizeCommandEnvironment } from "./process-environment-BWSFeUu6.js";
5
5
  import { win32 } from "node:path";
6
6
  import { execFile, execFileSync, spawn } from "node:child_process";
@@ -169,4 +169,4 @@ function isNodeError(error, code) {
169
169
  //#endregion
170
170
  export { activateWindowsManagedCommand as a, readWindowsProcessStartFileTime as c, WINDOWS_NATIVE_PROCESS_REQUEST_ENV as d, resolveWindowsNativeProcessHelper as f, readProcessStartIdentity as i, resolveWindowsPowerShellPath as l, isPreciseProcessStartIdentity as n, powerShellEncodedArguments as o, isProcessIdentityAlive as r, pruneWindowsBinaryBundle as s, CURRENT_PROCESS_START_IDENTITY as t, startWindowsIdleSleepBlocker as u };
171
171
 
172
- //# sourceMappingURL=process-identity-D_VPVruT.js.map
172
+ //# sourceMappingURL=process-identity-DCYUeRGI.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"process-identity-D_VPVruT.js","names":[],"sources":["../../../runtime/adapters/core/dist/windows-native-process.js","../../../runtime/adapters/core/dist/windows-system.js","../src/system/process-identity.ts"],"sourcesContent":["import { dirname, join } from \"node:path\";\nimport { fileURLToPath } from \"node:url\";\nimport { WINDOWS_PROCESS_HELPER_FILENAME } from \"@openmeld/schemas\";\nexport const WINDOWS_NATIVE_PROCESS_REQUEST_ENV = \"OPENMELD_NATIVE_JOB_REQUEST\";\nexport function resolveWindowsNativeProcessHelper() {\n const binary = typeof __OPENMELD_DISTRIBUTION__ !== \"undefined\" &&\n __OPENMELD_DISTRIBUTION__ === \"binary\";\n return binary\n ? join(dirname(process.execPath), WINDOWS_PROCESS_HELPER_FILENAME)\n : fileURLToPath(\n // Both src/ (workspace tests) and dist/ (installed code) share this\n // package-owned build output. Never search another installation.\n new URL(`../dist/windows/${WINDOWS_PROCESS_HELPER_FILENAME}`, import.meta.url));\n}\n","import { execFile, execFileSync, spawn } from \"node:child_process\";\nimport { win32 } from \"node:path\";\nimport { promisify } from \"node:util\";\nimport { windowsNativeProcessRequestSchema } from \"@openmeld/schemas\";\nimport { normalizeCommandEnvironment } from \"./process-environment.js\";\nimport { resolveWindowsNativeProcessHelper, WINDOWS_NATIVE_PROCESS_REQUEST_ENV, } from \"./windows-native-process.js\";\nexport function resolveWindowsPowerShellPath(env = process.env) {\n const source = normalizeCommandEnvironment(env, \"win32\");\n const root = source.SystemRoot ?? source.WINDIR;\n if (!(root && win32.isAbsolute(root))) {\n throw new Error(\"Windows system directory is unavailable.\");\n }\n return win32.join(root, \"System32\", \"WindowsPowerShell\", \"v1.0\", \"powershell.exe\");\n}\nexport function powerShellEncodedArguments(script) {\n return [\n \"-NoLogo\",\n \"-NoProfile\",\n \"-NonInteractive\",\n \"-EncodedCommand\",\n Buffer.from(script, \"utf16le\").toString(\"base64\"),\n ];\n}\nconst FILE_TIME_PATTERN = /^\\d{10,20}$/u;\n// Keep native identity reads bounded; an unavailable identity fails admission.\nconst PROCESS_IDENTITY_TIMEOUT_MS = 15_000;\nlet currentProcessFileTime;\nexport async function activateWindowsManagedCommand(binDirectory) {\n const request = windowsNativeProcessRequestSchema.parse({\n operation: \"activate-managed-command\",\n binDirectory,\n });\n const { stdout } = await promisify(execFile)(resolveWindowsNativeProcessHelper(), [], {\n env: {\n ...process.env,\n [WINDOWS_NATIVE_PROCESS_REQUEST_ENV]: Buffer.from(JSON.stringify(request), \"utf8\").toString(\"base64\"),\n },\n encoding: \"utf8\",\n windowsHide: true,\n timeout: 15_000,\n maxBuffer: 4096,\n });\n const result = stdout.trim();\n if (result !== \"activated\" && result !== \"already_active\") {\n throw new Error(\"Windows returned an invalid command activation receipt.\");\n }\n return result;\n}\n/** Kernel sharing rules keep a live CLI and its helper together during pruning. */\nexport async function pruneWindowsBinaryBundle(directory) {\n const request = windowsNativeProcessRequestSchema.parse({\n operation: \"prune-binary-bundle\",\n directory,\n });\n const { stdout } = await promisify(execFile)(resolveWindowsNativeProcessHelper(), [], {\n env: {\n ...process.env,\n [WINDOWS_NATIVE_PROCESS_REQUEST_ENV]: Buffer.from(JSON.stringify(request), \"utf8\").toString(\"base64\"),\n },\n encoding: \"utf8\",\n windowsHide: true,\n timeout: 15_000,\n maxBuffer: 4096,\n });\n const result = stdout.trim();\n if (result !== \"removed\" &&\n result !== \"absent\" &&\n result !== \"in_use\" &&\n result !== \"unrecognized\") {\n throw new Error(\"Windows returned an invalid managed-version cleanup receipt.\");\n }\n return result;\n}\n/** An opened process handle binds the observation to the actual instance, not a reused PID. */\nexport function readWindowsProcessStartFileTime(pid) {\n if (!(Number.isSafeInteger(pid) && pid > 0)) {\n return null;\n }\n if (pid === process.pid && currentProcessFileTime) {\n return currentProcessFileTime;\n }\n const request = windowsNativeProcessRequestSchema.parse({\n operation: \"identity\",\n pid,\n });\n try {\n const output = execFileSync(resolveWindowsNativeProcessHelper(), [], {\n env: {\n ...process.env,\n [WINDOWS_NATIVE_PROCESS_REQUEST_ENV]: Buffer.from(JSON.stringify(request), \"utf8\").toString(\"base64\"),\n },\n encoding: \"utf8\",\n windowsHide: true,\n timeout: PROCESS_IDENTITY_TIMEOUT_MS,\n maxBuffer: 1024,\n stdio: [\"ignore\", \"pipe\", \"ignore\"],\n }).trim();\n if (!FILE_TIME_PATTERN.test(output)) {\n return null;\n }\n if (pid === process.pid) {\n currentProcessFileTime = output;\n }\n return output;\n }\n catch {\n return null;\n }\n}\nexport function startWindowsIdleSleepBlocker() {\n return spawn(resolveWindowsNativeProcessHelper(), [], {\n env: {\n ...process.env,\n [WINDOWS_NATIVE_PROCESS_REQUEST_ENV]: Buffer.from(JSON.stringify(windowsNativeProcessRequestSchema.parse({\n operation: \"prevent-idle-sleep\",\n }))).toString(\"base64\"),\n },\n windowsHide: true,\n stdio: [\"pipe\", \"pipe\", \"pipe\"],\n });\n}\n","import { execFileSync } from \"node:child_process\";\nimport { readWindowsProcessStartFileTime } from \"@openmeld/adapter-core/windows-system\";\n\nconst WINDOWS_PROCESS_IDENTITY_PATTERN = /^win32:\\d{10,20}$/u;\n\nexport function isPreciseProcessStartIdentity(value: unknown): value is string {\n return (\n typeof value === \"string\" &&\n ((value.startsWith(\"ps:\") && value.length > 3) ||\n WINDOWS_PROCESS_IDENTITY_PATTERN.test(value))\n );\n}\n\nexport const CURRENT_PROCESS_START_IDENTITY =\n readProcessStartIdentity(process.pid) ??\n `fallback:${process.pid}:${Math.floor(Date.now() - process.uptime() * 1000)}`;\n\nexport function isProcessIdentityAlive(\n input: { ownerPid: number; ownerProcessStartedAt: string },\n platform: NodeJS.Platform = process.platform\n): boolean {\n if (!isProcessAlive(input.ownerPid)) {\n return false;\n }\n const observedIdentity = readProcessStartIdentity(input.ownerPid, platform);\n if (\n isPreciseProcessStartIdentity(observedIdentity) &&\n isPreciseProcessStartIdentity(input.ownerProcessStartedAt) &&\n observedIdentity.split(\":\", 1)[0] ===\n input.ownerProcessStartedAt.split(\":\", 1)[0]\n ) {\n return observedIdentity === input.ownerProcessStartedAt;\n }\n // Fail closed when a live process cannot be identified precisely. A caller\n // may recover only after it can prove that the transition owner has exited.\n return true;\n}\n\nexport function readProcessStartIdentity(\n pid: number,\n platform: NodeJS.Platform = process.platform\n): string | null {\n if (!(Number.isSafeInteger(pid) && pid > 0)) {\n return null;\n }\n if (platform === \"win32\") {\n const created = readWindowsProcessStartFileTime(pid);\n return created === null ? null : `win32:${created}`;\n }\n try {\n const output = execFileSync(\"ps\", [\"-o\", \"lstart=\", \"-p\", String(pid)], {\n encoding: \"utf8\",\n stdio: [\"ignore\", \"pipe\", \"ignore\"],\n timeout: 1000,\n windowsHide: true,\n }).trim();\n return output.length > 0 ? `ps:${output}` : null;\n } catch {\n return null;\n }\n}\n\nfunction isProcessAlive(pid: number): boolean {\n try {\n process.kill(pid, 0);\n return true;\n } catch (error) {\n return !isNodeError(error, \"ESRCH\");\n }\n}\n\nfunction isNodeError(error: unknown, code: string): boolean {\n return (\n error instanceof Error && \"code\" in error && String(error.code) === code\n );\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"process-identity-DCYUeRGI.js","names":[],"sources":["../../../runtime/adapters/core/dist/windows-native-process.js","../../../runtime/adapters/core/dist/windows-system.js","../src/system/process-identity.ts"],"sourcesContent":["import { dirname, join } from \"node:path\";\nimport { fileURLToPath } from \"node:url\";\nimport { WINDOWS_PROCESS_HELPER_FILENAME } from \"@openmeld/schemas\";\nexport const WINDOWS_NATIVE_PROCESS_REQUEST_ENV = \"OPENMELD_NATIVE_JOB_REQUEST\";\nexport function resolveWindowsNativeProcessHelper() {\n const binary = typeof __OPENMELD_DISTRIBUTION__ !== \"undefined\" &&\n __OPENMELD_DISTRIBUTION__ === \"binary\";\n return binary\n ? join(dirname(process.execPath), WINDOWS_PROCESS_HELPER_FILENAME)\n : fileURLToPath(\n // Both src/ (workspace tests) and dist/ (installed code) share this\n // package-owned build output. Never search another installation.\n new URL(`../dist/windows/${WINDOWS_PROCESS_HELPER_FILENAME}`, import.meta.url));\n}\n","import { execFile, execFileSync, spawn } from \"node:child_process\";\nimport { win32 } from \"node:path\";\nimport { promisify } from \"node:util\";\nimport { windowsNativeProcessRequestSchema } from \"@openmeld/schemas\";\nimport { normalizeCommandEnvironment } from \"./process-environment.js\";\nimport { resolveWindowsNativeProcessHelper, WINDOWS_NATIVE_PROCESS_REQUEST_ENV, } from \"./windows-native-process.js\";\nexport function resolveWindowsPowerShellPath(env = process.env) {\n const source = normalizeCommandEnvironment(env, \"win32\");\n const root = source.SystemRoot ?? source.WINDIR;\n if (!(root && win32.isAbsolute(root))) {\n throw new Error(\"Windows system directory is unavailable.\");\n }\n return win32.join(root, \"System32\", \"WindowsPowerShell\", \"v1.0\", \"powershell.exe\");\n}\nexport function powerShellEncodedArguments(script) {\n return [\n \"-NoLogo\",\n \"-NoProfile\",\n \"-NonInteractive\",\n \"-EncodedCommand\",\n Buffer.from(script, \"utf16le\").toString(\"base64\"),\n ];\n}\nconst FILE_TIME_PATTERN = /^\\d{10,20}$/u;\n// Keep native identity reads bounded; an unavailable identity fails admission.\nconst PROCESS_IDENTITY_TIMEOUT_MS = 15_000;\nlet currentProcessFileTime;\nexport async function activateWindowsManagedCommand(binDirectory) {\n const request = windowsNativeProcessRequestSchema.parse({\n operation: \"activate-managed-command\",\n binDirectory,\n });\n const { stdout } = await promisify(execFile)(resolveWindowsNativeProcessHelper(), [], {\n env: {\n ...process.env,\n [WINDOWS_NATIVE_PROCESS_REQUEST_ENV]: Buffer.from(JSON.stringify(request), \"utf8\").toString(\"base64\"),\n },\n encoding: \"utf8\",\n windowsHide: true,\n timeout: 15_000,\n maxBuffer: 4096,\n });\n const result = stdout.trim();\n if (result !== \"activated\" && result !== \"already_active\") {\n throw new Error(\"Windows returned an invalid command activation receipt.\");\n }\n return result;\n}\n/** Kernel sharing rules keep a live CLI and its helper together during pruning. */\nexport async function pruneWindowsBinaryBundle(directory) {\n const request = windowsNativeProcessRequestSchema.parse({\n operation: \"prune-binary-bundle\",\n directory,\n });\n const { stdout } = await promisify(execFile)(resolveWindowsNativeProcessHelper(), [], {\n env: {\n ...process.env,\n [WINDOWS_NATIVE_PROCESS_REQUEST_ENV]: Buffer.from(JSON.stringify(request), \"utf8\").toString(\"base64\"),\n },\n encoding: \"utf8\",\n windowsHide: true,\n timeout: 15_000,\n maxBuffer: 4096,\n });\n const result = stdout.trim();\n if (result !== \"removed\" &&\n result !== \"absent\" &&\n result !== \"in_use\" &&\n result !== \"unrecognized\") {\n throw new Error(\"Windows returned an invalid managed-version cleanup receipt.\");\n }\n return result;\n}\n/** An opened process handle binds the observation to the actual instance, not a reused PID. */\nexport function readWindowsProcessStartFileTime(pid) {\n if (!(Number.isSafeInteger(pid) && pid > 0)) {\n return null;\n }\n if (pid === process.pid && currentProcessFileTime) {\n return currentProcessFileTime;\n }\n const request = windowsNativeProcessRequestSchema.parse({\n operation: \"identity\",\n pid,\n });\n try {\n const output = execFileSync(resolveWindowsNativeProcessHelper(), [], {\n env: {\n ...process.env,\n [WINDOWS_NATIVE_PROCESS_REQUEST_ENV]: Buffer.from(JSON.stringify(request), \"utf8\").toString(\"base64\"),\n },\n encoding: \"utf8\",\n windowsHide: true,\n timeout: PROCESS_IDENTITY_TIMEOUT_MS,\n maxBuffer: 1024,\n stdio: [\"ignore\", \"pipe\", \"ignore\"],\n }).trim();\n if (!FILE_TIME_PATTERN.test(output)) {\n return null;\n }\n if (pid === process.pid) {\n currentProcessFileTime = output;\n }\n return output;\n }\n catch {\n return null;\n }\n}\nexport function startWindowsIdleSleepBlocker() {\n return spawn(resolveWindowsNativeProcessHelper(), [], {\n env: {\n ...process.env,\n [WINDOWS_NATIVE_PROCESS_REQUEST_ENV]: Buffer.from(JSON.stringify(windowsNativeProcessRequestSchema.parse({\n operation: \"prevent-idle-sleep\",\n }))).toString(\"base64\"),\n },\n windowsHide: true,\n stdio: [\"pipe\", \"pipe\", \"pipe\"],\n });\n}\n","import { execFileSync } from \"node:child_process\";\nimport { readWindowsProcessStartFileTime } from \"@openmeld/adapter-core/windows-system\";\n\nconst WINDOWS_PROCESS_IDENTITY_PATTERN = /^win32:\\d{10,20}$/u;\n\nexport function isPreciseProcessStartIdentity(value: unknown): value is string {\n return (\n typeof value === \"string\" &&\n ((value.startsWith(\"ps:\") && value.length > 3) ||\n WINDOWS_PROCESS_IDENTITY_PATTERN.test(value))\n );\n}\n\nexport const CURRENT_PROCESS_START_IDENTITY =\n readProcessStartIdentity(process.pid) ??\n `fallback:${process.pid}:${Math.floor(Date.now() - process.uptime() * 1000)}`;\n\nexport function isProcessIdentityAlive(\n input: { ownerPid: number; ownerProcessStartedAt: string },\n platform: NodeJS.Platform = process.platform\n): boolean {\n if (!isProcessAlive(input.ownerPid)) {\n return false;\n }\n const observedIdentity = readProcessStartIdentity(input.ownerPid, platform);\n if (\n isPreciseProcessStartIdentity(observedIdentity) &&\n isPreciseProcessStartIdentity(input.ownerProcessStartedAt) &&\n observedIdentity.split(\":\", 1)[0] ===\n input.ownerProcessStartedAt.split(\":\", 1)[0]\n ) {\n return observedIdentity === input.ownerProcessStartedAt;\n }\n // Fail closed when a live process cannot be identified precisely. A caller\n // may recover only after it can prove that the transition owner has exited.\n return true;\n}\n\nexport function readProcessStartIdentity(\n pid: number,\n platform: NodeJS.Platform = process.platform\n): string | null {\n if (!(Number.isSafeInteger(pid) && pid > 0)) {\n return null;\n }\n if (platform === \"win32\") {\n const created = readWindowsProcessStartFileTime(pid);\n return created === null ? null : `win32:${created}`;\n }\n try {\n const output = execFileSync(\"ps\", [\"-o\", \"lstart=\", \"-p\", String(pid)], {\n encoding: \"utf8\",\n stdio: [\"ignore\", \"pipe\", \"ignore\"],\n timeout: 1000,\n windowsHide: true,\n }).trim();\n return output.length > 0 ? `ps:${output}` : null;\n } catch {\n return null;\n }\n}\n\nfunction isProcessAlive(pid: number): boolean {\n try {\n process.kill(pid, 0);\n return true;\n } catch (error) {\n return !isNodeError(error, \"ESRCH\");\n }\n}\n\nfunction isNodeError(error: unknown, code: string): boolean {\n return (\n error instanceof Error && \"code\" in error && String(error.code) === code\n );\n}\n"],"mappings":"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"}