pcs-core is the canonical source for all PCS v0.1 JSON schemas, and LabTrust-Gym, CertifyEdge, Provability Fabric, and Scientific Memory stay aligned with this repository when they refresh their mirrors at pinned revisions.
Downstream repositories may mirror schemas only as generated copies of pcs-core/schemas/, and each mirrored file must be byte-for-byte equivalent to pcs-core at the pinned revision unless the file is explicitly documented as a legacy fixture that serves as a read-only negative example.
Maintainers refresh mirrored schema files from pcs-core and record the git tag or commit in release notes instead of editing mirrors locally.
Typical mirror paths include schemas/pcs/ in Scientific Memory and Provability Fabric and vendor/pcs-core/schemas/ in submodule layouts.
Every downstream repository should provide a schema drift check, for example just pcs-schema-diff, that compares the vendored mirror to pcs-core.
scripts/pcs-schema-diff.sh path/to/vendored/schemasThe pcs-core reference check runs as follows.
just pcs-schema-diff schemasSchema drift blocks release, and continuous integration should fail when the mirror differs from the pinned pcs-core revision.
Cross-repository schema tests use examples/labtrust/.
| File | Stage |
|---|---|
science_claim_bundle.pending.valid.json |
LabTrust-Gym pending bundle |
trace_certificate.valid.json |
CertifyEdge |
science_claim_bundle.certified.valid.json |
LabTrust-Gym certified bundle |
verification_result.valid.json |
Provability Fabric |
signed_science_claim_bundle.valid.json |
Provability Fabric through Scientific Memory import |
Negative fixtures must fail validation as listed below.
| File | Failure reason |
|---|---|
invalid_signed_schema_version_artifact_name.json |
schema_version must remain "v0" instead of the artifact class name |
invalid_singular_runtime_receipt_bundle.json |
runtime_receipts array is required |
invalid_failed_verification_result.json |
failed checks conflict with import-ready top-level status |
invalid_missing_trace_certificate.json |
certified claim lacks TraceCertificate |
Python tests live in python/tests/test_labtrust_conformance.py, and fixture roles are explained in labtrust-v0.1-profile.md.
examples/labtrust-release/ is the canonical PCS v0.1 LabTrust release chain for v0.1.0.
| Rule | Detail |
|---|---|
| Source of truth | Sync this directory at the pinned pcs-core tag, or prove canonical-hash equivalence to RELEASE_FIXTURE_MANIFEST.json |
| Atomic refresh | Regenerate through the full clean-checkout chain and just generate-labtrust-release-fixtures |
| Pin values and checks | labtrust-release-fixtures.md |
| Verification | pcs validate-release-chain examples/labtrust-release/ runs 30 checks on every push to main |
Schema conformance fixtures under examples/labtrust/ remain separate from release evidence, and additional workflow release trees include examples/tool-use-release/ and examples/computation-release/.
pcs validate applies JSON Schema together with semantic checks, pcs hash computes the canonical digest documented in hash-canonicalization.md, release trains pin the same pcs-core version across repositories, pcs registry audit lists the semantic check catalog after registry upgrades, and pcs conformance run --suite <name> exercises protocol conformance described in ../conformance/README.md.
from pcs_core.conformance import build_conformance_report_data, run_conformance
exit_code, errors = run_conformance("hash")
report = build_conformance_report_data("hash")Cross-language hash vectors are verified with pcs shared-hash-vectors verify.
Producers (OVK, LabTrust, optimization harnesses) should:
- Pin pcs-core SHA/tag and vendor only the six VA schemas plus
verifier_assurance.defs.json/common.defs.jsonas needed. - Emit
VerifierProfile.v1/VerificationResult.v1(and campaign types as applicable); do not fork Invocation/Replay/Mutation schemas. - Gate CI with
pcs conformance run --suite verifier-assuranceand the producer dialect tree underbenchmarks/verifier_assurance_conformance/. - Follow verifier-assurance/migration.md and verifier-assurance/non-claims.md.