deepadata-edm-sdk 0.8.9 → 0.8.11

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 (40) hide show
  1. package/README.md +281 -278
  2. package/dist/assembler.d.ts +24 -14
  3. package/dist/assembler.d.ts.map +1 -1
  4. package/dist/assembler.js +37 -15
  5. package/dist/assembler.js.map +1 -1
  6. package/dist/extractors/generate-field-block.d.ts +44 -0
  7. package/dist/extractors/generate-field-block.d.ts.map +1 -0
  8. package/dist/extractors/generate-field-block.js +256 -0
  9. package/dist/extractors/generate-field-block.js.map +1 -0
  10. package/dist/extractors/llm-extractor.d.ts +1 -1
  11. package/dist/extractors/llm-extractor.d.ts.map +1 -1
  12. package/dist/extractors/llm-extractor.js +50 -52
  13. package/dist/extractors/llm-extractor.js.map +1 -1
  14. package/dist/extractors/output-sanitizer.js +1 -1
  15. package/dist/extractors/output-sanitizer.js.map +1 -1
  16. package/dist/extractors/profile-prompts.d.ts +10 -7
  17. package/dist/extractors/profile-prompts.d.ts.map +1 -1
  18. package/dist/extractors/profile-prompts.js +166 -163
  19. package/dist/extractors/profile-prompts.js.map +1 -1
  20. package/dist/schema/edm-schema.d.ts +46 -36
  21. package/dist/schema/edm-schema.d.ts.map +1 -1
  22. package/dist/schema/edm-schema.js +23 -6
  23. package/dist/schema/edm-schema.js.map +1 -1
  24. package/dist/schema/spec-truth.d.ts +50 -0
  25. package/dist/schema/spec-truth.d.ts.map +1 -0
  26. package/dist/schema/spec-truth.js +164 -0
  27. package/dist/schema/spec-truth.js.map +1 -0
  28. package/dist/schema/types.d.ts +14 -12
  29. package/dist/schema/types.d.ts.map +1 -1
  30. package/dist/schema/types.js +31 -1
  31. package/dist/schema/types.js.map +1 -1
  32. package/dist/validator.d.ts +20 -7
  33. package/dist/validator.d.ts.map +1 -1
  34. package/dist/validator.js +78 -68
  35. package/dist/validator.js.map +1 -1
  36. package/dist/version.d.ts +13 -9
  37. package/dist/version.d.ts.map +1 -1
  38. package/dist/version.js +31 -4
  39. package/dist/version.js.map +1 -1
  40. package/package.json +3 -2
@@ -8,42 +8,52 @@ import Anthropic from "@anthropic-ai/sdk";
8
8
  import type { EdmArtifact, ExtractionOptions, LlmExtractedFields, EdmProfile, PartnerProfileId } from "./schema/types.js";
9
9
  import { type ConversationMessage, type ChunkConversationOptions } from "./conversation.js";
10
10
  /**
11
- * Essential Profile: 5 domains, 24 fields
11
+ * PROFILE MANIFESTS GUARDED RESTATEMENT of the spec composites.
12
+ *
13
+ * Field membership per profile is defined by the edm-spec composite
14
+ * schemas (edm.v0.8.{essential,extended,full}.schema.json in the installed
15
+ * `edm-spec` package). These literal manifests restate the composites'
16
+ * property sets so the arrays keep literal-union TypeScript types and a
17
+ * stable filter order; tests/spec-drift-guard.test.ts asserts exact set
18
+ * equality with the composites in both directions and fails `npm test`
19
+ * loudly on any drift (tidy-the-house commitment, ADR-0030).
20
+ */
21
+ /**
22
+ * Essential Profile: 5 domains
12
23
  * Target: memory platforms, agent frameworks, AI assistants
24
+ * Field membership = the spec essential composite (drift-guarded).
13
25
  */
14
26
  export declare const ESSENTIAL_PROFILE_FIELDS: {
15
27
  readonly meta: readonly ["id", "version", "profile", "created_at", "updated_at", "locale", "owner_user_id", "parent_id", "visibility", "pii_tier", "consent_basis"];
16
28
  readonly core: readonly ["anchor", "spark", "wound", "fuel", "bridge", "echo"];
17
29
  readonly constellation: readonly ["emotion_primary", "emotion_subtone", "narrative_arc"];
18
- readonly governance: readonly ["jurisdiction", "retention_policy", "subject_rights"];
19
- readonly telemetry: readonly ["entry_confidence", "extraction_model"];
30
+ readonly governance: readonly ["jurisdiction", "retention_policy", "subject_rights", "exportability", "k_anonymity", "policy_labels", "masking_rules"];
31
+ readonly telemetry: readonly ["entry_confidence", "extraction_model", "extraction_provider", "extraction_notes"];
20
32
  };
21
33
  /**
22
- * Extended Profile: 8 domains, ~50 fields
23
- * Target: journaling apps, companion AI, workplace wellness
24
- */
25
- /**
26
- * Extended Profile: 7 domains, 50 fields
34
+ * Extended Profile: 7 domains
27
35
  * Target: journaling apps, companion AI, workplace wellness
28
36
  * Impulse domain is NOT included in Extended profile
37
+ * Field membership = the spec extended composite (drift-guarded).
29
38
  */
30
39
  export declare const EXTENDED_PROFILE_FIELDS: {
31
40
  readonly meta: readonly ["id", "version", "profile", "created_at", "updated_at", "locale", "owner_user_id", "parent_id", "visibility", "pii_tier", "source_type", "source_context", "consent_basis", "consent_scope", "tags"];
32
41
  readonly core: readonly ["anchor", "spark", "wound", "fuel", "bridge", "echo", "narrative"];
33
- readonly constellation: readonly ["emotion_primary", "emotion_subtone", "higher_order_emotion", "meta_emotional_state", "interpersonal_affect", "narrative_arc", "relational_dynamics", "temporal_context", "memory_type", "media_format", "narrative_archetype", "symbolic_anchor", "relational_perspective", "temporal_rhythm", "identity_thread", "expressed_insight", "transformational_pivot", "somatic_signature"];
42
+ readonly constellation: readonly ["emotion_primary", "emotion_subtone", "higher_order_emotion", "meta_emotional_state", "interpersonal_affect", "narrative_arc", "relational_dynamics", "temporal_context", "memory_type", "media_format", "narrative_archetype", "symbolic_anchor", "relational_perspective", "temporal_rhythm", "identity_thread", "expressed_insight", "transformational_pivot", "somatic_signature", "arc_type"];
34
43
  readonly milky_way: readonly ["event_type", "location_context", "associated_people", "visibility_context", "tone_shift"];
35
44
  readonly gravity: readonly ["emotional_weight", "valence", "tether_type", "recurrence_pattern", "strength_score"];
36
- readonly governance: readonly ["jurisdiction", "retention_policy", "subject_rights"];
37
- readonly telemetry: readonly ["entry_confidence", "extraction_model"];
45
+ readonly governance: readonly ["jurisdiction", "retention_policy", "subject_rights", "exportability", "k_anonymity", "policy_labels", "masking_rules"];
46
+ readonly telemetry: readonly ["entry_confidence", "extraction_model", "extraction_provider", "extraction_notes"];
38
47
  };
39
48
  /**
40
49
  * Full Profile: all 10 domains, all fields
41
50
  * Target: therapy platforms, clinical tools, regulated systems
51
+ * Field membership = the spec full composite (drift-guarded).
42
52
  */
