Every document filename now mirrors its lifecycle state with a status suffix (e.g., .draft.md, .wip.md, .accepted.md). No more bare .md for tracked document types. Also renamed all from_str methods to parse to avoid FromStr trait confusion, introduced StagingDeploymentParams struct, and fixed all 19 clippy warnings across the codebase. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2 KiB
2 KiB
Spike: Develop Branch Workflow
| Status | Complete |
| Date | 2026-01-25 |
Question
How should we implement the develop branch workflow for Blue, and what's needed to enforce it consistently?
Findings
Current State
| Branch | Location | Purpose |
|---|---|---|
main |
forgejo, origin | Only branch - contains all production code |
git-forge-integration |
forgejo | RFC 0013 feature branch |
mcp-workflow-guidance |
forgejo | RFC 0011 feature branch |
Problem: blue_pr_create defaults to develop base and rejects main/master, but no develop branch exists. Feature branches can't be merged.
The Workflow Model
main (production releases only)
↑ merge when releasing
develop (integration branch)
↑ PRs merge here
feature branches (rfc/*, feature/*)
Why this matters:
mainstays stable - only receives tested, integrated codedevelopis where features integrate before release- Prevents accidental direct commits to production
- Enables release management (develop → main when ready)
What's Needed
- Create
developbranch from currentmain - Push to forgejo
- Update forgejo settings - set default branch to
develop - Rebase existing feature branches onto
develop - Add
blue_release_createtool for develop → main merges
Tool Enforcement (Already Done)
blue_pr_create in pr.rs:59-71:
- Defaults base to
develop - Rejects
main/masterwith helpful message - This is correct - just needs the branch to exist
Recommendation
Proceed. Create the develop branch now. This is a one-time setup:
# From main branch
git checkout main
git checkout -b develop
git push forgejo develop
# On Forgejo: Settings → Branches → Default Branch → develop
Then existing feature branches can create PRs targeting develop.
Outcome
Proceed with implementation - create develop branch and update forgejo settings.