Back to Everything Claude Code

ECC v2.0.0-rc.1 Release Name And Plugin Publication Checklist

docs/releases/2.0.0-rc.1/release-name-plugin-publication-checklist-2026-05-18.md

2.0.08.5 KB
Original Source

ECC v2.0.0-rc.1 Release Name And Plugin Publication Checklist

Snapshot date: 2026-05-18. Canonical repo decision refreshed 2026-05-19 after the public repo rename to affaan-m/ECC; release/package state refreshed 2026-05-26 after the GitHub prerelease and npm next readbacks succeeded.

This checklist is the operator gate for release naming, package publication, and Claude/Codex plugin distribution. It is not a publication action by itself. Run it from the exact release commit before creating tags, publishing npm, submitting marketplace forms, or posting announcements.

Fixed rc.1 Decision

Ship v2.0.0-rc.1 as ECC.

  • Keep the GitHub repo at affaan-m/ECC.
  • Keep the npm package as ecc-universal.
  • Keep Claude and Codex plugin slugs as ecc.
  • Publish the npm prerelease on the next dist-tag, not latest.
  • Do not rename the npm package to ecc or @affaan-m/ecc before rc.1.
  • Treat affaan-m/ECC as the canonical public repo for rc.1 and GA release copy.

Reasons:

  • ecc-universal is the current working install and package surface.
  • ecc on npm is occupied by an unrelated elliptic-curve package.
  • @affaan-m/ecc is unclaimed on npm, but would require a migration plan.
  • affaan-m/ECC is now the live public GitHub repo.
  • Claude and Codex already expose the desired short namespace as ecc.

Current Surface Evidence

SurfaceCurrent valueEvidence commandCurrent resultRelease action
Git commit67e63e63f9bfd074bd6a21bf6bac71f3dfefa58bgit rev-parse HEADRecorded from clean main before this ITO-46 evidence refreshRe-run from final release commit
GitHub repoaffaan-m/ECCgit remote get-url originhttps://github.com/affaan-m/ECC.gitKeep for rc.1 and GA
npm package[email protected] local and registry next, 1.10.0 registry latestnode -p "require('./package.json').name + '@' + require('./package.json').version" and npm view ecc-universal name version dist-tags --jsonLocal rc.1 ready; registry next points to 2.0.0-rc.1; latest remains 1.10.0Keep rc.1 on next; do not move to latest before GA approval
Exact npm short nameeccnpm view ecc name version description repository.url --jsonOccupied by unrelated [email protected]Do not use
Scoped npm short name@affaan-m/eccnpm view @affaan-m/ecc name version --json404Candidate only after migration plan
Claude plugin[email protected]claude plugin validate .claude-plugin/plugin.json; claude plugin validate .; claude plugin tag .claude-plugin --dry-runValidation passed on Claude Code 2.1.143; full plugin validation has one expected root CLAUDE.md context warning; dry run would create ecc--v2.0.0-rc.1Run dry-run tag again from the final commit, then tag/push only after approval
Claude marketplace.claude-plugin/marketplace.jsonclaude plugin marketplace add --help; Anthropic plugin marketplace docsGitHub repo, git URL, remote marketplace JSON, and local path marketplace sources are supportedVerify post-tag marketplace install/update path after final evidence
Codex plugin[email protected]node tests/plugin-manifest.test.js; codex plugin marketplace add --help; OpenAI Codex plugin docsPlugin manifest passed 54/54; local and GitHub-ref repo marketplace smokes passed on Codex CLI 0.131.0Use repo marketplace for rc.1; do not claim official directory listing until OpenAI publishing path is available
OpenCode package[email protected]node -p "require('./.opencode/package.json').name + '@' + require('./.opencode/package.json').version"Matches rc.1 package identityFollow npm package publication
Billing claimECC Tools selected-target billing evidence readyECC Tools billing gate and Marketplace account readbackMay 20 selected-target readback and live selected-target announcement gate passed with announcementGateReady: true; repeat immediately before announcementDo not announce native payments until final release/plugin/live URL approvals are green

Required Gate

