Skip to content

chore(sdk): add build, publish metadata, and release process for @acc… - #247

Open
Seunfunmi-319509 wants to merge 13 commits into
accensa:mainfrom
Seunfunmi-319509:chore/sdk-publish-release-process
Open

chore(sdk): add build, publish metadata, and release process for @acc…#247
Seunfunmi-319509 wants to merge 13 commits into
accensa:mainfrom
Seunfunmi-319509:chore/sdk-publish-release-process

Conversation

@Seunfunmi-319509

Copy link
Copy Markdown

…ensa/sdk

Closes #102

  • Add tsup build pipeline emitting ESM (.mjs) + CJS (.js) + .d.ts to dist/
  • Update package.json: main, module, types, exports map, files, sideEffects
  • Add comprehensive package README covering verifyReceipt, attachAccensaHook, createSettleHook, signing contract, and supported runtimes
  • Set up Changesets for versioning and changelog generation
  • Document semver policy in CONTRIBUTING.md with wire contract as major-worthy
  • Add .github/workflows/publish.yml: CI publishes on tag with provenance
  • Add verify-pack job to ci.yml: installs packed tarball into scratch project and verifies both entry points in ESM and CJS
  • Add CHANGELOG.md documenting the initial published release
  • Add lint script (no-op) so root lint command doesn't fail
  • vectors.rs reproducibility check unchanged and verified

…ensa/sdk

Closes accensa#102

- Add tsup build pipeline emitting ESM (.mjs) + CJS (.js) + .d.ts to dist/
- Update package.json: main, module, types, exports map, files, sideEffects
- Add comprehensive package README covering verifyReceipt, attachAccensaHook,
  createSettleHook, signing contract, and supported runtimes
- Set up Changesets for versioning and changelog generation
- Document semver policy in CONTRIBUTING.md with wire contract as major-worthy
- Add .github/workflows/publish.yml: CI publishes on tag with provenance
- Add verify-pack job to ci.yml: installs packed tarball into scratch project
  and verifies both entry points in ESM and CJS
- Add CHANGELOG.md documenting the initial published release
- Add lint script (no-op) so root lint command doesn't fail
- vectors.rs reproducibility check unchanged and verified
@drips-wave

drips-wave Bot commented Aug 26, 2026

Copy link
Copy Markdown

@Seunfunmi-319509 Great news! 🎉 Based on an automated assessment of this PR, the linked Wave issue(s) no longer count against your application limits.

You can now already apply to more issues while waiting for a review of this PR. Keep up the great work! 🚀

Learn more about application limits

@vercel

vercel Bot commented Aug 26, 2026

Copy link
Copy Markdown

@Seunfunmi-319509 is attempting to deploy a commit to the ACCENSA Team on Vercel.

A member of the Team first needs to authorize it.

@mergekeeper

mergekeeper Bot commented Aug 26, 2026

Copy link
Copy Markdown

MergeKeeper review

Scope: in scope for linked issue #102.
Verdict: clean

The SDK build, publishing metadata, release process, and tarball verification workflow have been successfully implemented according to instructions.

Reviewed commit: 7b8f1b1cf43571dae64e76115be6b017ea50b3c7.
CI and merge eligibility are checked separately.

mergekeeper[bot]
mergekeeper Bot previously approved these changes Aug 26, 2026

@mergekeeper mergekeeper Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Approved

Successfully added the build pipeline, package metadata, release process, and tarball verification for @accensa/sdk.

@mergekeeper

mergekeeper Bot commented Aug 26, 2026

Copy link
Copy Markdown

MergeKeeper merge status

Status: blocked
PR state: open
Mergeability: mergeable
Checked commit: 7b8f1b1cf43571dae64e76115be6b017ea50b3c7.

Reason:
GitHub pull request merge request failed with 403: Resource not accessible by integration

Next steps:
GitHub rejected this as a permissions/ruleset problem, not a review problem — a maintainer merge override cannot force this through.

  1. Confirm the MergeKeeper GitHub App has Contents: Read & write and Pull requests: Read & write permissions for this repository.
  2. If this repository uses a ruleset, add the MergeKeeper GitHub App as a Bypass actor on it (Settings → Rules → Rulesets → the ruleset → Bypass list) — this is what the "bypass rules" checkbox on GitHub's merge button represents, and MergeKeeper can only do the same once it's listed there.
  3. Retry the merge once either is fixed.

mergekeeper[bot]
mergekeeper Bot previously approved these changes Aug 27, 2026

@mergekeeper mergekeeper Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Approved

The PR successfully adds a tsup build pipeline, correct metadata, README, Changesets release configuration, CI publish workflows, and tarball verification for @accensa/sdk.

mergekeeper[bot]
mergekeeper Bot previously approved these changes Aug 27, 2026

@mergekeeper mergekeeper Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Approved

The SDK build, publishing metadata, release process, and tarball verification workflow have been successfully implemented according to instructions.

Seunfunmi-319509 and others added 9 commits August 28, 2026 09:53
The micro-frontend scaffold added packages/shared (@accensa/shared) but
pnpm-lock.yaml was never regenerated, so pnpm install --frozen-lockfile
failed for every CI job with ERR_PNPM_OUTDATED_LOCKFILE.

Verified the regenerated lockfile passes --frozen-lockfile under both
pnpm 11 (ci.yml) and pnpm 9 (verify-pack, publish).
A pristine pnpm@11 install errors with ERR_PNPM_IGNORED_BUILDS for
core-js-pure@3.50.0 (a transitive dep of the freshly-regenerated
lockfile) because it is missing from the allowBuilds policy. Its
postinstall is a benign messaging script; core-js is already allowlisted.
- restore multi-merchant db.ts (anchor/webhook schema grafted), sync and
  payments API routes, dashboard with mergePayments + modal a11y
- fix web typecheck (12) and lint (3): PostgresClient alias, health route
  guard, anchor-submit ScVal guard, storybook/react imports, hook refs,
  anchor-panel callback ordering
- SDK: restore rich reportSettlement (retry, error classes), wire error
  re-exports, stroop-correct price formatter, network-error wrapping, and
  re-export receiptLeaf
- db.integration.test falls in line with new tables; format pre-existing
  drift; add @storybook/react dep
- drop duplicate lint/typecheck scripts in root package.json left by the main sync
- drop duplicate @playwright/test devDependency in apps/web
- SDK client: remove grafted if (!response.ok) duplicate, redundant error
  imports, and a locally redefined AccensaTimeoutError; map 429/auth/network
  errors in the fetch catch as intended
- sync route: remove stale inline per-event indexing block grafted into the
  batched onEvents, and restore sync-events/cron-auth/sync-logger imports
The pnpm v9 to v11 bump only covered six jobs in ci.yml, but every
workflow that runs pnpm install --frozen-lockfile uses the same
pnpm-workspace.yaml, which on pnpm@9 cannot be parsed (allowBuilds and
minimumReleaseAgeExclude are pnpm 11 config). This kept the visual
regression job - and reconcile/publish - failing at the install step.

- bump pnpm@9 to pnpm@11 in the remaining ci.yml jobs (test-reconcile,
  e2e web), publish.yml, reconcile.yml, and visual.yml
- drop the duplicate node-version key in the e2e web job
- restore test:visual, test:visual:update, storybook, and build-storybook
  scripts to apps/web (the merge dropped them; visual.yml runs
  pnpm test:visual)
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.

chore(sdk): publish @accensa/sdk to npm with a release process

2 participants