@amalgm/live 0.2.81-preview.34546319610 → 0.2.81-preview.35170403408

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 (173) hide show
  1. package/dist/apply/content-results.d.ts +5 -4
  2. package/dist/apply/content-results.d.ts.map +1 -1
  3. package/dist/apply/content-results.js +3 -2
  4. package/dist/apply/content-results.js.map +1 -1
  5. package/dist/apply/contracts.d.ts +10 -2
  6. package/dist/apply/contracts.d.ts.map +1 -1
  7. package/dist/apply/contracts.js +1 -1
  8. package/dist/apply/contracts.js.map +1 -1
  9. package/dist/apply/plans.d.ts.map +1 -1
  10. package/dist/apply/plans.js +10 -5
  11. package/dist/apply/plans.js.map +1 -1
  12. package/dist/detection/record-proposal.d.ts +40 -13
  13. package/dist/detection/record-proposal.d.ts.map +1 -1
  14. package/dist/detection/record-proposal.js +85 -44
  15. package/dist/detection/record-proposal.js.map +1 -1
  16. package/dist/entities/types.d.ts +14 -6
  17. package/dist/entities/types.d.ts.map +1 -1
  18. package/dist/entities/types.js +16 -7
  19. package/dist/entities/types.js.map +1 -1
  20. package/dist/records/contracts.d.ts.map +1 -1
  21. package/dist/records/contracts.js +17 -4
  22. package/dist/records/contracts.js.map +1 -1
  23. package/dist/records/index.d.ts +1 -0
  24. package/dist/records/index.d.ts.map +1 -1
  25. package/dist/records/index.js +1 -0
  26. package/dist/records/index.js.map +1 -1
  27. package/dist/records/intentional.d.ts +49 -0
  28. package/dist/records/intentional.d.ts.map +1 -0
  29. package/dist/records/intentional.js +58 -0
  30. package/dist/records/intentional.js.map +1 -0
  31. package/dist/records/rail.d.ts +27 -5
  32. package/dist/records/rail.d.ts.map +1 -1
  33. package/dist/records/rail.js +96 -11
  34. package/dist/records/rail.js.map +1 -1
  35. package/dist/records/wire.d.ts +13 -1
  36. package/dist/records/wire.d.ts.map +1 -1
  37. package/dist/records/wire.js +17 -1
  38. package/dist/records/wire.js.map +1 -1
  39. package/dist/sharing/access.d.ts +11 -10
  40. package/dist/sharing/access.d.ts.map +1 -1
  41. package/dist/sharing/access.js +44 -19
  42. package/dist/sharing/access.js.map +1 -1
  43. package/dist/sharing/cli.d.ts +9 -9
  44. package/dist/sharing/cli.d.ts.map +1 -1
  45. package/dist/sharing/cli.js +35 -41
  46. package/dist/sharing/cli.js.map +1 -1
  47. package/dist/sharing/command-input.d.ts +5 -7
  48. package/dist/sharing/command-input.d.ts.map +1 -1
  49. package/dist/sharing/command-input.js +7 -17
  50. package/dist/sharing/command-input.js.map +1 -1
  51. package/dist/sharing/commands.d.ts +37 -0
  52. package/dist/sharing/commands.d.ts.map +1 -0
  53. package/dist/sharing/commands.js +164 -0
  54. package/dist/sharing/commands.js.map +1 -0
  55. package/dist/sharing/construct.d.ts +21 -0
  56. package/dist/sharing/construct.d.ts.map +1 -0
  57. package/dist/sharing/construct.js +40 -0
  58. package/dist/sharing/construct.js.map +1 -0
  59. package/dist/sharing/download.d.ts +31 -0
  60. package/dist/sharing/download.d.ts.map +1 -0
  61. package/dist/sharing/download.js +45 -0
  62. package/dist/sharing/download.js.map +1 -0
  63. package/dist/sharing/entity.d.ts +34 -0
  64. package/dist/sharing/entity.d.ts.map +1 -0
  65. package/dist/sharing/entity.js +51 -0
  66. package/dist/sharing/entity.js.map +1 -0
  67. package/dist/sharing/errors.d.ts +1 -1
  68. package/dist/sharing/errors.d.ts.map +1 -1
  69. package/dist/sharing/grants.d.ts +29 -0
  70. package/dist/sharing/grants.d.ts.map +1 -0
  71. package/dist/sharing/grants.js +103 -0
  72. package/dist/sharing/grants.js.map +1 -0
  73. package/dist/sharing/index.d.ts +23 -14
  74. package/dist/sharing/index.d.ts.map +1 -1
  75. package/dist/sharing/index.js +12 -9
  76. package/dist/sharing/index.js.map +1 -1
  77. package/dist/sharing/mcp.d.ts +13 -13
  78. package/dist/sharing/mcp.d.ts.map +1 -1
  79. package/dist/sharing/mcp.js +8 -8
  80. package/dist/sharing/mcp.js.map +1 -1
  81. package/dist/sharing/permissions.d.ts +33 -0
  82. package/dist/sharing/permissions.d.ts.map +1 -0
  83. package/dist/sharing/permissions.js +45 -0
  84. package/dist/sharing/permissions.js.map +1 -0
  85. package/dist/sharing/publish.d.ts +21 -0
  86. package/dist/sharing/publish.d.ts.map +1 -0
  87. package/dist/sharing/publish.js +42 -0
  88. package/dist/sharing/publish.js.map +1 -0
  89. package/dist/sharing/share.d.ts +32 -0
  90. package/dist/sharing/share.d.ts.map +1 -0
  91. package/dist/sharing/share.js +31 -0
  92. package/dist/sharing/share.js.map +1 -0
  93. package/dist/sharing/sharing.d.ts +39 -60
  94. package/dist/sharing/sharing.d.ts.map +1 -1
  95. package/dist/sharing/sharing.js +18 -196
  96. package/dist/sharing/sharing.js.map +1 -1
  97. package/dist/sharing/types.d.ts +83 -106
  98. package/dist/sharing/types.d.ts.map +1 -1
  99. package/dist/sharing/types.js +10 -7
  100. package/dist/sharing/types.js.map +1 -1
  101. package/dist/transfer/artifacts.d.ts +4 -1
  102. package/dist/transfer/artifacts.d.ts.map +1 -1
  103. package/dist/transfer/artifacts.js +9 -2
  104. package/dist/transfer/artifacts.js.map +1 -1
  105. package/dist/transfer/upload.d.ts.map +1 -1
  106. package/dist/transfer/upload.js +7 -5
  107. package/dist/transfer/upload.js.map +1 -1
  108. package/dist-cjs/apply/content-results.js +3 -2
  109. package/dist-cjs/apply/content-results.js.map +1 -1
  110. package/dist-cjs/apply/contracts.js.map +1 -1
  111. package/dist-cjs/apply/plans.js +10 -5
  112. package/dist-cjs/apply/plans.js.map +1 -1
  113. package/dist-cjs/detection/record-proposal.js +85 -43
  114. package/dist-cjs/detection/record-proposal.js.map +1 -1
  115. package/dist-cjs/entities/types.js +18 -8
  116. package/dist-cjs/entities/types.js.map +1 -1
  117. package/dist-cjs/records/contracts.js +15 -2
  118. package/dist-cjs/records/contracts.js.map +1 -1
  119. package/dist-cjs/records/index.js +1 -0
  120. package/dist-cjs/records/index.js.map +1 -1
  121. package/dist-cjs/records/intentional.js +61 -0
  122. package/dist-cjs/records/intentional.js.map +1 -0
  123. package/dist-cjs/records/rail.js +96 -11
  124. package/dist-cjs/records/rail.js.map +1 -1
  125. package/dist-cjs/records/wire.js +17 -1
  126. package/dist-cjs/records/wire.js.map +1 -1
  127. package/dist-cjs/sharing/access.js +47 -22
  128. package/dist-cjs/sharing/access.js.map +1 -1
  129. package/dist-cjs/sharing/cli.js +38 -44
  130. package/dist-cjs/sharing/cli.js.map +1 -1
  131. package/dist-cjs/sharing/command-input.js +6 -18
  132. package/dist-cjs/sharing/command-input.js.map +1 -1
  133. package/dist-cjs/sharing/commands.js +169 -0
  134. package/dist-cjs/sharing/commands.js.map +1 -0
  135. package/dist-cjs/sharing/construct.js +46 -0
  136. package/dist-cjs/sharing/construct.js.map +1 -0
  137. package/dist-cjs/sharing/download.js +48 -0
  138. package/dist-cjs/sharing/download.js.map +1 -0
  139. package/dist-cjs/sharing/entity.js +57 -0
  140. package/dist-cjs/sharing/entity.js.map +1 -0
  141. package/dist-cjs/sharing/grants.js +108 -0
  142. package/dist-cjs/sharing/grants.js.map +1 -0
  143. package/dist-cjs/sharing/index.js +25 -23
  144. package/dist-cjs/sharing/index.js.map +1 -1
  145. package/dist-cjs/sharing/mcp.js +8 -8
  146. package/dist-cjs/sharing/mcp.js.map +1 -1
  147. package/dist-cjs/sharing/permissions.js +47 -0
  148. package/dist-cjs/sharing/permissions.js.map +1 -0
  149. package/dist-cjs/sharing/publish.js +45 -0
  150. package/dist-cjs/sharing/publish.js.map +1 -0
  151. package/dist-cjs/sharing/share.js +36 -0
  152. package/dist-cjs/sharing/share.js.map +1 -0
  153. package/dist-cjs/sharing/sharing.js +18 -197
  154. package/dist-cjs/sharing/sharing.js.map +1 -1
  155. package/dist-cjs/sharing/types.js +12 -6
  156. package/dist-cjs/sharing/types.js.map +1 -1
  157. package/dist-cjs/transfer/artifacts.js +9 -2
  158. package/dist-cjs/transfer/artifacts.js.map +1 -1
  159. package/dist-cjs/transfer/upload.js +7 -5
  160. package/dist-cjs/transfer/upload.js.map +1 -1
  161. package/package.json +4 -4
  162. package/dist/sharing/command-surface.d.ts +0 -37
  163. package/dist/sharing/command-surface.d.ts.map +0 -1
  164. package/dist/sharing/command-surface.js +0 -170
  165. package/dist/sharing/command-surface.js.map +0 -1
  166. package/dist/sharing/pack.d.ts +0 -21
  167. package/dist/sharing/pack.d.ts.map +0 -1
  168. package/dist/sharing/pack.js +0 -130
  169. package/dist/sharing/pack.js.map +0 -1
  170. package/dist-cjs/sharing/command-surface.js +0 -175
  171. package/dist-cjs/sharing/command-surface.js.map +0 -1
  172. package/dist-cjs/sharing/pack.js +0 -138
  173. package/dist-cjs/sharing/pack.js.map +0 -1
