Skip to content

fix(ci): use pnpm for SDK publish registry checks#103

Merged
Lythaeon merged 1 commit intomainfrom
fix/ts-sdk-publish-windows
Apr 12, 2026
Merged

fix(ci): use pnpm for SDK publish registry checks#103
Lythaeon merged 1 commit intomainfrom
fix/ts-sdk-publish-windows

Conversation

@Lythaeon
Copy link
Copy Markdown
Owner

Description

Fixes the TypeScript SDK publish helper on Windows runners by removing the direct npm binary dependency from the registry existence check.

Changes

  • sdks/typescript/scripts/publish-package.mjs: use pnpm view instead of npm view for the “already published?” check before publish.

Motivation

Business motivation:
Unblock the 0.1.1 TypeScript SDK release on Windows native package jobs.

Technical motivation:
The GitHub Actions Windows bash runner had pnpm available for the publish step, but spawnSync("npm") failed with ENOENT inside the helper script.

Alternative approaches considered:
Resolving npm-cli.js relative to the Node installation was unnecessary once the workflow already standardized on pnpm for publish.

Scope and impact

  • Affected slices: TypeScript SDK release helper only.
  • Data/API changes: None.
  • Backward compatibility: No SDK API or package metadata change.
  • Performance impact: None.
  • Security impact: None beyond keeping the publish logic on the provisioned package manager path.

Testing

  • Unit tests
  • Integration tests
  • Manual verification
  • Performance checks (if applicable)
  • Security checks (if applicable)

Commands/results:

cd sdks/typescript/native/linux-x64 && node ../../scripts/publish-package.mjs
node -e "const {spawnSync}=require('node:child_process'); const result=spawnSync('pnpm',['view','@lythaeon-sof/sdk-native-win32-x64@999.999.999','version'],{stdio:'ignore'}); console.log(JSON.stringify({status:result.status,error:result.error?.message??null}))"

Both commands behaved as expected: existing published versions skipped cleanly, and a missing version returned a normal nonzero status without an execution error.

Related issues and documentation

  • Fixes: Windows native SDK publish failure for 0.1.1.
  • Related: ts-sdk-v0.1.1 release recovery.
  • Architecture docs: docs/architecture/README.md
  • Relevant ARD/ADR: Not applicable.
  • Operations/runbook updates: Not applicable.

Reviewer checklist

  • Code follows project standards and architecture constraints
  • Slice boundaries are respected (docs/architecture/ard/0003-slice-dependency-contracts.md)
  • Tests added/updated and passing
  • Documentation updated (README/docs/operations as needed)
  • No undocumented breaking change
  • Performance trade-offs documented where relevant
  • Security considerations addressed where relevant

Additional notes

After merge, the ts-sdk-v0.1.1 tag should be moved onto the new main commit before rerunning the release workflow.

@Lythaeon Lythaeon merged commit 8125380 into main Apr 12, 2026
2 of 3 checks passed
@Lythaeon Lythaeon deleted the fix/ts-sdk-publish-windows branch April 12, 2026 13:21
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