@vibe-validate/history 0.17.0-rc.6 → 0.17.0-rc.8

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.
@@ -1 +1 @@
1
- {"version":3,"file":"pruner.d.ts","sourceRoot":"","sources":["../src/pruner.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,KAAK,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAY7D;;;;;;;GAOG;AACH,wBAAsB,iBAAiB,CACrC,aAAa,EAAE,MAAM,EACrB,MAAM,GAAE,aAAkB,EAC1B,MAAM,GAAE,OAAe,GACtB,OAAO,CAAC,WAAW,CAAC,CA0DtB;AAED;;;;;;GAMG;AACH,wBAAsB,eAAe,CACnC,MAAM,GAAE,aAAkB,EAC1B,MAAM,GAAE,OAAe,GACtB,OAAO,CAAC,WAAW,CAAC,CA4CtB;AAED;;;;;;;;GAQG;AACH,wBAAsB,gBAAgB,CAAC,MAAM,GAAE,OAAe,GAAG,OAAO,CAAC,WAAW,CAAC,CAwCpF;AAED;;;;;GAKG;AACH,wBAAsB,gBAAgB,CAAC,MAAM,GAAE,OAAe,GAAG,OAAO,CAAC,WAAW,CAAC,CAgCpF"}
1
+ {"version":3,"file":"pruner.d.ts","sourceRoot":"","sources":["../src/pruner.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,KAAK,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAwB7D;;;;;;;GAOG;AACH,wBAAsB,iBAAiB,CACrC,aAAa,EAAE,MAAM,EACrB,MAAM,GAAE,aAAkB,EAC1B,MAAM,GAAE,OAAe,GACtB,OAAO,CAAC,WAAW,CAAC,CA4CtB;AAED;;;;;;GAMG;AACH,wBAAsB,eAAe,CACnC,MAAM,GAAE,aAAkB,EAC1B,MAAM,GAAE,OAAe,GACtB,OAAO,CAAC,WAAW,CAAC,CA8BtB;AAED;;;;;;;;GAQG;AACH,wBAAsB,gBAAgB,CAAC,MAAM,GAAE,OAAe,GAAG,OAAO,CAAC,WAAW,CAAC,CAkCpF;AAED;;;;;GAKG;AACH,wBAAsB,gBAAgB,CAAC,MAAM,GAAE,OAAe,GAAG,OAAO,CAAC,WAAW,CAAC,CA8BpF"}
package/dist/pruner.js CHANGED
@@ -1,16 +1,24 @@
1
1
  /**
2
2
  * History pruning utilities
3
3
  */
4
- import { execSync } from 'node:child_process';
4
+ import { removeNote, removeNotesRefs } from '@vibe-validate/git';
5
5
  import { DEFAULT_HISTORY_CONFIG } from './types.js';
6
6
  import { getAllHistoryNotes } from './reader.js';
7
7
  import { listRunCacheTreeHashes, getAllRunCacheForTree } from './run-cache-reader.js';
8
- const GIT_TIMEOUT = 30000;
9
- const GIT_OPTIONS = {
10
- encoding: 'utf8',
11
- timeout: GIT_TIMEOUT,
12
- stdio: ['pipe', 'pipe', 'ignore'],
13
- };
8
+ // Removed: Git operations now use secure @vibe-validate/git functions
9
+ /**
10
+ * Merge user config with defaults
11
+ */
12
+ function mergeConfig(config = {}) {
13
+ const mergedGitNotes = config.gitNotes
14
+ ? { ...DEFAULT_HISTORY_CONFIG.gitNotes, ...config.gitNotes }
15
+ : DEFAULT_HISTORY_CONFIG.gitNotes;
16
+ return {
17
+ ...DEFAULT_HISTORY_CONFIG,
18
+ ...config,
19
+ gitNotes: mergedGitNotes,
20
+ };
21
+ }
14
22
  /**
15
23
  * Prune validation history older than specified days
16
24
  *
@@ -20,14 +28,7 @@ const GIT_OPTIONS = {
20
28
  * @returns Prune result
21
29
  */
22
30
  export async function pruneHistoryByAge(olderThanDays, config = {}, dryRun = false) {
23
- const mergedConfig = {
24
- ...DEFAULT_HISTORY_CONFIG,
25
- ...config,
26
- gitNotes: {
27
- ...DEFAULT_HISTORY_CONFIG.gitNotes,
28
- ...config.gitNotes,
29
- },
30
- };
31
+ const mergedConfig = mergeConfig(config);
31
32
  const notesRef = mergedConfig.gitNotes.ref;
32
33
  const cutoffTime = Date.now() - olderThanDays * 24 * 60 * 60 * 1000;
33
34
  let notesPruned = 0;
@@ -48,12 +49,8 @@ export async function pruneHistoryByAge(olderThanDays, config = {}, dryRun = fal
48
49
  // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
49
50
  const treeHash = note.treeHash;
50
51
  if (!dryRun) {
51
- try {
52
- execSync(`git notes --ref=${notesRef} remove ${treeHash}`, { ...GIT_OPTIONS, stdio: 'ignore' });
53
- }
54
- catch {
55
- // Ignore errors (note might not exist)
56
- }
52
+ // Use secure removeNote function (no command injection risk)
53
+ removeNote(notesRef, treeHash);
57
54
  }
58
55
  notesPruned++;
59
56
  runsPruned += note.runs.length;
@@ -75,14 +72,7 @@ export async function pruneHistoryByAge(olderThanDays, config = {}, dryRun = fal
75
72
  * @returns Prune result
76
73
  */
77
74
  export async function pruneAllHistory(config = {}, dryRun = false) {
78
- const mergedConfig = {
79
- ...DEFAULT_HISTORY_CONFIG,
80
- ...config,
81
- gitNotes: {
82
- ...DEFAULT_HISTORY_CONFIG.gitNotes,
83
- ...config.gitNotes,
84
- },
85
- };
75
+ const mergedConfig = mergeConfig(config);
86
76
  const notesRef = mergedConfig.gitNotes.ref;
87
77
  const allNotes = await getAllHistoryNotes(notesRef);
88
78
  let notesPruned = 0;
@@ -93,12 +83,8 @@ export async function pruneAllHistory(config = {}, dryRun = false) {
93
83
  // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
94
84
  const treeHash = note.treeHash;
95
85
  if (!dryRun) {
96
- try {
97
- execSync(`git notes --ref=${notesRef} remove ${treeHash}`, { ...GIT_OPTIONS, stdio: 'ignore' });
98
- }
99
- catch {
100
- // Ignore errors
101
- }
86
+ // Use secure removeNote function (no command injection risk)
87
+ removeNote(notesRef, treeHash);
102
88
  }
103
89
  notesPruned++;
104
90
  runsPruned += note.runs?.length ?? 0;
@@ -132,12 +118,8 @@ export async function pruneLegacyNotes(dryRun = false) {
132
118
  // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
133
119
  const treeHash = note.treeHash;
134
120
  if (!dryRun) {
135
- try {
136
- execSync(`git notes --ref=${legacyRef} remove ${treeHash}`, { ...GIT_OPTIONS, stdio: 'ignore' });
137
- }
138
- catch {
139
- // Ignore errors
140
- }
121
+ // Use secure removeNote function (no command injection risk)
122
+ removeNote(legacyRef, treeHash);
141
123
  }
142
124
  notesPruned++;
143
125
  runsPruned += note.runs?.length ?? 0;
@@ -166,19 +148,19 @@ export async function pruneAllRunCache(dryRun = false) {
166
148
  const prunedTreeHashes = [];
167
149
  for (const treeHash of treeHashes) {
168
150
  const entries = await getAllRunCacheForTree(treeHash);
169
- if (entries.length > 0) {
170
- if (!dryRun) {
171
- try {
172
- // Delete all run cache notes under this tree hash
173
- execSync(`git for-each-ref --format="%(refname)" refs/notes/vibe-validate/run/${treeHash}/ | xargs -I {} git update-ref -d {}`, { ...GIT_OPTIONS, stdio: 'ignore' });
174
- }
175
- catch {
176
- // Ignore errors
177
- }
178
- }
151
+ if (entries.length === 0) {
152
+ continue;
153
+ }
154
+ if (dryRun) {
179
155
  notesPruned += entries.length;
180
- prunedTreeHashes.push(treeHash);
181
156
  }
157
+ else {
158
+ // SECURITY FIX: Use secure removeNotesRefs instead of shell piping
159
+ // This eliminates command injection risk from treeHash variable
160
+ const deleted = removeNotesRefs(`refs/notes/vibe-validate/run/${treeHash}`);
161
+ notesPruned += deleted;
162
+ }
163
+ prunedTreeHashes.push(treeHash);
182
164
  }
183
165
  return {
184
166
  notesPruned,
@@ -1 +1 @@
1
- {"version":3,"file":"pruner.js","sourceRoot":"","sources":["../src/pruner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pruner.js","sourceRoot":"","sources":["../src/pruner.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vibe-validate/history",
3
- "version": "0.17.0-rc.6",
3
+ "version": "0.17.0-rc.8",
4
4
  "description": "Validation history tracking via git notes for vibe-validate",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -39,8 +39,8 @@
39
39
  "dependencies": {
40
40
  "yaml": "^2.3.4",
41
41
  "zod": "^3.24.1",
42
- "@vibe-validate/core": "0.17.0-rc.6",
43
- "@vibe-validate/git": "0.17.0-rc.6"
42
+ "@vibe-validate/git": "0.17.0-rc.8",
43
+ "@vibe-validate/core": "0.17.0-rc.8"
44
44
  },
45
45
  "devDependencies": {
46
46
  "@types/node": "^22.0.0",