@@ -1,6 +1,6 @@
1
- /** Portable private-result construction for file and link adapters. */
1
+ /** Portable private-result construction for file, link, and construct adapters. */
2
2
  import type { Sha256Hex } from '../entities/types.js';
3
- import type { BinaryApplyPlan, LinkApplyPlan, TextApplyPlan } from './contracts.js';
3
+ import type { BinaryApplyPlan, ConstructApplyPlan, LinkApplyPlan, TextApplyPlan } from './contracts.js';
4
4
  /**
5
5
  * Construct text privately. The snapshot is mandatory truth. A delta is only
6
6
  * a shortcut over the exact immutable base; reproduceTextChange falls back to
@@ -19,8 +19,9 @@ export interface BinaryApplySink {
19
19
  /** Fsync/close and verify the staged whole without returning its bytes. */
20
20
  seal(): Promise<BinaryApplySinkReceipt>;
21
21
  }
22
- /** Verify reusable binary blocks while streaming them into private staging. */
23
- export declare function prepareBinaryResult(plan: BinaryApplyPlan, read: (index: number) => Promise<Uint8Array>, sink: BinaryApplySink, sha256Hex: Sha256Hex): Promise<BinaryApplySinkReceipt>;
22
+ /** Verify reusable blocks while streaming them into private staging. A
23
+ * construct payload stages exactly like a binary file. */
24
+ export declare function prepareBinaryResult(plan: BinaryApplyPlan | ConstructApplyPlan, read: (index: number) => Promise<Uint8Array>, sink: BinaryApplySink, sha256Hex: Sha256Hex): Promise<BinaryApplySinkReceipt>;
24
25
  /** A link result is only its literal UTF-8 target bytes. */
25
26
  export declare function prepareLinkResult(plan: LinkApplyPlan, sha256Hex: Sha256Hex): string;
26
27
  //# sourceMappingURL=content-results.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"content-results.d.ts","sourceRoot":"","sources":["../../src/apply/content-results.ts"],"names":[],"mappings":"AAAA,uEAAuE;AAIvE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,KAAK,EAAE,eAAe,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAcpF;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAC/B,IAAI,EAAE,aAAa,EACnB,QAAQ,EAAE,UAAU,EACpB,SAAS,EAAE,UAAU,GAAG,IAAI,EAC5B,SAAS,EAAE,SAAS,GACnB,UAAU,CAYZ;AAED,MAAM,WAAW,sBAAsB;IACrC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;CAC9B;AAED,MAAM,WAAW,eAAe;IAC9B,8EAA8E;IAC9E,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACvD,2EAA2E;IAC3E,IAAI,IAAI,OAAO,CAAC,sBAAsB,CAAC,CAAC;CACzC;AAED,+EAA+E;AAC/E,wBAAsB,mBAAmB,CACvC,IAAI,EAAE,eAAe,EACrB,IAAI,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC,UAAU,CAAC,EAC5C,IAAI,EAAE,eAAe,EACrB,SAAS,EAAE,SAAS,GACnB,OAAO,CAAC,sBAAsB,CAAC,CAgBjC;AAED,4DAA4D;AAC5D,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,aAAa,EAAE,SAAS,EAAE,SAAS,GAAG,MAAM,CAKnF"}
1
+ {"version":3,"file":"content-results.d.ts","sourceRoot":"","sources":["../../src/apply/content-results.ts"],"names":[],"mappings":"AAAA,mFAAmF;AAInF,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,KAAK,EACV,eAAe,EACf,kBAAkB,EAClB,aAAa,EACb,aAAa,EACd,MAAM,gBAAgB,CAAC;AAcxB;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAC/B,IAAI,EAAE,aAAa,EACnB,QAAQ,EAAE,UAAU,EACpB,SAAS,EAAE,UAAU,GAAG,IAAI,EAC5B,SAAS,EAAE,SAAS,GACnB,UAAU,CAYZ;AAED,MAAM,WAAW,sBAAsB;IACrC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;CAC9B;AAED,MAAM,WAAW,eAAe;IAC9B,8EAA8E;IAC9E,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACvD,2EAA2E;IAC3E,IAAI,IAAI,OAAO,CAAC,sBAAsB,CAAC,CAAC;CACzC;AAED;0DAC0D;AAC1D,wBAAsB,mBAAmB,CACvC,IAAI,EAAE,eAAe,GAAG,kBAAkB,EAC1C,IAAI,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC,UAAU,CAAC,EAC5C,IAAI,EAAE,eAAe,EACrB,SAAS,EAAE,SAAS,GACnB,OAAO,CAAC,sBAAsB,CAAC,CAgBjC;AAED,4DAA4D;AAC5D,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,aAAa,EAAE,SAAS,EAAE,SAAS,GAAG,MAAM,CAKnF"}
@@ -1,4 +1,4 @@
1
- /** Portable private-result construction for file and link adapters. */
1
+ /** Portable private-result construction for file, link, and construct adapters. */
2
2
  import { reproduceTextChange } from '../detection/content.js';
3
3
  import { utf8Encode } from '../entities/bytes.js';
4
4
  const exactResult = (bytes, expected, sha256Hex, label) => {
@@ -26,7 +26,8 @@ export function prepareTextResult(plan, snapshot, exactBase, sha256Hex) {
26
26
  delta: plan.strategy.delta,
27
27
  }, verifiedSnapshot, sha256Hex);
28
28
  }
