Skip to content

[Stage 1.6] Migrate and validate the v2 release workflow for the monorepo #333

Description

@draedful

Parent: #318

Goal

Prove that v2 can be released and consumed from npm after the repository becomes a pnpm monorepo.

The workflow is a production delivery path, not only a build check.

Scope

  • Keep release-v2.yml triggered by the v2 branch before cutover.
  • Replace root-package npm assumptions with the Stage 1 pnpm workspace and package build model.
  • Build and publish only public packages.
  • Prevent private workspace packages from being published.
  • Prevent unresolved imports or published dependencies on private packages.
  • Permit only 2.x prereleases from v2.
  • Publish under next; never update latest before cutover.
  • Keep release creation behind a reviewed release pull request or equivalent approval.
  • Verify generated versions, changelogs, Git tags, GitHub Releases, package manifests, and npm artifacts.
  • Install the published prerelease from npm in clean vanilla JavaScript, React, and applicable Playwright consumer fixtures.
  • Document the cutover-only configuration change from v2/next to main/latest.
  • Provide a dry-run for the future stable v2 release path.

Acceptance criteria

  • release-v2.yml runs from v2 using pnpm and the monorepo package graph.
  • Only intended public packages are publishable.
  • A 2.x prerelease is published under next after explicit approval.
  • The prerelease does not update latest.
  • Version, changelog, tag, GitHub Release, manifest, and npm artifact agree.
  • Published packages contain no unresolved private-package imports or dependencies.
  • Clean consumer fixtures install from npm without workspace access.
  • Root, React, and applicable Playwright entry points pass runtime and type checks.
  • The main/latest cutover configuration is covered by a safe dry-run.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions