@askdkc/kiokuko 0.1.23 → 0.1.25

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 (74) hide show
  1. package/dist/agent-file/render.d.ts +1 -1
  2. package/dist/agent-file/render.d.ts.map +1 -1
  3. package/dist/agent-file/render.js +7 -6
  4. package/dist/agent-file/render.js.map +1 -1
  5. package/dist/akinator/agent-task.d.ts +7 -0
  6. package/dist/akinator/agent-task.d.ts.map +1 -1
  7. package/dist/akinator/agent-task.js +31 -16
  8. package/dist/akinator/agent-task.js.map +1 -1
  9. package/dist/akinator/capabilities.d.ts +3 -0
  10. package/dist/akinator/capabilities.d.ts.map +1 -1
  11. package/dist/akinator/capabilities.js +11 -0
  12. package/dist/akinator/capabilities.js.map +1 -1
  13. package/dist/akinator/service.js +2 -2
  14. package/dist/akinator/service.js.map +1 -1
  15. package/dist/cli.d.ts.map +1 -1
  16. package/dist/cli.js +11 -4
  17. package/dist/cli.js.map +1 -1
  18. package/dist/commands/setup.d.ts +3 -0
  19. package/dist/commands/setup.d.ts.map +1 -1
  20. package/dist/commands/setup.js +71 -2
  21. package/dist/commands/setup.js.map +1 -1
  22. package/dist/commands/use.d.ts +2 -1
  23. package/dist/commands/use.d.ts.map +1 -1
  24. package/dist/commands/use.js +20 -5
  25. package/dist/commands/use.js.map +1 -1
  26. package/dist/context/feedback.d.ts +2 -3
  27. package/dist/context/feedback.d.ts.map +1 -1
  28. package/dist/context/feedback.js +2 -3
  29. package/dist/context/feedback.js.map +1 -1
  30. package/dist/context/selection-state.d.ts +3 -2
  31. package/dist/context/selection-state.d.ts.map +1 -1
  32. package/dist/context/selection-state.js +8 -2
  33. package/dist/context/selection-state.js.map +1 -1
  34. package/dist/ledger/checkpoint-contract.d.ts +139 -2
  35. package/dist/ledger/checkpoint-contract.d.ts.map +1 -1
  36. package/dist/ledger/checkpoint-contract.js +85 -1
  37. package/dist/ledger/checkpoint-contract.js.map +1 -1
  38. package/dist/mcp/server.d.ts.map +1 -1
  39. package/dist/mcp/server.js +11 -51
  40. package/dist/mcp/server.js.map +1 -1
  41. package/dist/memory/checkpoint-contract.d.ts +490 -0
  42. package/dist/memory/checkpoint-contract.d.ts.map +1 -0
  43. package/dist/memory/checkpoint-contract.js +105 -0
  44. package/dist/memory/checkpoint-contract.js.map +1 -0
  45. package/dist/memory/curator-trust.d.ts +15 -0
  46. package/dist/memory/curator-trust.d.ts.map +1 -0
  47. package/dist/memory/curator-trust.js +58 -0
  48. package/dist/memory/curator-trust.js.map +1 -0
  49. package/dist/memory/curator.d.ts +2 -2
  50. package/dist/memory/curator.d.ts.map +1 -1
  51. package/dist/memory/curator.js +47 -15
  52. package/dist/memory/curator.js.map +1 -1
  53. package/dist/memory/scoped-memory.d.ts +9 -3
  54. package/dist/memory/scoped-memory.d.ts.map +1 -1
  55. package/dist/memory/scoped-memory.js +198 -109
  56. package/dist/memory/scoped-memory.js.map +1 -1
  57. package/dist/repository/detect-root.d.ts +1 -0
  58. package/dist/repository/detect-root.d.ts.map +1 -1
  59. package/dist/repository/detect-root.js +1 -1
  60. package/dist/repository/detect-root.js.map +1 -1
  61. package/dist/server/routes/agent-capability-gate.d.ts.map +1 -1
  62. package/dist/server/routes/agent-capability-gate.js +10 -8
  63. package/dist/server/routes/agent-capability-gate.js.map +1 -1
  64. package/dist/server/routes/task5.js +1 -1
  65. package/dist/server/routes/task5.js.map +1 -1
  66. package/dist/setup/project-agent-refresh.d.ts +41 -0
  67. package/dist/setup/project-agent-refresh.d.ts.map +1 -0
  68. package/dist/setup/project-agent-refresh.js +157 -0
  69. package/dist/setup/project-agent-refresh.js.map +1 -0
  70. package/dist/setup/render.d.ts.map +1 -1
  71. package/dist/setup/render.js +13 -12
  72. package/dist/setup/render.js.map +1 -1
  73. package/package.json +1 -1
  74. package/templates/AGENTS.md +6 -5
@@ -15,6 +15,7 @@ import { findSecret } from './secrets.js';
15
15
  import { assertContextFeedbackRecordable, recordContextFeedbackInTransaction } from '../context/feedback.js';
16
16
  import { readContextDelivery } from '../context/delivery.js';
17
17
  import { recordKnowledgePathsInTransaction } from '../akinator/knowledge-path.js';
18
+ import { CHECKPOINT_COMMAND_FIELD_NAMES, CHECKPOINT_EVIDENCE_FIELD_NAMES, CHECKPOINT_FEEDBACK_FIELD_NAMES, CHECKPOINT_OUTCOMES, CHECKPOINT_RESULT_OUTCOMES, CHECKPOINT_TEST_FIELD_NAMES, CHECKPOINT_VERIFICATION_FIELD_NAMES, MAX_CHECKPOINT_EVIDENCE_ITEMS, MAX_CHECKPOINT_EXECUTABLE_CHARS, MAX_CHECKPOINT_PATHS, MAX_CHECKPOINT_SHORT_TEXT_CHARS, MAX_CHECKPOINT_SIGNALS, } from '../ledger/checkpoint-contract.js';
18
19
  const GIT_PROVENANCE_TIMEOUT_MS = 5_000;
19
20
  const GIT_PROVENANCE_MAX_BUFFER = 64 * 1024;
20
21
  const executeGitProvenance = (executable, args, options) => execFileSync(executable, args, options);
@@ -67,8 +68,8 @@ const CHECKPOINT_MEMORY_FIELDS = new Set([
67
68
  'kind', 'title', 'body', 'summary', 'scope', 'retrievalScope', 'tags', 'confidence',
68
69
  'memoryClass', 'applicability', 'signals', 'portableReason',
69
70
  ]);
