Skip to main content

Promotion gate for LLM deployments. Blocks unsafe CI to staging promotion.

Project description

Release Governor

Block promotion when malformed LLM outputs leak past staging validation boundaries.

Designed for staging/pre-prod environments with structured CI/CD workflows.

Install

pip install llm-release-governor

What it does

Release Governor sits between your CI contract checker and your staging environment. It consumes a locc artifact, detects leakage the contract checker allowed through, and enforces a promotion policy per environment.

locc (CI) -> Release Governor (staging gate) -> EGA (runtime)

Quickstart

release-governor evaluate \
  --locc-artifact locc_result.json \
  --env staging \
  --sha $GIT_SHA

Exit 0 = ALLOW, Exit 1 = BLOCK, Exit 2 = REQUIRE_OVERRIDE

What it detects

Type Signal
PII leakage PII signals in locc check reasons
Schema leakage Structural diffs locc allowed through
Policy leakage Promotion violates env-specific rules

Override path

release-governor override create \
  --env staging \
  --approved-by alice \
  --reason "confirmed false positive" \
  --leakage-types pii \
  --sha $GIT_SHA \
  --identity-hash $ARTIFACT_HASH \
  --expires-in-days 7

Then: commit the override file and re-run evaluate.

Audit log

release-governor evaluate \
  --locc-artifact locc_result.json \
  --env staging \
  --sha $GIT_SHA \
  --audit-log rg_audit.jsonl
{"event_type": "PROMOTION_BLOCKED", "sha": "...", "actor": "system"}

GitHub Actions

- name: Gate promotion
  run: |
    pip install locc llm-release-governor
    locc run --contract contracts/current.json \
             --snapshot snapshots/current.json \
             --output json > locc_result.json
    release-governor evaluate \
      --locc-artifact locc_result.json \
      --env staging \
      --sha ${{ github.sha }}

Environment policies

Environment Policy
staging FAIL blocks. HOLD allowed if no schema leakage
preprod FAIL or HOLD blocks
prod PASS only, no diffs, no leakage

Stack integration

Release Governor is part of the LLM Reliability Stack.

Consumes locc artifacts. Sits upstream of EGA.

Layer Tool
Design-time PFA
CI locc
Staging Release Governor
Runtime EGA

License

MIT

Publishing

Releases are published automatically to PyPI on version tag push.

To release:

git tag v0.1.0
git push origin v0.1.0

To dry-run on TestPyPI first:

Trigger the "Publish to TestPyPI" workflow manually from GitHub Actions.

PyPI trusted publishing must be configured once per project:

PyPI project settings -> Publishing -> Add publisher Owner: Repository: Workflow: publish.yml Environment: pypi

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

llm_release_governor-0.1.0.tar.gz (20.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

llm_release_governor-0.1.0-py3-none-any.whl (15.8 kB view details)

Uploaded Python 3

File details

Details for the file llm_release_governor-0.1.0.tar.gz.

File metadata

  • Download URL: llm_release_governor-0.1.0.tar.gz
  • Upload date:
  • Size: 20.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for llm_release_governor-0.1.0.tar.gz
Algorithm Hash digest
SHA256 f01061328dcccb1e3b157f013c2b590559c65390f2406f80778c74db438d1622
MD5 6752050d1857b0381a2bdffa735dca77
BLAKE2b-256 3c936da1830f6114f3eb4fbff3e02b9ff47c1f244279dabc3b14a5d65b76d647

See more details on using hashes here.

Provenance

The following attestation bundles were made for llm_release_governor-0.1.0.tar.gz:

Publisher: publish.yml on bh3r1th/llm-release-governor

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file llm_release_governor-0.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for llm_release_governor-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 1b86ef2805c250013dee596889d21dc7073e7867a412a7d6a2c72c07db5a9f2e
MD5 a7c45dcf532c1b3b1c979086d4645d32
BLAKE2b-256 88e3eeb1431c9a8894813083f4bc8893b4fb929c6ba51ff003b871b2252fd909

See more details on using hashes here.

Provenance

The following attestation bundles were made for llm_release_governor-0.1.0-py3-none-any.whl:

Publisher: publish.yml on bh3r1th/llm-release-governor

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page