Add new features and tests for AirGap and Time modules
Some checks failed
Docs CI / lint-and-preview (push) Has been cancelled
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.
This commit is contained in:
26
docs/modules/mirror/assembler.md
Normal file
26
docs/modules/mirror/assembler.md
Normal file
@@ -0,0 +1,26 @@
|
||||
# Mirror Assembler Staffing & Milestones (Sprint 110.D)
|
||||
|
||||
## Staffing
|
||||
- **Primary owner:** Alex Kim (Mirror Creator Guild)
|
||||
- **Backup:** Priya Desai (Exporter Guild)
|
||||
- **Observers:** AirGap Time Guild, CLI Guild
|
||||
|
||||
## Milestones
|
||||
1. **M0 recap (done 2025-11-19):** thin bundle sample + layout note (`docs/modules/mirror/milestone-0-thin-bundle.md`).
|
||||
2. **M1 (due 2025-11-26):** implement deterministic assembler with manifest + CAS layout; DSSE signing profile `sovereign-default`; produce sample bundle tarball + hash.
|
||||
3. **M1.1 (due 2025-11-28):** TUF metadata generation (`root.json`, `snapshot.json`, `timestamp.json`) and mirror index manifest.
|
||||
4. **M2 (due 2025-12-05):** integrate time-anchor metadata (AirGap Time), export automation hooks (Export Center), and CLI verification path.
|
||||
|
||||
## Responsibilities
|
||||
- Alex Kim: assembler core, DSSE signing, CAS layout.
|
||||
- Priya Desai: TUF metadata + exporter handoff.
|
||||
- AirGap Time Guild: time-anchor schema + verification guidance.
|
||||
- CLI Guild: `stella mirror verify` wiring and offline cache checks.
|
||||
|
||||
## Artefact locations
|
||||
- Assembler design: `docs/modules/mirror/thin-bundle-assembler.md`
|
||||
- Staffing/plan (this doc): `docs/modules/mirror/assembler.md`
|
||||
- Sample bundles: `out/mirror/thin/mirror-thin-m0-sample.tar.gz` (future M1/M2 under `out/mirror/thin/`)
|
||||
|
||||
## Risks
|
||||
- If M1 slips past 2025-11-26, Export Center and CLI tracks block; escalate to Exporter guild lead.
|
||||
22
docs/modules/mirror/prep-56-001-thin-bundle.md
Normal file
22
docs/modules/mirror/prep-56-001-thin-bundle.md
Normal file
@@ -0,0 +1,22 @@
|
||||
# Mirror Thin Bundle Prep — PREP-MIRROR-CRT-56-001 (Draft)
|
||||
|
||||
Status: Draft (2025-11-20)
|
||||
Owners: Mirror Guild (Assembler)
|
||||
Scope: Capture requirements to start thin bundle v1 when upstream Sprint 110.D artefacts land.
|
||||
|
||||
## Dependencies
|
||||
- Sprint 110.D assembler foundation (missing in repo).
|
||||
- Trust root list and TUF metadata locations from release pipeline.
|
||||
|
||||
## Proposed thin bundle v1 shape
|
||||
- Container: tar.gz deterministic; root manifest `mirror.thin.manifest.json`.
|
||||
- Fields: `bundle_id`, `schema_version`=`mirror.thin.v1`, `created_at`, `source_registry`, `artifacts[] {digest, media_type, size}`, `trust_roots[]`, optional `attestations[]`.
|
||||
- Merkle root over files for audit.
|
||||
|
||||
## Open decisions
|
||||
- Exact artifact set included in “thin” scope (SBOM only vs SBOM+metadata).
|
||||
- Required signatures (DSSE/Sigstore) and signer identities.
|
||||
- Retention/GC policy for thin bundles.
|
||||
|
||||
## Handoff
|
||||
Use this as the PREP artefact for PREP-MIRROR-CRT-56-001; update when assembler foundation drops so schema can be finalized and aligned with `docs/modules/mirror/thin-bundle-assembler.md`.
|
||||
Reference in New Issue
Block a user