Skip to content

Attest build environment configuration (Bazel version, Nix hash, toolchain versions) #49

@avrabe

Description

@avrabe

Motivation

sigil currently attests pipeline transformation steps (meld → loom → synth). For full qualification traceability, the attestation chain should also capture the build environment:

  • Bazel version and configuration
  • Nix flake lock hash (when available)
  • Toolchain versions (rustc, wasm-tools, etc.)
  • Host platform and OS version

Ferrocene's Safety Manual includes build monitoring constraints (RUSTC_CSTR_0030) requiring verification that "proper versions of the tools have been used with the appropriate options." Automating this through sigil attestation is stronger than procedural controls.

Scope

  • Capture build environment metadata as part of attestation
  • Include Bazel invocation details (version, config, platform)
  • Include Nix flake lock hash when builds use Nix-provisioned toolchains
  • Include toolchain version strings (rustc --version, wasm-tools --version, etc.)
  • Embed environment attestation in SLSA provenance format

Related

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions