vaspera 2.14.0 → 2.16.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.
Files changed (265) hide show
  1. package/CHANGELOG.md +62 -0
  2. package/README.md +15 -2
  3. package/dist/__tests__/certification/agent-certificate-e2e.test.d.ts +2 -0
  4. package/dist/__tests__/certification/agent-certificate-e2e.test.d.ts.map +1 -0
  5. package/dist/__tests__/certification/agent-certificate-e2e.test.js +90 -0
  6. package/dist/__tests__/certification/agent-certificate-e2e.test.js.map +1 -0
  7. package/dist/__tests__/certification/agent-certificate-map.test.d.ts +2 -0
  8. package/dist/__tests__/certification/agent-certificate-map.test.d.ts.map +1 -0
  9. package/dist/__tests__/certification/agent-certificate-map.test.js +107 -0
  10. package/dist/__tests__/certification/agent-certificate-map.test.js.map +1 -0
  11. package/dist/__tests__/certification/agent-certificate.test.d.ts +2 -0
  12. package/dist/__tests__/certification/agent-certificate.test.d.ts.map +1 -0
  13. package/dist/__tests__/certification/agent-certificate.test.js +78 -0
  14. package/dist/__tests__/certification/agent-certificate.test.js.map +1 -0
  15. package/dist/__tests__/certification/verify-endpoint.test.d.ts +2 -0
  16. package/dist/__tests__/certification/verify-endpoint.test.d.ts.map +1 -0
  17. package/dist/__tests__/certification/verify-endpoint.test.js +81 -0
  18. package/dist/__tests__/certification/verify-endpoint.test.js.map +1 -0
  19. package/dist/__tests__/compliance/ai-frameworks.test.d.ts +2 -0
  20. package/dist/__tests__/compliance/ai-frameworks.test.d.ts.map +1 -0
  21. package/dist/__tests__/compliance/ai-frameworks.test.js +87 -0
  22. package/dist/__tests__/compliance/ai-frameworks.test.js.map +1 -0
  23. package/dist/__tests__/eval/llm-analyzer.test.d.ts +2 -0
  24. package/dist/__tests__/eval/llm-analyzer.test.d.ts.map +1 -0
  25. package/dist/__tests__/eval/llm-analyzer.test.js +93 -0
  26. package/dist/__tests__/eval/llm-analyzer.test.js.map +1 -0
  27. package/dist/__tests__/eval/redteam-harness.test.d.ts +2 -0
  28. package/dist/__tests__/eval/redteam-harness.test.d.ts.map +1 -0
  29. package/dist/__tests__/eval/redteam-harness.test.js +136 -0
  30. package/dist/__tests__/eval/redteam-harness.test.js.map +1 -0
  31. package/dist/__tests__/evidence/evidence.test.d.ts +2 -0
  32. package/dist/__tests__/evidence/evidence.test.d.ts.map +1 -0
  33. package/dist/__tests__/evidence/evidence.test.js +240 -0
  34. package/dist/__tests__/evidence/evidence.test.js.map +1 -0
  35. package/dist/__tests__/history/decisions.test.d.ts +2 -0
  36. package/dist/__tests__/history/decisions.test.d.ts.map +1 -0
  37. package/dist/__tests__/history/decisions.test.js +54 -0
  38. package/dist/__tests__/history/decisions.test.js.map +1 -0
  39. package/dist/__tests__/http-auth.test.d.ts +2 -0
  40. package/dist/__tests__/http-auth.test.d.ts.map +1 -0
  41. package/dist/__tests__/http-auth.test.js +55 -0
  42. package/dist/__tests__/http-auth.test.js.map +1 -0
  43. package/dist/__tests__/http-policy.test.d.ts +2 -0
  44. package/dist/__tests__/http-policy.test.d.ts.map +1 -0
  45. package/dist/__tests__/http-policy.test.js +69 -0
  46. package/dist/__tests__/http-policy.test.js.map +1 -0
  47. package/dist/__tests__/http-server-transport.test.d.ts +2 -0
  48. package/dist/__tests__/http-server-transport.test.d.ts.map +1 -0
  49. package/dist/__tests__/http-server-transport.test.js +132 -0
  50. package/dist/__tests__/http-server-transport.test.js.map +1 -0
  51. package/dist/__tests__/integration/destructive-guards.test.d.ts +2 -0
  52. package/dist/__tests__/integration/destructive-guards.test.d.ts.map +1 -0
  53. package/dist/__tests__/integration/destructive-guards.test.js +49 -0
  54. package/dist/__tests__/integration/destructive-guards.test.js.map +1 -0
  55. package/dist/__tests__/logger-redaction.test.d.ts +2 -0
  56. package/dist/__tests__/logger-redaction.test.d.ts.map +1 -0
  57. package/dist/__tests__/logger-redaction.test.js +74 -0
  58. package/dist/__tests__/logger-redaction.test.js.map +1 -0
  59. package/dist/__tests__/manifest-schema.test.d.ts +2 -0
  60. package/dist/__tests__/manifest-schema.test.d.ts.map +1 -0
  61. package/dist/__tests__/manifest-schema.test.js +43 -0
  62. package/dist/__tests__/manifest-schema.test.js.map +1 -0
  63. package/dist/__tests__/scanners/builtin-rules.test.d.ts +2 -0
  64. package/dist/__tests__/scanners/builtin-rules.test.d.ts.map +1 -0
  65. package/dist/__tests__/scanners/builtin-rules.test.js +51 -0
  66. package/dist/__tests__/scanners/builtin-rules.test.js.map +1 -0
  67. package/dist/__tests__/scanners/runtime/golden-path-runner.test.js +13 -1
  68. package/dist/__tests__/scanners/runtime/golden-path-runner.test.js.map +1 -1
  69. package/dist/__tests__/tool-guard.test.d.ts +2 -0
  70. package/dist/__tests__/tool-guard.test.d.ts.map +1 -0
  71. package/dist/__tests__/tool-guard.test.js +97 -0
  72. package/dist/__tests__/tool-guard.test.js.map +1 -0
  73. package/dist/__tests__/util/contained-file.test.d.ts +2 -0
  74. package/dist/__tests__/util/contained-file.test.d.ts.map +1 -0
  75. package/dist/__tests__/util/contained-file.test.js +78 -0
  76. package/dist/__tests__/util/contained-file.test.js.map +1 -0
  77. package/dist/__tests__/util/subprocess.test.d.ts +2 -0
  78. package/dist/__tests__/util/subprocess.test.d.ts.map +1 -0
  79. package/dist/__tests__/util/subprocess.test.js +48 -0
  80. package/dist/__tests__/util/subprocess.test.js.map +1 -0
  81. package/dist/action/diff-mode.d.ts.map +1 -1
  82. package/dist/action/diff-mode.js +31 -12
  83. package/dist/action/diff-mode.js.map +1 -1
  84. package/dist/certification/agent-certificate-map.d.ts +51 -0
  85. package/dist/certification/agent-certificate-map.d.ts.map +1 -0
  86. package/dist/certification/agent-certificate-map.js +265 -0
  87. package/dist/certification/agent-certificate-map.js.map +1 -0
  88. package/dist/certification/agent-certificate-sample.d.ts +25 -0
  89. package/dist/certification/agent-certificate-sample.d.ts.map +1 -0
  90. package/dist/certification/agent-certificate-sample.js +207 -0
  91. package/dist/certification/agent-certificate-sample.js.map +1 -0
  92. package/dist/certification/agent-certificate.d.ts +1981 -0
  93. package/dist/certification/agent-certificate.d.ts.map +1 -0
  94. package/dist/certification/agent-certificate.js +309 -0
  95. package/dist/certification/agent-certificate.js.map +1 -0
  96. package/dist/certification/autofix.d.ts.map +1 -1
  97. package/dist/certification/autofix.js +5 -3
  98. package/dist/certification/autofix.js.map +1 -1
  99. package/dist/certification/store.d.ts.map +1 -1
  100. package/dist/certification/store.js +5 -2
  101. package/dist/certification/store.js.map +1 -1
  102. package/dist/certification/verify-endpoint.d.ts +48 -0
  103. package/dist/certification/verify-endpoint.d.ts.map +1 -0
  104. package/dist/certification/verify-endpoint.js +79 -0
  105. package/dist/certification/verify-endpoint.js.map +1 -0
  106. package/dist/compliance/index.d.ts +2 -0
  107. package/dist/compliance/index.d.ts.map +1 -1
  108. package/dist/compliance/index.js +4 -0
  109. package/dist/compliance/index.js.map +1 -1
  110. package/dist/compliance/iso42001.d.ts +21 -0
  111. package/dist/compliance/iso42001.d.ts.map +1 -0
  112. package/dist/compliance/iso42001.js +160 -0
  113. package/dist/compliance/iso42001.js.map +1 -0
  114. package/dist/compliance/mapper.d.ts.map +1 -1
  115. package/dist/compliance/mapper.js +12 -0
  116. package/dist/compliance/mapper.js.map +1 -1
  117. package/dist/compliance/nist-ai-rmf.d.ts +20 -0
  118. package/dist/compliance/nist-ai-rmf.d.ts.map +1 -0
  119. package/dist/compliance/nist-ai-rmf.js +140 -0
  120. package/dist/compliance/nist-ai-rmf.js.map +1 -0
  121. package/dist/config/flags.d.ts +4 -4
  122. package/dist/eval/fixtures.d.ts.map +1 -1
  123. package/dist/eval/fixtures.js +161 -119
  124. package/dist/eval/fixtures.js.map +1 -1
  125. package/dist/eval/fixtures.test.js +4 -2
  126. package/dist/eval/fixtures.test.js.map +1 -1
  127. package/dist/eval/llm-analyzer.d.ts +40 -0
  128. package/dist/eval/llm-analyzer.d.ts.map +1 -0
  129. package/dist/eval/llm-analyzer.js +154 -0
  130. package/dist/eval/llm-analyzer.js.map +1 -0
  131. package/dist/eval/redteam-harness.d.ts +95 -0
  132. package/dist/eval/redteam-harness.d.ts.map +1 -0
  133. package/dist/eval/redteam-harness.js +137 -0
  134. package/dist/eval/redteam-harness.js.map +1 -0
  135. package/dist/evidence/collector.d.ts.map +1 -1
  136. package/dist/evidence/collector.js +21 -1
  137. package/dist/evidence/collector.js.map +1 -1
  138. package/dist/evidence/store.d.ts.map +1 -1
  139. package/dist/evidence/store.js +29 -5
  140. package/dist/evidence/store.js.map +1 -1
  141. package/dist/evidence/types.d.ts +16 -9
  142. package/dist/evidence/types.d.ts.map +1 -1
  143. package/dist/history/decisions.d.ts +63 -0
  144. package/dist/history/decisions.d.ts.map +1 -0
  145. package/dist/history/decisions.js +60 -0
  146. package/dist/history/decisions.js.map +1 -0
  147. package/dist/history/index.d.ts +2 -0
  148. package/dist/history/index.d.ts.map +1 -1
  149. package/dist/history/index.js +2 -0
  150. package/dist/history/index.js.map +1 -1
  151. package/dist/history/types.d.ts +34 -5
  152. package/dist/history/types.d.ts.map +1 -1
  153. package/dist/history/types.js +2 -0
  154. package/dist/history/types.js.map +1 -1
  155. package/dist/http-auth.d.ts +22 -0
  156. package/dist/http-auth.d.ts.map +1 -0
  157. package/dist/http-auth.js +58 -0
  158. package/dist/http-auth.js.map +1 -0
  159. package/dist/http-policy.d.ts +30 -0
  160. package/dist/http-policy.d.ts.map +1 -0
  161. package/dist/http-policy.js +54 -0
  162. package/dist/http-policy.js.map +1 -0
  163. package/dist/http-server.js +195 -12
  164. package/dist/http-server.js.map +1 -1
  165. package/dist/index.d.ts.map +1 -1
  166. package/dist/index.js +257 -16
  167. package/dist/index.js.map +1 -1
  168. package/dist/logger.d.ts.map +1 -1
  169. package/dist/logger.js +56 -2
  170. package/dist/logger.js.map +1 -1
  171. package/dist/plugins/types.d.ts +2 -2
  172. package/dist/scanners/agent/prompt-injection-fuzzer.d.ts.map +1 -1
  173. package/dist/scanners/agent/prompt-injection-fuzzer.js +26 -0
  174. package/dist/scanners/agent/prompt-injection-fuzzer.js.map +1 -1
  175. package/dist/scanners/agent/types.d.ts +10 -10
  176. package/dist/scanners/bandit.d.ts.map +1 -1
  177. package/dist/scanners/bandit.js +35 -29
  178. package/dist/scanners/bandit.js.map +1 -1
  179. package/dist/scanners/binary-analysis.d.ts.map +1 -1
  180. package/dist/scanners/binary-analysis.js +24 -49
  181. package/dist/scanners/binary-analysis.js.map +1 -1
  182. package/dist/scanners/brakeman.d.ts.map +1 -1
  183. package/dist/scanners/brakeman.js +19 -33
  184. package/dist/scanners/brakeman.js.map +1 -1
  185. package/dist/scanners/builtin-rules.d.ts +24 -0
  186. package/dist/scanners/builtin-rules.d.ts.map +1 -0
  187. package/dist/scanners/builtin-rules.js +175 -0
  188. package/dist/scanners/builtin-rules.js.map +1 -0
  189. package/dist/scanners/dast.d.ts.map +1 -1
  190. package/dist/scanners/dast.js +24 -34
  191. package/dist/scanners/dast.js.map +1 -1
  192. package/dist/scanners/deploy/types.d.ts +6 -6
  193. package/dist/scanners/eslint.d.ts.map +1 -1
  194. package/dist/scanners/eslint.js +15 -24
  195. package/dist/scanners/eslint.js.map +1 -1
  196. package/dist/scanners/gosec.d.ts.map +1 -1
  197. package/dist/scanners/gosec.js +14 -62
  198. package/dist/scanners/gosec.js.map +1 -1
  199. package/dist/scanners/index.d.ts.map +1 -1
  200. package/dist/scanners/index.js +38 -7
  201. package/dist/scanners/index.js.map +1 -1
  202. package/dist/scanners/memory-safety.d.ts.map +1 -1
  203. package/dist/scanners/memory-safety.js +27 -28
  204. package/dist/scanners/memory-safety.js.map +1 -1
  205. package/dist/scanners/openapi.d.ts.map +1 -1
  206. package/dist/scanners/openapi.js +14 -22
  207. package/dist/scanners/openapi.js.map +1 -1
  208. package/dist/scanners/race-condition.d.ts.map +1 -1
  209. package/dist/scanners/race-condition.js +17 -16
  210. package/dist/scanners/race-condition.js.map +1 -1
  211. package/dist/scanners/runtime/types.d.ts +4 -4
  212. package/dist/scanners/rust.d.ts.map +1 -1
  213. package/dist/scanners/rust.js +38 -37
  214. package/dist/scanners/rust.js.map +1 -1
  215. package/dist/scanners/scale/types.d.ts +16 -16
  216. package/dist/scanners/secrets.d.ts.map +1 -1
  217. package/dist/scanners/secrets.js +66 -78
  218. package/dist/scanners/secrets.js.map +1 -1
  219. package/dist/scanners/semgrep.d.ts +2 -0
  220. package/dist/scanners/semgrep.d.ts.map +1 -1
  221. package/dist/scanners/semgrep.js +12 -0
  222. package/dist/scanners/semgrep.js.map +1 -1
  223. package/dist/scanners/terraform.d.ts.map +1 -1
  224. package/dist/scanners/terraform.js +47 -40
  225. package/dist/scanners/terraform.js.map +1 -1
  226. package/dist/scanners/trivy.d.ts.map +1 -1
  227. package/dist/scanners/trivy.js +38 -30
  228. package/dist/scanners/trivy.js.map +1 -1
  229. package/dist/telemetry/install-id.d.ts +25 -0
  230. package/dist/telemetry/install-id.d.ts.map +1 -0
  231. package/dist/telemetry/install-id.js +49 -0
  232. package/dist/telemetry/install-id.js.map +1 -0
  233. package/dist/telemetry/usage.d.ts +19 -2
  234. package/dist/telemetry/usage.d.ts.map +1 -1
  235. package/dist/telemetry/usage.js +44 -8
  236. package/dist/telemetry/usage.js.map +1 -1
  237. package/dist/tool-guard.d.ts +40 -0
  238. package/dist/tool-guard.d.ts.map +1 -0
  239. package/dist/tool-guard.js +55 -0
  240. package/dist/tool-guard.js.map +1 -0
  241. package/dist/util/index.d.ts +2 -1
  242. package/dist/util/index.d.ts.map +1 -1
  243. package/dist/util/index.js +2 -1
  244. package/dist/util/index.js.map +1 -1
  245. package/dist/util/paths.d.ts +20 -3
  246. package/dist/util/paths.d.ts.map +1 -1
  247. package/dist/util/paths.js +84 -4
  248. package/dist/util/paths.js.map +1 -1
  249. package/dist/util/subprocess.d.ts +51 -0
  250. package/dist/util/subprocess.d.ts.map +1 -0
  251. package/dist/util/subprocess.js +77 -0
  252. package/dist/util/subprocess.js.map +1 -0
  253. package/package.json +12 -2
  254. package/dist/eval/fixtures/healthcare/audit-gaps.d.ts +0 -28
  255. package/dist/eval/fixtures/healthcare/audit-gaps.d.ts.map +0 -1
  256. package/dist/eval/fixtures/healthcare/audit-gaps.js +0 -90
  257. package/dist/eval/fixtures/healthcare/audit-gaps.js.map +0 -1
  258. package/dist/eval/fixtures/healthcare/consent-bypass.d.ts +0 -31
  259. package/dist/eval/fixtures/healthcare/consent-bypass.d.ts.map +0 -1
  260. package/dist/eval/fixtures/healthcare/consent-bypass.js +0 -61
  261. package/dist/eval/fixtures/healthcare/consent-bypass.js.map +0 -1
  262. package/dist/eval/fixtures/healthcare/phi-in-logs.d.ts +0 -24
  263. package/dist/eval/fixtures/healthcare/phi-in-logs.d.ts.map +0 -1
  264. package/dist/eval/fixtures/healthcare/phi-in-logs.js +0 -41
  265. package/dist/eval/fixtures/healthcare/phi-in-logs.js.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agent-certificate.d.ts","sourceRoot":"","sources":["../../src/certification/agent-certificate.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,309 @@
