Windmill

v0.4.12 · Forge by Windmill

Ship to production with proof, not promises.

Forge audits every release against an 18-domain framework — 29 gates across Python, Node, Java and Flutter repos — scrubs secrets, and gates delivery through recorded admin approval. One repo or a whole campaign roster. Ships as both a CLI and a multi-tenant platform.

Why Forge

Designed for pipelines that can't afford a bypass.

Three principles differentiate Forge from off-the-shelf SAST/DAST stacks. All three are load-bearing in regulated environments.

Fail-Closed Gates

Deterministic gates — Bandit, Semgrep, Trivy, Gitleaks, Checkov and more — run in digest-pinned Docker runners on every audit. A single P0 finding forces NO-GO, and no flag turns a NO-GO into a GO.

Separation of Duties

Four layers between a verdict and a pushed tag: the agent refuses to release without a fresh GO on the same SHA, an admin approves in-app under a four-eyes rule the database enforces, a separate push-service ships with its own deploy key, and your git-host push rules reject anyone else.

One Framework, Every Client

18-domain framework + 5-judge LLM panel. Append-only registry records every verdict with reproducibility headers. The same bar for every client; per-client configs layer in policy floors, never exceptions.

What gets checked

29 gates across five families.

Deterministic gates run in pinned Docker runners; LLM lanes add a 5-judge review. Profiles are language-aware — Python, Node, Java and Flutter repos each get the gate set their stack warrants.

4

Tier-1 spine

The deterministic Python baseline on every audit — Bandit SAST, pip-audit SCA, a coverage floor, and an SBOM.

10

Quality

Maintainability per language — Lizard complexity, ruff/vulture/pylint, deptry dependency hygiene, PMD for Java, dart analyze for Flutter, ESLint/jscpd/knip for Node — plus API-contract, architecture, IaC, observability and documentation gates.

9

Security

SAST, SCA, container, IaC-security, secret-history, auth, encryption and security-logging gates — plus a phantom-dependency / slopsquatting check for hallucinated packages.

2

Governance

Row-level access-control enforcement and waiver hygiene — expired or over-long waivers are flagged, never silently honoured.

4

AI-control

Prompt versioning, audit-log verification, an entitlement firewall and an adversarial test pack — the controls specific to AI-built and AI-operated systems.

How it works

Five stages, every release, every time.

  1. 1

    Scan

    Discover the project, scaffold .forge/, detect stack and project_kind.

  2. 2

    Audit

    Run the profile-aware gate set + 5-judge LLM panel; final verdict written to the registry.

  3. 3

    Stage

    Orphan worktree + 5-phase scrub (removals, renames, rewrites, sed, grep gate) under a default-deny allowlist.

  4. 4

    Verify

    Profile-dispatched build: DockerCompose, Flutter, or PureBuild — must pass before promote.

  5. 5

    Promote

    Annotated tag + SHA256 archive + dependency evidence; push command printed for the operator.

Two ways to run it

One repo, or a whole campaign.

The same gate engine and the same verdict bar, whether you gate a single service or orchestrate a release across dozens of repos.

Single repo

One repository, scaffolded once and gated on every release. Runs locally or in CI.

  1. 1forge scan — discover the stack, scaffold .forge/
  2. 2forge audit — run the profile-aware gate set + judge panel
  3. 3forge release — scrub, stage, verify, tag — push stays gated

Multi-repo campaign

A whole roster of repositories audited and released together from one deliver folder.

  1. 1forge campaign init — scaffold the deliver folder + roster
  2. 2forge campaign audit — audit every repo, unified output tree
  3. 3forge campaign release — release the roster at one version
  4. 4forge campaign status — one verdict table across all repos

Modules

Four surfaces. One framework.

Scan

One-shot discovery + manifest scaffolding. Recognises python, node, flutter, eval-harness, and java/Kotlin services.

Audit

Deterministic gates + LLM lanes (Claude, OpenAI, or Cursor) + 5-judge panel. Unified SARIF 2.1.0 report; evidence archived to the append-only registry per run.

Release

Staged delivery branch, dependency evidence (SBOM where available), annotated tag, archive with SHA256.

Approvals

Admin-only sign-off, tenant-scoped, append-only audit trail. Push-service polls and ships only after approved=true.

Industries

Built for teams whose releases matter.

Aviation & Transportation

Meet the documentation and evidence bar regulators expect.

Financial Services

Separate duties by design; show an auditor the evidence trail.

Healthcare

HIPAA-minded release trails with tamper-evident approvals.

Energy & Industrial

Supply-chain-safe releases for safety-critical software.

Ready to gate your next release?

We'll stand up a demo tenant against a repo you pick. Under 30 minutes from SSO handshake to first audit.