🌱 Add spec-driven development (SDD) framework#2668
🌱 Add spec-driven development (SDD) framework#2668perdasilva wants to merge 2 commits intooperator-framework:mainfrom
Conversation
Bootstrap governing specs and workflow commands for spec-driven development. Includes project mission, tech stack reference, historical roadmap derived from merged PRs, and commit/PR conventions. Adds four Claude Code slash commands for planning, implementing, reviewing, and shipping phase-based work. Updates AGENTS.md with SDD section. Signed-off-by: Per G. da Silva <pegoncal@redhat.com>
|
[APPROVALNOTIFIER] This PR is NOT APPROVED This pull-request has been approved by: The full list of commands accepted by this bot can be found here. DetailsNeeds approval from an approver in each of these files:Approvers can indicate their approval by writing |
✅ Deploy Preview for olmv1 ready!
To edit notification comments on pull requests, go to your Netlify project configuration. |
There was a problem hiding this comment.
Pull request overview
Bootstraps a spec-driven development (SDD) framework for operator-controller by adding governing specs under specs/, adding Claude Code workflow command docs under .claude/commands/, and referencing them from AGENTS.md so contributors/agents have a consistent process baseline.
Changes:
- Add governing specs: mission, tech stack, roadmap, and conventions under
specs/. - Add four phase-based workflow command documents under
.claude/commands/(/sdd-plan-next-phase,/sdd-implement,/sdd-review,/sdd-ship). - Update
AGENTS.mdwith an SDD section linking to the specs and commands.
Reviewed changes
Copilot reviewed 9 out of 9 changed files in this pull request and generated 3 comments.
Show a summary per file
| File | Description |
|---|---|
| specs/tech-stack.md | Documents language/runtime, dependencies, project structure, build commands, and CI/CD. |
| specs/roadmap.md | Captures historical phases and a placeholder for next phase planning. |
| specs/mission.md | Defines goals, non-goals, design principles, and development practices. |
| specs/conventions.md | Establishes commit/PR/branch/git-remote conventions for contributions. |
| AGENTS.md | Adds an SDD section pointing agents/contributors to the governing specs and workflows. |
| .claude/commands/sdd-plan-next-phase.md | Phase planning workflow (branch + spec directory scaffolding). |
| .claude/commands/sdd-implement.md | Implementation workflow keyed off phase spec requirements/validation. |
| .claude/commands/sdd-review.md | Review workflow for spec/convention alignment and verification steps. |
| .claude/commands/sdd-ship.md | Ship workflow for verify/commit/publish aligned with repo conventions. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
|
|
||
| GitHub Actions workflows: | ||
| - `unit-test.yaml` - Unit tests with coverage | ||
| - `e2e.yaml` - Multiple e2e test suites (7 variants) |
There was a problem hiding this comment.
The CI/CD section claims e2e.yaml runs "(7 variants)", but the current workflow matrix defines 6 e2e variants (extension-developer-e2e, e2e, experimental-e2e, upgrade-st2st-e2e, upgrade-st2ex-e2e, st2ex-e2e). Please update the count (or list the variants explicitly) so the spec stays accurate.
| - `e2e.yaml` - Multiple e2e test suites (7 variants) | |
| - `e2e.yaml` - Multiple e2e test suites (6 variants) |
| | helm-operator-plugins | Helm-based bundle rendering | | ||
| | cert-manager | TLS certificate management | | ||
| | package-operator.run (boxcutter) | Object set management | | ||
| | google/go-containerregistry | OCI image handling | |
There was a problem hiding this comment.
The dependency name here doesn’t match the actual Go module path used by the repo (pkg.package-operator.run/boxcutter in go.mod). Using the real module/import path (and optionally the product name in parentheses) will make this spec easier to act on.
| | google/go-containerregistry | OCI image handling | | |
| | github.com/google/go-containerregistry | OCI image handling | |
| | operator-sdk | Extension developer tooling | bingo | | ||
| | yamlfmt | YAML formatting | bingo | | ||
| | conftest | Helm policy testing | bingo | | ||
| | godog/cucumber | E2E BDD tests | go.mod | |
There was a problem hiding this comment.
The tool name in this row is reversed/ambiguous (the module is github.com/cucumber/godog). Consider renaming the entry to "godog" (or "github.com/cucumber/godog") to match what developers will search for in go.mod and code.
| | godog/cucumber | E2E BDD tests | go.mod | | |
| | godog | E2E BDD tests | go.mod | |
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #2668 +/- ##
==========================================
- Coverage 68.81% 63.41% -5.41%
==========================================
Files 141 141
Lines 12536 12536
==========================================
- Hits 8627 7950 -677
- Misses 3392 4082 +690
+ Partials 517 504 -13
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
Replace the roadmap.md phase-picking flow with GitHub issue discovery. The /sdd-plan-next-phase command now searches for epics labeled `epic` and `refined` that are unassigned and have all dependency issues resolved (marked `done`). On selection, it assigns the epic and creates a branch. The /sdd-ship command offers to label the epic as `done` after PR creation. Signed-off-by: Per G. da Silva <pegoncal@redhat.com>
|
Perhaps move this into openshift-eng/olm-team-ai-helpers so that we can use it for multiple repos? That's the idea for that repo. |
Description
Bootstrap spec-driven development (SDD) framework for the project. Adds governing specs under
specs/and four Claude Code workflow commands under.claude/commands/for phase-based development.Governing specs:
specs/mission.md— goals, non-goals, design principles, development practicesspecs/tech-stack.md— language, dependencies, build commands, project structurespecs/roadmap.md— 6 historical phases derived from merged PRs, with open Phase 7 placeholderspecs/conventions.md— commit messages, PR format, branch naming, fork-based git remote conventionsWorkflow commands:
/sdd-plan-next-phase— plan the next development phase with spec directory/sdd-implement— implement a phase spec following task groups/sdd-review— review branch changes for consistency with specs/sdd-ship— verify, commit, and publish with project conventionsAlso updates
AGENTS.mdwith an SDD section referencing the specs and commands.Reviewer Checklist