@dialecte/scl 0.3.9 → 0.3.13

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 (104) hide show
  1. package/dist/{hooks-DO4gUiix.js → hooks-D5DJSztS.js} +1364 -1041
  2. package/dist/v2019C1/extensions/data-model/transaction/import-types.d.ts.map +1 -1
  3. package/dist/v2019C1/extensions/identity/transaction/index.d.ts +1 -0
  4. package/dist/v2019C1/extensions/identity/transaction/index.d.ts.map +1 -1
  5. package/dist/v2019C1/extensions/identity/transaction/restore-cloned-uuids.d.ts +19 -0
  6. package/dist/v2019C1/extensions/identity/transaction/restore-cloned-uuids.d.ts.map +1 -0
  7. package/dist/v2019C1/extensions/index.d.ts +1 -0
  8. package/dist/v2019C1/extensions/index.d.ts.map +1 -1
  9. package/dist/v2019C1/extensions/lifecycle/constraints/classify-attribute.types.d.ts +0 -10
  10. package/dist/v2019C1/extensions/lifecycle/constraints/classify-attribute.types.d.ts.map +1 -1
  11. package/dist/v2019C1/extensions/lifecycle/contract.types.d.ts +18 -6
  12. package/dist/v2019C1/extensions/lifecycle/contract.types.d.ts.map +1 -1
  13. package/dist/v2019C1/extensions/lifecycle/cross-cutting/clone-applied-satellites.d.ts +1 -1
  14. package/dist/v2019C1/extensions/lifecycle/engine/decide.d.ts +8 -1
  15. package/dist/v2019C1/extensions/lifecycle/engine/decide.d.ts.map +1 -1
  16. package/dist/v2019C1/extensions/lifecycle/engine/diff.d.ts +43 -8
  17. package/dist/v2019C1/extensions/lifecycle/engine/diff.d.ts.map +1 -1
  18. package/dist/v2019C1/extensions/lifecycle/engine/diff.types.d.ts +35 -26
  19. package/dist/v2019C1/extensions/lifecycle/engine/diff.types.d.ts.map +1 -1
  20. package/dist/v2019C1/extensions/lifecycle/engine/group.d.ts +1 -1
  21. package/dist/v2019C1/extensions/lifecycle/engine/group.d.ts.map +1 -1
  22. package/dist/v2019C1/extensions/lifecycle/engine/index.d.ts +1 -1
  23. package/dist/v2019C1/extensions/lifecycle/engine/index.d.ts.map +1 -1
  24. package/dist/v2019C1/extensions/lifecycle/engine/reconcile.d.ts +6 -0
  25. package/dist/v2019C1/extensions/lifecycle/engine/reconcile.d.ts.map +1 -1
  26. package/dist/v2019C1/extensions/lifecycle/extract/transaction/asd.d.ts.map +1 -1
  27. package/dist/v2019C1/extensions/lifecycle/extract/transaction/fsd.d.ts.map +1 -1
  28. package/dist/v2019C1/extensions/lifecycle/index.d.ts +2 -0
  29. package/dist/v2019C1/extensions/lifecycle/index.d.ts.map +1 -1
  30. package/dist/v2019C1/extensions/lifecycle/instance/find-instance.d.ts +15 -0
  31. package/dist/v2019C1/extensions/lifecycle/instance/find-instance.d.ts.map +1 -1
  32. package/dist/v2019C1/extensions/lifecycle/instantiate/transaction/asd.d.ts +2 -2
  33. package/dist/v2019C1/extensions/lifecycle/instantiate/transaction/asd.d.ts.map +1 -1
  34. package/dist/v2019C1/extensions/lifecycle/instantiate/transaction/fsd.d.ts +2 -2
  35. package/dist/v2019C1/extensions/lifecycle/instantiate/transaction/fsd.d.ts.map +1 -1
  36. package/dist/v2019C1/extensions/lifecycle/layers/application/clone-application.d.ts +2 -1
  37. package/dist/v2019C1/extensions/lifecycle/layers/application/clone-application.d.ts.map +1 -1
  38. package/dist/v2019C1/extensions/lifecycle/layers/function/clone-function.d.ts +4 -2
  39. package/dist/v2019C1/extensions/lifecycle/layers/function/clone-function.d.ts.map +1 -1
  40. package/dist/v2019C1/extensions/lifecycle/public.d.ts +2 -0
  41. package/dist/v2019C1/extensions/lifecycle/public.d.ts.map +1 -1
  42. package/dist/v2019C1/extensions/lifecycle/report/mark-placement-conflicts.d.ts.map +1 -1
  43. package/dist/v2019C1/extensions/lifecycle/report/query/cross-cutting-satellites.d.ts +7 -5
  44. package/dist/v2019C1/extensions/lifecycle/report/query/cross-cutting-satellites.d.ts.map +1 -1
  45. package/dist/v2019C1/extensions/lifecycle/report/query/report-asd.d.ts.map +1 -1
  46. package/dist/v2019C1/extensions/lifecycle/report/query/report-fsd.d.ts +3 -3
  47. package/dist/v2019C1/extensions/lifecycle/report/query/report-fsd.d.ts.map +1 -1
  48. package/dist/v2019C1/extensions/lifecycle/report/query/report-function-satellites.d.ts +5 -3
  49. package/dist/v2019C1/extensions/lifecycle/report/query/report-function-satellites.d.ts.map +1 -1
  50. package/dist/v2019C1/extensions/lifecycle/report/query/report-function.d.ts +7 -2
  51. package/dist/v2019C1/extensions/lifecycle/report/query/report-function.d.ts.map +1 -1
  52. package/dist/v2019C1/extensions/lifecycle/report/query/report-instance.d.ts +20 -0
  53. package/dist/v2019C1/extensions/lifecycle/report/query/report-instance.d.ts.map +1 -0
  54. package/dist/v2019C1/extensions/lifecycle/report/query/satellite-companions.d.ts +5 -3
  55. package/dist/v2019C1/extensions/lifecycle/report/query/satellite-companions.d.ts.map +1 -1
  56. package/dist/v2019C1/extensions/lifecycle/report/report.d.ts +4 -4
  57. package/dist/v2019C1/extensions/lifecycle/report/report.d.ts.map +1 -1
  58. package/dist/v2019C1/extensions/lifecycle/scenario.d.ts +21 -0
  59. package/dist/v2019C1/extensions/lifecycle/scenario.d.ts.map +1 -0
  60. package/dist/v2019C1/extensions/lifecycle/transplant/transaction/deep.d.ts +2 -1
  61. package/dist/v2019C1/extensions/lifecycle/transplant/transaction/deep.d.ts.map +1 -1
  62. package/dist/v2019C1/extensions/lifecycle/transplant/transaction/index.d.ts +1 -0
  63. package/dist/v2019C1/extensions/lifecycle/transplant/transaction/index.d.ts.map +1 -1
  64. package/dist/v2019C1/extensions/lifecycle/transplant/transaction/primitives/clone-referenced.d.ts +2 -2
  65. package/dist/v2019C1/extensions/lifecycle/transplant/transaction/primitives/clone-tree.d.ts +1 -1
  66. package/dist/v2019C1/extensions/lifecycle/transplant/transaction/primitives/merge-children-into.d.ts +22 -0
  67. package/dist/v2019C1/extensions/lifecycle/transplant/transaction/primitives/merge-children-into.d.ts.map +1 -0
  68. package/dist/v2019C1/extensions/lifecycle/update/transaction/asd.d.ts +3 -3
  69. package/dist/v2019C1/extensions/lifecycle/update/transaction/asd.d.ts.map +1 -1
  70. package/dist/v2019C1/extensions/lifecycle/update/transaction/fsd.d.ts +1 -1
  71. package/dist/v2019C1/extensions/lifecycle/update/transaction/fsd.d.ts.map +1 -1
  72. package/dist/v2019C1/extensions/lifecycle/update/transaction/function-satellites.d.ts.map +1 -1
  73. package/dist/v2019C1/extensions/lifecycle/update/transaction/satellite-reconcile.d.ts.map +1 -1
  74. package/dist/v2019C1/extensions/lifecycle/validate/index.d.ts +4 -0
  75. package/dist/v2019C1/extensions/lifecycle/validate/index.d.ts.map +1 -0
  76. package/dist/v2019C1/extensions/lifecycle/validate/template-uuid-check.d.ts +15 -0
  77. package/dist/v2019C1/extensions/lifecycle/validate/template-uuid-check.d.ts.map +1 -0
  78. package/dist/v2019C1/extensions/lifecycle/validate/template-uuid-check.info.d.ts +10 -0
  79. package/dist/v2019C1/extensions/lifecycle/validate/template-uuid-check.info.d.ts.map +1 -0
  80. package/dist/v2019C1/extensions/lifecycle/validate/template-uuid-check.types.d.ts +41 -0
  81. package/dist/v2019C1/extensions/lifecycle/validate/template-uuid-check.types.d.ts.map +1 -0
  82. package/dist/v2019C1/extensions/reference/transaction/apply-type-id-remap.d.ts +1 -1
  83. package/dist/v2019C1/extensions/reference/transaction/apply-uuid-remap.d.ts +21 -0
  84. package/dist/v2019C1/extensions/reference/transaction/apply-uuid-remap.d.ts.map +1 -0
  85. package/dist/v2019C1/extensions/reference/transaction/index.d.ts +1 -0
  86. package/dist/v2019C1/extensions/reference/transaction/index.d.ts.map +1 -1
  87. package/dist/v2019C1/extensions/signature/public.d.ts +1 -1
  88. package/dist/v2019C1/extensions/signature/public.d.ts.map +1 -1
  89. package/dist/v2019C1/extensions/signature/query/element-signature.types.d.ts +15 -1
  90. package/dist/v2019C1/extensions/signature/query/element-signature.types.d.ts.map +1 -1
  91. package/dist/v2019C1/extensions/signature/query/index.d.ts +1 -1
  92. package/dist/v2019C1/extensions/signature/query/index.d.ts.map +1 -1
  93. package/dist/v2019C1/hooks/index.d.ts.map +1 -1
  94. package/dist/v2019C1/index.js +22 -3
  95. package/dist/v2019C1/test/hydrated-test.d.ts +2 -0
  96. package/dist/v2019C1/test/hydrated-test.d.ts.map +1 -1
  97. package/dist/v2019C1/test.js +1 -1
  98. package/package.json +5 -5
  99. package/dist/v2019C1/hooks/after-deep-clone/after-deep-clone.d.ts +0 -15
  100. package/dist/v2019C1/hooks/after-deep-clone/after-deep-clone.d.ts.map +0 -1
  101. package/dist/v2019C1/hooks/after-deep-clone/index.d.ts +0 -2
  102. package/dist/v2019C1/hooks/after-deep-clone/index.d.ts.map +0 -1
  103. package/dist/v2019C1/hooks/after-deep-clone/ref-paths.d.ts +0 -12
  104. package/dist/v2019C1/hooks/after-deep-clone/ref-paths.d.ts.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"import-types.d.ts","sourceRoot":"","sources":["../../../../../src/v2019C1/extensions/data-model/transaction/import-types.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EACX,iBAAiB,EACjB,iBAAiB,EAGjB,MAAM,sBAAsB,CAAA;AAC7B,OAAO,KAAK,EAAO,MAAM,EAAE,MAAM,kBAAkB,CAAA;AAEnD,OAAO,KAAK,KAAK,IAAI,MAAM,gBAAgB,CAAA;AAc3C,YAAY,EACX,iBAAiB,EACjB,iBAAiB,EACjB,gBAAgB,EAChB,iBAAiB,GACjB,MAAM,sBAAsB,CAAA;AAE7B;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAsB,WAAW,CAChC,EAAE,EAAE,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,EAC5B,MAAM,EAAE,iBAAiB,GACvB,OAAO,CAAC,iBAAiB,CAAC,CAqH5B"}
