Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
14 changes: 9 additions & 5 deletions .github/workflows/publish.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,11 +7,11 @@ name: Publish
# (alpha, beta, rc), so `npm install @versionone/agility-sdk` never picks it
# up; only a plain version moves `latest`.
#
# Authentication is npm trusted publishing (OIDC): link this repository and
# this workflow file on the package's npmjs settings page, and no token is
# stored anywhere. The package must exist before it can be linked, so the
# very first version may need one manual publish (see the README's
# "Releasing" section); an NPM_TOKEN secret, if set, is used as a fallback.
# Authentication is npm trusted publishing (OIDC): on the package's npmjs
# settings, link organization versionone, repository VersionOne.SDK.JavaScript,
# workflow publish.yml and environment npm; no token is stored anywhere.
# (1.0.0-alpha.0 was published by hand, as a package must exist before it
# can be linked.) An NPM_TOKEN secret, if set, is used as a fallback.

on:
push:
Expand All @@ -28,6 +28,10 @@ concurrency:
jobs:
publish:
runs-on: ubuntu-latest
# The GitHub environment "npm" holds the approval rule (a required
# reviewer, v* tags only), and npm's trusted-publisher link names it, so
# only a run in this environment can publish.
environment: npm
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
Expand Down
4 changes: 3 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -76,7 +76,9 @@ git tag v1.0.0-alpha.1 && git push origin v1.0.0-alpha.1
```

Authentication is npm trusted publishing: on npmjs, the package's settings
link this repository and `publish.yml`, and no token is stored. A package
link this repository, `publish.yml` and the GitHub environment `npm`, and no
token is stored. The `npm` environment (repository settings) requires an
approval, so a pushed tag waits for a maintainer before it publishes. A package
must exist before it can be linked, so the very first version is published
once by hand by an `@versionone` org member (`npm publish --access public
--tag alpha` from a clean checkout of the tagged commit), then linked.
Expand Down
2 changes: 1 addition & 1 deletion plans/001-sdk-adoption-campaign.md
Original file line number Diff line number Diff line change
Expand Up @@ -475,7 +475,7 @@ ESM" here means finishing the edges:
- [x] A4 slack-shaped reads — `queryV1` wire module, `client.queryV1.query`/`queries` (read-only, idempotent, same row translation as api/asset)
- [x] A5 services port from gh-v1 — `resolve` (`client.resolve.numbers`/`.ref`), `guard` (`client.assets.sendGuarded`), `batch` (`client.batch.run`/`.reversible`)
- [x] A7 attachments and embedded images — `attachment` wire module (`attachment.img` bytes, `EmbeddedImage.mvc/Upload`, URL helpers, browser-safe Base64), `client.attachments` (list/info/get/add/put/remove/url; inline up to `INLINE_LIMIT`, two-step above) and `client.embeddedImages` (upload/url/normalize)
- [ ] A6 CI + prerelease publish — CI, git-SHA installs, the dependency audit and the publish workflow (`.github/workflows/publish.yml`: on a `v*` tag, verify, dist-tag from the prerelease id, `npm publish --provenance`) done; version `1.0.0-alpha.0`. License decided 2026-11-07: MIT (`LICENSE`; `master`'s BSD 3-clause `LICENSE.md` stays with the 2.x code). Left: the first publish by hand and the trusted-publisher link on npmjs
- [x] A6 CI + prerelease publish — `@versionone/agility-sdk@1.0.0-alpha.0` on npmjs (2026-11-07; dist-tags `alpha` and, as npm sets on a first publish, `latest`), MIT. CI on Linux and Windows; `.github/workflows/publish.yml` publishes later versions from a `v*` tag once trusted publishing is linked on npmjs. The first version was published by hand, so it has no provenance
- [x] G0–G3 gh-v1 migrations — versionone/gh-v1#29–#32
- [x] S1–S4 slack-bot migrations — digital-ai/k6i-agility-slack-bot#21–#24 (on `bolt-migration`)
- [x] B1 slack bot client swap — digital-ai/k6i-agility-slack-bot#29
Expand Down
Loading