@jmtrin/opencode-kevin 0.2.0 → 0.3.0

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.
@@ -10,9 +10,22 @@ export interface ReflectionInput {
10
10
  sessionId: string;
11
11
  /** Optional project scope for v0.2.0 dedup + per-fingerprint throttle. */
12
12
  projectId?: string | null;
13
+ /** v0.3.0 fix — callID of the failing tool_call. Used by onLinkError
14
+ * (see ReflectorOptions) to stamp tool_calls.error_fingerprint so the
15
+ * feedback loop can match recurrences by the SAME identity dimension
16
+ * the error memory uses. */
17
+ callID?: string;
13
18
  }
14
19
  export interface ReflectorOptions {
15
20
  throttleMs?: number;
21
+ /** v0.3.0 (K3-018) — optional LLM enrichment callback. Default no-op. */
22
+ enrich?: (lesson: string, stderr: string, stdout: string) => Promise<string | null>;
23
+ /** v0.3.0 fix — link a failing tool_call to the stderr-based fingerprint
24
+ * the matching error memory uses. Default no-op. The caller (index.ts)
25
+ * provides an implementation that UPDATEs tool_calls.error_fingerprint
26
+ * for the given callID, so boost/penalize feedback queries stop missing
27
+ * recurrences by fingerprint mismatch. */
28
+ onLinkError?: (callID: string, fingerprint: string) => void;
16
29
  }
