@vibe-validate/cli 0.16.1 → 0.17.0-rc.6

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.
@@ -6,11 +6,11 @@
6
6
  */
7
7
  import { execSync } from 'node:child_process';
8
8
  import { writeFile, readFile } from 'node:fs/promises';
9
- import { join } from 'node:path';
9
+ import { join, resolve, relative } from 'node:path';
10
10
  import { autoDetectAndExtract } from '@vibe-validate/extractors';
11
11
  import { getRunOutputDir, ensureDir } from '../utils/temp-files.js';
12
12
  import { getGitTreeHash, encodeRunCacheKey, extractYamlWithPreamble } from '@vibe-validate/git';
13
- import { spawnCommand, parseVibeValidateOutput } from '@vibe-validate/core';
13
+ import { spawnCommand, parseVibeValidateOutput, getGitRoot } from '@vibe-validate/core';
14
14
  import yaml from 'yaml';
15
15
  import chalk from 'chalk';
16
16
  export function runCommand(program) {
@@ -20,6 +20,7 @@ export function runCommand(program) {
20
20
  .argument('<command...>', 'Command to execute (multiple words supported)')
21
21
  .option('--check', 'Check if cached result exists without executing')
22
22
  .option('--force', 'Force execution and update cache (bypass cache read)')
23
+ .option('--cwd <directory>', 'Working directory relative to git root (default: git root)')
23
24
  .option('--head <lines>', 'Display first N lines of output after YAML (on stderr)', Number.parseInt)
24
25
  .option('--tail <lines>', 'Display last N lines of output after YAML (on stderr)', Number.parseInt)
25
26
  .option('--verbose', 'Display all output after YAML (on stderr)')
@@ -57,6 +58,10 @@ export function runCommand(program) {
57
58
  actualOptions.force = true;
58
59
  i++;
59
60
  }
61
+ else if (arg === '--cwd' && i + 1 < argv.length) {
62
+ actualOptions.cwd = argv[i + 1];
63
+ i += 2;
64
+ }
60
65
  else if (arg === '--head' && i + 1 < argv.length) {
61
66
  actualOptions.head = Number.parseInt(argv[i + 1], 10);
62
67
  i += 2;
@@ -82,9 +87,12 @@ export function runCommand(program) {
82
87
  process.exit(0);
83
88
  }
84
89
  try {
90
+ // Note: Plugin loading is handled by the runner (in @vibe-validate/core)
91
+ // when running via validate command. For standalone run commands, plugins
92
+ // are not needed since run is primarily for caching/extraction, not validation.
85
93
  // Handle --check flag (cache status check only)
86
94
  if (actualOptions.check) {
87
- const cachedResult = await tryGetCachedResult(commandString);
95
+ const cachedResult = await tryGetCachedResult(commandString, actualOptions.cwd);
88
96
  if (cachedResult) {
89
97
  // Cache hit - output cached result and exit with code 0
90
98
  process.stdout.write('---\n');
@@ -103,26 +111,26 @@ export function runCommand(program) {
103
111
  let result;
104
112
  let context = { preamble: '', stderr: '' };
105
113
  if (!actualOptions.force) {
106
- const cachedResult = await tryGetCachedResult(commandString);
114
+ const cachedResult = await tryGetCachedResult(commandString, actualOptions.cwd);
107
115
  if (cachedResult) {
108
116
  result = cachedResult;
109
117
  }
110
118
  else {
111
119
  // Cache miss - execute command
112
- const executeResult = await executeAndExtract(commandString);
120
+ const executeResult = await executeAndExtract(commandString, actualOptions.cwd);
113
121
  result = executeResult.result;
114
122
  context = executeResult.context;
115
123
  // Store result in cache
116
- await storeCacheResult(commandString, result);
124
+ await storeCacheResult(commandString, result, actualOptions.cwd);
117
125
  }
118
126
  }
119
127
  else {
120
128
  // Force flag - bypass cache and execute
121
- const executeResult = await executeAndExtract(commandString);
129
+ const executeResult = await executeAndExtract(commandString, actualOptions.cwd);
122
130
  result = executeResult.result;
123
131
  context = executeResult.context;
124
132
  // Update cache with fresh result
125
- await storeCacheResult(commandString, result);
133
+ await storeCacheResult(commandString, result, actualOptions.cwd);
126
134
  }
127
135
  // CRITICAL: Write complete YAML to stdout and flush BEFORE any stderr
128
136
  // This ensures even if callers use 2>&1, YAML completes first
@@ -180,24 +188,49 @@ export function runCommand(program) {
180
188
  });
181
189
  }
182
190
  /**
183
- * Get working directory relative to git root
191
+ * Get working directory relative to git root for cache key
184
192
  * Returns empty string for root, "packages/cli" for subdirectory
193
+ *
194
+ * IMPORTANT: For cache key generation, we use the ACTUAL directory where the command
195
+ * is invoked from (process.cwd()), not where it runs. This ensures cache keys are
196
+ * accurate - running "npm test" from packages/cli is different than from git root.
197
+ *
198
+ * @param explicitCwd - Optional explicit cwd from --cwd flag (relative to git root)
199
+ * @returns Working directory path relative to git root (empty string for root)
185
200
  */
186
- function getWorkingDirectory() {
201
+ function getWorkingDirectory(explicitCwd) {
187
202
  try {
188
- const gitRoot = execSync('git rev-parse --show-toplevel', {
189
- encoding: 'utf8',
190
- stdio: ['ignore', 'pipe', 'ignore'],
191
- }).trim();
203
+ const gitRoot = getGitRoot();
204
+ if (!gitRoot) {
205
+ throw new Error('Not in a git repository');
206
+ }
207
+ // Use explicit --cwd if provided
208
+ if (explicitCwd) {
209
+ // Resolve path relative to git root
210
+ const resolved = resolve(gitRoot, explicitCwd);
211
+ // Security: Prevent directory traversal outside git root
212
+ if (!resolved.startsWith(gitRoot)) {
213
+ throw new Error(`Invalid --cwd: "${explicitCwd}" - must be within git repository`);
214
+ }
215
+ // Return normalized relative path
216
+ const relativePath = relative(gitRoot, resolved);
217
+ return relativePath || ''; // Empty string if resolved to git root
218
+ }
219
+ // Use actual current directory for cache key (process.cwd() relative to git root)
220
+ // This ensures cache keys reflect WHERE the command was invoked from, not where it runs
192
221
  const cwd = process.cwd();
193
- // If cwd is git root, return empty string
194
- if (cwd === gitRoot) {
222
+ const relativePath = relative(gitRoot, cwd);
223
+ // If outside git repo or at git root, return empty string
224
+ if (relativePath.startsWith('..') || !relativePath) {
195
225
  return '';
196
226
  }
197
- // Return relative path from git root
198
- return cwd.substring(gitRoot.length + 1); // +1 to remove leading slash
227
+ return relativePath;
199
228
  }
200
- catch {
229
+ catch (error) {
230
+ // Re-throw validation errors
231
+ if (error instanceof Error && error.message.includes('Invalid --cwd')) {
232
+ throw error;
233
+ }
201
234
  // Not in a git repository - return empty string
202
235
  return '';
203
236
  }
@@ -206,7 +239,7 @@ function getWorkingDirectory() {
206
239
  * Try to get cached result for a command
207
240
  * Returns null if no cache hit or if not in a git repository
208
241
  */
209
- async function tryGetCachedResult(commandString) {
242
+ async function tryGetCachedResult(commandString, explicitCwd) {
210
243
  try {
211
244
  // Get tree hash
212
245
  const treeHash = await getGitTreeHash();
@@ -215,7 +248,7 @@ async function tryGetCachedResult(commandString) {
215
248
  return null;
216
249
  }
217
250
  // Get working directory
218
- const workdir = getWorkingDirectory();
251
+ const workdir = getWorkingDirectory(explicitCwd);
219
252
  // Encode cache key
220
253
  const cacheKey = encodeRunCacheKey(commandString, workdir);
221
254
  // Construct git notes ref path: refs/notes/vibe-validate/run/{treeHash}/{cacheKey}
@@ -256,7 +289,7 @@ async function tryGetCachedResult(commandString) {
256
289
  /**
257
290
  * Store result in cache (only successful runs - exitCode === 0)
258
291
  */
259
- async function storeCacheResult(commandString, result) {
292
+ async function storeCacheResult(commandString, result, explicitCwd) {
260
293
  try {
261
294
  // Only cache successful runs (v0.15.0+)
262
295
  // Failed runs may be transient or environment-specific
@@ -270,7 +303,7 @@ async function storeCacheResult(commandString, result) {
270
303
  return;
271
304
  }
272
305
  // Get working directory
273
- const workdir = getWorkingDirectory();
306
+ const workdir = getWorkingDirectory(explicitCwd);
274
307
  // Encode cache key
275
308
  const cacheKey = encodeRunCacheKey(commandString, workdir);
276
309
  // Construct git notes ref path
@@ -318,10 +351,31 @@ function stripAnsiCodes(text) {
318
351
  /**
319
352
  * Execute a command and extract errors from its output
320
353
  */
321
- async function executeAndExtract(commandString) {
322
- return new Promise((resolve, reject) => {
354
+ async function executeAndExtract(commandString, explicitCwd) {
355
+ return new Promise((resolvePromise, rejectPromise) => {
323
356
  const startTime = Date.now();
324
- const child = spawnCommand(commandString);
357
+ // Resolve cwd if provided (relative to git root)
358
+ let resolvedCwd;
359
+ if (explicitCwd) {
360
+ try {
361
+ const gitRoot = getGitRoot();
362
+ if (!gitRoot) {
363
+ rejectPromise(new Error('Not in a git repository'));
364
+ return;
365
+ }
366
+ resolvedCwd = resolve(gitRoot, explicitCwd);
367
+ // Security: Validate path is within git root
368
+ if (!resolvedCwd.startsWith(gitRoot)) {
369
+ rejectPromise(new Error(`Invalid --cwd: "${explicitCwd}" - must be within git repository`));
370
+ return;
371
+ }
372
+ }
373
+ catch (error) {
374
+ rejectPromise(new Error(`Failed to resolve --cwd: ${error instanceof Error ? error.message : 'unknown error'}`));
375
+ return;
376
+ }
377
+ }
378
+ const child = spawnCommand(commandString, { cwd: resolvedCwd });
325
379
  let stdout = '';
326
380
  let stderr = '';
327
381
  const combinedLines = [];
@@ -372,7 +426,7 @@ async function executeAndExtract(commandString) {
372
426
  preamble: yamlResult.preamble,
373
427
  stderr: stderr.trim(),
374
428
  };
375
- resolve({ result: mergedResult, context: contextOutput });
429
+ resolvePromise({ result: mergedResult, context: contextOutput });
376
430
  return;
377
431
  }
378
432
  // For extraction, combine both streams (stderr has useful error context)
@@ -383,7 +437,7 @@ async function executeAndExtract(commandString) {
383
437
  stdout,
384
438
  stderr,
385
439
  combined: combinedOutput,
386
- });
440
+ }, exitCode);
387
441
  const extraction = (exitCode !== 0 || rawExtraction.totalErrors > 0) ? rawExtraction : undefined;
388
442
  // Get tree hash for result (async operation needs to be awaited)
389
443
  getGitTreeHash()
@@ -426,7 +480,7 @@ async function executeAndExtract(commandString) {
426
480
  combined: combinedFile,
427
481
  },
428
482
  };
429
- resolve({ result, context: { preamble: '', stderr: '' } });
483
+ resolvePromise({ result, context: { preamble: '', stderr: '' } });
430
484
  })
431
485
  .catch(async () => {
432
486
  // If tree hash fails, use timestamp-based fallback
@@ -470,12 +524,12 @@ async function executeAndExtract(commandString) {
470
524
  combined: combinedFile,
471
525
  },
472
526
  };
473
- resolve({ result, context: { preamble: '', stderr: '' } });
527
+ resolvePromise({ result, context: { preamble: '', stderr: '' } });
474
528
  });
475
529
  });
476
530
  // Handle spawn errors (e.g., command not found)
477
531
  child.on('error', (error) => {
478
- reject(error);
532
+ rejectPromise(error);
479
533
  });
480
534
  });
481
535
  }
@@ -548,6 +602,10 @@ function mergeNestedYaml(outerCommand, yamlOutput, outerExitCode, outerDurationS
548
602
  };
549
603
  }
550
604
  }
605
+ // Note: loadPluginsIfConfigured() has been removed.
606
+ // Plugin loading is now handled exclusively by the runner (in @vibe-validate/core)
607
+ // when executing validation. This prevents redundant plugin loading on every
608
+ // `vv run` invocation, which was causing 2.4x+ performance regression during tests.
551
609
  /**
552
610
  * Show verbose help with detailed documentation
553
611
  */
@@ -619,6 +677,15 @@ $ vibe-validate run --force "pnpm test"
619
677
  # Useful for flaky tests or time-sensitive commands
620
678
  \`\`\`
621
679
 
680
+ **Working directory** (--cwd):
681
+ \`\`\`bash
682
+ $ vibe-validate run --cwd packages/cli "npm test"
683
+ # Runs command in packages/cli directory (relative to git root)
684
+ # Cache keys include working directory for correct cache hits
685
+ \`\`\`
686
+
687
+ **NEW in v0.17.0**: The \`--cwd\` flag allows running commands in subdirectories while maintaining consistent cache behavior. Paths are relative to git root, ensuring cache hits regardless of where you invoke the command.
688
+
622
689
  ### Cache Storage
623
690
 
624
691
  Cache is stored in git notes at:
@@ -856,6 +923,7 @@ Arguments:
856
923
  Options:
857
924
  --check Check if cached result exists without executing
858
925
  --force Force execution and update cache (bypass cache read)
926
+ --cwd <directory> Working directory relative to git root (default: git root)
859
927
  --head <lines> Display first N lines of output after YAML (on stderr)
860
928
  --tail <lines> Display last N lines of output after YAML (on stderr)
861
929
  --verbose Display all output after YAML (on stderr)
@@ -866,6 +934,7 @@ Examples:
866
934
  vv run cargo test --all-features # Rust
867
935
  vv run go test ./... # Go
868
936
  vv run npm test # Node.js
937
+ vv run --cwd packages/cli npm test # Run in subdirectory
869
938
  vv run --verbose npm test # With output display
870
939
 
871
940
  For detailed documentation, use: vibe-validate run --help --verbose
@@ -1 +1 @@
1
- {"version":3,"file":"run.js","sourceRoot":"","sources":["../../src/commands/run.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC9C,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,eAAe,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAEpE,OAAO,EAAE,cAAc,EAAE,iBAAiB,EAAE,uBAAuB,EAAE,MAAM,oBAAoB,CAAC;AAEhG,OAAO,EAAE,YAAY,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAC;AAE5E,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,MAAM,UAAU,UAAU,CAAC,OAAgB;IACzC,OAAO;SACJ,OAAO,CAAC,KAAK,CAAC;SACd,WAAW,CAAC,oEAAoE,CAAC;SACjF,QAAQ,CAAC,cAAc,EAAE,+CAA+C,CAAC;SACzE,MAAM,CAAC,SAAS,EAAE,iDAAiD,CAAC;SACpE,MAAM,CAAC,SAAS,EAAE,sDAAsD,CAAC;SACzE,MAAM,CAAC,gBAAgB,EAAE,wDAAwD,EAAE,MAAM,CAAC,QAAQ,CAAC;SACnG,MAAM,CAAC,gBAAgB,EAAE,uDAAuD,EAAE,MAAM,CAAC,QAAQ,CAAC;SAClG,MAAM,CAAC,WAAW,EAAE,2CAA2C,CAAC;SAChE,UAAU,CAAC,KAAK,CAAC,CAAC,0EAA0E;SAC5F,kBAAkB,EAAE,CAAC,uCAAuC;QAC7D,gIAAgI;SAC/H,MAAM,CAAC,KAAK,EAAE,YAAsB,EAAE,OAA8F,EAAE,EAAE;QACvI,0FAA0F;QAC1F,+FAA+F;QAC/F,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;QAC1B,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,KAAK,IAAI,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,GAAG,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC,CAAC;QAE/G,IAAI,aAA6B,CAAC;QAClC,IAAI,aAAqB,CAAC;QAE1B,IAAI,QAAQ,KAAK,CAAC,CAAC,EAAE,CAAC;YACpB,gFAAgF;YAChF,aAAa,GAAG,OAAO,CAAC;YACxB,aAAa,GAAG,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACzC,CAAC;aAAM,CAAC;YACN,oEAAoE;YACpE,aAAa,GAAG,EAAE,CAAC;YACnB,MAAM,aAAa,GAAa,EAAE,CAAC;YAEnC,IAAI,CAAC,GAAG,QAAQ,GAAG,CAAC,CAAC;YACrB,OAAO,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC;gBACvB,MAAM,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;gBAEpB,IAAI,GAAG,KAAK,WAAW,EAAE,CAAC;oBACxB,aAAa,CAAC,OAAO,GAAG,IAAI,CAAC;oBAC7B,CAAC,EAAE,CAAC;gBACN,CAAC;qBAAM,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;oBAC7B,aAAa,CAAC,KAAK,GAAG,IAAI,CAAC;oBAC3B,CAAC,EAAE,CAAC;gBACN,CAAC;qBAAM,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;oBAC7B,aAAa,CAAC,KAAK,GAAG,IAAI,CAAC;oBAC3B,CAAC,EAAE,CAAC;gBACN,CAAC;qBAAM,IAAI,GAAG,KAAK,QAAQ,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC;oBACnD,aAAa,CAAC,IAAI,GAAG,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;oBACtD,CAAC,IAAI,CAAC,CAAC;gBACT,CAAC;qBAAM,IAAI,GAAG,KAAK,QAAQ,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC;oBACnD,aAAa,CAAC,IAAI,GAAG,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;oBACtD,CAAC,IAAI,CAAC,CAAC;gBACT,CAAC;qBAAM,CAAC;oBACN,2CAA2C;oBAC3C,aAAa,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;oBACrC,MAAM;gBACR,CAAC;YACH,CAAC;YAED,aAAa,GAAG,aAAa,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC1C,CAAC;QAED,qFAAqF;QACrF,qFAAqF;QACrF,MAAM,cAAc,GAAG,aAAa,CAAC,IAAI,EAAE,CAAC;QAC5C,IAAI,CAAC,cAAc,IAAI,cAAc,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YACtD,mEAAmE;YACnE,WAAW,EAAE,CAAC;YACd,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QAED,IAAI,CAAC;YACH,gDAAgD;YAChD,IAAI,aAAa,CAAC,KAAK,EAAE,CAAC;gBACxB,MAAM,YAAY,GAAG,MAAM,kBAAkB,CAAC,aAAa,CAAC,CAAC;gBAC7D,IAAI,YAAY,EAAE,CAAC;oBACjB,wDAAwD;oBACxD,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;oBAC9B,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC,CAAC;oBACnD,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;oBAC9B,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;gBAClB,CAAC;qBAAM,CAAC;oBACN,mDAAmD;oBACnD,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,uCAAuC,CAAC,CAAC;oBAC9D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;gBAClB,CAAC;gBACD,OAAO;YACT,CAAC;YAED,4CAA4C;YAC5C,IAAI,MAAiB,CAAC;YACtB,IAAI,OAAO,GAAG,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;YAE3C,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC;gBACzB,MAAM,YAAY,GAAG,MAAM,kBAAkB,CAAC,aAAa,CAAC,CAAC;gBAC7D,IAAI,YAAY,EAAE,CAAC;oBACjB,MAAM,GAAG,YAAY,CAAC;gBACxB,CAAC;qBAAM,CAAC;oBACN,+BAA+B;oBAC/B,MAAM,aAAa,GAAG,MAAM,iBAAiB,CAAC,aAAa,CAAC,CAAC;oBAC7D,MAAM,GAAG,aAAa,CAAC,MAAM,CAAC;oBAC9B,OAAO,GAAG,aAAa,CAAC,OAAO,CAAC;oBAEhC,wBAAwB;oBACxB,MAAM,gBAAgB,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC;gBAChD,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,wCAAwC;gBACxC,MAAM,aAAa,GAAG,MAAM,iBAAiB,CAAC,aAAa,CAAC,CAAC;gBAC7D,MAAM,GAAG,aAAa,CAAC,MAAM,CAAC;gBAC9B,OAAO,GAAG,aAAa,CAAC,OAAO,CAAC;gBAEhC,iCAAiC;gBACjC,MAAM,gBAAgB,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC;YAChD,CAAC;YAED,sEAAsE;YACtE,8DAA8D;YAC9D,qDAAqD;YACrD,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YAE9B,2DAA2D;YAC3D,IAAI,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;YACxC,IAAI,MAAM,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;gBAClC,UAAU,GAAG,UAAU,CAAC,OAAO,CAC7B,sBAAsB,EACtB,+DAA+D,CAChE,CAAC;YACJ,CAAC;YACD,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;YAEjC,4DAA4D;YAC5D,mFAAmF;YACnF,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YAE9B,0EAA0E;YAC1E,0IAA0I;YAC1I,MAAM,iBAAiB,GAAG,CAAC,CAAC,CAAC,aAAa,CAAC,IAAI,IAAI,aAAa,CAAC,IAAI,IAAI,aAAa,CAAC,OAAO,CAAC,CAAC;YAEhG,kEAAkE;YAClE,iEAAiE;YACjE,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE;gBAClC,IAAI,OAAO,CAAC,MAAM,CAAC,iBAAiB,EAAE,CAAC;oBACrC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;gBACxC,CAAC;qBAAM,CAAC;oBACN,OAAO,EAAE,CAAC;gBACZ,CAAC;YACH,CAAC,CAAC,CAAC;YAEH,yEAAyE;YACzE,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;gBACrB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC,CAAC;YAChD,CAAC;YACD,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;gBACnB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;YACvC,CAAC;YAED,6DAA6D;YAC7D,IAAI,iBAAiB,EAAE,CAAC;gBACtB,MAAM,oBAAoB,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;YACpD,CAAC;YAED,qCAAqC;YACrC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QAChC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,8CAA8C;YAC9C,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE;gBAClC,IAAI,OAAO,CAAC,MAAM,CAAC,iBAAiB,EAAE,CAAC;oBACrC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;gBACxC,CAAC;qBAAM,CAAC;oBACN,OAAO,EAAE,CAAC;gBACZ,CAAC;YACH,CAAC,CAAC,CAAC;YAEH,OAAO,CAAC,KAAK,CAAC,4BAA4B,EAAE,KAAK,CAAC,CAAC;YACnD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;IACH,CAAC,CAAC,CAAC;AACP,CAAC;AAED;;;GAGG;AACH,SAAS,mBAAmB;IAC1B,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,QAAQ,CAAC,+BAA+B,EAAE;YACxD,QAAQ,EAAE,MAAM;YAChB,KAAK,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAC;SACpC,CAAC,CAAC,IAAI,EAAE,CAAC;QAEV,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;QAE1B,0CAA0C;QAC1C,IAAI,GAAG,KAAK,OAAO,EAAE,CAAC;YACpB,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,qCAAqC;QACrC,OAAO,GAAG,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,6BAA6B;IACzE,CAAC;IAAC,MAAM,CAAC;QACP,gDAAgD;QAChD,OAAO,EAAE,CAAC;IACZ,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,KAAK,UAAU,kBAAkB,CAAC,aAAqB;IACrD,IAAI,CAAC;QACH,gBAAgB;QAChB,MAAM,QAAQ,GAAG,MAAM,cAAc,EAAE,CAAC;QAExC,wCAAwC;QACxC,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;YAC3B,OAAO,IAAI,CAAC;QACd,CAAC;QAED,wBAAwB;QACxB,MAAM,OAAO,GAAG,mBAAmB,EAAE,CAAC;QAEtC,mBAAmB;QACnB,MAAM,QAAQ,GAAG,iBAAiB,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;QAE3D,mFAAmF;QACnF,MAAM,OAAO,GAAG,qBAAqB,QAAQ,IAAI,QAAQ,EAAE,CAAC;QAE5D,uBAAuB;QACvB,MAAM,WAAW,GAAG,QAAQ,CAAC,mBAAmB,OAAO,gCAAgC,EAAE;YACvF,QAAQ,EAAE,MAAM;YAChB,KAAK,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAC;SACpC,CAAC,CAAC,IAAI,EAAE,CAAC;QAEV,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,aAAa;YACb,OAAO,IAAI,CAAC;QACd,CAAC;QAED,oBAAoB;QACpB,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,CAAiB,CAAC;QAE3D,yFAAyF;QACzF,8DAA8D;QAC9D,MAAM,YAAY,GAAG,UAAU,CAAC,YAAY,IAAI,CAAE,UAAkB,CAAC,QAAQ,CAAC,CAAC,CAAE,UAAkB,CAAC,QAAQ,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAEzH,+CAA+C;QAC/C,MAAM,MAAM,GAAc;YACxB,OAAO,EAAE,UAAU,CAAC,OAAO,EAAE,4CAA4C;YACzE,QAAQ,EAAE,UAAU,CAAC,QAAQ;YAC7B,YAAY;YACZ,SAAS,EAAE,UAAU,CAAC,SAAS;YAC/B,QAAQ,EAAE,UAAU,CAAC,QAAQ;YAC7B,UAAU,EAAE,UAAU,CAAC,UAAU;YACjC,GAAG,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,UAAU,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC1E,cAAc,EAAE,IAAI,EAAE,oBAAoB;SAC3C,CAAC;QAEF,OAAO,MAAM,CAAC;QAChB,yHAAyH;IACzH,CAAC;IAAC,OAAO,MAAM,EAAE,CAAC;QAChB,+CAA+C;QAC/C,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,gBAAgB,CAAC,aAAqB,EAAE,MAAiB;IACtE,IAAI,CAAC;QACH,wCAAwC;QACxC,uDAAuD;QACvD,IAAI,MAAM,CAAC,QAAQ,KAAK,CAAC,EAAE,CAAC;YAC1B,OAAO;QACT,CAAC;QAED,gBAAgB;QAChB,MAAM,QAAQ,GAAG,MAAM,cAAc,EAAE,CAAC;QAExC,wCAAwC;QACxC,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;YAC3B,OAAO;QACT,CAAC;QAED,wBAAwB;QACxB,MAAM,OAAO,GAAG,mBAAmB,EAAE,CAAC;QAEtC,mBAAmB;QACnB,MAAM,QAAQ,GAAG,iBAAiB,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;QAE3D,+BAA+B;QAC/B,MAAM,OAAO,GAAG,qBAAqB,QAAQ,IAAI,QAAQ,EAAE,CAAC;QAE5D,0DAA0D;QAC1D,6FAA6F;QAC7F,8FAA8F;QAC9F,MAAM,SAAS,GAAiB;YAC9B,QAAQ;YACR,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,+DAA+D;YACxF,OAAO;YACP,SAAS,EAAE,MAAM,CAAC,SAAS;YAC3B,QAAQ,EAAE,MAAM,CAAC,QAAQ;YACzB,YAAY,EAAE,MAAM,CAAC,YAAY;YACjC,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,MAAM,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,mCAAmC;YACpG,GAAG,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACnE,CAAC;QAEF,kEAAkE;QAClE,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;QAE3C,yCAAyC;QACzC,IAAI,CAAC;YACH,QAAQ,CACN,iCAAiC,OAAO,sBAAsB,QAAQ,OAAO,EAC7E;gBACE,KAAK,EAAE,QAAQ;gBACf,KAAK,EAAE,WAAW,EAAE,kCAAkC;aACvD,CACF,CAAC;YACJ,kGAAkG;QAClG,CAAC;QAAC,OAAO,MAAM,EAAE,CAAC;YAChB,gDAAgD;QAClD,CAAC;QACH,sHAAsH;IACtH,CAAC;IAAC,OAAO,MAAM,EAAE,CAAC;QAChB,gDAAgD;IAClD,CAAC;AACH,CAAC;AAED;;GAEG;AACH,SAAS,cAAc,CAAC,IAAY;IAClC,0EAA0E;IAC1E,sEAAsE;IACtE,OAAO,IAAI,CAAC,OAAO,CAAC,iBAAiB,EAAE,EAAE,CAAC,CAAC;AAC7C,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,iBAAiB,CAAC,aAAqB;IAIpD,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAC7B,MAAM,KAAK,GAAG,YAAY,CAAC,aAAa,CAAC,CAAC;QAE1C,IAAI,MAAM,GAAG,EAAE,CAAC;QAChB,IAAI,MAAM,GAAG,EAAE,CAAC;QAChB,MAAM,aAAa,GAAiB,EAAE,CAAC;QAEvC,wHAAwH;QACxH,+GAA+G;QAC/G,KAAK,CAAC,MAAO,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,IAAY,EAAE,EAAE;YACxC,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC;YAC9B,MAAM,IAAI,KAAK,CAAC;YAEhB,yCAAyC;YACzC,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YAChC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;gBACzB,IAAI,IAAI,EAAE,CAAC;oBACT,aAAa,CAAC,IAAI,CAAC;wBACjB,EAAE,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;wBAC5B,MAAM,EAAE,QAAQ;wBAChB,IAAI,EAAE,cAAc,CAAC,IAAI,CAAC;qBAC3B,CAAC,CAAC;gBACL,CAAC;YACH,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,iBAAiB;QACjB,+GAA+G;QAC/G,KAAK,CAAC,MAAO,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,IAAY,EAAE,EAAE;YACxC,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC;YAC9B,MAAM,IAAI,KAAK,CAAC;YAEhB,yCAAyC;YACzC,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YAChC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;gBACzB,IAAI,IAAI,EAAE,CAAC;oBACT,aAAa,CAAC,IAAI,CAAC;wBACjB,EAAE,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;wBAC5B,MAAM,EAAE,QAAQ;wBAChB,IAAI,EAAE,cAAc,CAAC,IAAI,CAAC;qBAC3B,CAAC,CAAC;gBACL,CAAC;YACH,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,sBAAsB;QACtB,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,WAAmB,CAAC,EAAE,EAAE;YACzC,MAAM,YAAY,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC,GAAG,IAAI,CAAC;YAErD,oDAAoD;YACpD,mEAAmE;YACnE,MAAM,UAAU,GAAG,uBAAuB,CAAC,MAAM,CAAC,CAAC;YACnD,IAAI,UAAU,EAAE,CAAC;gBACf,MAAM,YAAY,GAAG,eAAe,CAAC,aAAa,EAAE,UAAU,CAAC,IAAI,EAAE,QAAQ,EAAE,YAAY,CAAC,CAAC;gBAE7F,0CAA0C;gBAC1C,MAAM,aAAa,GAAG;oBACpB,QAAQ,EAAE,UAAU,CAAC,QAAQ;oBAC7B,MAAM,EAAE,MAAM,CAAC,IAAI,EAAE;iBACtB,CAAC;gBAEF,OAAO,CAAC,EAAE,MAAM,EAAE,YAAY,EAAE,OAAO,EAAE,aAAa,EAAE,CAAC,CAAC;gBAC1D,OAAO;YACT,CAAC;YAED,yEAAyE;YACzE,MAAM,cAAc,GAAG,MAAM,GAAG,MAAM,CAAC;YAEvC,gEAAgE;YAChE,kFAAkF;YAClF,MAAM,aAAa,GAAG,oBAAoB,CAAC;gBACzC,MAAM;gBACN,MAAM;gBACN,QAAQ,EAAE,cAAc;aACzB,CAAC,CAAC;YACH,MAAM,UAAU,GAAG,CAAC,QAAQ,KAAK,CAAC,IAAI,aAAa,CAAC,WAAW,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS,CAAC;YAEjG,iEAAiE;YACjE,cAAc,EAAE;iBACb,IAAI,CAAC,KAAK,EAAC,QAAQ,EAAC,EAAE;gBACrB,iDAAiD;gBACjD,MAAM,SAAS,GAAG,eAAe,CAAC,QAAQ,CAAC,CAAC;gBAC5C,MAAM,SAAS,CAAC,SAAS,CAAC,CAAC;gBAE3B,MAAM,aAAa,GAAoB,EAAE,CAAC;gBAE1C,uCAAuC;gBACvC,IAAI,UAA8B,CAAC;gBACnC,IAAI,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC;oBAClB,UAAU,GAAG,IAAI,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC;oBAC3C,aAAa,CAAC,IAAI,CAAC,SAAS,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;gBAC7D,CAAC;gBAED,uCAAuC;gBACvC,IAAI,UAA8B,CAAC;gBACnC,IAAI,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC;oBAClB,UAAU,GAAG,IAAI,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC;oBAC3C,aAAa,CAAC,IAAI,CAAC,SAAS,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;gBAC7D,CAAC;gBAED,gCAAgC;gBAChC,MAAM,YAAY,GAAG,IAAI,CAAC,SAAS,EAAE,gBAAgB,CAAC,CAAC;gBACvD,MAAM,eAAe,GAAG,aAAa;oBACnC,wHAAwH;qBACvH,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;qBACjC,IAAI,CAAC,IAAI,CAAC,CAAC;gBACd,aAAa,CAAC,IAAI,CAAC,SAAS,CAAC,YAAY,EAAE,eAAe,EAAE,OAAO,CAAC,CAAC,CAAC;gBAEtE,kCAAkC;gBAClC,MAAM,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;gBAEjC,MAAM,MAAM,GAAc;oBACxB,OAAO,EAAE,aAAa;oBACtB,QAAQ;oBACR,YAAY;oBACZ,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;oBACnC,QAAQ;oBACR,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,oCAAoC;oBAC3E,WAAW,EAAE;wBACX,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;wBAC7C,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;wBAC7C,QAAQ,EAAE,YAAY;qBACvB;iBACF,CAAC;gBAEF,OAAO,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;YAC7D,CAAC,CAAC;iBACD,KAAK,CAAC,KAAK,IAAI,EAAE;gBAChB,mDAAmD;gBACnD,MAAM,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;gBAC3C,MAAM,YAAY,GAAG,SAAS,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC;gBAE3C,sCAAsC;gBACtC,MAAM,SAAS,GAAG,eAAe,CAAC,YAAY,CAAC,CAAC;gBAChD,MAAM,SAAS,CAAC,SAAS,CAAC,CAAC;gBAE3B,MAAM,aAAa,GAAoB,EAAE,CAAC;gBAE1C,uCAAuC;gBACvC,IAAI,UAA8B,CAAC;gBACnC,IAAI,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC;oBAClB,UAAU,GAAG,IAAI,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC;oBAC3C,aAAa,CAAC,IAAI,CAAC,SAAS,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;gBAC7D,CAAC;gBAED,uCAAuC;gBACvC,IAAI,UAA8B,CAAC;gBACnC,IAAI,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC;oBAClB,UAAU,GAAG,IAAI,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC;oBAC3C,aAAa,CAAC,IAAI,CAAC,SAAS,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;gBAC7D,CAAC;gBAED,gCAAgC;gBAChC,MAAM,YAAY,GAAG,IAAI,CAAC,SAAS,EAAE,gBAAgB,CAAC,CAAC;gBACvD,MAAM,eAAe,GAAG,aAAa;oBACnC,wHAAwH;qBACvH,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;qBACjC,IAAI,CAAC,IAAI,CAAC,CAAC;gBACd,aAAa,CAAC,IAAI,CAAC,SAAS,CAAC,YAAY,EAAE,eAAe,EAAE,OAAO,CAAC,CAAC,CAAC;gBAEtE,kCAAkC;gBAClC,MAAM,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;gBAEjC,MAAM,MAAM,GAAc;oBACxB,OAAO,EAAE,aAAa;oBACtB,QAAQ;oBACR,YAAY;oBACZ,SAAS;oBACT,QAAQ,EAAE,YAAY;oBACtB,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,oCAAoC;oBAC3E,WAAW,EAAE;wBACX,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;wBAC7C,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;wBAC7C,QAAQ,EAAE,YAAY;qBACvB;iBACF,CAAC;gBAEF,OAAO,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;YAC7D,CAAC,CAAC,CAAC;QACP,CAAC,CAAC,CAAC;QAEH,gDAAgD;QAChD,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,KAAY,EAAE,EAAE;YACjC,MAAM,CAAC,KAAK,CAAC,CAAC;QAChB,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC;AAED;;;;;;;;GAQG;AACH;;;;;GAKG;AACH,SAAS,eAAe,CACtB,YAAoB,EACpB,UAAkB,EAClB,aAAqB,EACrB,iBAAyB;IAEzB,IAAI,CAAC;QACH,yDAAyD;QACzD,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;QAE3C,0DAA0D;QAC1D,MAAM,MAAM,GAAG,uBAAuB,CAAC,UAAU,CAAC,CAAC;QAEnD,IAAI,MAAM,EAAE,CAAC;YACX,kDAAkD;YAClD,mFAAmF;YACnF,2DAA2D;YAC3D,iFAAiF;YACjF,MAAM,gBAAgB,GAAG,WAAW,CAAC,OAAO,IAAI,YAAY,CAAC;YAE7D,OAAO;gBACL,GAAG,WAAW,EAAE,4BAA4B;gBAC5C,OAAO,EAAE,gBAAgB,EAAE,oEAAoE;gBAC/F,QAAQ,EAAE,aAAa,EAAE,gCAAgC;gBACzD,YAAY,EAAE,iBAAiB,EAAE,+BAA+B;gBAChE,SAAS,EAAE,MAAM,CAAC,SAAS,IAAI,WAAW,CAAC,SAAS,IAAI,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;gBAChF,QAAQ,EAAE,MAAM,CAAC,QAAQ,IAAI,WAAW,CAAC,QAAQ,IAAI,SAAS;gBAC9D,UAAU,EAAE,MAAM,CAAC,UAAU,EAAE,wBAAwB;gBACvD,GAAG,CAAC,MAAM,CAAC,cAAc,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,MAAM,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACzF,GAAG,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,MAAM,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aAC5E,CAAC;QACJ,CAAC;QAED,yEAAyE;QACzE,wFAAwF;QACxF,MAAM,gBAAgB,GAAG,CAAC,WAAW,CAAC,OAAO,IAAI,OAAO,WAAW,CAAC,OAAO,KAAK,QAAQ,CAAC;YACvF,CAAC,CAAC,WAAW,CAAC,OAAO;YACrB,CAAC,CAAC,YAAY,CAAC;QAEjB,OAAO;YACL,GAAG,WAAW;YACd,OAAO,EAAE,gBAAgB,EAAE,gCAAgC;YAC3D,QAAQ,EAAE,aAAa;YACvB,YAAY,EAAE,iBAAiB;YAC/B,QAAQ,EAAE,WAAW,CAAC,QAAQ,IAAI,SAAS,EAAE,4CAA4C;SAC1F,CAAC;QAEJ,oKAAoK;IACpK,CAAC;IAAC,OAAO,MAAM,EAAE,CAAC;QAChB,2EAA2E;QAC3E,2EAA2E;QAE3E,kFAAkF;QAClF,MAAM,aAAa,GAAG,oBAAoB,CAAC,UAAU,CAAC,CAAC;QACvD,MAAM,UAAU,GAAG,CAAC,aAAa,KAAK,CAAC,IAAI,aAAa,CAAC,WAAW,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS,CAAC;QAEtG,OAAO;YACL,OAAO,EAAE,YAAY;YACrB,QAAQ,EAAE,aAAa;YACvB,YAAY,EAAE,iBAAiB;YAC/B,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;YACnC,QAAQ,EAAE,SAAS;YACnB,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,oCAAoC;SAC5E,CAAC;IACJ,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,kBAAkB;IAChC,OAAO,CAAC,GAAG,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA+Rb,CAAC,CAAC;AACH,CAAC;AAED;;GAEG;AACH,SAAS,WAAW;IAClB,OAAO,CAAC,GAAG,CAAC;;;;;;;;;;;;;;;;;;;;;;;;GAwBX,CAAC,IAAI,EAAE,CAAC,CAAC;AACZ,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,oBAAoB,CACjC,MAAiB,EACjB,OAA4D;IAE5D,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,QAAQ,EAAE,CAAC;QAClC,OAAO;IACT,CAAC;IAED,IAAI,CAAC;QACH,MAAM,eAAe,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC,WAAW,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QAC7E,MAAM,KAAK,GAAG,eAAe,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QACjD,MAAM,WAAW,GAAiB,KAAK;aACpC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;aAC3B,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;QAEjC,IAAI,cAA4B,CAAC;QAEjC,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;YACpB,cAAc,GAAG,WAAW,CAAC;QAC/B,CAAC;aAAM,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;YACxB,cAAc,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;QACtD,CAAC;aAAM,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;YACxB,cAAc,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACpD,CAAC;aAAM,CAAC;YACN,OAAO;QACT,CAAC;QAED,8EAA8E;QAC9E,8DAA8D;QAC9D,KAAK,MAAM,IAAI,IAAI,cAAc,EAAE,CAAC;YAClC,MAAM,WAAW,GAAG,IAAI,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC;YACzE,MAAM,MAAM,GAAG,WAAW,CAAC,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;YAC/C,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,MAAM,IAAI,IAAI,CAAC,IAAI,IAAI,CAAC,CAAC;QACnD,CAAC;QACH,kHAAkH;IAClH,CAAC;IAAC,OAAO,IAAI,EAAE,CAAC;QACd,qEAAqE;IACvE,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"run.js","sourceRoot":"","sources":["../../src/commands/run.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"validate.d.ts","sourceRoot":"","sources":["../../src/commands/validate.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAUzC,wBAAgB,eAAe,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAmMtD;AAED;;GAEG;AACH,wBAAgB,uBAAuB,IAAI,IAAI,CAiK9C"}
1
+ {"version":3,"file":"validate.d.ts","sourceRoot":"","sources":["../../src/commands/validate.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAUzC,wBAAgB,eAAe,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAsMtD;AAED;;GAEG;AACH,wBAAgB,uBAAuB,IAAI,IAAI,CAiK9C"}
@@ -3,7 +3,7 @@
3
3
  *
4
4
  * Runs validation phases with git tree hash caching and history recording.
5
5
  */
6
- import { loadConfig, loadConfigWithErrors } from '../utils/config-loader.js';
6
+ import { loadConfigWithErrors, loadConfigWithDir } from '../utils/config-loader.js';
7
7
  import { detectContext } from '../utils/context-detector.js';
8
8
  import { runValidateWorkflow } from '../utils/validate-workflow.js';
9
9
  import { acquireLock, releaseLock, checkLock, waitForLock } from '../utils/pid-lock.js';
@@ -41,8 +41,9 @@ export function validateCommand(program) {
41
41
  options.lock = true;
42
42
  }
43
43
  // Load configuration first (needed for lock config)
44
- const config = await loadConfig();
45
- if (!config) {
44
+ // Use loadConfigWithDir to get config directory for locking
45
+ const configResult = await loadConfigWithDir();
46
+ if (!configResult) {
46
47
  // Get detailed error information to distinguish between missing file and validation errors
47
48
  const configWithErrors = await loadConfigWithErrors();
48
49
  if (configWithErrors.errors && configWithErrors.filePath) {
@@ -59,6 +60,7 @@ export function validateCommand(program) {
59
60
  }
60
61
  process.exit(1);
61
62
  }
63
+ const { config, configDir } = configResult;
62
64
  // Detect context (Claude Code, CI, etc.)
63
65
  const context = detectContext();
64
66
  // Determine lock options from config
@@ -90,8 +92,8 @@ export function validateCommand(program) {
90
92
  const shouldWait = options.wait !== false;
91
93
  // Handle wait mode (default: wait for running validation to complete)
92
94
  if (shouldWait) {
93
- const cwd = process.cwd();
94
- const existingLock = await checkLock(cwd, lockOptions);
95
+ // Use config directory for lock (not process.cwd()) - ensures same lock regardless of invocation directory
96
+ const existingLock = await checkLock(configDir, lockOptions);
95
97
  if (existingLock) {
96
98
  const waitTimeout = Number.parseInt(options.waitTimeout, 10) || 300;
97
99
  if (!options.yaml) {
@@ -100,7 +102,7 @@ export function validateCommand(program) {
100
102
  console.log(` Started: ${new Date(existingLock.startTime).toLocaleTimeString()}`);
101
103
  console.log(` Timeout: ${waitTimeout}s`);
102
104
  }
103
- const waitResult = await waitForLock(cwd, waitTimeout, 1000, lockOptions);
105
+ const waitResult = await waitForLock(configDir, waitTimeout, 1000, lockOptions);
104
106
  if (waitResult.timedOut) {
105
107
  if (!options.yaml) {
106
108
  console.log(chalk.yellow('⏱️ Wait timed out, proceeding with validation'));
@@ -116,9 +118,9 @@ export function validateCommand(program) {
116
118
  }
117
119
  // Handle lock mode (single-instance execution)
118
120
  if (options.lock) {
119
- const cwd = process.cwd();
121
+ // Use config directory for lock (not process.cwd()) - ensures same lock regardless of invocation directory
120
122
  const treeHash = await getGitTreeHash();
121
- const lockResult = await acquireLock(cwd, treeHash, lockOptions);
123
+ const lockResult = await acquireLock(configDir, treeHash, lockOptions);
122
124
  if (!lockResult.acquired && lockResult.existingLock) {
123
125
  // Another validation is already running
124
126
  // If --no-wait specified, exit immediately (for background hooks)
@@ -1 +1 @@
1
- {"version":3,"file":"validate.js","sourceRoot":"","sources":["../../src/commands/validate.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"validate.js","sourceRoot":"","sources":["../../src/commands/validate.ts"],"names":[],"mappings":"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"}
@@ -4,24 +4,47 @@
4
4
  * Loads and validates vibe-validate configuration from project root.
5
5
  */
6
6
  import type { VibeValidateConfig } from '@vibe-validate/config';
7
+ /**
8
+ * Find configuration file by walking up directory tree
9
+ *
10
+ * Searches for vibe-validate.config.yaml starting from cwd and walking up
11
+ * to the root directory, similar to how ESLint/Prettier find their config files.
12
+ *
13
+ * @param startDir Directory to start searching from
14
+ * @returns Path to config file or null if not found
15
+ */
16
+ export declare function findConfigUp(startDir: string): string | null;
7
17
  /**
8
18
  * Load vibe-validate configuration from project root
9
19
  *
10
- * Searches for vibe-validate.config.yaml in the current directory.
20
+ * Searches for vibe-validate.config.yaml by walking up the directory tree
21
+ * from the current working directory to the root.
11
22
  *
12
23
  * @param cwd Current working directory (defaults to process.cwd())
13
24
  * @returns Configuration object or null if not found
14
25
  */
15
26
  export declare function loadConfig(cwd?: string): Promise<VibeValidateConfig | null>;
16
27
  /**
17
- * Check if a config file exists in the given directory
28
+ * Load configuration and return both config and the directory where it was found
29
+ *
30
+ * Useful for features that need to know the project root (like locking).
31
+ *
32
+ * @param cwd Current working directory (defaults to process.cwd())
33
+ * @returns Object with config and configDir, or null if not found
34
+ */
35
+ export declare function loadConfigWithDir(cwd?: string): Promise<{
36
+ config: VibeValidateConfig;
37
+ configDir: string;
38
+ } | null>;
39
+ /**
40
+ * Check if a config file exists (searches up directory tree)
18
41
  *
19
42
  * @param cwd Current working directory
20
43
  * @returns True if config file exists
21
44
  */
22
45
  export declare function configExists(cwd?: string): boolean;
23
46
  /**
24
- * Find config file path if it exists
47
+ * Find config file path if it exists (searches up directory tree)
25
48
  *
26
49
  * @param cwd Current working directory
27
50
  * @returns Config file path or null if not found
@@ -1 +1 @@
1
- {"version":3,"file":"config-loader.d.ts","sourceRoot":"","sources":["../../src/utils/config-loader.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAKH,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAGhE;;;;;;;GAOG;AACH,wBAAsB,UAAU,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,GAAG,IAAI,CAAC,CAajF;AAED;;;;;GAKG;AACH,wBAAgB,YAAY,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAKlD;AAED;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAM1D;AAED;;;;;;;;GAQG;AACH,wBAAsB,oBAAoB,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;IAChE,MAAM,EAAE,kBAAkB,GAAG,IAAI,CAAC;IAClC,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;IACxB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;CACzB,CAAC,CAoDD"}
1
+ {"version":3,"file":"config-loader.d.ts","sourceRoot":"","sources":["../../src/utils/config-loader.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAKH,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAGhE;;;;;;;;GAQG;AACH,wBAAgB,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CA0B5D;AAED;;;;;;;;GAQG;AACH,wBAAsB,UAAU,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,GAAG,IAAI,CAAC,CAmBjF;AAED;;;;;;;GAOG;AACH,wBAAsB,iBAAiB,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;IAC7D,MAAM,EAAE,kBAAkB,CAAC;IAC3B,SAAS,EAAE,MAAM,CAAC;CACnB,GAAG,IAAI,CAAC,CAuBR;AAED;;;;;GAKG;AACH,wBAAgB,YAAY,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAGlD;AAED;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAS1D;AAED;;;;;;;;GAQG;AACH,wBAAsB,oBAAoB,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;IAChE,MAAM,EAAE,kBAAkB,GAAG,IAAI,CAAC;IAClC,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;IACxB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;CACzB,CAAC,CAoDD"}