← Primust · Product

Every governed workflow needs portable proof.

Primust issues signed VPECs that bind committed artifacts, declared controls, proof floor, provable surface, and explicit gaps into evidence another party can verify offline.

§ 01Principle

Assertions are cheap. Primust issues the evidence.

I.
Assertion is cheap.
"We ran the checks" is the default compliance posture. The hard part is handing another party evidence that survives after your dashboard, log viewer, and screenshots are gone.
II.
We prove what ran, not what is right.
Primust proves the checks you declared executed on this run, with this proof floor and these gaps. Whether those checks were sufficient remains your engineering, security, and compliance call. That boundary is why the credential holds.
III.
Evidence is portable.
A VPEC is one signed document. Hand it to an auditor, reinsurer, regulator, downstream team, or another agent. Verification does not require calling Primust.
IV.
Proof outlives vendors.
The artifact should not need the vendor in the room. The verifier is Apache-2.0, and public verification material can be archived by the relying party.
§ 02Category

Keep your existing controls. Add the credential they do not produce.

Every governance stack runs on trust. Trust the dashboard. Trust the log. Trust the vendor. Trust the auditor.

Primust is the layer that removes the ask.

Run whatever checks you run: rule engines, AI policy, fraud detection, your internal harness. Primust turns that governed run into a portable credential bound to specific artifacts, proof levels, and explicit gaps. Not a guardrail. Not a policy engine. Not a dashboard. A portable evidence artifact.

Not a policy engine
OPA, Cedar, internal rules, or human review still decide what should happen. Primust records that the declared controls actually ran on the committed artifacts.
Not a scanner
Scanners, classifiers, and evaluators produce findings. Primust proves that those declared scanners or evaluators were part of the governed run.
Not an audit log
Logs preserve system history. Primust packages the execution claim into a portable credential a reviewer can inspect later without replaying your internal system.
The product
A signed execution artifact that names the workflow, commitments, controls, proof floor, gaps, and issuer in one reviewer-ready object.
§ 03Model

Four stages. One credential. Offline-verifiable without a Primust dependency.

VPEC · Coding Agent Session
signedoffline-verifiable
VPEC ID
vpec_b135298a...c7bf6
Run ID
run_629312ff5174409c
Workflow
df40d664...17b8b
Surface
Claude Code
Bundle
agent_change_review_v2
Proof floor
Execution
Provable surface
0.92
State
signed
Schema
4.0.0
Issuer
kid_live_2026_01
Issued at
2026-04-07T20:36:14Z
Credential hash
sha256:0c31...9a4f
Anchors
Commitment rootsha256:6fa27160...bc760
Policy snapshotsha256:c8cb744d...10960
Timestamp anchorRFC 3161 · digicert_us
Verifier materialjwks.primust.com/kid_live_2026_01
Checks run
Presidio Regex Entitiesdetect-secrets ScanGitleaks ScanLLM Guard Prompt InjectionSemgrep ScanUnit Test CommandDiff Hash BoundTool-call boundarygap
Run trace
00:00.000session_startClaude Code · acme/payments
00:02.184file_editauth/session.ts · 42 lines
00:05.771bash_commandnpm test · passed
00:08.412policy_gatesemgrep.scan · high finding
Gap ledger
G-017visibility_opaquebackground write uncommitted
G-024proof_level_missingone detector omitted proof floor
G-031adapter_version_uncertaincursor helper version absent
Recorded checks
16
Executed as governed
13
Blocked actions
2
Open gaps
3
Distribution
Mathematical0.24
Verified Model0.18
Execution0.50
Witnessed0.00
Attestation0.00
Ungoverned0.08
Signature
valid
Timestamp
witnessed
Policy pack
matched
Content
commitments only
Ed25519 · RFC 3161 · sha256 commitmentsverify with primust-verify
Commit first
The governed input, output, or artifact is committed before the credential is issued. That anchors the execution claim to specific material rather than to a later narrative.
Record what ran
The credential names the workflow, declared checks, ordering, timestamps, and related artifacts tied to the run. Review starts from the signed artifact, not a dashboard narrative.
Issue the artifact
The result is a signed VPEC carrying proof floor, provable surface, and the gap ledger in one object that can leave your environment and still answer the review question later.
You do not need this website to verify a VPEC. The verifier is open source, the format is portable, and the public verification material can be archived by the relying party.
§ 04Proof Levels

Every credential declares its weakest link and shows the distribution.

