|
4 | 4 |
|
5 | 5 | Codex owns documentation standardization, release readiness, repo hygiene, |
6 | 6 | production stabilization, and configuration consistency for this Ruby gem. |
7 | | -Claude Code leads implementation changes. Human maintainers own final commit, |
8 | | -merge, tag, publish, and release decisions. |
| 7 | +Claude Code leads implementation changes. Codex has commit, push, and tag |
| 8 | +authority for its own scope of work, including cutting the release itself |
| 9 | +(see "Release Mechanics" below). `gem push` (RubyGems publish) and merge |
| 10 | +decisions stay with Bradley Potts. |
9 | 11 |
|
10 | 12 | ## Default Workflow |
11 | 13 |
|
@@ -49,12 +51,40 @@ When reviewing changes, Codex checks: |
49 | 51 |
|
50 | 52 | ## Validation Commands |
51 | 53 |
|
52 | | -Run the validation gate described in [AGENTS.md](AGENTS.md). |
| 54 | +Run the validation gate described in [AGENTS.md](AGENTS.md), plus: |
| 55 | + |
| 56 | +```bash |
| 57 | +gem build ruby_api_pack_core.gemspec |
| 58 | +``` |
| 59 | + |
| 60 | +## Release Mechanics |
| 61 | + |
| 62 | +1. Update `lib/ruby_api_pack_core/version.rb` to the new version. |
| 63 | +2. Move `[Unreleased]` notes in `CHANGELOG.md` into a new versioned entry: |
| 64 | + `## [<version>] - <YYYY-MM-DD>`, with a release title line in the format |
| 65 | + `**Release Title:** Phase <N> - <short title>`, where `Phase <N>` is the |
| 66 | + active phase name from this repo's own `ROADMAP.md` and `<short title>` |
| 67 | + is a concise summary of what shipped. If the release spans no single |
| 68 | + ROADMAP phase, state that explicitly instead of inventing one. |
| 69 | +3. Run the validation gate described in [AGENTS.md](AGENTS.md) plus |
| 70 | + `gem build ruby_api_pack_core.gemspec` — must pass clean. |
| 71 | +4. If the release is anything other than additive, confirm |
| 72 | + `ruby_api_pack_active_campaign`, `ruby_api_pack_cloudways`, and |
| 73 | + `ruby_api_pack_wordpress` still pass their own validation gates against |
| 74 | + the new version before proceeding — those three gems depend on this one. |
| 75 | +5. Stage and commit the version bump and changelog update. |
| 76 | +6. Create the git tag: `git tag v<version>` (matching `version.rb` exactly), |
| 77 | + then push the commit and tag. |
| 78 | +7. Publish the GitHub Release from that tag: `gh release create v<version> |
| 79 | + --title "v<version>: Phase <N> - <short title>" --notes-file` (extract the |
| 80 | + new version's changelog section, or `--notes` inline for a short release). |
| 81 | +8. `gem push` is **not** run by Codex — that stays with Bradley Potts. |
53 | 82 |
|
54 | 83 | ## Hard Limits |
55 | 84 |
|
56 | | -- Do not publish the gem unless explicitly asked. |
57 | | -- Codex has commit, push, and tag authority for its own scope of work; do not publish the gem or cut releases unless explicitly asked. |
| 85 | +- Commit, tag, and GitHub Release authority is granted per "Release |
| 86 | + Mechanics" above; do not run `gem push` or merge PRs unless explicitly |
| 87 | + asked. |
58 | 88 | - Do not overwrite unrelated local changes. |
59 | 89 | - Do not add vendor-specific knowledge, real credentials, or sensitive |
60 | 90 | payloads to documentation or tests. |
0 commit comments