Skip to content

Commit a3c3a27

Browse files
bradpottsclaude
andcommitted
Grant Codex autonomous release authority (tag + GitHub Release)
Codex now cuts releases autonomously instead of handing off to the maintainer for tag/publish: version.rb bump, CHANGELOG.md versioning with a "Phase <N> - <short title>" release title (phase sourced from this repo's own ROADMAP.md), a v<version> git tag, and a GitHub Release published via gh, for every release-ready [Unreleased] section — without waiting for per-release approval. RubyGems publishing (gem push) remains Bradley Potts's sole authority; Codex does not run gem push. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
1 parent c81005d commit a3c3a27

3 files changed

Lines changed: 55 additions & 18 deletions

File tree

AGENTS.md

Lines changed: 11 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -24,11 +24,17 @@ and Google Jules — have full commit, push, and tag authority in this
2424
repository, effective 2026-07-25 by explicit direction from Bradley Potts —
2525
see the Commit Policy section in each agent's own guide
2626
([CLAUDE.md](CLAUDE.md), [CODEX.md](CODEX.md), [COPILOT.md](COPILOT.md),
27-
[JULES.md](JULES.md)). Bradley Potts retains ultimate ownership and holds
28-
final authority for merges, publishing, and releases. This grant covers git
29-
operations within each agent's own scope of work as defined above — it does
30-
not expand what any agent is authorized to decide. ChatGPT has no repository
31-
access and is excluded.
27+
[JULES.md](JULES.md)). **OpenAI Codex** additionally has release authority:
28+
Codex cuts releases autonomously — version bump, changelog versioning,
29+
`v<version>` git tag, and GitHub Release publish via `gh` — for every
30+
release-ready `CHANGELOG.md [Unreleased]` section, without waiting for
31+
per-release approval; see `CODEX.md` "Release Mechanics" for the full
32+
procedure. **RubyGems publishing (`gem push`) remains Bradley Potts's sole
33+
authority** — no agent pushes the gem. Bradley Potts retains ultimate
34+
ownership and holds final authority for merges and publishing. This grant
35+
covers git and release operations within each agent's own scope of work as
36+
defined above — it does not expand what any agent is authorized to decide
37+
otherwise. ChatGPT has no repository access and is excluded.
3238

3339
## Cross-Repo Access
3440

CLAUDE.md

Lines changed: 9 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -92,11 +92,12 @@ Update:
9292

9393
## Release Procedure
9494

95-
1. Update `lib/ruby_api_pack_core/version.rb`.
96-
2. Move changelog notes from `[Unreleased]` into a dated version section.
97-
3. Run the validation gate described in [AGENTS.md](AGENTS.md).
98-
4. Confirm `ruby_api_pack_active_campaign`, `ruby_api_pack_cloudways`, and
99-
`ruby_api_pack_wordpress` still pass their own validation gates against the
100-
new version before publishing, if the change is anything other than
101-
additive.
102-
5. Build and publish only when the maintainer explicitly approves.
95+
Claude Code implements features and fixes with a `CHANGELOG.md [Unreleased]`
96+
entry per change. Cutting the release itself — version bump, changelog
97+
versioning, `v<version>` tag, and GitHub Release — is Codex's job; see
98+
`CODEX.md` "Release Mechanics" for the full procedure. That procedure
99+
includes confirming `ruby_api_pack_active_campaign`, `ruby_api_pack_cloudways`,
100+
and `ruby_api_pack_wordpress` still pass their own validation gates against
101+
the new version before any breaking or non-additive change ships, since
102+
those three gems depend on this one. `gem push` (RubyGems publish) stays
103+
with Bradley Potts regardless of who prepares the release.

CODEX.md

Lines changed: 35 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,10 @@
44

55
Codex owns documentation standardization, release readiness, repo hygiene,
66
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.
911

1012
## Default Workflow
1113

@@ -49,12 +51,40 @@ When reviewing changes, Codex checks:
4951

5052
## Validation Commands
5153

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.
5382

5483
## Hard Limits
5584

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.
5888
- Do not overwrite unrelated local changes.
5989
- Do not add vendor-specific knowledge, real credentials, or sensitive
6090
payloads to documentation or tests.

0 commit comments

Comments
 (0)