openclaw-cortex-memory 0.1.0-Alpha.20 → 0.1.0-Alpha.21

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 (60) hide show
  1. package/README.md +163 -228
  2. package/SKILL.md +71 -332
  3. package/dist/index.d.ts +36 -0
  4. package/dist/index.d.ts.map +1 -1
  5. package/dist/index.js +194 -6
  6. package/dist/index.js.map +1 -1
  7. package/dist/openclaw.plugin.json +208 -12
  8. package/dist/src/dedup/three_stage_deduplicator.d.ts.map +1 -1
  9. package/dist/src/dedup/three_stage_deduplicator.js +1 -2
  10. package/dist/src/dedup/three_stage_deduplicator.js.map +1 -1
  11. package/dist/src/engine/ts_engine.d.ts +31 -0
  12. package/dist/src/engine/ts_engine.d.ts.map +1 -1
  13. package/dist/src/engine/ts_engine.js +262 -14
  14. package/dist/src/engine/ts_engine.js.map +1 -1
  15. package/dist/src/engine/types.d.ts +1 -0
  16. package/dist/src/engine/types.d.ts.map +1 -1
  17. package/dist/src/graph/ontology.d.ts +65 -15
  18. package/dist/src/graph/ontology.d.ts.map +1 -1
  19. package/dist/src/graph/ontology.js +316 -4
  20. package/dist/src/graph/ontology.js.map +1 -1
  21. package/dist/src/quality/llm_output_validator.d.ts +48 -0
  22. package/dist/src/quality/llm_output_validator.d.ts.map +1 -0
  23. package/dist/src/quality/llm_output_validator.js +404 -0
  24. package/dist/src/quality/llm_output_validator.js.map +1 -0
  25. package/dist/src/reflect/reflector.d.ts.map +1 -1
  26. package/dist/src/reflect/reflector.js +284 -8
  27. package/dist/src/reflect/reflector.js.map +1 -1
  28. package/dist/src/rules/rule_store.d.ts.map +1 -1
  29. package/dist/src/rules/rule_store.js +75 -16
  30. package/dist/src/rules/rule_store.js.map +1 -1
  31. package/dist/src/session/session_end.d.ts +20 -43
  32. package/dist/src/session/session_end.d.ts.map +1 -1
  33. package/dist/src/session/session_end.js +21 -233
  34. package/dist/src/session/session_end.js.map +1 -1
  35. package/dist/src/store/archive_store.d.ts +20 -7
  36. package/dist/src/store/archive_store.d.ts.map +1 -1
  37. package/dist/src/store/archive_store.js +96 -61
  38. package/dist/src/store/archive_store.js.map +1 -1
  39. package/dist/src/store/graph_memory_store.d.ts +44 -0
  40. package/dist/src/store/graph_memory_store.d.ts.map +1 -0
  41. package/dist/src/store/graph_memory_store.js +168 -0
  42. package/dist/src/store/graph_memory_store.js.map +1 -0
  43. package/dist/src/store/read_store.d.ts +27 -0
  44. package/dist/src/store/read_store.d.ts.map +1 -1
  45. package/dist/src/store/read_store.js +653 -94
  46. package/dist/src/store/read_store.js.map +1 -1
  47. package/dist/src/store/vector_store.d.ts +1 -0
  48. package/dist/src/store/vector_store.d.ts.map +1 -1
  49. package/dist/src/store/vector_store.js +1 -0
  50. package/dist/src/store/vector_store.js.map +1 -1
  51. package/dist/src/store/write_store.d.ts +7 -0
  52. package/dist/src/store/write_store.d.ts.map +1 -1
  53. package/dist/src/store/write_store.js +15 -3
  54. package/dist/src/store/write_store.js.map +1 -1
  55. package/dist/src/sync/session_sync.d.ts +48 -0
  56. package/dist/src/sync/session_sync.d.ts.map +1 -1
  57. package/dist/src/sync/session_sync.js +277 -78
  58. package/dist/src/sync/session_sync.js.map +1 -1
  59. package/openclaw.plugin.json +208 -12
  60. package/package.json +6 -4
@@ -21,6 +21,7 @@ export interface StoreEventArgs {
21
21
  name?: string;
22
22
  type?: string;
23
23
  }>;
24
+ entity_types?: Record<string, string>;
24
25
  outcome?: string;
25
26
  relations?: Array<{
26
27
  source: string;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/engine/types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,UAAU,GAAG,IAAI,CAAC;AAE9B,MAAM,WAAW,WAAW;IAC1B,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,UAAU;IACzB,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,KAAK,CAAC;QAAE,EAAE,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAChE,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,KAAK,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CACrE;AAED,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,MAAM,CAAC;IACf,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,UAAU,GAAG,UAAU,GAAG,MAAM,CAAC;IACvC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,iBAAiB;IAChC,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,kBAAkB;IACjC,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAED,MAAM,WAAW,gBAAgB;IAC/B,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,gBAAgB;IAC/B,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,sBAAsB;IACrC,KAAK,CAAC,EAAE,QAAQ,GAAG,SAAS,GAAG,KAAK,CAAC;IACrC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,YAAY,CAAC,EAAE,aAAa,GAAG,aAAa,GAAG,MAAM,CAAC;CACvD"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/engine/types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,UAAU,GAAG,IAAI,CAAC;AAE9B,MAAM,WAAW,WAAW;IAC1B,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,UAAU;IACzB,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,KAAK,CAAC;QAAE,EAAE,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAChE,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACtC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,KAAK,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CACrE;AAED,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,MAAM,CAAC;IACf,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,UAAU,GAAG,UAAU,GAAG,MAAM,CAAC;IACvC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,iBAAiB;IAChC,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,kBAAkB;IACjC,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAED,MAAM,WAAW,gBAAgB;IAC/B,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,gBAAgB;IAC/B,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,sBAAsB;IACrC,KAAK,CAAC,EAAE,QAAQ,GAAG,SAAS,GAAG,KAAK,CAAC;IACrC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,YAAY,CAAC,EAAE,aAAa,GAAG,aAAa,GAAG,MAAM,CAAC;CACvD"}