29
- /** Verify reusable binary blocks while streaming them into private staging. */
29
+ /** Verify reusable blocks while streaming them into private staging. A
30
+ * construct payload stages exactly like a binary file. */
30
31
  export async function prepareBinaryResult(plan, read, sink, sha256Hex) {
31
32
  for (const [index, expected] of plan.manifest.chunks.entries()) {
32
33
  const chunk = await read(index);
@@ -1 +1 @@
1
- {"version":3,"file":"content-results.js","sourceRoot":"","sources":["../../src/apply/content-results.ts"],"names":[],"mappings":"AAAA,uEAAuE;AAEvE,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAIlD,MAAM,WAAW,GAAG,CAClB,KAAiB,EACjB,QAAgB,EAChB,SAAoB,EACpB,KAAa,EACD,EAAE;IACd,IAAI,SAAS,CAAC,KAAK,CAAC,KAAK,QAAQ,EAAE,CAAC;QAClC,MAAM,IAAI,KAAK,CAAC,GAAG,KAAK,8CAA8C,CAAC,CAAC;IAC1E,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,UAAU,iBAAiB,CAC/B,IAAmB,EACnB,QAAoB,EACpB,SAA4B,EAC5B,SAAoB;IAEpB,MAAM,gBAAgB,GAAG,WAAW,CAClC,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,SAAS,EAAE,qBAAqB,CACtE,CAAC;IACF,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,KAAK,UAAU;QAAE,OAAO,gBAAgB,CAAC;IAC/D,OAAO,mBAAmB,CAAC,SAAS,EAAE;QACpC,IAAI,EAAE,WAAW;QACjB,IAAI,EAAE,OAAO;QACb,kBAAkB,EAAE,IAAI,CAAC,QAAQ,CAAC,kBAAkB;QACpD,oBAAoB,EAAE,IAAI,CAAC,QAAQ,CAAC,WAAW;QAC/C,KAAK,EAAE,IAAI,CAAC,QAAQ,CAAC,KAAK;KAC3B,EAAE,gBAAgB,EAAE,SAAS,CAAC,CAAC;AAClC,CAAC;AAcD,+EAA+E;AAC/E,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACvC,IAAqB,EACrB,IAA4C,EAC5C,IAAqB,EACrB,SAAoB;IAEpB,KAAK,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAE,EAAE,CAAC;QAC/D,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,CAAC;QAChC,IAAI,CAAC,CAAC,KAAK,YAAY,UAAU,CAAC;eAC7B,KAAK,CAAC,UAAU,KAAK,QAAQ,CAAC,KAAK;eACnC,SAAS,CAAC,KAAK,CAAC,KAAK,QAAQ,CAAC,MAAM,EAAE,CAAC;YAC1C,MAAM,IAAI,KAAK,CAAC,sBAAsB,KAAK,sBAAsB,CAAC,CAAC;QACrE,CAAC;QACD,MAAM,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;IACjC,CAAC;IACD,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;IAClC,IAAI,OAAO,CAAC,KAAK,KAAK,IAAI,CAAC,QAAQ,CAAC,KAAK;WACpC,OAAO,CAAC,WAAW,KAAK,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC;QACvD,MAAM,IAAI,KAAK,CAAC,yDAAyD,CAAC,CAAC;IAC7E,CAAC;IACD,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC;AACvC,CAAC;AAED,4DAA4D;AAC5D,MAAM,UAAU,iBAAiB,CAAC,IAAmB,EAAE,SAAoB;IACzE,WAAW,CACT,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,SAAS,EAAE,mBAAmB,CACvF,CAAC;IACF,OAAO,IAAI,CAAC,UAAU,CAAC;AACzB,CAAC"}
1
+ {"version":3,"file":"content-results.js","sourceRoot":"","sources":["../../src/apply/content-results.ts"],"names":[],"mappings":"AAAA,mFAAmF;AAEnF,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AASlD,MAAM,WAAW,GAAG,CAClB,KAAiB,EACjB,QAAgB,EAChB,SAAoB,EACpB,KAAa,EACD,EAAE;IACd,IAAI,SAAS,CAAC,KAAK,CAAC,KAAK,QAAQ,EAAE,CAAC;QAClC,MAAM,IAAI,KAAK,CAAC,GAAG,KAAK,8CAA8C,CAAC,CAAC;IAC1E,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,UAAU,iBAAiB,CAC/B,IAAmB,EACnB,QAAoB,EACpB,SAA4B,EAC5B,SAAoB;IAEpB,MAAM,gBAAgB,GAAG,WAAW,CAClC,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,SAAS,EAAE,qBAAqB,CACtE,CAAC;IACF,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,KAAK,UAAU;QAAE,OAAO,gBAAgB,CAAC;IAC/D,OAAO,mBAAmB,CAAC,SAAS,EAAE;QACpC,IAAI,EAAE,WAAW;QACjB,IAAI,EAAE,OAAO;QACb,kBAAkB,EAAE,IAAI,CAAC,QAAQ,CAAC,kBAAkB;QACpD,oBAAoB,EAAE,IAAI,CAAC,QAAQ,CAAC,WAAW;QAC/C,KAAK,EAAE,IAAI,CAAC,QAAQ,CAAC,KAAK;KAC3B,EAAE,gBAAgB,EAAE,SAAS,CAAC,CAAC;AAClC,CAAC;AAcD;0DAC0D;AAC1D,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACvC,IAA0C,EAC1C,IAA4C,EAC5C,IAAqB,EACrB,SAAoB;IAEpB,KAAK,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAE,EAAE,CAAC;QAC/D,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,CAAC;QAChC,IAAI,CAAC,CAAC,KAAK,YAAY,UAAU,CAAC;eAC7B,KAAK,CAAC,UAAU,KAAK,QAAQ,CAAC,KAAK;eACnC,SAAS,CAAC,KAAK,CAAC,KAAK,QAAQ,CAAC,MAAM,EAAE,CAAC;YAC1C,MAAM,IAAI,KAAK,CAAC,sBAAsB,KAAK,sBAAsB,CAAC,CAAC;QACrE,CAAC;QACD,MAAM,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;IACjC,CAAC;IACD,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;IAClC,IAAI,OAAO,CAAC,KAAK,KAAK,IAAI,CAAC,QAAQ,CAAC,KAAK;WACpC,OAAO,CAAC,WAAW,KAAK,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC;QACvD,MAAM,IAAI,KAAK,CAAC,yDAAyD,CAAC,CAAC;IAC7E,CAAC;IACD,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC;AACvC,CAAC;AAED,4DAA4D;AAC5D,MAAM,UAAU,iBAAiB,CAAC,IAAmB,EAAE,SAAoB;IACzE,WAAW,CACT,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,SAAS,EAAE,mBAAmB,CACvF,CAAC;IACF,OAAO,IAAI,CAAC,UAAU,CAAC;AACzB,CAAC"}
@@ -1,6 +1,6 @@
1
1
  /** Portable contracts at the Inbox -> Apply -> Verify boundary. */
2
2
  import type { CloudEntityRecord } from '../entities/cloud.js';
3
- import { type EntityType, type Sha256Hex } from '../entities/types.js';
3
+ import { type ConstructType, type EntityType, type Sha256Hex } from '../entities/types.js';
4
4
  import type { ChangeFacet, TextSplice } from '../detection/record-proposal.js';
5
5
  import type { AcceptedEntityRecord } from '../records/contracts.js';
6
6
  import type { ContentManifest } from '../contracts/content.js';
@@ -99,7 +99,15 @@ export interface LifecycleApplyPlan extends ApplyPlanBase {
99
99
  readonly kind: 'lifecycle';
100
100
  readonly status: 'trashed' | 'deleted';
101
101
  }
102
- export type EntityApplyPlan = TextApplyPlan | BinaryApplyPlan | LinkApplyPlan | StructureApplyPlan | ReferenceApplyPlan | RepositoryApplyPlan | LifecycleApplyPlan;
102
+ /** A construct payload stages exactly like a binary file. The product's
103
+ * adapter reports `dependency` from guard while a UUID the payload names is
104
+ * absent locally, and times the reveal: the switch to the received version. */
105
+ export interface ConstructApplyPlan extends ApplyPlanBase {
106
+ readonly kind: ConstructType;
107
+ readonly artifact: TransferArtifact;
108
+ readonly manifest: ContentManifest;
109
+ }
110
+ export type EntityApplyPlan = TextApplyPlan | BinaryApplyPlan | LinkApplyPlan | StructureApplyPlan | ReferenceApplyPlan | RepositoryApplyPlan | LifecycleApplyPlan | ConstructApplyPlan;
103
111
  export type ApplyGuard = {
104
112
  readonly kind: 'safe';
105
113
  } | {
@@ -1 +1 @@
1
- {"version":3,"file":"contracts.d.ts","sourceRoot":"","sources":["../../src/apply/contracts.ts"],"names":[],"mappings":"AAAA,mEAAmE;AAEnE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAC9D,OAAO,EAA8B,KAAK,UAAU,EAAE,KAAK,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACnG,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAC/E,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AACpE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC/D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAEjE,eAAO,MAAM,4BAA4B,iCAAiC,CAAC;AAE3E,MAAM,MAAM,gBAAgB,GAAG,UAAU,GAAG,UAAU,GAAG,UAAU,CAAC;AAEpE,kFAAkF;AAClF,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,QAAQ,EAAE,OAAO,4BAA4B,CAAC;IACvD,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IACjC,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;IAClC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,UAAU,EAAE,UAAU,CAAC;IAChC,QAAQ,CAAC,KAAK,EAAE,gBAAgB,CAAC;IACjC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;CAC5B;AAED,kEAAkE;AAClE,MAAM,WAAW,yBAAyB;IACxC,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,MAAM,EAAE,iBAAiB,CAAC;CACpC;AAED,sDAAsD;AACtD,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IACjC,QAAQ,CAAC,YAAY,EAAE,yBAAyB,GAAG,IAAI,CAAC;IACxD,QAAQ,CAAC,OAAO,EAAE,SAAS,oBAAoB,EAAE,CAAC;IAClD,QAAQ,CAAC,MAAM,EAAE,iBAAiB,GAAG,IAAI,CAAC;CAC3C;AAED,4EAA4E;AAC5E,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,IAAI,EAAE,SAAS,eAAe,EAAE,CAAC;IAC1C,QAAQ,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;CACpC;AAED,UAAU,aAAa;IACrB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IACjC,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;IAClC,QAAQ,CAAC,MAAM,EAAE,iBAAiB,CAAC;IACnC,QAAQ,CAAC,MAAM,EAAE,SAAS,WAAW,EAAE,CAAC;CACzC;AAED,MAAM,WAAW,aAAc,SAAQ,aAAa;IAClD,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAC;IAC3B,QAAQ,CAAC,QAAQ,EAAE,gBAAgB,CAAC;IACpC;;;;;OAKG;IACH,QAAQ,CAAC,QAAQ,EACb;QAAE,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAA;KAAE,GAC7B;QACA,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;QACvB,QAAQ,CAAC,kBAAkB,EAAE,MAAM,CAAC;QACpC,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAC;KAC5B,CAAC;CACL;AAED,MAAM,WAAW,eAAgB,SAAQ,aAAa;IACpD,QAAQ,CAAC,IAAI,EAAE,aAAa,CAAC;IAC7B,QAAQ,CAAC,QAAQ,EAAE,gBAAgB,CAAC;IACpC,QAAQ,CAAC,QAAQ,EAAE,eAAe,CAAC;CACpC;AAED,MAAM,WAAW,aAAc,SAAQ,aAAa;IAClD,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,QAAQ,EAAE,gBAAgB,CAAC;IACpC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;CAC7B;AAED,+EAA+E;AAC/E,MAAM,WAAW,kBAAmB,SAAQ,aAAa;IACvD,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAC;IAC3B,mEAAmE;IACnE,QAAQ,CAAC,cAAc,EAAE,gBAAgB,GAAG,IAAI,CAAC;CAClD;AAED,MAAM,WAAW,kBAAmB,SAAQ,aAAa;IACvD,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAC;IAC3B,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;CACjC;AAED,MAAM,WAAW,mBAAoB,SAAQ,aAAa;IACxD,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC;IAC1B,QAAQ,CAAC,QAAQ,EAAE,gBAAgB,CAAC;IACpC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,sBAAsB,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/C,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;IAClC,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAC;IAC9B,QAAQ,CAAC,iBAAiB,EAAE,OAAO,CAAC;CACrC;AAED,MAAM,WAAW,kBAAmB,SAAQ,aAAa;IACvD,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAC;IAC3B,QAAQ,CAAC,MAAM,EAAE,SAAS,GAAG,SAAS,CAAC;CACxC;AAED,MAAM,MAAM,eAAe,GACvB,aAAa,GACb,eAAe,GACf,aAAa,GACb,kBAAkB,GAClB,kBAAkB,GAClB,mBAAmB,GACnB,kBAAkB,CAAC;AAEvB,MAAM,MAAM,UAAU,GAClB;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GACzB;IAAE,QAAQ,CAAC,IAAI,EAAE,gBAAgB,CAAA;CAAE;AACrC;;wEAEwE;GACtE;IAAE,QAAQ,CAAC,IAAI,EAAE,cAAc,CAAC;IAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE;AAC7D;;;;;0DAK0D;GACxD;IAAE,QAAQ,CAAC,IAAI,EAAE,kBAAkB,CAAC;IAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE;AACjE;;;qDAGqD;GACnD;IAAE,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;CAAE;AAC1D;;;oDAGoD;GAClD;IAAE,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GACtD;IAAE,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAEzD,MAAM,MAAM,iBAAiB,GACzB;IAAE,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAA;CAAE;AAC5B;;;2DAG2D;GACzD;IAAE,QAAQ,CAAC,IAAI,EAAE,gBAAgB,CAAA;CAAE,GACnC;IAAE,QAAQ,CAAC,IAAI,EAAE,cAAc,CAAC;IAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,GAC3D;IAAE,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAEzD,MAAM,MAAM,eAAe,GACvB;IAAE,QAAQ,CAAC,IAAI,EAAE,cAAc,CAAA;CAAE,GACjC;IAAE,QAAQ,CAAC,IAAI,EAAE,qBAAqB,CAAA;CAAE,CAAC;AAE7C,KAAK,YAAY,CAAC,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;AAEtC,mFAAmF;AACnF,MAAM,WAAW,oBAAoB;IACnC;gFAC4E;IAC5E,aAAa,CACX,KAAK,EAAE,MAAM,EACb,WAAW,EAAE,MAAM,GAAG,IAAI,GACzB,YAAY,CAAC,mBAAmB,CAAC,CAAC;IACrC;oEACgE;IAChE,wBAAwB,CACtB,SAAS,EAAE,SAAS,MAAM,EAAE,GAC3B,YAAY,CAAC,SAAS,eAAe,EAAE,CAAC,CAAC;IAC5C;;qDAEiD;IACjD,iBAAiB,CACf,WAAW,EAAE,MAAM,EACnB,QAAQ,EAAE,MAAM,EAChB,cAAc,EAAE,MAAM,GACrB,YAAY,CAAC,OAAO,CAAC,CAAC;IACzB,WAAW,CAAC,MAAM,EAAE,iBAAiB,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;IAC3D,cAAc,CAAC,MAAM,EAAE,iBAAiB,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;IAC9D,YAAY,CAAC,MAAM,EAAE,iBAAiB,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;IAC5D;sCACkC;IAClC,cAAc,CAAC,MAAM,EAAE,iBAAiB,EAAE,UAAU,EAAE,eAAe,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;CAC5F;AAED,qFAAqF;AACrF,MAAM,WAAW,iBAAiB;IAChC,OAAO,CAAC,MAAM,EAAE,iBAAiB,EAAE,IAAI,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACzE,iGAAiG;IACjG,KAAK,CAAC,MAAM,EAAE,iBAAiB,EAAE,IAAI,EAAE,eAAe,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;IAC7E,MAAM,CAAC,MAAM,EAAE,iBAAiB,EAAE,IAAI,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACxE,oFAAoF;IACpF,OAAO,CAAC,MAAM,EAAE,iBAAiB,EAAE,IAAI,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC1E;AAED,qDAAqD;AACrD,MAAM,WAAW,kBAAkB;IACjC,MAAM,CAAC,MAAM,EAAE,iBAAiB,EAAE,IAAI,EAAE,eAAe,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC;CACtF;AAED,MAAM,WAAW,6BAA6B;IAC5C,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,KAAK,EAAE,iBAAiB,CAAC;IAClC,QAAQ,CAAC,MAAM,EAAE,kBAAkB,CAAC;CACrC;AAED;;;;GAIG;AACH,MAAM,WAAW,sBAAsB;IACrC,UAAU,CAAC,IAAI,EAAE,UAAU,GAAG,6BAA6B,CAAC;IAC5D;;;;yEAIqE;IACrE,YAAY,CACV,MAAM,EAAE,iBAAiB,EACzB,IAAI,EAAE,eAAe,EACrB,QAAQ,EAAE,eAAe,GAAG,cAAc,GACzC,OAAO,CAAC,IAAI,CAAC,CAAC;CAClB;AAED,MAAM,WAAW,uBAAuB;IACtC,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,IAAI,GAAG;QAAE,MAAM,IAAI,IAAI,CAAA;KAAE,CAAC;IACpE,MAAM,IAAI,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,sBAAsB;IACrC,QAAQ,CAAC,KAAK,EAAE,oBAAoB,CAAC;IACrC,QAAQ,CAAC,OAAO,EAAE,sBAAsB,CAAC;IACzC,QAAQ,CAAC,QAAQ,EAAE,uBAAuB,CAAC;IAC3C,QAAQ,CAAC,SAAS,EAAE,SAAS,CAAC;IAC9B,QAAQ,CAAC,GAAG,EAAE,MAAM,MAAM,CAAC;IAC3B,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,iBAAiB,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;CACvD;AAQD,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,iBAAiB,GAAG,IAAI,CAcjE;AAED,wBAAgB,iBAAiB,CAAC,KAAK,EAAE;IACvC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,MAAM,EAAE,oBAAoB,CAAC;IACtC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;CAC5B,GAAG,iBAAiB,CAepB;AAED,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,iBAAiB,EACzB,KAAK,EAAE,OAAO,CAAC,gBAAgB,EAAE,UAAU,CAAC,GAC3C,iBAAiB,CAOnB"}
1
+ {"version":3,"file":"contracts.d.ts","sourceRoot":"","sources":["../../src/apply/contracts.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  /** Portable contracts at the Inbox -> Apply -> Verify boundary. */
2
- import { isEntityType, UUID_PATTERN } from '../entities/types.js';
2
+ import { isEntityType, UUID_PATTERN, } from '../entities/types.js';
3
3
  export const ENTITY_APPLY_INTENT_CONTRACT = 'amalgm.entity-apply-intent@1';
4
4
  const HASH = /^[0-9a-f]{64}$/;
5
5
  const PHASES = new Set(['declared', 'prepared', 'revealed']);
@@ -1 +1 @@
1
- {"version":3,"file":"contracts.js","sourceRoot":"","sources":["../../src/apply/contracts.ts"],"names":[],"mappings":"AAAA,mEAAmE;AAGnE,OAAO,EAAE,YAAY,EAAE,YAAY,EAAmC,MAAM,sBAAsB,CAAC;AAMnG,MAAM,CAAC,MAAM,4BAA4B,GAAG,8BAA8B,CAAC;AAoP3E,MAAM,IAAI,GAAG,gBAAgB,CAAC;AAC9B,MAAM,MAAM,GAAG,IAAI,GAAG,CAAmB,CAAC,UAAU,EAAE,UAAU,EAAE,UAAU,CAAC,CAAC,CAAC;AAE/E,MAAM,QAAQ,GAAG,CAAC,KAAa,EAAE,QAAQ,GAAG,KAAK,EAAW,EAAE,CAC5D,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAE7D,MAAM,UAAU,iBAAiB,CAAC,MAAyB;IACzD,IAAI,MAAM,CAAC,QAAQ,KAAK,4BAA4B;WAC/C,CAAC,MAAM,CAAC,WAAW;WACnB,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC;WACnC,CAAC,QAAQ,CAAC,MAAM,CAAC,YAAY,CAAC;WAC9B,CAAC,QAAQ,CAAC,MAAM,CAAC,eAAe,EAAE,IAAI,CAAC;WACvC,MAAM,CAAC,eAAe,GAAG,MAAM,CAAC,YAAY,GAAG,CAAC;WAChD,CAAC,MAAM,CAAC,gBAAgB;WACxB,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC;WAC9B,CAAC,YAAY,CAAC,MAAM,CAAC,UAAU,CAAC;WAChC,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC;WACzB,CAAC,QAAQ,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC;QACjC,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;IACpD,CAAC;AACH,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,KAMjC;IACC,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;QAC3B,QAAQ,EAAE,4BAA4B;QACtC,WAAW,EAAE,KAAK,CAAC,WAAW;QAC9B,QAAQ,EAAE,KAAK,CAAC,QAAQ;QACxB,YAAY,EAAE,KAAK,CAAC,YAAY;QAChC,eAAe,EAAE,KAAK,CAAC,MAAM,CAAC,cAAc;QAC5C,gBAAgB,EAAE,KAAK,CAAC,MAAM,CAAC,UAAU;QACzC,WAAW,EAAE,KAAK,CAAC,MAAM,CAAC,WAAW;QACrC,UAAU,EAAE,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI;QAC3C,KAAK,EAAE,UAAmB;QAC1B,SAAS,EAAE,KAAK,CAAC,SAAS;KAC3B,CAAC,CAAC;IACH,iBAAiB,CAAC,MAAM,CAAC,CAAC;IAC1B,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,MAAM,UAAU,kBAAkB,CAChC,MAAyB,EACzB,KAA4C;IAE5C,iBAAiB,CAAC,MAAM,CAAC,CAAC;IAC1B,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,KAAK,KAAK;WAC/B,CAAC,MAAM,CAAC,KAAK,KAAK,UAAU,IAAI,KAAK,KAAK,UAAU,CAAC;WACrD,CAAC,MAAM,CAAC,KAAK,KAAK,UAAU,IAAI,KAAK,KAAK,UAAU,CAAC,CAAC;IAC3D,IAAI,CAAC,KAAK;QAAE,MAAM,IAAI,KAAK,CAAC,wCAAwC,MAAM,CAAC,KAAK,OAAO,KAAK,EAAE,CAAC,CAAC;IAChG,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,GAAG,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC;AAC7C,CAAC"}
1
+ {"version":3,"file":"contracts.js","sourceRoot":"","sources":["../../src/apply/contracts.ts"],"names":[],"mappings":"AAAA,mEAAmE;AAGnE,OAAO,EACL,YAAY,EACZ,YAAY,GAIb,MAAM,sBAAsB,CAAC;AAM9B,MAAM,CAAC,MAAM,4BAA4B,GAAG,8BAA8B,CAAC;AA8P3E,MAAM,IAAI,GAAG,gBAAgB,CAAC;AAC9B,MAAM,MAAM,GAAG,IAAI,GAAG,CAAmB,CAAC,UAAU,EAAE,UAAU,EAAE,UAAU,CAAC,CAAC,CAAC;AAE/E,MAAM,QAAQ,GAAG,CAAC,KAAa,EAAE,QAAQ,GAAG,KAAK,EAAW,EAAE,CAC5D,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAE7D,MAAM,UAAU,iBAAiB,CAAC,MAAyB;IACzD,IAAI,MAAM,CAAC,QAAQ,KAAK,4BAA4B;WAC/C,CAAC,MAAM,CAAC,WAAW;WACnB,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC;WACnC,CAAC,QAAQ,CAAC,MAAM,CAAC,YAAY,CAAC;WAC9B,CAAC,QAAQ,CAAC,MAAM,CAAC,eAAe,EAAE,IAAI,CAAC;WACvC,MAAM,CAAC,eAAe,GAAG,MAAM,CAAC,YAAY,GAAG,CAAC;WAChD,CAAC,MAAM,CAAC,gBAAgB;WACxB,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC;WAC9B,CAAC,YAAY,CAAC,MAAM,CAAC,UAAU,CAAC;WAChC,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC;WACzB,CAAC,QAAQ,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC;QACjC,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;IACpD,CAAC;AACH,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,KAMjC;IACC,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;QAC3B,QAAQ,EAAE,4BAA4B;QACtC,WAAW,EAAE,KAAK,CAAC,WAAW;QAC9B,QAAQ,EAAE,KAAK,CAAC,QAAQ;QACxB,YAAY,EAAE,KAAK,CAAC,YAAY;QAChC,eAAe,EAAE,KAAK,CAAC,MAAM,CAAC,cAAc;QAC5C,gBAAgB,EAAE,KAAK,CAAC,MAAM,CAAC,UAAU;QACzC,WAAW,EAAE,KAAK,CAAC,MAAM,CAAC,WAAW;QACrC,UAAU,EAAE,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI;QAC3C,KAAK,EAAE,UAAmB;QAC1B,SAAS,EAAE,KAAK,CAAC,SAAS;KAC3B,CAAC,CAAC;IACH,iBAAiB,CAAC,MAAM,CAAC,CAAC;IAC1B,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,MAAM,UAAU,kBAAkB,CAChC,MAAyB,EACzB,KAA4C;IAE5C,iBAAiB,CAAC,MAAM,CAAC,CAAC;IAC1B,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,KAAK,KAAK;WAC/B,CAAC,MAAM,CAAC,KAAK,KAAK,UAAU,IAAI,KAAK,KAAK,UAAU,CAAC;WACrD,CAAC,MAAM,CAAC,KAAK,KAAK,UAAU,IAAI,KAAK,KAAK,UAAU,CAAC,CAAC;IAC3D,IAAI,CAAC,KAAK;QAAE,MAAM,IAAI,KAAK,CAAC,wCAAwC,MAAM,CAAC,KAAK,OAAO,KAAK,EAAE,CAAC,CAAC;IAChG,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,GAAG,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC;AAC7C,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"plans.d.ts","sourceRoot":"","sources":["../../src/apply/plans.ts"],"names":[],"mappings":"AAAA,8EAA8E;AAK9E,OAAO,EAAgB,KAAK,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAQpE,OAAO,KAAK,EAEV,eAAe,EACf,eAAe,EAIhB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAqB,KAAK,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AA2I7E;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,eAAe,EAAE,SAAS,EAAE,SAAS,GAAG,eAAe,CAE5F;AAED,iFAAiF;AACjF,wBAAgB,uBAAuB,CACrC,IAAI,EAAE,eAAe,EACrB,QAAQ,EAAE,mBAAmB,EAC7B,SAAS,EAAE,SAAS,GACnB,eAAe,CAwDjB"}
1
+ {"version":3,"file":"plans.d.ts","sourceRoot":"","sources":["../../src/apply/plans.ts"],"names":[],"mappings":"AAAA,8EAA8E;AAK9E,OAAO,EAAgB,KAAK,SAAS,EAAE,MAAM,sBAAsB,CAAC;AASpE,OAAO,KAAK,EAGV,eAAe,EACf,eAAe,EAIhB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAqB,KAAK,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AA6I7E;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,eAAe,EAAE,SAAS,EAAE,SAAS,GAAG,eAAe,CAE5F;AAED,iFAAiF;AACjF,wBAAgB,uBAAuB,CACrC,IAAI,EAAE,eAAe,EACrB,QAAQ,EAAE,mBAAmB,EAC7B,SAAS,EAAE,SAAS,GACnB,eAAe,CAiEjB"}
@@ -56,17 +56,18 @@ const textPlan = (base, replay, cargo) => {
56
56
  : Object.freeze({ kind: 'snapshot' }),
57
57
  });
58
58
  };
59
- const binaryPlan = (base, replay, cargo) => {
59
+ /** Binary files and constructs both replay as one exact content manifest. */
60
+ const manifestPlan = (base, kind, replay, cargo) => {
60
61
  const artifact = requireArtifact(base.target, cargo);
61
62
  const manifest = checkContentManifest(replay.manifest, base.target.payloadVersion);
62
- if (replay.kind !== 'file.binary'
63
+ if (replay.kind !== kind
63
64
  || replay.resultPayloadVersion !== base.target.payloadVersion
64
65
  || !manifest.ok) {
65
- throw new Error('binary Apply replay does not describe its complete result manifest');
66
+ throw new Error(`${kind} Apply replay does not describe its complete result manifest`);
66
67
  }
67
68
  return Object.freeze({
68
69
  ...base,
69
- kind: 'file.binary',
70
+ kind,
70
71
  artifact,
71
72
  manifest: Object.freeze({
72
73
  ...manifest.value,
@@ -167,7 +168,11 @@ export function planSelectedEntityApply(work, selected, sha256Hex) {
167
168
  case 'file.text':
168
169
  return textPlan(common, accepted.change.replay, accepted.change.cargo);
169
170
  case 'file.binary':
170
- return binaryPlan(common, accepted.change.replay, accepted.change.cargo);
171
+ case 'agent':
172
+ case 'automation':
173
+ case 'app':
174
+ case 'tool':
175
+ return manifestPlan(common, target.type, accepted.change.replay, accepted.change.cargo);
171
176
  case 'link':
172
177
  return linkPlan(common, accepted.change.replay, accepted.change.cargo, sha256Hex);
173
178
  case 'repo.git':
@@ -1 +1 @@
1
- {"version":3,"file":"plans.js","sourceRoot":"","sources":["../../src/apply/plans.ts"],"names":[],"mappings":"AAAA,8EAA8E;AAE9E,OAAO,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AAC/D,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAChE,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,YAAY,EAAkB,MAAM,sBAAsB,CAAC;AAOpE,OAAO,EAAE,iBAAiB,EAAE,sBAAsB,EAAyB,MAAM,0BAA0B,CAAC;AAS5G,OAAO,EAAE,iBAAiB,EAA4B,MAAM,gBAAgB,CAAC;AAE7E,MAAM,IAAI,GAAG,gBAAgB,CAAC;AAE9B,MAAM,YAAY,GAAG,CAAC,IAAsB,EAAE,KAAuB,EAAW,EAAE,CAChF,UAAU,CAAC,IAAI,CAAC,KAAK,UAAU,CAAC,KAAK,CAAC,CAAC;AAEzC,MAAM,cAAc,GAAG,CAAC,KAAyB,EAAQ,EAAE;IACzD,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,+CAA+C,CAAC,CAAC;AAC3F,CAAC,CAAC;AAEF,MAAM,eAAe,GAAG,CACtB,MAAuC,EACvC,KAAyB,EACP,EAAE;IACpB,MAAM,QAAQ,GAAG,iBAAiB,CAAC,MAAM,CAAC,CAAC;IAC3C,IAAI,QAAQ,KAAK,IAAI;QAAE,MAAM,IAAI,KAAK,CAAC,UAAU,MAAM,CAAC,IAAI,kCAAkC,CAAC,CAAC;IAChG,sBAAsB,CAAC,QAAQ,CAAC,CAAC;IACjC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAqB,EAAE,QAAQ,CAAC,EAAE,CAAC;QAChF,MAAM,IAAI,KAAK,CAAC,gEAAgE,CAAC,CAAC;IACpF,CAAC;IACD,OAAO,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;AACjC,CAAC,CAAC;AAEF,MAAM,QAAQ,GAAG,CACf,IAA2D,EAC3D,MAAkB,EAClB,KAAyB,EACV,EAAE;IACjB,MAAM,QAAQ,GAAG,eAAe,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;IACrD,IAAI,MAAM,CAAC,IAAI,KAAK,WAAW;WAC1B,MAAM,CAAC,oBAAoB,KAAK,IAAI,CAAC,MAAM,CAAC,cAAc;WAC1D,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,oBAAoB,CAAC;WACvC,CAAC,MAAM,CAAC,kBAAkB,KAAK,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC;WAC7E,CAAC,MAAM,CAAC,IAAI,KAAK,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,KAAK,IAAI,CAAC;WACrD,CAAC,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;QAClD,MAAM,IAAI,KAAK,CAAC,yDAAyD,CAAC,CAAC;IAC7E,CAAC;IACD,IAAI,MAAM,CAAC,KAAK,KAAK,IAAI;WACpB,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC;eACpE,CAAC,MAAM,CAAC,aAAa,CAAC,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,MAAM,CAAC,KAAK,CAAC,WAAW,GAAG,CAAC;eAC/E,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,YAAY,UAAU,CAAC,CAAC,EAAE,CAAC;QACrD,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;IAClE,CAAC;IACD,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,KAAK,OAAO;WACnC,MAAM,CAAC,KAAK,KAAK,IAAI;WACrB,MAAM,CAAC,kBAAkB,KAAK,IAAI,CAAC;IACxC,OAAO,MAAM,CAAC,MAAM,CAAC;QACnB,GAAG,IAAI;QACP,IAAI,EAAE,WAAoB;QAC1B,QAAQ;QACR,QAAQ,EAAE,QAAQ;YAChB,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC;gBACd,IAAI,EAAE,OAAgB;gBACtB,kBAAkB,EAAE,MAAM,CAAC,kBAA4B;gBACvD,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC;oBACnB,GAAI,MAAM,CAAC,KAA0C;oBACrD,MAAM,EAAG,MAAM,CAAC,KAA0C,CAAC,MAAM,CAAC,KAAK,EAAE;iBAC1E,CAAC;aACH,CAAC;YACF,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,UAAmB,EAAE,CAAC;KACjD,CAAC,CAAC;AACL,CAAC,CAAC;AAEF,MAAM,UAAU,GAAG,CACjB,IAA6D,EAC7D,MAAoB,EACpB,KAAyB,EACR,EAAE;IACnB,MAAM,QAAQ,GAAG,eAAe,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;IACrD,MAAM,QAAQ,GAAG,oBAAoB,CAAC,MAAM,CAAC,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;IACnF,IAAI,MAAM,CAAC,IAAI,KAAK,aAAa;WAC5B,MAAM,CAAC,oBAAoB,KAAK,IAAI,CAAC,MAAM,CAAC,cAAc;WAC1D,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;QAClB,MAAM,IAAI,KAAK,CAAC,oEAAoE,CAAC,CAAC;IACxF,CAAC;IACD,OAAO,MAAM,CAAC,MAAM,CAAC;QACnB,GAAG,IAAI;QACP,IAAI,EAAE,aAAsB;QAC5B,QAAQ;QACR,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC;YACtB,GAAG,QAAQ,CAAC,KAAK;YACjB,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,GAAG,KAAK,EAAE,CAAC,CAAC,CAAC;SACzF,CAAC;KACH,CAAC,CAAC;AACL,CAAC,CAAC;AAEF,MAAM,QAAQ,GAAG,CACf,IAA6D,EAC7D,MAAkB,EAClB,KAAyB,EACzB,SAAoB,EACL,EAAE;IACjB,MAAM,QAAQ,GAAG,eAAe,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;IACrD,IAAI,MAAM,CAAC,IAAI,KAAK,MAAM;WACrB,MAAM,CAAC,oBAAoB,KAAK,IAAI,CAAC,MAAM,CAAC,cAAc;WAC1D,SAAS,CAAC,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,KAAK,MAAM,CAAC,oBAAoB,EAAE,CAAC;QAC1E,MAAM,IAAI,KAAK,CAAC,+DAA+D,CAAC,CAAC;IACnF,CAAC;IACD,OAAO,MAAM,CAAC,MAAM,CAAC;QACnB,GAAG,IAAI;QACP,IAAI,EAAE,MAAe;QACrB,QAAQ;QACR,UAAU,EAAE,MAAM,CAAC,MAAM;KAC1B,CAAC,CAAC;AACL,CAAC,CAAC;AAEF,MAAM,cAAc,GAAG,CACrB,IAEsF,EACtF,MAAwB,EACxB,KAAyB,EACJ,EAAE;IACvB,MAAM,QAAQ,GAAG,eAAe,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;IACrD,IAAI,MAAM,CAAC,IAAI,KAAK,UAAU;WACzB,MAAM,CAAC,OAAO,KAAK,IAAI,CAAC,MAAM,CAAC,cAAc;WAC7C,MAAM,CAAC,gBAAgB,KAAK,IAAI,CAAC,MAAM,CAAC,gBAAgB;WACxD,CAAC,CAAC,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,YAAY,EAAE,MAAM,CAAC,gBAAgB,CAAC;aAC9E,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;WAClC,CAAC,MAAM,CAAC,sBAAsB,KAAK,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,sBAAsB,CAAC,CAAC;WACrF,OAAO,MAAM,CAAC,WAAW,KAAK,SAAS;WACvC,OAAO,MAAM,CAAC,iBAAiB,KAAK,SAAS,EAAE,CAAC;QACnD,MAAM,IAAI,KAAK,CAAC,wEAAwE,CAAC,CAAC;IAC5F,CAAC;IACD,OAAO,MAAM,CAAC,MAAM,CAAC;QACnB,GAAG,IAAI;QACP,IAAI,EAAE,UAAmB;QACzB,QAAQ;QACR,OAAO,EAAE,MAAM,CAAC,OAAO;QACvB,MAAM,EAAE,MAAM,CAAC,MAAM;QACrB,YAAY,EAAE,MAAM,CAAC,YAAY;QACjC,sBAAsB,EAAE,MAAM,CAAC,sBAAsB;QACrD,gBAAgB,EAAE,MAAM,CAAC,gBAAgB;QACzC,WAAW,EAAE,MAAM,CAAC,WAAW;QAC/B,iBAAiB,EAAE,MAAM,CAAC,iBAAiB;KAC5C,CAAC,CAAC;AACL,CAAC,CAAC;AAEF;;;;;GAKG;AACH,MAAM,UAAU,eAAe,CAAC,IAAqB,EAAE,SAAoB;IACzE,OAAO,uBAAuB,CAAC,IAAI,EAAE,iBAAiB,CAAC,IAAI,CAAC,EAAE,SAAS,CAAC,CAAC;AAC3E,CAAC;AAED,iFAAiF;AACjF,MAAM,UAAU,uBAAuB,CACrC,IAAqB,EACrB,QAA6B,EAC7B,SAAoB;IAEpB,MAAM,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAAC;IACjC,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;IACnE,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;QAC3B,QAAQ,EAAE,QAAQ,CAAC,QAAQ;QAC3B,YAAY,EAAE,IAAI,CAAC,eAAe;QAClC,eAAe,EAAE,QAAQ,CAAC,cAAc;QACxC,gBAAgB,EAAE,QAAQ,CAAC,UAAU;QACrC,MAAM;QACN,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;KACnD,CAAC,CAAC;IACH,IAAI,MAAM,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;QAC/B,IAAI,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;YAChD,MAAM,IAAI,KAAK,CAAC,wDAAwD,CAAC,CAAC;QAC5E,CAAC;QACD,cAAc,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACtC,OAAO,MAAM,CAAC,MAAM,CAAC;YACnB,GAAG,MAAM;YACT,IAAI,EAAE,WAAoB;YAC1B,MAAM,EAAE,MAAM,CAAC,MAAM;SACtB,CAAC,CAAC;IACL,CAAC;IAED,IAAI,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;QAChD,cAAc,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACtC,IAAI,MAAM,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;YAChC,IAAI,MAAM,CAAC,cAAc,KAAK,IAAI,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,EAAE,CAAC;gBAChF,MAAM,IAAI,KAAK,CAAC,mDAAmD,CAAC,CAAC;YACvE,CAAC;YACD,OAAO,MAAM,CAAC,MAAM,CAAC;gBACnB,GAAG,MAAM;gBACT,IAAI,EAAE,WAAoB;gBAC1B,cAAc,EAAE,MAAM,CAAC,cAAc,CAAC,WAAW,EAAE;aACpD,CAAC,CAAC;QACL,CAAC;QACD,OAAO,MAAM,CAAC,MAAM,CAAC;YACnB,GAAG,MAAM;YACT,IAAI,EAAE,WAAoB;YAC1B,cAAc,EAAE,iBAAiB,CAAC,MAAM,CAAC;SAC1C,CAAC,CAAC;IACL,CAAC;IAED,QAAQ,MAAM,CAAC,IAAI,EAAE,CAAC;QACpB,KAAK,WAAW;YACd,OAAO,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAoB,EAAE,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACvF,KAAK,aAAa;YAChB,OAAO,UAAU,CAAC,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAsB,EAAE,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAC3F,KAAK,MAAM;YACT,OAAO,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAoB,EAAE,QAAQ,CAAC,MAAM,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;QAClG,KAAK,UAAU;YACb,OAAO,cAAc,CAAC,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,MAA0B,EAAE,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACnG,KAAK,WAAW,CAAC;QACjB,KAAK,QAAQ,CAAC;QACd,KAAK,WAAW;YACd,MAAM,IAAI,KAAK,CAAC,GAAG,MAAM,CAAC,IAAI,oCAAoC,CAAC,CAAC;IACxE,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"plans.js","sourceRoot":"","sources":["../../src/apply/plans.ts"],"names":[],"mappings":"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"}
@@ -1,16 +1,24 @@
1
1
  /**
2
- * Detect's exact output to Record.
2
+ * The exact change proposal Record accepts, from either of its two authors.
3
3
  *
4
- * A proposal is not yet a durable mutation: Record assigns one mutation id,
5
- * appends it atomically, and then Send publishes that same row. Detect owns the
6
- * complete result and replay instruction so no later rail has to rediscover
7
- * filesystem truth.
4
+ * Detect authors one for files from settled filesystem truth. A product
5
+ * authors one for a construct from its own deliberate act. Both carry the
6
+ * complete result and the exact replay instruction so no later rail has to
7
+ * rediscover truth. A proposal is not yet a durable mutation: Record assigns
8
+ * one mutation id, appends it atomically, and then Send publishes that row.
8
9
  */
9
10
  import { type CloudEntityRecord } from '../entities/cloud.js';
11
+ import { type ConstructType } from '../entities/types.js';
10
12
  import { type ContentManifest } from '../contracts/content.js';
11
13
  import { type TransferArtifact } from '../transfer/artifacts.js';
12
- export declare const DETECTED_CHANGE_CONTRACT = "amalgm.detected-change-proposal@2";
13
- export type ChangeFacet = 'create' | 'rename' | 'move' | 'retype' | 'content' | 'mode' | 'trash' | 'restore';
14
+ export declare const DETECTED_CHANGE_CONTRACT = "amalgm.detected-change-proposal@3";
15
+ /** The predecessor contract, still accepted on read. It carries no `origin`
16
+ * because it predates constructs: every @2 change is a detected file change.
17
+ * Runtimes already in the field write @2 until they take the next release,
18
+ * so an authority that refuses it cannot accept their records at all. */
19
+ export declare const DETECTED_CHANGE_CONTRACT_V2 = "amalgm.detected-change-proposal@2";
20
+ export type ChangeOrigin = 'detected' | 'intentional';
21
+ export type ChangeFacet = 'create' | 'rename' | 'move' | 'retype' | 'content' | 'mode' | 'trash' | 'restore' | 'delete';
14
22
  export interface StructureReplay {
15
23
  readonly kind: 'structure';
16
24
  }
@@ -47,12 +55,19 @@ export interface RepositoryReplay {
47
55
  readonly parentTransportVersion: string | null;
48
56
  readonly transportVersion: string;
49
57
  }
50
- export type ReplayInstruction = StructureReplay | TextReplay | BinaryReplay | LinkReplay | RepositoryReplay;
58
+ /** A construct payload replays exactly like a binary file: one manifest. */
59
+ export interface ConstructReplay {
60
+ readonly kind: ConstructType;
61
+ readonly resultPayloadVersion: string;
62
+ readonly manifest: ContentManifest;
63
+ }
64
+ export type ReplayInstruction = StructureReplay | TextReplay | BinaryReplay | LinkReplay | RepositoryReplay | ConstructReplay;
51
65
  export interface DetectedChangeProposal {
52
66
  readonly contract: typeof DETECTED_CHANGE_CONTRACT;
67
+ readonly origin: ChangeOrigin;
53
68
  /** The permanent UUID whose ordered rail carries this proposal. */
54
69
  readonly entityId: string;
55
- /** Exact logical state Detect read. Lineage only; never an acceptance gate. */
70
+ /** Exact logical state the author read. Lineage only; never an acceptance gate. */
56
71
  readonly basedOnState: string | null;
57
72
  /** Complete exact result, not a partial update. */
58
73
  readonly result: CloudEntityRecord;
@@ -68,11 +83,23 @@ export interface DetectedChangeInput {
68
83
  /** Required when Detection is explicitly authorized to propose lifecycle. */
69
84
  readonly lifecycleAuthorization?: 'trash' | 'restore';
70
85
  }
86
+ /** A product's deliberate act on a construct: the complete result it now
87
+ * holds, and the replay for its payload when that payload changed. */
88
+ export interface IntentionalChangeInput {
89
+ readonly base: CloudEntityRecord | null;
90
+ readonly result: CloudEntityRecord;
91
+ readonly replay: ReplayInstruction;
92
+ }
71
93
  /**
72
- * Build one immutable proposal, or null when settled truth has the same logical
73
- * version. A repository transport-only change is still meaningful because its
74
- * worktree identity map is part of exact reproduction even when Card and
75
- * Checkpoint IDs did not move.
94
+ * Detect's proposal for physical ground, or null when settled truth has the
95
+ * same logical version. Detect never proposes permanent deletion and never
96
+ * sees a construct: constructs bypass Watch and Detect by law.
76
97
  */
77
98
  export declare function detectedChangeProposal(input: DetectedChangeInput): DetectedChangeProposal | null;
99
+ /**
100
+ * A product's proposal for a construct it changed on purpose. Create,
101
+ * content, rename, trash, restore, and delete are all deliberate acts here,
102
+ * so none needs a separate authorization. Returns null when nothing moved.
103
+ */
104
+ export declare function intentionalChangeProposal(input: IntentionalChangeInput): DetectedChangeProposal | null;
78
105
  //# sourceMappingURL=record-proposal.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"record-proposal.d.ts","sourceRoot":"","sources":["../../src/detection/record-proposal.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"record-proposal.d.ts","sourceRoot":"","sources":["../../src/detection/record-proposal.ts"],"names":[],"mappings":"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"}
@@ -1,16 +1,22 @@
1
1
  /**
2
- * Detect's exact output to Record.
2
+ * The exact change proposal Record accepts, from either of its two authors.
3
3
  *
4
- * A proposal is not yet a durable mutation: Record assigns one mutation id,
5
- * appends it atomically, and then Send publishes that same row. Detect owns the
6
- * complete result and replay instruction so no later rail has to rediscover
7
- * filesystem truth.
4
+ * Detect authors one for files from settled filesystem truth. A product
5
+ * authors one for a construct from its own deliberate act. Both carry the
6
+ * complete result and the exact replay instruction so no later rail has to
7
+ * rediscover truth. A proposal is not yet a durable mutation: Record assigns
8
+ * one mutation id, appends it atomically, and then Send publishes that row.
8
9
  */
9
10
  import { assertRecord, } from '../entities/cloud.js';
10
- import { DERIVED_PAYLOAD } from '../entities/types.js';
11
+ import { CONSTRUCT_TYPES, DERIVED_PAYLOAD } from '../entities/types.js';
11
12
  import { checkContentManifest } from '../contracts/content.js';
12
- import { artifactForRecord } from '../transfer/artifacts.js';
13
- export const DETECTED_CHANGE_CONTRACT = 'amalgm.detected-change-proposal@2';
13
+ import { artifactForRecord, artifactKindForType } from '../transfer/artifacts.js';
14
+ export const DETECTED_CHANGE_CONTRACT = 'amalgm.detected-change-proposal@3';
15
+ /** The predecessor contract, still accepted on read. It carries no `origin`
16
+ * because it predates constructs: every @2 change is a detected file change.
17
+ * Runtimes already in the field write @2 until they take the next release,
18
+ * so an authority that refuses it cannot accept their records at all. */
19
+ export const DETECTED_CHANGE_CONTRACT_V2 = 'amalgm.detected-change-proposal@2';
14
20
  const HASH = /^[0-9a-f]{64}$/;
15
21
  const facetsOf = (base, result) => {
16
22
  if (base === null)
@@ -30,7 +36,9 @@ const facetsOf = (base, result) => {
30
36
  if (base.type === result.type && base.fileMode !== result.fileMode)
31
37
  facets.push('mode');
32
38
  if (base.status !== result.status) {
33
- if (result.status === 'trashed')
39
+ if (result.status === 'deleted')
40
+ facets.push('delete');
41
+ else if (result.status === 'trashed')
34
42
  facets.push('trash');
35
43
  else if (base.status === 'trashed' && result.status === 'active')
36
44
  facets.push('restore');
@@ -39,20 +47,26 @@ const facetsOf = (base, result) => {
39
47
  };
40
48
  const contentRequired = (base, result, facets) => result.status === 'active'
41
49
  && (base === null || facets.includes('content') || facets.includes('retype'))
42
- && ['file.text', 'file.binary', 'link', 'repo.git'].includes(result.type);
50
+ && artifactKindForType(result.type) !== null;
51
+ const validateManifestReplay = (replay, result) => {
52
+ const manifest = checkContentManifest(replay.manifest, result.payloadVersion);
53
+ if (!manifest.ok || replay.resultPayloadVersion !== result.payloadVersion) {
54
+ throw new Error(`${replay.kind} replay does not name its complete result manifest`);
55
+ }
56
+ };
43
57
  const validateReplay = (base, result, facets, replay) => {
44
58
  const needsContent = contentRequired(base, result, facets);
45
59
  if (!needsContent) {
46
60
  if (replay.kind !== 'structure') {
47
- throw new Error('a structural-only detected change must use structure replay');
61
+ throw new Error('a structural-only change must use structure replay');
48
62
  }
49
63
  return;
50
64
  }
51
65
  if (replay.kind !== result.type) {
52
- throw new Error(`detected ${result.type} content cannot use ${replay.kind} replay`);
66
+ throw new Error(`${result.type} content cannot use ${replay.kind} replay`);
53
67
  }
54
68
  if (result.payloadVersion === null) {
55
- throw new Error(`detected ${result.type} content has no result payload version`);
69
+ throw new Error(`${result.type} content has no result payload version`);
56
70
  }
57
71
  switch (replay.kind) {
58
72
  case 'file.text':
@@ -75,13 +89,13 @@ const validateReplay = (base, result, facets, replay) => {
75
89
  throw new Error('text replay has an invalid byte splice');
76
90
  }
77
91
  break;
78
- case 'file.binary': {
79
- const manifest = checkContentManifest(replay.manifest, result.payloadVersion);
80
- if (!manifest.ok || replay.resultPayloadVersion !== result.payloadVersion) {
81
- throw new Error('binary replay does not name the detected result');
82
- }
92
+ case 'file.binary':
93
+ case 'agent':
94
+ case 'automation':
95
+ case 'app':
96
+ case 'tool':
97
+ validateManifestReplay(replay, result);
83
98
  break;
84
- }
85
99
  case 'link':
86
100
  if (typeof replay.target !== 'string'
87
101
  || replay.resultPayloadVersion !== result.payloadVersion
@@ -104,25 +118,20 @@ const validateReplay = (base, result, facets, replay) => {
104
118
  }
105
119
  };
106
120
  /**
107
- * Build one immutable proposal, or null when settled truth has the same logical
108
- * version. A repository transport-only change is still meaningful because its
109
- * worktree identity map is part of exact reproduction even when Card and
110
- * Checkpoint IDs did not move.
121
+ * The one validator behind both builders. Returns null when base and result
122
+ * name the same logical version, so an unchanged construct or file produces
123
+ * no record. Facet derivation, replay validation, and cargo selection are
124
+ * identical whichever author brought the transition.
111
125
  */
112
- export function detectedChangeProposal(input) {
113
- const result = assertRecord(input.result);
114
- const base = input.base === null ? null : assertRecord(input.base);
126
+ const changeProposal = (origin, base, result, replay, authorizeLifecycle) => {
115
127
  if (base !== null && base.uuid !== result.uuid) {
116
- throw new Error('a detected transition cannot change entity UUID');
128
+ throw new Error('a transition cannot change entity UUID');
117
129
  }
118
130
  if (base === null && result.status !== 'active') {
119
- throw new Error('newly detected ground must begin active');
131
+ throw new Error('a new entity must begin active');
120
132
  }
121
133
  if (base?.status === 'deleted') {
122
- throw new Error('Detection cannot resurrect a deleted tombstone');
123
- }
124
- if (result.status === 'deleted') {
125
- throw new Error('Detection cannot propose permanent deletion; deletion is an explicit lifecycle operation');
134
+ throw new Error('a change cannot resurrect a deleted tombstone');
126
135
  }
127
136
  if (base?.version === result.version && base.transportVersion === result.transportVersion) {
128
137
  const sameState = base.type === result.type
@@ -143,27 +152,59 @@ export function detectedChangeProposal(input) {
143
152
  // that could erase a sibling created by another machine.
144
153
  return null;
145
154
  }
146
- throw new Error('detected records disagree without a named logical facet');
147
- }
148
- if (facets.includes('trash') && input.lifecycleAuthorization !== 'trash') {
149
- throw new Error('filesystem absence is not authority to Trash an entity');
150
- }
151
- if (facets.includes('restore') && input.lifecycleAuthorization !== 'restore') {
152
- throw new Error('restoring an entity requires explicit lifecycle authority');
155
+ throw new Error('records disagree without a named logical facet');
153
156
  }
154
- validateReplay(base, result, facets, input.replay);
155
- const artifact = input.replay.kind === 'structure' ? null : artifactForRecord(result);
156
- if (input.replay.kind !== 'structure' && artifact === null) {
157
- throw new Error(`detected ${result.type} replay has no transferable artifact`);
157
+ authorizeLifecycle(facets);
158
+ validateReplay(base, result, facets, replay);
159
+ const artifact = replay.kind === 'structure' ? null : artifactForRecord(result);
160
+ if (replay.kind !== 'structure' && artifact === null) {
161
+ throw new Error(`${result.type} replay has no transferable artifact`);
158
162
  }
159
163
  return Object.freeze({
160
164
  contract: DETECTED_CHANGE_CONTRACT,
165
+ origin,
161
166
  entityId: result.uuid,
162
167
  basedOnState: base?.version ?? null,
163
168
  result,
164
169
  facets: Object.freeze(facets),
165
- replay: input.replay,
170
+ replay,
166
171
  cargo: Object.freeze(artifact === null ? [] : [artifact]),
167
172
  });
173
+ };
174
+ /**
175
+ * Detect's proposal for physical ground, or null when settled truth has the
176
+ * same logical version. Detect never proposes permanent deletion and never
177
+ * sees a construct: constructs bypass Watch and Detect by law.
178
+ */
179
+ export function detectedChangeProposal(input) {
180
+ const result = assertRecord(input.result);
181
+ const base = input.base === null ? null : assertRecord(input.base);
182
+ if (CONSTRUCT_TYPES.has(result.type) || (base !== null && CONSTRUCT_TYPES.has(base.type))) {
183
+ throw new Error(`Detection cannot propose a ${result.type}; constructs bypass Detect`);
184
+ }
185
+ if (result.status === 'deleted') {
186
+ throw new Error('Detection cannot propose permanent deletion; deletion is an explicit lifecycle operation');
187
+ }
188
+ return changeProposal('detected', base, result, input.replay, (facets) => {
189
+ if (facets.includes('trash') && input.lifecycleAuthorization !== 'trash') {
190
+ throw new Error('filesystem absence is not authority to Trash an entity');
191
+ }
192
+ if (facets.includes('restore') && input.lifecycleAuthorization !== 'restore') {
193
+ throw new Error('restoring an entity requires explicit lifecycle authority');
194
+ }
195
+ });
196
+ }
197
+ /**
198
+ * A product's proposal for a construct it changed on purpose. Create,
199
+ * content, rename, trash, restore, and delete are all deliberate acts here,
200
+ * so none needs a separate authorization. Returns null when nothing moved.
201
+ */
202
+ export function intentionalChangeProposal(input) {
203
+ const result = assertRecord(input.result);
204
+ const base = input.base === null ? null : assertRecord(input.base);
205
+ if (!CONSTRUCT_TYPES.has(result.type)) {
206
+ throw new Error(`an intentional change cannot propose a ${result.type}; files travel through Detect`);
207
+ }
208
+ return changeProposal('intentional', base, result, input.replay, () => undefined);
168
209
  }
169
210
  //# sourceMappingURL=record-proposal.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"record-proposal.js","sourceRoot":"","sources":["../../src/detection/record-proposal.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"record-proposal.js","sourceRoot":"","sources":["../../src/detection/record-proposal.ts"],"names":[],"mappings":"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"}