test: enforce release publication checklist in readiness gates

This commit is contained in:
Affaan Mustafa
2026-05-18 09:10:51 -04:00
parent 6c0fbfb6c5
commit 680aeff0fb
3 changed files with 26 additions and 3 deletions

View File

@@ -75,10 +75,18 @@ function seedRepo(rootDir, overrides = {}) {
'Linear live sync is current for the May 17 merge batch',
'operator progress snapshot'
].join('\n'),
'docs/releases/2.0.0-rc.1/publication-readiness.md': 'Claude plugin Codex plugin',
'docs/releases/2.0.0-rc.1/publication-readiness.md': 'Claude plugin Codex plugin release-name-plugin-publication-checklist-2026-05-18.md',
'docs/releases/2.0.0-rc.1/naming-and-publication-matrix.md': 'Claude plugin Codex plugin npm package Publication Paths',
'docs/releases/2.0.0-rc.1/release-name-plugin-publication-checklist-2026-05-18.md': [
'Everything Claude Code (ECC)',
'ecc-universal',
'claude plugin tag .claude-plugin --dry-run',
'codex plugin marketplace add',
'Do not rename the repo or package until rc.1 is published'
].join('\n'),
'docs/releases/2.0.0-rc.1/preview-pack-manifest.md': [
'publication-readiness.md release-notes.md quickstart.md',
'release-name-plugin-publication-checklist-2026-05-18.md',
'`scripts/preview-pack-smoke.js`',
'npm run preview-pack:smoke'
].join('\n'),
@@ -279,6 +287,12 @@ function runTests() {
&& item.evidence.includes('target-account billing readback')
&& item.evidence.includes('provenance-aware Marketplace billing-state gates')
)));
assert.ok(report.requirements.some(item => (
item.id === 'naming-and-plugin-publication'
&& item.artifact.includes('release-name-plugin-publication checklist')
&& item.evidence.includes('release publication checklist')
&& item.gap === 'real tag/push, marketplace submission, and final channel choice remain approval-gated'
)));
assert.ok(report.requirements.some(item => (
item.id === 'supply-chain-local-protection'
&& item.artifact.includes('AgentShield package-manager hardening')