@kirrosh/zond 0.26.0 → 0.26.1
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/CHANGELOG.md +12 -0
- package/package.json +1 -1
- package/src/cli/commands/run.ts +20 -0
package/CHANGELOG.md
CHANGED
|
@@ -4,6 +4,18 @@ All notable changes to this project will be documented in this file.
|
|
|
4
4
|
|
|
5
5
|
## [Unreleased]
|
|
6
6
|
|
|
7
|
+
## [0.26.1] — 2026-07-09
|
|
8
|
+
|
|
9
|
+
Follow-up from the v0.26.0 petstore verify audit (report-zond findings).
|
|
10
|
+
|
|
11
|
+
### Fixed
|
|
12
|
+
- **`zond run` on a non-existent path is now a hard error (ARV-383):** a path
|
|
13
|
+
absent on disk exits 2 with `No such file or directory: <path> — nothing to
|
|
14
|
+
run`, instead of falling through to the ARV-357 empty-report path and
|
|
15
|
+
reporting a green 0-test "pass". Real trigger: a probe that matched 0 fields
|
|
16
|
+
never created its output dir, then `zond run <that-dir>` went silently green.
|
|
17
|
+
An existing-but-empty dir keeps its ARV-357 advisory exit-0 behavior.
|
|
18
|
+
|
|
7
19
|
## [0.26.0] — 2026-07-09
|
|
8
20
|
|
|
9
21
|
Deterministic gap-fills surfaced by a docgen-core-service audit — all pass the
|
package/package.json
CHANGED
package/src/cli/commands/run.ts
CHANGED
|
@@ -160,6 +160,26 @@ export async function runCommand(options: RunOptions): Promise<number> {
|
|
|
160
160
|
// the rogue character. Mutating options.paths so downstream lookups
|
|
161
161
|
// (collection by test_path, env-file search) see the cleaned form.
|
|
162
162
|
options.paths = options.paths.map((p) => p.trim());
|
|
163
|
+
|
|
164
|
+
// ARV-383: a path that does not exist on disk is a hard error, not an
|
|
165
|
+
// empty (exit-0) run. Without this, `parseDirectorySafe` globs a missing
|
|
166
|
+
// cwd -> 0 suites and run falls through to the ARV-357 empty-report path,
|
|
167
|
+
// reporting a green 0-test "pass". Real-world trigger: a probe that matched
|
|
168
|
+
// 0 fields never created its output dir, then `zond run <that-dir>` went
|
|
169
|
+
// silently green. An existing-but-empty dir still flows to ARV-357.
|
|
170
|
+
const missingPaths: string[] = [];
|
|
171
|
+
for (const p of options.paths) {
|
|
172
|
+
try {
|
|
173
|
+
await stat(p);
|
|
174
|
+
} catch {
|
|
175
|
+
missingPaths.push(p);
|
|
176
|
+
}
|
|
177
|
+
}
|
|
178
|
+
if (missingPaths.length > 0) {
|
|
179
|
+
printError(`No such file or directory: ${missingPaths.join(", ")} — nothing to run`);
|
|
180
|
+
return 2;
|
|
181
|
+
}
|
|
182
|
+
|
|
163
183
|
const primaryPath = options.paths[0]!;
|
|
164
184
|
|
|
165
185
|
// 1. Parse test files from every input path (collect parse errors instead
|