SDK Packaging Workflow
Last updated: 2026-02-18
Bounded Health provides an enterprise TypeScript SDK package scaffold for partner integrations.
1. Package location
sdks/typescript- Package name:
@Bounded Health/enterprise-sdk
2. What is included
- Typed client wrapper:
sdks/typescript/src/client.ts - Shared type definitions:
sdks/typescript/src/types.ts - Package entrypoint:
sdks/typescript/src/index.ts - Build and type-check scripts in package
package.json
3. Build and validation
Build SDK package:
bash
npm run sdk:ts:build
Type-check SDK package:
bash
npm run sdk:ts:typecheck
Regenerate SDK OpenAPI metadata from pinned snapshot:
bash
npm run sdk:ts:generate
4. Contract snapshot export
Export OpenAPI and AsyncAPI snapshots:
bash
npm run contracts:export
Outputs:
docs/integration-opportunities/contracts/openapi.enterprise.v1.jsondocs/integration-opportunities/contracts/asyncapi.webhooks.v1.json
5. Release recommendation
- Export contracts for release candidate build.
- Build and test SDK package against that snapshot.
- Tag SDK with matching API version metadata.
- Publish package to partner registry.
- Publish release notes in
docs/integration-opportunities/releases/.
Optional GitHub Actions publish workflow:
.github/workflows/publish-enterprise-sdk.yml- Supports
dry_run=trueand real publish (dry_run=false) usingNPM_TOKEN.
6. Snapshot pinning and CI automation
- SDK tests pin against committed OpenAPI snapshot:
docs/integration-opportunities/contracts/openapi.enterprise.v1.json
- Workflow
.github/workflows/sdk-contracts.ymlautomatically:- Regenerates OpenAPI/AsyncAPI contracts.
- Regenerates SDK OpenAPI metadata (
sdks/typescript/src/generated/contract.ts). - Fails if snapshot/generated diffs are uncommitted.
- Rebuilds SDK and runs snapshot tests.