v0.5.0
forge v0.5.0 adds two utility commands and makes the type-check step adapt to projects that don't use mypy.
Added
/forge:status— a one-screen snapshot of where a project stands: phase and active plan, each gate (check/audit) as green-for-the-current-tree / stale / never-run, the dirty set, installed style references, the binding-directive count, plus any armed one-shot override (about to fire) and recent override history. Pure read; the report builder lives inlib/status.py./forge:override <gate> "<reason>"— an ergonomic, logged front door to the one-shot bypass the hooks already honour (gates:check,audit,stop,plan,uv). It arms.forge/override-<gate>with the reason baked in; the next matching gated action consumes it and records the bypass. Writing the sentinel by hand still works. The hook deny messages anddocs/state-schema.mdnow point at the command.
Changed
- The type-check step is now opt-in by configuration. mypy runs only when the project configures it (
[tool.mypy],mypy.ini/.mypy.ini, or a[mypy]section insetup.cfg); otherwise the step is skipped, not failed. Previouslyuv run mypyon a project that never installed mypy would fail the gate for a tool it deliberately doesn't use. forge-scaffolded projects ship[tool.mypy], so they keep type-checking unchanged.
Full changelog: https://github.com/prabhuakshay/forge/blob/main/CHANGELOG.md