Skip to content

chore(release): gate SDK tests in CI and fix protocol publish target - #163

Merged
Rieranthony merged 1 commit into
mainfrom
chore/sdk-release-hygiene
Aug 3, 2026
Merged

chore(release): gate SDK tests in CI and fix protocol publish target#163
Rieranthony merged 1 commit into
mainfrom
chore/sdk-release-hygiene

Conversation

@Rieranthony

Copy link
Copy Markdown
Contributor

Two release-hygiene gaps found while auditing #161. Both are small and independent of that PR's review.

1. CI never ran the SDK regression suites

@cossistant/{react,core,types,next,browser} have no test script, so turbo run test skipped them entirely — the suites only ever ran locally, by hand.

#161 adds the test scripts. This adds the CI step that consumes them, so the provider-lifecycle, data-hook and embed regressions gate merges.

Ordering is safe either way:

The step is deliberately not in #161: that branch's ci.yml predates the protocol steps from #162, so editing it there produces a merge conflict and would cost #161 its clean merge status.

2. @cossistant/protocol publishes a broken tarball

pub:* used bare npm publish, which ignores publishConfig.directory. Combined with files: ["dist"], the tarball root package.json still pointed main/exports at ./src/*.ts — excluded from the tarball — so all 12 entry points resolved to missing files.

before: 12 entrypoints, 12 missing
after:  12 entrypoints,  0 missing

#161 fixed this for react/next/browser; its follow-up commit fixed core/types/tiny-markdown. protocol is the last one.

To be clear about blast radius: changeset publish — the CI release path — was never affected. It resolves publishConfig.directory and calls npm publish <dir>. This only ever broke a manual bun run pub:release.

Verification

All 7 CI gates pass on this branch against current main: check-types, check:openapi, protocol tests, the new SDK test step, the REST OpenAPI contract test, browser embed build, example app build.

Follow-up not included here

Re-enabling the browser embed size gate. It's currently disabled, and main is +65.2 KB gzip over the recorded baseline. #161 brings the widget back to +3.3 KB, so the gate becomes enforceable again — but only once #161 has landed, since the baselines have to reflect the post-merge build. Tracked separately.

🤖 Generated with Claude Code

Two release-hygiene gaps found while auditing #161.

CI never ran the SDK regression suites. @cossistant/{react,core,types,next,
browser} had no `test` script, so `turbo run test` skipped them and the suites
only ever ran locally. #161 adds the `test` scripts; this adds the CI step that
consumes them, so the provider-lifecycle, data-hook and embed regressions gate
merges instead of relying on someone running `bun test` by hand.

The step is a no-op until #161 lands (no `test` task to run, so turbo executes
nothing and passes), and becomes meaningful the moment it does — 473 tests
across the five packages.

@cossistant/protocol's pub:* scripts used bare `npm publish`, which ignores
publishConfig.directory. With `files: ["dist"]` the tarball root package.json
still pointed main/exports at ./src/*.ts, which is excluded from the tarball, so
all 12 entry points resolved to missing files. #161 fixed this for react, next
and browser; #161's follow-up commit fixed core, types and tiny-markdown.
protocol is the last one. `changeset publish` (the CI release path) was never
affected: it honours publishConfig.directory.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
@vercel

vercel Bot commented Jul 30, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
facehash-landing Ready Ready Preview Jul 30, 2026 10:51am
web Ready Ready Preview Jul 30, 2026 10:51am

Request Review

@greptile-apps greptile-apps Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Your trial has ended. Reactivate Greptile to resume code reviews.

@Rieranthony
Rieranthony merged commit 3c0a6cd into main Aug 3, 2026
4 checks passed
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