Run these checks from the final release commit and paste the exact output into a fresh publication-evidence-YYYY-MM-DD.md file before release actions:

bash
git status --short --branch
git rev-parse HEAD
git remote get-url origin
npm view ecc name version description repository.url --json
npm view @affaan-m/ecc name version --json
npm view ecc-universal name version dist-tags --json
node tests/plugin-manifest.test.js
node tests/docs/ecc2-release-surface.test.js
claude plugin validate .claude-plugin/plugin.json
claude plugin tag .claude-plugin --dry-run
codex plugin marketplace add --help
HOME="$(mktemp -d)" codex plugin marketplace add ./
HOME="$(mktemp -d)" codex plugin marketplace add affaan-m/ECC --ref "$(git rev-parse HEAD)"
npm pack --dry-run --json
npm publish --tag next --dry-run
npm run build:opencode
npm run preview-pack:smoke
npm run release:approval-gate -- --format json

If a command is unavailable on the release machine, record the exact error and keep the related publication action blocked.

Publication Order

StepActionRequired evidenceStop condition
1Freeze name and versionPackage, Claude plugin, Codex plugin, OpenCode package, VERSION, and release docs all say 2.0.0-rc.1Any preview/rc.1 mismatch
2Verify clean release branchgit status --short --branch shows only the intended release commit and no unrelated driftAny unexplained dirty file
3Verify package and plugin manifestsnode tests/plugin-manifest.test.js and node tests/docs/ecc2-release-surface.test.js passManifest or release-surface failure
4Dry-run package surfacenpm pack --dry-run --json; npm publish --tag next --dry-runMissing files, wrong dist-tag, or publish dry-run failure
5Dry-run Claude distributionclaude plugin validate; claude plugin tag .claude-plugin --dry-run; marketplace source/help evidenceValidation, tag, or install-smoke failure
6Verify Codex repo marketplacecodex plugin marketplace add --help; temp-home local and GitHub-ref repo marketplace add smoke; OpenAI official directory status recordedMissing repo marketplace or unverified official-directory status
7Verify OpenCode packagenpm run build:opencodeBuild failure
8Regenerate release URL ledgerLive and approval-gated URLs separated in release-url-ledger-YYYY-MM-DD.mdPlaceholder, private URL, or announcement URL drift
9Verify GitHub prereleasegh release view v2.0.0-rc.1 --json tagName,url,isPrereleaseMissing URL or wrong prerelease flag
10Verify npm rcnpm view ecc-universal version dist-tags --json shows rc.1 on next and latest still on GA/stablerc.1 lands on latest or registry output is unclear
11Publish/plugin-submitClaude official submission and Codex repo marketplace evidence recordedForm not submitted, listing not visible, or docs status changed
12AnnounceX, LinkedIn, GitHub release, and longform copy use final live URLsAny final URL is still pending

Do Not Proceed

  • Do not publish an additional npm build before npm pack --dry-run --json is captured from the final release commit.
  • Do not create or push Claude plugin tags before claude plugin tag .claude-plugin --dry-run passes from the final release commit.
  • Do not claim an official Codex Plugin Directory listing unless OpenAI documents a public submission path or confirms the plugin has been listed.
  • Do not announce billing, Marketplace, or native payments until ECC Tools live Marketplace account readback returns ready.
  • Do not rename the npm package until rc.1 is published and a migration guide maps old install names to new names.
  • Do not post social copy while any required plugin, video, billing, or outbound URL is still approval-gated.

External Distribution Sources

  • Anthropic Claude Code plugin docs: https://code.claude.com/docs/en/plugins
  • Anthropic Claude Code marketplace docs: https://code.claude.com/docs/en/plugin-marketplaces
  • OpenAI Codex plugin docs: https://developers.openai.com/codex/plugins/build#add-a-marketplace-from-the-cli

As of this snapshot, Anthropic documents self-hosted marketplace distribution through GitHub, git URL, remote marketplace JSON, and local path sources. OpenAI documents repo/personal marketplace distribution for Codex and describes an official Plugin Directory, but ECC has not submitted or received an official directory listing in this pass.