@primust/artifact-core 1.0.0 → 1.3.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 (62) hide show
  1. package/LICENSE +93 -0
  2. package/dist/canonical.d.ts +11 -0
  3. package/dist/canonical.d.ts.map +1 -1
  4. package/dist/canonical.js +92 -0
  5. package/dist/canonical.js.map +1 -1
  6. package/dist/commitment.d.ts +56 -8
  7. package/dist/commitment.d.ts.map +1 -1
  8. package/dist/commitment.js +71 -26
  9. package/dist/commitment.js.map +1 -1
  10. package/dist/commitment.test.js +14 -3
  11. package/dist/commitment.test.js.map +1 -1
  12. package/dist/hierarchical_leaf.d.ts +72 -0
  13. package/dist/hierarchical_leaf.d.ts.map +1 -0
  14. package/dist/hierarchical_leaf.js +144 -0
  15. package/dist/hierarchical_leaf.js.map +1 -0
  16. package/dist/hierarchical_leaf.test.d.ts +15 -0
  17. package/dist/hierarchical_leaf.test.d.ts.map +1 -0
  18. package/dist/hierarchical_leaf.test.js +145 -0
  19. package/dist/hierarchical_leaf.test.js.map +1 -0
  20. package/dist/index.d.ts +9 -1
  21. package/dist/index.d.ts.map +1 -1
  22. package/dist/index.js +5 -1
  23. package/dist/index.js.map +1 -1
  24. package/dist/metadata_source.d.ts +4 -0
  25. package/dist/metadata_source.d.ts.map +1 -0
  26. package/dist/metadata_source.js +54 -0
  27. package/dist/metadata_source.js.map +1 -0
  28. package/dist/metadata_source.test.d.ts +2 -0
  29. package/dist/metadata_source.test.d.ts.map +1 -0
  30. package/dist/metadata_source.test.js +29 -0
  31. package/dist/metadata_source.test.js.map +1 -0
  32. package/dist/reversibility_taxonomy.d.ts +23 -0
  33. package/dist/reversibility_taxonomy.d.ts.map +1 -0
  34. package/dist/reversibility_taxonomy.js +208 -0
  35. package/dist/reversibility_taxonomy.js.map +1 -0
  36. package/dist/reversibility_taxonomy.test.d.ts +2 -0
  37. package/dist/reversibility_taxonomy.test.d.ts.map +1 -0
  38. package/dist/reversibility_taxonomy.test.js +146 -0
  39. package/dist/reversibility_taxonomy.test.js.map +1 -0
  40. package/dist/signing.d.ts.map +1 -1
  41. package/dist/signing.js +30 -6
  42. package/dist/signing.js.map +1 -1
  43. package/dist/trust_edge_mapping.d.ts +12 -0
  44. package/dist/trust_edge_mapping.d.ts.map +1 -0
  45. package/dist/trust_edge_mapping.js +88 -0
  46. package/dist/trust_edge_mapping.js.map +1 -0
  47. package/dist/trust_edge_mapping.test.d.ts +2 -0
  48. package/dist/trust_edge_mapping.test.d.ts.map +1 -0
  49. package/dist/trust_edge_mapping.test.js +86 -0
  50. package/dist/trust_edge_mapping.test.js.map +1 -0
  51. package/dist/types/artifact.d.ts +65 -4
  52. package/dist/types/artifact.d.ts.map +1 -1
  53. package/dist/types/proof_artifact.d.ts +52 -0
  54. package/dist/types/proof_artifact.d.ts.map +1 -0
  55. package/dist/types/proof_artifact.js +12 -0
  56. package/dist/types/proof_artifact.js.map +1 -0
  57. package/dist/validate-artifact.d.ts.map +1 -1
  58. package/dist/validate-artifact.js +88 -10
  59. package/dist/validate-artifact.js.map +1 -1
  60. package/dist/validate-artifact.test.js +16 -2
  61. package/dist/validate-artifact.test.js.map +1 -1
  62. package/package.json +13 -7
@@ -0,0 +1,86 @@
1
+ import { describe, it, expect } from 'vitest';
2
+ import { MAPPING_VERSION, TRUST_EDGES, classify, knownKinds, } from './trust_edge_mapping.js';
3
+ describe('trust_edge_mapping', () => {
4
+ describe('A2T — Agent → Tool', () => {
5
+ it('sdk_tool', () => expect(classify('sdk_tool', 'anyop')).toBe('A2T'));
6
+ it('cli_subprocess', () => expect(classify('cli_subprocess', 'exec')).toBe('A2T'));
7
+ it('mcp_tool tools/call', () => expect(classify('mcp_tool', 'tools/call:my_tool')).toBe('A2T'));
8
+ });
9
+ describe('A2M — Agent → Model', () => {
10
+ it('anthropic_messages', () => expect(classify('anthropic_messages', 'POST /v1/messages')).toBe('A2M'));
11
+ it('openai_chat', () => expect(classify('openai_chat', 'POST /v1/chat/completions')).toBe('A2M'));
12
+ it('bedrock_invoke', () => expect(classify('bedrock_invoke', 'InvokeModel')).toBe('A2M'));
13
+ it('mcp_tool sampling sub-LLM (spec §2.1)', () => expect(classify('mcp_tool', 'tools/call:sampling_proxy')).toBe('A2M'));
14
+ });
15
+ describe('A2H — Agent → Human', () => {
16
+ it('approval_gate', () => expect(classify('approval_gate', 'request')).toBe('A2H'));
17
+ it('cli_prompt', () => expect(classify('cli_prompt', 'ask')).toBe('A2H'));
18
+ it('dashboard_escalation', () => expect(classify('dashboard_escalation', 'notify')).toBe('A2H'));
19
+ });
20
+ describe('A2A — Agent → Agent', () => {
21
+ it('subagent_spawn', () => expect(classify('subagent_spawn', 'spawn')).toBe('A2A'));
22
+ it('cross_org_delegation', () => expect(classify('cross_org_delegation', 'delegate')).toBe('A2A'));
23
+ });
24
+ describe('A2S — Agent → System', () => {
25
+ it('aws_api', () => expect(classify('aws_api', 'DeleteBucket')).toBe('A2S'));
26
+ it('stripe_api', () => expect(classify('stripe_api', 'charges.create')).toBe('A2S'));
27
+ it('github_api', () => expect(classify('github_api', 'POST /repos/{owner}/{repo}/pulls')).toBe('A2S'));
28
+ it('salesforce_rest', () => expect(classify('salesforce_rest', 'POST /sobjects/Task')).toBe('A2S'));
29
+ it('slack', () => expect(classify('slack', 'chat.postMessage')).toBe('A2S'));
30
+ it('k8s', () => expect(classify('k8s', 'DELETE /apis/apps/v1/namespaces/{ns}/deployments/{name}')).toBe('A2S'));
31
+ it('generic_http', () => expect(classify('generic_http', 'POST /some/path')).toBe('A2S'));
32
+ });
33
+ describe('A2D — Agent → Data', () => {
34
+ it('postgres', () => expect(classify('postgres', 'SELECT')).toBe('A2D'));
35
+ it('snowflake', () => expect(classify('snowflake', 'INSERT')).toBe('A2D'));
36
+ it('pinecone', () => expect(classify('pinecone', 'upsert')).toBe('A2D'));
37
+ it('s3', () => expect(classify('s3', 'GetObject')).toBe('A2D'));
38
+ it('filesystem', () => expect(classify('filesystem', 'read')).toBe('A2D'));
39
+ it('vector_store', () => expect(classify('vector_store', 'query')).toBe('A2D'));
40
+ it('mcp_tool resources/read (spec §2.1)', () => expect(classify('mcp_tool', 'resources/read')).toBe('A2D'));
41
+ it('mcp_tool resources/list', () => expect(classify('mcp_tool', 'resources/list')).toBe('A2D'));
42
+ it('mcp_tool prompts/get', () => expect(classify('mcp_tool', 'prompts/get')).toBe('A2D'));
43
+ });
44
+ describe('contextual: governance_config_surface', () => {
45
+ it('file-path-shaped op → A2D', () => expect(classify('governance_config_surface', 'edit_settings_json')).toBe('A2D'));
46
+ it('POST op → A2S', () => expect(classify('governance_config_surface', 'POST /admin/branch-protection')).toBe('A2S'));
47
+ it('PATCH op → A2S', () => expect(classify('governance_config_surface', 'PATCH /admin/rules/{id}')).toBe('A2S'));
48
+ });
49
+ describe('unknown kind → null (gap, not invented)', () => {
50
+ it('returns null', () => {
51
+ expect(classify('not_a_real_kind', 'op')).toBe(null);
52
+ });
53
+ });
54
+ describe('knownKinds enumeration', () => {
55
+ it('includes mcp_tool and governance_config_surface', () => {
56
+ const kinds = knownKinds();
57
+ expect(kinds.has('mcp_tool')).toBe(true);
58
+ expect(kinds.has('governance_config_surface')).toBe(true);
59
+ });
60
+ it('covers all six edges (at least one kind each)', () => {
61
+ const kinds = knownKinds();
62
+ expect(kinds.has('sdk_tool')).toBe(true);
63
+ expect(kinds.has('anthropic_messages')).toBe(true);
64
+ expect(kinds.has('approval_gate')).toBe(true);
65
+ expect(kinds.has('subagent_spawn')).toBe(true);
66
+ expect(kinds.has('aws_api')).toBe(true);
67
+ expect(kinds.has('postgres')).toBe(true);
68
+ });
69
+ it('every known kind classifies to non-null', () => {
70
+ for (const kind of knownKinds()) {
71
+ expect(classify(kind, '')).not.toBe(null);
72
+ }
73
+ });
74
+ });
75
+ describe('versioning + SI-1 shape', () => {
76
+ it('MAPPING_VERSION is semver', () => {
77
+ expect(MAPPING_VERSION).toMatch(/^\d+\.\d+\.\d+$/);
78
+ });
79
+ it('all edge values use safe alphanum alphabet', () => {
80
+ for (const edge of TRUST_EDGES) {
81
+ expect(edge.replace(/_/g, '')).toMatch(/^[A-Za-z0-9]+$/);
82
+ }
83
+ });
84
+ });
85
+ });
86
+ //# sourceMappingURL=trust_edge_mapping.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"trust_edge_mapping.test.js","sourceRoot":"","sources":["../src/trust_edge_mapping.test.ts"],"names":[],"mappings":"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"}
@@ -14,7 +14,8 @@
14
14
  * 7. issuer.public_key_url must match primust.com/.well-known/ pattern
15
15
  * 8. test_mode: true rejected by primust-verify in --production mode
16
16
  */
17
- export type ProofLevel = 'mathematical' | 'verifiable_inference' | 'execution' | 'witnessed' | 'attestation';
17
+ import type { ProofArtifact } from './proof_artifact.js';
18
+ export type ProofLevel = 'mathematical' | 'verifiable_inference' | 'operator_bound' | 'execution' | 'witnessed' | 'attestation';
18
19
  export type SurfaceType = 'in_process_adapter' | 'middleware_interceptor' | 'platform_event_feed' | 'audit_log_ingest' | 'manual_assertion';
19
20
  export type ObservationMode = 'pre_action' | 'in_flight' | 'post_action_realtime' | 'post_action_batch';
20
21
  export type ScopeType = 'full_workflow' | 'orchestration_boundary' | 'platform_logged_events' | 'component_scope' | 'partial_unknown';
@@ -22,11 +23,11 @@ export type PolicyBasis = 'P1_self_declared' | 'P2_baseline_aligned' | 'P3_basel
22
23
  export type ArtifactState = 'provisional' | 'signed' | 'final';
23
24
  export type CommitmentAlgorithm = 'poseidon2' | 'sha256';
24
25
  export type Prover = 'local' | 'modal_cpu' | 'modal_gpu';
25
- export type ProverSystem = 'ultrahonk' | 'ezkl' | 'groth16_bionetta';
26
+ export type ProverSystem = 'ultrahonk' | 'ezkl' | 'groth16_bionetta' | 'sp1';
26
27
  export type TsaProvider = 'digicert_us' | 'digicert_eu' | 'none';
27
28
  export type OrgRegion = 'us' | 'eu';
28
29
  export type GapSeverity = 'Critical' | 'High' | 'Medium' | 'Low' | 'Informational';
29
- export type GapType = 'check_not_executed' | 'enforcement_override' | 'engine_error' | 'check_degraded' | 'external_boundary_traversal' | 'lineage_token_missing' | 'admission_gate_override' | 'check_timing_suspect' | 'reviewer_credential_invalid' | 'witnessed_display_missing' | 'witnessed_rationale_missing' | 'deterministic_consistency_violation' | 'skip_rationale_missing' | 'policy_config_drift' | 'zkml_proof_pending_timeout' | 'zkml_proof_failed' | 'explanation_missing' | 'bias_audit_missing';
30
+ export type GapType = 'check_not_executed' | 'enforcement_override' | 'engine_error' | 'check_degraded' | 'external_boundary_traversal' | 'lineage_token_missing' | 'admission_gate_override' | 'check_timing_suspect' | 'reviewer_credential_invalid' | 'witnessed_display_missing' | 'witnessed_rationale_missing' | 'witnessed_timestamp_invalid' | 'deterministic_consistency_violation' | 'skip_rationale_missing' | 'policy_config_drift' | 'proof_level_floor_breach' | 'zkml_proof_pending_timeout' | 'zkml_proof_failed' | 'system_error' | 'sla_breach' | 'explanation_missing' | 'bias_audit_missing' | 'system_unavailable' | 'archetype_unmapped' | 'upstream_vpec_invalid_signature' | 'upstream_vpec_sandbox' | 'upstream_vpec_key_revoked' | 'upstream_vpec_insufficient_proof_level' | 'upstream_vpec_missing_claim' | 'upstream_vpec_issuer_mismatch' | 'upstream_vpec_missing' | 'model_profile_missing' | 'missing_executor' | 'complyadvantage_api_error' | 'complyadvantage_auth_failure' | 'actimize_api_error' | 'actimize_auth_failure' | 'blaze_api_error' | 'blaze_auth_failure' | 'odm_api_error' | 'odm_auth_failure' | 'falcon_api_error' | 'falcon_auth_failure' | 'pega_api_error' | 'pega_auth_failure' | 'wolters_kluwer_api_error' | 'wolters_kluwer_auth_failure' | 'guidewire_api_error' | 'guidewire_auth_failure';
30
31
  export interface SurfaceEntry {
31
32
  surface_id: string;
32
33
  surface_type: SurfaceType;
@@ -39,6 +40,8 @@ export interface SurfaceEntry {
39
40
  export interface ProofDistribution {
40
41
  mathematical: number;
41
42
  verifiable_inference: number;
43
+ /** Optional until all issuers emit six-way distributions. */
44
+ operator_bound?: number;
42
45
  execution: number;
43
46
  witnessed: number;
44
47
  attestation: number;
@@ -121,7 +124,21 @@ export interface VPECArtifact {
121
124
  surface_summary: SurfaceEntry[];
122
125
  /** MUST equal proof_distribution.weakest_link. Computed — never set manually. */
123
126
  proof_level: ProofLevel;
127
+ /** Integer count per proof level. Canonical wire field (TECH_SPEC §3.5 field 15). */
124
128
  proof_distribution: ProofDistribution;
129
+ /**
130
+ * API-enriched distribution (same shape as ProofDistribution, plus fractional
131
+ * _count fields in the richer API response). Emitted alongside proof_distribution;
132
+ * not a replacement (TECH_SPEC §3.5 field 16, §3.7.2 dual naming is intentional).
133
+ */
134
+ provable_surface_breakdown?: ProofDistribution;
135
+ /**
136
+ * Scalar fraction 0.0-1.0 — aggregate proof quality (mathematical/total ratio).
137
+ * PS-INV-1: sub-fields of provable_surface_breakdown sum to this value (±0.0001).
138
+ * Distinct from proof_distribution and provable_surface_breakdown
139
+ * (TECH_SPEC §3.5 field 17).
140
+ */
141
+ provable_surface?: number | null;
125
142
  state: ArtifactState;
126
143
  coverage: Coverage;
127
144
  gaps: GapEntry[];
@@ -130,14 +147,58 @@ export interface VPECArtifact {
130
147
  /** Merkle root over all CheckExecutionRecord commitment_hashes. null when zero records. */
131
148
  commitment_root: string | null;
132
149
  commitment_algorithm: CommitmentAlgorithm;
150
+ /**
151
+ * Additive Poseidon2 Merkle root over the same `commitment_hashes`
152
+ * (BN254 field-element tree), emitted alongside the legacy SHA-256
153
+ * `commitment_root` for ZK-bearing artifacts.
154
+ *
155
+ * The primary `commitment_root` is SHA-256 (preserves SI-3 backward
156
+ * compatibility — ten years of consumers do `computeMerkleRoot` over
157
+ * the artifact's record commitment_hash list with SHA-256). ZK circuits
158
+ * operate over BN254 field elements with Poseidon2; their public-input
159
+ * `commitment_root` cannot be a SHA-256 digest. To anchor ZK proof
160
+ * commitment_roots to the same record list independently of the
161
+ * legacy SHA-256 root, ZK-bearing artifacts also publish this Poseidon2
162
+ * root.
163
+ *
164
+ * Used by:
165
+ * - `verifySkipConditionProofAnchoring` (Finding 5 follow-up): reproduces
166
+ * the modified record-tree root the proof's `commitment_root` public
167
+ * input claims.
168
+ * - `governance_upstream_vpec_inclusion` (Finding C corrective): downstream
169
+ * run's lineage commitment is included in this tree without re-hashing
170
+ * 32-byte SHA-256 leaves inside the circuit.
171
+ *
172
+ * Format: `'poseidon2:<64-hex>'` matching the rest of the codebase's
173
+ * Poseidon2 commitment string convention.
174
+ *
175
+ * Convention:
176
+ * - null for legacy artifacts and any ZK-less artifact (omitted on
177
+ * older VPECs entirely).
178
+ * - `'poseidon2:<64-hex>'` for artifacts that requested ZK proofs.
179
+ *
180
+ * Optional / additive — pre-fix VPECs predate this field. Verifiers must
181
+ * tolerate its absence on legacy artifacts.
182
+ */
183
+ commitment_root_poseidon2?: string | null;
133
184
  zk_proof: ZkProof | null;
185
+ /** GD-2: individual proof artifacts. Optional — absent on legacy VPECs. */
186
+ proof_artifacts?: ProofArtifact[];
134
187
  issuer: ArtifactIssuer;
135
188
  signature: ArtifactSignature;
136
189
  timestamp_anchor: TimestampAnchor;
137
190
  transparency_log: TransparencyLog;
138
191
  issued_at: string;
139
192
  pending_flags: PendingFlags;
140
- /** true when issued with pk_test_xxx key. Rejected by primust-verify in --production. */
193
+ /** true when issued with pk_test_xxx or pk_sb_xxx key. Rejected by primust-verify in --production. */
141
194
  test_mode: boolean;
195
+ /** Hash of the active ControlPlan at issuance. null/absent for pre-v21 VPECs. */
196
+ control_plan_hash?: string | null;
197
+ /** Hash of the ObligationPlan linked to the active ControlPlan. */
198
+ obligation_plan_hash?: string | null;
199
+ /** ID of the active compliance approval on the ControlPlan. */
200
+ approval_id?: string | null;
201
+ /** Hash of the ApplicabilitySnapshot anchoring the governance chain. */
202
+ applicability_snapshot_hash?: string | null;
142
203
  }
143
204
  //# sourceMappingURL=artifact.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"artifact.d.ts","sourceRoot":"","sources":["../../src/types/artifact.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"artifact.d.ts","sourceRoot":"","sources":["../../src/types/artifact.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,52 @@
1
+ /**
2
+ * ProofArtifact — individual proof record within a VPEC.
3
+ *
4
+ * Append-only: once created, a ProofArtifact MUST NOT be mutated.
5
+ * Each artifact represents a single proof job (Noir circuit, EZKL proof, etc.)
6
+ * and its verification outcome.
7
+ *
8
+ * Added in GD-2. Lives alongside the legacy zk_proof field on VPECArtifact;
9
+ * both shapes are valid.
10
+ */
11
+ /**
12
+ * Verification status.
13
+ *
14
+ * Live DB row states (proof_artifacts.verification_status):
15
+ * - 'pending' — job submitted, awaiting webhook callback
16
+ * - 'verified' — terminal: proof verified
17
+ * - 'failed' — terminal: proof rejected or job errored
18
+ * - 'not_applicable' — terminal: backend did not run (e.g. test_mode)
19
+ *
20
+ * Envelope-only state (sealed VPECs only; never appears in DB):
21
+ * - 'unresolved_at_seal' — the proof job had not reached a terminal state
22
+ * when the VPEC was sealed. The envelope is sealed-once (Phase 5), so
23
+ * it can never observe the later verified|failed transition. Verifiers
24
+ * MUST treat this as a hard error: counterparties must consult the
25
+ * live API or treat the proof as unverified.
26
+ */
27
+ export type VerificationStatus = 'verified' | 'pending' | 'failed' | 'not_applicable' | 'unresolved_at_seal';
28
+ export interface ProofArtifact {
29
+ /** Primary key. Prefix: pa_ */
30
+ proof_artifact_id: string;
31
+ /** The proof job that produced this artifact, if tracked. */
32
+ proof_job_id?: string;
33
+ /** Backend that generated the proof (e.g. NoirBackend, EZKLBackend). */
34
+ backend: string;
35
+ /** Mechanism used (e.g. noir_circuit, ezkl_proof, groth16_bionetta). */
36
+ proof_mechanism: string;
37
+ /** Maps to an AssuranceClass via the assurance mapper (e.g. mathematical, verifiable_inference). */
38
+ assurance_subtype: string;
39
+ /** Reference to the verification material (e.g. S3 key, IPFS CID). */
40
+ verification_material_ref?: string;
41
+ /** Version of the backend that produced this proof. */
42
+ backend_version?: string;
43
+ /** Control ID this proof satisfies, if applicable. */
44
+ control_id?: string;
45
+ /** Component ID this proof covers, if applicable. */
46
+ component_id?: string;
47
+ /** Terminal verification status. Append-only — never transition backwards. */
48
+ verification_status: VerificationStatus;
49
+ /** When verification completed. null while pending. */
50
+ completed_at?: string;
51
+ }
52
+ //# sourceMappingURL=proof_artifact.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"proof_artifact.d.ts","sourceRoot":"","sources":["../../src/types/proof_artifact.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH;;;;;;;;;;;;;;;GAeG;AACH,MAAM,MAAM,kBAAkB,GAC1B,UAAU,GACV,SAAS,GACT,QAAQ,GACR,gBAAgB,GAChB,oBAAoB,CAAC;AAEzB,MAAM,WAAW,aAAa;IAC5B,+BAA+B;IAC/B,iBAAiB,EAAE,MAAM,CAAC;IAE1B,6DAA6D;IAC7D,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB,wEAAwE;IACxE,OAAO,EAAE,MAAM,CAAC;IAEhB,wEAAwE;IACxE,eAAe,EAAE,MAAM,CAAC;IAExB,oGAAoG;IACpG,iBAAiB,EAAE,MAAM,CAAC;IAE1B,sEAAsE;IACtE,yBAAyB,CAAC,EAAE,MAAM,CAAC;IAEnC,uDAAuD;IACvD,eAAe,CAAC,EAAE,MAAM,CAAC;IAEzB,sDAAsD;IACtD,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB,qDAAqD;IACrD,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB,8EAA8E;IAC9E,mBAAmB,EAAE,kBAAkB,CAAC;IAExC,uDAAuD;IACvD,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB"}
@@ -0,0 +1,12 @@
1
+ /**
2
+ * ProofArtifact — individual proof record within a VPEC.
3
+ *
4
+ * Append-only: once created, a ProofArtifact MUST NOT be mutated.
5
+ * Each artifact represents a single proof job (Noir circuit, EZKL proof, etc.)
6
+ * and its verification outcome.
7
+ *
8
+ * Added in GD-2. Lives alongside the legacy zk_proof field on VPECArtifact;
9
+ * both shapes are valid.
10
+ */
11
+ export {};
12
+ //# sourceMappingURL=proof_artifact.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"proof_artifact.js","sourceRoot":"","sources":["../../src/types/proof_artifact.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG"}
@@ -1 +1 @@
1
- {"version":3,"file":"validate-artifact.d.ts","sourceRoot":"","sources":["../src/validate-artifact.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,EAAE,eAAe,EAAE,CAAC;CAC3B;AAiCD;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,gBAAgB,CA6HpF"}
1
+ {"version":3,"file":"validate-artifact.d.ts","sourceRoot":"","sources":["../src/validate-artifact.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,EAAE,eAAe,EAAE,CAAC;CAC3B;AA8GD;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,gBAAgB,CAgIpF"}
@@ -7,30 +7,106 @@
7
7
  const PROOF_LEVELS = [
8
8
  'mathematical',
9
9
  'verifiable_inference',
10
+ 'operator_bound',
10
11
  'execution',
11
12
  'witnessed',
12
13
  'attestation',
13
14
  ];
15
+ // Authoritative list synced with packages/db/migrations/076_gap_type_allowlist_expansion.sql
16
+ // plus additional control-plan / GRT / action-level gap types that are emitted by
17
+ // code paths not yet represented in migration 076. Keep in lockstep with the
18
+ // Python sibling at packages/artifact-core-py/src/primust_artifact_core/validate_artifact.py.
14
19
  const GAP_TYPES = new Set([
20
+ // Original runtime-governance set (migration 019)
21
+ 'admission_gate_override',
22
+ 'check_degraded',
15
23
  'check_not_executed',
24
+ 'check_timing_suspect',
25
+ 'deterministic_consistency_violation',
16
26
  'enforcement_override',
17
27
  'engine_error',
18
- 'check_degraded',
19
28
  'external_boundary_traversal',
20
29
  'lineage_token_missing',
21
- 'admission_gate_override',
22
- 'check_timing_suspect',
30
+ 'policy_config_drift',
23
31
  'reviewer_credential_invalid',
32
+ 'skip_rationale_missing',
24
33
  'witnessed_display_missing',
25
34
  'witnessed_rationale_missing',
26
- 'deterministic_consistency_violation',
27
- 'skip_rationale_missing',
28
- 'policy_config_drift',
29
- 'zkml_proof_pending_timeout',
30
35
  'zkml_proof_failed',
36
+ 'zkml_proof_pending_timeout',
37
+ // Server-emitted during run enrichment / VPEC assembly (migration 076)
38
+ 'archetype_unmapped',
39
+ 'bias_audit_missing',
40
+ 'bounded_inference_downgrade',
41
+ 'explanation_missing',
42
+ 'manifest_metadata_missing',
43
+ 'model_profile_missing',
44
+ 'nesting_depth_exceeded',
45
+ 'orphan_run_gap',
46
+ 'parent_run_invalid',
47
+ 'partial_submission',
48
+ 'proof_level_floor_breach',
49
+ 'provable_surface_invariant_violation',
50
+ 'queue_drain_exhausted',
51
+ 'record_count_mismatch',
52
+ 'run_expired_without_close',
53
+ 'sla_breach',
54
+ 'stage_type_unresolved',
55
+ 'subagent_identity_ambiguous',
56
+ 'system_error',
57
+ 'system_unavailable',
58
+ 'witnessed_timestamp_invalid',
59
+ // Upstream VPEC verification failures
60
+ 'upstream_vpec_insufficient_proof_level',
61
+ 'upstream_vpec_invalid_signature',
62
+ 'upstream_vpec_issuer_mismatch',
63
+ 'upstream_vpec_key_revoked',
64
+ 'upstream_vpec_missing',
65
+ 'upstream_vpec_missing_claim',
66
+ 'upstream_vpec_sandbox',
67
+ // Connector adapter errors (per-vendor allowlist)
68
+ 'actimize_api_error',
69
+ 'actimize_auth_failure',
70
+ 'blaze_api_error',
71
+ 'blaze_auth_failure',
72
+ 'complyadvantage_api_error',
73
+ 'complyadvantage_auth_failure',
74
+ 'falcon_api_error',
75
+ 'falcon_auth_failure',
76
+ 'guidewire_api_error',
77
+ 'guidewire_auth_failure',
78
+ 'odm_api_error',
79
+ 'odm_auth_failure',
80
+ 'pega_api_error',
81
+ 'pega_auth_failure',
82
+ 'wolters_kluwer_api_error',
83
+ 'wolters_kluwer_auth_failure',
84
+ // Migration-tool error categories
85
+ 'migration_auth_failed',
86
+ 'migration_record_unmigratable',
87
+ // Control-plan binding gaps (not yet in migration 076 but emitted by runs.py / auto_dispatcher)
88
+ 'control_plan_binding_missing',
89
+ 'control_plan_hash_mismatch',
90
+ 'control_plan_system_mismatch',
91
+ // GRT / signing gaps
92
+ 'grt_signing_failed',
93
+ 'signing_delayed',
94
+ // Action-level gaps (ungoverned action discovery)
95
+ 'ungoverned_action',
96
+ 'consequential_ungoverned_action',
97
+ 'missing_executor',
98
+ // Phase 6 bridge taxonomy (migration 134; docs/v29/ZK_BRIDGE_BUILD_PLAN.md §3)
99
+ 'proof_dispatch_failure',
100
+ 'proof_timeout',
101
+ 'proof_verification_failure',
102
+ 'circuit_not_green_yellow_quarantined',
103
+ 'circuit_not_green_red_quarantined',
104
+ 'witness_build_failure',
105
+ // Pre-bridge proof-failed webhook emits this; was missing from earlier allowlists
106
+ 'proof_generation_failed',
31
107
  ]);
32
108
  const GAP_SEVERITIES = new Set(['Critical', 'High', 'Medium', 'Low', 'Informational']);
33
- const PUBLIC_KEY_URL_PATTERN = /^https:\/\/primust\.com\/\.well-known\/primust-pubkeys\/.+\.pem$/;
109
+ const PUBLIC_KEY_URL_PATTERN = /^https:\/\/(?:primust|keys\.primust)\.com\/\.well-known\/primust-pubkeys\/.+\.pem$/;
34
110
  /**
35
111
  * Validate a VPEC artifact against all critical invariants.
36
112
  *
@@ -136,13 +212,15 @@ export function validateArtifact(artifact) {
136
212
  });
137
213
  }
138
214
  }
139
- // Invariant 7: issuer.public_key_url must match primust.com/.well-known/ pattern
215
+ // Invariant 7: issuer.public_key_url must match an approved Primust key host
140
216
  const issuer = artifact.issuer;
141
217
  if (issuer && typeof issuer.public_key_url === 'string') {
142
218
  if (!PUBLIC_KEY_URL_PATTERN.test(issuer.public_key_url)) {
143
219
  errors.push({
144
220
  code: 'ISSUER_URL_INVALID',
145
- message: `issuer.public_key_url must match https://primust.com/.well-known/primust-pubkeys/*.pem, got "${issuer.public_key_url}"`,
221
+ message: 'issuer.public_key_url must match ' +
222
+ 'https://primust.com/.well-known/primust-pubkeys/*.pem or ' +
223
+ `https://keys.primust.com/.well-known/primust-pubkeys/*.pem, got "${issuer.public_key_url}"`,
146
224
  path: 'issuer.public_key_url',
147
225
  });
148
226
  }
@@ -1 +1 @@
1
- {"version":3,"file":"validate-artifact.js","sourceRoot":"","sources":["../src/validate-artifact.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"validate-artifact.js","sourceRoot":"","sources":["../src/validate-artifact.ts"],"names":[],"mappings":"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"}
@@ -93,6 +93,19 @@ describe('validateArtifact', () => {
93
93
  expect(result.valid).toBe(true);
94
94
  expect(result.errors).toHaveLength(0);
95
95
  });
96
+ it('keys.primust.com public key URL passes validation', () => {
97
+ const result = validateArtifact(validArtifact({
98
+ issuer: {
99
+ signer_id: 'signer_test',
100
+ kid: 'kid_test',
101
+ algorithm: 'Ed25519',
102
+ public_key_url: 'https://keys.primust.com/.well-known/primust-pubkeys/abc123.pem',
103
+ org_region: 'us',
104
+ },
105
+ }));
106
+ expect(result.valid).toBe(true);
107
+ expect(result.errors).toHaveLength(0);
108
+ });
96
109
  describe('MUST PASS: invariant enforcement', () => {
97
110
  it('proof_level above weakest_link → validation error', () => {
98
111
  const artifact = validArtifact({
@@ -161,14 +174,15 @@ describe('validateArtifact', () => {
161
174
  expect(result.valid).toBe(false);
162
175
  expect(result.errors.some((e) => e.code === 'INVALID_SCHEMA_VERSION')).toBe(true);
163
176
  });
164
- it('all 5 proof levels valid in proof_level enum', () => {
165
- const levels = ['mathematical', 'verifiable_inference', 'execution', 'witnessed', 'attestation'];
177
+ it('all 6 proof levels valid in proof_level enum', () => {
178
+ const levels = ['mathematical', 'verifiable_inference', 'operator_bound', 'execution', 'witnessed', 'attestation'];
166
179
  for (const level of levels) {
167
180
  const artifact = validArtifact({
168
181
  proof_level: level,
169
182
  proof_distribution: {
170
183
  mathematical: 0,
171
184
  verifiable_inference: 0,
185
+ operator_bound: 0,
172
186
  execution: 0,
173
187
  witnessed: 0,
174
188
  attestation: 0,
@@ -1 +1 @@
1
- {"version":3,"file":"validate-artifact.test.js","sourceRoot":"","sources":["../src/validate-artifact.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"validate-artifact.test.js","sourceRoot":"","sources":["../src/validate-artifact.test.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,14 +1,19 @@
1
1
  {
2
2
  "name": "@primust/artifact-core",
3
- "version": "1.0.0",
3
+ "version": "1.3.0",
4
4
  "description": "Canonical JSON, commitment hashing, and Ed25519 signing primitives for Primust.",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
7
7
  "types": "dist/index.d.ts",
8
+ "scripts": {
9
+ "build": "tsc",
10
+ "test": "vitest run",
11
+ "test:list": "vitest list --filesOnly"
12
+ },
8
13
  "files": [
9
14
  "dist"
10
15
  ],
11
- "license": "SEE LICENSE IN LICENSE",
16
+ "license": "Apache-2.0",
12
17
  "author": "Primust, Inc. <eng@primust.com>",
13
18
  "homepage": "https://primust.com",
14
19
  "repository": {
@@ -24,14 +29,15 @@
24
29
  "@noble/hashes": "^1.8.0",
25
30
  "@zkpassport/poseidon2": "^0.6.2"
26
31
  },
32
+ "devDependencies": {
33
+ "@types/node": "^22.0.0",
34
+ "typescript": "^5.6.0",
35
+ "vitest": "^3.0.0"
36
+ },
27
37
  "exports": {
28
38
  ".": {
29
39
  "import": "./dist/index.js",
30
40
  "types": "./dist/index.d.ts"
31
41
  }
32
- },
33
- "scripts": {
34
- "build": "tsc",
35
- "test": "vitest run"
36
42
  }
37
- }
43
+ }