2.0 KiB
2.0 KiB
Reproducible build verification
Module
BinaryIndex
Status
IMPLEMENTED
Description
Reproducible build backend supports local rebuilds with air-gap bundle support for verifying binary provenance.
Implementation Details
- Modules:
src/BinaryIndex/__Libraries/StellaOps.BinaryIndex.Builders/,src/BinaryIndex/StellaOps.BinaryIndex.Worker/,src/BinaryIndex/__Libraries/StellaOps.BinaryIndex.GroundTruth.Reproducible/ - Key Classes:
ReproducibleBuildJob(src/BinaryIndex/StellaOps.BinaryIndex.Worker/Jobs/ReproducibleBuildJob.cs) - worker job that executes reproducible builds usingIFunctionFingerprintExtractor,IPatchDiffEngine, andIFingerprintClaimRepositoryReproducibleBuildJob(builders) (src/BinaryIndex/__Libraries/StellaOps.BinaryIndex.Builders/ReproducibleBuildJobTypes.cs) - builder-level reproducible build job with optionsReproducibleBuildOptions- configuration for build verification parametersValidationHarnessService(src/BinaryIndex/__Libraries/StellaOps.BinaryIndex.GroundTruth.Reproducible/ValidationHarnessService.cs) - validates reproducible build outputsFingerprintClaim/FingerprintClaimEvidence(src/BinaryIndex/__Libraries/StellaOps.BinaryIndex.Builders/FingerprintClaimModels.cs) - claims produced from build verification
- Interfaces:
IReproducibleBuilder(src/BinaryIndex/__Libraries/StellaOps.BinaryIndex.Builders/IReproducibleBuilder.cs),IReproducibleBuildJob
E2E Test Plan
- Submit a source package and verify reproducible build produces matching binary fingerprints
- Verify
FingerprintClaimis generated with correctFingerprintClaimEvidencelinking to Build-ID - Verify build verification with non-matching binaries produces a failed verification result
- Verify air-gap bundle support: import build inputs from bundle and verify build completes offline
- Verify
ReproducibleBuildOptionsconfiguration controls build behavior - Verify build job integrates with
IPatchDiffEnginefor post-build comparison