feat: add FinOps discipline across templates, workflow engine, and CI#2515
Open
duksh wants to merge 2 commits into
Open
feat: add FinOps discipline across templates, workflow engine, and CI#2515duksh wants to merge 2 commits into
duksh wants to merge 2 commits into
Conversation
…#1) 19 files changed, 759 additions, 31 deletions. - Cost Allocation table in spec-template.md - AI Model Tier / Estimated Token Budget fields in plan-template.md - Economic Efficiency principle (Article VI) in constitution-template.md - Clarification budget guard in clarify.md; cost field validation in plan.md - budget-gate step type (circuit breaker at 80%/100% LLM spend) - Fan-out max_parallel rename + batched engine loop - cost-tracker extension (record + report commands, after_implement hook) - cost_profile surfaced in specify extension list CLI - cost-review gate + spend-check step in speckit workflow - CI: path filter, fail-fast, uv cache https://claude.ai/code/session_017mzZmq4F57rAFJVsvVpnva
Collaborator
|
Please deliver this as an externally hosted extension as per https://github.com/github/spec-kit/blob/main/extensions/EXTENSION-PUBLISHING-GUIDE.md |
duksh
pushed a commit
to duksh/gith-spec-kit
that referenced
this pull request
May 12, 2026
Per upstream review feedback (github#2515), deliver cost-tracker as an externally hosted extension rather than bundled in the core repo. - Add README.md, LICENSE (MIT), CHANGELOG.md required by the publishing guide - Update extension.yml repository/homepage to duksh/spec-kit-cost-tracker - Remove cost-tracker entry from catalog.json (will be submitted to catalog.community.json via the issue template instead) https://claude.ai/code/session_017mzZmq4F57rAFJVsvVpnva
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
Adds FinOps (Cloud Financial Operations) discipline to Spec Kit so that
AI/LLM compute is treated as a first-class cost resource rather than a
zero-cost utility. Changes are purely additive — no existing structure
or APIs are broken.
What's included:
spec-template.md: new## Cost Allocationtable (team, cost center,approved/actual LLM budget, clarification rounds)
plan-template.md: mandatoryAI Model TierandEstimated Token Budgetfields in Technical Context
constitution-template.md: Article VI — Economic Efficiency (haiku default,fan-out cap, 80%-spend pause rule)
templates/commands/plan.md: errors on unfilled cost placeholderstemplates/commands/clarify.md: clarification budget guard; pauses whensession count ≥ budget
budget-gateworkflow step type — circuit breaker at 80% (warning)and 100% (abort/pause) of approved LLM spend; supports
{{ }}expressionsFanOutStep: renamesmax_concurrency→max_parallel(deprecated aliaskept), default 1 → 3; engine batches iteration in groups of
max_parallelcost-trackerextension (record+reportcommands,after_implementhook) — writes actual spend back to the spec's Cost Allocation table and
renders a per-feature budget summary
cost_profileblock in extension manifests; surfaced inspecify extension listCLI outputworkflows/speckit/workflow.yml:budget_usdinput,cost-reviewgate,spend-checkbudget-gate stepfail-fast: true, uv dependency cacheTesting
uv run specify --helpuv sync && uv run pytest— 324 passeduvx ruff check src/— no violationsmarkdownlint-cli2 "**/*.md"— no violationsAI Disclosure
This contribution was generated with Claude Code (claude-sonnet-4-6) via an
agentic session that performed the FinOps analysis, produced the implementation
plan, wrote all code and templates, addressed CI failures, and responded to
CodeRabbit review comments. All changes were reviewed and approved by the
human contributor before merging.