70
- const CHECKPOINT_FEEDBACK_FIELDS = new Set(['entryId', 'entryRevision', 'verdict', 'comment']);
71
- const CHECKPOINT_OUTCOMES = new Set(['completed', 'failed', 'cancelled', 'interrupted']);
71
+ const CHECKPOINT_INPUT_FIELDS = new Set(['cwd', 'memories', 'runId', 'deliveryId', 'outcome', 'feedback', 'evidence']);
72
+ const CHECKPOINT_FEEDBACK_FIELDS = new Set(CHECKPOINT_FEEDBACK_FIELD_NAMES);
72
73
  function assertCheckpointEligible(status) {
73
74
  const eligibility = checkpointEligibility(status);
74
75
  if (eligibility.allowed)
@@ -86,9 +87,12 @@ function checkpointObject(value, allowed, message) {
86
87
  if (prototype !== Object.prototype && prototype !== null) {
87
88
  throw new KiokukoError('VALIDATION_ERROR', message);
88
89
  }
90
+ const keys = Reflect.ownKeys(value);
91
+ if (keys.length > allowed.size)
92
+ throw new KiokukoError('VALIDATION_ERROR', message);
89
93
  const result = Object.create(null);
90
94
  const descriptors = Object.getOwnPropertyDescriptors(value);
91
- for (const key of Reflect.ownKeys(value)) {
95
+ for (const key of keys) {
92
96
  if (typeof key !== 'string' || !allowed.has(key)) {
93
97
  throw new KiokukoError('VALIDATION_ERROR', message);
94
98
  }
@@ -107,87 +111,192 @@ function sameProject(left, right) {
107
111
  && left.repositoryId === right.repositoryId
108
112
  && left.workspace === right.workspace;
109
113
  }
110
- function boundedEvidence(raw) {
111
- if (raw === undefined)
112
- return { changedPaths: [], errorSignatures: [], commands: [], tests: [] };
113
- if (typeof raw !== 'object' || raw === null || Array.isArray(raw))
114
- throw new KiokukoError('VALIDATION_ERROR', 'Evidence is invalid');
115
- let canonicalEvidence;
116
- try {
117
- canonicalEvidence = canonicalJson(raw);
114
+ function checkpointArray(value, maximum, message) {
115
+ if (!Array.isArray(value) || isProxy(value) || value.length > maximum) {
116
+ throw new KiokukoError('VALIDATION_ERROR', message);
118
117
  }
119
- catch (error) {
120
- if (error instanceof RangeError || (error instanceof KiokukoError && error.code === 'VALIDATION_ERROR')) {
121
- throw new KiokukoError('VALIDATION_ERROR', 'Evidence is invalid');
118
+ const keys = Reflect.ownKeys(value);
119
+ if (keys.length !== value.length + 1 || !keys.includes('length') || keys.some((key) => typeof key !== 'string')) {
120
+ throw new KiokukoError('VALIDATION_ERROR', message);
121
+ }
122
+ const descriptors = Object.getOwnPropertyDescriptors(value);
123
+ const result = [];
124
+ for (let index = 0; index < value.length; index += 1) {
125
+ const descriptor = descriptors[String(index)];
126
+ if (descriptor === undefined || !('value' in descriptor) || descriptor.enumerable !== true) {
127
+ throw new KiokukoError('VALIDATION_ERROR', message);
122
128
  }
123
- throw error;
129
+ result.push(descriptor.value);
124
130
  }
125
- if (findSecret(canonicalEvidence))
126
- throw new KiokukoError('SECURITY_REJECTION', 'Evidence resembles a secret and was not stored');
127
- const value = raw;
128
- if (Object.keys(value).some((field) => !['changedPaths', 'errorSignatures', 'commands', 'tests', 'verification'].includes(field)))
129
- throw new KiokukoError('VALIDATION_ERROR', 'Evidence is invalid');
130
- const strings = (value, max) => {
131
- if (value === undefined)
131
+ return result;
132
+ }
133
+ function boundedEvidence(raw) {
134
+ if (raw === undefined)
135
+ return { changedPaths: [], errorSignatures: [], commands: [], tests: [] };
136
+ const value = checkpointObject(raw, new Set(CHECKPOINT_EVIDENCE_FIELD_NAMES), 'Evidence is invalid');
137
+ const evidenceError = () => new KiokukoError('VALIDATION_ERROR', 'Evidence is invalid');
138
+ const pathError = () => new KiokukoError('VALIDATION_ERROR', 'Evidence path is invalid');
139
+ const strings = (candidate, maximum) => {
140
+ if (candidate === undefined)
132
141
  return [];
133
- if (!Array.isArray(value) || value.length > max || value.some((item) => typeof item !== 'string' || item.length === 0 || item.length > 500 || /[\u0000-\u001f\u007f]/u.test(item)))
134
- throw new KiokukoError('VALIDATION_ERROR', 'Evidence is invalid');
135
- return [...new Set(value)];
142
+ const values = checkpointArray(candidate, maximum, 'Evidence is invalid');
143
+ return [...new Set(values.map((item) => {
144
+ if (typeof item !== 'string' || item.length === 0 || item.length > MAX_CHECKPOINT_SHORT_TEXT_CHARS || /[\u0000-\u001f\u007f]/u.test(item)) {
145
+ throw evidenceError();
146
+ }
147
+ return item;
148
+ }))];
136
149
  };
137
- const changedPaths = strings(value.changedPaths, 200).map((item) => {
138
- if (item.startsWith('/') || /^[A-Za-z]:[\\/]/u.test(item) || item.split(/[\\/]/u).includes('..'))
139
- throw new KiokukoError('VALIDATION_ERROR', 'Evidence path is invalid');
150
+ const changedPaths = strings(value.changedPaths, MAX_CHECKPOINT_PATHS).map((item) => {
151
+ if (item.startsWith('/') || item.startsWith('\\') || /^[A-Za-z]:/u.test(item) || item.split(/[\\/]/u).includes('..'))
152
+ throw pathError();
140
153
  return item.replaceAll('\\', '/');
141
154
  });
142
- const errorSignatures = strings(value.errorSignatures, 200);
155
+ const errorSignatures = strings(value.errorSignatures, MAX_CHECKPOINT_SIGNALS);
143
156
  const normalizeItems = (items, kind) => {
144
157
  if (items === undefined)
145
158
  return [];
146
- if (!Array.isArray(items) || items.length > 100)
147
- throw new KiokukoError('VALIDATION_ERROR', 'Evidence is invalid');
148
- return items.map((item) => {
149
- if (typeof item !== 'object' || item === null || Array.isArray(item))
150
- throw new KiokukoError('VALIDATION_ERROR', 'Evidence is invalid');
151
- const record = item;
152
- const allowedFields = kind === 'command' ? ['executable', 'classification', 'exitCode', 'outcome', 'digest'] : ['runner', 'target', 'outcome', 'digest'];
153
- if (Object.keys(record).some((field) => !allowedFields.includes(field)))
154
- throw new KiokukoError('VALIDATION_ERROR', 'Evidence is invalid');
155
- const required = kind === 'command' ? 'executable' : 'runner';
156
- if (typeof record[required] !== 'string' || record[required].length === 0 || record[required].length > 200)
157
- throw new KiokukoError('VALIDATION_ERROR', 'Evidence is invalid');
158
- if (typeof record.outcome !== 'string' || !['passed', 'failed', 'unknown'].includes(record.outcome))
159
- throw new KiokukoError('VALIDATION_ERROR', 'Evidence is invalid');
160
- const result = { [required]: record[required], outcome: record.outcome };
161
- for (const field of kind === 'command' ? ['classification', 'digest'] : ['target', 'digest']) {
162
- if (record[field] !== undefined) {
163
- if (typeof record[field] !== 'string' || record[field].length === 0 || record[field].length > 500)
164
- throw new KiokukoError('VALIDATION_ERROR', 'Evidence is invalid');
165
- result[field] = record[field];
166
- }
159
+ const values = checkpointArray(items, MAX_CHECKPOINT_EVIDENCE_ITEMS, 'Evidence is invalid');
160
+ const allowedFields = new Set(kind === 'command' ? CHECKPOINT_COMMAND_FIELD_NAMES : CHECKPOINT_TEST_FIELD_NAMES);
161
+ const optionalFields = kind === 'command' ? ['classification', 'digest'] : ['target', 'digest'];
162
+ const required = kind === 'command' ? 'executable' : 'runner';
163
+ return values.map((item) => {
164
+ const record = checkpointObject(item, allowedFields, 'Evidence is invalid');
165
+ const requiredValue = record[required];
166
+ if (typeof requiredValue !== 'string' || requiredValue.length === 0
167
+ || requiredValue.length > MAX_CHECKPOINT_EXECUTABLE_CHARS
168
+ || /[\u0000-\u001f\u007f]/u.test(requiredValue))
169
+ throw evidenceError();
170
+ const rawOutcome = record.outcome;
171
+ if (typeof rawOutcome !== 'string' || !CHECKPOINT_RESULT_OUTCOMES.includes(rawOutcome))
172
+ throw evidenceError();
173
+ const outcome = rawOutcome;
174
+ const optional = {};
175
+ for (const field of optionalFields) {
176
+ const optionalValue = record[field];
177
+ if (optionalValue === undefined)
178
+ continue;
179
+ if (typeof optionalValue !== 'string' || optionalValue.length === 0
180
+ || optionalValue.length > MAX_CHECKPOINT_SHORT_TEXT_CHARS
181
+ || /[\u0000-\u001f\u007f]/u.test(optionalValue))
182
+ throw evidenceError();
183
+ if (field === 'classification' || field === 'target' || field === 'digest')
184
+ optional[field] = optionalValue;
167
185
  }
168
- if (kind === 'command' && record.exitCode !== undefined) {
186
+ if (kind === 'command') {
169
187
  const exitCode = record.exitCode;
170
- if (typeof exitCode !== 'number' || !Number.isSafeInteger(exitCode) || exitCode < 0)
171
- throw new KiokukoError('VALIDATION_ERROR', 'Evidence is invalid');
172
- result.exitCode = exitCode;
188
+ if (exitCode !== undefined && (typeof exitCode !== 'number' || !Number.isSafeInteger(exitCode) || exitCode < 0))
189
+ throw evidenceError();
190
+ return {
191
+ executable: requiredValue,
192
+ outcome,
193
+ ...(optional.classification === undefined ? {} : { classification: optional.classification }),
194
+ ...(exitCode === undefined ? {} : { exitCode }),
195
+ ...(optional.digest === undefined ? {} : { digest: optional.digest }),
196
+ };
173
197
  }
174
- return result;
198
+ return {
199
+ runner: requiredValue,
200
+ outcome,
201
+ ...(optional.target === undefined ? {} : { target: optional.target }),
202
+ ...(optional.digest === undefined ? {} : { digest: optional.digest }),
203
+ };
175
204
  });
176
205
  };
177
- const verification = value.verification === undefined ? undefined : (() => {
178
- if (typeof value.verification !== 'object' || value.verification === null || Array.isArray(value.verification))
179
- throw new KiokukoError('VALIDATION_ERROR', 'Evidence is invalid');
180
- const verificationValue = value.verification;
181
- if (Object.keys(verificationValue).some((field) => field !== 'outcome'))
182
- throw new KiokukoError('VALIDATION_ERROR', 'Evidence is invalid');
183
- const outcome = verificationValue.outcome;
184
- if (typeof outcome !== 'string' || !['fresh', 'stale', 'failed', 'unknown'].includes(outcome))
185
- throw new KiokukoError('VALIDATION_ERROR', 'Evidence is invalid');
186
- return { outcome };
187
- })();
188
206
  const commands = normalizeItems(value.commands, 'command');
189
207
  const tests = normalizeItems(value.tests, 'test');
190
- return { changedPaths, errorSignatures, commands, tests, ...(verification === undefined ? {} : { verification }) };
208
+ const verification = value.verification === undefined ? undefined : (() => {
209
+ const verificationValue = checkpointObject(value.verification, new Set(CHECKPOINT_VERIFICATION_FIELD_NAMES), 'Evidence is invalid');
210
+ const rawOutcome = verificationValue.outcome;
211
+ if (typeof rawOutcome !== 'string' || !['fresh', 'stale', 'failed', 'unknown'].includes(rawOutcome))
212
+ throw evidenceError();
213
+ return { outcome: rawOutcome };
214
+ })();
215
+ const normalized = {
216
+ changedPaths,
217
+ errorSignatures,
218
+ commands,
219
+ tests,
220
+ ...(verification === undefined ? {} : { verification }),
221
+ };
222
+ let canonicalEvidence;
223
+ try {
224
+ canonicalEvidence = canonicalJson(normalized);
225
+ }
226
+ catch (error) {
227
+ if (error instanceof RangeError || (error instanceof KiokukoError && error.code === 'VALIDATION_ERROR')) {
228
+ throw new KiokukoError('VALIDATION_ERROR', 'Evidence is invalid');
229
+ }
230
+ throw error;
231
+ }
232
+ if (findSecret(canonicalEvidence))
233
+ throw new KiokukoError('SECURITY_REJECTION', 'Evidence resembles a secret and was not stored');
234
+ return normalized;
235
+ }
236
+ function checkpointIdentifier(value, label) {
237
+ if (value === undefined)
238
+ return undefined;
239
+ if (typeof value !== 'string' || value.length === 0 || value.length > 256 || value.trim() !== value || /\p{Cc}/u.test(value)) {
240
+ throw new KiokukoError('VALIDATION_ERROR', `${label} is invalid`);
241
+ }
242
+ return value;
243
+ }
244
+ function normalizeCheckpointInput(input) {
245
+ const value = checkpointObject(input, CHECKPOINT_INPUT_FIELDS, 'Checkpoint input is invalid');
246
+ const cwd = value.cwd === undefined
247
+ ? undefined
248
+ : typeof value.cwd === 'string' && value.cwd.length > 0 && !/\p{Cc}/u.test(value.cwd)
249
+ ? value.cwd
250
+ : (() => { throw new KiokukoError('VALIDATION_ERROR', 'Checkpoint cwd is invalid'); })();
251
+ const memoryValues = value.memories === undefined
252
+ ? []
253
+ : checkpointArray(value.memories, 20, 'Checkpoint memories must be an array');
254
+ const memories = memoryValues.map((memory) => checkpointObject(memory, CHECKPOINT_MEMORY_FIELDS, 'Checkpoint memory is invalid'));
255
+ const feedbackValues = value.feedback === undefined
256
+ ? []
257
+ : checkpointArray(value.feedback, 100, 'Checkpoint feedback is invalid');
258
+ const feedback = feedbackValues.map((item) => checkpointObject(item, CHECKPOINT_FEEDBACK_FIELDS, 'Checkpoint feedback is invalid'));
259
+ const evidence = boundedEvidence(value.evidence);
260
+ const runId = checkpointIdentifier(value.runId, 'Checkpoint runId');
261
+ const deliveryId = checkpointIdentifier(value.deliveryId, 'Checkpoint deliveryId');
262
+ const rawOutcome = value.outcome;
263
+ if (runId === undefined) {
264
+ if (memories.length === 0)
265
+ throw new KiokukoError('VALIDATION_ERROR', 'Without runId, at least one memory is required');
266
+ if (rawOutcome !== undefined)
267
+ throw new KiokukoError('VALIDATION_ERROR', 'Checkpoint outcome requires runId');
268
+ if (deliveryId !== undefined)
269
+ throw new KiokukoError('VALIDATION_ERROR', 'Checkpoint deliveryId requires runId');
270
+ if (value.feedback !== undefined)
271
+ throw new KiokukoError('VALIDATION_ERROR', 'Checkpoint feedback requires runId');
272
+ if (value.evidence !== undefined)
273
+ throw new KiokukoError('VALIDATION_ERROR', 'Checkpoint evidence requires runId');
274
+ return { ...(cwd === undefined ? {} : { cwd }), memories };
275
+ }
276
+ if (typeof rawOutcome !== 'string' || !CHECKPOINT_OUTCOMES.includes(rawOutcome)) {
277
+ throw new KiokukoError('VALIDATION_ERROR', 'Checkpoint outcome is required and invalid');
278
+ }
279
+ const outcome = rawOutcome;
280
+ const hasEvidence = evidence.changedPaths.length > 0
281
+ || evidence.errorSignatures.length > 0
282
+ || evidence.commands.length > 0
283
+ || evidence.tests.length > 0
284
+ || evidence.verification !== undefined;
285
+ if (memories.length === 0 && feedback.length === 0 && !hasEvidence) {
286
+ throw new KiokukoError('VALIDATION_ERROR', 'An empty checkpoint is not allowed');
287
+ }
288
+ if (feedback.length > 0 && deliveryId === undefined) {
289
+ throw new KiokukoError('VALIDATION_ERROR', 'Checkpoint feedback requires deliveryId');
290
+ }
291
+ return {
292
+ ...(cwd === undefined ? {} : { cwd }),
293
+ memories,
294
+ runId,
295
+ ...(deliveryId === undefined ? {} : { deliveryId }),
296
+ outcome,
297
+ feedback,
298
+ evidence,
299
+ };
191
300
  }
192
301
  export async function recallScopedMemory(database, input) {
193
302
  return retrieveFederatedMemory(database, {
@@ -202,49 +311,27 @@ export async function recallScopedMemory(database, input) {
202
311
  });
203
312
  }
204
313
  export async function checkpointScopedMemory(database, input) {
205
- if (!Array.isArray(input.memories))
206
- throw new KiokukoError('VALIDATION_ERROR', 'Checkpoint memories must be an array');
207
- if (input.memories.length === 0 && input.runId === undefined)
208
- throw new KiokukoError('VALIDATION_ERROR', 'A checkpoint requires a run or at least one memory');
209
- if (input.memories.length > 20)
210
- throw new KiokukoError('VALIDATION_ERROR', 'At most 20 memories may be checkpointed at once');
211
- const memories = input.memories.map((memory) => checkpointObject(memory, CHECKPOINT_MEMORY_FIELDS, 'Checkpoint memory is invalid'));
212
- if (input.feedback !== undefined && (!Array.isArray(input.feedback) || input.feedback.length > 100)) {
213
- throw new KiokukoError('VALIDATION_ERROR', 'Checkpoint feedback is invalid');
214
- }
215
- const feedback = (input.feedback ?? []).map((item) => checkpointObject(item, CHECKPOINT_FEEDBACK_FIELDS, 'Checkpoint feedback is invalid'));
216
- if (input.outcome !== undefined && !CHECKPOINT_OUTCOMES.has(input.outcome)) {
217
- throw new KiokukoError('VALIDATION_ERROR', 'Checkpoint outcome is invalid');
218
- }
219
- if (input.deliveryId !== undefined && input.runId === undefined) {
220
- throw new KiokukoError('VALIDATION_ERROR', 'Checkpoint deliveryId requires runId');
221
- }
222
- if (input.runId === undefined && feedback.length > 0) {
223
- throw new KiokukoError('VALIDATION_ERROR', 'Checkpoint feedback requires runId');
224
- }
225
- if (feedback.length > 0 && input.deliveryId === undefined) {
226
- throw new KiokukoError('VALIDATION_ERROR', 'Checkpoint feedback requires deliveryId');
227
- }
228
- const evidence = boundedEvidence(input.evidence);
229
- const hasEvidence = evidence.changedPaths.length > 0 || evidence.errorSignatures.length > 0 || evidence.commands.length > 0 || evidence.tests.length > 0 || evidence.verification !== undefined;
230
- if (input.runId === undefined && hasEvidence) {
231
- throw new KiokukoError('VALIDATION_ERROR', 'Checkpoint evidence requires runId');
232
- }
233
- const run = input.runId === undefined ? undefined : new LedgerStore(database).readRun(input.runId);
234
- if (input.runId !== undefined && run === undefined)
314
+ const request = normalizeCheckpointInput(input);
315
+ const runId = 'runId' in request ? request.runId : undefined;
316
+ const deliveryId = 'runId' in request ? request.deliveryId : undefined;
317
+ const outcome = 'runId' in request ? request.outcome : undefined;
318
+ const feedback = 'runId' in request ? request.feedback : [];
319
+ const evidence = 'runId' in request
320
+ ? request.evidence
321
+ : { changedPaths: [], errorSignatures: [], commands: [], tests: [] };
322
+ const memories = request.memories;
323
+ const run = runId === undefined ? undefined : new LedgerStore(database).readRun(runId);
324
+ if (runId !== undefined && run === undefined)
235
325
  throw new KiokukoError('NOT_FOUND', 'Checkpoint run was not found');
236
326
  if (run !== undefined)
237
327
  assertCheckpointEligible(run.status);
238
- if (input.deliveryId !== undefined) {
239
- const delivery = readContextDelivery(database, { workspace: run.workspace, deliveryId: input.deliveryId });
328
+ if (deliveryId !== undefined) {
329
+ const delivery = readContextDelivery(database, { workspace: run.workspace, deliveryId });
240
330
  if (delivery.runId !== run.runId)
241
331
  throw new KiokukoError('NOT_FOUND', 'Checkpoint delivery was not found for this run');
242
332
  }
243
- if (memories.length === 0 && feedback.length === 0 && !hasEvidence) {
244
- throw new KiokukoError('VALIDATION_ERROR', 'An empty checkpoint is not allowed');
245
- }
246
333
  const needsProject = memories.some((memory) => (memory.scope ?? 'project') === 'project');
247
- const plannedProject = await resolveProjectWorkspaceReadOnly(database, input.cwd);
334
+ const plannedProject = await resolveProjectWorkspaceReadOnly(database, request.cwd);
248
335
  if (needsProject && !plannedProject) {
249
336
  throw new KiokukoError('NOT_FOUND', 'No Git repository or .kiokuko.json binding was found for project-scoped memory; use scope "global" only for cross-project preferences or lessons');
250
337
  }
@@ -325,7 +412,7 @@ export async function checkpointScopedMemory(database, input) {
325
412
  ...(plannedProject === undefined ? {} : { sourceRepositoryId: plannedProject.repositoryId, sourceWorkspace: plannedProject.workspace }),
326
413
  ...(sourceCommit === null ? {} : { sourceCommit }),
327
414
  ...(run === undefined ? {} : { runId: run.runId }),
328
- ...(input.deliveryId === undefined ? {} : { deliveryId: input.deliveryId }),
415
+ ...(deliveryId === undefined ? {} : { deliveryId }),
329
416
  ...(evidenceIds.length === 0 ? {} : { evidenceIds }),
330
417
  ...(evidence.changedPaths.length === 0 ? {} : { sourcePaths: evidence.changedPaths }),
331
418
  clientKind: 'mcp',
@@ -336,7 +423,7 @@ export async function checkpointScopedMemory(database, input) {
336
423
  const preparedFeedback = feedback.map((value, index) => {
337
424
  const record = {
338
425
  workspace: run.workspace,
339
- deliveryId: input.deliveryId,
426
+ deliveryId: deliveryId,
340
427
  entryId: value.entryId,
341
428
  entryRevision: value.entryRevision,
342
429
  verdict: value.verdict,
@@ -350,7 +437,7 @@ export async function checkpointScopedMemory(database, input) {
350
437
  assertContextFeedbackRecordable(database, record);
351
438
  return record;
352
439
  });
353
- const project = await resolveProjectWorkspace(database, input.cwd);
440
+ const project = await resolveProjectWorkspace(database, request.cwd);
354
441
  if (!sameProject(plannedProject, project)) {
355
442
  throw new KiokukoError('CONFLICT', 'Checkpoint project identity changed after validation');
356
443
  }
@@ -394,8 +481,10 @@ export async function checkpointScopedMemory(database, input) {
394
481
  const memoryAck = transactionRun === undefined || memoryEvents.length === 0 ? { eventIds: [] } : store.appendBatchInTransaction(transactionRun.runId, { events: memoryEvents });
395
482
  const eventId = evidenceAck.eventIds[0] ?? memoryAck.eventIds[0] ?? null;
396
483
  if (transactionRun !== undefined) {
484
+ if (outcome === undefined)
485
+ throw new KiokukoError('INTEGRITY_ERROR', 'Run-bound checkpoint outcome is missing');
397
486
  for (const entry of saved) {
398
- database.prepare('INSERT INTO ledger_memory_links (link_id, run_id, event_id, delivery_id, entry_id, created_at) VALUES (?, ?, ?, ?, ?, ?)').run(randomUUID(), transactionRun.runId, eventId, input.deliveryId ?? null, entry.id, now);
487
+ database.prepare('INSERT INTO ledger_memory_links (link_id, run_id, event_id, delivery_id, entry_id, created_at) VALUES (?, ?, ?, ?, ?, ?)').run(randomUUID(), transactionRun.runId, eventId, deliveryId ?? null, entry.id, now);
399
488
  }
400
489
  for (const feedbackRecord of preparedFeedback) {
401
490
  recordContextFeedbackInTransaction(database, feedbackRecord);
@@ -404,7 +493,7 @@ export async function checkpointScopedMemory(database, input) {
404
493
  runId: transactionRun.runId,
405
494
  workspace: transactionRun.workspace,
406
495
  entries: saved,
407
- outcome: input.outcome ?? 'completed',
496
+ outcome,
408
497
  verification: {
409
498
  fresh: evidence.verification?.outcome === 'fresh',
410
499
  passedTests: evidence.tests.filter((test) => test.outcome === 'passed').length,
@@ -413,7 +502,7 @@ export async function checkpointScopedMemory(database, input) {
413
502
  },
414
503
  createdAt: now,
415
504
  });
416
- const updated = new LedgerStore(database).updateRunStatusInTransaction(transactionRun.runId, input.outcome ?? 'completed', now);
505
+ const updated = new LedgerStore(database).updateRunStatusInTransaction(transactionRun.runId, outcome, now);
417
506
  return {
418
507
  saved,
419
508
  run: {
@@ -1 +1 @@
1
- {"version":3,"file":"scoped-memory.js","sourceRoot":"","sources":["../../src/memory/scoped-memory.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"scoped-memory.js","sourceRoot":"","sources":["../../src/memory/scoped-memory.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAC5C,OAAO,EAAE,wBAAwB,EAAE,MAAM,sBAAsB,CAAC;AAChE,OAAO,EAAE,wBAAwB,EAAE,qBAAqB,EAAoB,MAAM,cAAc,CAAC;AACjG,OAAO,EACL,qBAAqB,EACrB,gBAAgB,EAChB,uBAAuB,EACvB,+BAA+B,GAEhC,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,aAAa,EAAkB,MAAM,8BAA8B,CAAC;AAC7E,OAAO,EAAE,oBAAoB,EAAE,wBAAwB,EAAiF,MAAM,wBAAwB,CAAC;AACvK,OAAO,EAAE,uBAAuB,EAAmD,MAAM,0BAA0B,CAAC;AACpH,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AACtD,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAC1C,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,qBAAqB,EAAE,MAAM,qCAAqC,CAAC;AAE5E,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,+BAA+B,EAAE,kCAAkC,EAAE,MAAM,wBAAwB,CAAC;AAC7G,OAAO,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAC7D,OAAO,EAAE,iCAAiC,EAAE,MAAM,+BAA+B,CAAC;AAElF,OAAO,EACL,8BAA8B,EAC9B,+BAA+B,EAC/B,+BAA+B,EAC/B,mBAAmB,EACnB,0BAA0B,EAC1B,2BAA2B,EAC3B,mCAAmC,EACnC,6BAA6B,EAC7B,+BAA+B,EAC/B,oBAAoB,EACpB,+BAA+B,EAC/B,sBAAsB,GAOvB,MAAM,kCAAkC,CAAC;AAE1C,MAAM,yBAAyB,GAAG,KAAK,CAAC;AACxC,MAAM,yBAAyB,GAAG,EAAE,GAAG,IAAI,CAAC;AAiB5C,MAAM,oBAAoB,GAA0B,CAAC,UAAU,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,CAAC,YAAY,CAAC,UAAU,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;AAE3H,SAAS,kBAAkB,CAAC,KAAc,EAAE,KAA0B;IACpE,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI;QAAE,OAAO,SAAS,CAAC;IAClE,MAAM,KAAK,GAAI,KAAiC,CAAC,KAAK,CAAC,CAAC;IACxD,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IAC5C,OAAO,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;AACrE,CAAC;AAED,SAAS,wBAAwB,CAAC,KAAc;IAC9C,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI;QAAE,OAAO,KAAK,CAAC;IAC9D,MAAM,OAAO,GAAG,KAAgC,CAAC;IACjD,IAAI,OAAO,CAAC,MAAM,KAAK,GAAG,IAAI,OAAO,CAAC,MAAM,KAAK,IAAI;QAAE,OAAO,KAAK,CAAC;IACpE,MAAM,MAAM,GAAG,kBAAkB,CAAC,KAAK,EAAE,QAAQ,CAAC,EAAE,UAAU,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,OAAO,EAAE,CAAC;IACvF,OAAO,MAAM,KAAK,iCAAiC;WAC9C,MAAM,KAAK,sEAAsE,CAAC;AACzF,CAAC;AAED,iGAAiG;AACjG,MAAM,UAAU,6BAA6B,CAC3C,cAAsB,EACtB,UAAiC,oBAAoB;IAErD,IAAI,MAAc,CAAC;IACnB,IAAI,CAAC;QACH,MAAM,GAAG,OAAO,CAAC,KAAK,EAAE,CAAC,WAAW,EAAE,UAAU,EAAE,eAAe,CAAC,EAAE;YAClE,GAAG,EAAE,cAAc;YACnB,QAAQ,EAAE,MAAM;YAChB,KAAK,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC;YACjC,OAAO,EAAE,yBAAyB;YAClC,SAAS,EAAE,yBAAyB;YACpC,GAAG,EAAE,EAAE,GAAG,OAAO,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE;SAChD,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,wBAAwB,CAAC,KAAK,CAAC;YAAE,OAAO,IAAI,CAAC;QACjD,MAAM,IAAI,YAAY,CAAC,qBAAqB,EAAE,iDAAiD,CAAC,CAAC;IACnG,CAAC;IACD,MAAM,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,eAAe,EAAE,EAAE,CAAC,CAAC;IACnD,IAAI,MAAM,KAAK,MAAM,IAAI,MAAM,KAAK,GAAG,MAAM,IAAI,IAAI,MAAM,KAAK,GAAG,MAAM,MAAM,EAAE,CAAC;QAChF,MAAM,IAAI,YAAY,CAAC,iBAAiB,EAAE,sCAAsC,CAAC,CAAC;IACpF,CAAC;IACD,IAAI,CAAC,kCAAkC,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;QACrD,MAAM,IAAI,YAAY,CAAC,iBAAiB,EAAE,sCAAsC,CAAC,CAAC;IACpF,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAuDD,MAAM,wBAAwB,GAAG,IAAI,GAAG,CAAC;IACvC,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,gBAAgB,EAAE,MAAM,EAAE,YAAY;IACnF,aAAa,EAAE,eAAe,EAAE,SAAS,EAAE,gBAAgB;CAC5D,CAAC,CAAC;AACH,MAAM,uBAAuB,GAAG,IAAI,GAAG,CAAC,CAAC,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,UAAU,EAAE,UAAU,CAAC,CAAC,CAAC;AACvH,MAAM,0BAA0B,GAAG,IAAI,GAAG,CAAC,+BAA+B,CAAC,CAAC;AAE5E,SAAS,wBAAwB,CAAC,MAAiB;IACjD,MAAM,WAAW,GAAG,qBAAqB,CAAC,MAAM,CAAC,CAAC;IAClD,IAAI,WAAW,CAAC,OAAO;QAAE,OAAO;IAChC,MAAM,IAAI,YAAY,CAAC,UAAU,EAAE,8BAA8B,EAAE;QACjE,qBAAqB,EAAE,WAAW;QAClC,SAAS,EAAE,MAAM;KAClB,CAAC,CAAC;AACL,CAAC;AAED,SAAS,gBAAgB,CACvB,KAAc,EACd,OAA4B,EAC5B,OAAe;IAEf,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QAC1F,MAAM,IAAI,YAAY,CAAC,kBAAkB,EAAE,OAAO,CAAC,CAAC;IACtD,CAAC;IACD,MAAM,SAAS,GAAG,MAAM,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;IAC/C,IAAI,SAAS,KAAK,MAAM,CAAC,SAAS,IAAI,SAAS,KAAK,IAAI,EAAE,CAAC;QACzD,MAAM,IAAI,YAAY,CAAC,kBAAkB,EAAE,OAAO,CAAC,CAAC;IACtD,CAAC;IACD,MAAM,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IACpC,IAAI,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,IAAI;QAAE,MAAM,IAAI,YAAY,CAAC,kBAAkB,EAAE,OAAO,CAAC,CAAC;IACpF,MAAM,MAAM,GAA4B,MAAM,CAAC,MAAM,CAAC,IAAI,CAA4B,CAAC;IACvF,MAAM,WAAW,GAAG,MAAM,CAAC,yBAAyB,CAAC,KAAK,CAAC,CAAC;IAC5D,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;YACjD,MAAM,IAAI,YAAY,CAAC,kBAAkB,EAAE,OAAO,CAAC,CAAC;QACtD,CAAC;QACD,MAAM,UAAU,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC;QACpC,IAAI,UAAU,KAAK,SAAS,IAAI,CAAC,CAAC,OAAO,IAAI,UAAU,CAAC,IAAI,UAAU,CAAC,UAAU,KAAK,IAAI,EAAE,CAAC;YAC3F,MAAM,IAAI,YAAY,CAAC,kBAAkB,EAAE,OAAO,CAAC,CAAC;QACtD,CAAC;QACD,MAAM,CAAC,GAAG,CAAC,GAAG,UAAU,CAAC,KAAK,CAAC;IACjC,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAS,WAAW,CAClB,IAA0C,EAC1C,KAA2C;IAE3C,IAAI,IAAI,KAAK,SAAS,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,IAAI,KAAK,KAAK,CAAC;IACrE,OAAO,IAAI,CAAC,cAAc,KAAK,KAAK,CAAC,cAAc;WAC9C,IAAI,CAAC,YAAY,KAAK,KAAK,CAAC,YAAY;WACxC,IAAI,CAAC,SAAS,KAAK,KAAK,CAAC,SAAS,CAAC;AAC1C,CAAC;AAED,SAAS,eAAe,CAAC,KAAc,EAAE,OAAe,EAAE,OAAe;IACvE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,OAAO,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,MAAM,GAAG,OAAO,EAAE,CAAC;QACtE,MAAM,IAAI,YAAY,CAAC,kBAAkB,EAAE,OAAO,CAAC,CAAC;IACtD,CAAC;IACD,MAAM,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IACpC,IAAI,IAAI,CAAC,MAAM,KAAK,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,OAAO,GAAG,KAAK,QAAQ,CAAC,EAAE,CAAC;QAChH,MAAM,IAAI,YAAY,CAAC,kBAAkB,EAAE,OAAO,CAAC,CAAC;IACtD,CAAC;IACD,MAAM,WAAW,GAAG,MAAM,CAAC,yBAAyB,CAAC,KAAK,CAAC,CAAC;IAC5D,MAAM,MAAM,GAAc,EAAE,CAAC;IAC7B,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,KAAK,CAAC,MAAM,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC;QACrD,MAAM,UAAU,GAAG,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;QAC9C,IAAI,UAAU,KAAK,SAAS,IAAI,CAAC,CAAC,OAAO,IAAI,UAAU,CAAC,IAAI,UAAU,CAAC,UAAU,KAAK,IAAI,EAAE,CAAC;YAC3F,MAAM,IAAI,YAAY,CAAC,kBAAkB,EAAE,OAAO,CAAC,CAAC;QACtD,CAAC;QACD,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;IAChC,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAS,eAAe,CAAC,GAAY;IACnC,IAAI,GAAG,KAAK,SAAS;QAAE,OAAO,EAAE,YAAY,EAAE,EAAE,EAAE,eAAe,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC;IACjG,MAAM,KAAK,GAAG,gBAAgB,CAAC,GAAG,EAAE,IAAI,GAAG,CAAC,+BAA+B,CAAC,EAAE,qBAAqB,CAAC,CAAC;IACrG,MAAM,aAAa,GAAG,GAAG,EAAE,CAAC,IAAI,YAAY,CAAC,kBAAkB,EAAE,qBAAqB,CAAC,CAAC;IACxF,MAAM,SAAS,GAAG,GAAG,EAAE,CAAC,IAAI,YAAY,CAAC,kBAAkB,EAAE,0BAA0B,CAAC,CAAC;IACzF,MAAM,OAAO,GAAG,CAAC,SAAkB,EAAE,OAAe,EAAY,EAAE;QAChE,IAAI,SAAS,KAAK,SAAS;YAAE,OAAO,EAAE,CAAC;QACvC,MAAM,MAAM,GAAG,eAAe,CAAC,SAAS,EAAE,OAAO,EAAE,qBAAqB,CAAC,CAAC;QAC1E,OAAO,CAAC,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;gBACrC,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,IAAI,IAAI,CAAC,MAAM,GAAG,+BAA+B,IAAI,wBAAwB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;oBAC1I,MAAM,aAAa,EAAE,CAAC;gBACxB,CAAC;gBACD,OAAO,IAAI,CAAC;YACd,CAAC,CAAC,CAAC,CAAC,CAAC;IACP,CAAC,CAAC;IACF,MAAM,YAAY,GAAG,OAAO,CAAC,KAAK,CAAC,YAAY,EAAE,oBAAoB,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;QAClF,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC;YAAE,MAAM,SAAS,EAAE,CAAC;QACxI,OAAO,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;IACpC,CAAC,CAAC,CAAC;IACH,MAAM,eAAe,GAAG,OAAO,CAAC,KAAK,CAAC,eAAe,EAAE,sBAAsB,CAAC,CAAC;IAC/E,MAAM,cAAc,GAAG,CAAC,KAAc,EAAE,IAAwB,EAA6D,EAAE;QAC7H,IAAI,KAAK,KAAK,SAAS;YAAE,OAAO,EAAE,CAAC;QACnC,MAAM,MAAM,GAAG,eAAe,CAAC,KAAK,EAAE,6BAA6B,EAAE,qBAAqB,CAAC,CAAC;QAC5F,MAAM,aAAa,GAAG,IAAI,GAAG,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,8BAA8B,CAAC,CAAC,CAAC,2BAA2B,CAAC,CAAC;QACjH,MAAM,cAAc,GAAG,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,gBAAgB,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;QAChG,MAAM,QAAQ,GAAG,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,QAAQ,CAAC;QAC9D,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;YACzB,MAAM,MAAM,GAAG,gBAAgB,CAAC,IAAI,EAAE,aAAa,EAAE,qBAAqB,CAAC,CAAC;YAC5E,MAAM,aAAa,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC;YACvC,IAAI,OAAO,aAAa,KAAK,QAAQ,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC;mBAC9D,aAAa,CAAC,MAAM,GAAG,+BAA+B;mBACtD,wBAAwB,CAAC,IAAI,CAAC,aAAa,CAAC;gBAAE,MAAM,aAAa,EAAE,CAAC;YACzE,MAAM,UAAU,GAAG,MAAM,CAAC,OAAO,CAAC;YAClC,IAAI,OAAO,UAAU,KAAK,QAAQ,IAAI,CAAC,0BAA0B,CAAC,QAAQ,CAAC,UAAqC,CAAC;gBAAE,MAAM,aAAa,EAAE,CAAC;YACzI,MAAM,OAAO,GAAG,UAAqC,CAAC;YACtD,MAAM,QAAQ,GAAkE,EAAE,CAAC;YACnF,KAAK,MAAM,KAAK,IAAI,cAAc,EAAE,CAAC;gBACnC,MAAM,aAAa,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;gBACpC,IAAI,aAAa,KAAK,SAAS;oBAAE,SAAS;gBAC1C,IAAI,OAAO,aAAa,KAAK,QAAQ,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC;uBAC9D,aAAa,CAAC,MAAM,GAAG,+BAA+B;uBACtD,wBAAwB,CAAC,IAAI,CAAC,aAAa,CAAC;oBAAE,MAAM,aAAa,EAAE,CAAC;gBACzE,IAAI,KAAK,KAAK,gBAAgB,IAAI,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,QAAQ;oBAAE,QAAQ,CAAC,KAAK,CAAC,GAAG,aAAa,CAAC;YAC9G,CAAC;YACD,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;gBACvB,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC;gBACjC,IAAI,QAAQ,KAAK,SAAS,IAAI,CAAC,OAAO,QAAQ,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,QAAQ,CAAC,IAAI,QAAQ,GAAG,CAAC,CAAC;oBAAE,MAAM,aAAa,EAAE,CAAC;gBACvI,OAAO;oBACL,UAAU,EAAE,aAAa;oBACzB,OAAO;oBACP,GAAG,CAAC,QAAQ,CAAC,cAAc,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,QAAQ,CAAC,cAAc,EAAE,CAAC;oBAC7F,GAAG,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC;oBAC/C,GAAG,CAAC,QAAQ,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,MAAM,EAAE,CAAC;iBACtE,CAAC;YACJ,CAAC;YACD,OAAO;gBACL,MAAM,EAAE,aAAa;gBACrB,OAAO;gBACP,GAAG,CAAC,QAAQ,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,MAAM,EAAE,CAAC;gBACrE,GAAG,CAAC,QAAQ,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,MAAM,EAAE,CAAC;aACtE,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC,CAAC;IACF,MAAM,QAAQ,GAAG,cAAc,CAAC,KAAK,CAAC,QAAQ,EAAE,SAAS,CAAgC,CAAC;IAC1F,MAAM,KAAK,GAAG,cAAc,CAAC,KAAK,CAAC,KAAK,EAAE,MAAM,CAA6B,CAAC;IAC9E,MAAM,YAAY,GAAG,KAAK,CAAC,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE;QACxE,MAAM,iBAAiB,GAAG,gBAAgB,CAAC,KAAK,CAAC,YAAY,EAAE,IAAI,GAAG,CAAC,mCAAmC,CAAC,EAAE,qBAAqB,CAAC,CAAC;QACpI,MAAM,UAAU,GAAG,iBAAiB,CAAC,OAAO,CAAC;QAC7C,IAAI,OAAO,UAAU,KAAK,QAAQ,IAAI,CAAC,CAAC,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC;YAAE,MAAM,aAAa,EAAE,CAAC;QAC3H,OAAO,EAAE,OAAO,EAAE,UAA2C,EAAE,CAAC;IAClE,CAAC,CAAC,EAAE,CAAC;IACL,MAAM,UAAU,GAAiC;QAC/C,YAAY;QACZ,eAAe;QACf,QAAQ;QACR,KAAK;QACL,GAAG,CAAC,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC;KACxD,CAAC;IACF,IAAI,iBAAyB,CAAC;IAC9B,IAAI,CAAC;QACH,iBAAiB,GAAG,aAAa,CAAC,UAAU,CAAC,CAAC;IAChD,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,KAAK,YAAY,UAAU,IAAI,CAAC,KAAK,YAAY,YAAY,IAAI,KAAK,CAAC,IAAI,KAAK,kBAAkB,CAAC,EAAE,CAAC;YACxG,MAAM,IAAI,YAAY,CAAC,kBAAkB,EAAE,qBAAqB,CAAC,CAAC;QACpE,CAAC;QACD,MAAM,KAAK,CAAC;IACd,CAAC;IACD,IAAI,UAAU,CAAC,iBAAiB,CAAC;QAAE,MAAM,IAAI,YAAY,CAAC,oBAAoB,EAAE,gDAAgD,CAAC,CAAC;IAClI,OAAO,UAAU,CAAC;AACpB,CAAC;AAmBD,SAAS,oBAAoB,CAAC,KAAc,EAAE,KAAa;IACzD,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC;IAC1C,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,IAAI,KAAK,CAAC,MAAM,GAAG,GAAG,IAAI,KAAK,CAAC,IAAI,EAAE,KAAK,KAAK,IAAI,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QAC7H,MAAM,IAAI,YAAY,CAAC,kBAAkB,EAAE,GAAG,KAAK,aAAa,CAAC,CAAC;IACpE,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,wBAAwB,CAAC,KAA4B;IAC5D,MAAM,KAAK,GAAG,gBAAgB,CAAC,KAAK,EAAE,uBAAuB,EAAE,6BAA6B,CAAC,CAAC;IAC9F,MAAM,GAAG,GAAG,KAAK,CAAC,GAAG,KAAK,SAAS;QACjC,CAAC,CAAC,SAAS;QACX,CAAC,CAAC,OAAO,KAAK,CAAC,GAAG,KAAK,QAAQ,IAAI,KAAK,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC;YACnF,CAAC,CAAC,KAAK,CAAC,GAAG;YACX,CAAC,CAAC,CAAC,GAAG,EAAE,GAAG,MAAM,IAAI,YAAY,CAAC,kBAAkB,EAAE,2BAA2B,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAC7F,MAAM,YAAY,GAAG,KAAK,CAAC,QAAQ,KAAK,SAAS;QAC/C,CAAC,CAAC,EAAE;QACJ,CAAC,CAAC,eAAe,CAAC,KAAK,CAAC,QAAQ,EAAE,EAAE,EAAE,sCAAsC,CAAC,CAAC;IAChF,MAAM,QAAQ,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,gBAAgB,CAC5D,MAAM,EACN,wBAAwB,EACxB,8BAA8B,CACA,CAAC,CAAC;IAClC,MAAM,cAAc,GAAG,KAAK,CAAC,QAAQ,KAAK,SAAS;QACjD,CAAC,CAAC,EAAE;QACJ,CAAC,CAAC,eAAe,CAAC,KAAK,CAAC,QAAQ,EAAE,GAAG,EAAE,gCAAgC,CAAC,CAAC;IAC3E,MAAM,QAAQ,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,gBAAgB,CAC5D,IAAI,EACJ,0BAA0B,EAC1B,gCAAgC,CACjC,CAAC,CAAC;IACH,MAAM,QAAQ,GAAG,eAAe,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;IACjD,MAAM,KAAK,GAAG,oBAAoB,CAAC,KAAK,CAAC,KAAK,EAAE,kBAAkB,CAAC,CAAC;IACpE,MAAM,UAAU,GAAG,oBAAoB,CAAC,KAAK,CAAC,UAAU,EAAE,uBAAuB,CAAC,CAAC;IACnF,MAAM,UAAU,GAAG,KAAK,CAAC,OAAO,CAAC;IAEjC,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QACxB,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;YAAE,MAAM,IAAI,YAAY,CAAC,kBAAkB,EAAE,gDAAgD,CAAC,CAAC;QACxH,IAAI,UAAU,KAAK,SAAS;YAAE,MAAM,IAAI,YAAY,CAAC,kBAAkB,EAAE,mCAAmC,CAAC,CAAC;QAC9G,IAAI,UAAU,KAAK,SAAS;YAAE,MAAM,IAAI,YAAY,CAAC,kBAAkB,EAAE,sCAAsC,CAAC,CAAC;QACjH,IAAI,KAAK,CAAC,QAAQ,KAAK,SAAS;YAAE,MAAM,IAAI,YAAY,CAAC,kBAAkB,EAAE,oCAAoC,CAAC,CAAC;QACnH,IAAI,KAAK,CAAC,QAAQ,KAAK,SAAS;YAAE,MAAM,IAAI,YAAY,CAAC,kBAAkB,EAAE,oCAAoC,CAAC,CAAC;QACnH,OAAO,EAAE,GAAG,CAAC,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC;IAC7D,CAAC;IAED,IAAI,OAAO,UAAU,KAAK,QAAQ,IAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC,UAA+B,CAAC,EAAE,CAAC;QACrG,MAAM,IAAI,YAAY,CAAC,kBAAkB,EAAE,4CAA4C,CAAC,CAAC;IAC3F,CAAC;IACD,MAAM,OAAO,GAAG,UAA+B,CAAC;IAChD,MAAM,WAAW,GAAG,QAAQ,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC;WAC/C,QAAQ,CAAC,eAAe,CAAC,MAAM,GAAG,CAAC;WACnC,QAAQ,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC;WAC5B,QAAQ,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC;WACzB,QAAQ,CAAC,YAAY,KAAK,SAAS,CAAC;IACzC,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;QACnE,MAAM,IAAI,YAAY,CAAC,kBAAkB,EAAE,oCAAoC,CAAC,CAAC;IACnF,CAAC;IACD,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;QACpD,MAAM,IAAI,YAAY,CAAC,kBAAkB,EAAE,yCAAyC,CAAC,CAAC;IACxF,CAAC;IACD,OAAO;QACL,GAAG,CAAC,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC;QACrC,QAAQ;QACR,KAAK;QACL,GAAG,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,CAAC;QACnD,OAAO;QACP,QAAQ;QACR,QAAQ;KACT,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,kBAAkB,CAAC,QAAwB,EAAE,KAAwB;IACzF,OAAO,uBAAuB,CAAC,QAAQ,EAAE;QACvC,KAAK,EAAE,KAAK,CAAC,KAAK;QAClB,GAAG,CAAC,KAAK,CAAC,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,KAAK,CAAC,GAAG,EAAE,CAAC;QACtD,GAAG,CAAC,KAAK,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC;QAClE,GAAG,CAAC,KAAK,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,KAAK,CAAC,WAAW,EAAE,CAAC;QAC9E,GAAG,CAAC,KAAK,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,CAAC;QAC5D,GAAG,CAAC,KAAK,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,CAAC;QAC5D,GAAG,CAAC,KAAK,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,KAAK,CAAC,QAAQ,EAAE,CAAC;QACrE,GAAG,CAAC,KAAK,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,KAAK,CAAC,QAAQ,EAAE,CAAC;KACtE,CAAC,CAAC;AACL,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAAC,QAAwB,EAAE,KAA4B;IACjG,MAAM,OAAO,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IAChD,MAAM,KAAK,GAAG,OAAO,IAAI,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;IAC7D,MAAM,UAAU,GAAG,OAAO,IAAI,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC;IACvE,MAAM,OAAO,GAAG,OAAO,IAAI,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC;IACjE,MAAM,QAAQ,GAAG,OAAO,IAAI,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;IAC5D,MAAM,QAAQ,GAAiC,OAAO,IAAI,OAAO;QAC/D,CAAC,CAAC,OAAO,CAAC,QAAQ;QAClB,CAAC,CAAC,EAAE,YAAY,EAAE,EAAE,EAAE,eAAe,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC;IACvE,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;IAClC,MAAM,GAAG,GAAG,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,WAAW,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IACvF,IAAI,KAAK,KAAK,SAAS,IAAI,GAAG,KAAK,SAAS;QAAE,MAAM,IAAI,YAAY,CAAC,WAAW,EAAE,8BAA8B,CAAC,CAAC;IAClH,IAAI,GAAG,KAAK,SAAS;QAAE,wBAAwB,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAC5D,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;QAC7B,MAAM,QAAQ,GAAG,mBAAmB,CAAC,QAAQ,EAAE,EAAE,SAAS,EAAE,GAAI,CAAC,SAAS,EAAE,UAAU,EAAE,CAAC,CAAC;QAC1F,IAAI,QAAQ,CAAC,KAAK,KAAK,GAAI,CAAC,KAAK;YAAE,MAAM,IAAI,YAAY,CAAC,WAAW,EAAE,gDAAgD,CAAC,CAAC;IAC3H,CAAC;IACD,MAAM,YAAY,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,KAAK,IAAI,SAAS,CAAC,KAAK,SAAS,CAAC,CAAC;IAC1F,MAAM,cAAc,GAAG,MAAM,+BAA+B,CAAC,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC;IACpF,IAAI,YAAY,IAAI,CAAC,cAAc,EAAE,CAAC;QACpC,MAAM,IAAI,YAAY,CAAC,WAAW,EAAE,kJAAkJ,CAAC,CAAC;IAC1L,CAAC;IACD,IAAI,GAAG,IAAI,cAAc,KAAK,SAAS,IAAI,GAAG,CAAC,SAAS,KAAK,cAAc,CAAC,SAAS,EAAE,CAAC;QACtF,MAAM,IAAI,YAAY,CAAC,WAAW,EAAE,8BAA8B,CAAC,CAAC;IACtE,CAAC;IACD,MAAM,YAAY,GAAG,cAAc,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,6BAA6B,CAAC,cAAc,CAAC,cAAc,CAAC,CAAC;IACxH,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IACrC,MAAM,aAAa,GAAG,QAAQ,CAAC,YAAY,CAAC,MAAM;UAC9C,QAAQ,CAAC,eAAe,CAAC,MAAM;UAC/B,QAAQ,CAAC,QAAQ,CAAC,MAAM;UACxB,QAAQ,CAAC,KAAK,CAAC,MAAM;UACrB,CAAC,QAAQ,CAAC,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAClD,MAAM,WAAW,GAAG,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,aAAa,EAAE,EAAE,GAAG,EAAE,CAAC,UAAU,EAAE,CAAC,CAAC;IAC9E,MAAM,gBAAgB,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE;QAC/C,MAAM,WAAW,GAAG,MAAM,CAAC,KAAK,IAAI,SAAS,CAAC;QAC9C,IAAI,WAAW,KAAK,QAAQ;eACvB,MAAM,CAAC,cAAc,KAAK,SAAS;eACnC,MAAM,CAAC,cAAc,KAAK,QAAQ,EAAE,CAAC;YACxC,MAAM,IAAI,YAAY,CAAC,kBAAkB,EAAE,0DAA0D,CAAC,CAAC;QACzG,CAAC;QACD,MAAM,SAAS,GAAG,WAAW,KAAK,QAAQ,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,cAAe,CAAC,SAAS,CAAC;QAC1F,MAAM,SAAS,GAAG,oBAAoB,CAAC;YACrC,UAAU,EAAE,WAAW;YACvB,GAAG,CAAC,WAAW,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,QAAiB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC1E,GAAG,CAAC,WAAW,KAAK,SAAS,IAAI,cAAc,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,cAAc,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACnH,GAAG,CAAC,MAAM,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,MAAM,CAAC,WAAW,EAAE,CAAC;YAChF,GAAG,CAAC,MAAM,CAAC,aAAa,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,MAAM,CAAC,aAAa,EAAE,CAAC;YACtF,GAAG,CAAC,MAAM,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC;YACpE,GAAG,CAAC,MAAM,CAAC,cAAc,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,MAAM,CAAC,cAAc,EAAE,CAAC;SAC1F,CAAC,CAAC;QACH,MAAM,UAAU,GAAG,qBAAqB,CAAC;YACvC,SAAS;YACT,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,MAAM,EAAE,WAAW;YACnB,KAAK,EAAE,MAAM,CAAC,KAAK;YACnB,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,GAAG,CAAC,MAAM,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC;YACpE,KAAK,EAAE,SAAS;YAChB,UAAU,EAAE,EAAE;YACd,UAAU,EAAE,WAAW;YACvB,UAAU,EAAE,MAAM,CAAC,UAAU,IAAI,GAAG;YACpC,IAAI,EAAE,CAAC,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC,EAAE,kBAAkB,CAAC,CAAC,CAAC;YAChE,SAAS,EAAE,aAAa;YACxB,KAAK,EAAE,aAAa;SACrB,CAAC,CAAC,MAAM,CAAC;QACV,MAAM,aAAa,GAAG,WAAW,KAAK,SAAS;eAC1C,MAAM,CAAC,cAAc,KAAK,SAAS;eACnC,wBAAwB,CAAC,UAAU,CAAC,KAAK,CAAC;eAC1C,cAAc,KAAK,SAAS;eAC5B,kBAAkB,CAAC;gBACpB,SAAS,EAAE,cAAc,CAAC,SAAS;gBACnC,KAAK,EAAE,UAAU,CAAC,KAAK;gBACvB,OAAO,EAAE,UAAU,CAAC,OAAO;gBAC3B,IAAI,EAAE,UAAU,CAAC,IAAI;gBACrB,IAAI,EAAE,UAAU,CAAC,IAAI;gBACrB,KAAK,EAAE,UAAU,CAAC,KAAK;gBACvB,UAAU,EAAE,EAAE;aACf,CAAC,CAAC,QAAQ,CAAC;QACd,MAAM,KAAK,GAAG,oBAAoB,CAAC;YACjC,UAAU,EAAE,WAAW;YACvB,GAAG,CAAC,WAAW,KAAK,QAAQ;gBAC1B,CAAC,CAAC,EAAE,cAAc,EAAE,QAAiB,EAAE;gBACvC,CAAC,CAAC,MAAM,CAAC,cAAc,KAAK,SAAS;oBACnC,CAAC,CAAC,EAAE,cAAc,EAAE,MAAM,CAAC,cAAc,EAAE;oBAC3C,CAAC,CAAC,aAAa;wBACb,CAAC,CAAC,EAAE,cAAc,EAAE,WAAoB,EAAE;wBAC1C,CAAC,CAAC,EAAE,CAAC;YACX,GAAG,CAAC,WAAW,KAAK,SAAS,IAAI,cAAc,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,cAAc,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACnH,GAAG,CAAC,MAAM,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,MAAM,CAAC,WAAW,EAAE,CAAC;YAChF,GAAG,CAAC,MAAM,CAAC,aAAa,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,MAAM,CAAC,aAAa,EAAE,CAAC;YACtF,GAAG,CAAC,MAAM,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC;YACpE,GAAG,CAAC,MAAM,CAAC,cAAc,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,MAAM,CAAC,cAAc,EAAE,CAAC;SAC1F,CAAC,CAAC;QACH,MAAM,UAAU,GAAG;YACjB,IAAI,EAAE,kBAAkB;YACxB,SAAS,EAAE,KAAK;YAChB,GAAG,CAAC,cAAc,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,kBAAkB,EAAE,cAAc,CAAC,YAAY,EAAE,eAAe,EAAE,cAAc,CAAC,SAAS,EAAE,CAAC;YACvI,GAAG,CAAC,YAAY,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC;YAClD,GAAG,CAAC,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,GAAG,CAAC,KAAK,EAAE,CAAC;YAClD,GAAG,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,CAAC;YACnD,GAAG,CAAC,WAAW,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC;YACpD,GAAG,CAAC,QAAQ,CAAC,YAAY,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,QAAQ,CAAC,YAAY,EAAE,CAAC;YACrF,UAAU,EAAE,KAAK;YACjB,SAAS,EAAE,GAAG;SACf,CAAC;QACF,OAAO,qBAAqB,CAAC,EAAE,GAAG,UAAU,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC,CAAC,MAAM,CAAC;IAC5E,CAAC,CAAC,CAAC;IACH,MAAM,gBAAgB,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;QACrD,MAAM,MAAM,GAAG;YACb,SAAS,EAAE,GAAI,CAAC,SAAS;YACzB,UAAU,EAAE,UAAW;YACvB,OAAO,EAAE,KAAK,CAAC,OAAO;YACtB,aAAa,EAAE,KAAK,CAAC,aAAa;YAClC,OAAO,EAAE,KAAK,CAAC,OAAO;YACtB,OAAO,EAAE,KAAK,CAAC,OAAO,IAAI,IAAI;YAC9B,UAAU,EAAE,UAAU,EAAE;YACxB,KAAK,EAAE,GAAI,CAAC,KAAK;YACjB,KAAK,EAAE,aAAa;YACpB,cAAc,EAAE,uBAAuB,KAAK,EAAE;YAC9C,SAAS,EAAE,GAAG;SACf,CAAC;QACF,+BAA+B,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;QAClD,OAAO,MAAM,CAAC;IAChB,CAAC,CAAC,CAAC;IAEH,MAAM,OAAO,GAAG,MAAM,uBAAuB,CAAC,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC;IACrE,IAAI,CAAC,WAAW,CAAC,cAAc,EAAE,OAAO,CAAC,EAAE,CAAC;QAC1C,MAAM,IAAI,YAAY,CAAC,UAAU,EAAE,sDAAsD,CAAC,CAAC;IAC7F,CAAC;IACD,MAAM,OAAO,GAAG,wBAAwB,CAAC,QAAQ,EAAE,GAAG,EAAE;QACtD,MAAM,cAAc,GAAG,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,WAAW,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QACpG,IAAI,GAAG,KAAK,SAAS,IAAI,cAAc,KAAK,SAAS;YAAE,MAAM,IAAI,YAAY,CAAC,WAAW,EAAE,8BAA8B,CAAC,CAAC;QAC3H,IAAI,cAAc,KAAK,SAAS;YAAE,wBAAwB,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;QAClF,IAAI,GAAG,KAAK,SAAS,IAAI,cAAc,KAAK,SAAS,IAAI,cAAc,CAAC,SAAS,KAAK,GAAG,CAAC,SAAS,EAAE,CAAC;YACpG,MAAM,IAAI,YAAY,CAAC,WAAW,EAAE,8BAA8B,CAAC,CAAC;QACtE,CAAC;QACD,qBAAqB,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;QACrC,MAAM,KAAK,GAAG,cAAc,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,WAAW,CAAC,QAAQ,EAAE,EAAE,SAAS,EAAE,cAAc,CAAC,SAAS,EAAE,CAAC,CAAC;QAC5H,MAAM,cAAc,GAAG;YACrB,GAAG,QAAQ,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,UAAU,EAAE,EAAE,SAAS,EAAE,cAAuB,EAAE,KAAK,EAAE,aAAa,EAAE,UAAU,EAAE,GAAG,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC;YACjK,GAAG,QAAQ,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,UAAU,EAAE,EAAE,SAAS,EAAE,gBAAyB,EAAE,KAAK,EAAE,aAAa,EAAE,UAAU,EAAE,GAAG,EAAE,OAAO,EAAE,EAAE,SAAS,EAAE,EAAE,CAAC,CAAC;YAChL,GAAG,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,UAAU,EAAE,EAAE,SAAS,EAAE,mBAA4B,EAAE,KAAK,EAAE,aAAa,EAAE,UAAU,EAAE,GAAG,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE,UAAU,EAAE,OAAO,CAAC,UAAU,EAAE,GAAG,CAAC,OAAO,CAAC,cAAc,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,OAAO,CAAC,cAAc,EAAE,CAAC,EAAE,GAAG,CAAC,OAAO,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,OAAO,CAAC,QAAQ,EAAE,CAAC,EAAE,GAAG,CAAC,OAAO,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;YACtc,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,UAAU,EAAE,EAAE,SAAS,EAAE,gBAAyB,EAAE,KAAK,EAAE,aAAa,EAAE,UAAU,EAAE,GAAG,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,IAAI,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,GAAG,CAAC,IAAI,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;YAChU,GAAG,CAAC,QAAQ,CAAC,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,UAAU,EAAE,EAAE,SAAS,EAAE,uBAAgC,EAAE,KAAK,EAAE,aAAsB,EAAE,UAAU,EAAE,GAAG,EAAE,OAAO,EAAE,QAAQ,CAAC,YAAY,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE,OAAO,EAAE,QAAQ,CAAC,YAAY,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;SACtQ,CAAC;QACF,MAAM,WAAW,GAAG,cAAc,KAAK,SAAS,IAAI,cAAc,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,EAAc,EAAE,CAAC,CAAC,CAAC,KAAM,CAAC,wBAAwB,CAAC,cAAc,CAAC,KAAK,EAAE,EAAE,MAAM,EAAE,cAAc,EAAE,CAAC,CAAC;QACnM,MAAM,YAAY,GAAyI;YACzJ,GAAG,QAAQ,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,OAAO,EAAE,OAAO,EAAE,WAAW,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,IAAI,EAAE,OAAO,EAAE,uBAAuB,EAAE,CAAC,CAAC;YACtK,GAAG,QAAQ,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,UAAmB,EAAE,OAAO,EAAE,OAAO,EAAE,WAAW,CAAC,QAAQ,CAAC,QAAQ,CAAC,YAAY,CAAC,MAAM,GAAG,KAAK,CAAC,IAAI,IAAI,EAAE,OAAO,EAAE,2BAA2B,EAAE,CAAC,CAAC;YAChN,GAAG,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,SAAkB,EAAE,OAAO,EAAE,OAAO,CAAC,UAAU,EAAE,OAAO,EAAE,WAAW,CAAC,QAAQ,CAAC,QAAQ,CAAC,YAAY,CAAC,MAAM,GAAG,QAAQ,CAAC,eAAe,CAAC,MAAM,GAAG,KAAK,CAAC,IAAI,IAAI,EAAE,OAAO,EAAE,OAAO,CAAC,cAAc,IAAI,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC,OAAO,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC;YACjV,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,OAAO,EAAE,IAAI,CAAC,MAAM,EAAE,OAAO,EAAE,WAAW,CAAC,QAAQ,CAAC,QAAQ,CAAC,YAAY,CAAC,MAAM,GAAG,QAAQ,CAAC,eAAe,CAAC,MAAM,GAAG,QAAQ,CAAC,QAAQ,CAAC,MAAM,GAAG,KAAK,CAAC,IAAI,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,OAAO,EAAE,GAAG,CAAC,IAAI,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC;YACxU,GAAG,CAAC,QAAQ,CAAC,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,UAAmB,EAAE,OAAO,EAAE,cAAc,EAAE,OAAO,EAAE,WAAW,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,EAAE,OAAO,EAAE,QAAQ,CAAC,YAAY,CAAC,OAAO,EAAE,CAAC,CAAC;SAC/L,CAAC;QACF,IAAI,YAAY,CAAC,MAAM,KAAK,WAAW,CAAC,MAAM,EAAE,CAAC;YAC/C,MAAM,IAAI,YAAY,CAAC,iBAAiB,EAAE,2CAA2C,CAAC,CAAC;QACzF,CAAC;QACD,IAAI,cAAc,KAAK,SAAS,EAAE,CAAC;YACjC,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,YAAY,CAAC,MAAM,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC;gBAC5D,MAAM,GAAG,GAAG,YAAY,CAAC,KAAK,CAAE,CAAC;gBACjC,QAAQ,CAAC,OAAO,CAAC,+KAA+K,CAAC,CAAC,GAAG,CACnM,WAAW,CAAC,KAAK,CAAE,EAAE,cAAc,CAAC,KAAK,EAAE,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,EAAE,GAAG,CAAC,MAAM,IAAI,IAAI,EAAE,GAAG,CAAC,OAAO,EAAE,GAAG,CAChK,CAAC;YACJ,CAAC;QACH,CAAC;QACD,MAAM,KAAK,GAAG,gBAAgB,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,wBAAwB,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC;QACpG,MAAM,YAAY,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,UAAU,EAAE,EAAE,SAAS,EAAE,iBAA0B,EAAE,KAAK,EAAE,aAAa,EAAE,UAAU,EAAE,GAAG,EAAE,OAAO,EAAE,EAAE,OAAO,EAAE,KAAK,CAAC,EAAE,EAAE,QAAQ,EAAE,KAAK,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,CAAC;QAC/M,MAAM,SAAS,GAAG,cAAc,KAAK,SAAS,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,EAAc,EAAE,CAAC,CAAC,CAAC,KAAM,CAAC,wBAAwB,CAAC,cAAc,CAAC,KAAK,EAAE,EAAE,MAAM,EAAE,YAAY,EAAE,CAAC,CAAC;QAC7L,MAAM,OAAO,GAAG,WAAW,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC;QACzE,IAAI,cAAc,KAAK,SAAS,EAAE,CAAC;YACjC,IAAI,OAAO,KAAK,SAAS;gBAAE,MAAM,IAAI,YAAY,CAAC,iBAAiB,EAAE,yCAAyC,CAAC,CAAC;YAChH,KAAK,MAAM,KAAK,IAAI,KAAK,EAAE,CAAC;gBAC1B,QAAQ,CAAC,OAAO,CAAC,0HAA0H,CAAC,CAAC,GAAG,CAAC,UAAU,EAAE,EAAE,cAAc,CAAC,KAAK,EAAE,OAAO,EAAE,UAAU,IAAI,IAAI,EAAE,KAAK,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;YACnO,CAAC;YACD,KAAK,MAAM,cAAc,IAAI,gBAAgB,EAAE,CAAC;gBAC9C,kCAAkC,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC;YAC/D,CAAC;YACD,MAAM,KAAK,GAAG,iCAAiC,CAAC,QAAQ,EAAE;gBACxD,KAAK,EAAE,cAAc,CAAC,KAAK;gBAC3B,SAAS,EAAE,cAAc,CAAC,SAAS;gBACnC,OAAO,EAAE,KAAK;gBACd,OAAO;gBACP,YAAY,EAAE;oBACZ,KAAK,EAAE,QAAQ,CAAC,YAAY,EAAE,OAAO,KAAK,OAAO;oBACjD,WAAW,EAAE,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,MAAM;oBAC9E,cAAc,EAAE,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,MAAM;oBAC1F,aAAa,EAAE,YAAY,CAAC,MAAM;iBACnC;gBACD,SAAS,EAAE,GAAG;aACf,CAAC,CAAC;YACH,MAAM,OAAO,GAAG,IAAI,WAAW,CAAC,QAAQ,CAAC,CAAC,4BAA4B,CAAC,cAAc,CAAC,KAAK,EAAE,OAAO,EAAE,GAAG,CAAC,CAAC;YAC3G,OAAO;gBACL,KAAK;gBACL,GAAG,EAAE;oBACH,KAAK,EAAE,OAAO,CAAC,KAAK;oBACpB,MAAM,EAAE,OAAO,CAAC,MAAM;oBACtB,aAAa,EAAE,gBAAgB,CAAC,MAAM;oBACtC,aAAa,EAAE,YAAY,CAAC,MAAM;oBAClC,cAAc,EAAE,KAAK,CAAC,QAAQ;oBAC9B,uBAAuB,EAAE,KAAK,CAAC,SAAS;iBACzC;aACF,CAAC;QACJ,CAAC;QACD,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,SAAS,EAAE,CAAC;IACnC,CAAC,CAAC,CAAC;IAEH,OAAO;QACL,OAAO,EAAE,OAAO,IAAI,IAAI;QACxB,OAAO,EAAE,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC;QACpI,GAAG,CAAC,OAAO,CAAC,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE,CAAC;KAC3D,CAAC;AACJ,CAAC"}
@@ -8,5 +8,6 @@ export interface DetectRepositoryRootOptions {
8
8
  root?: string;
9
9
  allowDirectory?: boolean;
10
10
  }
11
+ export declare function canonicalDirectory(directory: string): string;
11
12
  export declare function detectRepositoryRoot(options?: DetectRepositoryRootOptions): DetectedRepositoryRoot;
12
13
  //# sourceMappingURL=detect-root.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"detect-root.d.ts","sourceRoot":"","sources":["../../src/repository/detect-root.ts"],"names":[],"mappings":"AAKA,MAAM,MAAM,UAAU,GAAG,UAAU,GAAG,SAAS,GAAG,KAAK,GAAG,YAAY,GAAG,WAAW,CAAC;AAErF,MAAM,WAAW,sBAAsB;IACrC,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,UAAU,CAAC;CACpB;AAED,MAAM,WAAW,2BAA2B;IAC1C,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B;AAgCD,wBAAgB,oBAAoB,CAAC,OAAO,GAAE,2BAAgC,GAAG,sBAAsB,CAuBtG"}
1
+ {"version":3,"file":"detect-root.d.ts","sourceRoot":"","sources":["../../src/repository/detect-root.ts"],"names":[],"mappings":"AAKA,MAAM,MAAM,UAAU,GAAG,UAAU,GAAG,SAAS,GAAG,KAAK,GAAG,YAAY,GAAG,WAAW,CAAC;AAErF,MAAM,WAAW,sBAAsB;IACrC,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,UAAU,CAAC;CACpB;AAED,MAAM,WAAW,2BAA2B;IAC1C,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B;AAED,wBAAgB,kBAAkB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAI5D;AA0BD,wBAAgB,oBAAoB,CAAC,OAAO,GAAE,2BAAgC,GAAG,sBAAsB,CAuBtG"}
@@ -2,7 +2,7 @@ import { execFileSync } from 'node:child_process';
2
2
  import { existsSync, realpathSync, statSync } from 'node:fs';
3
3
  import path from 'node:path';
4
4
  import { KiokukoError } from '../errors.js';
5
- function canonicalDirectory(directory) {
5
+ export function canonicalDirectory(directory) {
6
6
  const resolved = realpathSync(directory);
7
7
  if (!statSync(resolved).isDirectory())
8
8
  throw new KiokukoError('VALIDATION_ERROR', 'Repository root must be a directory');
@@ -1 +1 @@
1
- {"version":3,"file":"detect-root.js","sourceRoot":"","sources":["../../src/repository/detect-root.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"detect-root.js","sourceRoot":"","sources":["../../src/repository/detect-root.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"agent-capability-gate.d.ts","sourceRoot":"","sources":["../../../src/server/routes/agent-capability-gate.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,gCAAgC,CAAC;AAC5E,OAAO,KAAK,EAA4B,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAS7F,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EAIL,KAAK,oBAAoB,EACzB,KAAK,iBAAiB,EACtB,KAAK,YAAY,EAClB,MAAM,gCAAgC,CAAC;AACxC,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAGzD,MAAM,MAAM,yBAAyB,GACjC,SAAS,GACT,kCAAkC,GAClC,iCAAiC,CAAC;AAEtC,MAAM,MAAM,6BAA6B,GAAG,IAAI,CAAC,qBAAqB,EAAE,SAAS,CAAC,GAAG;IACnF,OAAO,EAAE,mBAAmB,CAAC,SAAS,CAAC,CAAC;IACxC,eAAe,EAAE,mBAAmB,CAAC,iBAAiB,CAAC,CAAC;IACxD,YAAY,EAAE,oBAAoB,CAAC;IACnC,YAAY,EAAE,YAAY,CAAC;IAC3B,QAAQ,EAAE,iBAAiB,EAAE,CAAC;IAC9B,UAAU,EAAE,yBAAyB,CAAC;CACvC,CAAC;AAEF,MAAM,WAAW,wBAAwB;IACvC,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,EAAE,cAAc,GAAG,OAAO,GAAG,WAAW,CAAC;IACrD,WAAW,EAAE,WAAW,CAAC;IACzB,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,IAAI,CAAC,mBAAmB,EAAE,SAAS,GAAG,iBAAiB,CAAC,CAAC;IACjE,iBAAiB,CAAC,EAAE,MAAM,GAAG,YAAY,CAAC;CAC3C;AAED,MAAM,WAAW,yBAAyB;IACxC,OAAO,EAAE,mBAAmB,CAAC,SAAS,CAAC,CAAC;IACxC,eAAe,EAAE,mBAAmB,CAAC,iBAAiB,CAAC,CAAC;IACxD,YAAY,EAAE,oBAAoB,CAAC;IACnC,YAAY,EAAE,YAAY,CAAC;IAC3B,QAAQ,EAAE,iBAAiB,EAAE,CAAC;IAC9B,UAAU,EAAE,yBAAyB,CAAC;CACvC;AAkED,wBAAgB,2BAA2B,CACzC,OAAO,EAAE,IAAI,CAAC,iBAAiB,EAAE,UAAU,CAAC,EAC5C,MAAM,EAAE,IAAI,CAAC,mBAAmB,EAAE,SAAS,CAAC,GAC3C,MAAM,GAAG,YAAY,CAQvB;AAED,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,mBAAmB,CAAC,QAAQ,CAAC,GACpC,wBAAwB,CAAC,cAAc,CAAC,CAG1C;AAED,wBAAgB,sBAAsB,CAAC,SAAS,EAAE,IAAI,CAAC,mBAAmB,EAAE,SAAS,CAAC,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAI3G;AAQD,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAEhE;AAyBD,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,wBAAwB,GAAG,yBAAyB,CAcnG;AAED;gFACgF;AAChF,wBAAsB,4BAA4B,CAChD,OAAO,EAAE,iBAAiB,EAC1B,KAAK,EAAE,qBAAqB,EAC5B,OAAO,EAAE,OAAO,GACf,OAAO,CAAC,6BAA6B,CAAC,CAqDxC"}
1
+ {"version":3,"file":"agent-capability-gate.d.ts","sourceRoot":"","sources":["../../../src/server/routes/agent-capability-gate.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,gCAAgC,CAAC;AAC5E,OAAO,KAAK,EAA4B,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAU7F,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EAML,KAAK,oBAAoB,EACzB,KAAK,iBAAiB,EACtB,KAAK,YAAY,EAClB,MAAM,gCAAgC,CAAC;AACxC,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAGzD,MAAM,MAAM,yBAAyB,GACjC,SAAS,GACT,kCAAkC,GAClC,iCAAiC,CAAC;AAEtC,MAAM,MAAM,6BAA6B,GAAG,IAAI,CAAC,qBAAqB,EAAE,SAAS,CAAC,GAAG;IACnF,OAAO,EAAE,mBAAmB,CAAC,SAAS,CAAC,CAAC;IACxC,eAAe,EAAE,mBAAmB,CAAC,iBAAiB,CAAC,CAAC;IACxD,YAAY,EAAE,oBAAoB,CAAC;IACnC,YAAY,EAAE,YAAY,CAAC;IAC3B,QAAQ,EAAE,iBAAiB,EAAE,CAAC;IAC9B,UAAU,EAAE,yBAAyB,CAAC;CACvC,CAAC;AAEF,MAAM,WAAW,wBAAwB;IACvC,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,EAAE,cAAc,GAAG,OAAO,GAAG,WAAW,CAAC;IACrD,WAAW,EAAE,WAAW,CAAC;IACzB,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,IAAI,CAAC,mBAAmB,EAAE,SAAS,GAAG,iBAAiB,CAAC,CAAC;IACjE,iBAAiB,CAAC,EAAE,MAAM,GAAG,YAAY,CAAC;CAC3C;AAED,MAAM,WAAW,yBAAyB;IACxC,OAAO,EAAE,mBAAmB,CAAC,SAAS,CAAC,CAAC;IACxC,eAAe,EAAE,mBAAmB,CAAC,iBAAiB,CAAC,CAAC;IACxD,YAAY,EAAE,oBAAoB,CAAC;IACnC,YAAY,EAAE,YAAY,CAAC;IAC3B,QAAQ,EAAE,iBAAiB,EAAE,CAAC;IAC9B,UAAU,EAAE,yBAAyB,CAAC;CACvC;AAkED,wBAAgB,2BAA2B,CACzC,OAAO,EAAE,IAAI,CAAC,iBAAiB,EAAE,UAAU,CAAC,EAC5C,MAAM,EAAE,IAAI,CAAC,mBAAmB,EAAE,SAAS,CAAC,GAC3C,MAAM,GAAG,YAAY,CAQvB;AAED,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,mBAAmB,CAAC,QAAQ,CAAC,GACpC,wBAAwB,CAAC,cAAc,CAAC,CAG1C;AAED,wBAAgB,sBAAsB,CAAC,SAAS,EAAE,IAAI,CAAC,mBAAmB,EAAE,SAAS,CAAC,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAI3G;AAQD,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAEhE;AAyBD,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,wBAAwB,GAAG,yBAAyB,CAenG;AAED;gFACgF;AAChF,wBAAsB,4BAA4B,CAChD,OAAO,EAAE,iBAAiB,EAC1B,KAAK,EAAE,qBAAqB,EAC5B,OAAO,EAAE,OAAO,GACf,OAAO,CAAC,6BAA6B,CAAC,CAqDxC"}