@vibe-validate/cli 0.10.3 → 0.12.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +84 -92
- package/dist/bin.js +137 -20
- package/dist/bin.js.map +1 -1
- package/dist/commands/cleanup.d.ts +4 -0
- package/dist/commands/cleanup.d.ts.map +1 -1
- package/dist/commands/cleanup.js +96 -15
- package/dist/commands/cleanup.js.map +1 -1
- package/dist/commands/config.d.ts +4 -0
- package/dist/commands/config.d.ts.map +1 -1
- package/dist/commands/config.js +83 -15
- package/dist/commands/config.js.map +1 -1
- package/dist/commands/doctor.d.ts +4 -0
- package/dist/commands/doctor.d.ts.map +1 -1
- package/dist/commands/doctor.js +385 -82
- package/dist/commands/doctor.js.map +1 -1
- package/dist/commands/generate-workflow.d.ts +6 -2
- package/dist/commands/generate-workflow.d.ts.map +1 -1
- package/dist/commands/generate-workflow.js +188 -33
- package/dist/commands/generate-workflow.js.map +1 -1
- package/dist/commands/history.d.ts +13 -0
- package/dist/commands/history.d.ts.map +1 -0
- package/dist/commands/history.js +415 -0
- package/dist/commands/history.js.map +1 -0
- package/dist/commands/init.d.ts +4 -0
- package/dist/commands/init.d.ts.map +1 -1
- package/dist/commands/init.js +252 -109
- package/dist/commands/init.js.map +1 -1
- package/dist/commands/pre-commit.d.ts +4 -0
- package/dist/commands/pre-commit.d.ts.map +1 -1
- package/dist/commands/pre-commit.js +158 -7
- package/dist/commands/pre-commit.js.map +1 -1
- package/dist/commands/state.d.ts +5 -1
- package/dist/commands/state.d.ts.map +1 -1
- package/dist/commands/state.js +192 -23
- package/dist/commands/state.js.map +1 -1
- package/dist/commands/sync-check.d.ts +4 -0
- package/dist/commands/sync-check.d.ts.map +1 -1
- package/dist/commands/sync-check.js +101 -14
- package/dist/commands/sync-check.js.map +1 -1
- package/dist/commands/validate.d.ts +5 -1
- package/dist/commands/validate.d.ts.map +1 -1
- package/dist/commands/validate.js +184 -28
- package/dist/commands/validate.js.map +1 -1
- package/dist/commands/watch-pr.d.ts +10 -0
- package/dist/commands/watch-pr.d.ts.map +1 -0
- package/dist/commands/watch-pr.js +443 -0
- package/dist/commands/watch-pr.js.map +1 -0
- package/dist/schemas/watch-pr-schema.d.ts +261 -0
- package/dist/schemas/watch-pr-schema.d.ts.map +1 -0
- package/dist/schemas/watch-pr-schema.js +58 -0
- package/dist/schemas/watch-pr-schema.js.map +1 -0
- package/dist/scripts/generate-watch-pr-schema.d.ts +12 -0
- package/dist/scripts/generate-watch-pr-schema.d.ts.map +1 -0
- package/dist/scripts/generate-watch-pr-schema.js +35 -0
- package/dist/scripts/generate-watch-pr-schema.js.map +1 -0
- package/dist/services/ci-provider-registry.d.ts +38 -0
- package/dist/services/ci-provider-registry.d.ts.map +1 -0
- package/dist/services/ci-provider-registry.js +53 -0
- package/dist/services/ci-provider-registry.js.map +1 -0
- package/dist/services/ci-provider.d.ts +165 -0
- package/dist/services/ci-provider.d.ts.map +1 -0
- package/dist/services/ci-provider.js +11 -0
- package/dist/services/ci-provider.js.map +1 -0
- package/dist/services/ci-providers/github-actions.d.ts +41 -0
- package/dist/services/ci-providers/github-actions.d.ts.map +1 -0
- package/dist/services/ci-providers/github-actions.js +314 -0
- package/dist/services/ci-providers/github-actions.js.map +1 -0
- package/dist/utils/check-validation.d.ts +7 -4
- package/dist/utils/check-validation.d.ts.map +1 -1
- package/dist/utils/check-validation.js +129 -48
- package/dist/utils/check-validation.js.map +1 -1
- package/dist/utils/config-loader.d.ts +15 -3
- package/dist/utils/config-loader.d.ts.map +1 -1
- package/dist/utils/config-loader.js +61 -17
- package/dist/utils/config-loader.js.map +1 -1
- package/dist/utils/context-detector.d.ts +1 -1
- package/dist/utils/context-detector.js +1 -1
- package/dist/utils/normalize-line-endings.d.ts +53 -0
- package/dist/utils/normalize-line-endings.d.ts.map +1 -0
- package/dist/utils/normalize-line-endings.js +57 -0
- package/dist/utils/normalize-line-endings.js.map +1 -0
- package/dist/utils/run-validation-with-cache.d.ts +48 -0
- package/dist/utils/run-validation-with-cache.d.ts.map +1 -0
- package/dist/utils/run-validation-with-cache.js +123 -0
- package/dist/utils/run-validation-with-cache.js.map +1 -0
- 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 +25 -17
- package/dist/utils/runner-adapter.js.map +1 -1
- package/dist/utils/setup-checks/gitignore-check.d.ts +10 -15
- package/dist/utils/setup-checks/gitignore-check.d.ts.map +1 -1
- package/dist/utils/setup-checks/gitignore-check.js +20 -138
- package/dist/utils/setup-checks/gitignore-check.js.map +1 -1
- package/dist/utils/template-discovery.d.ts +40 -0
- package/dist/utils/template-discovery.d.ts.map +1 -0
- package/dist/utils/template-discovery.js +136 -0
- package/dist/utils/template-discovery.js.map +1 -0
- package/dist/utils/validate-workflow.d.ts +28 -0
- package/dist/utils/validate-workflow.d.ts.map +1 -0
- package/dist/utils/validate-workflow.js +247 -0
- package/dist/utils/validate-workflow.js.map +1 -0
- package/dist/utils/validation-cache.d.ts +30 -0
- package/dist/utils/validation-cache.d.ts.map +1 -0
- package/dist/utils/validation-cache.js +57 -0
- package/dist/utils/validation-cache.js.map +1 -0
- package/package.json +19 -16
- package/watch-pr-result.schema.json +204 -0
- package/LICENSE +0 -21
|
@@ -0,0 +1,415 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* History command - View and manage validation history
|
|
3
|
+
*/
|
|
4
|
+
import { stringify as stringifyYaml } from 'yaml';
|
|
5
|
+
import { readHistoryNote, getAllHistoryNotes, pruneHistoryByAge, pruneAllHistory, checkHistoryHealth, } from '@vibe-validate/history';
|
|
6
|
+
/**
|
|
7
|
+
* Register history command
|
|
8
|
+
*/
|
|
9
|
+
export function historyCommand(program) {
|
|
10
|
+
const history = program
|
|
11
|
+
.command('history')
|
|
12
|
+
.description('View and manage validation history stored in git notes');
|
|
13
|
+
// history list
|
|
14
|
+
history
|
|
15
|
+
.command('list')
|
|
16
|
+
.description('List validation history')
|
|
17
|
+
.option('-l, --limit <number>', 'Limit number of results', '20')
|
|
18
|
+
.option('-b, --branch <name>', 'Filter by branch name')
|
|
19
|
+
.option('--yaml', 'Output in YAML format (default: table)')
|
|
20
|
+
.action(async (options) => {
|
|
21
|
+
await listHistory(options);
|
|
22
|
+
});
|
|
23
|
+
// history show
|
|
24
|
+
history
|
|
25
|
+
.command('show <tree-hash>')
|
|
26
|
+
.description('Show validation history for specific tree hash')
|
|
27
|
+
.option('--yaml', 'Output in YAML format (default: pretty print)')
|
|
28
|
+
.action(async (treeHash, options) => {
|
|
29
|
+
await showHistory(treeHash, options);
|
|
30
|
+
});
|
|
31
|
+
// history prune
|
|
32
|
+
history
|
|
33
|
+
.command('prune')
|
|
34
|
+
.description('Prune old validation history')
|
|
35
|
+
.option('--older-than <days>', 'Remove notes older than N days (e.g., "90")', '90')
|
|
36
|
+
.option('--all', 'Remove all history')
|
|
37
|
+
.option('--dry-run', 'Show what would be deleted without actually deleting')
|
|
38
|
+
.action(async (options) => {
|
|
39
|
+
await pruneHistory(options);
|
|
40
|
+
});
|
|
41
|
+
// history health
|
|
42
|
+
history
|
|
43
|
+
.command('health')
|
|
44
|
+
.description('Check validation history health')
|
|
45
|
+
.action(async () => {
|
|
46
|
+
await healthCheck();
|
|
47
|
+
});
|
|
48
|
+
}
|
|
49
|
+
/**
|
|
50
|
+
* List validation history
|
|
51
|
+
*/
|
|
52
|
+
async function listHistory(options) {
|
|
53
|
+
try {
|
|
54
|
+
const limit = parseInt(options.limit, 10);
|
|
55
|
+
const allNotes = await getAllHistoryNotes();
|
|
56
|
+
if (allNotes.length === 0) {
|
|
57
|
+
console.log('No validation history found');
|
|
58
|
+
console.log('\nHistory is recorded automatically when you run `vibe-validate validate`');
|
|
59
|
+
return;
|
|
60
|
+
}
|
|
61
|
+
// Flatten all runs from all notes
|
|
62
|
+
const allRuns = allNotes.flatMap((note) => note.runs.map((run) => ({
|
|
63
|
+
treeHash: note.treeHash,
|
|
64
|
+
...run,
|
|
65
|
+
})));
|
|
66
|
+
// Sort by timestamp (newest first)
|
|
67
|
+
allRuns.sort((a, b) => new Date(b.timestamp).getTime() - new Date(a.timestamp).getTime());
|
|
68
|
+
// Filter by branch if specified
|
|
69
|
+
let filteredRuns = allRuns;
|
|
70
|
+
if (options.branch) {
|
|
71
|
+
filteredRuns = allRuns.filter((run) => run.branch === options.branch);
|
|
72
|
+
if (filteredRuns.length === 0) {
|
|
73
|
+
console.log(`No validation history found for branch: ${options.branch}`);
|
|
74
|
+
return;
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
// Limit results
|
|
78
|
+
const limitedRuns = filteredRuns.slice(0, limit);
|
|
79
|
+
if (options.yaml) {
|
|
80
|
+
// YAML mode: Output structured result to stdout
|
|
81
|
+
// Small delay to ensure stderr is flushed
|
|
82
|
+
await new Promise(resolve => setTimeout(resolve, 10));
|
|
83
|
+
// RFC 4627 separator
|
|
84
|
+
process.stdout.write('---\n');
|
|
85
|
+
// Write pure YAML
|
|
86
|
+
process.stdout.write(stringifyYaml(limitedRuns));
|
|
87
|
+
// CRITICAL: Wait for stdout to flush before exiting
|
|
88
|
+
await new Promise(resolve => {
|
|
89
|
+
if (process.stdout.write('')) {
|
|
90
|
+
resolve();
|
|
91
|
+
}
|
|
92
|
+
else {
|
|
93
|
+
process.stdout.once('drain', resolve);
|
|
94
|
+
}
|
|
95
|
+
});
|
|
96
|
+
}
|
|
97
|
+
else {
|
|
98
|
+
// Pretty table output
|
|
99
|
+
console.log(`\nValidation History (showing ${limitedRuns.length} most recent)\n`);
|
|
100
|
+
for (const run of limitedRuns) {
|
|
101
|
+
const timestamp = new Date(run.timestamp).toLocaleString();
|
|
102
|
+
const hash = run.treeHash.slice(0, 7);
|
|
103
|
+
const status = run.passed ? '✓ PASSED' : '✗ FAILED';
|
|
104
|
+
const duration = (run.duration / 1000).toFixed(1);
|
|
105
|
+
console.log(`${timestamp} ${hash} ${run.branch.padEnd(20)} ${status} (${duration}s)`);
|
|
106
|
+
}
|
|
107
|
+
console.log(`\nTotal validation runs: ${allRuns.length}`);
|
|
108
|
+
console.log(`Tree hashes tracked: ${allNotes.length}`);
|
|
109
|
+
if (filteredRuns.length < allRuns.length && !options.branch) {
|
|
110
|
+
console.log(`\nShowing ${limitedRuns.length} of ${filteredRuns.length} runs`);
|
|
111
|
+
console.log(`Use --limit to see more: vibe-validate history list --limit 50`);
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
catch (error) {
|
|
116
|
+
const errorMessage = error instanceof Error ? error.message : String(error);
|
|
117
|
+
console.error(`Error listing history: ${errorMessage}`);
|
|
118
|
+
process.exit(1);
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
|
+
/**
|
|
122
|
+
* Show history for specific tree hash
|
|
123
|
+
*/
|
|
124
|
+
async function showHistory(treeHash, options) {
|
|
125
|
+
try {
|
|
126
|
+
const note = await readHistoryNote(treeHash);
|
|
127
|
+
if (!note) {
|
|
128
|
+
console.error(`No validation history found for tree hash: ${treeHash}`);
|
|
129
|
+
console.error(`\nRun 'vibe-validate history list' to see available tree hashes`);
|
|
130
|
+
process.exit(1);
|
|
131
|
+
}
|
|
132
|
+
if (options.yaml) {
|
|
133
|
+
// YAML mode: Output structured result to stdout
|
|
134
|
+
// Small delay to ensure stderr is flushed
|
|
135
|
+
await new Promise(resolve => setTimeout(resolve, 10));
|
|
136
|
+
// RFC 4627 separator
|
|
137
|
+
process.stdout.write('---\n');
|
|
138
|
+
// Write pure YAML
|
|
139
|
+
process.stdout.write(stringifyYaml(note));
|
|
140
|
+
// CRITICAL: Wait for stdout to flush before exiting
|
|
141
|
+
await new Promise(resolve => {
|
|
142
|
+
if (process.stdout.write('')) {
|
|
143
|
+
resolve();
|
|
144
|
+
}
|
|
145
|
+
else {
|
|
146
|
+
process.stdout.once('drain', resolve);
|
|
147
|
+
}
|
|
148
|
+
});
|
|
149
|
+
}
|
|
150
|
+
else {
|
|
151
|
+
// Pretty print
|
|
152
|
+
console.log(`\nValidation History for Tree Hash: ${note.treeHash}`);
|
|
153
|
+
console.log(`Total Runs: ${note.runs.length}\n`);
|
|
154
|
+
for (let i = 0; i < note.runs.length; i++) {
|
|
155
|
+
const run = note.runs[i];
|
|
156
|
+
const timestamp = new Date(run.timestamp).toLocaleString();
|
|
157
|
+
const status = run.passed ? '✓ PASSED' : '✗ FAILED';
|
|
158
|
+
const duration = (run.duration / 1000).toFixed(1);
|
|
159
|
+
console.log(`Run #${i + 1} (${run.id}):`);
|
|
160
|
+
console.log(` Timestamp: ${timestamp}`);
|
|
161
|
+
console.log(` Status: ${status}`);
|
|
162
|
+
console.log(` Duration: ${duration}s`);
|
|
163
|
+
console.log(` Branch: ${run.branch}`);
|
|
164
|
+
console.log(` Commit: ${run.headCommit}`);
|
|
165
|
+
console.log(` Uncommitted Changes: ${run.uncommittedChanges ? 'yes' : 'no'}`);
|
|
166
|
+
if (run.result.phases) {
|
|
167
|
+
console.log(` Phases:`);
|
|
168
|
+
for (const phase of run.result.phases) {
|
|
169
|
+
const phaseStatus = phase.passed ? '✓' : '✗';
|
|
170
|
+
console.log(` ${phaseStatus} ${phase.name} (${phase.durationSecs.toFixed(1)}s)`);
|
|
171
|
+
}
|
|
172
|
+
}
|
|
173
|
+
console.log('');
|
|
174
|
+
}
|
|
175
|
+
}
|
|
176
|
+
}
|
|
177
|
+
catch (error) {
|
|
178
|
+
const errorMessage = error instanceof Error ? error.message : String(error);
|
|
179
|
+
console.error(`Error showing history: ${errorMessage}`);
|
|
180
|
+
process.exit(1);
|
|
181
|
+
}
|
|
182
|
+
}
|
|
183
|
+
/**
|
|
184
|
+
* Prune validation history
|
|
185
|
+
*/
|
|
186
|
+
async function pruneHistory(options) {
|
|
187
|
+
try {
|
|
188
|
+
const dryRun = options.dryRun || false;
|
|
189
|
+
if (options.all) {
|
|
190
|
+
console.log(dryRun ? 'Pruning all history (DRY RUN)...\n' : 'Pruning all history...\n');
|
|
191
|
+
const result = await pruneAllHistory({}, dryRun);
|
|
192
|
+
if (result.notesPruned === 0) {
|
|
193
|
+
console.log('No history to prune');
|
|
194
|
+
return;
|
|
195
|
+
}
|
|
196
|
+
console.log(`${dryRun ? 'Would prune' : 'Pruned'} ${result.notesPruned} tree hashes`);
|
|
197
|
+
console.log(`${dryRun ? 'Would remove' : 'Removed'} ${result.runsPruned} validation runs`);
|
|
198
|
+
if (dryRun) {
|
|
199
|
+
console.log(`\nRun without --dry-run to execute: vibe-validate history prune --all`);
|
|
200
|
+
}
|
|
201
|
+
}
|
|
202
|
+
else {
|
|
203
|
+
const days = options.olderThan ? parseInt(options.olderThan, 10) : 90;
|
|
204
|
+
console.log(dryRun
|
|
205
|
+
? `Pruning history older than ${days} days (DRY RUN)...\n`
|
|
206
|
+
: `Pruning history older than ${days} days...\n`);
|
|
207
|
+
const result = await pruneHistoryByAge(days, {}, dryRun);
|
|
208
|
+
if (result.notesPruned === 0) {
|
|
209
|
+
console.log(`No history older than ${days} days found`);
|
|
210
|
+
return;
|
|
211
|
+
}
|
|
212
|
+
console.log(`${dryRun ? 'Would prune' : 'Pruned'} ${result.notesPruned} tree hashes`);
|
|
213
|
+
console.log(`${dryRun ? 'Would remove' : 'Removed'} ${result.runsPruned} validation runs`);
|
|
214
|
+
console.log(`Remaining: ${result.notesRemaining} tree hashes`);
|
|
215
|
+
if (dryRun) {
|
|
216
|
+
console.log(`\nRun without --dry-run to execute: vibe-validate history prune --older-than ${days}`);
|
|
217
|
+
}
|
|
218
|
+
}
|
|
219
|
+
}
|
|
220
|
+
catch (error) {
|
|
221
|
+
const errorMessage = error instanceof Error ? error.message : String(error);
|
|
222
|
+
console.error(`Error pruning history: ${errorMessage}`);
|
|
223
|
+
process.exit(1);
|
|
224
|
+
}
|
|
225
|
+
}
|
|
226
|
+
/**
|
|
227
|
+
* Check history health
|
|
228
|
+
*/
|
|
229
|
+
async function healthCheck() {
|
|
230
|
+
try {
|
|
231
|
+
const health = await checkHistoryHealth();
|
|
232
|
+
console.log('\nValidation History Health Check\n');
|
|
233
|
+
console.log(`Total tree hashes: ${health.totalNotes}`);
|
|
234
|
+
console.log(`Old notes (>90 days): ${health.oldNotesCount}`);
|
|
235
|
+
if (health.shouldWarn) {
|
|
236
|
+
console.log('');
|
|
237
|
+
console.log(health.warningMessage);
|
|
238
|
+
}
|
|
239
|
+
else {
|
|
240
|
+
console.log('\n✓ History is healthy');
|
|
241
|
+
}
|
|
242
|
+
}
|
|
243
|
+
catch (error) {
|
|
244
|
+
const errorMessage = error instanceof Error ? error.message : String(error);
|
|
245
|
+
console.error(`Error checking history health: ${errorMessage}`);
|
|
246
|
+
process.exit(1);
|
|
247
|
+
}
|
|
248
|
+
}
|
|
249
|
+
/**
|
|
250
|
+
* Show verbose help with detailed documentation
|
|
251
|
+
*/
|
|
252
|
+
export function showHistoryVerboseHelp() {
|
|
253
|
+
console.log(`# history Command Reference
|
|
254
|
+
|
|
255
|
+
> View and manage validation history stored in git notes
|
|
256
|
+
|
|
257
|
+
## Overview
|
|
258
|
+
|
|
259
|
+
The \`history\` command provides tools to inspect, manage, and maintain validation history records stored in git notes. Each validation run is tracked using the git tree hash as a key, allowing you to see when code states were validated and with what results.
|
|
260
|
+
|
|
261
|
+
## Subcommands
|
|
262
|
+
|
|
263
|
+
### \`list\` - List validation history
|
|
264
|
+
|
|
265
|
+
List all validation runs, sorted by timestamp (newest first).
|
|
266
|
+
|
|
267
|
+
**Options:**
|
|
268
|
+
- \`-l, --limit <number>\` - Limit results (default: 20)
|
|
269
|
+
- \`-b, --branch <name>\` - Filter by branch name
|
|
270
|
+
- \`--yaml\` - Output as YAML
|
|
271
|
+
|
|
272
|
+
**Examples:**
|
|
273
|
+
\`\`\`bash
|
|
274
|
+
vibe-validate history list # Last 20 runs
|
|
275
|
+
vibe-validate history list --limit 50 # Last 50 runs
|
|
276
|
+
vibe-validate history list --branch main # Only main branch
|
|
277
|
+
vibe-validate history list --yaml # Machine-readable output
|
|
278
|
+
\`\`\`
|
|
279
|
+
|
|
280
|
+
**Output fields:**
|
|
281
|
+
- Timestamp - When validation ran
|
|
282
|
+
- Tree hash - First 7 chars of git tree hash
|
|
283
|
+
- Branch - Branch name
|
|
284
|
+
- Status - PASSED or FAILED
|
|
285
|
+
- Duration - How long validation took
|
|
286
|
+
|
|
287
|
+
---
|
|
288
|
+
|
|
289
|
+
### \`show\` - Show detailed history for a tree hash
|
|
290
|
+
|
|
291
|
+
Display all validation runs for a specific git tree hash.
|
|
292
|
+
|
|
293
|
+
**Arguments:**
|
|
294
|
+
- \`<tree-hash>\` - Git tree hash (full or abbreviated)
|
|
295
|
+
|
|
296
|
+
**Options:**
|
|
297
|
+
- \`--yaml\` - Output as YAML
|
|
298
|
+
|
|
299
|
+
**Examples:**
|
|
300
|
+
\`\`\`bash
|
|
301
|
+
vibe-validate history show abc123d # Show history for tree
|
|
302
|
+
vibe-validate history show abc123d --yaml # Machine-readable
|
|
303
|
+
\`\`\`
|
|
304
|
+
|
|
305
|
+
**What you'll see:**
|
|
306
|
+
- All runs for this tree hash
|
|
307
|
+
- Timestamps and durations
|
|
308
|
+
- Pass/fail status
|
|
309
|
+
- Phase breakdown
|
|
310
|
+
- Uncommitted changes flag
|
|
311
|
+
|
|
312
|
+
---
|
|
313
|
+
|
|
314
|
+
### \`prune\` - Remove old validation history
|
|
315
|
+
|
|
316
|
+
Delete validation history to reduce git notes storage.
|
|
317
|
+
|
|
318
|
+
**Options:**
|
|
319
|
+
- \`--older-than <days>\` - Remove notes older than N days (default: 90)
|
|
320
|
+
- \`--all\` - Remove ALL history (use with caution)
|
|
321
|
+
- \`--dry-run\` - Preview what would be deleted
|
|
322
|
+
|
|
323
|
+
**Examples:**
|
|
324
|
+
\`\`\`bash
|
|
325
|
+
vibe-validate history prune # Remove >90 day old
|
|
326
|
+
vibe-validate history prune --older-than 30 # Remove >30 days
|
|
327
|
+
vibe-validate history prune --dry-run # Preview only
|
|
328
|
+
vibe-validate history prune --all --dry-run # Preview full cleanup
|
|
329
|
+
\`\`\`
|
|
330
|
+
|
|
331
|
+
**What gets pruned:**
|
|
332
|
+
- Entire git notes (tree hash level) where ALL runs are older than threshold
|
|
333
|
+
- Partial runs are NOT pruned (keeps notes with any recent runs)
|
|
334
|
+
|
|
335
|
+
---
|
|
336
|
+
|
|
337
|
+
### \`health\` - Check history health
|
|
338
|
+
|
|
339
|
+
Check for history storage bloat and maintenance recommendations.
|
|
340
|
+
|
|
341
|
+
**Examples:**
|
|
342
|
+
\`\`\`bash
|
|
343
|
+
vibe-validate history health
|
|
344
|
+
\`\`\`
|
|
345
|
+
|
|
346
|
+
**Health indicators:**
|
|
347
|
+
- Total tree hashes tracked
|
|
348
|
+
- Notes older than 90 days
|
|
349
|
+
- Recommendations for pruning
|
|
350
|
+
|
|
351
|
+
## Storage Details
|
|
352
|
+
|
|
353
|
+
**Where history lives:**
|
|
354
|
+
- Git notes under \`refs/notes/vibe-validate/runs\`
|
|
355
|
+
- Keyed by git tree hash (content-based)
|
|
356
|
+
- Stored as YAML with full validation results
|
|
357
|
+
|
|
358
|
+
**Storage impact:**
|
|
359
|
+
- Each tree hash: ~1-5KB (depends on validation detail)
|
|
360
|
+
- Typical project: 50-200 tree hashes
|
|
361
|
+
- Total overhead: Usually <1MB
|
|
362
|
+
|
|
363
|
+
**When to prune:**
|
|
364
|
+
- Storage > 1MB
|
|
365
|
+
- Many old notes (>100 notes older than 90 days)
|
|
366
|
+
- Switching to new validation approach
|
|
367
|
+
|
|
368
|
+
## Exit Codes
|
|
369
|
+
|
|
370
|
+
- \`0\` - Success
|
|
371
|
+
- \`1\` - Error (git command failed, tree hash not found, etc.)
|
|
372
|
+
|
|
373
|
+
## Common Workflows
|
|
374
|
+
|
|
375
|
+
### View recent validation activity
|
|
376
|
+
\`\`\`bash
|
|
377
|
+
vibe-validate history list --limit 10
|
|
378
|
+
\`\`\`
|
|
379
|
+
|
|
380
|
+
### Investigate specific tree hash
|
|
381
|
+
\`\`\`bash
|
|
382
|
+
# From validation output, copy tree hash, then:
|
|
383
|
+
vibe-validate history show <tree-hash>
|
|
384
|
+
\`\`\`
|
|
385
|
+
|
|
386
|
+
### Clean up old history
|
|
387
|
+
\`\`\`bash
|
|
388
|
+
# Preview first
|
|
389
|
+
vibe-validate history prune --older-than 60 --dry-run
|
|
390
|
+
|
|
391
|
+
# If looks good, execute
|
|
392
|
+
vibe-validate history prune --older-than 60
|
|
393
|
+
\`\`\`
|
|
394
|
+
|
|
395
|
+
### Check storage health
|
|
396
|
+
\`\`\`bash
|
|
397
|
+
vibe-validate history health
|
|
398
|
+
\`\`\`
|
|
399
|
+
|
|
400
|
+
## Integration with CI
|
|
401
|
+
|
|
402
|
+
History is stored in git notes which are NOT pushed by default. To share validation history across team:
|
|
403
|
+
|
|
404
|
+
\`\`\`bash
|
|
405
|
+
# Push notes (one-time or in CI)
|
|
406
|
+
git push origin refs/notes/vibe-validate/runs
|
|
407
|
+
|
|
408
|
+
# Fetch notes (team members)
|
|
409
|
+
git fetch origin refs/notes/vibe-validate/runs:refs/notes/vibe-validate/runs
|
|
410
|
+
\`\`\`
|
|
411
|
+
|
|
412
|
+
**Recommendation:** Keep history local for development, don't push to remote unless team wants shared validation tracking.
|
|
413
|
+
`);
|
|
414
|
+
}
|
|
415
|
+
//# sourceMappingURL=history.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"history.js","sourceRoot":"","sources":["../../src/commands/history.ts"],"names":[],"mappings":"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"}
|
package/dist/commands/init.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAmCzC,wBAAgB,WAAW,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,
|
|
1
|
+
{"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAmCzC,wBAAgB,WAAW,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAgClD;AA2OD;;GAEG;AACH,wBAAgB,mBAAmB,IAAI,IAAI,CAiL1C"}
|