Skip to content

Plan npm scope migration to @anomalyco #3

Description

@kitlangton

Goal

Eventually migrate the TypeScript client and native npm packages from the historical @kitlangton scope to the organization-owned @anomalyco scope, without breaking existing users.

Current State

  • GitHub source repository has moved to anomalyco/terminal-control.
  • Existing npm packages remain under @kitlangton for install continuity:
    • @kitlangton/terminal-control
    • @kitlangton/terminal-control-darwin-arm64
    • @kitlangton/terminal-control-darwin-x64
    • @kitlangton/terminal-control-linux-arm64-gnu
    • @kitlangton/terminal-control-linux-x64-gnu
  • README and package metadata should point repository links at anomalyco/terminal-control.
  • npm trusted publishing for the existing @kitlangton packages must use anomalyco/terminal-control + npm-release.yml.

Proposed Migration

  1. Keep publishing the existing @kitlangton/... packages for now.
  2. Add parallel package definitions for the new @anomalyco/... packages:
    • @anomalyco/terminal-control
    • @anomalyco/terminal-control-darwin-arm64
    • @anomalyco/terminal-control-darwin-x64
    • @anomalyco/terminal-control-linux-arm64-gnu
    • @anomalyco/terminal-control-linux-x64-gnu
  3. Update the client package native-binary resolution for the new scope so @anomalyco/terminal-control depends on @anomalyco/terminal-control-*.
  4. Publish an initial @anomalyco release at the same version as the current package line, or at the next coordinated version.
  5. Update docs to recommend @anomalyco/terminal-control while documenting @kitlangton/terminal-control as the legacy package.
  6. After a transition period, deprecate the @kitlangton/... npm packages with a message pointing users to @anomalyco/terminal-control.
  7. Continue avoiding npm unpublish so existing lockfiles and historical installs remain valid.

Acceptance Criteria

  • Existing @kitlangton/... packages remain installable.
  • New @anomalyco/... packages install and resolve the correct native binary on supported platforms.
  • Release workflow can validate and publish both scopes, or has a clear switch-over workflow.
  • README clearly explains the preferred package and legacy package status.
  • npm trusted publishing is configured for all packages that GitHub Actions publishes.

Notes

Do this as a separate release task from the GitHub repository transfer. The package scope migration touches package names, optional dependencies, native package generation, validation fixtures, Changesets config, lockfile metadata, and npm trusted publisher settings.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions