prov-engine-js
v0.1.0
Published
Minimal Node.js provenance engine for prov-spec interop
Maintainers
Readme
prov-engine-js
A minimal, zero-dependency Node.js provenance engine for prov-spec interop.
Purpose
This engine exists to prove that prov-spec is language-agnostic. It implements the same methods as the Python reference validator, passes the same test vectors, and shares no code.
Requirements
- Node.js 18+
- No dependencies
Usage
# Print capability manifest
node prov-engine.js describe
# Compute canonical form and SHA-256 digest
node prov-engine.js digest input.json
# Wrap payload in mcp.envelope.v0.1
node prov-engine.js wrap payload.json
# Verify a digest claim
node prov-engine.js verify-digest artifact.json
# Run against a prov-spec test vector
node prov-engine.js check-vector ../prov-spec/spec/vectors/integrity.digest.sha256Implemented Methods
| Method | Description |
|--------|-------------|
| integrity.digest.sha256 | Canonical JSON + SHA-256 digest |
| adapter.wrap.envelope_v0_1 | Wrap payload in MCP envelope |
Test Vectors
# Run all vectors
node prov-engine.js check-vector ../prov-spec/spec/vectors/integrity.digest.sha256
node prov-engine.js check-vector ../prov-spec/spec/vectors/adapter.wrap.envelope_v0_1Expected output:
PASS: integrity.digest.sha256 vector
PASS: adapter.wrap.envelope_v0_1 vectorConformance
This engine declares fully-conformant status for Level 1 (Integrity).
See prov-capabilities.json for the full capability manifest.
License
MIT
