@clear-capabilities/agentic-security-scanner 0.122.0 → 0.124.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/CHANGELOG.md +38 -0
- package/bin/agentic-security.js +7 -0
- package/dist/agentic-security.mjs +1 -1
- package/dist/agentic-security.mjs.sha256 +1 -1
- package/package.json +2 -2
- package/src/report/index.js +104 -5
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,43 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 0.124.0 — inline finding depth (no second command for "why it fired")
|
|
4
|
+
|
|
5
|
+
The depth `/triage --explain` produces now renders **inline** in the finding views,
|
|
6
|
+
assembled from fields already on the finding (`narration` + `whyFired` + fix) — so the
|
|
7
|
+
default per-finding view answers "why does this matter / how does it fire / how do I
|
|
8
|
+
fix it" without a separate command. Addresses the "only ~2 sentences per finding"
|
|
9
|
+
feedback. Presentation only — no detector/severity changes.
|
|
10
|
+
|
|
11
|
+
- **Inline explain block** (`scanner/src/report/index.js`): every per-finding surface
|
|
12
|
+
now shows `why:` (the impact narration), `how:` (the `whyFired` detector + source→sink
|
|
13
|
+
flow, with sanitizers/guards/reachability under `--verbose`), and `fix:`. Wired into
|
|
14
|
+
the firehose list (`toCLI`), the pro table (a compact one-line "why"), and the HTML
|
|
15
|
+
report ("Why it matters" / "How it fires" blocks). Default trims the narration to two
|
|
16
|
+
sentences; `--verbose` shows the full narrative + fix code. Degrades gracefully when a
|
|
17
|
+
finding lacks the fields (e.g. SCA).
|
|
18
|
+
- **`--firehose` actually lists findings now.** Previously it only lowered the
|
|
19
|
+
confidence threshold while the vibecoder verdict showed no per-finding list; it now
|
|
20
|
+
appends the full per-finding list (with the inline depth) so "Show ALL findings" does.
|
|
21
|
+
|
|
22
|
+
## 0.123.0 — report clarity: risk-demotion labels, depth discoverability, HTML export docs
|
|
23
|
+
|
|
24
|
+
Acting on user feedback that findings could overstate severity, that explanations
|
|
25
|
+
felt thin, and that the browser report was hard to find. No detector/severity logic
|
|
26
|
+
changed — these are presentation + docs improvements in `scanner/src/report/`.
|
|
27
|
+
|
|
28
|
+
- **"Likely lower risk" labels.** A high/critical finding the reachability /
|
|
29
|
+
exploitability / confidence pipeline has already marked down now renders a visible
|
|
30
|
+
`↓ likely lower risk — …` note (not reachable in prod / sanitized / low
|
|
31
|
+
exploitability / low confidence) in the CLI firehose, the pro table, and the HTML
|
|
32
|
+
report. Severity stays canonical (SARIF/exit codes/baselines unchanged) — this only
|
|
33
|
+
annotates, so a hardcoded rule severity isn't taken at face value.
|
|
34
|
+
- **Depth is discoverable.** The one-screen ship verdict now points to
|
|
35
|
+
`/triage --explain <id>` (the why-it-fired narrative + data-flow trace + fix) and to
|
|
36
|
+
the shareable HTML report, so users don't conclude the terse default is all there is.
|
|
37
|
+
- **HTML report surfaced in the README.** Documents `scan . --format html --output
|
|
38
|
+
report.html` (self-contained browser page: severity charts, STRIDE, filterable
|
|
39
|
+
findings) alongside json / md / sarif / csv.
|
|
40
|
+
|
|
3
41
|
## 0.122.0 — cache economics Phase B (depth-first, subagent offload, cost HUD)
|
|
4
42
|
|
|
5
43
|
Completes the cache-economics program (PRD `docs/CACHE_ECONOMICS_PRD.md`, F4–F6) on
|
package/bin/agentic-security.js
CHANGED
|
@@ -543,6 +543,13 @@ async function cmdScan(args) {
|
|
|
543
543
|
else if (format === 'cli') body = toCLIByProfile(scan, { profile: effProfile, columns: args.flags.columns, verbose });
|
|
544
544
|
else body = toSummary(scan);
|
|
545
545
|
|
|
546
|
+
// --firehose: the verdict/summary views don't list findings — append the full
|
|
547
|
+
// per-finding list (with inline why-it-matters / how-it-fires / fix depth) so
|
|
548
|
+
// "Show ALL findings" actually shows them. Add --verbose for full narration + code.
|
|
549
|
+
if (args.flags.firehose && (!format || format === 'ship' || format === 'summary')) {
|
|
550
|
+
body += '\n\n' + toCLI(scan, { verbose });
|
|
551
|
+
}
|
|
552
|
+
|
|
546
553
|
// v3 next-gen — supplementary blocks for human-readable formats. These
|
|
547
554
|
// are append-only and do not change the verdict / exit code. The blocks
|
|
548
555
|
// are only meaningful when v3 annotators have run (default scan path).
|