43
53
  export declare const FULL_PROFILE_FIELDS: {
44
- readonly meta: readonly ["id", "version", "profile", "created_at", "updated_at", "locale", "owner_user_id", "parent_id", "visibility", "pii_tier", "source_type", "source_context", "consent_basis", "consent_scope", "consent_revoked_at", "tags"];
54
+ readonly meta: readonly ["id", "version", "profile", "created_at", "source_timestamp", "updated_at", "locale", "owner_user_id", "parent_id", "visibility", "pii_tier", "source_type", "source_context", "consent_basis", "consent_scope", "consent_revoked_at", "tags"];
45
55
  readonly core: readonly ["anchor", "spark", "wound", "fuel", "bridge", "echo", "narrative"];
46
- readonly constellation: readonly ["emotion_primary", "emotion_subtone", "higher_order_emotion", "meta_emotional_state", "interpersonal_affect", "narrative_arc", "relational_dynamics", "temporal_context", "memory_type", "media_format", "narrative_archetype", "symbolic_anchor", "relational_perspective", "temporal_rhythm", "identity_thread", "expressed_insight", "transformational_pivot", "somatic_signature"];
56
+ readonly constellation: readonly ["emotion_primary", "emotion_subtone", "higher_order_emotion", "meta_emotional_state", "interpersonal_affect", "narrative_arc", "relational_dynamics", "temporal_context", "memory_type", "media_format", "narrative_archetype", "symbolic_anchor", "relational_perspective", "temporal_rhythm", "identity_thread", "expressed_insight", "transformational_pivot", "somatic_signature", "arc_type"];
47
57
  readonly milky_way: readonly ["event_type", "location_context", "associated_people", "visibility_context", "tone_shift"];
48
58
  readonly gravity: readonly ["emotional_weight", "emotional_density", "valence", "viscosity", "gravity_type", "tether_type", "recall_triggers", "retrieval_keys", "nearby_themes", "recurrence_pattern", "strength_score", "temporal_decay", "resilience_markers", "adaptation_trajectory"];
49
59
  readonly impulse: readonly ["primary_energy", "drive_state", "motivational_orientation", "temporal_focus", "directionality", "social_visibility", "urgency", "risk_posture", "agency_level", "regulation_state", "attachment_style", "coping_style"];
@@ -111,7 +121,7 @@ export interface ConversationChunkArtifact {
111
121
  * extracted as a conversation input (framed, subject-anchored, stance-guarded),
112
122
  * and chunks after the first are threaded to the first chunk's artifact via
113
123
  * metadata.parentId. meta.parent_id is defined in ALL profile schemas
114
- * (essential, extended, full) per the published v0.8.0 schema set, so the
124
+ * (essential, extended, full) per the published v0.8-line schema set, so the
115
125
  * linkage appears in the artifact body for every profile — populated for
116
126
  * chunks past the first, explicit null otherwise (whitepaper §5.2 No
117
127
  * Omission). Short conversations produce exactly one artifact.
@@ -1 +1 @@
1
- {"version":3,"file":"assembler.d.ts","sourceRoot":"","sources":["../src/assembler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"assembler.d.ts","sourceRoot":"","sources":["../src/assembler.ts"],"names":[],"mappings":"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"}
package/dist/assembler.js CHANGED
@@ -9,8 +9,20 @@ import { createMeta, createGovernance, createTelemetry, createSystem, createCros
9
9
  // Profile Field Definitions
10
10
  // =============================================================================
11
11
  /**
12
- * Essential Profile: 5 domains, 24 fields
12
+ * PROFILE MANIFESTS GUARDED RESTATEMENT of the spec composites.
13
+ *
14
+ * Field membership per profile is defined by the edm-spec composite
15
+ * schemas (edm.v0.8.{essential,extended,full}.schema.json in the installed
16
+ * `edm-spec` package). These literal manifests restate the composites'
17
+ * property sets so the arrays keep literal-union TypeScript types and a
18
+ * stable filter order; tests/spec-drift-guard.test.ts asserts exact set
19
+ * equality with the composites in both directions and fails `npm test`
20
+ * loudly on any drift (tidy-the-house commitment, ADR-0030).
21
+ */
22
+ /**
23
+ * Essential Profile: 5 domains
13
24
  * Target: memory platforms, agent frameworks, AI assistants
25
+ * Field membership = the spec essential composite (drift-guarded).
14
26
  */
15
27
  export const ESSENTIAL_PROFILE_FIELDS = {
16
28
  meta: [
@@ -19,17 +31,20 @@ export const ESSENTIAL_PROFILE_FIELDS = {
19
31
  ],
20
32
  core: ["anchor", "spark", "wound", "fuel", "bridge", "echo"],
21
33
  constellation: ["emotion_primary", "emotion_subtone", "narrative_arc"],
22
- governance: ["jurisdiction", "retention_policy", "subject_rights"],
23
- telemetry: ["entry_confidence", "extraction_model"],
34
+ governance: [
35
+ "jurisdiction", "retention_policy", "subject_rights", "exportability",
36
+ "k_anonymity", "policy_labels", "masking_rules"
37
+ ],
38
+ telemetry: [
39
+ "entry_confidence", "extraction_model", "extraction_provider",
40
+ "extraction_notes"
41
+ ],
24
42
  };
25
43
  /**
26
- * Extended Profile: 8 domains, ~50 fields
27
- * Target: journaling apps, companion AI, workplace wellness
28
- */
29
- /**
30
- * Extended Profile: 7 domains, 50 fields
44
+ * Extended Profile: 7 domains
31
45
  * Target: journaling apps, companion AI, workplace wellness
32
46
  * Impulse domain is NOT included in Extended profile
47
+ * Field membership = the spec extended composite (drift-guarded).
33
48
  */
34
49
  export const EXTENDED_PROFILE_FIELDS = {
35
50
  meta: [
@@ -43,21 +58,28 @@ export const EXTENDED_PROFILE_FIELDS = {
43
58
  "interpersonal_affect", "narrative_arc", "relational_dynamics", "temporal_context",
44
59
  "memory_type", "media_format", "narrative_archetype", "symbolic_anchor",
45
60
  "relational_perspective", "temporal_rhythm", "identity_thread", "expressed_insight",
46
- "transformational_pivot", "somatic_signature"
61
+ "transformational_pivot", "somatic_signature", "arc_type"
47
62
  ],
48
63
  milky_way: ["event_type", "location_context", "associated_people", "visibility_context", "tone_shift"],
49
64
  gravity: ["emotional_weight", "valence", "tether_type", "recurrence_pattern", "strength_score"],
50
- governance: ["jurisdiction", "retention_policy", "subject_rights"],
51
- telemetry: ["entry_confidence", "extraction_model"],
65
+ governance: [
66
+ "jurisdiction", "retention_policy", "subject_rights", "exportability",
67
+ "k_anonymity", "policy_labels", "masking_rules"
68
+ ],
69
+ telemetry: [
70
+ "entry_confidence", "extraction_model", "extraction_provider",
71
+ "extraction_notes"
72
+ ],
52
73
  };
53
74
  /**
54
75
  * Full Profile: all 10 domains, all fields
55
76
  * Target: therapy platforms, clinical tools, regulated systems
77
+ * Field membership = the spec full composite (drift-guarded).
56
78
  */
57
79
  export const FULL_PROFILE_FIELDS = {
58
80
  meta: [
59
- "id", "version", "profile", "created_at", "updated_at", "locale",
60
- "owner_user_id", "parent_id", "visibility", "pii_tier", "source_type",
81
+ "id", "version", "profile", "created_at", "source_timestamp", "updated_at",
82
+ "locale", "owner_user_id", "parent_id", "visibility", "pii_tier", "source_type",
61
83
  "source_context", "consent_basis", "consent_scope", "consent_revoked_at", "tags"
62
84
  ],
63
85
  core: ["anchor", "spark", "wound", "fuel", "bridge", "echo", "narrative"],
@@ -66,7 +88,7 @@ export const FULL_PROFILE_FIELDS = {
66
88
  "interpersonal_affect", "narrative_arc", "relational_dynamics", "temporal_context",
67
89
  "memory_type", "media_format", "narrative_archetype", "symbolic_anchor",
68
90
  "relational_perspective", "temporal_rhythm", "identity_thread", "expressed_insight",
69
- "transformational_pivot", "somatic_signature"
91
+ "transformational_pivot", "somatic_signature", "arc_type"
70
92
  ],
71
93
  milky_way: ["event_type", "location_context", "associated_people", "visibility_context", "tone_shift"],
72
94
  gravity: [
@@ -328,7 +350,7 @@ function makeAnthropicClassifier(client, model, sourceText) {
328
350
  * extracted as a conversation input (framed, subject-anchored, stance-guarded),
329
351
  * and chunks after the first are threaded to the first chunk's artifact via
330
352
  * metadata.parentId. meta.parent_id is defined in ALL profile schemas
331
- * (essential, extended, full) per the published v0.8.0 schema set, so the
353
+ * (essential, extended, full) per the published v0.8-line schema set, so the
332
354
  * linkage appears in the artifact body for every profile — populated for
333
355
  * chunks past the first, explicit null otherwise (whitepaper §5.2 No
334
356
  * Omission). Short conversations produce exactly one artifact.
@@ -1 +1 @@
1
- {"version":3,"file":"assembler.js","sourceRoot":"","sources":["../src/assembler.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAClD,OAAO,EAAE,cAAc,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AACtF,OAAO,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AACzF,OAAO,EAAE,eAAe,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AACnG,OAAO,EACL,UAAU,EACV,gBAAgB,EAChB,aAAa,EACb,oBAAoB,EACpB,uBAAuB,GACxB,MAAM,8BAA8B,CAAC;AACtC,OAAO,EACL,iBAAiB,GAGlB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,UAAU,EACV,gBAAgB,EAChB,eAAe,EACf,YAAY,EACZ,gBAAgB,EAChB,gBAAgB,GACjB,MAAM,mCAAmC,CAAC;AAE3C,gFAAgF;AAChF,4BAA4B;AAC5B,gFAAgF;AAEhF;;;GAGG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG;IACtC,IAAI,EAAE;QACJ,IAAI,EAAE,SAAS,EAAE,SAAS,EAAE,YAAY,EAAE,YAAY,EAAE,QAAQ;QAChE,eAAe,EAAE,WAAW,EAAE,YAAY,EAAE,UAAU,EAAE,eAAe;KACxE;IACD,IAAI,EAAE,CAAC,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,CAAC;IAC5D,aAAa,EAAE,CAAC,iBAAiB,EAAE,iBAAiB,EAAE,eAAe,CAAC;IACtE,UAAU,EAAE,CAAC,cAAc,EAAE,kBAAkB,EAAE,gBAAgB,CAAC;IAClE,SAAS,EAAE,CAAC,kBAAkB,EAAE,kBAAkB,CAAC;CAC3C,CAAC;AAEX;;;GAGG;AACH;;;;GAIG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG;IACrC,IAAI,EAAE;QACJ,IAAI,EAAE,SAAS,EAAE,SAAS,EAAE,YAAY,EAAE,YAAY,EAAE,QAAQ;QAChE,eAAe,EAAE,WAAW,EAAE,YAAY,EAAE,UAAU,EAAE,aAAa;QACrE,gBAAgB,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM;KAC3D;IACD,IAAI,EAAE,CAAC,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,WAAW,CAAC;IACzE,aAAa,EAAE;QACb,iBAAiB,EAAE,iBAAiB,EAAE,sBAAsB,EAAE,sBAAsB;QACpF,sBAAsB,EAAE,eAAe,EAAE,qBAAqB,EAAE,kBAAkB;QAClF,aAAa,EAAE,cAAc,EAAE,qBAAqB,EAAE,iBAAiB;QACvE,wBAAwB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,mBAAmB;QACnF,wBAAwB,EAAE,mBAAmB;KAC9C;IACD,SAAS,EAAE,CAAC,YAAY,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,YAAY,CAAC;IACtG,OAAO,EAAE,CAAC,kBAAkB,EAAE,SAAS,EAAE,aAAa,EAAE,oBAAoB,EAAE,gBAAgB,CAAC;IAC/F,UAAU,EAAE,CAAC,cAAc,EAAE,kBAAkB,EAAE,gBAAgB,CAAC;IAClE,SAAS,EAAE,CAAC,kBAAkB,EAAE,kBAAkB,CAAC;CAC3C,CAAC;AAEX;;;GAGG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG;IACjC,IAAI,EAAE;QACJ,IAAI,EAAE,SAAS,EAAE,SAAS,EAAE,YAAY,EAAE,YAAY,EAAE,QAAQ;QAChE,eAAe,EAAE,WAAW,EAAE,YAAY,EAAE,UAAU,EAAE,aAAa;QACrE,gBAAgB,EAAE,eAAe,EAAE,eAAe,EAAE,oBAAoB,EAAE,MAAM;KACjF;IACD,IAAI,EAAE,CAAC,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,WAAW,CAAC;IACzE,aAAa,EAAE;QACb,iBAAiB,EAAE,iBAAiB,EAAE,sBAAsB,EAAE,sBAAsB;QACpF,sBAAsB,EAAE,eAAe,EAAE,qBAAqB,EAAE,kBAAkB;QAClF,aAAa,EAAE,cAAc,EAAE,qBAAqB,EAAE,iBAAiB;QACvE,wBAAwB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,mBAAmB;QACnF,wBAAwB,EAAE,mBAAmB;KAC9C;IACD,SAAS,EAAE,CAAC,YAAY,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,YAAY,CAAC;IACtG,OAAO,EAAE;QACP,kBAAkB,EAAE,mBAAmB,EAAE,SAAS,EAAE,WAAW,EAAE,cAAc;QAC/E,aAAa,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,eAAe;QACnE,oBAAoB,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,uBAAuB;KACxG;IACD,OAAO,EAAE;QACP,gBAAgB,EAAE,aAAa,EAAE,0BAA0B,EAAE,gBAAgB;QAC7E,gBAAgB,EAAE,mBAAmB,EAAE,SAAS,EAAE,cAAc;QAChE,cAAc,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,cAAc;KACvE;IACD,UAAU,EAAE;QACV,cAAc,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,eAAe;QACrE,aAAa,EAAE,eAAe,EAAE,eAAe;KAChD;IACD,SAAS,EAAE;QACT,kBAAkB,EAAE,kBAAkB,EAAE,qBAAqB;QAC7D,kBAAkB;KACnB;IACD,MAAM,EAAE,CAAC,YAAY,EAAE,SAAS,CAAC;IACjC,UAAU,EAAE;QACV,kBAAkB,EAAE,sBAAsB,EAAE,iBAAiB;QAC7D,kBAAkB;KACnB;CACO,CAAC;AAEX;;GAEG;AACH,MAAM,UAAU,gBAAgB,CAAC,OAAmB;IAClD,QAAQ,OAAO,EAAE,CAAC;QAChB,KAAK,WAAW;YACd,OAAO,wBAAwB,CAAC;QAClC,KAAK,UAAU;YACb,OAAO,uBAAuB,CAAC;QACjC,KAAK,MAAM;YACT,OAAO,mBAAmB,CAAC;QAC7B;YACE,mFAAmF;YACnF,OAAO,uBAAuB,CAAC;IACnC,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,iBAAiB,CAAC,OAAmB;IACnD,OAAO,MAAM,CAAC,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,CAAC;AAChD,CAAC;AAED,gFAAgF;AAChF,iCAAiC;AACjC,gFAAgF;AAEhF;;GAEG;AACH,MAAM,UAAU,kBAAkB,CAAC,OAAe;IAChD,OAAO,CAAC,WAAW,EAAE,UAAU,EAAE,MAAM,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;AAC7D,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,gBAAgB,CAAC,OAAe;IAC9C,OAAO,OAAO,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;AACxC,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,mBAAmB,CAAC,OAAe;IACjD,OAAO,OAAO,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;AAClE,CAAC;AAED,gFAAgF;AAChF,oBAAoB;AACpB,gFAAgF;AAEhF;;GAEG;AACH,SAAS,kBAAkB,CACzB,GAAM,EACN,aAAgC;IAEhC,MAAM,QAAQ,GAAe,EAAE,CAAC;IAChC,KAAK,MAAM,KAAK,IAAI,aAAa,EAAE,CAAC;QAClC,IAAI,KAAK,IAAI,GAAG,EAAE,CAAC;YAChB,QAAoC,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC;QAC5D,CAAC;IACH,CAAC;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED;;GAEG;AACH,SAAS,sBAAsB,CAC7B,UAAmC,EACnC,aAAgC;IAEhC,MAAM,QAAQ,GAA4B,EAAE,CAAC;IAE7C,KAAK,MAAM,KAAK,IAAI,aAAa,EAAE,CAAC;QAClC,IAAI,KAAK,IAAI,UAAU,EAAE,CAAC;YACxB,MAAM,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC;YAEhC,kEAAkE;YAClE,IAAI,KAAK,KAAK,kBAAkB,IAAI,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;gBACvE,MAAM,EAAE,GAAG,KAAgC,CAAC;gBAC5C,QAAQ,CAAC,KAAK,CAAC,GAAG;oBAChB,KAAK,EAAE,EAAE,CAAC,KAAK;oBACf,QAAQ,EAAE,EAAE,CAAC,QAAQ;oBACrB,SAAS,EAAE,EAAE,CAAC,SAAS;iBACxB,CAAC;YACJ,CAAC;YACD,qEAAqE;iBAChE,IAAI,KAAK,KAAK,gBAAgB,IAAI,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;gBAC1E,MAAM,EAAE,GAAG,KAAgC,CAAC;gBAC5C,QAAQ,CAAC,KAAK,CAAC,GAAG;oBAChB,QAAQ,EAAE,EAAE,CAAC,QAAQ;oBACrB,QAAQ,EAAE,EAAE,CAAC,QAAQ;oBACrB,WAAW,EAAE,EAAE,CAAC,WAAW;iBAC5B,CAAC;YACJ,CAAC;iBACI,CAAC;gBACJ,QAAQ,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC;YAC1B,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,eAAe,CAC7B,QAAiC,EACjC,OAAmB;IAEnB,MAAM,aAAa,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC;IAChD,MAAM,QAAQ,GAA4B,EAAE,CAAC;IAE7C,KAAK,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,EAAE,CAAC;QAC7D,MAAM,UAAU,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC;QACpC,IAAI,UAAU,IAAI,OAAO,UAAU,KAAK,QAAQ,EAAE,CAAC;YACjD,IAAI,MAAM,KAAK,YAAY,EAAE,CAAC;gBAC5B,QAAQ,CAAC,MAAM,CAAC,GAAG,sBAAsB,CACvC,UAAqC,EACrC,MAAM,CACP,CAAC;YACJ,CAAC;iBAAM,CAAC;gBACN,QAAQ,CAAC,MAAM,CAAC,GAAG,kBAAkB,CACnC,UAAqC,EACrC,MAAM,CACP,CAAC;YACJ,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC;AAWD;;;;;GAKG;AACH,KAAK,UAAU,qBAAqB,CAAC,MAKpC;IACC,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,YAAY,EAAE,QAAQ,EAAE,GAAG,MAAM,CAAC;IAE9D,MAAM,aAAa,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC;IAC5C,IAAI,MAAM,GAAG,aAAa,CAAC;IAC3B,MAAM,SAAS,GAAa,EAAE,CAAC;IAE/B,MAAM,OAAO,GAAG,SAAS,CAAC,SAAS,CAAwC,CAAC;IAC5E,MAAM,UAAU,GAAG,CAAC,CAAC,OAAO,IAAI,OAAO,OAAO,KAAK,QAAQ,CAAC;IAC5D,MAAM,MAAM,GAAG,UAAU,IAAI,OAAO,OAAO,CAAC,kBAAkB,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAE,OAAO,CAAC,kBAAkB,CAAY,CAAC,CAAC,CAAC,CAAC,CAAC;IAE3H,2EAA2E;IAC3E,qEAAqE;IACrE,yEAAyE;IACzE,0EAA0E;IAC1E,0EAA0E;IAC1E,qEAAqE;IACrE,sEAAsE;IACtE,4EAA4E;IAC5E,MAAM,WAAW,GAAG,UAAU;QAC5B,CAAC,CAAC,CAAC,MAAM,KAAK,OAAO,IAAI,MAAM,KAAK,WAAW,IAAI,MAAM,KAAK,IAAI,CAAC,IAAI,MAAM,IAAI,GAAG;QACpF,CAAC,CAAC,MAAM,KAAK,IAAI,CAAC;IACpB,MAAM,YAAY,GAChB,YAAY,KAAK,IAAI;QACrB,CAAC,YAAY,KAAK,MAAM,IAAI,OAAO,CAAC,SAAS,KAAK,cAAc,IAAI,WAAW,CAAC,CAAC;IAEnF,IAAI,YAAY,IAAI,QAAQ,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;QAC7C,MAAM,IAAI,GAAG,SAAS,CAAC,MAAM,CAAwC,CAAC;QACtE,MAAM,OAAO,GACX,CAAC,OAAO,IAAI,EAAE,CAAC,WAAW,CAAC,KAAK,QAAQ,IAAI,IAAI,CAAC,WAAW,CAAC,CAAC;YAC9D,CAAC,QAAQ,EAAE,OAAO,EAAE,MAAM,CAAC;iBACxB,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;iBACnD,MAAM,CAAC,OAAO,CAAC;iBACf,IAAI,CAAC,IAAI,CAAC;YACb,wBAAwB,CAAC;QAC3B,IAAI,CAAC;YACH,MAAM,UAAU,GAAG,MAAM,QAAQ,CAAC,OAAO,CAAC,CAAC;YAC3C,MAAM,QAAQ,GAAG,aAAa,CAAC,aAAa,EAAE,UAAU,CAAC,CAAC;YAC1D,IAAI,QAAQ,KAAK,aAAa,EAAE,CAAC;gBAC/B,MAAM,GAAG,QAAQ,CAAC;gBAClB,SAAS,CAAC,IAAI,CAAC,8BAA8B,UAAU,aAAa,aAAa,IAAI,MAAM,GAAG,CAAC,CAAC;YAClG,CAAC;QACH,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,iEAAiE;YACjE,kEAAkE;YAClE,SAAS,CAAC,IAAI,CAAC,yBAAyB,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;QACxG,CAAC;IACH,CAAC;IAED,MAAM,OAAO,GAAG,gBAAgB,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;IACpD,SAAS,CAAC,OAAO,CAAC,uBAAuB,MAAM,IAAI,MAAM,EAAE,CAAC,CAAC;IAC7D,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACvB,SAAS,CAAC,IAAI,CAAC,yBAAyB,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAChE,CAAC;IAED,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;AAChD,CAAC;AAED,SAAS,UAAU,CAAC,GAAG,KAAoC;IACzD,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAChD,OAAO,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC;AAC3C,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,kBAAkB,CAAC,OAA0B;IACjE,MAAM,EACJ,OAAO,EACP,QAAQ,EACR,KAAK,EACL,QAAQ,GAAG,MAAM,EACjB,WAAW,EACX,OAAO,GAAG,MAAM,EAChB,SAAS,EACT,YAAY,GAAG,MAAM,GACtB,GAAG,OAAO,CAAC;IACZ,MAAM,WAAW,GAAG,EAAE,SAAS,EAAE,CAAC;IAElC,IAAI,SAAS,CAAC;IACd,IAAI,QAAQ,GAAqE,IAAI,CAAC;IAEtF,IAAI,QAAQ,KAAK,QAAQ,EAAE,CAAC;QAC1B,MAAM,MAAM,GAAG,kBAAkB,EAAE,CAAC;QACpC,SAAS,GAAG,MAAM,iBAAiB,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,OAAO,EAAE,WAAW,CAAC,CAAC;QAC/F,QAAQ,GAAG,8BAA8B,CAAC,MAAM,EAAE,SAAS,CAAC,KAAK,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;IACnF,CAAC;SAAM,IAAI,QAAQ,KAAK,MAAM,EAAE,CAAC;QAC/B,MAAM,MAAM,GAAG,gBAAgB,EAAE,CAAC;QAClC,SAAS,GAAG,MAAM,eAAe,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,IAAI,cAAc,EAAE,EAAE,OAAO,EAAE,WAAW,CAAC,CAAC;QACpG,QAAQ,GAAG,8BAA8B,CAAC,MAAM,EAAE,SAAS,CAAC,KAAK,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;IACnF,CAAC;SAAM,CAAC;QACN,MAAM,MAAM,GAAG,qBAAqB,EAAE,CAAC;QACvC,SAAS,GAAG,MAAM,cAAc,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,WAAW,CAAC,CAAC;QAC/E,QAAQ,GAAG,uBAAuB,CAAC,MAAM,EAAE,SAAS,CAAC,KAAK,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5E,CAAC;IAED,MAAM,SAAS,GAAG,SAAS,CAAC,SAAmC,CAAC;IAChE,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,GAAG,MAAM,qBAAqB,CAAC;QACvD,SAAS,EAAE,SAAoC;QAC/C,OAAO;QACP,YAAY;QACZ,QAAQ;KACT,CAAC,CAAC;IAEH,qCAAqC;IACrC,MAAM,QAAQ,GAAG,uBAAuB,CACtC,SAAS,EACT,QAAQ,EACR;QACE,UAAU,EAAE,SAAS,CAAC,UAAU;QAChC,KAAK,EAAE,SAAS,CAAC,KAAK;QACtB,OAAO,EAAE,SAAS,CAAC,OAAO;QAC1B,QAAQ;QACR,KAAK,EAAE,UAAU,CAAC,SAAS,CAAC,KAAK,EAAE,UAAU,CAAC;QAC9C,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI;QACvB,QAAQ,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK;KAC1B,CACF,CAAC;IAEF,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,SAAS,8BAA8B,CACrC,MAAc,EACd,KAAa,EACb,UAA8B;IAE9B,IAAI,CAAC,UAAU;QAAE,OAAO,IAAI,CAAC;IAC7B,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,oBAAoB,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,UAAU,EAAE,gBAAgB,EAAE,OAAO,EAAE,CAAC,CAAC;AACrG,CAAC;AAED,SAAS,uBAAuB,CAC9B,MAAiB,EACjB,KAAa,EACb,UAA8B;IAE9B,IAAI,CAAC,UAAU;QAAE,OAAO,IAAI,CAAC;IAC7B,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,uBAAuB,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,UAAU,EAAE,gBAAgB,EAAE,OAAO,EAAE,CAAC,CAAC;AACxG,CAAC;AAmBD;;;;;;;;;;;;GAYG;AACH,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAC3C,OAAsC;IAEtC,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,GAAG,IAAI,EAAE,GAAG,OAAO,CAAC;IAC1D,MAAM,MAAM,GAAG,iBAAiB,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;IAErD,MAAM,OAAO,GAAgC,EAAE,CAAC;IAChD,IAAI,cAAc,GAAkB,IAAI,CAAC;IAEzC,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,MAAM,aAAa,GAAG,cAAc,CAAC,CAAC,CAAC,EAAE,GAAG,QAAQ,EAAE,QAAQ,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC;QAC5F,MAAM,QAAQ,GAAG,MAAM,kBAAkB,CAAC;YACxC,GAAG,IAAI;YACP,QAAQ,EAAE,aAAa;YACvB,OAAO,EAAE,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,SAAS,EAAE,cAAc,EAAE;SACzD,CAAC,CAAC;QACH,IAAI,cAAc,KAAK,IAAI,EAAE,CAAC;YAC5B,MAAM,EAAE,GAAI,QAAQ,CAAC,MAAM,CAAyC,EAAE,CAAC,IAAI,CAAC,CAAC;YAC7E,IAAI,OAAO,EAAE,KAAK,QAAQ;gBAAE,cAAc,GAAG,EAAE,CAAC;QAClD,CAAC;QACD,OAAO,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;IACxF,CAAC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,4BAA4B,CAChD,MAAiB,EACjB,OAA0B;IAE1B,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,GAAG,MAAM,EAAE,SAAS,EAAE,YAAY,GAAG,MAAM,EAAE,GAAG,OAAO,CAAC;IAEjG,mBAAmB;IACnB,MAAM,SAAS,GAAG,MAAM,cAAc,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,SAAS,EAAE,CAAC,CAAC;IAEvF,MAAM,SAAS,GAAG,SAAS,CAAC,SAAmC,CAAC;IAChE,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,GAAG,MAAM,qBAAqB,CAAC;QACvD,SAAS,EAAE,SAAoC;QAC/C,OAAO;QACP,YAAY;QACZ,QAAQ,EAAE,uBAAuB,CAAC,MAAM,EAAE,SAAS,CAAC,KAAK,EAAE,OAAO,CAAC,IAAI,CAAC;KACzE,CAAC,CAAC;IAEH,qCAAqC;IACrC,MAAM,QAAQ,GAAG,uBAAuB,CACtC,SAAS,EACT,QAAQ,EACR;QACE,UAAU,EAAE,SAAS,CAAC,UAAU;QAChC,KAAK,EAAE,SAAS,CAAC,KAAK;QACtB,OAAO,EAAE,SAAS,CAAC,OAAO;QAC1B,QAAQ,EAAE,WAAW;QACrB,KAAK,EAAE,UAAU,CAAC,SAAS,CAAC,KAAK,EAAE,UAAU,CAAC;QAC9C,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI;QACvB,QAAQ,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK;KAC1B,CACF,CAAC;IAEF,OAAO,QAAQ,CAAC;AAClB,CAAC;AAYD;;;GAGG;AACH,MAAM,UAAU,uBAAuB,CACrC,SAAiC,EACjC,QAAuC,EACvC,OAAwB;IAExB,MAAM,UAAU,GAAG,gBAAgB,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;IACvE,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;IAChC,MAAM,aAAa,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC;IAEhD,0BAA0B;IAC1B,MAAM,IAAI,GAAG,UAAU,CAAC,QAAQ,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC;IACvD,MAAM,UAAU,GAAG,gBAAgB,CAAC,QAAQ,CAAC,CAAC;IAC9C,MAAM,SAAS,GAAG,eAAe,CAAC,OAAO,CAAC,UAAU,EAAE,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;IAEtG,oDAAoD;IACpD,MAAM,QAAQ,GAA4B;QACxC,IAAI,EAAE,kBAAkB,CAAC,IAAI,EAAE,aAAa,CAAC,IAAI,IAAI,EAAE,CAAC;QACxD,IAAI,EAAE,SAAS,CAAC,IAAI;QACpB,aAAa,EAAE,SAAS,CAAC,aAAa;QACtC,UAAU,EAAE,sBAAsB,CAAC,UAAqC,EAAE,aAAa,CAAC,UAAU,IAAI,EAAE,CAAC;QACzG,SAAS,EAAE,kBAAkB,CAAC,SAAS,EAAE,aAAa,CAAC,SAAS,IAAI,EAAE,CAAC;KACxE,CAAC;IAEF,yDAAyD;IACzD,IAAI,SAAS,CAAC,SAAS,EAAE,CAAC;QACxB,QAAQ,CAAC,SAAS,GAAG,SAAS,CAAC,SAAS,CAAC;IAC3C,CAAC;IACD,IAAI,SAAS,CAAC,OAAO,EAAE,CAAC;QACtB,QAAQ,CAAC,OAAO,GAAG,SAAS,CAAC,OAAO,CAAC;IACvC,CAAC;IACD,IAAI,SAAS,CAAC,OAAO,EAAE,CAAC;QACtB,QAAQ,CAAC,OAAO,GAAG,SAAS,CAAC,OAAO,CAAC;IACvC,CAAC;IAED,wBAAwB;IACxB,IAAI,OAAO,KAAK,MAAM,EAAE,CAAC;QACvB,QAAQ,CAAC,MAAM,GAAG,YAAY,EAAE,CAAC;QACjC,QAAQ,CAAC,UAAU,GAAG,gBAAgB,CAAC,SAA0C,CAAC,CAAC;IACrF,CAAC;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,gBAAgB,CAC9B,SAA6B,EAC7B,QAAuC,EACvC,OAAwB;IAExB,MAAM,UAAU,GAAG,gBAAgB,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;IAEvE,OAAO;QACL,IAAI,EAAE,UAAU,CAAC,QAAQ,EAAE,UAAU,EAAE,OAAO,CAAC,OAAO,CAAC;QACvD,IAAI,EAAE,SAAS,CAAC,IAAI;QACpB,aAAa,EAAE,SAAS,CAAC,aAAa;QACtC,SAAS,EAAE,SAAS,CAAC,SAAS;QAC9B,OAAO,EAAE,SAAS,CAAC,OAAO;QAC1B,OAAO,EAAE,SAAS,CAAC,OAAO;QAC1B,UAAU,EAAE,gBAAgB,CAAC,QAAQ,CAAC;QACtC,SAAS,EAAE,eAAe,CAAC,OAAO,CAAC,UAAU,EAAE,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,QAAQ,CAAC;QAC9F,MAAM,EAAE,YAAY,EAAE;QACtB,UAAU,EAAE,gBAAgB,CAAC,SAAS,CAAC;KACxC,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,mBAAmB;IACjC,OAAO;QACL,IAAI,EAAE;YACJ,EAAE,EAAE,IAAI;YACR,OAAO,EAAE,kBAAkB;YAC3B,OAAO,EAAE,MAAM;YACf,UAAU,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;YACpC,UAAU,EAAE,IAAI;YAChB,MAAM,EAAE,IAAI;YACZ,aAAa,EAAE,IAAI;YACnB,SAAS,EAAE,IAAI;YACf,UAAU,EAAE,SAAS;YACrB,QAAQ,EAAE,MAAM;YAChB,WAAW,EAAE,MAAM;YACnB,cAAc,EAAE,IAAI;YACpB,aAAa,EAAE,MAAM;YACrB,aAAa,EAAE,IAAI;YACnB,kBAAkB,EAAE,IAAI;YACxB,IAAI,EAAE,EAAE;SACT;QACD,IAAI,EAAE;YACJ,MAAM,EAAE,IAAI;YACZ,KAAK,EAAE,IAAI;YACX,KAAK,EAAE,IAAI;YACX,IAAI,EAAE,IAAI;YACV,MAAM,EAAE,IAAI;YACZ,IAAI,EAAE,IAAI;YACV,SAAS,EAAE,IAAI;SAChB;QACD,aAAa,EAAE;YACb,eAAe,EAAE,IAAI;YACrB,eAAe,EAAE,EAAE;YACnB,oBAAoB,EAAE,IAAI;YAC1B,oBAAoB,EAAE,IAAI;YAC1B,oBAAoB,EAAE,IAAI;YAC1B,aAAa,EAAE,IAAI;YACnB,mBAAmB,EAAE,IAAI;YACzB,gBAAgB,EAAE,IAAI;YACtB,WAAW,EAAE,IAAI;YACjB,YAAY,EAAE,IAAI;YAClB,mBAAmB,EAAE,IAAI;YACzB,eAAe,EAAE,IAAI;YACrB,sBAAsB,EAAE,IAAI;YAC5B,eAAe,EAAE,IAAI;YACrB,eAAe,EAAE,IAAI;YACrB,iBAAiB,EAAE,IAAI;YACvB,sBAAsB,EAAE,KAAK;YAC7B,iBAAiB,EAAE,IAAI;SACxB;QACD,SAAS,EAAE;YACT,UAAU,EAAE,IAAI;YAChB,gBAAgB,EAAE,IAAI;YACtB,iBAAiB,EAAE,EAAE;YACrB,kBAAkB,EAAE,IAAI;YACxB,UAAU,EAAE,IAAI;SACjB;QACD,OAAO,EAAE;YACP,gBAAgB,EAAE,CAAC;YACnB,iBAAiB,EAAE,IAAI;YACvB,OAAO,EAAE,IAAI;YACb,SAAS,EAAE,IAAI;YACf,YAAY,EAAE,IAAI;YAClB,WAAW,EAAE,IAAI;YACjB,eAAe,EAAE,EAAE;YACnB,cAAc,EAAE,EAAE;YAClB,aAAa,EAAE,EAAE;YACjB,kBAAkB,EAAE,IAAI;YACxB,cAAc,EAAE,CAAC;YACjB,cAAc,EAAE,IAAI;YACpB,kBAAkB,EAAE,IAAI;YACxB,qBAAqB,EAAE,IAAI;SAC5B;QACD,OAAO,EAAE;YACP,cAAc,EAAE,IAAI;YACpB,WAAW,EAAE,IAAI;YACjB,wBAAwB,EAAE,IAAI;YAC9B,cAAc,EAAE,IAAI;YACpB,cAAc,EAAE,IAAI;YACpB,iBAAiB,EAAE,IAAI;YACvB,OAAO,EAAE,IAAI;YACb,YAAY,EAAE,IAAI;YAClB,YAAY,EAAE,IAAI;YAClB,gBAAgB,EAAE,IAAI;YACtB,gBAAgB,EAAE,IAAI;YACtB,YAAY,EAAE,IAAI;SACnB;QACD,UAAU,EAAE;YACV,YAAY,EAAE,IAAI;YAClB,gBAAgB,EAAE,IAAI;YACtB,cAAc,EAAE;gBACd,QAAQ,EAAE,IAAI;gBACd,QAAQ,EAAE,IAAI;gBACd,WAAW,EAAE,KAAK;aACnB;YACD,aAAa,EAAE,SAAS;YACxB,WAAW,EAAE,IAAI;YACjB,aAAa,EAAE,CAAC,MAAM,CAAC;YACvB,aAAa,EAAE,EAAE;SAClB;QACD,SAAS,EAAE;YACT,gBAAgB,EAAE,CAAC;YACnB,gBAAgB,EAAE,IAAI;YACtB,mBAAmB,EAAE,IAAI;YACzB,gBAAgB,EAAE,IAAI;SACvB;QACD,MAAM,EAAE;YACN,UAAU,EAAE,EAAE;YACd,OAAO,EAAE;gBACP,YAAY,EAAE,EAAE;aACjB;SACF;QACD,UAAU,EAAE;YACV,gBAAgB,EAAE,IAAI;YACtB,oBAAoB,EAAE,IAAI;YAC1B,eAAe,EAAE,IAAI;YACrB,gBAAgB,EAAE,IAAI;SACvB;KACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"assembler.js","sourceRoot":"","sources":["../src/assembler.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,44 @@
1
+ export type FieldBlockProfile = "essential" | "extended" | "full";
2
+ interface JsonSchemaNode {
3
+ type?: string | string[];
4
+ enum?: (string | null)[];
5
+ "x-edm-canonical"?: string[];
6
+ properties?: Record<string, JsonSchemaNode>;
7
+ $ref?: string;
8
+ [k: string]: unknown;
9
+ }
10
+ export type FieldKind = "strict-enum" | "canonical-enum" | "string" | "number" | "boolean" | "string-array";
11
+ export interface FieldInfo {
12
+ kind: FieldKind;
13
+ /** Present for strict-enum / canonical-enum — read live from the fragment node. */
14
+ enumValues?: readonly string[];
15
+ }
16
+ /**
17
+ * Classify a JSON Schema field node into the kind the prompt comment renders.
18
+ *
19
+ * - "x-edm-canonical": [...] → canonical-enum (two-tier free text)
20
+ * - "enum": [...] → strict-enum (null stripped)
21
+ * - type number/integer → number
22
+ * - type boolean → boolean
23
+ * - type array → string-array
24
+ * - otherwise (string/null) → free text
25
+ */
26
+ export declare function classifyField(def: JsonSchemaNode): FieldInfo;
27
+ /**
28
+ * Generate the JSON field-block skeleton for a profile, from the edm-spec JSON
29
+ * Schema.
30
+ *
31
+ * Output shape (matches the current hand-written skeletons):
32
+ *
33
+ * {
34
+ * "experiential_stance": "", // STRICT ENUM: ...
35
+ * "core": {
36
+ * "anchor": "", // central theme ...
37
+ * ...
38
+ * },
39
+ * ...
40
+ * }
41
+ */
42
+ export declare function generateFieldBlock(profile: FieldBlockProfile): string;
43
+ export {};
44
+ //# sourceMappingURL=generate-field-block.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generate-field-block.d.ts","sourceRoot":"","sources":["../../src/extractors/generate-field-block.ts"],"names":[],"mappings":"AAwCA,MAAM,MAAM,iBAAiB,GAAG,WAAW,GAAG,UAAU,GAAG,MAAM,CAAC;AAMlE,UAAU,cAAc;IACtB,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IACzB,IAAI,CAAC,EAAE,CAAC,MAAM,GAAG,IAAI,CAAC,EAAE,CAAC;IACzB,iBAAiB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC7B,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;IAC5C,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,CAAC,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;CACtB;AA0CD,MAAM,MAAM,SAAS,GACjB,aAAa,GACb,gBAAgB,GAChB,QAAQ,GACR,QAAQ,GACR,SAAS,GACT,cAAc,CAAC;AAEnB,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,SAAS,CAAC;IAChB,mFAAmF;IACnF,UAAU,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CAChC;AAED;;;;;;;;;GASG;AACH,wBAAgB,aAAa,CAAC,GAAG,EAAE,cAAc,GAAG,SAAS,CAe5D;AAiID;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,iBAAiB,GAAG,MAAM,CAsDrE"}
@@ -0,0 +1,256 @@
1
+ /**
2
+ * JSON-Schema → prompt field-block generator (ADR-0030, amended — Step 6).
3
+ *
4
+ * Reads the PUBLISHED edm-spec package (the source of truth, ADR-0030 amended)
5
+ * rather than walking the SDK's own zod validator. The two extraction prompts
6
+ * (Full in llm-extractor.ts; Extended/Essential in profile-prompts.ts) each
7
+ * carry a hand-written JSON skeleton whose per-field `// CANONICAL:` / `// STRICT
8
+ * ENUM:` comments enumerate the field vocabulary. This generator emits that
9
+ * skeleton FROM the spec's JSON Schema fragments, so the vocabulary rendered in
10
+ * each comment is the one the spec enforces — drift between prompt, validator,
11
+ * and spec becomes impossible by construction.
12
+ *
13
+ * Phase A walked the local zod schema; this is the spec-sourced port. The OUTPUT
14
+ * FORMAT is unchanged — byte-for-byte identical to what Phase A emitted (and
15
+ * therefore to the hand-written skeletons it reproduces). Only the INPUT source
16
+ * moved: zod nodes → edm-spec JSON Schema.
17
+ *
18
+ * Classification maps directly from JSON Schema to the kinds the prompt renders:
19
+ * - "x-edm-canonical": [...] → canonical-enum (two-tier; free text accepted)
20
+ * - "enum": [...] → strict-enum (validator rejects non-members)
21
+ * - bare "type" string/number/boolean/array → free text / number / boolean / array
22
+ *
23
+ * Field MEMBERSHIP and ORDER per profile come from the composite profile schemas
24
+ * (edm-spec/schema/edm.v0.8.{essential,extended,full}.schema.json): which
25
+ * representational domains a profile includes, and — for inline domains — which
26
+ * fields, in which order. This is the role the SDK's LlmEssential/LlmExtended/
27
+ * LlmExtractedFields zod schemas used to play.
28
+ *
29
+ * Field DEFINITIONS (classification + canonical value lists) are always read from
30
+ * the fragments, never from the composite's inline copies, so the canonical
31
+ * vocabulary rendered in each comment is the one the fragment enforces.
32
+ */
33
+ import { readFileSync } from "node:fs";
34
+ import { createRequire } from "node:module";
35
+ import { specCompositePath, specFragmentPath } from "../schema/spec-truth.js";
36
+ const require = createRequire(import.meta.url);
37
+ const loadJson = (specPath) => JSON.parse(readFileSync(require.resolve(specPath), "utf8"));
38
+ // ---------------------------------------------------------------------------
39
+ // Profile / domain wiring
40
+ // ---------------------------------------------------------------------------
41
+ /** The LLM-extracted representational domains, in canonical (zod definition) order. */
42
+ const LLM_DOMAINS = ["core", "constellation", "milky_way", "gravity", "impulse"];
43
+ // Spec paths are DERIVED from the installed edm-spec version (the filename
44
+ // version segment is the line, e.g. "v0.8") — no restated version strings.
45
+ const FRAGMENT_SPEC = {
46
+ core: specFragmentPath("core"),
47
+ constellation: specFragmentPath("constellation"),
48
+ milky_way: specFragmentPath("milky_way"),
49
+ gravity: specFragmentPath("gravity"),
50
+ impulse: specFragmentPath("impulse"),
51
+ };
52
+ const COMPOSITE_SPEC = {
53
+ essential: specCompositePath("essential"),
54
+ extended: specCompositePath("extended"),
55
+ full: specCompositePath("full"),
56
+ };
57
+ const loadFragment = (domain) => loadJson(FRAGMENT_SPEC[domain]);
58
+ /**
59
+ * experiential_stance is a top-level extraction-only field — never sealed into
60
+ * the artifact body, so it appears in no fragment or composite schema. The SDK
61
+ * carries it as ExperientialStanceSchema (z.enum). Mirror it here as a strict
62
+ * enum so the generated block asks for it exactly as the current prompts do.
63
+ */
64
+ const EXPERIENTIAL_STANCE_DEF = {
65
+ enum: ["lived", "witnessed", "quoted_third_party", "assistant_generated", "hypothetical"],
66
+ };
67
+ /**
68
+ * Classify a JSON Schema field node into the kind the prompt comment renders.
69
+ *
70
+ * - "x-edm-canonical": [...] → canonical-enum (two-tier free text)
71
+ * - "enum": [...] → strict-enum (null stripped)
72
+ * - type number/integer → number
73
+ * - type boolean → boolean
74
+ * - type array → string-array
75
+ * - otherwise (string/null) → free text
76
+ */
77
+ export function classifyField(def) {
78
+ const canonical = def["x-edm-canonical"];
79
+ if (Array.isArray(canonical)) {
80
+ return { kind: "canonical-enum", enumValues: canonical };
81
+ }
82
+ if (Array.isArray(def.enum)) {
83
+ // JSON Schema enums carry a trailing `null` for nullable fields; zod models
84
+ // nullability with `.nullable()` and keeps it out of the enum, so strip it.
85
+ return { kind: "strict-enum", enumValues: def.enum.filter((v) => v !== null) };
86
+ }
87
+ const types = Array.isArray(def.type) ? def.type : [def.type];
88
+ if (types.includes("number") || types.includes("integer"))
89
+ return { kind: "number" };
90
+ if (types.includes("boolean"))
91
+ return { kind: "boolean" };
92
+ if (types.includes("array"))
93
+ return { kind: "string-array" };
94
+ return { kind: "string" };
95
+ }
96
+ // ---------------------------------------------------------------------------
97
+ // Presentation layer (OUTPUT_CONTRACT — hand-written, §4)
98
+ //
99
+ // Canonical comment conventions follow the Full prompt (the richest of the
100
+ // three current skeletons): STRICT/CANONICAL prefixes with explicit suffixes
101
+ // and per-field prose guidance for free-text fields. Enum VALUES are NEVER in
102
+ // these tables — they come from the fragment.
103
+ // ---------------------------------------------------------------------------
104
+ const STRICT_SUFFIX = " (pick ONE or null)";
105
+ const CANONICAL_SUFFIX = " (free text accepted if none fits)";
106
+ /** Per-field suffix overrides for strict enums (keyed `domain.field`). */
107
+ const SUFFIX_OVERRIDE = {
108
+ "constellation.narrative_archetype": " (pick ONE or null; lowercase)",
109
+ };
110
+ /** Extra prose appended after a canonical-enum comment. */
111
+ const CANONICAL_TRAILING = {
112
+ "constellation.arc_type": ". gratitude = moments of thankfulness, appreciation, acknowledging blessing; authenticity = feeling fully oneself, self-alignment, identity congruence",
113
+ };
114
+ /** Prose guidance for non-enum (free text / number / boolean / array) fields. */
115
+ const GUIDANCE = {
116
+ // core
117
+ "core.anchor": 'central theme (e.g., "dad\'s toolbox", "nana\'s traditions")',
118
+ "core.spark": 'what triggered the memory (e.g., "finding the cassette", "first snow")',
119
+ "core.wound": "The specific vulnerability, loss, or pain present — NOT generic labels like 'loss' or 'grief' but what exactly was lost or why it hurts. Examples: 'unlived travel dream', 'war silence never spoken', 'father died before I knew him', 'shame of not fitting in'. If no wound is present, use null.",
120
+ "core.fuel": 'what energized the experience (e.g., "shared laughter", "curiosity")',
121
+ "core.bridge": 'connection between past and present (e.g., "replaying old tape", "returning to the porch")',
122
+ "core.echo": 'what still resonates (e.g., "her laugh", "smell of oil", "city lights on water")',
123
+ "core.narrative": "3–5 sentences. REQUIRED: include ALL of the following — ≥1 concrete sensory detail (sight, sound, smell, texture), ≥1 temporal cue that anchors the memory in time, ≥1 symbolic callback that connects past to present. Write from the subject's perspective. Do not compress or summarise — give the memory space to breathe. Faithful and specific. Never generic.",
124
+ // constellation
125
+ "constellation.emotion_subtone": "2–4 short words (e.g., bittersweet, grateful) — free text array",
126
+ "constellation.higher_order_emotion": "free text: e.g., awe, forgiveness, pride, moral_elevation (or null)",
127
+ "constellation.meta_emotional_state": "free text: e.g., acceptance, confusion, curiosity (or null)",
128
+ "constellation.interpersonal_affect": "free text: e.g., warmth, openness, defensiveness (or null)",
129
+ "constellation.symbolic_anchor": "concrete object/place/ritual (or null)",
130
+ "constellation.identity_thread": "short sentence",
131
+ "constellation.expressed_insight": "brief insight explicitly stated by subject (extracted, not inferred)",
132
+ "constellation.transformational_pivot": "true if subject explicitly identifies this as life-changing",
133
+ "constellation.somatic_signature": 'bodily sensations explicitly described (e.g., "chest tightness", "warmth spreading") or null',
134
+ // milky_way
135
+ "milky_way.event_type": "e.g., family gathering, farewell, birthday (or null)",
136
+ "milky_way.location_context": "place from text or image (or null)",
137
+ "milky_way.associated_people": "names or roles (proper case allowed)",
138
+ "milky_way.tone_shift": "e.g., loss to gratitude (or null)",
139
+ // gravity
140
+ "gravity.emotional_weight": "0.0–1.0 (felt intensity IN THE MOMENT). Calibration: 0.9+ life-altering irreversible moments; 0.7-0.9 significant personal events with strong emotional response; 0.4-0.7 meaningful but routine emotional experiences; 0.1-0.4 mild passing emotional content",
141
+ "gravity.gravity_type": "short phrase (e.g., symbolic resonance)",
142
+ "gravity.recall_triggers": "sensory or symbolic cues (lowercase tokens)",
143
+ "gravity.retrieval_keys": "compact hooks (3–6 tokens recommended)",
144
+ "gravity.nearby_themes": "adjacent concepts",
145
+ "gravity.strength_score": "0.0–1.0 (how BOUND/STUCK this memory is)",
146
+ "gravity.resilience_markers": "1–3 (e.g., acceptance, optimism, continuity)",
147
+ // impulse
148
+ "impulse.primary_energy": "free text: e.g., curiosity, fear, compassion (or null; lowercase)",
149
+ // top-level
150
+ experiential_stance: "", // enum-driven; guidance unused
151
+ };
152
+ const PLACEHOLDER = {
153
+ "strict-enum": '""',
154
+ "canonical-enum": '""',
155
+ string: '""',
156
+ number: "0.0",
157
+ boolean: "false",
158
+ "string-array": "[]",
159
+ };
160
+ /** Build the `// ...` comment text for a field, or null if it has none. */
161
+ function commentFor(key, info) {
162
+ if (info.kind === "strict-enum") {
163
+ const suffix = SUFFIX_OVERRIDE[key] ?? STRICT_SUFFIX;
164
+ return `STRICT ENUM: ${(info.enumValues ?? []).join(" | ")}${suffix}`;
165
+ }
166
+ if (info.kind === "canonical-enum") {
167
+ const trailing = CANONICAL_TRAILING[key] ?? "";
168
+ return `CANONICAL: ${(info.enumValues ?? []).join(" | ")}${CANONICAL_SUFFIX}${trailing}`;
169
+ }
170
+ const g = GUIDANCE[key];
171
+ return g && g.length > 0 ? g : null;
172
+ }
173
+ /** Join lines, aligning each block's `//` to (max content length) + 1 space. */
174
+ function renderBlock(lines) {
175
+ const maxLen = lines.reduce((m, l) => Math.max(m, l.content.length), 0);
176
+ return lines.map((l) => {
177
+ if (l.comment === null)
178
+ return l.content;
179
+ const pad = " ".repeat(maxLen - l.content.length + 1);
180
+ return `${l.content}${pad}// ${l.comment}`;
181
+ });
182
+ }
183
+ /**
184
+ * Resolve a profile domain to its ordered `[fieldName, def]` pairs.
185
+ * Field names/order: inline composite properties when present, else fragment
186
+ * order. Field defs: always the fragment (source of truth), falling back to the
187
+ * inline composite copy only if the fragment lacks the field.
188
+ */
189
+ function domainFields(compositeProp, fragment) {
190
+ const fragProps = fragment.properties ?? {};
191
+ const inlineProps = compositeProp?.properties;
192
+ const names = inlineProps ? Object.keys(inlineProps) : Object.keys(fragProps);
193
+ return names.map((name) => [name, fragProps[name] ?? inlineProps?.[name] ?? {}]);
194
+ }
195
+ /**
196
+ * Generate the JSON field-block skeleton for a profile, from the edm-spec JSON
197
+ * Schema.
198
+ *
199
+ * Output shape (matches the current hand-written skeletons):
200
+ *
201
+ * {
202
+ * "experiential_stance": "", // STRICT ENUM: ...
203
+ * "core": {
204
+ * "anchor": "", // central theme ...
205
+ * ...
206
+ * },
207
+ * ...
208
+ * }
209
+ */
210
+ export function generateFieldBlock(profile) {
211
+ const compositeSpec = COMPOSITE_SPEC[profile];
212
+ if (!compositeSpec) {
213
+ throw new Error(`unknown profile "${profile}" (expected one of: ${Object.keys(COMPOSITE_SPEC).join(", ")})`);
214
+ }
215
+ const composite = loadJson(compositeSpec);
216
+ const props = composite.properties ?? {};
217
+ // Representational domains present in this profile, in canonical order.
218
+ const domains = LLM_DOMAINS.filter((d) => props[d]);
219
+ // Top-level: the experiential_stance scalar renders first and inline; domains
220
+ // render as nested blocks. (Mirrors the SDK's [...scalars, ...domains] order.)
221
+ const topLevelCount = 1 + domains.length;
222
+ let topIdx = 0;
223
+ const out = ["{"];
224
+ // experiential_stance (scalar)
225
+ {
226
+ const isLastTop = topIdx === topLevelCount - 1;
227
+ const topComma = isLastTop ? "" : ",";
228
+ const info = classifyField(EXPERIENTIAL_STANCE_DEF);
229
+ const comment = commentFor("experiential_stance", info);
230
+ const [rendered] = renderBlock([
231
+ { content: ` "experiential_stance": ${PLACEHOLDER[info.kind]}${topComma}`, comment },
232
+ ]);
233
+ out.push(rendered);
234
+ topIdx++;
235
+ }
236
+ for (const domain of domains) {
237
+ const isLastTop = topIdx === topLevelCount - 1;
238
+ const topComma = isLastTop ? "" : ",";
239
+ const fragment = loadFragment(domain);
240
+ const fields = domainFields(props[domain], fragment);
241
+ out.push(` "${domain}": {`);
242
+ const lines = fields.map(([field, def], idx) => {
243
+ const isLastField = idx === fields.length - 1;
244
+ const comma = isLastField ? "" : ",";
245
+ const info = classifyField(def);
246
+ const comment = commentFor(`${domain}.${field}`, info);
247
+ return { content: ` "${field}": ${PLACEHOLDER[info.kind]}${comma}`, comment };
248
+ });
249
+ out.push(...renderBlock(lines));
250
+ out.push(` }${topComma}`);
251
+ topIdx++;
252
+ }
253
+ out.push("}");
254
+ return out.join("\n");
255
+ }
256
+ //# sourceMappingURL=generate-field-block.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generate-field-block.js","sourceRoot":"","sources":["../../src/extractors/generate-field-block.ts"],"names":[],"mappings":"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"}