Skip to content

ci(release): make engine npm-publish opt-in; keep GitHub Release binaries#162

Merged
BunsDev merged 1 commit into
mainfrom
ci/gate-engine-npm-publish
Jul 14, 2026
Merged

ci(release): make engine npm-publish opt-in; keep GitHub Release binaries#162
BunsDev merged 1 commit into
mainfrom
ci/gate-engine-npm-publish

Conversation

@BunsDev

@BunsDev BunsDev commented Jul 14, 2026

Copy link
Copy Markdown
Member

Summary

Prep for cutting the engine's v0.7.0 release (unification + brand) without republishing the now-deprecated @opencoven/coven-code npm package.

coven installs and pins the engine as a GitHub Release binary, so an engine release only needs archives + checksums — not npm. But today release.yml unconditionally dispatches npm-publish.yml, and npm-publish.yml has a workflow_run: [Release] auto-trigger. Either path would publish a fresh @opencoven/coven-code version, which is not covered by the existing blanket deprecation — silently un-deprecating the package.

Changes

  • release.yml — new publish_npm boolean input (default false); the "Dispatch npm-publish.yml" step is gated on it. Default releases = binaries + checksums only.
  • npm-publish.yml — removed the workflow_run auto-trigger and its dead checkout branch; job is now workflow_dispatch-only. release.yml still invokes it explicitly when publish_npm=true, so intentional re-publishes remain possible.

Verification

  • Both workflows parse (ruby -ryaml); each now exposes only the workflow_dispatch trigger.

No change to the binary build, GitHub Release, or checksum steps.

…ries

`@opencoven/coven-code` is deprecated — the engine now ships as a GitHub
Release binary that `coven` installs and pins. So npm publishing must never
be automatic:

- release.yml: add a `publish_npm` input (default false) and gate the
  npm-publish dispatch on it. Default releases produce binaries + checksums
  only.
- npm-publish.yml: drop the `workflow_run: [Release]` auto-trigger (it would
  otherwise fire on any Release completion and republish the deprecated
  package, undoing the deprecation). Now workflow_dispatch-only; release.yml
  invokes it explicitly only when publish_npm=true. Removed the now-dead
  workflow_run checkout branch.
Copilot AI review requested due to automatic review settings July 14, 2026 10:15
@vercel

vercel Bot commented Jul 14, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
docs Ready Ready Preview Jul 14, 2026 10:15am

@BunsDev
BunsDev merged commit 8b7fc9a into main Jul 14, 2026
2 checks passed
@BunsDev
BunsDev deleted the ci/gate-engine-npm-publish branch July 14, 2026 10:16

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR updates the engine release automation so that publishing the deprecated @opencoven/coven-code npm package is opt-in, while continuing to produce GitHub Release binaries and checksums (the installation path used by coven).

Changes:

  • Adds a publish_npm boolean input (default false) to release.yml and gates dispatching npm-publish.yml on it.
  • Removes the workflow_run auto-trigger from npm-publish.yml, making it workflow_dispatch-only, while still allowing release.yml to dispatch it when explicitly requested.

Reviewed changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated 2 comments.

File Description
.github/workflows/release.yml Adds an opt-in input and conditionally dispatches npm publishing.
.github/workflows/npm-publish.yml Removes automatic workflow_run triggering so npm publishing is manual/explicit only.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment on lines 397 to +401
# auto-cut releases. Dispatching directly here makes the publish step
# deterministic — the workflow_run trigger stays as a manual-release
# fallback.
- name: Dispatch npm-publish.yml
if: ${{ inputs.publish_npm }}
(github.event_name == 'workflow_run' &&
github.event.workflow_run.conclusion == 'success' &&
github.event.workflow_run.head_branch == 'main')
if: github.event_name == 'workflow_dispatch' && github.ref == 'refs/heads/main'
BunsDev added a commit that referenced this pull request Jul 15, 2026
…164)

Close out the coven CLI unification paperwork now that every phase has
landed:

- unification.md: status complete; phase table rows 5 and 6 finalized
  (Phase 5 landed via #154/#158/#160 with the npm deprecation executed
  and npm-publish made opt-in in #162; Phase 6 decided NO-GO via #155);
  npm-package note rewritten in past tense.
- superpowers plans: COMPLETE status banners on the master plan and the
  phase 3/4/5 sub-plans pointing at docs/unification.md as the living
  summary; phase 5 task 5.3 marked done (coven-side version_line landed)
  and task 5.6 recorded as executed.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
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.

2 participants