circle-ir-ai 4.0.6 → 4.1.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 CHANGED
@@ -5,6 +5,39 @@ All notable changes to this project will be documented in this file.
5
5
  The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
6
6
  and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
7
 
8
+ ## [4.1.0] - 2026-08-16
9
+
10
+ ### Added — #68 Stage 1: shared skill-scan precision layer in the inner engine
11
+
12
+ The skill-scan FP fixes (skillsregistry #52/#53/#55/#57/#59/#63/#66) shipped only
13
+ in circle-pack's HTTP handler, so the CLI / MCP / skills-validation gate path
14
+ (`analyzeSkillBundle`) never applied them — two entry points, two verdicts for
15
+ one skill (#68). New `src/skills/precision.ts` moves the layer into the engine:
16
+
17
+ - Passes over `SkillFinding`: `capLogInjectionSeverity`, `capTaintCapabilitySeverity`
18
+ (caps the whole `type: 'vulnerability'` taint population to `low` — malware
19
+ types untouched), `suppressPlaceholderSecrets`, `suppressInstructionOpenRedirect`,
20
+ `dedupFindings`.
21
+ - `finalizeSkillAnalysis(findings, ctx) → { findings, verdict, trustScore, scanCoverage }`
22
+ — the coverage gate (#59) + near-clean verdict (#57), returning the
23
+ **cognium-ai-owned verdict** so a presence-based consumer (the gate) can switch
24
+ to it per skillsregistry#64.
25
+
26
+ `analyzeSkillBundle` now applies `finalizeSkillAnalysis` and returns `verdict` +
27
+ `scanCoverage` on `SkillAnalysisResult`. The precision functions are exported from
28
+ the package root. Every interface (CLI / HTTP / MCP / gate) now inherits identical
29
+ precision. 1818 tests pass (+10). Same env opt-outs as circle-pack
30
+ (`SKILL_KEEP_*`). **Stage 2 (circle-pack skill-runner delegates to these, deleting
31
+ its local copies) is the follow-up.**
32
+
33
+ ## [4.0.7] - 2026-08-16
34
+
35
+ ### Changed — bump circle-ir 4.7.0 → 4.7.1
36
+
37
+ Engine pin bump to latest 4.x. No source changes. Single copy verified; typecheck
38
+ clean, 1808 tests pass. Static regression spot-check clean: OWASP 100%, Rust 92.3%,
39
+ Bash 100%, HTML 100%, Go 78.9% (all match baseline).
40
+
8
41
  ## [4.0.6] - 2026-08-14
9
42
 
10
43
  ### Added — export the parse-isolation pool helpers (cognium-ai#58 completeness)
package/dist/index.d.ts CHANGED
@@ -37,6 +37,7 @@ export { generateSpecifica, generateSpecificaForDirectory, extractEvidence, gene
37
37
  export { type SkillBundle, type SkillCodeFile, type MCPServerConfig, type MCPPermission, type MCPTool, type MCPResource, type SkillAnalysisResult, type SkillFinding, type SkillFindingType, type SkillAnalysisOptions as SkillBundleAnalysisOptions, type AnalysisProgress as SkillAnalysisProgress, type ExtractedArtifact, } from './skills/types.js';
38
38
  export { loadSkillBundle, validateSkillBundle, createSkillBundleFromFiles } from './skills/bundle-loader.js';
39
39
  export { analyzeSkillBundle } from './skills/skill-analyzer.js';
40
+ export { finalizeSkillAnalysis, capLogInjectionSeverity, capTaintCapabilitySeverity, suppressPlaceholderSecrets, suppressInstructionOpenRedirect, dedupFindings, type SkillVerdict, type SkillVerdictContext, type SkillFinalizeResult, } from './skills/precision.js';
40
41
  export { detectCapabilityMismatches } from './skills/capability-mismatch.js';
41
42
  export { classifyInstructionSafety } from './skills/instruction-safety.js';
42
43
  export { detectCodeThreatPatterns } from './skills/code-threat-patterns.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -70,6 +70,10 @@ export { ClassificationCache, getClassificationCache, resetClassificationCache,
70
70
  export { generateSpecifica, generateSpecificaForDirectory, extractEvidence, generateSpec, formatSpecMarkdown, resolveConflict, fileExists, getConflictStrategy, } from './specifica/index.js';
71
71
  export { loadSkillBundle, validateSkillBundle, createSkillBundleFromFiles } from './skills/bundle-loader.js';
72
72
  export { analyzeSkillBundle } from './skills/skill-analyzer.js';
73
+ // #68 — shared skill-scan precision layer (caps / suppressors / dedup + the
74
+ // cognium-ai-owned verdict), so circle-pack's HTTP handler and analyzeSkillBundle
75
+ // (CLI / MCP / validation gate) apply identical precision.
76
+ export { finalizeSkillAnalysis, capLogInjectionSeverity, capTaintCapabilitySeverity, suppressPlaceholderSecrets, suppressInstructionOpenRedirect, dedupFindings, } from './skills/precision.js';
73
77
  export { detectCapabilityMismatches } from './skills/capability-mismatch.js';
74
78
  export { classifyInstructionSafety } from './skills/instruction-safety.js';
75
79
  export { detectCodeThreatPatterns } from './skills/code-threat-patterns.js';
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,97 @@
1
+ /**
2
+ * Shared skill-scan precision layer (cognium-ai#68).
3
+ *
4
+ * ## Why this exists
5
+ *
6
+ * The skill-scan false-positive fixes (skillsregistry #52/#53/#55/#57/#59/#63/#66)
7
+ * originally shipped inside `circle-pack/src/api/analysis/skill-runner.ts` — the
8
+ * HTTP handler for `POST /api/analyze/skill`. But the CLI (`cognium-ai
9
+ * analyze-skill`), the MCP tools, and the skills-validation gate adapter all go
10
+ * through `analyzeSkillBundle` in this package, which never had any of them. So
11
+ * two entry points returned two different verdicts for the same skill on the
12
+ * same engine (#68), and the validation gate scored a path with none of the
13
+ * precision work.
14
+ *
15
+ * The fix belongs in the inner layer: CLI / HTTP / MCP are just interfaces.
16
+ * These passes operate on `SkillFinding` (this package's model) so every
17
+ * interface inherits the same precision + verdict by construction.
18
+ *
19
+ * ## The two FP definitions
20
+ *
21
+ * - **Verdict FP** (product API): a skill is `VULNERABLE`. Severity caps fix
22
+ * this — capped-to-`low` findings fold into `trust_score` and never flip the
23
+ * verdict.
24
+ * - **Presence FP** (validation gate): a finding of a threat type *appears* on a
25
+ * safe fixture. Caps don't help (the finding still exists); only the
26
+ * suppressors (which DROP the finding) and genuine detector precision do.
27
+ *
28
+ * `finalizeSkillAnalysis` returns both the capped/suppressed `findings` and a
29
+ * `verdict` + `trust_score`, so a presence-based consumer can switch to the
30
+ * verdict (the cognium-ai-owned contract, skillsregistry#64) and a
31
+ * verdict-based consumer works directly.
32
+ */
33
+ import type { SkillFinding } from './types.js';
34
+ type Severity = SkillFinding['severity'];
35
+ /**
36
+ * skillsregistry#52 — CWE-117 (log injection) is emitted for any user input
37
+ * reaching a logger; on a stdio skill server it's low real-world risk but was
38
+ * the biggest single driver of false VULNERABLE verdicts. Cap to `low`. Opt out
39
+ * with SKILL_KEEP_LOG_INJECTION_SEVERITY=1. Mutates in place.
40
+ */
41
+ export declare function capLogInjectionSeverity(findings: SkillFinding[]): void;
42
+ /**
43
+ * skillsregistry#66 — the biggest FP driver. circle-ir's taint analyzer marks an
44
+ * MCP tool's OWN parameters as untrusted attacker input, so a tool acting on its
45
+ * declared arguments (a shell tool running its command arg, a DB tool querying
46
+ * its arg) is flagged as injection. In a skill/MCP scan EVERY taint finding is
47
+ * the tool acting on its declared parameter — declared capability, not an
48
+ * attacker flow — so cap the whole taint population to `low`. Genuine
49
+ * *undeclared* over-reach is the job of the capability-mismatch finding, and
50
+ * behavioral-malware findings (`ransomware`, `fetch_and_execute`, …) carry their
51
+ * own type and are untouched. `SkillFindingType 'vulnerability'` is exactly the
52
+ * SAST taint set. Opt out with SKILL_KEEP_PARAM_SOURCE_SEVERITY=1. Mutates.
53
+ */
54
+ export declare function capTaintCapabilitySeverity(findings: SkillFinding[]): void;
55
+ export declare function suppressPlaceholderSecrets(findings: SkillFinding[]): SkillFinding[];
56
+ /**
57
+ * skillsregistry#55 — CWE-601 open-redirect is a code-flow vuln (user URL → a
58
+ * redirect/`Location` sink); it can't be established from instruction TEXT. The
59
+ * instruction-safety phase was emitting it for a SKILL.md that merely NAMES a
60
+ * data-source URL. Drop CWE-601 findings that don't come from a real code sink
61
+ * (no code `location.line`). Opt out with SKILL_KEEP_INSTRUCTION_OPEN_REDIRECT=1.
62
+ */
63
+ export declare function suppressInstructionOpenRedirect(findings: SkillFinding[]): SkillFinding[];
64
+ /**
65
+ * skillsregistry#63 — collapse duplicate finding rows, keeping the
66
+ * highest-confidence instance. Identity: (type, cwe, normalized artifact, line).
67
+ */
68
+ export declare function dedupFindings(findings: SkillFinding[]): SkillFinding[];
69
+ /** Coverage / mode inputs the verdict needs, supplied by the pipeline. */
70
+ export interface SkillVerdictContext {
71
+ /** Code files that actually produced a SAST result (not merely queued). */
72
+ codeFilesAnalyzed: number;
73
+ /** True only if the instruction-safety phase actually ran on a real SKILL.md. */
74
+ instructionAnalyzed: boolean;
75
+ /** True when the analyzed SKILL.md is the caller's description echo, not fetched content. */
76
+ skillMdIsDescriptionEcho?: boolean;
77
+ /** Severity floor for a finding to be "substantive" (default medium). */
78
+ verdictMinSeverity?: Severity;
79
+ }
80
+ export type SkillVerdict = 'SAFE' | 'VULNERABLE' | 'UNKNOWN';
81
+ export interface SkillFinalizeResult {
82
+ findings: SkillFinding[];
83
+ verdict: SkillVerdict;
84
+ trustScore: number;
85
+ scanCoverage: 'none' | 'partial' | 'full';
86
+ }
87
+ /**
88
+ * Run the full precision layer + compute the cognium-ai-owned verdict/trust from
89
+ * a raw `SkillFinding[]`. Order: dedup → caps → suppressors → verdict.
90
+ *
91
+ * - skillsregistry#57: at trust ≥ 0.9 only HIGH/CRITICAL flips the verdict.
92
+ * - skillsregistry#59: no analyzed code AND no real instruction analysis ⇒
93
+ * UNKNOWN / trust 0 (unscannable content is not "scanned clean").
94
+ */
95
+ export declare function finalizeSkillAnalysis(raw: SkillFinding[], ctx: SkillVerdictContext): SkillFinalizeResult;
96
+ export {};
97
+ //# sourceMappingURL=precision.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"precision.d.ts","sourceRoot":"","sources":["../../src/skills/precision.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE/C,KAAK,QAAQ,GAAG,YAAY,CAAC,UAAU,CAAC,CAAC;AAWzC;;;;;GAKG;AACH,wBAAgB,uBAAuB,CAAC,QAAQ,EAAE,YAAY,EAAE,GAAG,IAAI,CAQtE;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,0BAA0B,CAAC,QAAQ,EAAE,YAAY,EAAE,GAAG,IAAI,CASzE;AAaD,wBAAgB,0BAA0B,CAAC,QAAQ,EAAE,YAAY,EAAE,GAAG,YAAY,EAAE,CAYnF;AAED;;;;;;GAMG;AACH,wBAAgB,+BAA+B,CAAC,QAAQ,EAAE,YAAY,EAAE,GAAG,YAAY,EAAE,CAQxF;AAED;;;GAGG;AACH,wBAAgB,aAAa,CAAC,QAAQ,EAAE,YAAY,EAAE,GAAG,YAAY,EAAE,CAetE;AAED,0EAA0E;AAC1E,MAAM,WAAW,mBAAmB;IAClC,2EAA2E;IAC3E,iBAAiB,EAAE,MAAM,CAAC;IAC1B,iFAAiF;IACjF,mBAAmB,EAAE,OAAO,CAAC;IAC7B,6FAA6F;IAC7F,wBAAwB,CAAC,EAAE,OAAO,CAAC;IACnC,yEAAyE;IACzE,kBAAkB,CAAC,EAAE,QAAQ,CAAC;CAC/B;AAED,MAAM,MAAM,YAAY,GAAG,MAAM,GAAG,YAAY,GAAG,SAAS,CAAC;AAE7D,MAAM,WAAW,mBAAmB;IAClC,QAAQ,EAAE,YAAY,EAAE,CAAC;IACzB,OAAO,EAAE,YAAY,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,CAAC;CAC3C;AAED;;;;;;;GAOG;AACH,wBAAgB,qBAAqB,CACnC,GAAG,EAAE,YAAY,EAAE,EACnB,GAAG,EAAE,mBAAmB,GACvB,mBAAmB,CAmCrB"}
@@ -0,0 +1,182 @@
1
+ /**
2
+ * Shared skill-scan precision layer (cognium-ai#68).
3
+ *
4
+ * ## Why this exists
5
+ *
6
+ * The skill-scan false-positive fixes (skillsregistry #52/#53/#55/#57/#59/#63/#66)
7
+ * originally shipped inside `circle-pack/src/api/analysis/skill-runner.ts` — the
8
+ * HTTP handler for `POST /api/analyze/skill`. But the CLI (`cognium-ai
9
+ * analyze-skill`), the MCP tools, and the skills-validation gate adapter all go
10
+ * through `analyzeSkillBundle` in this package, which never had any of them. So
11
+ * two entry points returned two different verdicts for the same skill on the
12
+ * same engine (#68), and the validation gate scored a path with none of the
13
+ * precision work.
14
+ *
15
+ * The fix belongs in the inner layer: CLI / HTTP / MCP are just interfaces.
16
+ * These passes operate on `SkillFinding` (this package's model) so every
17
+ * interface inherits the same precision + verdict by construction.
18
+ *
19
+ * ## The two FP definitions
20
+ *
21
+ * - **Verdict FP** (product API): a skill is `VULNERABLE`. Severity caps fix
22
+ * this — capped-to-`low` findings fold into `trust_score` and never flip the
23
+ * verdict.
24
+ * - **Presence FP** (validation gate): a finding of a threat type *appears* on a
25
+ * safe fixture. Caps don't help (the finding still exists); only the
26
+ * suppressors (which DROP the finding) and genuine detector precision do.
27
+ *
28
+ * `finalizeSkillAnalysis` returns both the capped/suppressed `findings` and a
29
+ * `verdict` + `trust_score`, so a presence-based consumer can switch to the
30
+ * verdict (the cognium-ai-owned contract, skillsregistry#64) and a
31
+ * verdict-based consumer works directly.
32
+ */
33
+ const SEVERITY_RANK = { info: 0, low: 1, medium: 2, high: 3, critical: 4 };
34
+ /** Normalize a CWE id to the `CWE-<n>` form used by the sets below. */
35
+ function cweId(f) {
36
+ const c = f.cwe;
37
+ if (!c)
38
+ return undefined;
39
+ return /^cwe-/i.test(c) ? c.toUpperCase() : `CWE-${c}`;
40
+ }
41
+ /**
42
+ * skillsregistry#52 — CWE-117 (log injection) is emitted for any user input
43
+ * reaching a logger; on a stdio skill server it's low real-world risk but was
44
+ * the biggest single driver of false VULNERABLE verdicts. Cap to `low`. Opt out
45
+ * with SKILL_KEEP_LOG_INJECTION_SEVERITY=1. Mutates in place.
46
+ */
47
+ export function capLogInjectionSeverity(findings) {
48
+ if (process.env.SKILL_KEEP_LOG_INJECTION_SEVERITY === '1')
49
+ return;
50
+ for (const f of findings) {
51
+ if (cweId(f) === 'CWE-117' && f.severity !== 'low') {
52
+ (f.evidence ??= {}).originalSeverity = f.severity;
53
+ f.severity = 'low';
54
+ }
55
+ }
56
+ }
57
+ /**
58
+ * skillsregistry#66 — the biggest FP driver. circle-ir's taint analyzer marks an
59
+ * MCP tool's OWN parameters as untrusted attacker input, so a tool acting on its
60
+ * declared arguments (a shell tool running its command arg, a DB tool querying
61
+ * its arg) is flagged as injection. In a skill/MCP scan EVERY taint finding is
62
+ * the tool acting on its declared parameter — declared capability, not an
63
+ * attacker flow — so cap the whole taint population to `low`. Genuine
64
+ * *undeclared* over-reach is the job of the capability-mismatch finding, and
65
+ * behavioral-malware findings (`ransomware`, `fetch_and_execute`, …) carry their
66
+ * own type and are untouched. `SkillFindingType 'vulnerability'` is exactly the
67
+ * SAST taint set. Opt out with SKILL_KEEP_PARAM_SOURCE_SEVERITY=1. Mutates.
68
+ */
69
+ export function capTaintCapabilitySeverity(findings) {
70
+ if (process.env.SKILL_KEEP_PARAM_SOURCE_SEVERITY === '1')
71
+ return;
72
+ for (const f of findings) {
73
+ if (f.type === 'vulnerability' && f.severity !== 'low') {
74
+ (f.evidence ??= {}).originalSeverity = f.severity;
75
+ (f.evidence).capability_declared = true;
76
+ f.severity = 'low';
77
+ }
78
+ }
79
+ }
80
+ /**
81
+ * skillsregistry#53 — hardcoded-secret (CWE-798) false-positives on placeholder
82
+ * strings (`YOUR_API_KEY`, `sk_live_xxxxx`, `<your-key>`, `process.env.X`) in
83
+ * READMEs / help text / .env.example. A real embedded credential (PEM key, a
84
+ * live-shaped literal) still fires. Drop placeholder-shaped / doc-file findings.
85
+ * Opt out with SKILL_KEEP_PLACEHOLDER_SECRETS=1.
86
+ */
87
+ const PLACEHOLDER_SECRET_RE = /YOUR[_-]?[A-Z0-9]|your[_-]?(?:api|token|key|secret|pass)|x{5,}|<[^>]{0,40}(?:key|token|secret|password|api|pat)[^>]{0,40}>|\$\{[^}]+\}|process\.env\.|import\.meta\.env|os\.environ|changeme|placeholder|redacted/i;
88
+ const DOC_OR_EXAMPLE_FILE_RE = /(?:^|\/)(?:readme|changelog)|\.md$|\.env\.example$|\.example(?:\.[a-z0-9]+)?$|example\.env$/i;
89
+ export function suppressPlaceholderSecrets(findings) {
90
+ if (process.env.SKILL_KEEP_PLACEHOLDER_SECRETS === '1')
91
+ return findings;
92
+ return findings.filter((f) => {
93
+ if (cweId(f) !== 'CWE-798' && f.type !== 'hardcoded_secret')
94
+ return true;
95
+ if (DOC_OR_EXAMPLE_FILE_RE.test(f.artifact || ''))
96
+ return false;
97
+ const snippet = f.location?.snippet ||
98
+ f.evidence?.quote ||
99
+ f.description ||
100
+ '';
101
+ return !PLACEHOLDER_SECRET_RE.test(snippet);
102
+ });
103
+ }
104
+ /**
105
+ * skillsregistry#55 — CWE-601 open-redirect is a code-flow vuln (user URL → a
106
+ * redirect/`Location` sink); it can't be established from instruction TEXT. The
107
+ * instruction-safety phase was emitting it for a SKILL.md that merely NAMES a
108
+ * data-source URL. Drop CWE-601 findings that don't come from a real code sink
109
+ * (no code `location.line`). Opt out with SKILL_KEEP_INSTRUCTION_OPEN_REDIRECT=1.
110
+ */
111
+ export function suppressInstructionOpenRedirect(findings) {
112
+ if (process.env.SKILL_KEEP_INSTRUCTION_OPEN_REDIRECT === '1')
113
+ return findings;
114
+ return findings.filter((f) => {
115
+ if (cweId(f) !== 'CWE-601')
116
+ return true;
117
+ // A real open-redirect comes from a code sink (has a code artifact + line).
118
+ const fromCodeSink = !!f.location?.line && !/skill\.md$/i.test(f.artifact || '');
119
+ return fromCodeSink;
120
+ });
121
+ }
122
+ /**
123
+ * skillsregistry#63 — collapse duplicate finding rows, keeping the
124
+ * highest-confidence instance. Identity: (type, cwe, normalized artifact, line).
125
+ */
126
+ export function dedupFindings(findings) {
127
+ const norm = (p) => (p || '').replace(/\\/g, '/').replace(/^\.\//, '').toLowerCase();
128
+ const ordered = findings
129
+ .map((f, i) => ({ f, i }))
130
+ .sort((a, b) => (b.f.confidence ?? 0) - (a.f.confidence ?? 0) || a.i - b.i);
131
+ const seen = new Set();
132
+ const kept = new Set();
133
+ for (const { f } of ordered) {
134
+ const key = `${f.type}|${cweId(f) ?? ''}|${norm(f.artifact)}|${f.location?.line ?? ''}`;
135
+ if (seen.has(key))
136
+ continue;
137
+ seen.add(key);
138
+ kept.add(f);
139
+ }
140
+ return findings.filter((f) => kept.has(f));
141
+ }
142
+ /**
143
+ * Run the full precision layer + compute the cognium-ai-owned verdict/trust from
144
+ * a raw `SkillFinding[]`. Order: dedup → caps → suppressors → verdict.
145
+ *
146
+ * - skillsregistry#57: at trust ≥ 0.9 only HIGH/CRITICAL flips the verdict.
147
+ * - skillsregistry#59: no analyzed code AND no real instruction analysis ⇒
148
+ * UNKNOWN / trust 0 (unscannable content is not "scanned clean").
149
+ */
150
+ export function finalizeSkillAnalysis(raw, ctx) {
151
+ let findings = dedupFindings(raw);
152
+ capLogInjectionSeverity(findings);
153
+ capTaintCapabilitySeverity(findings);
154
+ findings = suppressPlaceholderSecrets(findings);
155
+ findings = suppressInstructionOpenRedirect(findings);
156
+ // Trust score — weighted severity penalty (mirrors the historical formula).
157
+ const weights = { critical: 1.0, high: 0.7, medium: 0.4, low: 0.2, info: 0.1 };
158
+ let penalty = 0;
159
+ for (const f of findings)
160
+ penalty += (weights[f.severity] ?? 0.2) * (f.confidence ?? 0.7);
161
+ const trustScore = Math.round(Math.max(0, 1 - penalty / 10) * 100) / 100;
162
+ // Coverage (skillsregistry#59) — fail-closed when nothing was actually analyzed.
163
+ const hasCodeCoverage = ctx.codeFilesAnalyzed > 0;
164
+ const hasInstructionCoverage = ctx.instructionAnalyzed && !ctx.skillMdIsDescriptionEcho;
165
+ const hasAnyCoverage = hasCodeCoverage || hasInstructionCoverage;
166
+ // Verdict (skillsregistry#57) — near-clean trust only flips on HIGH/CRITICAL.
167
+ const floor = ctx.verdictMinSeverity ?? 'medium';
168
+ const floorRank = SEVERITY_RANK[floor] ?? 2;
169
+ const substantive = findings.filter((f) => (SEVERITY_RANK[f.severity] ?? 1) >= floorRank);
170
+ const hasHighCrit = findings.some((f) => f.severity === 'high' || f.severity === 'critical');
171
+ const NEAR_CLEAN = 0.9;
172
+ const substantiveEnough = hasHighCrit || (trustScore < NEAR_CLEAN && substantive.length >= 1);
173
+ const verdict = !hasAnyCoverage ? 'UNKNOWN' : substantiveEnough ? 'VULNERABLE' : 'SAFE';
174
+ const effectiveTrust = hasAnyCoverage ? trustScore : 0;
175
+ const scanCoverage = !hasAnyCoverage
176
+ ? 'none'
177
+ : hasCodeCoverage && hasInstructionCoverage
178
+ ? 'full'
179
+ : 'partial';
180
+ return { findings, verdict, trustScore: effectiveTrust, scanCoverage };
181
+ }
182
+ //# sourceMappingURL=precision.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"precision.js","sourceRoot":"","sources":["../../src/skills/precision.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AAMH,MAAM,aAAa,GAA2B,EAAE,IAAI,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC;AAEnG,uEAAuE;AACvE,SAAS,KAAK,CAAC,CAAe;IAC5B,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC;IAChB,IAAI,CAAC,CAAC;QAAE,OAAO,SAAS,CAAC;IACzB,OAAO,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC;AACzD,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,uBAAuB,CAAC,QAAwB;IAC9D,IAAI,OAAO,CAAC,GAAG,CAAC,iCAAiC,KAAK,GAAG;QAAE,OAAO;IAClE,KAAK,MAAM,CAAC,IAAI,QAAQ,EAAE,CAAC;QACzB,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,SAAS,IAAI,CAAC,CAAC,QAAQ,KAAK,KAAK,EAAE,CAAC;YACnD,CAAC,CAAC,CAAC,QAAQ,KAAK,EAAE,CAAC,CAAC,gBAAgB,GAAG,CAAC,CAAC,QAAQ,CAAC;YAClD,CAAC,CAAC,QAAQ,GAAG,KAAK,CAAC;QACrB,CAAC;IACH,CAAC;AACH,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,0BAA0B,CAAC,QAAwB;IACjE,IAAI,OAAO,CAAC,GAAG,CAAC,gCAAgC,KAAK,GAAG;QAAE,OAAO;IACjE,KAAK,MAAM,CAAC,IAAI,QAAQ,EAAE,CAAC;QACzB,IAAI,CAAC,CAAC,IAAI,KAAK,eAAe,IAAI,CAAC,CAAC,QAAQ,KAAK,KAAK,EAAE,CAAC;YACvD,CAAC,CAAC,CAAC,QAAQ,KAAK,EAAE,CAAC,CAAC,gBAAgB,GAAG,CAAC,CAAC,QAAQ,CAAC;YAClD,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,mBAAmB,GAAG,IAAI,CAAC;YACxC,CAAC,CAAC,QAAQ,GAAG,KAAK,CAAC;QACrB,CAAC;IACH,CAAC;AACH,CAAC;AAED;;;;;;GAMG;AACH,MAAM,qBAAqB,GACzB,oNAAoN,CAAC;AACvN,MAAM,sBAAsB,GAC1B,8FAA8F,CAAC;AACjG,MAAM,UAAU,0BAA0B,CAAC,QAAwB;IACjE,IAAI,OAAO,CAAC,GAAG,CAAC,8BAA8B,KAAK,GAAG;QAAE,OAAO,QAAQ,CAAC;IACxE,OAAO,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE;QAC3B,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,SAAS,IAAI,CAAC,CAAC,IAAI,KAAK,kBAAkB;YAAE,OAAO,IAAI,CAAC;QACzE,IAAI,sBAAsB,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,IAAI,EAAE,CAAC;YAAE,OAAO,KAAK,CAAC;QAChE,MAAM,OAAO,GACV,CAAC,CAAC,QAAQ,EAAE,OAA8B;YAC1C,CAAC,CAAC,QAAQ,EAAE,KAA4B;YACzC,CAAC,CAAC,WAAW;YACb,EAAE,CAAC;QACL,OAAO,CAAC,qBAAqB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAC9C,CAAC,CAAC,CAAC;AACL,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,+BAA+B,CAAC,QAAwB;IACtE,IAAI,OAAO,CAAC,GAAG,CAAC,oCAAoC,KAAK,GAAG;QAAE,OAAO,QAAQ,CAAC;IAC9E,OAAO,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE;QAC3B,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,SAAS;YAAE,OAAO,IAAI,CAAC;QACxC,4EAA4E;QAC5E,MAAM,YAAY,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,IAAI,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC;QACjF,OAAO,YAAY,CAAC;IACtB,CAAC,CAAC,CAAC;AACL,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,aAAa,CAAC,QAAwB;IACpD,MAAM,IAAI,GAAG,CAAC,CAAqB,EAAE,EAAE,CACrC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;IACnE,MAAM,OAAO,GAAG,QAAQ;SACrB,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;SACzB,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IAC9E,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;IAC/B,MAAM,IAAI,GAAG,IAAI,GAAG,EAAgB,CAAC;IACrC,KAAK,MAAM,EAAE,CAAC,EAAE,IAAI,OAAO,EAAE,CAAC;QAC5B,MAAM,GAAG,GAAG,GAAG,CAAC,CAAC,IAAI,IAAI,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,IAAI,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,IAAI,IAAI,EAAE,EAAE,CAAC;QACxF,IAAI,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC;YAAE,SAAS;QAC5B,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACd,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IACd,CAAC;IACD,OAAO,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;AAC7C,CAAC;AAuBD;;;;;;;GAOG;AACH,MAAM,UAAU,qBAAqB,CACnC,GAAmB,EACnB,GAAwB;IAExB,IAAI,QAAQ,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC;IAClC,uBAAuB,CAAC,QAAQ,CAAC,CAAC;IAClC,0BAA0B,CAAC,QAAQ,CAAC,CAAC;IACrC,QAAQ,GAAG,0BAA0B,CAAC,QAAQ,CAAC,CAAC;IAChD,QAAQ,GAAG,+BAA+B,CAAC,QAAQ,CAAC,CAAC;IAErD,4EAA4E;IAC5E,MAAM,OAAO,GAA2B,EAAE,QAAQ,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC;IACvG,IAAI,OAAO,GAAG,CAAC,CAAC;IAChB,KAAK,MAAM,CAAC,IAAI,QAAQ;QAAE,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,UAAU,IAAI,GAAG,CAAC,CAAC;IAC1F,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,GAAG,OAAO,GAAG,EAAE,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC;IAEzE,iFAAiF;IACjF,MAAM,eAAe,GAAG,GAAG,CAAC,iBAAiB,GAAG,CAAC,CAAC;IAClD,MAAM,sBAAsB,GAAG,GAAG,CAAC,mBAAmB,IAAI,CAAC,GAAG,CAAC,wBAAwB,CAAC;IACxF,MAAM,cAAc,GAAG,eAAe,IAAI,sBAAsB,CAAC;IAEjE,8EAA8E;IAC9E,MAAM,KAAK,GAAG,GAAG,CAAC,kBAAkB,IAAI,QAAQ,CAAC;IACjD,MAAM,SAAS,GAAG,aAAa,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAC5C,MAAM,WAAW,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,IAAI,SAAS,CAAC,CAAC;IAC1F,MAAM,WAAW,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,MAAM,IAAI,CAAC,CAAC,QAAQ,KAAK,UAAU,CAAC,CAAC;IAC7F,MAAM,UAAU,GAAG,GAAG,CAAC;IACvB,MAAM,iBAAiB,GAAG,WAAW,IAAI,CAAC,UAAU,GAAG,UAAU,IAAI,WAAW,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC;IAE9F,MAAM,OAAO,GAAiB,CAAC,cAAc,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,MAAM,CAAC;IACtG,MAAM,cAAc,GAAG,cAAc,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;IACvD,MAAM,YAAY,GAAgC,CAAC,cAAc;QAC/D,CAAC,CAAC,MAAM;QACR,CAAC,CAAC,eAAe,IAAI,sBAAsB;YACzC,CAAC,CAAC,MAAM;YACR,CAAC,CAAC,SAAS,CAAC;IAEhB,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,YAAY,EAAE,CAAC;AACzE,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"skill-analyzer.d.ts","sourceRoot":"","sources":["../../src/skills/skill-analyzer.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EAEL,KAAK,mBAAmB,EAExB,KAAK,oBAAoB,EAE1B,MAAM,YAAY,CAAC;AAOpB;;;;;;GAMG;AACH,wBAAsB,kBAAkB,CACtC,SAAS,EAAE,MAAM,EACjB,OAAO,GAAE,oBAAyB,GACjC,OAAO,CAAC,mBAAmB,CAAC,CAuI9B"}
1
+ {"version":3,"file":"skill-analyzer.d.ts","sourceRoot":"","sources":["../../src/skills/skill-analyzer.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EAEL,KAAK,mBAAmB,EAExB,KAAK,oBAAoB,EAE1B,MAAM,YAAY,CAAC;AAQpB;;;;;;GAMG;AACH,wBAAsB,kBAAkB,CACtC,SAAS,EAAE,MAAM,EACjB,OAAO,GAAE,oBAAyB,GACjC,OAAO,CAAC,mBAAmB,CAAC,CAyJ9B"}
@@ -9,6 +9,7 @@ import { createDefaultExtractorRegistry } from '../extractors/index.js';
9
9
  import { detectCapabilityMismatches } from './capability-mismatch.js';
10
10
  import { classifyInstructionSafety } from './instruction-safety.js';
11
11
  import { detectCodeThreatPatterns } from './code-threat-patterns.js';
12
+ import { finalizeSkillAnalysis } from './precision.js';
12
13
  /**
13
14
  * Analyze a skill bundle
14
15
  *
@@ -18,6 +19,10 @@ import { detectCodeThreatPatterns } from './code-threat-patterns.js';
18
19
  */
19
20
  export async function analyzeSkillBundle(skillPath, options = {}) {
20
21
  const startTime = Date.now();
22
+ // #68/#59 — track whether the instruction phase actually ran on the SKILL.md,
23
+ // so a code-less bundle with no real instruction analysis scores UNKNOWN, not
24
+ // SAFE/1.0. Set true only after classifyInstructionSafety returns.
25
+ let instructionAnalyzed = false;
21
26
  // Default options
22
27
  const { enableCrossArtifact = true, enableVerification = true, enableInstructionSafety = true, enableCodeThreatPatterns = true, minConfidence = 0.7, minSeverity = 'low', onProgress, } = options;
23
28
  try {
@@ -79,6 +84,7 @@ export async function analyzeSkillBundle(skillPath, options = {}) {
79
84
  });
80
85
  try {
81
86
  findings.push(...(await classifyInstructionSafety(bundle.skillMd, bundle.name)));
87
+ instructionAnalyzed = true; // #68/#59 — the SKILL.md was actually analyzed
82
88
  }
83
89
  catch {
84
90
  // classifier already swallows its own errors; guard defensively.
@@ -91,10 +97,21 @@ export async function analyzeSkillBundle(skillPath, options = {}) {
91
97
  });
92
98
  // Phase 4: Filter by confidence and severity
93
99
  const filteredFindings = findings.filter((f) => f.confidence >= minConfidence && compareSeverity(f.severity, minSeverity) >= 0);
94
- // Phase 5: Calculate trust score
95
- const score = calculateTrustScore(filteredFindings);
100
+ // Phase 5 (#68) — shared precision layer + cognium-ai-owned verdict/trust.
101
+ // Runs the same caps / suppressors / dedup + verdict the circle-pack HTTP
102
+ // path uses, so the CLI / MCP / validation-gate path (which calls this
103
+ // function) inherits identical precision instead of raw finding presence.
104
+ // `skillMdIsDescriptionEcho: false` — this is a filesystem load, so the
105
+ // SKILL.md is always a real fetched file, never a caller's description echo.
106
+ const finalized = finalizeSkillAnalysis(filteredFindings, {
107
+ codeFilesAnalyzed: bundle.codeFiles?.length ?? 0,
108
+ instructionAnalyzed,
109
+ skillMdIsDescriptionEcho: false,
110
+ });
111
+ const finalFindings = finalized.findings;
112
+ const score = finalized.trustScore;
96
113
  // Phase 6: Generate recommendations
97
- const recommendations = generateRecommendations(filteredFindings);
114
+ const recommendations = generateRecommendations(finalFindings);
98
115
  onProgress?.({
99
116
  phase: 'reporting',
100
117
  progress: 100,
@@ -105,8 +122,10 @@ export async function analyzeSkillBundle(skillPath, options = {}) {
105
122
  skillId: bundle.skillId,
106
123
  name: bundle.name,
107
124
  version: bundle.version,
108
- findings: filteredFindings,
125
+ findings: finalFindings,
109
126
  score,
127
+ verdict: finalized.verdict,
128
+ scanCoverage: finalized.scanCoverage,
110
129
  recommendations,
111
130
  metadata: {
112
131
  timestamp: new Date().toISOString(),
@@ -1 +1 @@
1
- {"version":3,"file":"skill-analyzer.js","sourceRoot":"","sources":["../../src/skills/skill-analyzer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"skill-analyzer.js","sourceRoot":"","sources":["../../src/skills/skill-analyzer.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAUH,OAAO,EAAE,eAAe,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAC1E,OAAO,EAAE,8BAA8B,EAAE,MAAM,wBAAwB,CAAC;AACxE,OAAO,EAAE,0BAA0B,EAAE,MAAM,0BAA0B,CAAC;AACtE,OAAO,EAAE,yBAAyB,EAAE,MAAM,yBAAyB,CAAC;AACpE,OAAO,EAAE,wBAAwB,EAAE,MAAM,2BAA2B,CAAC;AACrE,OAAO,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAC;AAEvD;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,SAAiB,EACjB,UAAgC,EAAE;IAElC,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAC7B,8EAA8E;IAC9E,8EAA8E;IAC9E,mEAAmE;IACnE,IAAI,mBAAmB,GAAG,KAAK,CAAC;IAEhC,kBAAkB;IAClB,MAAM,EACJ,mBAAmB,GAAG,IAAI,EAC1B,kBAAkB,GAAG,IAAI,EACzB,uBAAuB,GAAG,IAAI,EAC9B,wBAAwB,GAAG,IAAI,EAC/B,aAAa,GAAG,GAAG,EACnB,WAAW,GAAG,KAAK,EACnB,UAAU,GACX,GAAG,OAAO,CAAC;IAEZ,IAAI,CAAC;QACH,6BAA6B;QAC7B,UAAU,EAAE,CAAC;YACX,KAAK,EAAE,SAAS;YAChB,QAAQ,EAAE,CAAC;YACX,OAAO,EAAE,yBAAyB;SACnC,CAAC,CAAC;QAEH,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC,SAAS,CAAC,CAAC;QAEhD,4BAA4B;QAC5B,MAAM,gBAAgB,GAAG,MAAM,mBAAmB,CAAC,MAAM,CAAC,CAAC;QAC3D,IAAI,gBAAgB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAChC,MAAM,IAAI,KAAK,CAAC,yBAAyB,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC1E,CAAC;QAED,UAAU,EAAE,CAAC;YACX,KAAK,EAAE,SAAS;YAChB,QAAQ,EAAE,EAAE;YACZ,OAAO,EAAE,iBAAiB,MAAM,CAAC,IAAI,EAAE;SACxC,CAAC,CAAC;QAEH,+CAA+C;QAC/C,UAAU,EAAE,CAAC;YACX,KAAK,EAAE,YAAY;YACnB,QAAQ,EAAE,EAAE;YACZ,OAAO,EAAE,8BAA8B;SACxC,CAAC,CAAC;QAEH,MAAM,SAAS,GAAG,MAAM,mBAAmB,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;QAEhE,UAAU,EAAE,CAAC;YACX,KAAK,EAAE,YAAY;YACnB,QAAQ,EAAE,EAAE;YACZ,OAAO,EAAE,aAAa,SAAS,CAAC,MAAM,YAAY;SACnD,CAAC,CAAC;QAEH,sCAAsC;QACtC,UAAU,EAAE,CAAC;YACX,KAAK,EAAE,WAAW;YAClB,QAAQ,EAAE,EAAE;YACZ,OAAO,EAAE,2BAA2B;SACrC,CAAC,CAAC;QAEH,MAAM,QAAQ,GAAG,MAAM,yBAAyB,CAC9C,MAAM,EACN,SAAS,EACT,mBAAmB,EACnB,UAAU,CACX,CAAC;QAEF,2EAA2E;QAC3E,sEAAsE;QACtE,qEAAqE;QACrE,IAAI,wBAAwB,EAAE,CAAC;YAC7B,UAAU,EAAE,CAAC;gBACX,KAAK,EAAE,WAAW;gBAClB,QAAQ,EAAE,EAAE;gBACZ,OAAO,EAAE,uCAAuC;aACjD,CAAC,CAAC;YACH,QAAQ,CAAC,IAAI,CAAC,GAAG,wBAAwB,CAAC,MAAM,CAAC,CAAC,CAAC;QACrD,CAAC;QAED,sEAAsE;QACtE,oEAAoE;QACpE,qCAAqC;QACrC,IAAI,uBAAuB,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;YAC9C,UAAU,EAAE,CAAC;gBACX,KAAK,EAAE,WAAW;gBAClB,QAAQ,EAAE,EAAE;gBACZ,OAAO,EAAE,uDAAuD;aACjE,CAAC,CAAC;YACH,IAAI,CAAC;gBACH,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,yBAAyB,CAAC,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;gBACjF,mBAAmB,GAAG,IAAI,CAAC,CAAC,+CAA+C;YAC7E,CAAC;YAAC,MAAM,CAAC;gBACP,iEAAiE;YACnE,CAAC;QACH,CAAC;QAED,UAAU,EAAE,CAAC;YACX,KAAK,EAAE,WAAW;YAClB,QAAQ,EAAE,EAAE;YACZ,OAAO,EAAE,SAAS,QAAQ,CAAC,MAAM,mBAAmB;SACrD,CAAC,CAAC;QAEH,6CAA6C;QAC7C,MAAM,gBAAgB,GAAG,QAAQ,CAAC,MAAM,CACtC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,IAAI,aAAa,IAAI,eAAe,CAAC,CAAC,CAAC,QAAQ,EAAE,WAAW,CAAC,IAAI,CAAC,CACtF,CAAC;QAEF,2EAA2E;QAC3E,0EAA0E;QAC1E,uEAAuE;QACvE,0EAA0E;QAC1E,wEAAwE;QACxE,6EAA6E;QAC7E,MAAM,SAAS,GAAG,qBAAqB,CAAC,gBAAgB,EAAE;YACxD,iBAAiB,EAAE,MAAM,CAAC,SAAS,EAAE,MAAM,IAAI,CAAC;YAChD,mBAAmB;YACnB,wBAAwB,EAAE,KAAK;SAChC,CAAC,CAAC;QACH,MAAM,aAAa,GAAG,SAAS,CAAC,QAAQ,CAAC;QACzC,MAAM,KAAK,GAAG,SAAS,CAAC,UAAU,CAAC;QAEnC,oCAAoC;QACpC,MAAM,eAAe,GAAG,uBAAuB,CAAC,aAAa,CAAC,CAAC;QAE/D,UAAU,EAAE,CAAC;YACX,KAAK,EAAE,WAAW;YAClB,QAAQ,EAAE,GAAG;YACb,OAAO,EAAE,mBAAmB;SAC7B,CAAC,CAAC;QAEH,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAE3B,OAAO;YACL,OAAO,EAAE,MAAM,CAAC,OAAO;YACvB,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,OAAO,EAAE,MAAM,CAAC,OAAO;YACvB,QAAQ,EAAE,aAAa;YACvB,KAAK;YACL,OAAO,EAAE,SAAS,CAAC,OAAO;YAC1B,YAAY,EAAE,SAAS,CAAC,YAAY;YACpC,eAAe;YACf,QAAQ,EAAE;gBACR,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;gBACnC,UAAU,EAAE,OAAO,GAAG,SAAS;gBAC/B,iBAAiB,EAAE,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC;gBACnD,cAAc,EAAE,CAAC,GAAG,IAAI,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC;aAChE;SACF,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,IAAI,KAAK,CAAC,0BAA0B,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;IAC9F,CAAC;AACH,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,mBAAmB,CAChC,MAAmB,EACnB,UAAkC;IAElC,MAAM,SAAS,GAAwB,EAAE,CAAC;IAC1C,MAAM,QAAQ,GAAG,MAAM,8BAA8B,EAAE,CAAC;IAExD,wBAAwB;IACxB,MAAM,gBAAgB,GAAG,QAAQ,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;IAC5D,IAAI,gBAAgB,EAAE,CAAC;QACrB,UAAU,EAAE,CAAC;YACX,KAAK,EAAE,YAAY;YACnB,QAAQ,EAAE,UAAU;YACpB,QAAQ,EAAE,EAAE;YACZ,OAAO,EAAE,6BAA6B;SACvC,CAAC,CAAC;QAEH,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAC7B,MAAM,EAAE,GAAG,MAAM,gBAAgB,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;QACtE,MAAM,gBAAgB,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;QAEhD,SAAS,CAAC,IAAI,CAAC;YACb,QAAQ,EAAE,UAAU;YACpB,EAAE;YACF,SAAS,EAAE,gBAAgB,CAAC,IAAI;YAChC,gBAAgB;SACjB,CAAC,CAAC;IACL,CAAC;IAED,0BAA0B;IAC1B,IAAI,YAAY,GAAG,CAAC,CAAC;IACrB,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,SAAS,EAAE,CAAC;QACpC,MAAM,SAAS,GAAG,QAAQ,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACpD,IAAI,SAAS,EAAE,CAAC;YACd,YAAY,EAAE,CAAC;YACf,MAAM,eAAe,GAAG,EAAE,GAAG,CAAC,YAAY,GAAG,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC;YAE3E,UAAU,EAAE,CAAC;gBACX,KAAK,EAAE,YAAY;gBACnB,QAAQ,EAAE,IAAI,CAAC,IAAI;gBACnB,QAAQ,EAAE,eAAe;gBACzB,OAAO,EAAE,mBAAmB,IAAI,CAAC,IAAI,KAAK;aAC3C,CAAC,CAAC;YAEH,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YAC7B,MAAM,EAAE,GAAG,MAAM,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;YAC5D,MAAM,gBAAgB,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;YAEhD,SAAS,CAAC,IAAI,CAAC;gBACb,QAAQ,EAAE,IAAI,CAAC,IAAI;gBACnB,EAAE;gBACF,SAAS,EAAE,SAAS,CAAC,IAAI;gBACzB,gBAAgB;aACjB,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,yBAAyB,CACtC,MAAmB,EACnB,SAA8B,EAC9B,mBAA4B,EAC5B,UAAkC;IAElC,MAAM,QAAQ,GAAmB,EAAE,CAAC;IAEpC,wDAAwD;IACxD,2EAA2E;IAC3E,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;QACjC,IAAI,QAAQ,CAAC,QAAQ,KAAK,UAAU,EAAE,CAAC;YACrC,oFAAoF;YACpF,wEAAwE;YACxE,SAAS;QACX,CAAC;QAED,MAAM,gBAAgB,GAAG,qBAAqB,CAAC,QAAQ,CAAC,EAAE,EAAE,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAC/E,QAAQ,CAAC,IAAI,CAAC,GAAG,gBAAgB,CAAC,CAAC;IACrC,CAAC;IAED,0DAA0D;IAC1D,IAAI,mBAAmB,EAAE,CAAC;QACxB,UAAU,EAAE,CAAC;YACX,KAAK,EAAE,WAAW;YAClB,QAAQ,EAAE,EAAE;YACZ,OAAO,EAAE,oCAAoC;SAC9C,CAAC,CAAC;QAEH,MAAM,SAAS,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,UAAU,CAAC,EAAE,EAAE,CAAC;QACvE,MAAM,OAAO,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,UAAU,CAAC,CAAC;QAEnE,IAAI,SAAS,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACpC,MAAM,UAAU,GAAG,MAAM,0BAA0B,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;YACxE,QAAQ,CAAC,IAAI,CAAC,GAAG,UAAU,CAAC,CAAC;QAC/B,CAAC;IACH,CAAC;IAED,oEAAoE;IACpE,MAAM,YAAY,GAAG,mBAAmB,CAAC,QAAQ,CAAC,CAAC;IAEnD,OAAO,YAAY,CAAC;AACtB,CAAC;AAED;;GAEG;AACH,SAAS,qBAAqB,CAAC,EAAY,EAAE,QAAgB;IAC3D,MAAM,QAAQ,GAAmB,EAAE,CAAC;IAEpC,oDAAoD;IACpD,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC;IAEpC,wDAAwD;IACxD,KAAK,MAAM,IAAI,IAAI,KAAK,IAAI,EAAE,EAAE,CAAC;QAC/B,8DAA8D;QAC9D,IAAI,mCAAmC,CAAC,IAAI,CAAC,EAAE,CAAC;YAC9C,SAAS;QACX,CAAC;QAED,2CAA2C;QAC3C,MAAM,QAAQ,GAAG,kBAAkB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAE9C,QAAQ,CAAC,IAAI,CAAC;YACZ,IAAI,EAAE,eAAe;YACrB,QAAQ;YACR,QAAQ;YACR,KAAK,EAAE,GAAG,IAAI,CAAC,IAAI,gBAAgB;YACnC,WAAW,EAAE,aAAa,IAAI,CAAC,IAAI,OAAO,IAAI,CAAC,QAAQ,EAAE;YACzD,QAAQ,EAAE;gBACR,IAAI;gBACJ,GAAG,EAAE,IAAI,CAAC,GAAG;gBACb,QAAQ,EAAE,IAAI,CAAC,QAAQ;aACxB;YACD,UAAU,EAAE,IAAI,CAAC,UAAU,IAAI,GAAG;YAClC,GAAG,EAAE,IAAI,CAAC,GAAG;YACb,QAAQ,EAAE;gBACR,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,OAAO,EAAE,IAAI,CAAC,QAAQ;aACvB;SACF,CAAC,CAAC;IACL,CAAC;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,mCAAmC,CAAC,IAAS;IACpD,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC;IAEpD,6FAA6F;IAC7F,IAAI,IAAI,CAAC,IAAI,KAAK,gBAAgB,IAAI,IAAI,CAAC,GAAG,KAAK,QAAQ,EAAE,CAAC;QAC5D,IACE,QAAQ,CAAC,QAAQ,CAAC,cAAc,CAAC;YACjC,QAAQ,CAAC,QAAQ,CAAC,eAAe,CAAC;YAClC,QAAQ,CAAC,QAAQ,CAAC,cAAc,CAAC;YACjC,QAAQ,CAAC,QAAQ,CAAC,eAAe,CAAC;YAClC,QAAQ,CAAC,QAAQ,CAAC,WAAW,CAAC;YAC9B,QAAQ,CAAC,QAAQ,CAAC,WAAW,CAAC,EAC9B,CAAC;YACD,OAAO,IAAI,CAAC;QACd,CAAC;QAED,wCAAwC;QACxC,IAAI,QAAQ,CAAC,QAAQ,CAAC,cAAc,CAAC,IAAI,QAAQ,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;YACvE,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;GAEG;AACH,SAAS,kBAAkB,CAAC,GAAW;IACrC,8DAA8D;IAC9D,IAAI,GAAG,CAAC,KAAK,CAAC,gBAAgB,CAAC,EAAE,CAAC;QAChC,OAAO,UAAU,CAAC;IACpB,CAAC;IAED,mCAAmC;IACnC,IAAI,GAAG,CAAC,KAAK,CAAC,iBAAiB,CAAC,EAAE,CAAC;QACjC,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,kBAAkB;IAClB,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED;;;;;GAKG;AACH,SAAS,mBAAmB,CAAC,QAAwB;IACnD,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC1B,OAAO,GAAG,CAAC,CAAC,gBAAgB;IAC9B,CAAC;IAED,mBAAmB;IACnB,MAAM,OAAO,GAAG;QACd,QAAQ,EAAE,GAAG;QACb,IAAI,EAAE,GAAG;QACT,MAAM,EAAE,GAAG;QACX,GAAG,EAAE,GAAG;QACR,IAAI,EAAE,GAAG;KACV,CAAC;IAEF,6BAA6B;IAC7B,IAAI,OAAO,GAAG,CAAC,CAAC;IAChB,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;QAC/B,MAAM,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QACzC,MAAM,kBAAkB,GAAG,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC;QACvD,OAAO,IAAI,kBAAkB,CAAC;IAChC,CAAC;IAED,uEAAuE;IACvE,MAAM,UAAU,GAAG,IAAI,CAAC;IACxB,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,GAAG,OAAO,GAAG,UAAU,CAAC,CAAC;IAEtD,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,CAAC,4BAA4B;AACpE,CAAC;AAED;;GAEG;AACH,SAAS,uBAAuB,CAAC,QAAwB;IACvD,MAAM,eAAe,GAAa,EAAE,CAAC;IAErC,yBAAyB;IACzB,MAAM,MAAM,GAAG,IAAI,GAAG,EAA0B,CAAC;IACjD,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;QAC/B,MAAM,QAAQ,GAAG,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;QAChD,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACvB,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;IACrC,CAAC;IAED,oCAAoC;IACpC,IAAI,MAAM,CAAC,GAAG,CAAC,qBAAqB,CAAC,EAAE,CAAC;QACtC,eAAe,CAAC,IAAI,CAClB,kFAAkF,CACnF,CAAC;IACJ,CAAC;IAED,IAAI,MAAM,CAAC,GAAG,CAAC,eAAe,CAAC,EAAE,CAAC;QAChC,MAAM,YAAY,GAAG,MAAM,CAAC,GAAG,CAAC,eAAe,CAAE,CAAC;QAClD,MAAM,WAAW,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,UAAU,CAAC,CAAC;QACxE,IAAI,WAAW,EAAE,CAAC;YAChB,eAAe,CAAC,IAAI,CAAC,gDAAgD,CAAC,CAAC;QACzE,CAAC;QACD,eAAe,CAAC,IAAI,CAAC,oEAAoE,CAAC,CAAC;IAC7F,CAAC;IAED,IAAI,MAAM,CAAC,GAAG,CAAC,sBAAsB,CAAC,EAAE,CAAC;QACvC,eAAe,CAAC,IAAI,CAAC,qEAAqE,CAAC,CAAC;IAC9F,CAAC;IAED,IAAI,MAAM,CAAC,GAAG,CAAC,kBAAkB,CAAC,EAAE,CAAC;QACnC,eAAe,CAAC,IAAI,CAAC,wDAAwD,CAAC,CAAC;IACjF,CAAC;IAED,yDAAyD;IACzD,IAAI,MAAM,CAAC,GAAG,CAAC,uBAAuB,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,yBAAyB,CAAC,EAAE,CAAC;QACjF,eAAe,CAAC,IAAI,CAClB,sGAAsG,CACvG,CAAC;IACJ,CAAC;IACD,IAAI,MAAM,CAAC,GAAG,CAAC,gBAAgB,CAAC,EAAE,CAAC;QACjC,eAAe,CAAC,IAAI,CAAC,wEAAwE,CAAC,CAAC;IACjG,CAAC;IACD,IAAI,MAAM,CAAC,GAAG,CAAC,YAAY,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,uBAAuB,CAAC,EAAE,CAAC;QACpE,eAAe,CAAC,IAAI,CAAC,qFAAqF,CAAC,CAAC;IAC9G,CAAC;IACD,IAAI,MAAM,CAAC,GAAG,CAAC,sBAAsB,CAAC,EAAE,CAAC;QACvC,eAAe,CAAC,IAAI,CAAC,8FAA8F,CAAC,CAAC;IACvH,CAAC;IAED,IAAI,eAAe,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACjC,eAAe,CAAC,IAAI,CAAC,2DAA2D,CAAC,CAAC;IACpF,CAAC;IAED,OAAO,eAAe,CAAC;AACzB,CAAC;AAED;;;GAGG;AACH,SAAS,eAAe,CACtB,CAAkD,EAClD,CAAkD;IAElD,MAAM,KAAK,GAAG,CAAC,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU,CAAC,CAAC;IAC5D,MAAM,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAChC,MAAM,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAChC,OAAO,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,CAAC;AACpC,CAAC;AAED;;;;;;;;;;GAUG;AACH,SAAS,mBAAmB,CAAC,QAAwB;IACnD,MAAM,SAAS,GAAG,IAAI,GAAG,EAAwB,CAAC;IAElD,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;QAC/B,oBAAoB;QACpB,MAAM,GAAG,GAAG;YACV,OAAO,CAAC,QAAQ;YAChB,OAAO,CAAC,IAAI;YACZ,OAAO,CAAC,GAAG,IAAI,QAAQ;YACvB,OAAO,CAAC,QAAQ,EAAE,IAAI,IAAI,SAAS;SACpC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAEZ,MAAM,QAAQ,GAAG,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAEpC,0CAA0C;QAC1C,IAAI,CAAC,QAAQ,IAAI,OAAO,CAAC,UAAU,GAAG,QAAQ,CAAC,UAAU,EAAE,CAAC;YAC1D,SAAS,CAAC,GAAG,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;QAC9B,CAAC;IACH,CAAC;IAED,OAAO,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC,CAAC;AACxC,CAAC"}
@@ -106,6 +106,14 @@ export interface SkillAnalysisResult {
106
106
  findings: SkillFinding[];
107
107
  /** Trust score (0.0-1.0) */
108
108
  score: number;
109
+ /**
110
+ * cognium-ai-owned verdict (#68). SAFE / VULNERABLE / UNKNOWN, computed by the
111
+ * shared precision layer so every interface (CLI / HTTP / MCP / validation
112
+ * gate) agrees. Consumers should gate on this, not raw finding presence.
113
+ */
114
+ verdict?: 'SAFE' | 'VULNERABLE' | 'UNKNOWN';
115
+ /** Coverage of the analysis — `none` ⇒ nothing analyzable was scanned (#59). */
116
+ scanCoverage?: 'none' | 'partial' | 'full';
109
117
  /** Actionable recommendations */
110
118
  recommendations: string[];
111
119
  /** Analysis metadata */
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/skills/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/skills/types.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "circle-ir-ai",
3
- "version": "4.0.6",
3
+ "version": "4.1.0",
4
4
  "description": "LLM-enhanced SAST analysis built on circle-ir",
5
5
  "main": "dist/index.js",
6
6
  "module": "dist/index.js",
@@ -100,7 +100,7 @@
100
100
  "@ax-llm/ax": "^20.0.0",
101
101
  "@cognium/project-profile-detect": "^1.1.0",
102
102
  "@mastra/core": "^1.18.0",
103
- "circle-ir": "4.7.0",
103
+ "circle-ir": "4.7.1",
104
104
  "minimatch": "^10.2.5",
105
105
  "p-queue": "^9.1.0"
106
106
  },