@@ -7,11 +7,28 @@ export interface RelationRule {
7
7
  export interface GraphSchemaConfig {
8
8
  eventTypes: string[];
9
9
  eventTypeAliases: Record<string, string>;
10
+ entityTypes: string[];
11
+ entityAliases: Record<string, string[]>;
10
12
  relationTypes: string[];
11
13
  relationTypeAliases: Record<string, string>;
12
14
  relationRules: RelationRule[];
15
+ highValueRelationTypes: string[];
16
+ relatedToMaxRatio: number;
17
+ relatedToMaxAbsolute: number;
18
+ minRelationConfidence: number;
19
+ evidenceSpanRequired: boolean;
20
+ endpointMentionRequired: boolean;
13
21
  defaultEntityType: string;
14
22
  }
23
+ export type GraphQualityMode = "off" | "warn" | "strict";
24
+ export interface GraphRelation {
25
+ source: string;
26
+ target: string;
27
+ type: string;
28
+ evidence_span?: string;
29
+ confidence?: number;
30
+ }
31
+ export declare function normalizeEntityName(raw: string, schema: GraphSchemaConfig): string;
15
32
  export declare function loadGraphSchema(projectRoot: string): GraphSchemaConfig;
16
33
  export declare function normalizeEventType(raw: string, schema: GraphSchemaConfig): string;
17
34
  export declare function normalizeRelationType(raw: string, schema: GraphSchemaConfig): string;
@@ -27,27 +44,60 @@ export declare function buildCanonicalId(args: {
27
44
  outcome?: string;
28
45
  }): string;
29
46
  export declare function validateRelations(args: {
30
- relations: Array<{
31
- source: string;
32
- target: string;
33
- type: string;
34
- }>;
47
+ relations: GraphRelation[];
35
48
  entities: string[];
36
49
  entityTypes?: Record<string, string>;
37
50
  schema: GraphSchemaConfig;
51
+ sourceText?: string;
52
+ qualityMode?: GraphQualityMode;
38
53
  }): {
39
- accepted: Array<{
40
- source: string;
41
- target: string;
42
- type: string;
43
- }>;
54
+ accepted: GraphRelation[];
44
55
  rejected: Array<{
45
56
  reason: string;
46
- relation: {
47
- source: string;
48
- target: string;
49
- type: string;
50
- };
57
+ relation: GraphRelation;
58
+ }>;
59
+ warnings: Array<{
60
+ reason: string;
61
+ relation: GraphRelation;
51
62
  }>;
52
63
  };
64
+ export declare function normalizeEntityType(raw: string, schema: GraphSchemaConfig): string;
65
+ export interface GraphMemoryRecord {
66
+ id: string;
67
+ source_event_id: string;
68
+ source_layer: "archive_event" | "active_only";
69
+ archive_event_id?: string;
70
+ session_id: string;
71
+ source_file?: string;
72
+ timestamp: string;
73
+ entities: string[];
74
+ entity_types: Record<string, string>;
75
+ relations: GraphRelation[];
76
+ gate_source: "sync" | "session_end" | "manual";
77
+ event_type?: string;
78
+ schema_version?: string;
79
+ confidence?: number;
80
+ }
81
+ export interface ValidateGraphPayloadResult {
82
+ valid: boolean;
83
+ reason?: string;
84
+ normalized?: GraphMemoryRecord;
85
+ warnings?: string[];
86
+ }
87
+ export declare function validateGraphPayload(args: {
88
+ sourceEventId: string;
89
+ sourceLayer: "archive_event" | "active_only";
90
+ archiveEventId?: string;
91
+ sessionId: string;
92
+ sourceFile?: string;
93
+ eventType?: string;
94
+ entities?: string[];
95
+ entity_types?: Record<string, string>;
96
+ relations?: GraphRelation[];
97
+ gateSource: "sync" | "session_end" | "manual";
98
+ confidence?: number;
99
+ schema: GraphSchemaConfig;
100
+ sourceText?: string;
101
+ qualityMode?: GraphQualityMode;
102
+ }): ValidateGraphPayloadResult;
53
103
  //# sourceMappingURL=ontology.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ontology.d.ts","sourceRoot":"","sources":["../../../src/graph/ontology.ts"],"names":[],"mappings":"AAIA,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,aAAa,EAAE,OAAO,CAAC;CACxB;AAED,MAAM,WAAW,iBAAiB;IAChC,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,gBAAgB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACzC,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,mBAAmB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC5C,aAAa,EAAE,YAAY,EAAE,CAAC;IAC9B,iBAAiB,EAAE,MAAM,CAAC;CAC3B;AAqGD,wBAAgB,eAAe,CAAC,WAAW,EAAE,MAAM,GAAG,iBAAiB,CAwBtE;AAED,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,iBAAiB,GAAG,MAAM,CAYjF;AAED,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,iBAAiB,GAAG,MAAM,CAYpF;AAED,wBAAgB,gBAAgB,CAAC,IAAI,EAAE;IACrC,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,SAAS,CAAC,EAAE,KAAK,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACpE,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,GAAG,MAAM,CAaT;AAED,wBAAgB,iBAAiB,CAAC,IAAI,EAAE;IACtC,SAAS,EAAE,KAAK,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACnE,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACrC,MAAM,EAAE,iBAAiB,CAAC;CAC3B,GAAG;IACF,QAAQ,EAAE,KAAK,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAClE,QAAQ,EAAE,KAAK,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE;YAAE,MAAM,EAAE,MAAM,CAAC;YAAC,MAAM,EAAE,MAAM,CAAC;YAAC,IAAI,EAAE,MAAM,CAAA;SAAE,CAAA;KAAE,CAAC,CAAC;CACjG,CA8CA"}
1
+ {"version":3,"file":"ontology.d.ts","sourceRoot":"","sources":["../../../src/graph/ontology.ts"],"names":[],"mappings":"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"}
@@ -33,11 +33,14 @@ var __importStar = (this && this.__importStar) || (function () {
33
33
  };
34
34
  })();
35
35
  Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.normalizeEntityName = normalizeEntityName;
36
37
  exports.loadGraphSchema = loadGraphSchema;
37
38
  exports.normalizeEventType = normalizeEventType;
38
39
  exports.normalizeRelationType = normalizeRelationType;
39
40
  exports.buildCanonicalId = buildCanonicalId;
40
41
  exports.validateRelations = validateRelations;
42
+ exports.normalizeEntityType = normalizeEntityType;
43
+ exports.validateGraphPayload = validateGraphPayload;
41
44
  const crypto = __importStar(require("crypto"));
42
45
  const fs = __importStar(require("fs"));
43
46
  const path = __importStar(require("path"));
@@ -85,12 +88,62 @@ const DEFAULT_SCHEMA = {
85
88
  followup: "follow_up",
86
89
  next_action: "follow_up",
87
90
  },