17
30
  export interface HeuristicLessonInput {
18
31
  toolName: string;
@@ -34,11 +47,14 @@ export interface DispatchedLesson {
34
47
  }
35
48
  export declare const ERROR_LINE_RE: RegExp;
36
49
  export declare const STRONG_ERROR_RE: RegExp;
50
+ export declare const TS_CODE_RULES: Record<string, string>;
37
51
  export declare class Reflector {
38
52
  private memoryService;
39
53
  private lastReflectionByFp;
40
54
  private throttleMs;
41
55
  private metrics;
56
+ private enrichFn;
57
+ private onLinkErrorFn;
42
58
  constructor(memoryService: MemoryService, options?: ReflectorOptions, metrics?: Metrics | null);
43
59
  invoke(input: ReflectionInput): Promise<string | null>;
44
60
  generateHeuristicLesson(input: HeuristicLessonInput): string;
@@ -25,7 +25,10 @@ const SUGGESTIONS = {
25
25
  // Pure TS, NO LLM hop. Order of dispatch matches the plan §B6.4 priority list:
26
26
  // (1) TS\d{4,5} > (2) Python lint > (3) syscall > (4) generic `Error: <Name>` >
27
27
  // (5) `Command "<cmd>" failed` > (6) v0.1.x SUGGESTIONS fallback.
28
- const TS_CODE_RULES = {
28
+ // v0.2.0 (K2-018) — shared per-error-code rule table. Exported so
29
+ // kevin_why.ts reuses the SAME hints instead of duplicating them
30
+ // (bug #6).
31
+ export const TS_CODE_RULES = {
29
32
  "2304": "import or typo",
30
33
  "2322": "type mismatch",
31
34
  "2740": "missing or wrong property",
@@ -49,10 +52,14 @@ export class Reflector {
49
52
  lastReflectionByFp = new Map();
50
53
  throttleMs;
51
54
  metrics;
55
+ enrichFn;
56
+ onLinkErrorFn;
52
57
  constructor(memoryService, options, metrics) {
53
58
  this.memoryService = memoryService;
54
59
  this.throttleMs = options?.throttleMs ?? DEFAULT_THROTTLE_MS;
55
60
  this.metrics = metrics ?? null;
61
+ this.enrichFn = options?.enrich ?? (async () => null);
62
+ this.onLinkErrorFn = options?.onLinkError ?? (() => { });
56
63
  }
57
64
  async invoke(input) {
58
65
  const now = Date.now();
@@ -66,39 +73,58 @@ export class Reflector {
66
73
  firstErrorLine,
67
74
  dispatched: this.dispatchLesson(redactedStderr, redactedStdout, input.errorType),
68
75
  });
76
+ // v0.3.0 fix (bug #5) — the per-fingerprint throttle check runs
77
+ // BEFORE the optional LLM enrichment, so throttled repeats never
78
+ // waste an LLM call. The fingerprint is computed from the source
79
+ // output when present, otherwise from the PRE-enrichment lesson,
80
+ // keeping the identity stable and identical to the saved memory's.
81
+ const projectId = input.projectId ?? null;
82
+ const fpContent = sourceOutput.length > 0 ? sourceOutput : lesson;
83
+ const fp = computeFingerprint(fpContent, projectId ?? undefined);
84
+ const last = this.lastReflectionByFp.get(fp) ?? 0;
85
+ if (now - last < this.throttleMs) {
86
+ this.metrics?.incr("reflections_throttled", 1);
87
+ return null;
88
+ }
89
+ this.lastReflectionByFp.set(fp, now);
90
+ // v0.3.0 (K3-018): optional LLM enrichment opt-in. Runs only when
91
+ // the throttle check passed (bug #5).
92
+ let enrichedLesson = lesson;
93
+ try {
94
+ const enrichment = await this.enrichFn(lesson, redactedStderr, redactedStdout);
95
+ if (enrichment) {
96
+ enrichedLesson = `${lesson}\n${enrichment}`;
97
+ }
98
+ }
99
+ catch {
100
+ // enrichment failures are non-blocking
101
+ }
69
102
  const metadata = {};
103
+ if (input.callID) {
104
+ metadata.origin_call_id = input.callID;
105
+ }
70
106
  let finalContent;
71
107
  if (sourceOutput.length > 0) {
72
- const fullLen = lesson.length + CONTEXT_PREFIX.length + sourceOutput.length;
108
+ const fullLen = enrichedLesson.length + CONTEXT_PREFIX.length + sourceOutput.length;
73
109
  if (fullLen <= MAX_CONTENT_CHARS) {
74
- finalContent = `${lesson}${CONTEXT_PREFIX}${sourceOutput}`;
110
+ finalContent = `${enrichedLesson}${CONTEXT_PREFIX}${sourceOutput}`;
75
111
  }
76
112
  else {
77
113
  const budget = MAX_CONTENT_CHARS -
78
- lesson.length -
114
+ enrichedLesson.length -
79
115
  CONTEXT_PREFIX.length -
80
116
  TRUNC_SUFFIX.length;
81
117
  const truncated = sourceOutput.slice(0, Math.max(0, budget));
82
- finalContent = `${lesson}${CONTEXT_PREFIX}${truncated}${TRUNC_SUFFIX}`;
118
+ finalContent = `${enrichedLesson}${CONTEXT_PREFIX}${truncated}${TRUNC_SUFFIX}`;
83
119
  metadata.truncated = true;
84
120
  }
85
121
  }
86
122
  else {
87
- finalContent = lesson;
123
+ finalContent = enrichedLesson;
88
124
  }
89
- // K2-007: per-fingerprint throttle keyed by (project_id-salted) hash of
90
- // the source output (or lesson when the output is empty). The same
91
- // fingerprint is also passed to MemoryService.save so dedup and throttle
92
- // agree on identity.
93
- const projectId = input.projectId ?? null;
94
- const fpContent = sourceOutput.length > 0 ? sourceOutput : lesson;
95
- const fp = computeFingerprint(fpContent, projectId ?? undefined);
96
- const last = this.lastReflectionByFp.get(fp) ?? 0;
97
- if (now - last < this.throttleMs) {
98
- this.metrics?.incr("reflections_throttled", 1);
99
- return null;
100
- }
101
- this.lastReflectionByFp.set(fp, now);
125
+ // K2-007: the per-fingerprint throttle check ran above (before
126
+ // enrichment); `fp` is reused here so dedup/throttle and the saved
127
+ // memory agree on identity.
102
128
  const id = this.memoryService.save({
103
129
  type: "error",
104
130
  content: finalContent,
@@ -110,6 +136,19 @@ export class Reflector {
110
136
  projectId: projectId ?? undefined,
111
137
  fingerprint: fp,
112
138
  });
139
+ // v0.3.0 fix — stamp the failing tool_call with the stderr-based
140
+ // fingerprint so the feedback loop's recurrence queries can match
141
+ // it (closes the fingerprint-mismatch bug). Fires even after the
142
+ // dedup path returned an existing memory id, since the current
143
+ // call IS a new occurrence of the same error.
144
+ if (input.callID && this.onLinkErrorFn) {
145
+ try {
146
+ this.onLinkErrorFn(input.callID, fp);
147
+ }
148
+ catch {
149
+ // linking failure is non-blocking
150
+ }
151
+ }
113
152
  return id;
114
153
  }
115
154
  generateHeuristicLesson(input) {
@@ -1 +1 @@
1
- {"version":3,"file":"Reflector.js","sourceRoot":"","sources":["../../plugin/Reflector.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Reflector.js","sourceRoot":"","sources":["../../plugin/Reflector.ts"],"names":[],"mappings":"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"}
@@ -53,7 +53,7 @@ export class ToolCallObserver {
53
53
  .prepare(`INSERT INTO tool_calls
54
54
  (id, session_id, ts, tool, args_summary, success, duration_ms, agent, error_type, metadata, project_id, fingerprint)
55
55
  VALUES (?, ?, datetime('now'), ?, ?, ?, ?, ?, ?, ?, ?, ?)`)
56
- .run(uuidv7(), sessionId, input.tool, argsSummary, success, durationMs, agent, errorType, metadata, projectId, fp);
56
+ .run(input.callID ?? uuidv7(), sessionId, input.tool, argsSummary, success, durationMs, agent, errorType, metadata, projectId, fp);
57
57
  }
58
58
  isDedupEnabled() {
59
59
  try {
@@ -1 +1 @@
1
- {"version":3,"file":"ToolCallObserver.js","sourceRoot":"","sources":["../../plugin/ToolCallObserver.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ToolCallObserver.js","sourceRoot":"","sources":["../../plugin/ToolCallObserver.ts"],"names":[],"mappings":"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"}
@@ -3,6 +3,7 @@ import { homedir } from "node:os";
3
3
  import { dirname, join } from "node:path";
4
4
  import { fileURLToPath } from "node:url";
5
5
  import { tool } from "@opencode-ai/plugin";
6
+ import { CausalChain } from "./CausalChain.js";
6
7
  import { ContextInjector } from "./ContextInjector.js";
7
8
  import { MemoryService, } from "./MemoryService.js";
8
9
  import { Migrate } from "./Migrate.js";
@@ -11,8 +12,11 @@ import { ERROR_LINE_RE, Reflector, STRONG_ERROR_RE } from "./Reflector.js";
11
12
  import { Retrospective } from "./Retrospective.js";
12
13
  import { Store } from "./Store.js";
13
14
  import { ToolCallObserver } from "./ToolCallObserver.js";
15
+ import { kevinWhy } from "./kevin_why.js";
14
16
  import { formatMemories } from "./memory-format.js";
15
17
  import { Metrics, estimateTokens } from "./metrics.js";
18
+ import { exportMarkdown, exportOkf } from "./okf-export.js";
19
+ import { importOkf } from "./okf-import.js";
16
20
  const SYSTEM_TRANSFORM_TOKENS = 1500;
17
21
  const COMPACTING_TOKENS = 2000;
18
22
  function resolveMigrationsDir() {
@@ -33,12 +37,28 @@ export const KevinPlugin = async (input, options) => {
33
37
  const metrics = new Metrics(store);
34
38
  const memoryService = new MemoryService(store, metrics);
35
39
  const observer = new ToolCallObserver(store, metrics);
36
- const reflector = new Reflector(memoryService, { throttleMs: opts.throttleMs }, metrics);
40
+ // v0.3.0 fix Prepared UPDATE used by Reflector.onLinkError to stamp
41
+ // tool_calls.error_fingerprint with the stderr-based fingerprint the
42
+ // matching error memory uses. Closes the feedback-loop fingerprint
43
+ // mismatch (plan §B6.10 / bug #2): without this, the recurrence
44
+ // queries in boostPositiveReflectors / penalizeRecurringReflectors
45
+ // never match because tool_calls.fingerprint is keyed on
46
+ // `${tool}|${args}|${success}` (set by ToolCallObserver) while error
47
+ // memories use a hash of stderr/stdout (set by Reflector). The
48
+ // callback is a no-op for legacy rows without an id column.
49
+ const linkErrorStmt = store.prepare("UPDATE tool_calls SET error_fingerprint = ? WHERE id = ?");
50
+ const reflector = new Reflector(memoryService, {
51
+ throttleMs: opts.throttleMs,
52
+ onLinkError: (callID, fp) => {
53
+ linkErrorStmt.run(fp, callID);
54
+ },
55
+ }, metrics);
37
56
  const injector = new ContextInjector(memoryService, metrics);
38
57
  const retrospective = new Retrospective(store, memoryService, {
39
58
  dir: opts.retrospectivesDir,
40
59
  }, metrics);
41
60
  const patternMiner = new PatternMiner(store, memoryService, metrics);
61
+ const causalChain = new CausalChain(store, memoryService, metrics);
42
62
  let currentSessionId = null;
43
63
  let lastUserQuery = null;
44
64
  const pending = new Set();
@@ -84,6 +104,7 @@ export const KevinPlugin = async (input, options) => {
84
104
  exitCode: undefined,
85
105
  errorType,
86
106
  sessionId: sessionID,
107
+ callID,
87
108
  }));
88
109
  }
89
110
  return {
@@ -91,7 +112,14 @@ export const KevinPlugin = async (input, options) => {
91
112
  kevin_save: tool({
92
113
  description: "Guarda una memoria en el conocimiento persistente de Kevin (error, pattern, decision o context).",
93
114
  args: {
94
- type: tool.schema.enum(["error", "pattern", "decision", "context"]),
115
+ type: tool.schema.enum([
116
+ "error",
117
+ "pattern",
118
+ "decision",
119
+ "context",
120
+ "rule",
121
+ "solution",
122
+ ]),
95
123
  content: tool.schema.string().min(1),
96
124
  scope: tool.schema.enum(["project", "session"]).default("project"),
97
125
  metadata: tool.schema
@@ -119,13 +147,24 @@ export const KevinPlugin = async (input, options) => {
119
147
  args: {
120
148
  query: tool.schema.string().min(1),
121
149
  type: tool.schema
122
- .enum(["error", "pattern", "decision", "context"])
150
+ .enum([
151
+ "error",
152
+ "pattern",
153
+ "decision",
154
+ "context",
155
+ "rule",
156
+ "solution",
157
+ ])
123
158
  .optional(),
124
159
  limit: tool.schema.number().int().positive().default(10),
125
160
  full: tool.schema
126
161
  .boolean()
127
162
  .optional()
128
163
  .describe("Cuando true, retorna el contenido completo (v0.1.x). Default false (slim)."),
164
+ evidence: tool.schema
165
+ .boolean()
166
+ .optional()
167
+ .describe("Cuando true, incluye confidence, evidence_count y last_verified_at en el payload slim (v0.3.0)."),
129
168
  },
130
169
  async execute(args) {
131
170
  const memories = memoryService.query({
@@ -141,13 +180,25 @@ export const KevinPlugin = async (input, options) => {
141
180
  content: m.content,
142
181
  scope: m.scope,
143
182
  }))
144
- : memories.map((m) => ({
145
- id: m.id,
146
- type: m.type,
147
- scope: m.scope,
148
- score: m.score,
149
- snippet: m.snippet,
150
- }));
183
+ : memories.map((m, i) => {
184
+ const base = {
185
+ id: m.id,
186
+ type: m.type,
187
+ scope: m.scope,
188
+ score: m.score,
189
+ snippet: m.snippet,
190
+ };
191
+ if (args.evidence === true) {
192
+ const full = memories[i];
193
+ return {
194
+ ...base,
195
+ confidence: full.confidence ?? null,
196
+ evidence_count: full.evidenceCount ?? null,
197
+ last_verified_at: full.lastVerifiedAt ?? null,
198
+ };
199
+ }
200
+ return base;
201
+ });
151
202
  return {
152
203
  title: "Resultados query",
153
204
  output: JSON.stringify(rows),
@@ -244,6 +295,7 @@ export const KevinPlugin = async (input, options) => {
244
295
  const memoriesReflector = byOrigin.reflector ?? 0;
245
296
  const memoriesAgent = byOrigin.agent ?? 0;
246
297
  const memoriesPattern = byOrigin.pattern ?? 0;
298
+ const memoriesCausal = byOrigin.causal ?? 0;
247
299
  return {
248
300
  title: "Estado de Kevin",
249
301
  output: JSON.stringify({
@@ -251,6 +303,7 @@ export const KevinPlugin = async (input, options) => {
251
303
  memories_reflector: memoriesReflector,
252
304
  memories_agent: memoriesAgent,
253
305
  memories_pattern: memoriesPattern,
306
+ memories_causal: memoriesCausal,
254
307
  tool_calls: toolCallCount.c,
255
308
  retrospectives: retroCount.c,
256
309
  metrics: metrics.snapshot(),
@@ -287,6 +340,58 @@ export const KevinPlugin = async (input, options) => {
287
340
  };
288
341
  },
289
342
  }),
343
+ kevin_why: tool({
344
+ description: "Explica por que Kevin recuerda un hecho (v0.3.0). Retorna summary, confidence, trace de eventos y related_rules.",
345
+ args: {
346
+ query: tool.schema.string().min(1),
347
+ },
348
+ async execute(args) {
349
+ const result = kevinWhy(store, args.query);
350
+ if (!result) {
351
+ return {
352
+ title: "Sin explicacion",
353
+ output: JSON.stringify({
354
+ message: `No causal patterns found for "${args.query}".`,
355
+ }),
356
+ };
357
+ }
358
+ return {
359
+ title: "Explicacion causal",
360
+ output: JSON.stringify(result),
361
+ };
362
+ },
363
+ }),
364
+ kevin_export: tool({
365
+ description: "Exporta memorias curadas (decision, rule, pattern) como markdown o formato OKF. v0.3.0.",
366
+ args: {
367
+ format: tool.schema
368
+ .enum(["okf", "markdown"])
369
+ .default("okf")
370
+ .describe("okf | markdown"),
371
+ },
372
+ async execute(args) {
373
+ const output = args.format === "markdown"
374
+ ? exportMarkdown(store)
375
+ : exportOkf(store);
376
+ return {
377
+ title: "Export completado",
378
+ output,
379
+ };
380
+ },
381
+ }),
382
+ kevin_import: tool({
383
+ description: "Importa un bundle markdown de conocimiento (v0.3.0). Cada entrada se guarda como context con origin='imported'.",
384
+ args: {
385
+ bundle: tool.schema.string().min(1),
386
+ },
387
+ async execute(args) {
388
+ const result = importOkf(args.bundle, memoryService);
389
+ return {
390
+ title: "Import completado",
391
+ output: JSON.stringify(result),
392
+ };
393
+ },
394
+ }),
290
395
  },
291
396
  "tool.execute.before": async (hookInput, output) => {
292
397
  rememberToolCall(hookInput.callID, hookInput.tool, output.args);
@@ -333,8 +438,12 @@ export const KevinPlugin = async (input, options) => {
333
438
  exitCode,
334
439
  errorType,
335
440
  sessionId: hookInput.sessionID,
441
+ callID: hookInput.callID,
336
442
  }));
337
443
  }
444
+ else {
445
+ causalChain.onSuccess(hookInput.tool, hookInput.args, null, hookInput.sessionID);
446
+ }
338
447
  },
339
448
  "chat.message": async (_hookInput, output) => {
340
449
  const text = output.parts
@@ -350,6 +459,9 @@ export const KevinPlugin = async (input, options) => {
350
459
  "experimental.chat.system.transform": async (_hookInput, output) => {
351
460
  if (!lastUserQuery)
352
461
  return;
462
+ const suggestion = injector.generateSuggestion();
463
+ if (suggestion)
464
+ output.system.push(suggestion);
353
465
  const memories = memoryService.getRelevant({
354
466
  query: lastUserQuery,
355
467
  maxTokens: SYSTEM_TRANSFORM_TOKENS,
@@ -365,6 +477,9 @@ export const KevinPlugin = async (input, options) => {
365
477
  const query = lastUserQuery;
366
478
  if (!query)
367
479
  return;
480
+ const suggestion = injector.generateSuggestion();
481
+ if (suggestion)
482
+ output.context.push(suggestion);
368
483
  const memories = memoryService.getRelevant({
369
484
  query,
370
485
  maxTokens: COMPACTING_TOKENS,
@@ -390,7 +505,12 @@ export const KevinPlugin = async (input, options) => {
390
505
  toolCache.clear();
391
506
  fireAndForget(retrospective.generate(sid));
392
507
  memoryService.boostPositiveReflectors(sid);
508
+ const recurred = memoryService.penalizeRecurringReflectors(sid);
509
+ injector.setRecurrences(recurred);
393
510
  patternMiner.mine();
511
+ fireAndForget(Promise.resolve().then(() => {
512
+ causalChain.onSessionIdle(sid);
513
+ }));
394
514
  }
395
515
  metrics.flush();
396
516
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../plugin/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../plugin/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAChD,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAEzC,OAAO,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAC;AAC3C,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAEN,aAAa,GAEb,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAC3E,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACnC,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAE1C,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,EAAE,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AACvD,OAAO,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5D,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAS5C,MAAM,uBAAuB,GAAG,IAAI,CAAC;AACrC,MAAM,iBAAiB,GAAG,IAAI,CAAC;AAE/B,SAAS,oBAAoB;IAC5B,MAAM,IAAI,GAAG,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;IACrD,OAAO,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,YAAY,CAAC,CAAC;AACvC,CAAC;AAED,MAAM,CAAC,MAAM,WAAW,GAAW,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;IAC3D,MAAM,IAAI,GAAG,CAAC,OAAO,IAAI,EAAE,CAAuB,CAAC;IACnD,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,OAAO,EAAE,EAAE,iBAAiB,EAAE,UAAU,CAAC,CAAC;IAC7E,IAAI,MAAM,KAAK,UAAU,EAAE,CAAC;QAC3B,MAAM,KAAK,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;QAC9B,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC;YAAE,SAAS,CAAC,KAAK,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC/D,CAAC;IACD,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;IAC1C,MAAM,aAAa,GAAG,IAAI,CAAC,aAAa,IAAI,oBAAoB,EAAE,CAAC;IACnE,MAAM,IAAI,OAAO,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC,GAAG,EAAE,CAAC;IAC9C,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,KAAK,CAAC,CAAC;IACnC,MAAM,aAAa,GAAG,IAAI,aAAa,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IACxD,MAAM,QAAQ,GAAG,IAAI,gBAAgB,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IACtD,sEAAsE;IACtE,qEAAqE;IACrE,mEAAmE;IACnE,gEAAgE;IAChE,mEAAmE;IACnE,yDAAyD;IACzD,qEAAqE;IACrE,+DAA+D;IAC/D,4DAA4D;IAC5D,MAAM,aAAa,GAAG,KAAK,CAAC,OAAO,CAClC,0DAA0D,CAC1D,CAAC;IACF,MAAM,SAAS,GAAG,IAAI,SAAS,CAC9B,aAAa,EACb;QACC,UAAU,EAAE,IAAI,CAAC,UAAU;QAC3B,WAAW,EAAE,CAAC,MAAM,EAAE,EAAE,EAAE,EAAE;YAC3B,aAAa,CAAC,GAAG,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;QAC/B,CAAC;KACD,EACD,OAAO,CACP,CAAC;IACF,MAAM,QAAQ,GAAG,IAAI,eAAe,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;IAC7D,MAAM,aAAa,GAAG,IAAI,aAAa,CACtC,KAAK,EACL,aAAa,EACb;QACC,GAAG,EAAE,IAAI,CAAC,iBAAiB;KAC3B,EACD,OAAO,CACP,CAAC;IACF,MAAM,YAAY,GAAG,IAAI,YAAY,CAAC,KAAK,EAAE,aAAa,EAAE,OAAO,CAAC,CAAC;IACrE,MAAM,WAAW,GAAG,IAAI,WAAW,CAAC,KAAK,EAAE,aAAa,EAAE,OAAO,CAAC,CAAC;IACnE,IAAI,gBAAgB,GAAkB,IAAI,CAAC;IAC3C,IAAI,aAAa,GAAkB,IAAI,CAAC;IACxC,MAAM,OAAO,GAAG,IAAI,GAAG,EAAoB,CAAC;IAC5C,MAAM,SAAS,GAAG,IAAI,GAAG,EAAiD,CAAC;IAC3E,MAAM,cAAc,GAAG,GAAG,CAAC;IAC3B,SAAS,aAAa,CAAC,CAAmB;QACzC,MAAM,OAAO,GAAG,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;QAClC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QACrB,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE;YACpB,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACzB,CAAC,CAAC,CAAC;IACJ,CAAC;IACD,SAAS,gBAAgB,CACxB,MAAc,EACd,IAAY,EACZ,IAAyC;QAEzC,IAAI,SAAS,CAAC,IAAI,IAAI,cAAc,EAAE,CAAC;YACtC,MAAM,MAAM,GAAG,SAAS,CAAC,IAAI,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC;YAC7C,IAAI,MAAM;gBAAE,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QACtC,CAAC;QACD,SAAS,CAAC,GAAG,CAAC,MAAM,EAAE;YACrB,IAAI;YACJ,WAAW,EAAE,QAAQ,CAAC,aAAa,CAAC,IAAI,IAAI,EAAE,CAAC;SAC/C,CAAC,CAAC;IACJ,CAAC;IACD,SAAS,YAAY,CAAC,IAA6B;QAClD,KAAK,MAAM,CAAC,IAAI,CAAC,UAAU,EAAE,WAAW,EAAE,MAAM,CAAC,EAAE,CAAC;YACnD,MAAM,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,IAAI,OAAO,CAAC,KAAK,QAAQ;gBAAE,OAAO,CAAC,CAAC;QACrC,CAAC;QACD,OAAO,SAAS,CAAC;IAClB,CAAC;IAED,SAAS,gBAAgB,CACxB,MAAc,EACd,SAAiB,EACjB,YAAoB;QAEpB,MAAM,MAAM,GAAG,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACrC,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QACzB,IAAI,CAAC,MAAM;YAAE,OAAO;QACpB,MAAM,SAAS,GAAG,QAAQ,CAAC,cAAc,CAAC,YAAY,EAAE,EAAE,EAAE,SAAS,CAAC,CAAC;QACvE,aAAa,CACZ,SAAS,CAAC,MAAM,CAAC;YAChB,QAAQ,EAAE,MAAM,CAAC,IAAI;YACrB,WAAW,EAAE,MAAM,CAAC,WAAW;YAC/B,MAAM,EAAE,YAAY;YACpB,MAAM,EAAE,EAAE;YACV,QAAQ,EAAE,SAAS;YACnB,SAAS;YACT,SAAS,EAAE,SAAS;YACpB,MAAM;SACN,CAAC,CACF,CAAC;IACH,CAAC;IAED,OAAO;QACN,IAAI,EAAE;YACL,UAAU,EAAE,IAAI,CAAC;gBAChB,WAAW,EACV,kGAAkG;gBACnG,IAAI,EAAE;oBACL,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;wBACtB,OAAO;wBACP,SAAS;wBACT,UAAU;wBACV,SAAS;wBACT,MAAM;wBACN,UAAU;qBACV,CAAC;oBACF,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;oBACpC,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC;oBAClE,QAAQ,EAAE,IAAI,CAAC,MAAM;yBACnB,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;yBACnD,QAAQ,EAAE;oBACZ,cAAc,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;oBAC7D,UAAU,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;oBAC3C,aAAa,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;iBAC9C;gBACD,KAAK,CAAC,OAAO,CAAC,IAAI;oBACjB,MAAM,EAAE,GAAG,aAAa,CAAC,IAAI,CAAC;wBAC7B,IAAI,EAAE,IAAI,CAAC,IAAI;wBACf,OAAO,EAAE,IAAI,CAAC,OAAO;wBACrB,KAAK,EAAE,IAAI,CAAC,KAAK;wBACjB,QAAQ,EAAE,IAAI,CAAC,QAAQ;wBACvB,cAAc,EAAE,IAAI,CAAC,cAAc;wBACnC,UAAU,EAAE,IAAI,CAAC,UAAU;wBAC3B,aAAa,EAAE,IAAI,CAAC,aAAa;qBACjC,CAAC,CAAC;oBACH,OAAO,EAAE,KAAK,EAAE,kBAAkB,EAAE,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC;gBACtE,CAAC;aACD,CAAC;YACF,WAAW,EAAE,IAAI,CAAC;gBACjB,WAAW,EACV,wKAAwK;gBACzK,IAAI,EAAE;oBACL,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;oBAClC,IAAI,EAAE,IAAI,CAAC,MAAM;yBACf,IAAI,CAAC;wBACL,OAAO;wBACP,SAAS;wBACT,UAAU;wBACV,SAAS;wBACT,MAAM;wBACN,UAAU;qBACV,CAAC;yBACD,QAAQ,EAAE;oBACZ,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;oBACxD,IAAI,EAAE,IAAI,CAAC,MAAM;yBACf,OAAO,EAAE;yBACT,QAAQ,EAAE;yBACV,QAAQ,CACR,4EAA4E,CAC5E;oBACF,QAAQ,EAAE,IAAI,CAAC,MAAM;yBACnB,OAAO,EAAE;yBACT,QAAQ,EAAE;yBACV,QAAQ,CACR,iGAAiG,CACjG;iBACF;gBACD,KAAK,CAAC,OAAO,CAAC,IAAI;oBACjB,MAAM,QAAQ,GAAG,aAAa,CAAC,KAAK,CAAC;wBACpC,IAAI,EAAE,IAAI,CAAC,KAAK;wBAChB,IAAI,EAAE,IAAI,CAAC,IAAI;wBACf,KAAK,EAAE,IAAI,CAAC,KAAK;wBACjB,IAAI,EAAE,IAAI,CAAC,IAAI,KAAK,IAAI;qBACxB,CAAC,CAAC;oBACH,MAAM,IAAI,GACT,IAAI,CAAC,IAAI,KAAK,IAAI;wBACjB,CAAC,CAAE,QAAgC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;4BAC9C,EAAE,EAAE,CAAC,CAAC,EAAE;4BACR,IAAI,EAAE,CAAC,CAAC,IAAI;4BACZ,OAAO,EAAE,CAAC,CAAC,OAAO;4BAClB,KAAK,EAAE,CAAC,CAAC,KAAK;yBACd,CAAC,CAAC;wBACJ,CAAC,CAAE,QAAyB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;4BACxC,MAAM,IAAI,GAAG;gCACZ,EAAE,EAAE,CAAC,CAAC,EAAE;gCACR,IAAI,EAAE,CAAC,CAAC,IAAI;gCACZ,KAAK,EAAE,CAAC,CAAC,KAAK;gCACd,KAAK,EAAE,CAAC,CAAC,KAAK;gCACd,OAAO,EAAE,CAAC,CAAC,OAAO;6BAClB,CAAC;4BACF,IAAI,IAAI,CAAC,QAAQ,KAAK,IAAI,EAAE,CAAC;gCAC5B,MAAM,IAAI,GAAI,QAAgC,CAAC,CAAC,CAAC,CAAC;gCAClD,OAAO;oCACN,GAAG,IAAI;oCACP,UAAU,EAAE,IAAI,CAAC,UAAU,IAAI,IAAI;oCACnC,cAAc,EAAE,IAAI,CAAC,aAAa,IAAI,IAAI;oCAC1C,gBAAgB,EAAE,IAAI,CAAC,cAAc,IAAI,IAAI;iCAC7C,CAAC;4BACH,CAAC;4BACD,OAAO,IAAI,CAAC;wBACb,CAAC,CAAC,CAAC;oBACN,OAAO;wBACN,KAAK,EAAE,kBAAkB;wBACzB,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;qBAC5B,CAAC;gBACH,CAAC;aACD,CAAC;YACF,SAAS,EAAE,IAAI,CAAC;gBACf,WAAW,EACV,+JAA+J;gBAChK,IAAI,EAAE;oBACL,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;iBAC/B;gBACD,KAAK,CAAC,OAAO,CAAC,IAAI;oBACjB,MAAM,GAAG,GAAG,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;oBAC3C,IAAI,GAAG,KAAK,IAAI,EAAE,CAAC;wBAClB,OAAO;4BACN,KAAK,EAAE,eAAe;4BACtB,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC;gCACtB,KAAK,EAAE,WAAW;gCAClB,EAAE,EAAE,IAAI,CAAC,EAAE;6BACX,CAAC;yBACF,CAAC;oBACH,CAAC;oBACD,OAAO;wBACN,KAAK,EAAE,oBAAoB;wBAC3B,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC;4BACtB,EAAE,EAAE,GAAG,CAAC,EAAE;4BACV,IAAI,EAAE,GAAG,CAAC,IAAI;4BACd,OAAO,EAAE,GAAG,CAAC,OAAO;4BACpB,KAAK,EAAE,GAAG,CAAC,KAAK;4BAChB,cAAc,EAAE,GAAG,CAAC,cAAc;4BAClC,UAAU,EAAE,GAAG,CAAC,UAAU,IAAI,IAAI;4BAClC,aAAa,EAAE,GAAG,CAAC,aAAa,IAAI,IAAI;4BACxC,SAAS,EAAE,GAAG,CAAC,SAAS;4BACxB,SAAS,EAAE,GAAG,CAAC,SAAS;4BACxB,SAAS,EAAE,GAAG,CAAC,SAAS,IAAI,IAAI;4BAChC,SAAS,EAAE,GAAG,CAAC,SAAS,IAAI,IAAI;4BAChC,WAAW,EAAE,GAAG,CAAC,WAAW,IAAI,IAAI;4BACpC,MAAM,EAAE,GAAG,CAAC,MAAM,IAAI,IAAI;4BAC1B,QAAQ,EAAE,GAAG,CAAC,QAAQ,IAAI,IAAI;yBAC9B,CAAC;qBACF,CAAC;gBACH,CAAC;aACD,CAAC;YACF,YAAY,EAAE,IAAI,CAAC;gBAClB,WAAW,EACV,qHAAqH;gBACtH,IAAI,EAAE;oBACL,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;oBACtC,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;oBACvD,KAAK,EAAE,IAAI,CAAC,MAAM;yBAChB,IAAI,CAAC,CAAC,SAAS,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;yBACnC,QAAQ,EAAE;yBACV,QAAQ,CAAC,uCAAuC,CAAC;iBACnD;gBACD,KAAK,CAAC,OAAO,CAAC,IAAI;oBACjB,MAAM,QAAQ,GAAG,aAAa,CAAC,WAAW,CAAC;wBAC1C,KAAK,EAAE,IAAI,CAAC,KAAK;wBACjB,SAAS,EAAE,IAAI,CAAC,KAAK,GAAG,GAAG;wBAC3B,KAAK,EAAE,IAAI,CAAC,KAAK,IAAI,KAAK;qBAC1B,CAAC,CAAC;oBACH,OAAO;wBACN,KAAK,EAAE,qBAAqB;wBAC5B,MAAM,EAAE,IAAI,CAAC,SAAS,CACrB,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;4BACpB,EAAE,EAAE,CAAC,CAAC,EAAE;4BACR,IAAI,EAAE,CAAC,CAAC,IAAI;4BACZ,OAAO,EAAE,CAAC,CAAC,OAAO;4BAClB,KAAK,EAAE,CAAC,CAAC,KAAK;yBACd,CAAC,CAAC,CACH;qBACD,CAAC;gBACH,CAAC;aACD,CAAC;YACF,YAAY,EAAE,IAAI,CAAC;gBAClB,WAAW,EACV,6EAA6E;gBAC9E,IAAI,EAAE,EAAE;gBACR,KAAK,CAAC,OAAO;oBACZ,MAAM,WAAW,GAAG,KAAK;yBACvB,OAAO,CAAC,oCAAoC,CAAC;yBAC7C,GAAG,EAAmB,CAAC;oBACzB,MAAM,aAAa,GAAG,KAAK;yBACzB,OAAO,CAAC,sCAAsC,CAAC;yBAC/C,GAAG,EAAmB,CAAC;oBACzB,MAAM,UAAU,GAAG,KAAK;yBACtB,OAAO,CAAC,0CAA0C,CAAC;yBACnD,GAAG,EAAmB,CAAC;oBACzB,wDAAwD;oBACxD,MAAM,UAAU,GAAG,KAAK;yBACtB,OAAO,CACP;;wBAEiB,CACjB;yBACA,GAAG,EAA4C,CAAC;oBAClD,MAAM,QAAQ,GAA2B,EAAE,CAAC;oBAC5C,KAAK,MAAM,CAAC,IAAI,UAAU,EAAE,CAAC;wBAC5B,QAAQ,CAAC,CAAC,CAAC,MAAM,IAAI,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;oBACrC,CAAC;oBACD,MAAM,iBAAiB,GAAG,QAAQ,CAAC,SAAS,IAAI,CAAC,CAAC;oBAClD,MAAM,aAAa,GAAG,QAAQ,CAAC,KAAK,IAAI,CAAC,CAAC;oBAC1C,MAAM,eAAe,GAAG,QAAQ,CAAC,OAAO,IAAI,CAAC,CAAC;oBAC9C,MAAM,cAAc,GAAG,QAAQ,CAAC,MAAM,IAAI,CAAC,CAAC;oBAC5C,OAAO;wBACN,KAAK,EAAE,iBAAiB;wBACxB,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC;4BACtB,QAAQ,EAAE,WAAW,CAAC,CAAC;4BACvB,kBAAkB,EAAE,iBAAiB;4BACrC,cAAc,EAAE,aAAa;4BAC7B,gBAAgB,EAAE,eAAe;4BACjC,eAAe,EAAE,cAAc;4BAC/B,UAAU,EAAE,aAAa,CAAC,CAAC;4BAC3B,cAAc,EAAE,UAAU,CAAC,CAAC;4BAC5B,OAAO,EAAE,OAAO,CAAC,QAAQ,EAAE;yBAC3B,CAAC;qBACF,CAAC;gBACH,CAAC;aACD,CAAC;YACF,mBAAmB,EAAE,IAAI,CAAC;gBACzB,WAAW,EACV,sGAAsG;gBACvG,IAAI,EAAE;oBACL,UAAU,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;iBAC3C;gBACD,KAAK,CAAC,OAAO,CAAC,IAAI;oBACjB,MAAM,GAAG,GAAG,IAAI,CAAC,UAAU,IAAI,gBAAgB,CAAC;oBAChD,IAAI,CAAC,GAAG,EAAE,CAAC;wBACV,OAAO;4BACN,KAAK,EAAE,uBAAuB;4BAC9B,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC;gCACtB,OAAO,EACN,2DAA2D;6BAC5D,CAAC;yBACF,CAAC;oBACH,CAAC;oBACD,MAAM,QAAQ,GAAG,MAAM,aAAa,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;oBACnD,OAAO,QAAQ;wBACd,CAAC,CAAC;4BACA,KAAK,EAAE,wBAAwB;4BAC/B,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC;yBAC/C;wBACF,CAAC,CAAC;4BACA,KAAK,EAAE,uBAAuB;4BAC9B,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC;gCACtB,OAAO,EACN,qDAAqD;6BACtD,CAAC;yBACF,CAAC;gBACL,CAAC;aACD,CAAC;YACF,SAAS,EAAE,IAAI,CAAC;gBACf,WAAW,EACV,kHAAkH;gBACnH,IAAI,EAAE;oBACL,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;iBAClC;gBACD,KAAK,CAAC,OAAO,CAAC,IAAI;oBACjB,MAAM,MAAM,GAAG,QAAQ,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;oBAC3C,IAAI,CAAC,MAAM,EAAE,CAAC;wBACb,OAAO;4BACN,KAAK,EAAE,iBAAiB;4BACxB,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC;gCACtB,OAAO,EAAE,iCAAiC,IAAI,CAAC,KAAK,IAAI;6BACxD,CAAC;yBACF,CAAC;oBACH,CAAC;oBACD,OAAO;wBACN,KAAK,EAAE,oBAAoB;wBAC3B,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC;qBAC9B,CAAC;gBACH,CAAC;aACD,CAAC;YACF,YAAY,EAAE,IAAI,CAAC;gBAClB,WAAW,EACV,yFAAyF;gBAC1F,IAAI,EAAE;oBACL,MAAM,EAAE,IAAI,CAAC,MAAM;yBACjB,IAAI,CAAC,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC;yBACzB,OAAO,CAAC,KAAK,CAAC;yBACd,QAAQ,CAAC,gBAAgB,CAAC;iBAC5B;gBACD,KAAK,CAAC,OAAO,CAAC,IAAI;oBACjB,MAAM,MAAM,GACX,IAAI,CAAC,MAAM,KAAK,UAAU;wBACzB,CAAC,CAAC,cAAc,CAAC,KAAK,CAAC;wBACvB,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;oBACrB,OAAO;wBACN,KAAK,EAAE,mBAAmB;wBAC1B,MAAM;qBACN,CAAC;gBACH,CAAC;aACD,CAAC;YACF,YAAY,EAAE,IAAI,CAAC;gBAClB,WAAW,EACV,iHAAiH;gBAClH,IAAI,EAAE;oBACL,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;iBACnC;gBACD,KAAK,CAAC,OAAO,CAAC,IAAI;oBACjB,MAAM,MAAM,GAAG,SAAS,CAAC,IAAI,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;oBACrD,OAAO;wBACN,KAAK,EAAE,mBAAmB;wBAC1B,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC;qBAC9B,CAAC;gBACH,CAAC;aACD,CAAC;SACF;QAED,qBAAqB,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,EAAE;YAClD,gBAAgB,CACf,SAAS,CAAC,MAAM,EAChB,SAAS,CAAC,IAAI,EACd,MAAM,CAAC,IAA2C,CAClD,CAAC;YACF,QAAQ,CAAC,QAAQ,CAChB;gBACC,IAAI,EAAE,SAAS,CAAC,IAAI;gBACpB,IAAI,EAAE,MAAM,CAAC,IAA+B;gBAC5C,SAAS,EAAE,SAAS,CAAC,SAAS;gBAC9B,MAAM,EAAE,SAAS,CAAC,MAAM;aACxB,EACD,EAAE,CACF,CAAC;QACH,CAAC;QAED,oBAAoB,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,EAAE;YACjD,MAAM,IAAI,GAAG,CAAC,MAAM,CAAC,QAAQ,IAAI,EAAE,CAA4B,CAAC;YAChE,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC;YAC/C,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC;YACzC,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,IAAI,UAAU,CAAC,CAAC;YACjD,MAAM,QAAQ,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;YACpC,IAAI,OAAgB,CAAC;YACrB,IAAI,IAAI,CAAC,OAAO,KAAK,KAAK,EAAE,CAAC;gBAC5B,OAAO,GAAG,KAAK,CAAC;YACjB,CAAC;iBAAM,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;gBACnC,OAAO,GAAG,QAAQ,KAAK,CAAC,CAAC;YAC1B,CAAC;iBAAM,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,IAAI,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;gBAC5D,OAAO,GAAG,KAAK,CAAC;YACjB,CAAC;iBAAM,CAAC;gBACP,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC;gBACvD,OAAO,GAAG,CAAC,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,IAAI,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;YAChE,CAAC;YACD,QAAQ,CAAC,OAAO,CACf;gBACC,IAAI,EAAE,SAAS,CAAC,IAAI;gBACpB,IAAI,EAAE,SAAS,CAAC,IAA+B;gBAC/C,SAAS,EAAE,SAAS,CAAC,SAAS;gBAC9B,MAAM,EAAE,SAAS,CAAC,MAAM;aACxB,EACD,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,CACrC,CAAC;YACF,IAAI,CAAC,OAAO,EAAE,CAAC;gBACd,MAAM,SAAS,GAAG,QAAQ,CAAC,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC;gBACpE,aAAa,CACZ,SAAS,CAAC,MAAM,CAAC;oBAChB,QAAQ,EAAE,SAAS,CAAC,IAAI;oBACxB,WAAW,EAAE,QAAQ,CAAC,aAAa,CAClC,SAAS,CAAC,IAA+B,CACzC;oBACD,MAAM;oBACN,MAAM;oBACN,QAAQ;oBACR,SAAS;oBACT,SAAS,EAAE,SAAS,CAAC,SAAS;oBAC9B,MAAM,EAAE,SAAS,CAAC,MAAM;iBACxB,CAAC,CACF,CAAC;YACH,CAAC;iBAAM,CAAC;gBACP,WAAW,CAAC,SAAS,CACpB,SAAS,CAAC,IAAI,EACd,SAAS,CAAC,IAA+B,EACzC,IAAI,EACJ,SAAS,CAAC,SAAS,CACnB,CAAC;YACH,CAAC;QACF,CAAC;QAED,cAAc,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,EAAE,EAAE;YAC5C,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK;iBACvB,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAqC,CAAC;iBACjD,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC;iBAChC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC;iBACxB,IAAI,CAAC,GAAG,CAAC,CAAC;YACZ,IAAI,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC;gBACjB,MAAM,OAAO,GAAG,QAAQ,CAAC,WAAW,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;gBACxE,aAAa,GAAG,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC;YACrD,CAAC;QACF,CAAC;QAED,oCAAoC,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,EAAE,EAAE;YAClE,IAAI,CAAC,aAAa;gBAAE,OAAO;YAC3B,MAAM,UAAU,GAAG,QAAQ,CAAC,kBAAkB,EAAE,CAAC;YACjD,IAAI,UAAU;gBAAE,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YAC/C,MAAM,QAAQ,GAAG,aAAa,CAAC,WAAW,CAAC;gBAC1C,KAAK,EAAE,aAAa;gBACpB,SAAS,EAAE,uBAAuB;gBAClC,KAAK,EAAE,SAAS;aAChB,CAAC,CAAC;YACH,MAAM,KAAK,GAAG,cAAc,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;YAClD,IAAI,KAAK,EAAE,CAAC;gBACX,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBAC1B,OAAO,CAAC,IAAI,CAAC,4BAA4B,EAAE,cAAc,CAAC,KAAK,CAAC,CAAC,CAAC;YACnE,CAAC;QACF,CAAC;QAED,iCAAiC,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,EAAE,EAAE;YAC/D,MAAM,KAAK,GAAG,aAAa,CAAC;YAC5B,IAAI,CAAC,KAAK;gBAAE,OAAO;YACnB,MAAM,UAAU,GAAG,QAAQ,CAAC,kBAAkB,EAAE,CAAC;YACjD,IAAI,UAAU;gBAAE,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YAChD,MAAM,QAAQ,GAAG,aAAa,CAAC,WAAW,CAAC;gBAC1C,KAAK;gBACL,SAAS,EAAE,iBAAiB;gBAC5B,KAAK,EAAE,SAAS;aAChB,CAAC,CAAC;YACH,MAAM,KAAK,GAAG,cAAc,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;YACjD,IAAI,KAAK,EAAE,CAAC;gBACX,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBAC3B,OAAO,CAAC,IAAI,CAAC,4BAA4B,EAAE,cAAc,CAAC,KAAK,CAAC,CAAC,CAAC;YACnE,CAAC;QACF,CAAC;QAED,KAAK,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE;YAC1B,MAAM,IAAI,GAAI,KAA2B,CAAC,IAAI,CAAC;YAC/C,MAAM,KAAK,GACT,KAAkD,CAAC,UAAU,IAAI,EAAE,CAAC;YACtE,IAAI,IAAI,KAAK,iBAAiB,EAAE,CAAC;gBAChC,MAAM,IAAI,GAAG,KAAK,CAAC,IAAmC,CAAC;gBACvD,IAAI,IAAI,EAAE,EAAE;oBAAE,gBAAgB,GAAG,IAAI,CAAC,EAAE,CAAC;YAC1C,CAAC;iBAAM,IAAI,IAAI,KAAK,cAAc,EAAE,CAAC;gBACpC,MAAM,GAAG,GAAG,KAAK,CAAC,SAA+B,CAAC;gBAClD,IAAI,GAAG,EAAE,CAAC;oBACT,SAAS,CAAC,KAAK,EAAE,CAAC;oBAClB,aAAa,CAAC,aAAa,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC;oBAC3C,aAAa,CAAC,uBAAuB,CAAC,GAAG,CAAC,CAAC;oBAC3C,MAAM,QAAQ,GAAG,aAAa,CAAC,2BAA2B,CAAC,GAAG,CAAC,CAAC;oBAChE,QAAQ,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC;oBAClC,YAAY,CAAC,IAAI,EAAE,CAAC;oBACpB,aAAa,CACZ,OAAO,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE;wBAC3B,WAAW,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;oBAChC,CAAC,CAAC,CACF,CAAC;gBACH,CAAC;gBACD,OAAO,CAAC,KAAK,EAAE,CAAC;YACjB,CAAC;iBAAM,IAAI,IAAI,KAAK,0BAA0B,EAAE,CAAC;gBAChD,MAAM,MAAM,GAAG,KAAK,CAAC,MAA4B,CAAC;gBAClD,MAAM,SAAS,GAAG,KAAK,CAAC,SAA+B,CAAC;gBACxD,MAAM,KAAK,GAAG,KAAK,CAAC,KAAyC,CAAC;gBAC9D,IAAI,MAAM,IAAI,SAAS,IAAI,KAAK,EAAE,OAAO,EAAE,CAAC;oBAC3C,gBAAgB,CAAC,MAAM,EAAE,SAAS,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;gBACpD,CAAC;YACF,CAAC;iBAAM,IAAI,IAAI,KAAK,2BAA2B,EAAE,CAAC;gBACjD,MAAM,MAAM,GAAG,KAAK,CAAC,MAA4B,CAAC;gBAClD,IAAI,MAAM;oBAAE,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;YACtC,CAAC;QACF,CAAC;QAED,OAAO,EAAE,KAAK,IAAI,EAAE;YACnB,MAAM,OAAO,CAAC,UAAU,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;YACvC,OAAO,CAAC,KAAK,EAAE,CAAC;YAChB,KAAK,CAAC,KAAK,EAAE,CAAC;QACf,CAAC;KACD,CAAC;AACH,CAAC,CAAC;AAEF,eAAe,WAAW,CAAC"}
@@ -0,0 +1,19 @@
1
+ import type { Store } from "./Store.js";
2
+ export interface WhyInput {
3
+ query: string;
4
+ }
5
+ export interface WhyTraceEvent {
6
+ event: "failure" | "fix";
7
+ fingerprint: string;
8
+ session: string;
9
+ ts: string;
10
+ }
11
+ export interface WhyResult {
12
+ summary: string;
13
+ confidence: number;
14
+ evidence_count: number;
15
+ last_verified: string | null;
16
+ trace: WhyTraceEvent[];
17
+ related_rules: string[];
18
+ }
19
+ export declare function kevinWhy(store: Store, query: string): WhyResult | null;