Skip to content

chore(publish): strip iocraft download/publish pipeline#1294

Open
John-David Dalton (jdalton) wants to merge 1 commit intomainfrom
strip-iocraft-publish
Open

chore(publish): strip iocraft download/publish pipeline#1294
John-David Dalton (jdalton) wants to merge 1 commit intomainfrom
strip-iocraft-publish

Conversation

@jdalton
Copy link
Copy Markdown
Contributor

@jdalton John-David Dalton (jdalton) commented May 2, 2026

Summary

Removes the iocraft download/publish pipeline from socket-cli. Going forward, @socketaddon/iocraft* packages publish from the dedicated SocketDev/socket-addon repo. socket-cli's role narrows to consuming @socketaddon/iocraft as a runtime dep.

This is part 1 of 2:

  • Part 1 (this PR): remove the publish-only pieces — workflow steps, downloader, placeholder publisher, smoke test.
  • Part 2 (follow-up): swap cli/package.json's \"@socketaddon/iocraft\": \"file:...\" for the registry version, once socket-addon publishes a real version.

Removed

  • scripts/download-iocraft-binaries.mts
  • packages/package-builder/scripts/publish-socketaddon-placeholders.mts
  • packages/package-builder/scripts/PUBLISHING-PLACEHOLDERS.md
  • packages/package-builder/test-iocraft-package.mts

Edited

.github/workflows/provenance.yml:

  • removed the iocraft: workflow_dispatch input
  • removed the iocraft version/tag computation in 'Get versions'
  • removed the four iocraft steps (Download / Copy / Publish-main / Publish-platform)
  • removed the iocraft branches in the Summary step

Net change: 1088 lines deleted, 1 added.

Intentionally untouched

Dev plumbing remains in place because socket-cli still needs @socketaddon/iocraft installable for tests + dev:

  • packages/package-builder/templates/socketaddon-{main,package}/
  • packages/package-builder/scripts/generate-socketaddon-packages.mts
  • packages/cli/scripts/setup-iocraft-dev.mts, test-iocraft-layout.mts
  • packages/cli/package.json's file: link to the dev build dir
  • .github/workflows/ci.yml shim heredocs
  • packages/cli/vitest.config.mts iocraft-test exclusion list

The follow-up PR replaces the file: link with a registry version and removes most of these.

Test plan

  • CI passes (the iocraft renderer tests are excluded via vitest.config.mts when CI=true)
  • After merge, verify the publish workflow no longer offers an iocraft checkbox under workflow_dispatch
  • Existing local dev workflow still works: pnpm install resolves @socketaddon/iocraft from the dev file: link (unchanged)

Migration sequence

After this lands and SocketDev/socket-addon publishes its first non-0.0.0 version:

  1. Add SocketDev/socket-addon as the trusted publisher for each @socketaddon/iocraft* package on npm
  2. Remove SocketDev/socket-cli as the trusted publisher for each
  3. Open the part-2 PR here to swap the dev file: link for the registry version

The @socketaddon/iocraft* packages now publish from a dedicated repo
(SocketDev/socket-addon). socket-cli's role narrows to *consuming*
@socketaddon/iocraft as a runtime dep — it no longer downloads .node
binaries from socket-btm or republishes them to npm.

Removed:
- scripts/download-iocraft-binaries.mts
- packages/package-builder/scripts/publish-socketaddon-placeholders.mts
- packages/package-builder/scripts/PUBLISHING-PLACEHOLDERS.md
- packages/package-builder/test-iocraft-package.mts

Edited .github/workflows/provenance.yml:
- removed the 'iocraft' workflow_dispatch input
- removed the iocraft version/tag computation in the 'Get versions' step
- removed the four iocraft steps (Download binaries, Copy binaries,
  Publish main, Publish platform packages)
- removed the iocraft branches in the Summary step

Net change: 1088 lines deleted, 1 added.

Dev plumbing (templates/socketaddon-{main,package}/, generate-socketaddon-
packages.mts, setup-iocraft-dev.mts, the cli/package.json `file:` link to
the dev build dir, the CI shim heredocs in ci.yml, the iocraft test
exclusion list in vitest.config.mts) is intentionally untouched —
socket-cli still needs @socketaddon/iocraft installable at install time
for tests + dev. The follow-up commit replaces the `file:` link with a
registry version once SocketDev/socket-addon publishes a real version.

Pre-commit tests skipped (DISABLE_PRECOMMIT_TEST=1) — the iocraft
renderer tests require a real native iocraft.node which this worktree
doesn't have. CI excludes those same tests via vitest.config.mts.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant