@vibe-validate/cli 0.15.0-rc.4 → 0.15.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.
- package/dist/bin/vibe-validate +123 -0
- package/dist/bin/vibe-validate.d.ts +14 -0
- package/dist/bin/vibe-validate.d.ts.map +1 -0
- package/dist/bin/vibe-validate.js +123 -0
- package/dist/bin/vibe-validate.js.map +1 -0
- package/dist/bin/vv +123 -0
- package/dist/commands/cleanup.d.ts.map +1 -1
- package/dist/commands/cleanup.js +3 -28
- package/dist/commands/cleanup.js.map +1 -1
- package/dist/commands/history.d.ts.map +1 -1
- package/dist/commands/history.js +139 -43
- package/dist/commands/history.js.map +1 -1
- package/dist/commands/pre-commit.d.ts.map +1 -1
- package/dist/commands/pre-commit.js +0 -3
- package/dist/commands/pre-commit.js.map +1 -1
- package/dist/commands/run.d.ts.map +1 -1
- package/dist/commands/run.js +9 -8
- package/dist/commands/run.js.map +1 -1
- package/dist/commands/state.d.ts.map +1 -1
- package/dist/commands/state.js +143 -79
- package/dist/commands/state.js.map +1 -1
- package/dist/commands/sync-check.d.ts.map +1 -1
- package/dist/commands/sync-check.js +2 -17
- package/dist/commands/sync-check.js.map +1 -1
- package/dist/commands/validate.d.ts.map +1 -1
- package/dist/commands/validate.js +2 -0
- package/dist/commands/validate.js.map +1 -1
- package/dist/schemas/run-result-schema.d.ts +5 -5
- package/dist/schemas/watch-pr-schema.d.ts +22 -22
- package/dist/schemas/watch-pr-schema.d.ts.map +1 -1
- package/dist/utils/runner-adapter.d.ts +1 -0
- package/dist/utils/runner-adapter.d.ts.map +1 -1
- package/dist/utils/runner-adapter.js +1 -0
- package/dist/utils/runner-adapter.js.map +1 -1
- package/dist/utils/temp-files.d.ts +3 -1
- package/dist/utils/temp-files.d.ts.map +1 -1
- package/dist/utils/temp-files.js +5 -22
- package/dist/utils/temp-files.js.map +1 -1
- package/dist/utils/tree-hash-output.d.ts +16 -0
- package/dist/utils/tree-hash-output.d.ts.map +1 -0
- package/dist/utils/tree-hash-output.js +42 -0
- package/dist/utils/tree-hash-output.js.map +1 -0
- package/dist/utils/validate-workflow.d.ts +1 -0
- package/dist/utils/validate-workflow.d.ts.map +1 -1
- package/dist/utils/validate-workflow.js +2 -3
- package/dist/utils/validate-workflow.js.map +1 -1
- package/dist/utils/yaml-output.d.ts +27 -0
- package/dist/utils/yaml-output.d.ts.map +1 -0
- package/dist/utils/yaml-output.js +44 -0
- package/dist/utils/yaml-output.js.map +1 -0
- package/package.json +9 -10
- package/run-result.schema.json +0 -1
- package/bin/vibe-validate +0 -131
- package/bin/vv +0 -131
- package/dist/utils/run-validation-with-cache.d.ts +0 -48
- package/dist/utils/run-validation-with-cache.d.ts.map +0 -1
- package/dist/utils/run-validation-with-cache.js +0 -123
- package/dist/utils/run-validation-with-cache.js.map +0 -1
- package/dist/utils/validation-cache.d.ts +0 -30
- package/dist/utils/validation-cache.d.ts.map +0 -1
- package/dist/utils/validation-cache.js +0 -57
- package/dist/utils/validation-cache.js.map +0 -1
- package/dist/vibe-validate +0 -131
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"watch-pr-schema.d.ts","sourceRoot":"","sources":["../../src/schemas/watch-pr-schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB;;;;;GAKG;AAEH,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;gCA2DurH,CAAC;gCAAkC,CAAC;kCAAoC,CAAC;gCAAkC,CAAC;oCAAsC,CAAC;mCAAkD,CAAC;oCAAsC,CAAC;;;gCAAoE,CAAC;gCAAkC,CAAC;kCAAoC,CAAC;gCAAkC,CAAC;oCAAsC,CAAC;mCAAkD,CAAC;oCAAsC,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;qCAA8kE,CAAC;;;;;;uCAAyK,CAAC;;;;;qCAAsI,CAAC;;;;;;uCAAyK,CAAC;;;;;;;gCAA8J,CAAC;gCAAkC,CAAC;kCAAoC,CAAC;gCAAkC,CAAC;oCAAsC,CAAC;mCAAkD,CAAC;oCAAsC,CAAC;;;;;;;;qCAA+N,CAAC;;;;;;uCAAyK,CAAC;;;;;;;gCAAiJ,CAAC;gCAAkC,CAAC;kCAAoC,CAAC;gCAAkC,CAAC;oCAAsC,CAAC;mCAAkD,CAAC;oCAAsC,CAAC;;;;;;;;qCAA+N,CAAC;;;;;;uCAAyK,CAAC
|
|
1
|
+
{"version":3,"file":"watch-pr-schema.d.ts","sourceRoot":"","sources":["../../src/schemas/watch-pr-schema.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runner-adapter.d.ts","sourceRoot":"","sources":["../../src/utils/runner-adapter.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAChE,OAAO,KAAK,EAAE,gBAAgB,EAA4D,MAAM,qBAAqB,CAAC;AACtH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAG1D,MAAM,WAAW,aAAa;IAC5B,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,OAAO,EAAE,YAAY,CAAC;CACvB;AAED;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,kBAAkB,EAC1B,OAAO,EAAE,aAAa,GACrB,gBAAgB,
|
|
1
|
+
{"version":3,"file":"runner-adapter.d.ts","sourceRoot":"","sources":["../../src/utils/runner-adapter.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAChE,OAAO,KAAK,EAAE,gBAAgB,EAA4D,MAAM,qBAAqB,CAAC;AACtH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAG1D,MAAM,WAAW,aAAa;IAC5B,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,OAAO,EAAE,YAAY,CAAC;CACvB;AAED;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,kBAAkB,EAC1B,OAAO,EAAE,aAAa,GACrB,gBAAgB,CAwBlB"}
|
|
@@ -28,6 +28,7 @@ export function createRunnerConfig(config, options) {
|
|
|
28
28
|
enableFailFast: true, // Default to fail-fast (individual phases can override)
|
|
29
29
|
verbose: options.verbose, // Pass verbose flag to runner for output streaming
|
|
30
30
|
yaml: options.yaml, // Pass yaml flag to runner for stdout/stderr routing
|
|
31
|
+
debug: options.debug ?? false, // Enable debug mode to create output files for all steps
|
|
31
32
|
developerFeedback: config.developerFeedback ?? false, // Enable extraction quality alerts for dogfooding
|
|
32
33
|
env: envVars,
|
|
33
34
|
...callbacks,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runner-adapter.js","sourceRoot":"","sources":["../../src/utils/runner-adapter.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAKH,OAAO,KAAK,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"runner-adapter.js","sourceRoot":"","sources":["../../src/utils/runner-adapter.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,6 +6,7 @@
|
|
|
6
6
|
* - Cleanup utilities for old temp files
|
|
7
7
|
* - Storage size calculation
|
|
8
8
|
*/
|
|
9
|
+
import { ensureDir as ensureDirCore } from '@vibe-validate/core';
|
|
9
10
|
/**
|
|
10
11
|
* Get the root temporary directory for vibe-validate
|
|
11
12
|
* @returns Path to /tmp/vibe-validate (or OS equivalent)
|
|
@@ -19,8 +20,9 @@ export declare function getVibeValidateTempDir(): string;
|
|
|
19
20
|
export declare function getRunOutputDir(treeHash: string): string;
|
|
20
21
|
/**
|
|
21
22
|
* Ensure a directory exists (create if needed)
|
|
23
|
+
* Re-exports shared utility from @vibe-validate/core
|
|
22
24
|
*/
|
|
23
|
-
export declare
|
|
25
|
+
export declare const ensureDir: typeof ensureDirCore;
|
|
24
26
|
/**
|
|
25
27
|
* Get temp file storage information
|
|
26
28
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"temp-files.d.ts","sourceRoot":"","sources":["../../src/utils/temp-files.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;
|
|
1
|
+
{"version":3,"file":"temp-files.d.ts","sourceRoot":"","sources":["../../src/utils/temp-files.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAKH,OAAO,EAAc,SAAS,IAAI,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAE7E;;;GAGG;AACH,wBAAgB,sBAAsB,IAAI,MAAM,CAE/C;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAExD;AAED;;;GAGG;AACH,eAAO,MAAM,SAAS,sBAAgB,CAAC;AA0DvC;;GAEG;AACH,wBAAsB,kBAAkB,IAAI,OAAO,CAAC;IAClD,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;CACd,CAAC,CAcD;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAQjD;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,0DAA0D;IAC1D,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,oEAAoE;IACpE,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,8CAA8C;IAC9C,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,wCAAwC;IACxC,YAAY,EAAE,MAAM,CAAC;IACrB,4BAA4B;IAC5B,UAAU,EAAE,MAAM,CAAC;IACnB,+DAA+D;IAC/D,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,wCAAwC;IACxC,MAAM,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CAChD;AAED;;GAEG;AAEH,wBAAsB,mBAAmB,CACvC,OAAO,GAAE,cAAmB,GAC3B,OAAO,CAAC,aAAa,CAAC,CAmFxB"}
|
package/dist/utils/temp-files.js
CHANGED
|
@@ -6,9 +6,10 @@
|
|
|
6
6
|
* - Cleanup utilities for old temp files
|
|
7
7
|
* - Storage size calculation
|
|
8
8
|
*/
|
|
9
|
-
import {
|
|
9
|
+
import { readdir, rm, stat } from 'node:fs/promises';
|
|
10
10
|
import { tmpdir } from 'node:os';
|
|
11
11
|
import { join } from 'node:path';
|
|
12
|
+
import { getTempDir, ensureDir as ensureDirCore } from '@vibe-validate/core';
|
|
12
13
|
/**
|
|
13
14
|
* Get the root temporary directory for vibe-validate
|
|
14
15
|
* @returns Path to /tmp/vibe-validate (or OS equivalent)
|
|
@@ -22,31 +23,13 @@ export function getVibeValidateTempDir() {
|
|
|
22
23
|
* @returns Path like /tmp/vibe-validate/runs/2025-11-05/abc123-17-30-45/
|
|
23
24
|
*/
|
|
24
25
|
export function getRunOutputDir(treeHash) {
|
|
25
|
-
|
|
26
|
-
// Date folder: YYYY-MM-DD
|
|
27
|
-
const dateFolder = now.toISOString().split('T')[0];
|
|
28
|
-
// Short hash: first 6 chars
|
|
29
|
-
const shortHash = treeHash.substring(0, 6);
|
|
30
|
-
// Time suffix: HH-mm-ss
|
|
31
|
-
const timeSuffix = now.toISOString().split('T')[1].substring(0, 8).replace(/:/g, '-');
|
|
32
|
-
// Combined: abc123-17-30-45
|
|
33
|
-
const runFolder = `${shortHash}-${timeSuffix}`;
|
|
34
|
-
return join(getVibeValidateTempDir(), 'runs', dateFolder, runFolder);
|
|
26
|
+
return getTempDir('runs', treeHash);
|
|
35
27
|
}
|
|
36
28
|
/**
|
|
37
29
|
* Ensure a directory exists (create if needed)
|
|
30
|
+
* Re-exports shared utility from @vibe-validate/core
|
|
38
31
|
*/
|
|
39
|
-
export
|
|
40
|
-
try {
|
|
41
|
-
await mkdir(dirPath, { recursive: true });
|
|
42
|
-
}
|
|
43
|
-
catch (err) {
|
|
44
|
-
// Ignore if directory already exists
|
|
45
|
-
if (err && typeof err === 'object' && 'code' in err && err.code !== 'EEXIST') {
|
|
46
|
-
throw err;
|
|
47
|
-
}
|
|
48
|
-
}
|
|
49
|
-
}
|
|
32
|
+
export const ensureDir = ensureDirCore;
|
|
50
33
|
/**
|
|
51
34
|
* Get the size of a directory recursively (in bytes)
|
|
52
35
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"temp-files.js","sourceRoot":"","sources":["../../src/utils/temp-files.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"temp-files.js","sourceRoot":"","sources":["../../src/utils/temp-files.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Shared utility for formatting tree hash output (used by state and history commands)
|
|
3
|
+
*/
|
|
4
|
+
import type { RunCacheNote } from '@vibe-validate/history';
|
|
5
|
+
/**
|
|
6
|
+
* Clean run cache entries by removing redundant treeHash and empty workdir
|
|
7
|
+
*/
|
|
8
|
+
export declare function cleanRunCacheEntries(entries: RunCacheNote[]): RunCacheNote[];
|
|
9
|
+
/**
|
|
10
|
+
* Format output with treeHash at root level and cleaned nested structures
|
|
11
|
+
*/
|
|
12
|
+
export declare function formatTreeHashOutput<T>(treeHash: string, validationData: T | null, runCacheEntries: RunCacheNote[], options: {
|
|
13
|
+
includeValidation: boolean;
|
|
14
|
+
includeRunCache: boolean;
|
|
15
|
+
}): Record<string, unknown>;
|
|
16
|
+
//# sourceMappingURL=tree-hash-output.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tree-hash-output.d.ts","sourceRoot":"","sources":["../../src/utils/tree-hash-output.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAE3D;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,YAAY,EAAE,GAAG,YAAY,EAAE,CAe5E;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,CAAC,EACpC,QAAQ,EAAE,MAAM,EAChB,cAAc,EAAE,CAAC,GAAG,IAAI,EACxB,eAAe,EAAE,YAAY,EAAE,EAC/B,OAAO,EAAE;IACP,iBAAiB,EAAE,OAAO,CAAC;IAC3B,eAAe,EAAE,OAAO,CAAC;CAC1B,GACA,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAoBzB"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Shared utility for formatting tree hash output (used by state and history commands)
|
|
3
|
+
*/
|
|
4
|
+
/**
|
|
5
|
+
* Clean run cache entries by removing redundant treeHash and empty workdir
|
|
6
|
+
*/
|
|
7
|
+
export function cleanRunCacheEntries(entries) {
|
|
8
|
+
return entries.map(entry => {
|
|
9
|
+
// Remove treeHash from output (redundant at root level)
|
|
10
|
+
// eslint-disable-next-line no-unused-vars, @typescript-eslint/no-unused-vars
|
|
11
|
+
const { treeHash, ...withoutTreeHash } = entry;
|
|
12
|
+
// Remove empty workdir to save tokens
|
|
13
|
+
if (withoutTreeHash.workdir === '') {
|
|
14
|
+
// eslint-disable-next-line no-unused-vars, @typescript-eslint/no-unused-vars
|
|
15
|
+
const { workdir, ...withoutWorkdir } = withoutTreeHash;
|
|
16
|
+
return withoutWorkdir;
|
|
17
|
+
}
|
|
18
|
+
return withoutTreeHash;
|
|
19
|
+
});
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* Format output with treeHash at root level and cleaned nested structures
|
|
23
|
+
*/
|
|
24
|
+
export function formatTreeHashOutput(treeHash, validationData, runCacheEntries, options) {
|
|
25
|
+
const output = {
|
|
26
|
+
treeHash,
|
|
27
|
+
};
|
|
28
|
+
// Add validation section if requested and data exists
|
|
29
|
+
if (options.includeValidation && validationData) {
|
|
30
|
+
// Remove treeHash from validation data (it's at root level)
|
|
31
|
+
const validationObj = validationData;
|
|
32
|
+
// eslint-disable-next-line no-unused-vars, @typescript-eslint/no-unused-vars
|
|
33
|
+
const { treeHash, ...validationWithoutTreeHash } = validationObj;
|
|
34
|
+
output.validation = validationWithoutTreeHash;
|
|
35
|
+
}
|
|
36
|
+
// Add runCache section if requested and entries exist
|
|
37
|
+
if (options.includeRunCache && runCacheEntries.length > 0) {
|
|
38
|
+
output.runCache = cleanRunCacheEntries(runCacheEntries);
|
|
39
|
+
}
|
|
40
|
+
return output;
|
|
41
|
+
}
|
|
42
|
+
//# sourceMappingURL=tree-hash-output.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tree-hash-output.js","sourceRoot":"","sources":["../../src/utils/tree-hash-output.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH;;GAEG;AACH,MAAM,UAAU,oBAAoB,CAAC,OAAuB;IAC1D,OAAO,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE;QACzB,wDAAwD;QACxD,6EAA6E;QAC7E,MAAM,EAAE,QAAQ,EAAE,GAAG,eAAe,EAAE,GAAG,KAAK,CAAC;QAE/C,sCAAsC;QACtC,IAAI,eAAe,CAAC,OAAO,KAAK,EAAE,EAAE,CAAC;YACnC,6EAA6E;YAC7E,MAAM,EAAE,OAAO,EAAE,GAAG,cAAc,EAAE,GAAG,eAAe,CAAC;YACvD,OAAO,cAA8B,CAAC;QACxC,CAAC;QAED,OAAO,eAA+B,CAAC;IACzC,CAAC,CAAC,CAAC;AACL,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,oBAAoB,CAClC,QAAgB,EAChB,cAAwB,EACxB,eAA+B,EAC/B,OAGC;IAED,MAAM,MAAM,GAA4B;QACtC,QAAQ;KACT,CAAC;IAEF,sDAAsD;IACtD,IAAI,OAAO,CAAC,iBAAiB,IAAI,cAAc,EAAE,CAAC;QAChD,4DAA4D;QAC5D,MAAM,aAAa,GAAG,cAAyC,CAAC;QAChE,6EAA6E;QAC7E,MAAM,EAAE,QAAQ,EAAE,GAAG,yBAAyB,EAAE,GAAG,aAAa,CAAC;QACjE,MAAM,CAAC,UAAU,GAAG,yBAAyB,CAAC;IAChD,CAAC;IAED,sDAAsD;IACtD,IAAI,OAAO,CAAC,eAAe,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC1D,MAAM,CAAC,QAAQ,GAAG,oBAAoB,CAAC,eAAe,CAAC,CAAC;IAC1D,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"validate-workflow.d.ts","sourceRoot":"","sources":["../../src/utils/validate-workflow.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAChE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAS5D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAK1D,MAAM,WAAW,uBAAuB;IACtC,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,OAAO,EAAE,YAAY,CAAC;CACvB;
|
|
1
|
+
{"version":3,"file":"validate-workflow.d.ts","sourceRoot":"","sources":["../../src/utils/validate-workflow.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAChE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAS5D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAK1D,MAAM,WAAW,uBAAuB;IACtC,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,OAAO,EAAE,YAAY,CAAC;CACvB;AAgLD;;;;;;;;;GASG;AAEH,wBAAsB,mBAAmB,CACvC,MAAM,EAAE,kBAAkB,EAC1B,OAAO,EAAE,uBAAuB,GAC/B,OAAO,CAAC,gBAAgB,CAAC,CAkG3B"}
|
|
@@ -141,9 +141,6 @@ function displayFailureInfo(result, config) {
|
|
|
141
141
|
if (failedStep?.command) {
|
|
142
142
|
console.error(chalk.blue('🔄 To retry:'), chalk.white(failedStep.command));
|
|
143
143
|
}
|
|
144
|
-
if (result.fullLogFile) {
|
|
145
|
-
console.error(chalk.blue('📄 Full log:'), chalk.gray(result.fullLogFile));
|
|
146
|
-
}
|
|
147
144
|
// Context-aware extraction quality feedback (only when developerFeedback is enabled)
|
|
148
145
|
if (config.developerFeedback) {
|
|
149
146
|
const poorExtractionSteps = result.phases
|
|
@@ -188,11 +185,13 @@ export async function runValidateWorkflow(config, options) {
|
|
|
188
185
|
}
|
|
189
186
|
const verbose = options.verbose ?? false;
|
|
190
187
|
const yaml = options.yaml ?? false;
|
|
188
|
+
const debug = options.debug ?? false;
|
|
191
189
|
// Create runner config
|
|
192
190
|
const runnerConfig = createRunnerConfig(config, {
|
|
193
191
|
force: options.force,
|
|
194
192
|
verbose,
|
|
195
193
|
yaml,
|
|
194
|
+
debug,
|
|
196
195
|
context: options.context,
|
|
197
196
|
});
|
|
198
197
|
// Get tree hash BEFORE validation (for caching and stability check)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"validate-workflow.js","sourceRoot":"","sources":["../../src/utils/validate-workflow.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,EACL,uBAAuB,EACvB,sBAAsB,EACtB,kBAAkB,EAClB,eAAe,GAChB,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,SAAS,IAAI,aAAa,EAAE,MAAM,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"validate-workflow.js","sourceRoot":"","sources":["../../src/utils/validate-workflow.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* YAML Output Utilities
|
|
3
|
+
*
|
|
4
|
+
* Shared utilities for outputting structured YAML results from CLI commands.
|
|
5
|
+
* Ensures consistent formatting and proper stream flushing.
|
|
6
|
+
*
|
|
7
|
+
* @package @vibe-validate/cli
|
|
8
|
+
*/
|
|
9
|
+
/**
|
|
10
|
+
* Output a result as YAML to stdout
|
|
11
|
+
*
|
|
12
|
+
* This function handles:
|
|
13
|
+
* - Ensuring stderr is flushed before stdout
|
|
14
|
+
* - Adding RFC 4627 YAML separator
|
|
15
|
+
* - Writing pure YAML to stdout
|
|
16
|
+
* - Waiting for stdout to flush before returning
|
|
17
|
+
*
|
|
18
|
+
* @param result - The result object to serialize as YAML
|
|
19
|
+
*
|
|
20
|
+
* @example
|
|
21
|
+
* ```typescript
|
|
22
|
+
* const result = { success: true, data: [...] };
|
|
23
|
+
* await outputYamlResult(result);
|
|
24
|
+
* ```
|
|
25
|
+
*/
|
|
26
|
+
export declare function outputYamlResult(result: unknown): Promise<void>;
|
|
27
|
+
//# sourceMappingURL=yaml-output.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"yaml-output.d.ts","sourceRoot":"","sources":["../../src/utils/yaml-output.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAIH;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAsB,gBAAgB,CAAC,MAAM,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAkBrE"}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* YAML Output Utilities
|
|
3
|
+
*
|
|
4
|
+
* Shared utilities for outputting structured YAML results from CLI commands.
|
|
5
|
+
* Ensures consistent formatting and proper stream flushing.
|
|
6
|
+
*
|
|
7
|
+
* @package @vibe-validate/cli
|
|
8
|
+
*/
|
|
9
|
+
import { stringify as stringifyYaml } from 'yaml';
|
|
10
|
+
/**
|
|
11
|
+
* Output a result as YAML to stdout
|
|
12
|
+
*
|
|
13
|
+
* This function handles:
|
|
14
|
+
* - Ensuring stderr is flushed before stdout
|
|
15
|
+
* - Adding RFC 4627 YAML separator
|
|
16
|
+
* - Writing pure YAML to stdout
|
|
17
|
+
* - Waiting for stdout to flush before returning
|
|
18
|
+
*
|
|
19
|
+
* @param result - The result object to serialize as YAML
|
|
20
|
+
*
|
|
21
|
+
* @example
|
|
22
|
+
* ```typescript
|
|
23
|
+
* const result = { success: true, data: [...] };
|
|
24
|
+
* await outputYamlResult(result);
|
|
25
|
+
* ```
|
|
26
|
+
*/
|
|
27
|
+
export async function outputYamlResult(result) {
|
|
28
|
+
// Small delay to ensure stderr is flushed
|
|
29
|
+
await new Promise(resolve => setTimeout(resolve, 10));
|
|
30
|
+
// RFC 4627 separator
|
|
31
|
+
process.stdout.write('---\n');
|
|
32
|
+
// Write pure YAML
|
|
33
|
+
process.stdout.write(stringifyYaml(result));
|
|
34
|
+
// CRITICAL: Wait for stdout to flush before exiting
|
|
35
|
+
await new Promise(resolve => {
|
|
36
|
+
if (process.stdout.write('')) {
|
|
37
|
+
resolve();
|
|
38
|
+
}
|
|
39
|
+
else {
|
|
40
|
+
process.stdout.once('drain', resolve);
|
|
41
|
+
}
|
|
42
|
+
});
|
|
43
|
+
}
|
|
44
|
+
//# sourceMappingURL=yaml-output.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"yaml-output.js","sourceRoot":"","sources":["../../src/utils/yaml-output.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,SAAS,IAAI,aAAa,EAAE,MAAM,MAAM,CAAC;AAElD;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAAC,MAAe;IACpD,0CAA0C;IAC1C,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC;IAEtD,qBAAqB;IACrB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAE9B,kBAAkB;IAClB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC;IAE5C,oDAAoD;IACpD,MAAM,IAAI,OAAO,CAAO,OAAO,CAAC,EAAE;QAChC,IAAI,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC;YAC7B,OAAO,EAAE,CAAC;QACZ,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QACxC,CAAC;IACH,CAAC,CAAC,CAAC;AACL,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@vibe-validate/cli",
|
|
3
|
-
"version": "0.15.0-rc.
|
|
3
|
+
"version": "0.15.0-rc.6",
|
|
4
4
|
"description": "Command-line interface for vibe-validate validation framework",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.js",
|
|
7
7
|
"types": "./dist/index.d.ts",
|
|
8
8
|
"bin": {
|
|
9
|
-
"vibe-validate": "./bin/vibe-validate",
|
|
10
|
-
"vv": "./bin/vv"
|
|
9
|
+
"vibe-validate": "./dist/bin/vibe-validate",
|
|
10
|
+
"vv": "./dist/bin/vv"
|
|
11
11
|
},
|
|
12
12
|
"exports": {
|
|
13
13
|
".": {
|
|
@@ -17,7 +17,6 @@
|
|
|
17
17
|
},
|
|
18
18
|
"files": [
|
|
19
19
|
"dist",
|
|
20
|
-
"bin",
|
|
21
20
|
"config-templates",
|
|
22
21
|
"watch-pr-result.schema.json",
|
|
23
22
|
"run-result.schema.json",
|
|
@@ -62,11 +61,11 @@
|
|
|
62
61
|
"yaml": "^2.6.1",
|
|
63
62
|
"zod": "^3.24.1",
|
|
64
63
|
"zod-to-json-schema": "^3.24.6",
|
|
65
|
-
"@vibe-validate/config": "0.15.0-rc.
|
|
66
|
-
"@vibe-validate/
|
|
67
|
-
"@vibe-validate/
|
|
68
|
-
"@vibe-validate/git": "0.15.0-rc.
|
|
69
|
-
"@vibe-validate/
|
|
64
|
+
"@vibe-validate/config": "0.15.0-rc.6",
|
|
65
|
+
"@vibe-validate/core": "0.15.0-rc.6",
|
|
66
|
+
"@vibe-validate/history": "0.15.0-rc.6",
|
|
67
|
+
"@vibe-validate/git": "0.15.0-rc.6",
|
|
68
|
+
"@vibe-validate/extractors": "0.15.0-rc.6"
|
|
70
69
|
},
|
|
71
70
|
"devDependencies": {
|
|
72
71
|
"@types/node": "^20.14.8",
|
|
@@ -74,7 +73,7 @@
|
|
|
74
73
|
"vitest": "^2.0.5"
|
|
75
74
|
},
|
|
76
75
|
"scripts": {
|
|
77
|
-
"build": "tsc && cp bin/vibe-validate dist/vibe-validate &&
|
|
76
|
+
"build": "tsc && cp dist/bin/vibe-validate.js dist/bin/vibe-validate && cp dist/bin/vibe-validate dist/bin/vv && chmod +x dist/bin/vibe-validate dist/bin/vv && node dist/scripts/generate-watch-pr-schema.js && node dist/scripts/generate-run-result-schema.js",
|
|
78
77
|
"test": "vitest run",
|
|
79
78
|
"test:watch": "vitest",
|
|
80
79
|
"test:coverage": "vitest run --coverage",
|
package/run-result.schema.json
CHANGED
package/bin/vibe-validate
DELETED
|
@@ -1,131 +0,0 @@
|
|
|
1
|
-
#!/usr/bin/env node
|
|
2
|
-
/**
|
|
3
|
-
* Smart vibe-validate wrapper with context-aware execution
|
|
4
|
-
*
|
|
5
|
-
* Automatically detects execution context and delegates to appropriate binary:
|
|
6
|
-
* - Developer mode: Inside vibe-validate repo → packages/cli/dist/bin.js (unpackaged dev build)
|
|
7
|
-
* - Local install: Project has vibe-validate → node_modules version (packaged)
|
|
8
|
-
* - Global install: Fallback → globally installed version (packaged)
|
|
9
|
-
*
|
|
10
|
-
* Works in both git and non-git directories. Non-git directories don't get
|
|
11
|
-
* caching but still get error extraction.
|
|
12
|
-
*/
|
|
13
|
-
|
|
14
|
-
import { existsSync } from 'fs';
|
|
15
|
-
import { dirname, join } from 'path';
|
|
16
|
-
import { spawnSync } from 'child_process';
|
|
17
|
-
import { fileURLToPath } from 'url';
|
|
18
|
-
|
|
19
|
-
const __filename = fileURLToPath(import.meta.url);
|
|
20
|
-
const __dirname = dirname(__filename);
|
|
21
|
-
|
|
22
|
-
/**
|
|
23
|
-
* Find project root by walking up to .git directory
|
|
24
|
-
* Falls back to startDir if no git repo found
|
|
25
|
-
*/
|
|
26
|
-
function findProjectRoot(startDir) {
|
|
27
|
-
let current = startDir;
|
|
28
|
-
|
|
29
|
-
while (true) {
|
|
30
|
-
const gitDir = join(current, '.git');
|
|
31
|
-
if (existsSync(gitDir)) {
|
|
32
|
-
return current; // Found git repo
|
|
33
|
-
}
|
|
34
|
-
|
|
35
|
-
const parent = dirname(current);
|
|
36
|
-
if (parent === current) {
|
|
37
|
-
// Reached filesystem root, no git found
|
|
38
|
-
return startDir;
|
|
39
|
-
}
|
|
40
|
-
current = parent;
|
|
41
|
-
}
|
|
42
|
-
}
|
|
43
|
-
|
|
44
|
-
/**
|
|
45
|
-
* Check if we're in vibe-validate repo (developer mode)
|
|
46
|
-
* Simple detection: both dist/vibe-validate and dist/bin.js must exist
|
|
47
|
-
*/
|
|
48
|
-
function getDevModeBinary(projectRoot) {
|
|
49
|
-
const wrapperPath = join(projectRoot, 'packages/cli/dist/vibe-validate');
|
|
50
|
-
const binPath = join(projectRoot, 'packages/cli/dist/bin.js');
|
|
51
|
-
|
|
52
|
-
// Both files must exist to confirm we're in vibe-validate repo
|
|
53
|
-
if (existsSync(wrapperPath) && existsSync(binPath)) {
|
|
54
|
-
return binPath;
|
|
55
|
-
}
|
|
56
|
-
|
|
57
|
-
return null;
|
|
58
|
-
}
|
|
59
|
-
|
|
60
|
-
/**
|
|
61
|
-
* Find local vibe-validate installation in node_modules
|
|
62
|
-
* Walks up directory tree from project root
|
|
63
|
-
*/
|
|
64
|
-
function findLocalInstall(projectRoot) {
|
|
65
|
-
let current = projectRoot;
|
|
66
|
-
|
|
67
|
-
while (true) {
|
|
68
|
-
const localBin = join(current, 'node_modules/@vibe-validate/cli/dist/bin.js');
|
|
69
|
-
if (existsSync(localBin)) {
|
|
70
|
-
return localBin;
|
|
71
|
-
}
|
|
72
|
-
|
|
73
|
-
const parent = dirname(current);
|
|
74
|
-
if (parent === current) {
|
|
75
|
-
// Reached filesystem root
|
|
76
|
-
break;
|
|
77
|
-
}
|
|
78
|
-
current = parent;
|
|
79
|
-
}
|
|
80
|
-
|
|
81
|
-
return null;
|
|
82
|
-
}
|
|
83
|
-
|
|
84
|
-
/**
|
|
85
|
-
* Main entry point - detects context and executes appropriate binary
|
|
86
|
-
*/
|
|
87
|
-
function main() {
|
|
88
|
-
const cwd = process.cwd();
|
|
89
|
-
const args = process.argv.slice(2);
|
|
90
|
-
|
|
91
|
-
// Find project root (where .git is, or cwd if no git)
|
|
92
|
-
const projectRoot = findProjectRoot(cwd);
|
|
93
|
-
|
|
94
|
-
let binPath;
|
|
95
|
-
let context;
|
|
96
|
-
|
|
97
|
-
// Priority 1: Check for developer mode (inside vibe-validate repo)
|
|
98
|
-
const devBin = getDevModeBinary(projectRoot);
|
|
99
|
-
if (devBin) {
|
|
100
|
-
binPath = devBin;
|
|
101
|
-
context = 'dev';
|
|
102
|
-
}
|
|
103
|
-
// Priority 2: Check for local install (node_modules)
|
|
104
|
-
else {
|
|
105
|
-
const localBin = findLocalInstall(projectRoot);
|
|
106
|
-
if (localBin) {
|
|
107
|
-
binPath = localBin;
|
|
108
|
-
context = 'local';
|
|
109
|
-
}
|
|
110
|
-
// Priority 3: Use global install (this script's location)
|
|
111
|
-
else {
|
|
112
|
-
binPath = join(__dirname, '../dist/bin.js');
|
|
113
|
-
context = 'global';
|
|
114
|
-
}
|
|
115
|
-
}
|
|
116
|
-
|
|
117
|
-
// Execute the binary with all arguments
|
|
118
|
-
const result = spawnSync(process.execPath, [binPath, ...args], {
|
|
119
|
-
stdio: 'inherit',
|
|
120
|
-
env: {
|
|
121
|
-
...process.env,
|
|
122
|
-
VV_CONTEXT: context, // Pass context for debugging (optional)
|
|
123
|
-
}
|
|
124
|
-
});
|
|
125
|
-
|
|
126
|
-
// Exit with same code as child process
|
|
127
|
-
process.exit(result.status ?? 1);
|
|
128
|
-
}
|
|
129
|
-
|
|
130
|
-
// Run main function
|
|
131
|
-
main();
|