1
+ /**
2
+ * Agent Certificate (v1)
3
+ *
4
+ * A versioned, self-contained, independently-verifiable certificate that
5
+ * attests an AI agent / MCP server / AI-generated codebase across six
6
+ * dimensions: security, scalability, quality, explainability (decision
7
+ * provenance), compliance, and AI-BOM.
8
+ *
9
+ * The certificate carries its own content digest (tamper-evident) and an
10
+ * optional Sigstore signature, so a third party can verify it WITHOUT
11
+ * trusting Vaspera. It composes the primitives this platform already has
12
+ * — the certification engine, the tamper-evident audit trail
13
+ * (`history/`), the evidence bundle + Sigstore signing (`sbom/signing`,
14
+ * `evidence/`) — rather than introducing a new trust mechanism.
15
+ *
16
+ * @module certification/agent-certificate
17
+ */
18
+ import { z } from "zod";
19
+ import { signContent, sha256, verifySignedArtifact } from "../sbom/signing.js";
20
+ /** Canonical schema identifier (also the version marker). */
21
+ export const AGENT_CERTIFICATE_SCHEMA = "https://vaspera.dev/schemas/agent-certificate/v1";
22
+ /** Media type used for the signed payload. */
23
+ export const AGENT_CERTIFICATE_MEDIA_TYPE = "application/vnd.vaspera.agent-certificate+json";
24
+ /** Typed error for certificate operations. */
25
+ export class CertificateError extends Error {
26
+ code;
27
+ constructor(message, code) {
28
+ super(message);
29
+ this.code = code;
30
+ this.name = "CertificateError";
31
+ }
32
+ }
33
+ // ---------------------------------------------------------------------------
34
+ // Schema (Zod is the source of truth; TS types are inferred from it)
35
+ // ---------------------------------------------------------------------------
36
+ const SeveritySchema = z.enum(["critical", "high", "medium", "low", "info"]);
37
+ const CertificationLevelSchema = z.enum([
38
+ "CERTIFIED",
39
+ "APPROVED",
40
+ "REVIEW_REQUIRED",
41
+ "BLOCKED",
42
+ ]);
43
+ const DimensionStatusSchema = z.enum(["pass", "warn", "fail", "not_assessed"]);
44
+ const CheckStatusSchema = z.enum(["pass", "warn", "fail"]);
45
+ const ActorSchema = z.object({
46
+ type: z.enum(["user", "service", "system"]),
47
+ id: z.string(),
48
+ name: z.string().optional(),
49
+ email: z.string().optional(),
50
+ });
51
+ /** A single check contributing to a dimension. */
52
+ const DimensionCheckSchema = z.object({
53
+ id: z.string().describe("Stable check identifier"),
54
+ title: z.string(),
55
+ status: CheckStatusSchema,
56
+ severity: SeveritySchema.optional(),
57
+ category: z
58
+ .string()
59
+ .optional()
60
+ .describe("Finding category (e.g. prompt-injection, exfil-path)"),
61
+ evidenceDigest: z
62
+ .string()
63
+ .optional()
64
+ .describe("sha256 of the supporting artifact, if any"),
65
+ detail: z.string().optional(),
66
+ });
67
+ /** The shape shared by the four scored dimensions. */
68
+ const DimensionResultSchema = z.object({
69
+ status: DimensionStatusSchema,
70
+ score: z.number().min(0).max(100),
71
+ summary: z.string(),
72
+ checks: z.array(DimensionCheckSchema),
73
+ });
74
+ const ComplianceControlSchema = z.object({
75
+ controlId: z.string(),
76
+ title: z.string(),
77
+ status: z.enum(["satisfied", "at_risk", "failed", "not_applicable"]),
78
+ });
79
+ const ComplianceFrameworkResultSchema = z.object({
80
+ // String (not a fixed enum) so AI frameworks — ISO 42001, EU AI Act,
81
+ // NIST AI RMF — can be added without a schema migration.
82
+ framework: z.string().describe("e.g. ISO-42001, EU-AI-Act, NIST-AI-RMF, OWASP-LLM"),
83
+ controlsTotal: z.number().int().min(0),
84
+ controlsSatisfied: z.number().int().min(0),
85
+ controlsAtRisk: z.number().int().min(0),
86
+ controlsFailed: z.number().int().min(0),
87
+ controls: z.array(ComplianceControlSchema).optional(),
88
+ });
89
+ const ComplianceDimensionSchema = z.object({
90
+ status: DimensionStatusSchema,
91
+ score: z.number().min(0).max(100),
92
+ summary: z.string(),
93
+ frameworks: z.array(ComplianceFrameworkResultSchema),
94
+ });
95
+ const AiBomComponentSchema = z.object({
96
+ name: z.string(),
97
+ kind: z.enum(["model", "prompt", "dataset", "tool", "dependency"]),
98
+ version: z.string().optional(),
99
+ provider: z.string().optional(),
100
+ role: z.string().optional(),
101
+ digest: z.string().optional(),
102
+ });
103
+ const AiBomDimensionSchema = z.object({
104
+ status: DimensionStatusSchema,
105
+ score: z.number().min(0).max(100),
106
+ summary: z.string(),
107
+ components: z.array(AiBomComponentSchema),
108
+ });
109
+ const SubjectSchema = z.object({
110
+ kind: z.enum(["agent", "mcp-server", "codebase"]),
111
+ name: z.string(),
112
+ version: z.string().optional(),
113
+ identifier: z
114
+ .string()
115
+ .optional()
116
+ .describe("Repo URL, package URL (purl), or agent id"),
117
+ description: z.string().optional(),
118
+ digest: z
119
+ .string()
120
+ .optional()
121
+ .describe("Content digest of the certified artifact/manifest"),
122
+ });
123
+ const IssuerSchema = z.object({
124
+ name: z.string(),
125
+ tool: z.string(),
126
+ toolVersion: z.string(),
127
+ actor: ActorSchema.optional(),
128
+ });
129
+ /** Links to the tamper-evident substrate backing this certificate. */
130
+ const ProvenanceRefSchema = z.object({
131
+ auditTrailHead: z
132
+ .string()
133
+ .optional()
134
+ .describe("Head hash of the decision/audit hash chain"),
135
+ evidenceBundleId: z.string().optional(),
136
+ evidenceBundleDigest: z.string().optional(),
137
+ decisionRecords: z
138
+ .number()
139
+ .int()
140
+ .min(0)
141
+ .optional()
142
+ .describe("Number of hash-chained decision records captured"),
143
+ });
144
+ const EvidenceRefSchema = z.object({
145
+ name: z.string(),
146
+ type: z.string(),
147
+ digest: z.string().describe("sha256 of the evidence artifact"),
148
+ });
149
+ const DimensionsSchema = z.object({
150
+ security: DimensionResultSchema,
151
+ scalability: DimensionResultSchema,
152
+ quality: DimensionResultSchema,
153
+ explainability: DimensionResultSchema,
154
+ compliance: ComplianceDimensionSchema,
155
+ aiBom: AiBomDimensionSchema,
156
+ });
157
+ /** The certificate body — everything except the digest/signature. */
158
+ export const AgentCertificateBodySchema = z.object({
159
+ schemaVersion: z.literal(AGENT_CERTIFICATE_SCHEMA),
160
+ certificateId: z.string(),
161
+ subject: SubjectSchema,
162
+ issuer: IssuerSchema,
163
+ issuedAt: z.string(),
164
+ expiresAt: z.string(),
165
+ level: CertificationLevelSchema,
166
+ overallScore: z.number().min(0).max(100),
167
+ dimensions: DimensionsSchema,
168
+ provenance: ProvenanceRefSchema,
169
+ evidence: z.array(EvidenceRefSchema),
170
+ });
171
+ const IntegritySchema = z.object({
172
+ algorithm: z.literal("sha256"),
173
+ canonicalization: z.literal("sorted-keys-json"),
174
+ contentDigest: z.string(),
175
+ });
176
+ const SignatureSchema = z.object({
177
+ signed: z.boolean(),
178
+ digest: z.string(),
179
+ signedAt: z.string(),
180
+ mediaType: z.string(),
181
+ /** Rekor transparency-log index, if the certificate was logged. */
182
+ rekorLogIndex: z.string().optional(),
183
+ /** Full Sigstore bundle (omitted when unsigned). */
184
+ bundle: z.unknown().optional(),
185
+ error: z.string().optional(),
186
+ });
187
+ /** The full, finalized certificate. */
188
+ export const AgentCertificateSchema = AgentCertificateBodySchema.extend({
189
+ integrity: IntegritySchema,
190
+ signature: SignatureSchema.optional(),
191
+ });
192
+ // ---------------------------------------------------------------------------
193
+ // Canonicalization + digest
194
+ // ---------------------------------------------------------------------------
195
+ /** Recursively sort object keys so the JSON serialization is deterministic. */
196
+ function sortKeys(value) {
197
+ if (Array.isArray(value))
198
+ return value.map(sortKeys);
199
+ if (value && typeof value === "object") {
200
+ const sorted = {};
201
+ for (const key of Object.keys(value).sort()) {
202
+ sorted[key] = sortKeys(value[key]);
203
+ }
204
+ return sorted;
205
+ }
206
+ return value;
207
+ }
208
+ /** Deterministic JSON for a certificate body (stable across machines). */
209
+ export function canonicalize(body) {
210
+ return JSON.stringify(sortKeys(body));
211
+ }
212
+ /** sha256 over the canonical body. */
213
+ export function computeContentDigest(body) {
214
+ return sha256(canonicalize(body));
215
+ }
216
+ /**
217
+ * Turn a validated body into a finalized certificate: attach the content
218
+ * digest and, if requested and possible, a Sigstore signature. Signing
219
+ * gracefully degrades to an unsigned-but-digested certificate when no
220
+ * OIDC identity is available (e.g. local dev) — the digest still makes it
221
+ * tamper-evident.
222
+ */
223
+ export async function finalizeCertificate(body, options = {}) {
224
+ const parsedBody = AgentCertificateBodySchema.safeParse(body);
225
+ if (!parsedBody.success) {
226
+ throw new CertificateError(`Invalid certificate body: ${parsedBody.error.message}`, "invalid_schema");
227
+ }
228
+ const canonical = canonicalize(parsedBody.data);
229
+ const contentDigest = sha256(canonical);
230
+ const certificate = {
231
+ ...parsedBody.data,
232
+ integrity: {
233
+ algorithm: "sha256",
234
+ canonicalization: "sorted-keys-json",
235
+ contentDigest,
236
+ },
237
+ };
238
+ if (options.sign) {
239
+ const signed = await signContent(canonical, options.signingOptions);
240
+ certificate.signature = {
241
+ signed: signed.signed,
242
+ digest: signed.digest,
243
+ signedAt: signed.signedAt,
244
+ mediaType: AGENT_CERTIFICATE_MEDIA_TYPE,
245
+ rekorLogIndex: signed.bundle?.verificationMaterial?.tlogEntries?.[0]?.logIndex,
246
+ bundle: signed.bundle,
247
+ error: signed.error,
248
+ };
249
+ }
250
+ return certificate;
251
+ }
252
+ /**
253
+ * Verify a certificate without trusting the issuer: re-validate the
254
+ * schema, recompute the content digest from the canonical body, and (if
255
+ * present) check the Sigstore signature.
256
+ */
257
+ export async function verifyCertificate(certificate) {
258
+ const errors = [];
259
+ const parsed = AgentCertificateSchema.safeParse(certificate);
260
+ if (!parsed.success) {
261
+ return {
262
+ valid: false,
263
+ schemaValid: false,
264
+ contentDigestValid: false,
265
+ signaturePresent: false,
266
+ errors: [`Schema validation failed: ${parsed.error.message}`],
267
+ };
268
+ }
269
+ const cert = parsed.data;
270
+ // Recompute the digest over the body alone (strip integrity + signature).
271
+ const { integrity, signature, ...body } = cert;
272
+ const recomputed = computeContentDigest(body);
273
+ const contentDigestValid = recomputed === integrity.contentDigest;
274
+ if (!contentDigestValid) {
275
+ errors.push(`Content digest mismatch: expected ${integrity.contentDigest.slice(0, 12)}…, recomputed ${recomputed.slice(0, 12)}…`);
276
+ }
277
+ let signatureValid;
278
+ const signaturePresent = !!signature?.signed;
279
+ if (signaturePresent && signature) {
280
+ const artifact = {
281
+ content: canonicalize(body),
282
+ digest: signature.digest,
283
+ bundle: signature.bundle,
284
+ signedAt: signature.signedAt,
285
+ signed: true,
286
+ };
287
+ const result = await verifySignedArtifact(artifact);
288
+ signatureValid = result.valid;
289
+ if (!result.valid)
290
+ errors.push(...result.errors.map((e) => `signature: ${e}`));
291
+ }
292
+ return {
293
+ valid: contentDigestValid && signatureValid !== false,
294
+ schemaValid: true,
295
+ contentDigestValid,
296
+ signaturePresent,
297
+ signatureValid,
298
+ errors,
299
+ };
300
+ }
301
+ /** Parse + validate an arbitrary object as an AgentCertificate. */
302
+ export function parseCertificate(value) {
303
+ const parsed = AgentCertificateSchema.safeParse(value);
304
+ if (!parsed.success) {
305
+ throw new CertificateError(`Invalid agent certificate: ${parsed.error.message}`, "invalid_schema");
306
+ }
307
+ return parsed.data;
308
+ }
309
+ //# sourceMappingURL=agent-certificate.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agent-certificate.js","sourceRoot":"","sources":["../../src/certification/agent-certificate.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"autofix.d.ts","sourceRoot":"","sources":["../../src/certification/autofix.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"autofix.d.ts","sourceRoot":"","sources":["../../src/certification/autofix.ts"],"names":[],"mappings":"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"}
@@ -7,8 +7,10 @@
7
7
  * @module certification/autofix
