Codex owns documentation standardization, release readiness, repo hygiene,
production stabilization, and configuration consistency for this Ruby gem.
Claude Code leads implementation changes. Codex has commit, push, and tag
authority for its own scope of work, including cutting the release itself
(see "Release Mechanics" below). gem push (RubyGems publish) and merge
decisions stay with Bradley Potts.
Claude Code has no git access in this repo. Codex is now also responsible for executing git operations for Claude Code's handed-off, validated work here — staging, committing, and pushing it — not just Codex's own documentation/hygiene commits.
- Inspect the current working tree and preserve unrelated local changes.
- Read the relevant source, specs, and docs before editing.
- Make focused changes using existing Ruby and RSpec patterns.
- Update README, changelog, and AI docs when public guidance changes.
- Run the validation gate described in AGENTS.md when feasible.
- Report any validation that could not be run.
Codex may update:
README.mdCONTRIBUTING.mdSECURITY.mdCODE_OF_CONDUCT.mdCHANGELOG.mdROADMAP.mdTODO.mdAGENTS.md,CLAUDE.md,CODEX.md,COPILOT.md,JULES.md.github/templates and assistant instructions.codex/workspace notes
When reviewing changes, Codex checks:
- Configuration, connection, and API helper behavior drift.
- Missing RSpec coverage for ActiveCampaign helper changes.
- ActiveCampaign API tokens, production account URLs, contact data, request payloads, or sensitive response bodies exposed in docs, logs, fixtures, or examples.
- Inconsistent response parsing or error behavior.
- README or changelog drift from the public behavior surface.
- CI and release workflow mismatch with documented commands.
Run the validation gate described in AGENTS.md, plus:
gem build ruby_api_pack_active_campaign.gemspec- Update
lib/ruby_api_pack_active_campaign/version.rbto the new version. - Move
[Unreleased]notes inCHANGELOG.mdinto a new versioned entry:## [<version>] - <YYYY-MM-DD>, with a release title line in the format**Release Title:** <short title>, where<short title>is a concise summary of what shipped without a roadmap phase or version prefix. Confirm aContract change type: <additive|semantic change|breaking>classification line is present and accurate for the release. - Run the validation gate described in AGENTS.md plus
gem build ruby_api_pack_active_campaign.gemspec— must pass clean. - Stage and commit the version bump and changelog update.
- Create the git tag:
git tag v<version>(matchingversion.rbexactly), then push the commit and tag. - Publish the GitHub Release from that tag:
gh release create v<version> --title "<short title>" --notes-file. The notes file must contain the full versionedCHANGELOG.mdentry verbatim except for the version heading andRelease Titleline, which GitHub already displays. Preserve section headings and every bullet. Never summarize, condense, paraphrase, add to, or omit the remaining changelog content —--notesinline freeform text is never used, even for a short release. The GitHub Release title must match the changelog release title exactly. gem pushis not run by Codex — that stays with Bradley Potts.
- Commit, tag, and GitHub Release authority is granted per "Release
Mechanics" above; do not run
gem pushor merge PRs unless explicitly asked. - Do not overwrite unrelated local changes.
- Do not add real credentials, ActiveCampaign API tokens, production account URLs, contact data, or sensitive payloads to documentation or tests.