1
+ {"version":3,"file":"import-types.d.ts","sourceRoot":"","sources":["../../../../../src/v2019C1/extensions/data-model/transaction/import-types.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EACX,iBAAiB,EACjB,iBAAiB,EAGjB,MAAM,sBAAsB,CAAA;AAC7B,OAAO,KAAK,EAAO,MAAM,EAAE,MAAM,kBAAkB,CAAA;AAEnD,OAAO,KAAK,KAAK,IAAI,MAAM,gBAAgB,CAAA;AAc3C,YAAY,EACX,iBAAiB,EACjB,iBAAiB,EACjB,gBAAgB,EAChB,iBAAiB,GACjB,MAAM,sBAAsB,CAAA;AAE7B;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAsB,WAAW,CAChC,EAAE,EAAE,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,EAC5B,MAAM,EAAE,iBAAiB,GACvB,OAAO,CAAC,iBAAiB,CAAC,CA0H5B"}
@@ -1,3 +1,4 @@
1
1
  export { writeIdentity } from './write-identity';
2
+ export { restoreClonedUuids } from './restore-cloned-uuids';
2
3
  export type { IdentityMode } from './write-identity.types';
3
4
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/v2019C1/extensions/identity/transaction/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAA;AAChD,YAAY,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/v2019C1/extensions/identity/transaction/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAA;AAChD,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAA;AAC3D,YAAY,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAA"}
@@ -0,0 +1,19 @@
1
+ import { Config, Scl } from '../../../config';
2
+ import type * as Core from '@dialecte/core';
3
+ /**
4
+ * Fork identity restore (the operation-owned counterpart to the context-free clone
5
+ * hooks). A clone always mints FRESH uuids (`beforeClone` strips them, the standardize
6
+ * hook fills new ones, `reference.applyUuidRemap` repoints refs onto them). For a **fork** that
7
+ * is wrong: a fork converges the target to the SAME identity as the source
8
+ * revision, so a newly added element must keep its SOURCE uuid.
9
+ *
10
+ * Adding an element during a fork is the only place that knows this intent, so it fixes it here rather
11
+ * than leaking intent into a global hook: using the clone `mappings` (source carries the
12
+ * original uuid), restore each cloned element's uuid to its source uuid, then repoint any
13
+ * INTRA-clone uuid reference from the fresh clone uuid back to the source uuid — all in
14
+ * the same transaction (dependent path attrs are rebuilt by the `afterUpdated` hook).
15
+ */
16
+ export declare function restoreClonedUuids(tx: Core.Transaction<Config>, params: {
17
+ mappings: readonly Scl.CloneMapping[];
18
+ }): Promise<void>;
19
+ //# sourceMappingURL=restore-cloned-uuids.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"restore-cloned-uuids.d.ts","sourceRoot":"","sources":["../../../../../src/v2019C1/extensions/identity/transaction/restore-cloned-uuids.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,kBAAkB,CAAA;AACnD,OAAO,KAAK,KAAK,IAAI,MAAM,gBAAgB,CAAA;AAE3C;;;;;;;;;;;;GAYG;AACH,wBAAsB,kBAAkB,CACvC,EAAE,EAAE,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,EAC5B,MAAM,EAAE;IAAE,QAAQ,EAAE,SAAS,GAAG,CAAC,YAAY,EAAE,CAAA;CAAE,GAC/C,OAAO,CAAC,IAAI,CAAC,CA2Cf"}
@@ -16,6 +16,7 @@ export declare const SCL_EXTENSION_MODULES: {
16
16
  lifecycle: {
17
17
  query: {
18
18
  report: typeof import('./lifecycle/report').report;
19
+ checkTemplateUuids: typeof import('./lifecycle/validate').checkTemplateUuids;
19
20
  };
20
21
  transaction: {
21
22
  extract: typeof import("./lifecycle/extract");
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/v2019C1/extensions/index.ts"],"names":[],"mappings":"AASA,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CASjC,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/v2019C1/extensions/index.ts"],"names":[],"mappings":"AASA,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CASjC,CAAA"}
@@ -19,15 +19,5 @@ export type EditableAttribute = {
19
19
  */
20
20
  conflict?: boolean;
21
21
  suggestedValue?: string;
22
- /**
23
- * Modification delta for a `modified` group, present only when this editable attribute
24
- * actually changed on update. `before` = the instance's current value, `after` = the
25
- * template's incoming value (`undefined` on either side = the attribute is absent /
26
- * being cleared). `changed` marks it so the UI can surface changed fields first and
27
- * default the input to `after` with a "keep current" (`before`) affordance.
28
- */
29
- before?: string;
30
- after?: string;
31
- changed?: boolean;
32
22
  };
33
23
  //# sourceMappingURL=classify-attribute.types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"classify-attribute.types.d.ts","sourceRoot":"","sources":["../../../../../src/v2019C1/extensions/lifecycle/constraints/classify-attribute.types.ts"],"names":[],"mappings":"AAAA,sFAAsF;AACtF,MAAM,MAAM,oBAAoB;AAC/B,2FAA2F;AACzF,UAAU;AACZ,2EAA2E;GACzE,WAAW;AACb,8FAA8F;GAC5F,QAAQ;AACV,4EAA4E;GAC1E,MAAM,CAAA;AAET,4FAA4F;AAC5F,MAAM,MAAM,iBAAiB,GAAG;IAC/B,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,QAAQ,GAAG,MAAM,CAAA;IACvB;;;;OAIG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB;;;;;;OAMG;IACH,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,OAAO,CAAC,EAAE,OAAO,CAAA;CACjB,CAAA"}
1
+ {"version":3,"file":"classify-attribute.types.d.ts","sourceRoot":"","sources":["../../../../../src/v2019C1/extensions/lifecycle/constraints/classify-attribute.types.ts"],"names":[],"mappings":"AAAA,sFAAsF;AACtF,MAAM,MAAM,oBAAoB;AAC/B,2FAA2F;AACzF,UAAU;AACZ,2EAA2E;GACzE,WAAW;AACb,8FAA8F;GAC5F,QAAQ;AACV,4EAA4E;GAC1E,MAAM,CAAA;AAET,4FAA4F;AAC5F,MAAM,MAAM,iBAAiB,GAAG;IAC/B,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,QAAQ,GAAG,MAAM,CAAA;IACvB;;;;OAIG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,cAAc,CAAC,EAAE,MAAM,CAAA;CACvB,CAAA"}
@@ -4,17 +4,29 @@ import { DecisionMap, DiffReport } from './engine/diff.types';
4
4
  import type * as Core from '@dialecte/core';
5
5
  /** Which template layer the lifecycle surface operates on. */
6
6
  export type LifecycleVerb = 'fsd' | 'asd';
7
+ /**
8
+ * The two reconcile modes of the `Update` operation, distinguished by how the
9
+ * SOURCE relates to the TARGET:
10
+ * - `template` — source is a TEMPLATE; reconcile it onto its EXISTING
11
+ * instance(s). Match by `templateUuid` (= source `uuid`), stamp lineage on
12
+ * added elements, rotate provenance. Was `update`.
13
+ * - `fork` — source is a newer REVISION of the SAME file; reconcile it onto the
14
+ * prior revision, KEEPING identity. Match by `uuid` (source and target share
15
+ * it), no re-stamp, no provenance. The single-layer form of an SCD fork.
16
+ */
17
+ export type UpdateMode = 'template' | 'fork';
7
18
  /**
8
19
  * Which lifecycle operation the user chose:
9
20
  * - `instantiate` — place a NEW instance of the template (duplicates allowed;
10
21
  * a sibling name collision is resolved). Re-applying the same template yields
11
22
  * another instance, never a silent no-op.
12
- * - `update` — reconcile the template onto its EXISTING instance(s).
23
+ * - `template` / `fork` — the two {@link UpdateMode} reconcile modes.
13
24
  *
14
- * Picked explicitly by the consumer — it cannot be inferred reliably (a same-
15
- * version re-upload is a valid duplicate). Defaults to `update` for back-compat.
25
+ * Picked explicitly by the consumer (or auto-detected from the source↔target
26
+ * relationship) — it cannot be inferred reliably (a same-version re-upload is a
27
+ * valid duplicate). Defaults to `template` for back-compat.
16
28
  */
17
- export type LifecycleScenario = 'instantiate' | 'update';
29
+ export type LifecycleScenario = 'instantiate' | UpdateMode;
18
30
  /**
19
31
  * What to reconcile and where — the uniform `{ verb, sourceQuery, ref, anchor }`
20
32
  * descriptor shared by `report` (read-only classify) and `apply` (write).
@@ -27,7 +39,7 @@ export type LifecycleTarget = {
27
39
  ref: Scl.Ref<'Function'>;
28
40
  /** Target parent the instance lives under / is placed into. */
29
41
  anchor: Scl.Ref<Scl.ElementsOf>;
30
- /** Operation to perform. Defaults to `update`. */
42
+ /** Operation to perform. Defaults to `template`. */
31
43
  scenario?: LifecycleScenario;
32
44
  } | {
33
45
  verb: 'asd';
@@ -36,7 +48,7 @@ export type LifecycleTarget = {
36
48
  ref: Scl.Ref<'Application'>;
37
49
  /** Target parent the composed functions are placed into. */
38
50
  anchor: Scl.Ref<Scl.ElementsOf>;
39
- /** Operation to perform. Defaults to `update`. */
51
+ /** Operation to perform. Defaults to `template`. */
40
52
  scenario?: LifecycleScenario;
41
53
  };
42
54
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"contract.types.d.ts","sourceRoot":"","sources":["../../../../src/v2019C1/extensions/lifecycle/contract.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAA;AACnD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,6CAA6C,CAAA;AACpF,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,kDAAkD,CAAA;AAC/F,OAAO,KAAK,KAAK,IAAI,MAAM,gBAAgB,CAAA;AAE3C,8DAA8D;AAC9D,MAAM,MAAM,aAAa,GAAG,KAAK,GAAG,KAAK,CAAA;AAEzC;;;;;;;;;GASG;AACH,MAAM,MAAM,iBAAiB,GAAG,aAAa,GAAG,QAAQ,CAAA;AAExD;;;;GAIG;AACH,MAAM,MAAM,eAAe,GACxB;IACA,IAAI,EAAE,KAAK,CAAA;IACX,WAAW,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;IAC/B,mDAAmD;IACnD,GAAG,EAAE,GAAG,CAAC,GAAG,CAAC,UAAU,CAAC,CAAA;IACxB,+DAA+D;IAC/D,MAAM,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,UAAU,CAAC,CAAA;IAC/B,kDAAkD;IAClD,QAAQ,CAAC,EAAE,iBAAiB,CAAA;CAC3B,GACD;IACA,IAAI,EAAE,KAAK,CAAA;IACX,WAAW,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;IAC/B,sDAAsD;IACtD,GAAG,EAAE,GAAG,CAAC,GAAG,CAAC,aAAa,CAAC,CAAA;IAC3B,4DAA4D;IAC5D,MAAM,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,UAAU,CAAC,CAAA;IAC/B,kDAAkD;IAClD,QAAQ,CAAC,EAAE,iBAAiB,CAAA;CAC3B,CAAA;AAEJ;;;;;;;GAOG;AACH,MAAM,MAAM,oBAAoB,GAAG,eAAe,GAAG;IACpD,MAAM,EAAE,UAAU,CAAA;IAClB,SAAS,CAAC,EAAE,WAAW,CAAA;IACvB;;;OAGG;IACH,iBAAiB,CAAC,EAAE,iBAAiB,CAAA;CACrC,CAAA"}
1
+ {"version":3,"file":"contract.types.d.ts","sourceRoot":"","sources":["../../../../src/v2019C1/extensions/lifecycle/contract.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAA;AACnD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,6CAA6C,CAAA;AACpF,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,kDAAkD,CAAA;AAC/F,OAAO,KAAK,KAAK,IAAI,MAAM,gBAAgB,CAAA;AAE3C,8DAA8D;AAC9D,MAAM,MAAM,aAAa,GAAG,KAAK,GAAG,KAAK,CAAA;AAEzC;;;;;;;;;GASG;AACH,MAAM,MAAM,UAAU,GAAG,UAAU,GAAG,MAAM,CAAA;AAE5C;;;;;;;;;;GAUG;AACH,MAAM,MAAM,iBAAiB,GAAG,aAAa,GAAG,UAAU,CAAA;AAE1D;;;;GAIG;AACH,MAAM,MAAM,eAAe,GACxB;IACA,IAAI,EAAE,KAAK,CAAA;IACX,WAAW,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;IAC/B,mDAAmD;IACnD,GAAG,EAAE,GAAG,CAAC,GAAG,CAAC,UAAU,CAAC,CAAA;IACxB,+DAA+D;IAC/D,MAAM,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,UAAU,CAAC,CAAA;IAC/B,oDAAoD;IACpD,QAAQ,CAAC,EAAE,iBAAiB,CAAA;CAC3B,GACD;IACA,IAAI,EAAE,KAAK,CAAA;IACX,WAAW,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;IAC/B,sDAAsD;IACtD,GAAG,EAAE,GAAG,CAAC,GAAG,CAAC,aAAa,CAAC,CAAA;IAC3B,4DAA4D;IAC5D,MAAM,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,UAAU,CAAC,CAAA;IAC/B,oDAAoD;IACpD,QAAQ,CAAC,EAAE,iBAAiB,CAAA;CAC3B,CAAA;AAEJ;;;;;;;GAOG;AACH,MAAM,MAAM,oBAAoB,GAAG,eAAe,GAAG;IACpD,MAAM,EAAE,UAAU,CAAA;IAClB,SAAS,CAAC,EAAE,WAAW,CAAA;IACvB;;;OAGG;IACH,iBAAiB,CAAC,EAAE,iBAAiB,CAAA;CACrC,CAAA"}
@@ -7,7 +7,7 @@ import type * as Core from '@dialecte/core';
7
7
  * placed at its source structural level. Tag-agnostic: whatever
8
8
  * `resolveAppliedSatellites` returns is cloned by its own tag. Satellites living
9
9
  * inside the subtree are cloned by `deep`, not here (the resolver excludes them).
10
- * UUID remapping is handled by the afterDeepClone hook; the caller stamps lineage
10
+ * UUID remapping is the caller's responsibility via `reference.applyUuidRemap`; the caller stamps lineage
11
11
  * via `writeIdentity`.
12
12
  *
13
13
  * A satellite whose same-tag/same-name twin already exists in the target IS that
@@ -1,5 +1,7 @@
1
1
  import { AcceptedIds, CollisionOverrides } from './decide.types';
2
- import { DecisionGroup, DecisionMap, GroupDecision } from './diff.types';
2
+ import { DecisionGroup, DecisionMap, DiffReport, GroupDecision } from './diff.types';
3
+ /** The decision groups scoped to one instance root (empty when the instance is absent/up-to-date). */
4
+ export declare function groupsForInstance(report: DiffReport | undefined, instanceId: string): DecisionGroup[];
3
5
  /** The action of a decision (absent -> accept; string or object form). */
4
6
  export declare function decisionAction(decision: GroupDecision | undefined): 'accept' | 'skip';
5
7
  /**
@@ -23,6 +25,11 @@ export declare function assertDecisionsCoherent(params: {
23
25
  * Collect the record ids reconcile may write, from every accepted group's
24
26
  * primary + companions. Added/modified nodes contribute their `sourceRef`
25
27
  * (reconcile matches/adds by source); removed nodes contribute `instanceRef`.
28
+ *
29
+ * A companion can be a STRUCTURED subtree (a satellite folded onto an existing
30
+ * container: an unchanged container carrying a changed descendant), so recurse each
31
+ * node and skip unchanged context — otherwise a nested accepted change is never
32
+ * written.
26
33
  */
27
34
  export declare function acceptedRefIds(params: {
28
35
  groups: DecisionGroup[];
@@ -1 +1 @@
1
- {"version":3,"file":"decide.d.ts","sourceRoot":"","sources":["../../../../../src/v2019C1/extensions/lifecycle/engine/decide.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAA;AACrE,OAAO,KAAK,EAAE,aAAa,EAAE,WAAW,EAAY,aAAa,EAAE,MAAM,cAAc,CAAA;AAEvF,0EAA0E;AAC1E,wBAAgB,cAAc,CAAC,QAAQ,EAAE,aAAa,GAAG,SAAS,GAAG,QAAQ,GAAG,MAAM,CAIrF;AAsBD;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE;IAC1C,MAAM,EAAE,aAAa,EAAE,CAAA;IACvB,SAAS,EAAE,WAAW,CAAA;CACtB,GAAG,kBAAkB,CAWrB;AAED;;;GAGG;AACH,wBAAgB,uBAAuB,CAAC,MAAM,EAAE;IAC/C,MAAM,EAAE,aAAa,EAAE,CAAA;IACvB,SAAS,EAAE,WAAW,CAAA;CACtB,GAAG,IAAI,CAUP;AAMD;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE;IACtC,MAAM,EAAE,aAAa,EAAE,CAAA;IACvB,SAAS,EAAE,WAAW,CAAA;CACtB,GAAG,WAAW,CAad"}
1
+ {"version":3,"file":"decide.d.ts","sourceRoot":"","sources":["../../../../../src/v2019C1/extensions/lifecycle/engine/decide.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAA;AACrE,OAAO,KAAK,EAAE,aAAa,EAAE,WAAW,EAAY,UAAU,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AAEnG,sGAAsG;AACtG,wBAAgB,iBAAiB,CAChC,MAAM,EAAE,UAAU,GAAG,SAAS,EAC9B,UAAU,EAAE,MAAM,GAChB,aAAa,EAAE,CAEjB;AAED,0EAA0E;AAC1E,wBAAgB,cAAc,CAAC,QAAQ,EAAE,aAAa,GAAG,SAAS,GAAG,QAAQ,GAAG,MAAM,CAIrF;AAsBD;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE;IAC1C,MAAM,EAAE,aAAa,EAAE,CAAA;IACvB,SAAS,EAAE,WAAW,CAAA;CACtB,GAAG,kBAAkB,CAWrB;AAED;;;GAGG;AACH,wBAAgB,uBAAuB,CAAC,MAAM,EAAE;IAC/C,MAAM,EAAE,aAAa,EAAE,CAAA;IACvB,SAAS,EAAE,WAAW,CAAA;CACtB,GAAG,IAAI,CAUP;AAMD;;;;;;;;;GASG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE;IACtC,MAAM,EAAE,aAAa,EAAE,CAAA;IACvB,SAAS,EAAE,WAAW,CAAA;CACtB,GAAG,WAAW,CAad"}
@@ -1,7 +1,14 @@
1
- import { DiffReport } from './diff.types';
1
+ import { DecisionGroup, DiffNode, DiffReport, InstanceDiff, ReportInstance } from './diff.types';
2
2
  import { Config } from '../../../config';
3
- import { AnyRefOrRecord } from '@dialecte/core';
3
+ import { MatchKey } from '../scenario';
4
+ import { AnyRefOrRecord, AnyTreeRecord } from '@dialecte/core';
4
5
  import type * as Core from '@dialecte/core';
6
+ /**
7
+ * Provenance decision for a kept-leftover reference child of a shared satellite: `'removed'` when it
8
+ * is a GENUINE removal (its target is in the source's own scope and the source no longer references
9
+ * it), `'keep'` otherwise (another primary's link / indeterminate). See {@link diff}.
10
+ */
11
+ export type LeftoverRefPolicy = (instanceChild: AnyTreeRecord) => Promise<'keep' | 'removed'>;
5
12
  /**
6
13
  * Engine diff (ENGINE.md §3): compares an (updated) template subtree against the
7
14
  * existing instance, matched by `templateUuid` (= the source element's `uuid`),
@@ -19,12 +26,40 @@ export declare function diff(params: {
19
26
  sourceRootRef: AnyRefOrRecord;
20
27
  /** Omit (or pass a ref that resolves to nothing) for a first-time instantiate. */
21
28
  instanceRootRef?: AnyRefOrRecord;
22
- }): Promise<DiffReport>;
29
+ /**
30
+ * Keep leftover instance reference children as `unchanged` instead of `removed`. Set when
31
+ * diffing a SHARED/catalog satellite (`AllocationRole`/`FunctionCategory`/...): its extra refs
32
+ * belong to OTHER primaries/instances, so a scoped single-primary update must never flag them
33
+ * removed (the coupling invariant: catalog satellites persist when merely un-referenced).
34
+ */
35
+ keepLeftoverRefs?: boolean;
36
+ /**
37
+ * Provenance override for the kept-leftover case: decides, per leftover reference child, whether
38
+ * it is a GENUINE removal (its target is in the source's own scope and the source no longer
39
+ * references it) rather than another primary's link. Returns `'removed'` to override the keep.
40
+ * Only consulted when the ref would otherwise be kept.
41
+ */
42
+ leftoverRefPolicy?: LeftoverRefPolicy;
43
+ /**
44
+ * Treat every REFERENCE child (link element) as `added` instead of matching it to an existing
45
+ * instance ref by template lineage. Set for a satellite folded on the INSTANTIATE scenario: a
46
+ * fresh instantiation always creates its OWN per-instance refs (e.g. one `FunctionCatRef` per new
47
+ * SubFunction), so a ref that lineage-matches a PRIOR instance's ref is still a genuine addition.
48
+ * The container itself still matches (merge into it); only its ref children are forced added, and
49
+ * the prior instance's refs are kept as unchanged context (with `keepLeftoverRefs`).
50
+ */
51
+ refsAlwaysAdded?: boolean;
52
+ /** How instance elements match source. `templateUuid` (default) or `uuid` (fork). */
53
+ matchKey?: MatchKey;
54
+ }): Promise<InstanceDiff>;
23
55
  /**
24
- * Combine several reports into one (e.g. an ASD's application-layer report plus
25
- * one per composed function). `root` keeps the first report's tree; `groups` is
26
- * the concatenation (the full-track decision surface); `summary` sums; and
27
- * `needsDecisions` is true if any part needs a decision.
56
+ * Assemble the per-instance {@link ReportInstance}s into the consumer-facing
57
+ * {@link DiffReport}: `summary` sums every instance's primary tree and
58
+ * `needsDecisions` is true when any instance has a decision group.
28
59
  */
29
- export declare function mergeReports(reports: [DiffReport, ...DiffReport[]]): DiffReport;
60
+ export declare function assembleReport(instances: ReportInstance[]): DiffReport;
61
+ /** Every decision group across all instances — the flat surface the decision engine consumes. */
62
+ export declare function allGroups(report: DiffReport): DecisionGroup[];
63
+ /** All element ids in a diff tree, by side (`instanceRef` for staged/existing, `sourceRef` for added). */
64
+ export declare function collectTreeIds(root: DiffNode, side: 'instanceRef' | 'sourceRef'): string[];
30
65
  //# sourceMappingURL=diff.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"diff.d.ts","sourceRoot":"","sources":["../../../../../src/v2019C1/extensions/lifecycle/engine/diff.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAA6B,UAAU,EAAe,MAAM,cAAc,CAAA;AACtF,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAA;AAC9C,OAAO,KAAK,KAAK,IAAI,MAAM,gBAAgB,CAAA;AAC3C,OAAO,KAAK,EAAE,cAAc,EAAiB,MAAM,gBAAgB,CAAA;AAgBnE;;;;;;;;;;GAUG;AACH,wBAAsB,IAAI,CAAC,MAAM,EAAE;IAClC,WAAW,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;IAC/B,WAAW,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;IAC/B,aAAa,EAAE,cAAc,CAAA;IAC7B,kFAAkF;IAClF,eAAe,CAAC,EAAE,cAAc,CAAA;CAChC,GAAG,OAAO,CAAC,UAAU,CAAC,CA4CtB;AA+JD;;;;;GAKG;AACH,wBAAgB,YAAY,CAAC,OAAO,EAAE,CAAC,UAAU,EAAE,GAAG,UAAU,EAAE,CAAC,GAAG,UAAU,CAmB/E"}
1
+ {"version":3,"file":"diff.d.ts","sourceRoot":"","sources":["../../../../../src/v2019C1/extensions/lifecycle/engine/diff.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAEX,aAAa,EACb,QAAQ,EACR,UAAU,EAEV,YAAY,EACZ,cAAc,EACd,MAAM,cAAc,CAAA;AACrB,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAA;AAC9C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,yCAAyC,CAAA;AACvE,OAAO,KAAK,KAAK,IAAI,MAAM,gBAAgB,CAAA;AAC3C,OAAO,KAAK,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAA;AAqBnE;;;;GAIG;AACH,MAAM,MAAM,iBAAiB,GAAG,CAAC,aAAa,EAAE,aAAa,KAAK,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAAA;AAE7F;;;;;;;;;;GAUG;AACH,wBAAsB,IAAI,CAAC,MAAM,EAAE;IAClC,WAAW,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;IAC/B,WAAW,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;IAC/B,aAAa,EAAE,cAAc,CAAA;IAC7B,kFAAkF;IAClF,eAAe,CAAC,EAAE,cAAc,CAAA;IAChC;;;;;OAKG;IACH,gBAAgB,CAAC,EAAE,OAAO,CAAA;IAC1B;;;;;OAKG;IACH,iBAAiB,CAAC,EAAE,iBAAiB,CAAA;IACrC;;;;;;;OAOG;IACH,eAAe,CAAC,EAAE,OAAO,CAAA;IACzB,qFAAqF;IACrF,QAAQ,CAAC,EAAE,QAAQ,CAAA;CACnB,GAAG,OAAO,CAAC,YAAY,CAAC,CAqCxB;AAqYD;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,SAAS,EAAE,cAAc,EAAE,GAAG,UAAU,CAsBtE;AAED,iGAAiG;AACjG,wBAAgB,SAAS,CAAC,MAAM,EAAE,UAAU,GAAG,aAAa,EAAE,CAE7D;AAED,0GAA0G;AAC1G,wBAAgB,cAAc,CAAC,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,aAAa,GAAG,WAAW,GAAG,MAAM,EAAE,CAS1F"}
@@ -23,6 +23,17 @@ export type DiffSummary = {
23
23
  removed: number;
24
24
  modified: number;
25
25
  };
26
+ /**
27
+ * The engine's per-instance diff primitive: one instance's change `root` tree, its
28
+ * decision `groups`, and its `summary`. The report builders enrich this into a
29
+ * {@link ReportInstance} (title / linkage) and aggregate several into a
30
+ * {@link DiffReport}. Internal to the report pipeline — consumers see `DiffReport`.
31
+ */
32
+ export type InstanceDiff = {
33
+ root: DiffNode;
34
+ groups: DecisionGroup[];
35
+ summary: DiffSummary;
36
+ };
26
37
  /**
27
38
  * An identity-locked placement collision on a decision group's primary: every field
28
39
  * of the violated uniqueness constraint is identity (none editable), so the engine
@@ -71,35 +82,33 @@ export type DecisionGroup = {
71
82
  * field is bumped instead — see {@link EditableAttribute.conflict}).
72
83
  */
73
84
  conflict?: GroupConflict;
74
- /**
75
- * The id of the instance root this group belongs to, when several instances of one
76
- * template are reported together (multi-instance). Lets the decision layer target a
77
- * SUBSET of instances and lets apply partition groups per instance. Omitted for a
78
- * first-time instantiate (no instance yet).
79
- */
80
- instanceScopeId?: string;
81
- /**
82
- * Human-readable title of the instance root (`extractElementTitle`), tagged at the
83
- * report surface so a multi-instance UI can label each instance section (e.g. `Prot`
84
- * vs `Prot_1`) without resolving the element itself. Omitted for a first-time
85
- * instantiate.
86
- */
87
- instanceScopeTitle?: string;
88
85
  };
89
- export type DiffReport = {
90
- root: DiffNode;
91
- /**
92
- * One root per instance in the report. A single diff carries `[root]`; a merged
93
- * multi-instance report carries every instance's root (both layers for an ASD), so
94
- * a UI can render each instance's full tree (unchanged context included) directly.
95
- */
96
- roots: DiffNode[];
97
- /** The change tree folded into accept/skip units — the full-track surface. */
86
+ /**
87
+ * One instance in a report: a linked template instance (`Application`/`Function`) with
88
+ * its diff tree, its decision groups, and its linkage/up-to-date status. The report is a
89
+ * list of these — a changed instance and an up-to-date instance render through the same
90
+ * shape (the up-to-date one simply has no `groups`).
91
+ */
92
+ export type ReportInstance = {
93
+ /** The instance root record (`Application`/`Function`). Omitted for a first-time instantiate. */
94
+ rootRef?: AnyRefOrRecord;
95
+ /** Human-readable title of the instance root (`extractElementTitle`). */
96
+ title: string;
97
+ /** Recognised as an instantiation of the loaded template (provenance or `templateUuid` lineage). */
98
+ linked: boolean;
99
+ /** Nothing to apply for this instance (`groups.length === 0`). */
100
+ upToDate: boolean;
101
+ /** The full diff tree for this instance (unchanged context included). */
102
+ tree: DiffNode;
103
+ /** The change tree folded into accept/skip units for this instance. */
98
104
  groups: DecisionGroup[];
105
+ };
106
+ export type DiffReport = {
107
+ /** One entry per reported instance (`Application`/`Function`). */
108
+ instances: ReportInstance[];
99
109
  /**
100
- * `false` = fast track (apply headless): either a first-time instantiate (no
101
- * existing instance) or nothing changed. `true` = full track: the instance
102
- * exists and something changed, so the caller must resolve decisions.
110
+ * `false` = fast track (apply headless): a first-time instantiate or nothing changed
111
+ * anywhere. `true` = full track: some instance has changes to resolve.
103
112
  */
104
113
  needsDecisions: boolean;
105
114
  summary: DiffSummary;
@@ -1 +1 @@
1
- {"version":3,"file":"diff.types.d.ts","sourceRoot":"","sources":["../../../../../src/v2019C1/extensions/lifecycle/engine/diff.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAA;AACvD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAA;AAEpD,oFAAoF;AAGpF,MAAM,MAAM,UAAU,GAAG,OAAO,GAAG,SAAS,GAAG,UAAU,GAAG,WAAW,GAAG,aAAa,CAAA;AAEvF,MAAM,MAAM,eAAe,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAA;AAE/E,MAAM,MAAM,QAAQ,GAAG;IACtB,MAAM,EAAE,UAAU,CAAA;IAClB,OAAO,EAAE,MAAM,CAAA;IACf,kFAAkF;IAClF,SAAS,CAAC,EAAE,cAAc,CAAA;IAC1B,2EAA2E;IAC3E,WAAW,CAAC,EAAE,cAAc,CAAA;IAC5B,iDAAiD;IACjD,gBAAgB,CAAC,EAAE,eAAe,EAAE,CAAA;IACpC,QAAQ,EAAE,QAAQ,EAAE,CAAA;CACpB,CAAA;AAED,MAAM,MAAM,WAAW,GAAG;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,CAAA;AAE9E;;;;;GAKG;AACH,MAAM,MAAM,aAAa,GAAG;IAC3B,MAAM,EAAE,MAAM,EAAE,CAAA;IAChB,aAAa,EAAE,MAAM,CAAA;CACrB,CAAA;AAED;;;;;;;;;;GAUG;AACH,MAAM,MAAM,aAAa,GAAG;IAC3B,sEAAsE;IACtE,EAAE,EAAE,MAAM,CAAA;IACV,MAAM,EAAE,OAAO,CAAC,UAAU,EAAE,WAAW,CAAC,CAAA;IACxC,yHAAyH;IACzH,KAAK,EAAE,MAAM,CAAA;IACb,OAAO,EAAE,QAAQ,CAAA;IACjB,UAAU,EAAE,QAAQ,EAAE,CAAA;IACtB,SAAS,EAAE,MAAM,EAAE,CAAA;IACnB,eAAe,EAAE,QAAQ,GAAG,MAAM,CAAA;IAClC;;;;;OAKG;IACH,kBAAkB,CAAC,EAAE,iBAAiB,EAAE,CAAA;IACxC;;;;;;;;OAQG;IACH,QAAQ,CAAC,EAAE,aAAa,CAAA;IACxB;;;;;OAKG;IACH,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB;;;;;OAKG;IACH,kBAAkB,CAAC,EAAE,MAAM,CAAA;CAC3B,CAAA;AAED,MAAM,MAAM,UAAU,GAAG;IACxB,IAAI,EAAE,QAAQ,CAAA;IACd;;;;OAIG;IACH,KAAK,EAAE,QAAQ,EAAE,CAAA;IACjB,8EAA8E;IAC9E,MAAM,EAAE,aAAa,EAAE,CAAA;IACvB;;;;OAIG;IACH,cAAc,EAAE,OAAO,CAAA;IACvB,OAAO,EAAE,WAAW,CAAA;CACpB,CAAA;AAED;;;;GAIG;AACH,MAAM,MAAM,aAAa,GACtB,QAAQ,GACR,MAAM,GACN;IAAE,MAAM,EAAE,QAAQ,GAAG,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAAE,CAAA;AAEjE;;;GAGG;AACH,MAAM,MAAM,WAAW,GAAG,GAAG,CAAC,MAAM,EAAE,aAAa,CAAC,CAAA"}
1
+ {"version":3,"file":"diff.types.d.ts","sourceRoot":"","sources":["../../../../../src/v2019C1/extensions/lifecycle/engine/diff.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAA;AACvD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAA;AAEpD,oFAAoF;AAGpF,MAAM,MAAM,UAAU,GAAG,OAAO,GAAG,SAAS,GAAG,UAAU,GAAG,WAAW,GAAG,aAAa,CAAA;AAEvF,MAAM,MAAM,eAAe,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAA;AAE/E,MAAM,MAAM,QAAQ,GAAG;IACtB,MAAM,EAAE,UAAU,CAAA;IAClB,OAAO,EAAE,MAAM,CAAA;IACf,kFAAkF;IAClF,SAAS,CAAC,EAAE,cAAc,CAAA;IAC1B,2EAA2E;IAC3E,WAAW,CAAC,EAAE,cAAc,CAAA;IAC5B,iDAAiD;IACjD,gBAAgB,CAAC,EAAE,eAAe,EAAE,CAAA;IACpC,QAAQ,EAAE,QAAQ,EAAE,CAAA;CACpB,CAAA;AAED,MAAM,MAAM,WAAW,GAAG;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,CAAA;AAE9E;;;;;GAKG;AACH,MAAM,MAAM,YAAY,GAAG;IAC1B,IAAI,EAAE,QAAQ,CAAA;IACd,MAAM,EAAE,aAAa,EAAE,CAAA;IACvB,OAAO,EAAE,WAAW,CAAA;CACpB,CAAA;AAED;;;;;GAKG;AACH,MAAM,MAAM,aAAa,GAAG;IAC3B,MAAM,EAAE,MAAM,EAAE,CAAA;IAChB,aAAa,EAAE,MAAM,CAAA;CACrB,CAAA;AAED;;;;;;;;;;GAUG;AACH,MAAM,MAAM,aAAa,GAAG;IAC3B,sEAAsE;IACtE,EAAE,EAAE,MAAM,CAAA;IACV,MAAM,EAAE,OAAO,CAAC,UAAU,EAAE,WAAW,CAAC,CAAA;IACxC,yHAAyH;IACzH,KAAK,EAAE,MAAM,CAAA;IACb,OAAO,EAAE,QAAQ,CAAA;IACjB,UAAU,EAAE,QAAQ,EAAE,CAAA;IACtB,SAAS,EAAE,MAAM,EAAE,CAAA;IACnB,eAAe,EAAE,QAAQ,GAAG,MAAM,CAAA;IAClC;;;;;OAKG;IACH,kBAAkB,CAAC,EAAE,iBAAiB,EAAE,CAAA;IACxC;;;;;;;;OAQG;IACH,QAAQ,CAAC,EAAE,aAAa,CAAA;CACxB,CAAA;AAED;;;;;GAKG;AACH,MAAM,MAAM,cAAc,GAAG;IAC5B,iGAAiG;IACjG,OAAO,CAAC,EAAE,cAAc,CAAA;IACxB,yEAAyE;IACzE,KAAK,EAAE,MAAM,CAAA;IACb,oGAAoG;IACpG,MAAM,EAAE,OAAO,CAAA;IACf,kEAAkE;IAClE,QAAQ,EAAE,OAAO,CAAA;IACjB,yEAAyE;IACzE,IAAI,EAAE,QAAQ,CAAA;IACd,uEAAuE;IACvE,MAAM,EAAE,aAAa,EAAE,CAAA;CACvB,CAAA;AAED,MAAM,MAAM,UAAU,GAAG;IACxB,kEAAkE;IAClE,SAAS,EAAE,cAAc,EAAE,CAAA;IAC3B;;;OAGG;IACH,cAAc,EAAE,OAAO,CAAA;IACvB,OAAO,EAAE,WAAW,CAAA;CACpB,CAAA;AAED;;;;GAIG;AACH,MAAM,MAAM,aAAa,GACtB,QAAQ,GACR,MAAM,GACN;IAAE,MAAM,EAAE,QAAQ,GAAG,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAAE,CAAA;AAEjE;;;GAGG;AACH,MAAM,MAAM,WAAW,GAAG,GAAG,CAAC,MAAM,EAAE,aAAa,CAAC,CAAA"}
@@ -12,7 +12,7 @@ import { DecisionGroup, DiffNode } from './diff.types';
12
12
  * reference-linked companions (satellites via the ownership map + ref pairs),
13
13
  * and `dependsOn` edges for nested-independent changes — both currently empty.
14
14
  */
15
- export declare function groupChanges(root: DiffNode, instanceScopeId?: string): DecisionGroup[];
15
+ export declare function groupChanges(root: DiffNode, scopePrefix?: string): DecisionGroup[];
16
16
  export declare function collectChangedDescendants(params: {
17
17
  node: DiffNode;
18
18
  out: DiffNode[];
@@ -1 +1 @@
1
- {"version":3,"file":"group.d.ts","sourceRoot":"","sources":["../../../../../src/v2019C1/extensions/lifecycle/engine/group.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAA;AAE3D;;;;;;;;;;;;GAYG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,QAAQ,EAAE,eAAe,CAAC,EAAE,MAAM,GAAG,aAAa,EAAE,CAItF;AAgCD,wBAAgB,yBAAyB,CAAC,MAAM,EAAE;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,GAAG,EAAE,QAAQ,EAAE,CAAA;CAAE,GAAG,IAAI,CAM3F"}
1
+ {"version":3,"file":"group.d.ts","sourceRoot":"","sources":["../../../../../src/v2019C1/extensions/lifecycle/engine/group.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAA;AAE3D;;;;;;;;;;;;GAYG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,QAAQ,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,aAAa,EAAE,CAIlF;AA+BD,wBAAgB,yBAAyB,CAAC,MAAM,EAAE;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,GAAG,EAAE,QAAQ,EAAE,CAAA;CAAE,GAAG,IAAI,CAM3F"}
@@ -1,4 +1,4 @@
1
- export { diff, mergeReports } from './diff';
1
+ export { diff, assembleReport, allGroups, collectTreeIds } from './diff';
2
2
  export { groupChanges } from './group';
3
3
  export { reconcile } from './reconcile';
4
4
  export { acceptedRefIds, assertDecisionsCoherent, collisionOverrides, decisionAction, } from './decide';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/v2019C1/extensions/lifecycle/engine/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAA;AAC3C,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;AACtC,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AACvC,OAAO,EACN,cAAc,EACd,uBAAuB,EACvB,kBAAkB,EAClB,cAAc,GACd,MAAM,UAAU,CAAA;AACjB,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAA;AAExD,YAAY,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAA;AACrE,mBAAmB,cAAc,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/v2019C1/extensions/lifecycle/engine/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,cAAc,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAA;AACxE,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;AACtC,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AACvC,OAAO,EACN,cAAc,EACd,uBAAuB,EACvB,kBAAkB,EAClB,cAAc,GACd,MAAM,UAAU,CAAA;AACjB,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAA;AAExD,YAAY,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAA;AACrE,mBAAmB,cAAc,CAAA"}
@@ -1,6 +1,8 @@
1
1
  import { AcceptedIds, CollisionOverrides } from './decide.types';
2
2
  import { Config } from '../../../config';
3
3
  import { KeepNameTypesFrom } from '../../data-model/transaction';
4
+ import { IdentityMode } from '../../identity/transaction/write-identity.types';
5
+ import { MatchKey } from '../scenario';
4
6
  import { AnyRefOrRecord } from '@dialecte/core';
5
7
  import type * as Core from '@dialecte/core';
6
8
  /**
@@ -36,5 +38,9 @@ export declare function reconcile(tx: Core.Transaction<Config>, params: {
36
38
  overrides?: CollisionOverrides;
37
39
  /** Type-dedup name authority for added subtrees, forwarded to `importTypes`. */
38
40
  keepNameTypesFrom?: KeepNameTypesFrom;
41
+ /** How instance elements match source. `templateUuid` (default) or `uuid` (fork). */
42
+ matchKey?: MatchKey;
43
+ /** Identity write mode for added elements. `stamp-template` (default) or `keep` (fork). */
44
+ identityMode?: IdentityMode;
39
45
  }): Promise<void>;
40
46
  //# sourceMappingURL=reconcile.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"reconcile.d.ts","sourceRoot":"","sources":["../../../../../src/v2019C1/extensions/lifecycle/engine/reconcile.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAA;AACrE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAA;AAE9C,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,6CAA6C,CAAA;AACpF,OAAO,KAAK,KAAK,IAAI,MAAM,gBAAgB,CAAA;AAC3C,OAAO,KAAK,EAAE,cAAc,EAAiB,MAAM,gBAAgB,CAAA;AAEnE;;;;;;;;;;;;;;;;GAgBG;AAEH,wBAAsB,SAAS,CAC9B,EAAE,EAAE,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,EAC5B,MAAM,EAAE;IACP,WAAW,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;IAC/B,aAAa,EAAE,cAAc,CAAA;IAC7B,eAAe,EAAE,cAAc,CAAA;IAC/B;;;OAGG;IACH,QAAQ,CAAC,EAAE,WAAW,CAAA;IACtB;;;OAGG;IACH,SAAS,CAAC,EAAE,kBAAkB,CAAA;IAC9B,gFAAgF;IAChF,iBAAiB,CAAC,EAAE,iBAAiB,CAAA;CACrC,GACC,OAAO,CAAC,IAAI,CAAC,CAkCf"}
1
+ {"version":3,"file":"reconcile.d.ts","sourceRoot":"","sources":["../../../../../src/v2019C1/extensions/lifecycle/engine/reconcile.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAA;AACrE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAA;AAE9C,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,6CAA6C,CAAA;AACpF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gEAAgE,CAAA;AAClG,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,yCAAyC,CAAA;AACvE,OAAO,KAAK,KAAK,IAAI,MAAM,gBAAgB,CAAA;AAC3C,OAAO,KAAK,EAAE,cAAc,EAAiB,MAAM,gBAAgB,CAAA;AAEnE;;;;;;;;;;;;;;;;GAgBG;AAEH,wBAAsB,SAAS,CAC9B,EAAE,EAAE,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,EAC5B,MAAM,EAAE;IACP,WAAW,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;IAC/B,aAAa,EAAE,cAAc,CAAA;IAC7B,eAAe,EAAE,cAAc,CAAA;IAC/B;;;OAGG;IACH,QAAQ,CAAC,EAAE,WAAW,CAAA;IACtB;;;OAGG;IACH,SAAS,CAAC,EAAE,kBAAkB,CAAA;IAC9B,gFAAgF;IAChF,iBAAiB,CAAC,EAAE,iBAAiB,CAAA;IACrC,qFAAqF;IACrF,QAAQ,CAAC,EAAE,QAAQ,CAAA;IACnB,2FAA2F;IAC3F,YAAY,CAAC,EAAE,YAAY,CAAA;CAC3B,GACC,OAAO,CAAC,IAAI,CAAC,CA4Cf"}
@@ -1 +1 @@
1
- {"version":3,"file":"asd.d.ts","sourceRoot":"","sources":["../../../../../../src/v2019C1/extensions/lifecycle/extract/transaction/asd.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAA;AACnD,OAAO,KAAK,KAAK,IAAI,MAAM,gBAAgB,CAAA;AAE3C,wBAAsB,GAAG,CACxB,EAAE,EAAE,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,EAC5B,MAAM,EAAE;IACP,WAAW,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;IAC/B,cAAc,EAAE,GAAG,CAAC,GAAG,CAAC,aAAa,CAAC,CAAA;IACtC,IAAI,EAAE,GAAG,CAAC,uBAAuB,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,CAAA;IACrD,GAAG,EAAE,GAAG,CAAC,uBAAuB,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,CAAA;IAChD,aAAa,CAAC,EAAE,GAAG,CAAC,uBAAuB,CAAC,QAAQ,CAAC,CAAC,eAAe,CAAC,CAAA;CACtE,GACC,OAAO,CAAC,IAAI,CAAC,CAyBf"}
1
+ {"version":3,"file":"asd.d.ts","sourceRoot":"","sources":["../../../../../../src/v2019C1/extensions/lifecycle/extract/transaction/asd.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAA;AACnD,OAAO,KAAK,KAAK,IAAI,MAAM,gBAAgB,CAAA;AAE3C,wBAAsB,GAAG,CACxB,EAAE,EAAE,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,EAC5B,MAAM,EAAE;IACP,WAAW,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;IAC/B,cAAc,EAAE,GAAG,CAAC,GAAG,CAAC,aAAa,CAAC,CAAA;IACtC,IAAI,EAAE,GAAG,CAAC,uBAAuB,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,CAAA;IACrD,GAAG,EAAE,GAAG,CAAC,uBAAuB,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,CAAA;IAChD,aAAa,CAAC,EAAE,GAAG,CAAC,uBAAuB,CAAC,QAAQ,CAAC,CAAC,eAAe,CAAC,CAAA;CACtE,GACC,OAAO,CAAC,IAAI,CAAC,CAkCf"}
@@ -1 +1 @@
1
- {"version":3,"file":"fsd.d.ts","sourceRoot":"","sources":["../../../../../../src/v2019C1/extensions/lifecycle/extract/transaction/fsd.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAA;AACnD,OAAO,KAAK,KAAK,IAAI,MAAM,gBAAgB,CAAA;AAE3C,wBAAsB,GAAG,CACxB,EAAE,EAAE,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,EAC5B,MAAM,EAAE;IACP,WAAW,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;IAC/B,WAAW,EAAE,GAAG,CAAC,GAAG,CAAC,UAAU,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,aAAa,CAAC,CAAA;IACzD,IAAI,EAAE,GAAG,CAAC,uBAAuB,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,CAAA;IACrD,GAAG,EAAE,GAAG,CAAC,uBAAuB,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,CAAA;IAChD,aAAa,CAAC,EAAE,GAAG,CAAC,uBAAuB,CAAC,QAAQ,CAAC,CAAC,eAAe,CAAC,CAAA;CACtE,GACC,OAAO,CAAC,IAAI,CAAC,CAyCf"}
1
+ {"version":3,"file":"fsd.d.ts","sourceRoot":"","sources":["../../../../../../src/v2019C1/extensions/lifecycle/extract/transaction/fsd.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAA;AACnD,OAAO,KAAK,KAAK,IAAI,MAAM,gBAAgB,CAAA;AAE3C,wBAAsB,GAAG,CACxB,EAAE,EAAE,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,EAC5B,MAAM,EAAE;IACP,WAAW,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;IAC/B,WAAW,EAAE,GAAG,CAAC,GAAG,CAAC,UAAU,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,aAAa,CAAC,CAAA;IACzD,IAAI,EAAE,GAAG,CAAC,uBAAuB,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,CAAA;IACrD,GAAG,EAAE,GAAG,CAAC,uBAAuB,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,CAAA;IAChD,aAAa,CAAC,EAAE,GAAG,CAAC,uBAAuB,CAAC,QAAQ,CAAC,CAAC,eAAe,CAAC,CAAA;CACtE,GACC,OAAO,CAAC,IAAI,CAAC,CA6Cf"}
@@ -1,6 +1,7 @@
1
1
  import { apply } from './apply';
2
2
  import { report } from './report';
3
3
  import { deep } from './transplant';
4
+ import { checkTemplateUuids } from './validate';
4
5
  import * as extractTransaction from './extract';
5
6
  import * as instantiateTransaction from './instantiate';
6
7
  import * as updateTransaction from './update';
@@ -30,6 +31,7 @@ import * as updateTransaction from './update';
30
31
  export declare const lifecycle: {
31
32
  query: {
32
33
  report: typeof report;
34
+ checkTemplateUuids: typeof checkTemplateUuids;
33
35
  };
34
36
  transaction: {
35
37
  extract: typeof extractTransaction;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/v2019C1/extensions/lifecycle/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AAC/B,OAAO,KAAK,kBAAkB,MAAM,WAAW,CAAA;AAC/C,OAAO,KAAK,sBAAsB,MAAM,eAAe,CAAA;AACvD,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AACjC,OAAO,EAAE,IAAI,EAAE,MAAM,cAAc,CAAA;AACnC,OAAO,KAAK,iBAAiB,MAAM,UAAU,CAAA;AAE7C;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,eAAO,MAAM,SAAS;;;;;;;;;;;;;CAWrB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/v2019C1/extensions/lifecycle/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AAC/B,OAAO,KAAK,kBAAkB,MAAM,WAAW,CAAA;AAC/C,OAAO,KAAK,sBAAsB,MAAM,eAAe,CAAA;AACvD,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AACjC,OAAO,EAAE,IAAI,EAAE,MAAM,cAAc,CAAA;AACnC,OAAO,KAAK,iBAAiB,MAAM,UAAU,CAAA;AAC7C,OAAO,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAA;AAE/C;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,eAAO,MAAM,SAAS;;;;;;;;;;;;;;CAYrB,CAAA"}
@@ -1,4 +1,5 @@
1
1
  import { Scl, Config } from '../../../config';
2
+ import { MatchKey } from '../scenario';
2
3
  import { AnyTrackedRecord, AnyTreeRecord } from '@dialecte/core';
3
4
  import type * as Core from '@dialecte/core';
4
5
  /** A reader with the untyped `.any` facade — either a Query or a Transaction. */
@@ -12,6 +13,8 @@ export declare function findInstanceUnder(reader: Reader, params: {
12
13
  targetParent: Scl.Ref<Scl.ElementsOf>;
13
14
  tagName: Scl.ElementsOf;
14
15
  sourceUuid: string | undefined;
16
+ /** Attribute matched against `sourceUuid`. Default `templateUuid`; `uuid` for fork. */
17
+ matchKey?: MatchKey;
15
18
  }): Promise<AnyTreeRecord | undefined>;
16
19
  /**
17
20
  * ALL records of `tagName` under `targetParent` whose `templateUuid` equals the
@@ -25,6 +28,8 @@ export declare function findInstancesUnder(reader: Reader, params: {
25
28
  targetParent: Scl.Ref<Scl.ElementsOf>;
26
29
  tagName: Scl.ElementsOf;
27
30
  sourceUuid: string | undefined;
31
+ /** Attribute matched against `sourceUuid`. Default `templateUuid`; `uuid` for fork. */
32
+ matchKey?: MatchKey;
28
33
  }): Promise<AnyTreeRecord[]>;
29
34
  /**
30
35
  * The first record of `tagName` anywhere whose `templateUuid` equals the source
@@ -35,16 +40,26 @@ export declare function findInstancesUnder(reader: Reader, params: {
35
40
  export declare function findInstanceByTemplateUuid(reader: Reader, params: {
36
41
  tagName: Scl.ElementsOf;
37
42
  sourceUuid: string | undefined;
43
+ sourceName?: string;
38
44
  }): Promise<AnyTrackedRecord | undefined>;
39
45
  /**
40
46
  * ALL records of `tagName` anywhere whose `templateUuid` equals the source uuid,
41
47
  * in document order. The global counterpart of {@link findInstancesUnder} used
42
48
  * where there is no placement anchor (the ASD report/apply cascade), so several
43
49
  * instances of one template are enumerated and gated as a subset (multi-instance).
50
+ *
51
+ * `sourceName` opt-in fallback: when NO instance carries the source `uuid` as its
52
+ * `templateUuid` — an externally-authored project whose `templateUuid` lineage is
53
+ * broken (a placeholder value, not the source uuid, as real .ssd files reuse one
54
+ * dummy across elements) — recognize the instance by `name` instead, but ONLY when
55
+ * it is unambiguous (exactly one same-tag element of that name), so an unrelated
56
+ * element is never adopted. Callers that omit `sourceName` keep the strict lineage
57
+ * behaviour.
44
58
  */
45
59
  export declare function findInstancesByTemplateUuid(reader: Reader, params: {
46
60
  tagName: Scl.ElementsOf;
47
61
  sourceUuid: string | undefined;
62
+ sourceName?: string;
48
63
  }): Promise<AnyTrackedRecord[]>;
49
64
  export {};
50
65
  //# sourceMappingURL=find-instance.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"find-instance.d.ts","sourceRoot":"","sources":["../../../../../src/v2019C1/extensions/lifecycle/instance/find-instance.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAA;AACnD,OAAO,KAAK,KAAK,IAAI,MAAM,gBAAgB,CAAA;AAC3C,OAAO,KAAK,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAA;AAErE,iFAAiF;AACjF,KAAK,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAA;AAE3D;;;;GAIG;AACH,wBAAsB,iBAAiB,CACtC,MAAM,EAAE,MAAM,EACd,MAAM,EAAE;IACP,YAAY,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,UAAU,CAAC,CAAA;IACrC,OAAO,EAAE,GAAG,CAAC,UAAU,CAAA;IACvB,UAAU,EAAE,MAAM,GAAG,SAAS,CAAA;CAC9B,GACC,OAAO,CAAC,aAAa,GAAG,SAAS,CAAC,CAGpC;AAED;;;;;;;GAOG;AACH,wBAAsB,kBAAkB,CACvC,MAAM,EAAE,MAAM,EACd,MAAM,EAAE;IACP,YAAY,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,UAAU,CAAC,CAAA;IACrC,OAAO,EAAE,GAAG,CAAC,UAAU,CAAA;IACvB,UAAU,EAAE,MAAM,GAAG,SAAS,CAAA;CAC9B,GACC,OAAO,CAAC,aAAa,EAAE,CAAC,CAQ1B;AAwBD;;;;;GAKG;AACH,wBAAsB,0BAA0B,CAC/C,MAAM,EAAE,MAAM,EACd,MAAM,EAAE;IAAE,OAAO,EAAE,GAAG,CAAC,UAAU,CAAC;IAAC,UAAU,EAAE,MAAM,GAAG,SAAS,CAAA;CAAE,GACjE,OAAO,CAAC,gBAAgB,GAAG,SAAS,CAAC,CAGvC;AAED;;;;;GAKG;AACH,wBAAsB,2BAA2B,CAChD,MAAM,EAAE,MAAM,EACd,MAAM,EAAE;IAAE,OAAO,EAAE,GAAG,CAAC,UAAU,CAAC;IAAC,UAAU,EAAE,MAAM,GAAG,SAAS,CAAA;CAAE,GACjE,OAAO,CAAC,gBAAgB,EAAE,CAAC,CAW7B"}
1
+ {"version":3,"file":"find-instance.d.ts","sourceRoot":"","sources":["../../../../../src/v2019C1/extensions/lifecycle/instance/find-instance.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAA;AACnD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,yCAAyC,CAAA;AACvE,OAAO,KAAK,KAAK,IAAI,MAAM,gBAAgB,CAAA;AAC3C,OAAO,KAAK,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAA;AAErE,iFAAiF;AACjF,KAAK,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAA;AAE3D;;;;GAIG;AACH,wBAAsB,iBAAiB,CACtC,MAAM,EAAE,MAAM,EACd,MAAM,EAAE;IACP,YAAY,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,UAAU,CAAC,CAAA;IACrC,OAAO,EAAE,GAAG,CAAC,UAAU,CAAA;IACvB,UAAU,EAAE,MAAM,GAAG,SAAS,CAAA;IAC9B,uFAAuF;IACvF,QAAQ,CAAC,EAAE,QAAQ,CAAA;CACnB,GACC,OAAO,CAAC,aAAa,GAAG,SAAS,CAAC,CAGpC;AAED;;;;;;;GAOG;AACH,wBAAsB,kBAAkB,CACvC,MAAM,EAAE,MAAM,EACd,MAAM,EAAE;IACP,YAAY,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,UAAU,CAAC,CAAA;IACrC,OAAO,EAAE,GAAG,CAAC,UAAU,CAAA;IACvB,UAAU,EAAE,MAAM,GAAG,SAAS,CAAA;IAC9B,uFAAuF;IACvF,QAAQ,CAAC,EAAE,QAAQ,CAAA;CACnB,GACC,OAAO,CAAC,aAAa,EAAE,CAAC,CAQ1B;AAyBD;;;;;GAKG;AACH,wBAAsB,0BAA0B,CAC/C,MAAM,EAAE,MAAM,EACd,MAAM,EAAE;IAAE,OAAO,EAAE,GAAG,CAAC,UAAU,CAAC;IAAC,UAAU,EAAE,MAAM,GAAG,SAAS,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAA;CAAE,GACtF,OAAO,CAAC,gBAAgB,GAAG,SAAS,CAAC,CAGvC;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAsB,2BAA2B,CAChD,MAAM,EAAE,MAAM,EACd,MAAM,EAAE;IAAE,OAAO,EAAE,GAAG,CAAC,UAAU,CAAC;IAAC,UAAU,EAAE,MAAM,GAAG,SAAS,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAA;CAAE,GACtF,OAAO,CAAC,gBAAgB,EAAE,CAAC,CAsB7B"}
@@ -9,8 +9,8 @@ import type * as Core from '@dialecte/core';
9
9
  * (`layers/application`), then stamps instance lineage (`identity.writeIdentity` in
10
10
  * `stamp-template` mode) on every cloned element.
11
11
  *
12
- * The clone's uuid references are remapped by the `afterDeepClone` hook. The
13
- * instantiation provenance link (`ApplicationSclRef` -> `SclFileReference` back to
12
+ * The clone's uuid references are repointed by `reference.applyUuidRemap` over the
13
+ * combined mappings. The instantiation provenance link (`ApplicationSclRef` -> `SclFileReference` back to
14
14
  * the ASD) is written on the cloned root by `reference.writeProvenance`; SET policy
15
15
  * (naming, assign-to-application) is applied by consumer hooks, not here.
16
16
  *
@@ -1 +1 @@
1
- {"version":3,"file":"asd.d.ts","sourceRoot":"","sources":["../../../../../../src/v2019C1/extensions/lifecycle/instantiate/transaction/asd.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AACvD,OAAO,KAAK,EAAE,MAAM,EAAO,MAAM,kBAAkB,CAAA;AACnD,OAAO,KAAK,KAAK,IAAI,MAAM,gBAAgB,CAAA;AAE3C;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAsB,GAAG,CAAC,EAAE,EAAE,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC,CA6E7F"}
1
+ {"version":3,"file":"asd.d.ts","sourceRoot":"","sources":["../../../../../../src/v2019C1/extensions/lifecycle/instantiate/transaction/asd.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AACvD,OAAO,KAAK,EAAE,MAAM,EAAO,MAAM,kBAAkB,CAAA;AACnD,OAAO,KAAK,KAAK,IAAI,MAAM,gBAAgB,CAAA;AAE3C;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAsB,GAAG,CAAC,EAAE,EAAE,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC,CAkF7F"}
@@ -14,8 +14,8 @@ import type * as Core from '@dialecte/core';
14
14
  * subfunction) — the inverse of the `SubFunction -> Function` promotion applied
15
15
  * on extraction.
16
16
  *
17
- * The clone's uuid references are remapped by the `afterDeepClone` hook. The
18
- * instantiation provenance link (`FunctionSclRef` -> `SclFileReference` back to
17
+ * The clone's uuid references are repointed by `reference.applyUuidRemap` over the
18
+ * combined mappings. The instantiation provenance link (`FunctionSclRef` -> `SclFileReference` back to
19
19
  * the FSD) is written on the cloned root by `reference.writeProvenance`; SET
20
20
  * policy (naming, application assignment) is applied by consumer hooks, not here.
21
21
  *
@@ -1 +1 @@
1
- {"version":3,"file":"fsd.d.ts","sourceRoot":"","sources":["../../../../../../src/v2019C1/extensions/lifecycle/instantiate/transaction/fsd.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AACvD,OAAO,KAAK,EAAE,MAAM,EAAO,MAAM,kBAAkB,CAAA;AACnD,OAAO,KAAK,KAAK,IAAI,MAAM,gBAAgB,CAAA;AAE3C;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAsB,GAAG,CAAC,EAAE,EAAE,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC,CAoE7F"}
1
+ {"version":3,"file":"fsd.d.ts","sourceRoot":"","sources":["../../../../../../src/v2019C1/extensions/lifecycle/instantiate/transaction/fsd.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AACvD,OAAO,KAAK,EAAE,MAAM,EAAO,MAAM,kBAAkB,CAAA;AACnD,OAAO,KAAK,KAAK,IAAI,MAAM,gBAAgB,CAAA;AAE3C;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAsB,GAAG,CAAC,EAAE,EAAE,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC,CA0E7F"}
@@ -9,7 +9,8 @@ import type * as Core from '@dialecte/core';
9
9
  * the target structure. Direction-agnostic — returns the full `CloneMapping[]` so
10
10
  * the calling operation applies identity policy (extract strips, instantiate stamps).
11
11
  *
12
- * UUID remapping is handled by afterDeepClone hook via cumulativeCloneMappings.
12
+ * UUID remapping is the caller's responsibility via `reference.applyUuidRemap` over the
13
+ * returned mappings.
13
14
  */
14
15
  export declare function cloneApplicationContent(tx: Core.Transaction<Config>, params: {
15
16
  sourceQuery: Core.Query<Config>;
@@ -1 +1 @@
1
- {"version":3,"file":"clone-application.d.ts","sourceRoot":"","sources":["../../../../../../src/v2019C1/extensions/lifecycle/layers/application/clone-application.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAA;AACnD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,6CAA6C,CAAA;AACpF,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uDAAuD,CAAA;AAC5F,OAAO,KAAK,KAAK,IAAI,MAAM,gBAAgB,CAAA;AAC3C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAE/C;;;;;;;GAOG;AACH,wBAAsB,uBAAuB,CAC5C,EAAE,EAAE,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,EAC5B,MAAM,EAAE;IACP,WAAW,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;IAC/B,cAAc,EAAE,GAAG,CAAC,GAAG,CAAC,aAAa,CAAC,CAAA;IACtC,SAAS,EAAE,eAAe,CAAA;IAC1B,+FAA+F;IAC/F,IAAI,CAAC,EAAE,SAAS,CAAC,MAAM,CAAC,EAAE,CAAA;IAC1B,iBAAiB,CAAC,EAAE,iBAAiB,CAAA;CACrC,GACC,OAAO,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC,CA0F7B"}
1
+ {"version":3,"file":"clone-application.d.ts","sourceRoot":"","sources":["../../../../../../src/v2019C1/extensions/lifecycle/layers/application/clone-application.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAA;AACnD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,6CAA6C,CAAA;AACpF,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uDAAuD,CAAA;AAC5F,OAAO,KAAK,KAAK,IAAI,MAAM,gBAAgB,CAAA;AAC3C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAE/C;;;;;;;;GAQG;AACH,wBAAsB,uBAAuB,CAC5C,EAAE,EAAE,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,EAC5B,MAAM,EAAE;IACP,WAAW,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;IAC/B,cAAc,EAAE,GAAG,CAAC,GAAG,CAAC,aAAa,CAAC,CAAA;IACtC,SAAS,EAAE,eAAe,CAAA;IAC1B,+FAA+F;IAC/F,IAAI,CAAC,EAAE,SAAS,CAAC,MAAM,CAAC,EAAE,CAAA;IAC1B,iBAAiB,CAAC,EAAE,iBAAiB,CAAA;CACrC,GACC,OAAO,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC,CA0F7B"}
@@ -6,7 +6,8 @@ import type * as Core from '@dialecte/core';
6
6
  /**
7
7
  * Clones a Function/SubFunction tree into the target, promotes SubFunction to Function,
8
8
  * and extracts the data model.
9
- * UUID remapping is handled by afterDeepClone hook via cumulativeCloneMappings.
9
+ * UUID remapping is the caller's responsibility via `reference.applyUuidRemap` over the
10
+ * returned mappings (see the recipe that orchestrates this and the category clones).
10
11
  *
11
12
  * @param stripRootAttributes - Attribute names to remove from the root element only (shallow).
12
13
  * FSD extraction strips `templateUuid` so the clone becomes a fresh template.
@@ -23,7 +24,8 @@ export declare function cloneFunction(tx: Core.Transaction<Config>, params: {
23
24
  /**
24
25
  * Clones FunctionCategory trees that reference the given function (or its SubFunctions).
25
26
  * Each category is placed at its source-side structural level in the TEMPLATE structure.
26
- * UUID remapping is handled by afterDeepClone hook via cumulativeCloneMappings.
27
+ * UUID remapping (FunctionCatRef -> the cloned Function) is the caller's responsibility via
28
+ * `reference.applyUuidRemap` over the combined function + category mappings.
27
29
  */
28
30
  export declare function cloneFunctionCategories(tx: Core.Transaction<Config>, params: {
29
31
  sourceQuery: Core.Query<Config>;
@@ -1 +1 @@
1
- {"version":3,"file":"clone-function.d.ts","sourceRoot":"","sources":["../../../../../../src/v2019C1/extensions/lifecycle/layers/function/clone-function.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,kBAAkB,CAAA;AACnD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,6CAA6C,CAAA;AACpF,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uDAAuD,CAAA;AAE5F,OAAO,KAAK,KAAK,IAAI,MAAM,gBAAgB,CAAA;AAC3C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAI/C;;;;;;;;GAQG;AACH,wBAAsB,aAAa,CAClC,EAAE,EAAE,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,EAC5B,MAAM,EAAE;IACP,WAAW,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;IAC/B,WAAW,EAAE,GAAG,CAAC,GAAG,CAAC,UAAU,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,aAAa,CAAC,CAAA;IACzD,eAAe,EAAE,GAAG,CAAC,GAAG,CAAC,YAAY,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,cAAc,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;IACjF,IAAI,CAAC,EAAE,SAAS,CAAC,MAAM,CAAC,EAAE,CAAA;IAC1B,mBAAmB,CAAC,EAAE,SAAS,MAAM,EAAE,CAAA;IACvC,iBAAiB,CAAC,EAAE,iBAAiB,CAAA;CACrC,GACC,OAAO,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC,CA6B7B;AAED;;;;GAIG;AACH,wBAAsB,uBAAuB,CAC5C,EAAE,EAAE,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,EAC5B,MAAM,EAAE;IACP,WAAW,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;IAC/B,WAAW,EAAE,GAAG,CAAC,GAAG,CAAC,UAAU,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,aAAa,CAAC,CAAA;IACzD,SAAS,EAAE,eAAe,CAAA;IAC1B,mBAAmB,CAAC,EAAE,OAAO,CAAA;CAC7B,GACC,OAAO,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC,CAoC7B"}
1
+ {"version":3,"file":"clone-function.d.ts","sourceRoot":"","sources":["../../../../../../src/v2019C1/extensions/lifecycle/layers/function/clone-function.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,kBAAkB,CAAA;AACnD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,6CAA6C,CAAA;AACpF,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uDAAuD,CAAA;AAE5F,OAAO,KAAK,KAAK,IAAI,MAAM,gBAAgB,CAAA;AAC3C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAI/C;;;;;;;;;GASG;AACH,wBAAsB,aAAa,CAClC,EAAE,EAAE,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,EAC5B,MAAM,EAAE;IACP,WAAW,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;IAC/B,WAAW,EAAE,GAAG,CAAC,GAAG,CAAC,UAAU,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,aAAa,CAAC,CAAA;IACzD,eAAe,EAAE,GAAG,CAAC,GAAG,CAAC,YAAY,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,cAAc,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;IACjF,IAAI,CAAC,EAAE,SAAS,CAAC,MAAM,CAAC,EAAE,CAAA;IAC1B,mBAAmB,CAAC,EAAE,SAAS,MAAM,EAAE,CAAA;IACvC,iBAAiB,CAAC,EAAE,iBAAiB,CAAA;CACrC,GACC,OAAO,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC,CA6B7B;AAED;;;;;GAKG;AACH,wBAAsB,uBAAuB,CAC5C,EAAE,EAAE,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,EAC5B,MAAM,EAAE;IACP,WAAW,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;IAC/B,WAAW,EAAE,GAAG,CAAC,GAAG,CAAC,UAAU,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,aAAa,CAAC,CAAA;IACzD,SAAS,EAAE,eAAe,CAAA;IAC1B,mBAAmB,CAAC,EAAE,OAAO,CAAA;CAC7B,GACC,OAAO,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC,CAqC7B"}
@@ -4,4 +4,6 @@ export type { LifecycleApplyParams, LifecycleScenario, LifecycleTarget, Lifecycl
4
4
  export type { AppliedInstances, ApplyResult } from './apply';
5
5
  export { presentationScope } from './report/public';
6
6
  export type { PresentationScope } from './report/public';
7
+ export { TEMPLATE_UUID_WARNING_INFO } from './validate';
8
+ export type { TemplateUuidWarning, TemplateUuidWarningCode, TemplateUuidWarningInfo, } from './validate';
7
9
  //# sourceMappingURL=public.d.ts.map