rustc --version: record in CI logs and local shell output.cargo --version: record in CI logs and local shell output.- EvidenceOS revision pin:
EVIDENCEOS_REVin.github/workflows/ci.yml.
Run the full gate script:
make test-evidenceThis script writes the following deterministic artifact filenames under artifacts/ci/:
discos_fmt_output.txtclippy-report.txttest_output.txtdiscos_coverage_output.txtcoverage.lcovfuzz_structured_claims_json.txtfuzz_structured_claims_canonical.txtfuzz_structured_claim_parse_canonicalize.txt
Exact gate commands run by the script:
cargo fmt --all -- --check
cargo clippy --workspace --all-targets --all-features -- -D warnings
cargo test --workspace --all-targets --all-features
cargo llvm-cov --workspace --all-features --lcov --output-path artifacts/ci/coverage.lcov --fail-under-lines 95
cargo +nightly fuzz run fuzz_structured_claims_json -- -max_total_time=20
cargo +nightly fuzz run fuzz_structured_claims_canonical -- -max_total_time=20
cargo +nightly fuzz run fuzz_structured_claim_parse_canonicalize -- -max_total_time=10Run:
./scripts/check_proto_drift.shThis validates that DiscOS does not vendor evidenceos.* protobuf definitions locally and therefore cannot drift from the shared upstream protocol crate.
Run:
./scripts/system_test.shSystem-test artifacts are written under:
artifacts/system-test/<timestamp>/
Expected files include:
health.jsoncreate_a.jsoncommit_a.jsonfreeze_a.jsonexecute_a.jsonseal_a.jsonfetch_a.jsondaemon.logdaemon_contract_test.logsummary.txt
To run end-to-end against a specific EvidenceOS daemon binary:
EVIDENCEOS_DAEMON_BIN=/path/to/evidenceos-daemon \
EVIDENCEOS_DAEMON_ADDR=http://127.0.0.1:50051 \
./scripts/system_test.shGitHub Actions uploads:
discos-ci-artifactsfromartifacts/ci/system-test-artifactsfromartifacts/system-test/
Run targeted structured-claims unit + proptest + integration coverage:
cargo test -p discos-core structured_claims
cargo test -p discos-core --test structured_claims_end_to_endCoverage notes:
- Property-based coverage for structured claims is implemented under
crates/discos-core/src/structured_claims.rsinmod prop_tests. - System-style pipeline coverage is implemented in
crates/discos-core/tests/structured_claims_end_to_end.rs, chaining parse → validate → canonicalize → kout accounting/budget → ledger charge → ETL append → inclusion proof verify (+ tamper failure).
Run:
./scripts/probe_simulation.sh --endpoint http://127.0.0.1:50051 --claims 200 --unique-hashes 200 --topics 10 --require-controlsIntegration guard (mock daemon + deterministic artifact checks):
cargo test -p discos-client --test probe_simulation_integrationDeterministic filenames produced by the probe demo:
probe_simulation_summary.jsonprobe_simulation_requests.jsonlprobe_simulation_human.txt