Commit 022d36d
committed
ci(tombstones): publish deprecation packages atomically with v0.3.0
Wire tombstones/pypi/ and tombstones/vscode/ into the existing release
machinery so v0.3.0 atomically ships:
agentops-accelerator (PyPI) + AgentOpsAccelerator.agentops-skills (VSIX)
agentops-toolkit (PyPI tombstone) + AgentOpsToolkit.agentops-skills (VSIX tombstone)
release.yml (5 new jobs + github-release update):
build-pypi-tombstone Resolves version from tombstones/pypi/
pyproject.toml via tomllib, exposes as job
output, builds dist, asserts artifact
filenames with no hardcoded version pin.
publish-tombstone-testpypi Gated AFTER publish-testpypi.
verify-tombstone-testpypi Installs agentops-toolkit==<version> from
TestPyPI, verifies pip-show Requires lists
agentops-accelerator, and imports agentops
to prove the redirect works end-to-end.
publish-tombstone-pypi Gated AFTER publish-pypi AND
verify-tombstone-testpypi — prevents
shipping a broken redirect to production.
publish-tombstone-vsix Gated AFTER publish-vsix. Substitutes the
CHANGELOG date sentinel at publish time
and tolerates the 'already exists' case.
github-release Now lists tombstone artifacts as conditional
downloads. The release notes job only blocks
on main pypi+vsix — tombstone failures are
recoverable in 0.3.1 and never block the
canonical GitHub Release.
staging.yml (4 new jobs):
Mirrors release.yml on the TestPyPI + pre-release VSIX side.
publish-tombstone-vsix-prerelease has NO dependency on build-pypi-tombstone
(separate channel) to avoid cross-channel coupling.
cut-release.yml:
'Sync plugin versions' step now rewrites:
tombstones/pypi/pyproject.toml version field (regex)
tombstones/vscode/package.json version field (jq)
tombstones/vscode/CHANGELOG.md single entry's version heading,
preserving YYYY-MM-DD sentinel for
publish-time substitution
Both Python rewrites use the heredoc-with-env-injection pattern and
guard against silent no-op via 'raise SystemExit' if the regex doesn't
match. 'git add' and PR body updated accordingly.
Required PyPI Trusted Publisher setup is now documented in the docstrings
of both release.yml and staging.yml — four total Trusted Publishers are
needed (agentops-accelerator and agentops-toolkit, on PyPI and TestPyPI).
VSCE_PAT must have 'Marketplace: Manage' scope on the AzDO account that
owns BOTH the AgentOpsAccelerator and AgentOpsToolkit publishers;
verify with: vsce ls-publishers -p $VSCE_PAT.
Reviewed by ai-starter-pack:critic (correctness lens) — all 3 CRITICAL,
4 IMPORTANT, and 1 SUGGESTION findings resolved before commit.1 parent 2f128d9 commit 022d36d
3 files changed
Lines changed: 537 additions & 12 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
113 | 113 | | |
114 | 114 | | |
115 | 115 | | |
| 116 | + | |
| 117 | + | |
| 118 | + | |
| 119 | + | |
| 120 | + | |
| 121 | + | |
| 122 | + | |
| 123 | + | |
| 124 | + | |
| 125 | + | |
| 126 | + | |
| 127 | + | |
| 128 | + | |
| 129 | + | |
| 130 | + | |
| 131 | + | |
| 132 | + | |
| 133 | + | |
| 134 | + | |
| 135 | + | |
| 136 | + | |
| 137 | + | |
| 138 | + | |
| 139 | + | |
| 140 | + | |
| 141 | + | |
| 142 | + | |
| 143 | + | |
| 144 | + | |
| 145 | + | |
| 146 | + | |
| 147 | + | |
| 148 | + | |
| 149 | + | |
| 150 | + | |
| 151 | + | |
116 | 152 | | |
117 | 153 | | |
118 | 154 | | |
119 | 155 | | |
120 | 156 | | |
121 | 157 | | |
122 | 158 | | |
123 | | - | |
| 159 | + | |
| 160 | + | |
| 161 | + | |
| 162 | + | |
124 | 163 | | |
125 | 164 | | |
126 | 165 | | |
| |||
140 | 179 | | |
141 | 180 | | |
142 | 181 | | |
143 | | - | |
| 182 | + | |
| 183 | + | |
| 184 | + | |
144 | 185 | | |
145 | 186 | | |
146 | 187 | | |
| |||
0 commit comments