Enterprise release truth¶
The enterprise workflow is deliberately small: collect deterministic evidence, evaluate policy, preserve the decision, and make every later change visible.
Stable evidence contract¶
gig trace --format json and gig guard --format json expose the versioned
Release Truth Graph. The current graph version is 2026-08-1; its machine
contract is published at
docs/schemas/release-truth-v2026-08-1.schema.json.
New fields can be added within this schema version, while removals or semantic
changes require a new version.
Provider evidence has an explicit collection state:
complete: provider evidence was collected.unavailable: the provider supports it, but collection failed or was not authenticated.unsupported: the provider cannot supply that evidence.
Missing evidence never silently becomes safe. A previously safe graph becomes
unknown until the evidence gap is resolved.
Gate and SARIF¶
gig guard ABC-123 --repo github:owner/name --target prod
gig guard ABC-123 --repo github:owner/name --target prod --format sarif > gig.sarif
The gate exits zero only for safe. Blocking findings, review findings, and
evidence gaps are deterministic records with stable IDs, provenance, impact,
severity, and remediation. SARIF can be uploaded to GitHub Code Scanning.
GitHub users can call .github/workflows/gig-gate.yml; GitLab users can include
.gitlab/ci/gig-gate.yml and provide GIG_TICKET.
Replay an incident¶
Keep snapshots at important checkpoints, then compare them:
gig replay \
--baseline .gig/checkpoints/qa-failed.json \
--current .gig/releases/current/snapshots/abc-123.json
Replay reports changes in commits, pull requests, checks, deployments, dependencies, risks, and verdict. It does not mutate either snapshot.
Tamper-evident packets¶
gig packet attest --input release-packet.xlsx
gig packet verify \
--input release-packet.xlsx \
--attestation release-packet.xlsx.attestation.json
The attestation records a SHA-256 digest, file size, creation time, and schema version. Verification fails if the packet changes.
Human approval ledger¶
Export the graph first, then bind a decision to its digest:
gig guard ABC-123 --repo github:owner/name --target prod --format json > gate.json
gig approval record \
--graph gate.json \
--actor jane@example.com \
--role release-manager \
--reason "Change window approved"
gig approval verify --graph gate.json
An approval contains the actor, role, decision, reason, expiry, evidence digest, and ticket. Changing the evidence or waiting past expiry invalidates it.
The ledger is a portable local JSON contract. Teams that need centralized authorization should store it in their controlled evidence system and protect the write path with their existing identity provider.