36 lines
1.9 KiB
Markdown
36 lines
1.9 KiB
Markdown
# Offline SBOM Verification CLI
|
|
|
|
## Module
|
|
Cli
|
|
|
|
## Status
|
|
VERIFIED
|
|
|
|
## Description
|
|
CLI command `stella sbom verify` for offline SBOM verification including signature validation, canonical hash recomputation, and format compliance checks for CycloneDX/SPDX documents without network connectivity.
|
|
|
|
## Implementation Details
|
|
- **Command Group**: `src/Cli/StellaOps.Cli/Commands/SbomCommandGroup.cs` -- `SbomCommandGroup` for `stella sbom` commands
|
|
- **SBOM Client**: `src/Cli/StellaOps.Cli/Services/SbomClient.cs` / `ISbomClient.cs` -- SBOM operations
|
|
- **SBOMer Client**: `src/Cli/StellaOps.Cli/Services/SbomerClient.cs` / `ISbomerClient.cs` -- SBOM generation client
|
|
- **Tests**: `src/Cli/__Tests/StellaOps.Cli.Tests/SbomCommandTests.cs`, `src/Cli/__Tests/StellaOps.Cli.Tests/Integration/SbomCanonicalVerifyIntegrationTests.cs`, `SbomVerifyIntegrationTests.cs`
|
|
- **Commands**:
|
|
- `stella sbom verify <file>` -- verify SBOM offline. Options: `--format cdx|spdx`, `--check-signature`, `--recompute-hash`
|
|
|
|
## E2E Test Plan
|
|
- [ ] Run `stella sbom verify ./sbom.cdx.json` and verify CycloneDX compliance check
|
|
- [ ] Run `stella sbom verify ./sbom.spdx.json` and verify SPDX compliance check
|
|
- [ ] Run with `--check-signature` and verify SBOM signature validation
|
|
- [ ] Run with `--recompute-hash` and verify canonical hash matches
|
|
- [ ] Verify offline operation (no network required)
|
|
- [ ] Verify invalid SBOM produces clear error with specific violations
|
|
|
|
## Verification
|
|
|
|
- **Verified**: 2026-02-13T15:30:00Z
|
|
- **Tier 0 (Source)**: pass -- all referenced source files exist on disk
|
|
- **Tier 1 (Build)**: pass -- module builds cleanly, 412 tests pass in StellaOps.Cli.Commands.Tests
|
|
- **Tier 2d (Integration)**: pass -- targeted integration tests confirm behavioral correctness
|
|
- **Test Project**: `src/Cli/__Tests/StellaOps.Cli.Commands.Tests/StellaOps.Cli.Commands.Tests.csproj`
|
|
- **Evidence**: `docs/qa/feature-checks/runs/cli/offline-sbom-verification-cli/run-001/tier2-integration-check.json`
|