Skip to content

Commit fe33556

Browse files
authored
chore(sdk-ts): make semantic-release workflow manual-only (#53)
## Summary - Makes the TypeScript SDK release workflow manual-only (Python-style trigger behavior). - Keeps semantic-release in place, but requires explicit `workflow_dispatch` for both preview and publish. - Adds a publish safety gate so non-dry runs can only execute from `main`. ## Scope - User-facing/API changes: - No SDK runtime/API behavior changes. - Internal changes: - Updated `.github/workflows/release-sdk-ts.yml`: - removed `push` trigger - retained `workflow_dispatch` with `dry_run` - added guard: `dry_run=false` requires `ref == main` - Updated `sdks/typescript/RELEASING.md` to match manual-only behavior. - Out of scope: - semantic-release rules/tag format/package versioning strategy - Python release workflow changes ## Risk and Rollout - Risk level: low - Rollout plan: - Merge PR. - Run manual dry-run on `main` (`dry_run=true`). - Run manual publish on `main` (`dry_run=false`). - Rollback plan: - Revert this PR to restore push-triggered behavior. ## Testing - [ ] Added or updated automated tests - [ ] Ran `make check` (or explained why not) - [x] Manually verified behavior Notes: - No new tests added; change is workflow + runbook only. - Verified workflow path on branch with existing semantic-release runs: - https://github.com/agentcontrol/agent-control/actions/runs/22649229718 - https://github.com/agentcontrol/agent-control/actions/runs/22649269871 ## Checklist - [x] Linked issue/spec (if applicable) - [x] Updated docs/examples for user-facing changes - [x] Included any required follow-up tasks Links: - Parent story: https://app.shortcut.com/galileo/story/55974/define-typescript-sdk-semver-policy-and-release-alignment - Implementation subtask: https://app.shortcut.com/galileo/story/57429/implement-independent-commitdriven-semanticrelease-for-typescript-sdk
1 parent 1f35bec commit fe33556

2 files changed

Lines changed: 6 additions & 4 deletions

File tree

‎.github/workflows/release-sdk-ts.yml‎

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,6 @@
11
name: Release TypeScript SDK
22

33
on:
4-
push:
5-
branches: [ main ]
64
workflow_dispatch:
75
inputs:
86
dry_run:
@@ -88,6 +86,11 @@ jobs:
8886
exit 0
8987
fi
9088
89+
if [[ "${{ github.ref_name }}" != "main" ]]; then
90+
echo "Publish runs must be dispatched from main. Current ref: ${{ github.ref_name }}"
91+
exit 1
92+
fi
93+
9194
if [[ -z "${NPM_TOKEN}" ]]; then
9295
echo "NPM_TOKEN secret is required for publish runs."
9396
exit 1

‎sdks/typescript/RELEASING.md‎

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -46,9 +46,8 @@ This previews the next semantic version and release notes without publishing.
4646

4747
Workflow: `.github/workflows/release-sdk-ts.yml`
4848

49-
- Automatic publish: runs on `push` to `main`.
5049
- Manual preview: `workflow_dispatch` with `dry_run=true`.
51-
- Manual publish: `workflow_dispatch` with `dry_run=false`.
50+
- Manual publish: `workflow_dispatch` with `dry_run=false` from `main`.
5251

5352
Release job performs:
5453
- `make sdk-ts-release-check`

0 commit comments

Comments
 (0)