floor.05
Mathematical
The declared deterministic rule evaluated as declared on the committed input. A third party with the same rule pack and committed input gets the same result.
floor.04
Verified Model
A named model bound by hash ran on the committed input, with stronger evidence about the forward pass than an opaque model invocation.
floor.03
Execution
A named algorithm or model hash was invoked on the committed input, with the declared threshold or decision rule applied.
floor.02
Witnessed
A designated reviewer saw the declared artifact, recorded rationale, and signed. Human evidence is still evidence, but it is a different floor.
floor.01
Attestation
An opaque process was invoked, inputs and outputs were committed, and the decision was recorded. Weakest floor, still honest about what it is.
Hero metric
provable_surface is the distribution. The proof floor is the weakest link. A run can be mostly Mathematical and still have an Attestation floor. A good artifact carries both, instead of hiding the weaker segment behind a blanket claim.
§ 05Gap Ledger

Silence is a gap. Missing evidence is still evidence.

Gap Type
Uninstrumented surface
Part of the workflow remained outside the evidence path. The run may still be useful, but the artifact should say that the surface was incomplete.
Gap Type
Required check missing
A declared control did not run or was skipped. The absence should be explicit rather than buried in an exception path.
Gap Type
Weaker evidence path
A step may have been observed or attested, but not bound end to end to the committed artifact. The downgrade belongs in the ledger, not in hidden implementation notes.
Gap Type
External dependency unresolved
A third-party step may matter to the workflow, but if the reviewer cannot independently validate it from the artifact, that dependence should be visible.
§ 06Proof vs Logs

Logs prove records. Primust proves governed execution.

WORM logs, hash chains, and tamper-evident audit trails are useful. Keep them. But they prove a different claim. They preserve records after something happened. They do not, by themselves, prove that a declared governance process executed on specific committed data the way you later describe it.

The point is not that logs are bad. The point is that a review often depends on the execution claim itself.

Question
Log integrity path
VPEC path
What is being proven?
That recorded bytes were written and later preserved.
That the declared governance process executed on committed artifacts.
What happens when the log misses the thing that matters?
The log can remain intact and still tell you nothing useful.
The artifact is designed to carry the execution claim itself, plus explicit gaps where evidence is missing.
Does the reviewer need your dashboard?
Usually yes. They still depend on your tooling to interpret the record.
No. Signature and public verification material are enough.
What drifts under pressure?
The narrative about what the log means.
Less room for drift, because the execution claim is carried by the signed artifact.
§ 07Artifact

A reviewer should be able to read the credential without replaying your system.

{
  "workflow_id": "customer-screening",
  "bundle_id": "aml_kyc_v2",
  "input_commit": "poseidon2:b7f2...",
  "output_commit": "poseidon2:90cc...",
  "checks": [
    "pep_screen",
    "sanctions_screen",
    "watchlist_screen"
  ],
  "proof_floor": "execution",
  "provable_surface": 0.80,
  "gaps": [],
  "issuer_kid": "kid_api"
}
Workflow and bundle
Tell the reviewer what process this artifact belongs to and what review context was selected.
Commitments
Anchor the claim to specific inputs and outputs without exposing the underlying content.
Checks
Name the declared controls that actually ran in the governed path.
Proof floor and surface
Tell the reviewer how strong the artifact is and how much of the surface it honestly covers.
Gaps and issuer
Carry the missing surface and the verification path in the same object.
§ 08Evaluator Paths

One primitive, three teams, one answer that holds up under scrutiny.

Devs · Platform
Engineering
pip install primust and primust init should get evidence into the path without forcing a rewrite. Keep the pipeline, keep the checks, and emit a portable artifact around the run.
CISO · AppSec
Security
Show policy enforcement without exposing content. Content-blind by construction means commitment hashes leave your environment, not the governed payload. If evidence is stale or weak, it should surface as a gap rather than disappear in a dashboard.
GRC · Audit
Compliance
Hand a VPEC to an auditor or counterparty. They should be able to verify it offline, with the same schema and verifier you use in the sandbox and in production. The key prefix changes. The review path does not.
§ 09Limits

The reason the artifact is credible is that the claim stays narrow enough to defend.

Sufficiency
Primust does not decide whether the selected controls are enough for a specific policy, regulator, or auditor.
Completeness
If some of the workflow remains outside the instrumented surface, the artifact should say so rather than pretend to be exhaustive.
Correctness
Primust proves that a declared scanner, gate, or review step ran. It does not prove that the underlying logic was substantively correct.
Content
Primust does not inspect the governed content itself. It records commitments and execution evidence around the workflow.

This is not disclaimer language. It is what makes the credential defensible.

Start in the sandbox - no sales call required

You do not need this website to verify a VPEC.

Install primust-verify, point it at any credential, and get a verdict offline. Apache-2.0. Portable. No dashboard dependency.

Then install primust itself and start issuing your own. Sandbox keys use the same schema and verifier path. When you move to production, the key prefix changes. Nothing else should.

Get sandbox keyVerify a sample VPECRead the VPEC spec