91
+ entityTypes: [
92
+ "Person",
93
+ "FamilyMember",
94
+ "Friend",
95
+ "Team",
96
+ "Project",
97
+ "Task",
98
+ "Plan",
99
+ "Milestone",
100
+ "Location",
101
+ "Event",
102
+ "Schedule",
103
+ "Habit",
104
+ "HealthItem",
105
+ "FinanceItem",
106
+ "Issue",
107
+ "Fix",
108
+ "Decision",
109
+ "Action",
110
+ "Risk",
111
+ "Blocker",
112
+ "Assumption",
113
+ "Concept",
114
+ "Resource",
115
+ "Document",
116
+ ],
117
+ entityAliases: {
118
+ "OpenClaw": ["openclaw", "插件", "该项目", "本项目"],
119
+ "FamilyMember": ["家人", "家庭成员", "亲人"],
120
+ "Friend": ["朋友", "好友"],
121
+ "Location": ["地点", "位置", "住址", "地址"],
122
+ "Event": ["活动", "事情", "事项"],
123
+ "Schedule": ["日程", "安排", "计划表"],
124
+ "Habit": ["习惯", "作息"],
125
+ "HealthItem": ["健康", "体检", "药物", "锻炼"],
126
+ "FinanceItem": ["账单", "支出", "收入", "预算"],
127
+ "Person": ["我", "自己", "本人", "同事", "客户", "用户"],
128
+ "Project": ["项目", "工程"],
129
+ "Task": ["任务", "待办", "todo"],
130
+ "Milestone": ["里程碑", "节点"],
131
+ "Issue": ["问题", "故障", "报错"],
132
+ "Fix": ["修复", "解决方案"],
133
+ },
88
134
  relationTypes: [
89
135
  "depends_on",
90
136
  "blocks",
91
137
  "related_to",
92
138
  "causes",
93
139
  "resolves",
140
+ "plans_to",
141
+ "scheduled_for",
142
+ "lives_in",
143
+ "cares_for",
144
+ "pays_for",
145
+ "supports",
146
+ "conflicts_with",
94
147
  "belongs_to",
95
148
  "owned_by",
96
149
  "references",
@@ -102,6 +155,47 @@ const DEFAULT_SCHEMA = {
102
155
  dependency: "depends_on",
103
156
  blocked_by: "blocks",
104
157
  linked_to: "related_to",
158
+ plan_to: "plans_to",
159
+ schedule_for: "scheduled_for",
160
+ located_in: "lives_in",
161
+ care_for: "cares_for",
162
+ pay_for: "pays_for",
163
+ support: "supports",
164
+ conflict_with: "conflicts_with",
165
+ "依赖于": "depends_on",
166
+ "依赖": "depends_on",
167
+ "取决于": "depends_on",
168
+ "阻塞": "blocks",
169
+ "卡住": "blocks",
170
+ "导致": "causes",
171
+ "引起": "causes",
172
+ "解决": "resolves",
173
+ "修复": "resolves",
174
+ "属于": "belongs_to",
175
+ "归属": "belongs_to",
176
+ "负责": "owned_by",
177
+ "由": "owned_by",
178
+ "参考": "references",
179
+ "引用": "references",
180
+ "偏好": "prefers",
181
+ "更喜欢": "prefers",
182
+ "实现": "implements",
183
+ "需要": "requires",
184
+ "计划做": "plans_to",
185
+ "打算": "plans_to",
186
+ "安排在": "scheduled_for",
187
+ "约在": "scheduled_for",
188
+ "住在": "lives_in",
189
+ "居住在": "lives_in",
190
+ "照顾": "cares_for",
191
+ "看护": "cares_for",
192
+ "支付": "pays_for",
193
+ "付款": "pays_for",
194
+ "支持": "supports",
195
+ "冲突": "conflicts_with",
196
+ "矛盾": "conflicts_with",
197
+ "相关": "related_to",
198
+ "有关": "related_to",
105
199
  belongs: "belongs_to",
106
200
  owner_of: "owned_by",
107
201
  refer_to: "references",
@@ -117,6 +211,12 @@ const DEFAULT_SCHEMA = {
117
211
  { type: "belongs_to", fromTypes: ["Task", "Issue", "Fix", "Decision"], toTypes: ["Project", "Plan", "Milestone"], allowSelfLoop: false },
118
212
  { type: "owned_by", fromTypes: ["Task", "Plan", "Project", "Issue"], toTypes: ["Person", "Team"], allowSelfLoop: false },
119
213
  ],
214
+ highValueRelationTypes: ["depends_on", "blocks", "resolves", "owned_by"],
215
+ relatedToMaxRatio: 0.35,
216
+ relatedToMaxAbsolute: 2,
217
+ minRelationConfidence: 0.35,
218
+ evidenceSpanRequired: true,
219
+ endpointMentionRequired: true,
120
220
  defaultEntityType: "Concept",
121
221
  };
122
222
  function toLowerMap(input) {
@@ -136,6 +236,71 @@ function toKeyedRules(input) {
136
236
  function schemaFilePath(projectRoot) {
137
237
  return path.join(projectRoot, "schema", "graph.schema.yaml");
138
238
  }
239
+ function clampNumber(value, min, max, fallback) {
240
+ if (typeof value !== "number" || !Number.isFinite(value)) {
241
+ return fallback;
242
+ }
243
+ return Math.max(min, Math.min(max, value));
244
+ }
245
+ function sanitizeEntityAliases(input) {
246
+ if (!input || typeof input !== "object" || Array.isArray(input)) {
247
+ return DEFAULT_SCHEMA.entityAliases;
248
+ }
249
+ const output = {};
250
+ for (const [canonical, aliasesRaw] of Object.entries(input)) {
251
+ const canonicalName = canonical.trim();
252
+ if (!canonicalName)
253
+ continue;
254
+ const aliases = Array.isArray(aliasesRaw)
255
+ ? aliasesRaw.map(item => (typeof item === "string" ? item.trim() : "")).filter(Boolean)
256
+ : [];
257
+ output[canonicalName] = aliases;
258
+ }
259
+ return Object.keys(output).length > 0 ? output : DEFAULT_SCHEMA.entityAliases;
260
+ }
261
+ function buildAliasLookup(schema) {
262
+ const lookup = new Map();
263
+ for (const [canonical, aliases] of Object.entries(schema.entityAliases || {})) {
264
+ const normalizedCanonical = canonical.trim();
265
+ if (!normalizedCanonical)
266
+ continue;
267
+ lookup.set(normalizedCanonical.toLowerCase(), normalizedCanonical);
268
+ for (const alias of aliases || []) {
269
+ const normalizedAlias = alias.trim().toLowerCase();
270
+ if (!normalizedAlias)
271
+ continue;
272
+ lookup.set(normalizedAlias, normalizedCanonical);
273
+ }
274
+ }
275
+ return lookup;
276
+ }
277
+ function normalizeEntityName(raw, schema) {
278
+ const value = raw.trim();
279
+ if (!value)
280
+ return "";
281
+ const lookup = buildAliasLookup(schema);
282
+ return lookup.get(value.toLowerCase()) || value;
283
+ }
284
+ function tokenizeForMatch(value) {
285
+ return value.toLowerCase().replace(/[_-]+/g, " ").replace(/\s+/g, " ").trim();
286
+ }
287
+ function entityMentionedInText(entity, sourceText, schema) {
288
+ const text = tokenizeForMatch(sourceText || "");
289
+ if (!text)
290
+ return false;
291
+ const target = tokenizeForMatch(entity);
292
+ if (target && text.includes(target)) {
293
+ return true;
294
+ }
295
+ const aliases = schema.entityAliases[entity] || [];
296
+ for (const alias of aliases) {
297
+ const normalized = tokenizeForMatch(alias);
298
+ if (normalized && text.includes(normalized)) {
299
+ return true;
300
+ }
301
+ }
302
+ return false;
303
+ }
139
304
  function loadGraphSchema(projectRoot) {
140
305
  const filePath = schemaFilePath(projectRoot);
141
306
  if (!fs.existsSync(filePath)) {
@@ -150,9 +315,19 @@ function loadGraphSchema(projectRoot) {
150
315
  return {
151
316
  eventTypes: Array.isArray(parsed.eventTypes) && parsed.eventTypes.length > 0 ? parsed.eventTypes : DEFAULT_SCHEMA.eventTypes,
152
317
  eventTypeAliases: parsed.eventTypeAliases && typeof parsed.eventTypeAliases === "object" ? parsed.eventTypeAliases : DEFAULT_SCHEMA.eventTypeAliases,
318
+ entityTypes: Array.isArray(parsed.entityTypes) && parsed.entityTypes.length > 0 ? parsed.entityTypes : DEFAULT_SCHEMA.entityTypes,
319
+ entityAliases: sanitizeEntityAliases(parsed.entityAliases),
153
320
  relationTypes: Array.isArray(parsed.relationTypes) && parsed.relationTypes.length > 0 ? parsed.relationTypes : DEFAULT_SCHEMA.relationTypes,
154
321
  relationTypeAliases: parsed.relationTypeAliases && typeof parsed.relationTypeAliases === "object" ? parsed.relationTypeAliases : DEFAULT_SCHEMA.relationTypeAliases,
155
322
  relationRules: Array.isArray(parsed.relationRules) && parsed.relationRules.length > 0 ? parsed.relationRules : DEFAULT_SCHEMA.relationRules,
323
+ highValueRelationTypes: Array.isArray(parsed.highValueRelationTypes) && parsed.highValueRelationTypes.length > 0
324
+ ? parsed.highValueRelationTypes.map(item => String(item).trim()).filter(Boolean)
325
+ : DEFAULT_SCHEMA.highValueRelationTypes,
326
+ relatedToMaxRatio: clampNumber(parsed.relatedToMaxRatio, 0, 1, DEFAULT_SCHEMA.relatedToMaxRatio),
327
+ relatedToMaxAbsolute: Math.max(0, Math.floor(clampNumber(parsed.relatedToMaxAbsolute, 0, 20, DEFAULT_SCHEMA.relatedToMaxAbsolute))),
328
+ minRelationConfidence: clampNumber(parsed.minRelationConfidence, 0, 1, DEFAULT_SCHEMA.minRelationConfidence),
329
+ evidenceSpanRequired: typeof parsed.evidenceSpanRequired === "boolean" ? parsed.evidenceSpanRequired : DEFAULT_SCHEMA.evidenceSpanRequired,
330
+ endpointMentionRequired: typeof parsed.endpointMentionRequired === "boolean" ? parsed.endpointMentionRequired : DEFAULT_SCHEMA.endpointMentionRequired,
156
331
  defaultEntityType: typeof parsed.defaultEntityType === "string" && parsed.defaultEntityType.trim()
157
332
  ? parsed.defaultEntityType.trim()
158
333
  : DEFAULT_SCHEMA.defaultEntityType,
@@ -203,8 +378,10 @@ function buildCanonicalId(args) {
203
378
  return `can_${crypto.createHash("sha1").update(payload).digest("hex").slice(0, 20)}`;
204
379
  }
205
380
  function validateRelations(args) {
381
+ const mode = args.qualityMode || "warn";
206
382
  const accepted = [];
207
383
  const rejected = [];
384
+ const warnings = [];
208
385
  const entitySet = new Set(args.entities.map(item => item.trim()).filter(Boolean));
209
386
  const rules = toKeyedRules(args.schema.relationRules);
210
387
  const typeMap = {};
@@ -214,10 +391,14 @@ function validateRelations(args) {
214
391
  }
215
392
  }
216
393
  for (const relation of args.relations) {
217
- const source = relation.source.trim();
218
- const target = relation.target.trim();
394
+ const source = normalizeEntityName(relation.source || "", args.schema);
395
+ const target = normalizeEntityName(relation.target || "", args.schema);
219
396
  const type = normalizeRelationType(relation.type, args.schema);
220
- const normalized = { source, target, type };
397
+ const confidence = typeof relation.confidence === "number"
398
+ ? Math.max(0, Math.min(1, relation.confidence))
399
+ : undefined;
400
+ const evidenceSpan = typeof relation.evidence_span === "string" ? relation.evidence_span.trim() : "";
401
+ const normalized = { source, target, type, confidence, evidence_span: evidenceSpan || undefined };
221
402
  if (!source || !target) {
222
403
  rejected.push({ reason: "empty_edge", relation: normalized });
223
404
  continue;
@@ -245,8 +426,139 @@ function validateRelations(args) {
245
426
  continue;
246
427
  }
247
428
  }
429
+ if (typeof confidence === "number" && confidence < args.schema.minRelationConfidence) {
430
+ rejected.push({ reason: "low_relation_confidence", relation: normalized });
431
+ continue;
432
+ }
433
+ if (mode !== "off" && args.schema.evidenceSpanRequired && args.sourceText) {
434
+ if (!evidenceSpan) {
435
+ if (mode === "strict") {
436
+ rejected.push({ reason: "missing_evidence_span", relation: normalized });
437
+ continue;
438
+ }
439
+ warnings.push({ reason: "missing_evidence_span", relation: normalized });
440
+ }
441
+ else if (!tokenizeForMatch(args.sourceText).includes(tokenizeForMatch(evidenceSpan))) {
442
+ if (mode === "strict") {
443
+ rejected.push({ reason: "evidence_span_not_in_source", relation: normalized });
444
+ continue;
445
+ }
446
+ warnings.push({ reason: "evidence_span_not_in_source", relation: normalized });
447
+ }
448
+ }
449
+ if (mode !== "off" && args.schema.endpointMentionRequired && args.sourceText) {
450
+ const sourceHit = entityMentionedInText(source, args.sourceText, args.schema);
451
+ const targetHit = entityMentionedInText(target, args.sourceText, args.schema);
452
+ if (!sourceHit || !targetHit) {
453
+ if (mode === "strict") {
454
+ rejected.push({ reason: "endpoint_not_in_source_text", relation: normalized });
455
+ continue;
456
+ }
457
+ warnings.push({ reason: "endpoint_not_in_source_text", relation: normalized });
458
+ }
459
+ }
248
460
  accepted.push(normalized);
249
461
  }
250
- return { accepted, rejected };
462
+ if (accepted.length > 0) {
463
+ const highValueSet = new Set((args.schema.highValueRelationTypes || []).map(item => item.toLowerCase()));
464
+ const relatedTo = accepted.filter(item => item.type === "related_to");
465
+ const highValueCount = accepted.filter(item => highValueSet.has(item.type)).length;
466
+ const maxByRatio = Math.max(1, Math.ceil(Math.max(1, highValueCount) * args.schema.relatedToMaxRatio));
467
+ const maxAllowed = Math.max(0, Math.min(args.schema.relatedToMaxAbsolute, maxByRatio));
468
+ if (relatedTo.length > maxAllowed) {
469
+ const sorted = [...relatedTo].sort((a, b) => (b.confidence || 0.5) - (a.confidence || 0.5));
470
+ const keepSet = new Set(sorted.slice(0, maxAllowed).map(item => `${item.source}|${item.type}|${item.target}`));
471
+ const filtered = accepted.filter(item => item.type !== "related_to" || keepSet.has(`${item.source}|${item.type}|${item.target}`));
472
+ if (filtered.length !== accepted.length) {
473
+ for (const item of accepted) {
474
+ if (item.type === "related_to" && !keepSet.has(`${item.source}|${item.type}|${item.target}`)) {
475
+ rejected.push({ reason: "related_to_throttled", relation: item });
476
+ }
477
+ }
478
+ }
479
+ accepted.length = 0;
480
+ accepted.push(...filtered);
481
+ }
482
+ }
483
+ return { accepted, rejected, warnings };
484
+ }
485
+ function normalizeEntityType(raw, schema) {
486
+ const value = raw.trim();
487
+ const entityTypes = new Set(schema.entityTypes.map(item => item));
488
+ if (entityTypes.has(value)) {
489
+ return value;
490
+ }
491
+ return schema.defaultEntityType;
492
+ }
493
+ function validateGraphPayload(args) {
494
+ const sourceEventId = (args.sourceEventId || "").trim();
495
+ if (!sourceEventId) {
496
+ return { valid: false, reason: "source_event_id_empty" };
497
+ }
498
+ const entities = Array.isArray(args.entities)
499
+ ? [...new Set(args.entities.map(item => normalizeEntityName(typeof item === "string" ? item : "", args.schema)).filter(Boolean))]
500
+ : [];
501
+ if (entities.length === 0) {
502
+ return { valid: false, reason: "entities_empty" };
503
+ }
504
+ const entityTypes = args.entity_types || {};
505
+ const validEntityTypes = new Set(args.schema.entityTypes);
506
+ const normalizedEntityTypes = {};
507
+ const aliasLookup = buildAliasLookup(args.schema);
508
+ for (const [nameRaw, typeRaw] of Object.entries(entityTypes)) {
509
+ if (typeof typeRaw !== "string")
510
+ continue;
511
+ const normalizedName = aliasLookup.get(nameRaw.trim().toLowerCase()) || nameRaw.trim();
512
+ if (!normalizedName)
513
+ continue;
514
+ normalizedEntityTypes[normalizedName] = typeRaw.trim();
515
+ }
516
+ for (const entity of entities) {
517
+ const providedType = normalizedEntityTypes[entity];
518
+ if (providedType && validEntityTypes.has(providedType)) {
519
+ normalizedEntityTypes[entity] = providedType;
520
+ }
521
+ else {
522
+ return { valid: false, reason: `entity_type_missing_or_invalid:${entity}` };
523
+ }
524
+ }
525
+ const relationValidation = validateRelations({
526
+ relations: Array.isArray(args.relations) ? args.relations : [],
527
+ entities,
528
+ entityTypes: normalizedEntityTypes,
529
+ schema: args.schema,
530
+ sourceText: args.sourceText,
531
+ qualityMode: args.qualityMode,
532
+ });
533
+ if (relationValidation.accepted.length === 0) {
534
+ return { valid: false, reason: "relations_empty_or_invalid" };
535
+ }
536
+ const id = `gph_${Date.now().toString(36)}_${crypto.randomBytes(4).toString("hex")}`;
537
+ return {
538
+ valid: true,
539
+ warnings: relationValidation.warnings.map(item => item.reason),
540
+ normalized: {
541
+ id,
542
+ source_event_id: args.sourceEventId.trim(),
543
+ source_layer: args.sourceLayer,
544
+ archive_event_id: typeof args.archiveEventId === "string" && args.archiveEventId.trim()
545
+ ? args.archiveEventId.trim()
546
+ : undefined,
547
+ session_id: args.sessionId,
548
+ source_file: typeof args.sourceFile === "string" && args.sourceFile.trim()
549
+ ? args.sourceFile.trim()
550
+ : undefined,
551
+ timestamp: new Date().toISOString(),
552
+ entities,
553
+ entity_types: normalizedEntityTypes,
554
+ relations: relationValidation.accepted,
555
+ gate_source: args.gateSource,
556
+ event_type: typeof args.eventType === "string" && args.eventType.trim()
557
+ ? normalizeEventType(args.eventType, args.schema)
558
+ : undefined,
559
+ schema_version: "1.0.0",
560
+ confidence: args.confidence,
561
+ },
562
+ };
251
563
  }
252
564
  //# sourceMappingURL=ontology.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ontology.js","sourceRoot":"","sources":["../../../src/graph/ontology.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ontology.js","sourceRoot":"","sources":["../../../src/graph/ontology.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAgRA,kDAKC;AAuBD,0CAkCC;AAED,gDAYC;AAED,sDAYC;AAED,4CAmBC;AAED,8CAkHC;AAED,kDAOC;AA0BD,oDAyFC;AA/mBD,+CAAiC;AACjC,uCAAyB;AACzB,2CAA6B;AAoC7B,MAAM,cAAc,GAAsB;IACxC,UAAU,EAAE;QACV,UAAU;QACV,OAAO;QACP,KAAK;QACL,YAAY;QACZ,MAAM;QACN,MAAM;QACN,SAAS;QACT,aAAa;QACb,sBAAsB;QACtB,YAAY;QACZ,aAAa;QACb,WAAW;QACX,SAAS;QACT,YAAY;QACZ,YAAY;QACZ,eAAe;QACf,WAAW;KACZ;IACD,gBAAgB,EAAE;QAChB,OAAO,EAAE,OAAO;QAChB,KAAK,EAAE,OAAO;QACd,GAAG,EAAE,OAAO;QACZ,QAAQ,EAAE,KAAK;QACf,UAAU,EAAE,KAAK;QACjB,IAAI,EAAE,aAAa;QACnB,SAAS,EAAE,aAAa;QACxB,UAAU,EAAE,YAAY;QACxB,SAAS,EAAE,YAAY;QACvB,IAAI,EAAE,aAAa;QACnB,mBAAmB,EAAE,aAAa;QAClC,QAAQ,EAAE,WAAW;QACrB,MAAM,EAAE,WAAW;QACnB,SAAS,EAAE,SAAS;QACpB,KAAK,EAAE,SAAS;QAChB,UAAU,EAAE,YAAY;QACxB,QAAQ,EAAE,YAAY;QACtB,UAAU,EAAE,YAAY;QACxB,MAAM,EAAE,eAAe;QACvB,UAAU,EAAE,eAAe;QAC3B,QAAQ,EAAE,WAAW;QACrB,WAAW,EAAE,WAAW;KACzB;IACD,WAAW,EAAE;QACX,QAAQ;QACR,cAAc;QACd,QAAQ;QACR,MAAM;QACN,SAAS;QACT,MAAM;QACN,MAAM;QACN,WAAW;QACX,UAAU;QACV,OAAO;QACP,UAAU;QACV,OAAO;QACP,YAAY;QACZ,aAAa;QACb,OAAO;QACP,KAAK;QACL,UAAU;QACV,QAAQ;QACR,MAAM;QACN,SAAS;QACT,YAAY;QACZ,SAAS;QACT,UAAU;QACV,UAAU;KACX;IACD,aAAa,EAAE;QACb,UAAU,EAAE,CAAC,UAAU,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,CAAC;QAC5C,cAAc,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC;QACpC,QAAQ,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACtB,UAAU,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC;QACpC,OAAO,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC;QAC3B,UAAU,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,CAAC;QAC/B,OAAO,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACrB,YAAY,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC;QACtC,aAAa,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC;QACvC,QAAQ,EAAE,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC;QAC7C,SAAS,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACvB,MAAM,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,CAAC;QAC5B,WAAW,EAAE,CAAC,KAAK,EAAE,IAAI,CAAC;QAC1B,OAAO,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC;QAC3B,KAAK,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC;KACtB;IACD,aAAa,EAAE;QACb,YAAY;QACZ,QAAQ;QACR,YAAY;QACZ,QAAQ;QACR,UAAU;QACV,UAAU;QACV,eAAe;QACf,UAAU;QACV,WAAW;QACX,UAAU;QACV,UAAU;QACV,gBAAgB;QAChB,YAAY;QACZ,UAAU;QACV,YAAY;QACZ,SAAS;QACT,YAAY;QACZ,UAAU;KACX;IACD,mBAAmB,EAAE;QACnB,UAAU,EAAE,YAAY;QACxB,UAAU,EAAE,QAAQ;QACpB,SAAS,EAAE,YAAY;QACvB,OAAO,EAAE,UAAU;QACnB,YAAY,EAAE,eAAe;QAC7B,UAAU,EAAE,UAAU;QACtB,QAAQ,EAAE,WAAW;QACrB,OAAO,EAAE,UAAU;QACnB,OAAO,EAAE,UAAU;QACnB,aAAa,EAAE,gBAAgB;QAC/B,KAAK,EAAE,YAAY;QACnB,IAAI,EAAE,YAAY;QAClB,KAAK,EAAE,YAAY;QACnB,IAAI,EAAE,QAAQ;QACd,IAAI,EAAE,QAAQ;QACd,IAAI,EAAE,QAAQ;QACd,IAAI,EAAE,QAAQ;QACd,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,YAAY;QAClB,IAAI,EAAE,YAAY;QAClB,IAAI,EAAE,UAAU;QAChB,GAAG,EAAE,UAAU;QACf,IAAI,EAAE,YAAY;QAClB,IAAI,EAAE,YAAY;QAClB,IAAI,EAAE,SAAS;QACf,KAAK,EAAE,SAAS;QAChB,IAAI,EAAE,YAAY;QAClB,IAAI,EAAE,UAAU;QAChB,KAAK,EAAE,UAAU;QACjB,IAAI,EAAE,UAAU;QAChB,KAAK,EAAE,eAAe;QACtB,IAAI,EAAE,eAAe;QACrB,IAAI,EAAE,UAAU;QAChB,KAAK,EAAE,UAAU;QACjB,IAAI,EAAE,WAAW;QACjB,IAAI,EAAE,WAAW;QACjB,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,gBAAgB;QACtB,IAAI,EAAE,gBAAgB;QACtB,IAAI,EAAE,YAAY;QAClB,IAAI,EAAE,YAAY;QAClB,OAAO,EAAE,YAAY;QACrB,QAAQ,EAAE,UAAU;QACpB,QAAQ,EAAE,YAAY;QACtB,cAAc,EAAE,SAAS;QACzB,SAAS,EAAE,YAAY;QACvB,IAAI,EAAE,UAAU;KACjB;IACD,aAAa,EAAE;QACb,EAAE,IAAI,EAAE,YAAY,EAAE,SAAS,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,OAAO,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,aAAa,EAAE,KAAK,EAAE;QAC9H,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,OAAO,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,aAAa,EAAE,KAAK,EAAE;QACzG,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,OAAO,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,EAAE,aAAa,EAAE,KAAK,EAAE;QAChH,EAAE,IAAI,EAAE,UAAU,EAAE,SAAS,EAAE,CAAC,KAAK,EAAE,UAAU,EAAE,QAAQ,CAAC,EAAE,OAAO,EAAE,CAAC,OAAO,EAAE,SAAS,CAAC,EAAE,aAAa,EAAE,KAAK,EAAE;QACnH,EAAE,IAAI,EAAE,YAAY,EAAE,SAAS,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,UAAU,CAAC,EAAE,OAAO,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,aAAa,EAAE,KAAK,EAAE;QACxI,EAAE,IAAI,EAAE,UAAU,EAAE,SAAS,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,CAAC,EAAE,OAAO,EAAE,CAAC,QAAQ,EAAE,MAAM,CAAC,EAAE,aAAa,EAAE,KAAK,EAAE;KACzH;IACD,sBAAsB,EAAE,CAAC,YAAY,EAAE,QAAQ,EAAE,UAAU,EAAE,UAAU,CAAC;IACxE,iBAAiB,EAAE,IAAI;IACvB,oBAAoB,EAAE,CAAC;IACvB,qBAAqB,EAAE,IAAI;IAC3B,oBAAoB,EAAE,IAAI;IAC1B,uBAAuB,EAAE,IAAI;IAC7B,iBAAiB,EAAE,SAAS;CAC7B,CAAC;AAEF,SAAS,UAAU,CAAC,KAA6B;IAC/C,MAAM,MAAM,GAA2B,EAAE,CAAC;IAC1C,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACjD,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;IAClD,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAS,YAAY,CAAC,KAAqB;IACzC,MAAM,GAAG,GAAG,IAAI,GAAG,EAAwB,CAAC;IAC5C,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,EAAE,IAAI,CAAC,CAAC;IAChD,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,SAAS,cAAc,CAAC,WAAmB;IACzC,OAAO,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,QAAQ,EAAE,mBAAmB,CAAC,CAAC;AAC/D,CAAC;AAED,SAAS,WAAW,CAAC,KAAc,EAAE,GAAW,EAAE,GAAW,EAAE,QAAgB;IAC7E,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;QACzD,OAAO,QAAQ,CAAC;IAClB,CAAC;IACD,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC;AAC7C,CAAC;AAED,SAAS,qBAAqB,CAAC,KAAc;IAC3C,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QAChE,OAAO,cAAc,CAAC,aAAa,CAAC;IACtC,CAAC;IACD,MAAM,MAAM,GAA6B,EAAE,CAAC;IAC5C,KAAK,MAAM,CAAC,SAAS,EAAE,UAAU,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAgC,CAAC,EAAE,CAAC;QACvF,MAAM,aAAa,GAAG,SAAS,CAAC,IAAI,EAAE,CAAC;QACvC,IAAI,CAAC,aAAa;YAAE,SAAS;QAC7B,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC;YACvC,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC;YACvF,CAAC,CAAC,EAAE,CAAC;QACP,MAAM,CAAC,aAAa,CAAC,GAAG,OAAO,CAAC;IAClC,CAAC;IACD,OAAO,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,cAAc,CAAC,aAAa,CAAC;AAChF,CAAC;AAED,SAAS,gBAAgB,CAAC,MAAyB;IACjD,MAAM,MAAM,GAAG,IAAI,GAAG,EAAkB,CAAC;IACzC,KAAK,MAAM,CAAC,SAAS,EAAE,OAAO,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,aAAa,IAAI,EAAE,CAAC,EAAE,CAAC;QAC9E,MAAM,mBAAmB,GAAG,SAAS,CAAC,IAAI,EAAE,CAAC;QAC7C,IAAI,CAAC,mBAAmB;YAAE,SAAS;QACnC,MAAM,CAAC,GAAG,CAAC,mBAAmB,CAAC,WAAW,EAAE,EAAE,mBAAmB,CAAC,CAAC;QACnE,KAAK,MAAM,KAAK,IAAI,OAAO,IAAI,EAAE,EAAE,CAAC;YAClC,MAAM,eAAe,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;YACnD,IAAI,CAAC,eAAe;gBAAE,SAAS;YAC/B,MAAM,CAAC,GAAG,CAAC,eAAe,EAAE,mBAAmB,CAAC,CAAC;QACnD,CAAC;IACH,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAgB,mBAAmB,CAAC,GAAW,EAAE,MAAyB;IACxE,MAAM,KAAK,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC;IACzB,IAAI,CAAC,KAAK;QAAE,OAAO,EAAE,CAAC;IACtB,MAAM,MAAM,GAAG,gBAAgB,CAAC,MAAM,CAAC,CAAC;IACxC,OAAO,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,IAAI,KAAK,CAAC;AAClD,CAAC;AAED,SAAS,gBAAgB,CAAC,KAAa;IACrC,OAAO,KAAK,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;AAChF,CAAC;AAED,SAAS,qBAAqB,CAAC,MAAc,EAAE,UAAkB,EAAE,MAAyB;IAC1F,MAAM,IAAI,GAAG,gBAAgB,CAAC,UAAU,IAAI,EAAE,CAAC,CAAC;IAChD,IAAI,CAAC,IAAI;QAAE,OAAO,KAAK,CAAC;IACxB,MAAM,MAAM,GAAG,gBAAgB,CAAC,MAAM,CAAC,CAAC;IACxC,IAAI,MAAM,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;QACpC,OAAO,IAAI,CAAC;IACd,CAAC;IACD,MAAM,OAAO,GAAG,MAAM,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;IACnD,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;QAC5B,MAAM,UAAU,GAAG,gBAAgB,CAAC,KAAK,CAAC,CAAC;QAC3C,IAAI,UAAU,IAAI,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;YAC5C,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAgB,eAAe,CAAC,WAAmB;IACjD,MAAM,QAAQ,GAAG,cAAc,CAAC,WAAW,CAAC,CAAC;IAC7C,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC7B,OAAO,cAAc,CAAC;IACxB,CAAC;IACD,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC;QACtD,IAAI,CAAC,GAAG,EAAE,CAAC;YACT,OAAO,cAAc,CAAC;QACxB,CAAC;QACD,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAA+B,CAAC;QAC7D,OAAO;YACL,UAAU,EAAE,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,MAAM,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,cAAc,CAAC,UAAU;YAC5H,gBAAgB,EAAE,MAAM,CAAC,gBAAgB,IAAI,OAAO,MAAM,CAAC,gBAAgB,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC,CAAC,cAAc,CAAC,gBAAgB;YACpJ,WAAW,EAAE,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,WAAW,CAAC,IAAI,MAAM,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,cAAc,CAAC,WAAW;YACjI,aAAa,EAAE,qBAAqB,CAAC,MAAM,CAAC,aAAa,CAAC;YAC1D,aAAa,EAAE,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,aAAa,CAAC,IAAI,MAAM,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,cAAc,CAAC,aAAa;YAC3I,mBAAmB,EAAE,MAAM,CAAC,mBAAmB,IAAI,OAAO,MAAM,CAAC,mBAAmB,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,mBAAmB,CAAC,CAAC,CAAC,cAAc,CAAC,mBAAmB;YACnK,aAAa,EAAE,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,aAAa,CAAC,IAAI,MAAM,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,cAAc,CAAC,aAAa;YAC3I,sBAAsB,EAAE,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,sBAAsB,CAAC,IAAI,MAAM,CAAC,sBAAsB,CAAC,MAAM,GAAG,CAAC;gBAC9G,CAAC,CAAC,MAAM,CAAC,sBAAsB,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC;gBAChF,CAAC,CAAC,cAAc,CAAC,sBAAsB;YACzC,iBAAiB,EAAE,WAAW,CAAC,MAAM,CAAC,iBAAiB,EAAE,CAAC,EAAE,CAAC,EAAE,cAAc,CAAC,iBAAiB,CAAC;YAChG,oBAAoB,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,MAAM,CAAC,oBAAoB,EAAE,CAAC,EAAE,EAAE,EAAE,cAAc,CAAC,oBAAoB,CAAC,CAAC,CAAC;YACnI,qBAAqB,EAAE,WAAW,CAAC,MAAM,CAAC,qBAAqB,EAAE,CAAC,EAAE,CAAC,EAAE,cAAc,CAAC,qBAAqB,CAAC;YAC5G,oBAAoB,EAAE,OAAO,MAAM,CAAC,oBAAoB,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,oBAAoB,CAAC,CAAC,CAAC,cAAc,CAAC,oBAAoB;YAC1I,uBAAuB,EAAE,OAAO,MAAM,CAAC,uBAAuB,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,uBAAuB,CAAC,CAAC,CAAC,cAAc,CAAC,uBAAuB;YACtJ,iBAAiB,EAAE,OAAO,MAAM,CAAC,iBAAiB,KAAK,QAAQ,IAAI,MAAM,CAAC,iBAAiB,CAAC,IAAI,EAAE;gBAChG,CAAC,CAAC,MAAM,CAAC,iBAAiB,CAAC,IAAI,EAAE;gBACjC,CAAC,CAAC,cAAc,CAAC,iBAAiB;SACrC,CAAC;IACJ,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,cAAc,CAAC;IACxB,CAAC;AACH,CAAC;AAED,SAAgB,kBAAkB,CAAC,GAAW,EAAE,MAAyB;IACvE,MAAM,KAAK,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IACvC,MAAM,OAAO,GAAG,UAAU,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC;IACpD,MAAM,UAAU,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;IAC9E,IAAI,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;QAC1B,OAAO,KAAK,CAAC;IACf,CAAC;IACD,MAAM,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC;IAC9B,IAAI,MAAM,EAAE,CAAC;QACX,OAAO,MAAM,CAAC;IAChB,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAgB,qBAAqB,CAAC,GAAW,EAAE,MAAyB;IAC1E,MAAM,KAAK,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IACvC,MAAM,aAAa,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;IACpF,MAAM,OAAO,GAAG,UAAU,CAAC,MAAM,CAAC,mBAAmB,CAAC,CAAC;IACvD,IAAI,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;QAC7B,OAAO,KAAK,CAAC;IACf,CAAC;IACD,MAAM,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC;IAC9B,IAAI,MAAM,EAAE,CAAC;QACX,OAAO,MAAM,CAAC;IAChB,CAAC;IACD,OAAO,YAAY,CAAC;AACtB,CAAC;AAED,SAAgB,gBAAgB,CAAC,IAMhC;IACC,MAAM,QAAQ,GAAG,CAAC,IAAI,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC;IACrG,MAAM,SAAS,GAAG,CAAC,IAAI,CAAC,SAAS,IAAI,EAAE,CAAC;SACrC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,EAAE,CAAC;SACxH,IAAI,EAAE,CAAC;IACV,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC;QAC7B,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE;QAC9C,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE;QAC1C,QAAQ;QACR,SAAS;QACT,OAAO,EAAE,CAAC,IAAI,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE;KACnD,CAAC,CAAC;IACH,OAAO,OAAO,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC;AACvF,CAAC;AAED,SAAgB,iBAAiB,CAAC,IAOjC;IAKC,MAAM,IAAI,GAAqB,IAAI,CAAC,WAAW,IAAI,MAAM,CAAC;IAC1D,MAAM,QAAQ,GAAoB,EAAE,CAAC;IACrC,MAAM,QAAQ,GAAuD,EAAE,CAAC;IACxE,MAAM,QAAQ,GAAuD,EAAE,CAAC;IACxE,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;IAClF,MAAM,KAAK,GAAG,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;IACtD,MAAM,OAAO,GAA2B,EAAE,CAAC;IAC3C,KAAK,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,IAAI,EAAE,CAAC,EAAE,CAAC;QAClE,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,IAAI,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC;YACvF,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;QACrC,CAAC;IACH,CAAC;IACD,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;QACtC,MAAM,MAAM,GAAG,mBAAmB,CAAC,QAAQ,CAAC,MAAM,IAAI,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QACvE,MAAM,MAAM,GAAG,mBAAmB,CAAC,QAAQ,CAAC,MAAM,IAAI,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QACvE,MAAM,IAAI,GAAG,qBAAqB,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QAC/D,MAAM,UAAU,GAAG,OAAO,QAAQ,CAAC,UAAU,KAAK,QAAQ;YACxD,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,QAAQ,CAAC,UAAU,CAAC,CAAC;YAC/C,CAAC,CAAC,SAAS,CAAC;QACd,MAAM,YAAY,GAAG,OAAO,QAAQ,CAAC,aAAa,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACrG,MAAM,UAAU,GAAkB,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,aAAa,EAAE,YAAY,IAAI,SAAS,EAAE,CAAC;QACjH,IAAI,CAAC,MAAM,IAAI,CAAC,MAAM,EAAE,CAAC;YACvB,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,YAAY,EAAE,QAAQ,EAAE,UAAU,EAAE,CAAC,CAAC;YAC9D,SAAS;QACX,CAAC;QACD,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;YACrD,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,qBAAqB,EAAE,QAAQ,EAAE,UAAU,EAAE,CAAC,CAAC;YACvE,SAAS;QACX,CAAC;QACD,MAAM,IAAI,GAAG,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAC7B,IAAI,MAAM,KAAK,MAAM,IAAI,CAAC,CAAC,IAAI,EAAE,aAAa,IAAI,KAAK,CAAC,EAAE,CAAC;YACzD,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,mBAAmB,EAAE,QAAQ,EAAE,UAAU,EAAE,CAAC,CAAC;YACrE,SAAS;QACX,CAAC;QACD,IAAI,IAAI,EAAE,CAAC;YACT,MAAM,QAAQ,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC,WAAW,EAAE,CAAC;YAClF,MAAM,MAAM,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC,WAAW,EAAE,CAAC;YAChF,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;YAC5E,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;YACxE,IAAI,WAAW,CAAC,IAAI,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;gBACvD,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,mBAAmB,EAAE,QAAQ,EAAE,UAAU,EAAE,CAAC,CAAC;gBACrE,SAAS;YACX,CAAC;YACD,IAAI,SAAS,CAAC,IAAI,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;gBACjD,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,iBAAiB,EAAE,QAAQ,EAAE,UAAU,EAAE,CAAC,CAAC;gBACnE,SAAS;YACX,CAAC;QACH,CAAC;QACD,IAAI,OAAO,UAAU,KAAK,QAAQ,IAAI,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC,qBAAqB,EAAE,CAAC;YACrF,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,yBAAyB,EAAE,QAAQ,EAAE,UAAU,EAAE,CAAC,CAAC;YAC3E,SAAS;QACX,CAAC;QACD,IAAI,IAAI,KAAK,KAAK,IAAI,IAAI,CAAC,MAAM,CAAC,oBAAoB,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YAC1E,IAAI,CAAC,YAAY,EAAE,CAAC;gBAClB,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;oBACtB,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,uBAAuB,EAAE,QAAQ,EAAE,UAAU,EAAE,CAAC,CAAC;oBACzE,SAAS;gBACX,CAAC;gBACD,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,uBAAuB,EAAE,QAAQ,EAAE,UAAU,EAAE,CAAC,CAAC;YAC3E,CAAC;iBAAM,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,QAAQ,CAAC,gBAAgB,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC;gBACvF,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;oBACtB,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,6BAA6B,EAAE,QAAQ,EAAE,UAAU,EAAE,CAAC,CAAC;oBAC/E,SAAS;gBACX,CAAC;gBACD,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,6BAA6B,EAAE,QAAQ,EAAE,UAAU,EAAE,CAAC,CAAC;YACjF,CAAC;QACH,CAAC;QACD,IAAI,IAAI,KAAK,KAAK,IAAI,IAAI,CAAC,MAAM,CAAC,uBAAuB,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YAC7E,MAAM,SAAS,GAAG,qBAAqB,CAAC,MAAM,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;YAC9E,MAAM,SAAS,GAAG,qBAAqB,CAAC,MAAM,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;YAC9E,IAAI,CAAC,SAAS,IAAI,CAAC,SAAS,EAAE,CAAC;gBAC7B,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;oBACtB,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,6BAA6B,EAAE,QAAQ,EAAE,UAAU,EAAE,CAAC,CAAC;oBAC/E,SAAS;gBACX,CAAC;gBACD,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,6BAA6B,EAAE,QAAQ,EAAE,UAAU,EAAE,CAAC,CAAC;YACjF,CAAC;QACH,CAAC;QACD,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IAC5B,CAAC;IACD,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACxB,MAAM,YAAY,GAAG,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,sBAAsB,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;QACzG,MAAM,SAAS,GAAG,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,YAAY,CAAC,CAAC;QACtE,MAAM,cAAc,GAAG,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC;QACnF,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,cAAc,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC,CAAC;QACvG,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,oBAAoB,EAAE,UAAU,CAAC,CAAC,CAAC;QACvF,IAAI,SAAS,CAAC,MAAM,GAAG,UAAU,EAAE,CAAC;YAClC,MAAM,MAAM,GAAG,CAAC,GAAG,SAAS,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,UAAU,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,UAAU,IAAI,GAAG,CAAC,CAAC,CAAC;YAC5F,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;YAC/G,MAAM,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,YAAY,IAAI,OAAO,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;YAClI,IAAI,QAAQ,CAAC,MAAM,KAAK,QAAQ,CAAC,MAAM,EAAE,CAAC;gBACxC,KAAK,MAAM,IAAI,IAAI,QAAQ,EAAE,CAAC;oBAC5B,IAAI,IAAI,CAAC,IAAI,KAAK,YAAY,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC;wBAC7F,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,sBAAsB,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;oBACpE,CAAC;gBACH,CAAC;YACH,CAAC;YACD,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC;YACpB,QAAQ,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC,CAAC;QAC7B,CAAC;IACH,CAAC;IACD,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC;AAC1C,CAAC;AAED,SAAgB,mBAAmB,CAAC,GAAW,EAAE,MAAyB;IACxE,MAAM,KAAK,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC;IACzB,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;IAClE,IAAI,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;QAC3B,OAAO,KAAK,CAAC;IACf,CAAC;IACD,OAAO,MAAM,CAAC,iBAAiB,CAAC;AAClC,CAAC;AA0BD,SAAgB,oBAAoB,CAAC,IAepC;IACC,MAAM,aAAa,GAAG,CAAC,IAAI,CAAC,aAAa,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IACxD,IAAI,CAAC,aAAa,EAAE,CAAC;QACnB,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,uBAAuB,EAAE,CAAC;IAC3D,CAAC;IACD,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC;QAC3C,CAAC,CAAC,CAAC,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,mBAAmB,CAAC,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;QACjI,CAAC,CAAC,EAAE,CAAC;IAEP,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC1B,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,gBAAgB,EAAE,CAAC;IACpD,CAAC;IAED,MAAM,WAAW,GAAG,IAAI,CAAC,YAAY,IAAI,EAAE,CAAC;IAC5C,MAAM,gBAAgB,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;IAC1D,MAAM,qBAAqB,GAA2B,EAAE,CAAC;IACzD,MAAM,WAAW,GAAG,gBAAgB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAClD,KAAK,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,CAAC;QAC7D,IAAI,OAAO,OAAO,KAAK,QAAQ;YAAE,SAAS;QAC1C,MAAM,cAAc,GAAG,WAAW,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;QACvF,IAAI,CAAC,cAAc;YAAE,SAAS;QAC9B,qBAAqB,CAAC,cAAc,CAAC,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC;IACzD,CAAC;IAED,KAAK,MAAM,MAAM,IAAI,QAAQ,EAAE,CAAC;QAC9B,MAAM,YAAY,GAAG,qBAAqB,CAAC,MAAM,CAAC,CAAC;QACnD,IAAI,YAAY,IAAI,gBAAgB,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE,CAAC;YACvD,qBAAqB,CAAC,MAAM,CAAC,GAAG,YAAY,CAAC;QAC/C,CAAC;aAAM,CAAC;YACN,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,kCAAkC,MAAM,EAAE,EAAE,CAAC;QAC9E,CAAC;IACH,CAAC;IAED,MAAM,kBAAkB,GAAG,iBAAiB,CAAC;QAC3C,SAAS,EAAE,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE;QAC9D,QAAQ;QACR,WAAW,EAAE,qBAAqB;QAClC,MAAM,EAAE,IAAI,CAAC,MAAM;QACnB,UAAU,EAAE,IAAI,CAAC,UAAU;QAC3B,WAAW,EAAE,IAAI,CAAC,WAAW;KAC9B,CAAC,CAAC;IAEH,IAAI,kBAAkB,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC7C,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,4BAA4B,EAAE,CAAC;IAChE,CAAC;IAED,MAAM,EAAE,GAAG,OAAO,IAAI,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,IAAI,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;IAErF,OAAO;QACL,KAAK,EAAE,IAAI;QACX,QAAQ,EAAE,kBAAkB,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC;QAC9D,UAAU,EAAE;YACV,EAAE;YACF,eAAe,EAAE,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE;YAC1C,YAAY,EAAE,IAAI,CAAC,WAAW;YAC9B,gBAAgB,EAAE,OAAO,IAAI,CAAC,cAAc,KAAK,QAAQ,IAAI,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE;gBACrF,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE;gBAC5B,CAAC,CAAC,SAAS;YACb,UAAU,EAAE,IAAI,CAAC,SAAS;YAC1B,WAAW,EAAE,OAAO,IAAI,CAAC,UAAU,KAAK,QAAQ,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE;gBACxE,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE;gBACxB,CAAC,CAAC,SAAS;YACb,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;YACnC,QAAQ;YACR,YAAY,EAAE,qBAAqB;YACnC,SAAS,EAAE,kBAAkB,CAAC,QAAQ;YACtC,WAAW,EAAE,IAAI,CAAC,UAAU;YAC5B,UAAU,EAAE,OAAO,IAAI,CAAC,SAAS,KAAK,QAAQ,IAAI,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE;gBACrE,CAAC,CAAC,kBAAkB,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC;gBACjD,CAAC,CAAC,SAAS;YACb,cAAc,EAAE,OAAO;YACvB,UAAU,EAAE,IAAI,CAAC,UAAU;SAC5B;KACF,CAAC;AACJ,CAAC"}
@@ -0,0 +1,48 @@
1
+ export interface ValidationResult {
2
+ valid: boolean;
3
+ data: unknown;
4
+ errors: string[];
5
+ warnings: string[];
6
+ }
7
+ export interface CleanedEventRecord {
8
+ event_type: string;
9
+ summary: string;
10
+ entities: string[];
11
+ entity_types?: Record<string, string>;
12
+ relations: Array<{
13
+ source: string;
14
+ target: string;
15
+ type: string;
16
+ evidence_span?: string;
17
+ confidence?: number;
18
+ }>;
19
+ outcome: string;
20
+ confidence: number;
21
+ }
22
+ export declare function validateLlmJsonOutput(rawString: string): ValidationResult;
23
+ export declare function validateGateDecisionsOutput(rawString: string): ValidationResult;
24
+ export declare function validateArchiveEvent(event: unknown): {
25
+ valid: boolean;
26
+ errors: string[];
27
+ cleaned?: CleanedEventRecord;
28
+ };
29
+ export declare function validateJsonlLine(line: string): {
30
+ valid: boolean;
31
+ record?: Record<string, unknown>;
32
+ errors: string[];
33
+ };
34
+ export declare function validateGraphJsonlLine(line: string): {
35
+ valid: boolean;
36
+ record?: Record<string, unknown>;
37
+ errors: string[];
38
+ warnings: string[];
39
+ };
40
+ export declare function createQualityLogger(baseLogger: {
41
+ debug: (message: string, ...args: unknown[]) => void;
42
+ info: (message: string, ...args: unknown[]) => void;
43
+ warn: (message: string, ...args: unknown[]) => void;
44
+ }): {
45
+ logValidationResult(context: string, result: ValidationResult): void;
46
+ logInvalidRecord(source: string, line: number, errors: string[]): void;
47
+ };
48
+ //# sourceMappingURL=llm_output_validator.d.ts.map