Some checks failed
Docs CI / lint-and-preview (push) Has been cancelled
- Introduced `SbomService` tasks documentation. - Updated `StellaOps.sln` to include new projects: `StellaOps.AirGap.Time` and `StellaOps.AirGap.Importer`. - Added unit tests for `BundleImportPlanner`, `DsseVerifier`, `ImportValidator`, and other components in the `StellaOps.AirGap.Importer.Tests` namespace. - Implemented `InMemoryBundleRepositories` for testing bundle catalog and item repositories. - Created `MerkleRootCalculator`, `RootRotationPolicy`, and `TufMetadataValidator` tests. - Developed `StalenessCalculator` and `TimeAnchorLoader` tests in the `StellaOps.AirGap.Time.Tests` namespace. - Added `fetch-sbomservice-deps.sh` script for offline dependency fetching.
1.2 KiB
1.2 KiB
Validate Bundle Prep — PREP-VALIDATE-BUNDLE-187-005 (Draft)
Status: Draft (2025-11-20) Owners: QA Guild · CLI Guild · Docs Guild Scope: Define validation steps for replay bundles once schemas freeze.
Validation checklist (proposed)
- Verify archive hash vs manifest
bundle.manifest.json(sha256). - Verify DSSE signature (if present) against trusted keys.
- Recompute Merkle root of bundle file tree; compare to manifest.
- Schema validation: replay records conform to
replay.record.v1; policy export bundle conforms topolicy.export.console.v1when included. - Determinism: run
stella replaytwice on same bundle and assert identical outputs (hash comparison).
Fixtures/tests
- Place golden bundles under
tests/EvidenceLocker/Fixtures/replay/with expected hashes and DSSE signatures. - CLI validation test:
stella verify --bundle <fixture>returns exit code 0 and printsverified: true.
Open dependencies
- Final schemas from Evidence Locker and Policy export contracts.
- Trust root list for DSSE verification (Authority decision).
Handoff
Use this prep doc for PREP-VALIDATE-BUNDLE-187-005; expand with concrete fixtures once schemas are frozen.