Make Marketplace publication turnkey (closes the blocker on #1)#8
Merged
Merged
Conversation
Removes every non-human blocker for publishing vscode-a2ml: - Add icons/a2ml-icon.png (Marketplace rejects SVG icons; package.json already referenced the PNG, so vsce package previously failed) - Add .vscodeignore so the .vsix ships only runtime assets (12 files / 18 KB instead of the entire repo / 351 files) - Add Marketplace Publish workflow: tag-triggered, packages a .vsix and publishes to the VS Code Marketplace and Open VSX, each gated on its secret so a missing token skips rather than fails - Document the one remaining human step (Azure DevOps PAT) and the full runbook in docs/PUBLISHING.adoc; update ROADMAP https://claude.ai/code/session_0111iLmV7VFMTFGigST1M1cb
This was referenced May 15, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Why #1 has been stuck
Publishing to the VS Code Marketplace requires an Azure DevOps Personal Access Token bound to the
hyperpolymathpublisher. That token can only be generated interactively by a human signed into the owning Microsoft/Azure account — no automation can create it. That single human step is the real blocker, not the code.This PR removes every other obstacle so publishing becomes "add one secret, push one tag."
Changes
icons/a2ml-icon.png—package.jsonalready pointediconat a PNG that did not exist (only an SVG did). The Marketplace rejects SVG icons, sovsce packagefailed regardless of credentials. Generated a 128×128 PNG from the existing SVG..vscodeignore— without it,vscebundled the entire repo (351 files: CI configs, docs, verification dirs). Now ships a clean 12 files / 18 KB of runtime assets only..github/workflows/marketplace-publish.yml— tag-triggered (v*) + manual dispatch. Packages a.vsix, verifies the tag matchespackage.json, uploads the artifact, and publishes to the VS Code Marketplace (VSCE_PAT) and Open VSX (OVSX_PAT). Each publish is gated on its secret, so a missing token skips rather than fails. Uses Deno (curl-installed, matchingrelease.yml) to respect the repo's npm/bun blocker.docs/PUBLISHING.adoc— exact runbook: how to create the PAT, the automated path, the manual fallback, and how to verify it is live.ROADMAP.adoc— v0.1.1 milestone updated.Verified locally
vsce packagenow succeeds cleanly (12 files, 18 KB). No npm/bun lockfiles introduced.Remaining human step (cannot be automated)
docs/PUBLISHING.adoc).VSCE_PATrepository secret.v0.1.0tag — CI publishes automatically.https://claude.ai/code/session_0111iLmV7VFMTFGigST1M1cb
Generated by Claude Code