8
8
  */
9
9
  import { readFile, writeFile } from "fs/promises";
10
- import { join } from "path";
11
10
  import { logger } from "../logger.js";
11
+ // finding.file originates from scanner/agent output and must be treated
12
+ // as untrusted — always resolve it through containment before touching disk.
13
+ import { resolveContainedFile } from "../util/paths.js";
12
14
  /**
13
15
  * Built-in fix patterns for common issues
14
16
  */
@@ -231,7 +233,7 @@ export async function previewFix(projectPath, finding) {
231
233
  };
232
234
  }
233
235
  try {
234
- const filePath = join(projectPath, finding.file);
236
+ const filePath = await resolveContainedFile(projectPath, finding.file);
235
237
  const content = await readFile(filePath, "utf-8");
236
238
  const lines = content.split("\n");
237
239
  // Find the matching line
@@ -307,7 +309,7 @@ export async function applyFix(projectPath, finding, dryRun = false) {
307
309
  };
308
310
  }
309
311
  try {
310
- const filePath = join(projectPath, finding.file);
312
+ const filePath = await resolveContainedFile(projectPath, finding.file);
311
313
  const content = await readFile(filePath, "utf-8");
312
314
  // Apply the fix
313
315
  const replacement = typeof pattern.replacement === "function"
@@ -1 +1 @@
1
- {"version":3,"file":"autofix.js","sourceRoot":"","sources":["../../src/certification/autofix.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"autofix.js","sourceRoot":"","sources":["../../src/certification/autofix.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../../src/certification/store.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../../src/certification/store.ts"],"names":[],"mappings":"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"}
@@ -28,6 +28,7 @@
28
28
  */
29
29
  import { readFile, writeFile, mkdir, readdir } from "fs/promises";
30
30
  import { join, basename, normalize, isAbsolute } from "path";
31
+ import { resolveContainedFile } from "../util/paths.js";
31
32
  import { randomUUID } from "crypto";
32
33
  import lockfile from "proper-lockfile";
33
34
  import { CERTIFICATION_VALIDITY_DAYS, } from "./types.js";
@@ -287,10 +288,12 @@ async function validateEvidence(projectPath, finding) {
287
288
  if (finding.evidence.length < 10) {
288
289
  return "Evidence too short - provide the actual code snippet";
289
290
  }
290
- // If file is specified, validate evidence matches file content
291
+ // If file is specified, validate evidence matches file content.
292
+ // finding.file is untrusted agent output — containment prevents the
293
+ // evidence check from reading files outside the project tree.
291
294
  if (finding.file) {
292
295
  try {
293
- const filePath = join(projectPath, finding.file);
296
+ const filePath = await resolveContainedFile(projectPath, finding.file);
294
297
  const fileContent = await readFile(filePath, "utf-8");
295
298
  // Extract the core code from evidence (remove markdown, line numbers, etc.)
296
299
  const evidenceCode = finding.evidence
@@ -1 +1 @@
1
- {"version":3,"file":"store.js","sourceRoot":"","sources":["../../src/certification/store.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"store.js","sourceRoot":"","sources":["../../src/certification/store.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,48 @@
1
+ /**
2
+ * Standalone certificate verification (Phase 3 — independent attestation).
3
+ *
4
+ * The point of an Agent Certificate is that a third party can verify it
5
+ * WITHOUT trusting Vaspera: re-validate the schema, recompute the content
6
+ * digest from the canonical body, and check the Sigstore signature. This
7
+ * module wraps that core (`verifyCertificate`) into a single pure handler
8
+ * shared by the public HTTP `/verify` endpoint and the `verify:cert` CLI,
9
+ * adding the things a verifier also wants to know — has it expired, and
10
+ * what does it actually claim — without changing the cryptographic verdict.
11
+ *
12
+ * It is intentionally read-only and stateless: it touches no secrets, no
13
+ * filesystem, and no server state. That is what makes it safe to expose
14
+ * unauthenticated.
15
+ *
16
+ * @module certification/verify-endpoint
17
+ */
18
+ import { type VerifyCertificateResult } from "./agent-certificate.js";
19
+ /** What the certificate asserts (only surfaced when the schema is valid). */
20
+ export interface CertificateClaims {
21
+ certificateId: string;
22
+ subject: {
23
+ kind: string;
24
+ name: string;
25
+ version?: string;
26
+ identifier?: string;
27
+ };
28
+ level: string;
29
+ overallScore: number;
30
+ issuedAt: string;
31
+ expiresAt: string;
32
+ }
33
+ export interface CertificateVerificationResponse extends VerifyCertificateResult {
34
+ /** True if `expiresAt` is in the past relative to `now`. */
35
+ expired?: boolean;
36
+ /** Non-fatal observations (e.g. expired, unsigned). */
37
+ warnings: string[];
38
+ /** The certificate's own assertions, when structurally valid. */
39
+ claims?: CertificateClaims;
40
+ /** One-line human-readable verdict. */
41
+ summary: string;
42
+ }
43
+ /**
44
+ * Verify a parsed certificate document. `now` is injectable so the result
45
+ * is deterministic in tests; it defaults to wall-clock time in callers.
46
+ */
47
+ export declare function verifyCertificatePayload(raw: unknown, now?: Date): Promise<CertificateVerificationResponse>;
48
+ //# sourceMappingURL=verify-endpoint.d.ts.map