Skip to content

v1.0.2 — before_plan gate enforces Principle VIII

Latest

Choose a tag to compare

@ashbrener ashbrener released this 22 Apr 13:10

What's new

Adds a mandatory before_plan hook that enforces Constitution Principle VIII — Red Team Qualifying Specs Before Plan automatically. Prior releases left enforcement hybrid (constitution declared the rule, maintainer remembered to invoke /speckit.red-team.run); v1.0.2 closes the gap using the hook mechanism /speckit.plan already understands.

New command

  • /speckit.red-team.gate — deterministic gate that scans the current feature spec for the six trigger categories (money_path, regulatory_path, ai_llm, immutability_audit, multi_party, contracts) and returns one of three outcomes:
    • PROCEED — non-qualifying spec (no trigger match). Silent.
    • SATISFIED — qualifying spec with a findings report on record (specs/<feature-id>/red-team-findings-*.md or 99_Archive/red-team/<feature-id>/).
    • HALT — qualifying spec, no findings on record. /speckit.plan blocks with explicit options: run /speckit.red-team.run now, or opt out with --skip-red-team-gate: <reason> which is recorded as an Accepted Risk tagged [red-team-skipped] in the plan.

Extension.yml change

New hooks.before_plan block declaring speckit.red-team.gate as a mandatory hook. /speckit.plan auto-invokes it on every run; the gate is idempotent and cheap (<10ms on non-qualifying specs).

Compatibility

  • Keyword matching is deliberately liberal — the only acceptable failure mode is a false-positive prompt (red team you may not strictly have needed), never a false-negative silent waiver.
  • Projects that do not want the gate simply do not install the extension.
  • No breaking changes to /speckit.red-team.run or the lens catalog schema.

Full details: CHANGELOG.