Skip to content

🪪 [1/3] feat(sdk): add preference upload building blocks - #700

Open
michaelfarrell76 wants to merge 1 commit into
mainfrom
michaelfarrell76/pref-upload-sdk-building-blocks
Open

michaelfarrell76 wants to merge 1 commit into
mainfrom
michaelfarrell76/pref-upload-sdk-building-blocks

Conversation

@michaelfarrell76

@michaelfarrell76 michaelfarrell76 commented Nov 1, 2026 •

Copy link
Copy Markdown
Member

Note

Multi identifier preference uploads have been stuck in one giant stale PR, breaking it down so we can actually merge, test, and ship it as a major.

Stack (replaces #11)

Step PR Merge base ← head
1/3 This PR main ← michaelfarrell76/pref-upload-sdk-building-blocks
2/3 #701 michaelfarrell76/pref-upload-sdk-building-blocks ← michaelfarrell76/pref-upload-cli-state
3/3 #702 michaelfarrell76/pref-upload-cli-state ← michaelfarrell76/multi-identifier-preference-uploads

Merge in order: this PR → #701 → #702. Steps 1 and 2 are non-breaking. Step 3 carries the CLI and SDK majors.

Summary

  • Adds an SDK preference-upload module with uploadChunkWithSplit (moved from the CLI), loadReferenceData (moved from preference-management), and the new buildPendingUpdates.
  • Adds the PreferenceUploadProgress type and NONE_PREFERENCE_MAP sentinel.
  • Deletes the CLI's unused upload-preferences/upload/ copies. Root @transcend-io/sdk export names are unchanged.
  • Drops two pieces from [cli] multi identifier preference record uploads #11 that nothing used: the UploadProgressSink module and the status field on REQUEST_DATA_SILOS.

Test plan

  • pnpm -F @transcend-io/sdk typecheck
  • pnpm -F @transcend-io/sdk exec vitest run src/preference-upload (new buildPendingUpdates test, moved batchUploader and loadReferenceData tests)
  • pnpm -F @transcend-io/cli typecheck and the CLI codebase + upload-preferences tests
  • Pre-commit quality:fix and pre-push hooks

Move batchUploader and loadReferenceData into a new SDK preference-upload
module, add buildPendingUpdates, the PreferenceUploadProgress type, and the
NONE_PREFERENCE_MAP sentinel. Delete the unused CLI copies.

Split out of #11.
@pkg-pr-new

pkg-pr-new Bot commented Nov 1, 2026

Copy link
Copy Markdown

Open in StackBlitz

@transcend-io/airgap.js-types

pnpm add https://pkg.pr.new/@transcend-io/airgap.js-types@be1b2e5
yarn add https://pkg.pr.new/@transcend-io/airgap.js-types@be1b2e5.tgz

@transcend-io/cli

pnpm add https://pkg.pr.new/@transcend-io/cli@be1b2e5
yarn add https://pkg.pr.new/@transcend-io/cli@be1b2e5.tgz

@transcend-io/custom-function-types

pnpm add https://pkg.pr.new/@transcend-io/custom-function-types@be1b2e5
yarn add https://pkg.pr.new/@transcend-io/custom-function-types@be1b2e5.tgz

@transcend-io/design-tokens

pnpm add https://pkg.pr.new/@transcend-io/design-tokens@be1b2e5
yarn add https://pkg.pr.new/@transcend-io/design-tokens@be1b2e5.tgz

@transcend-io/internationalization

pnpm add https://pkg.pr.new/@transcend-io/internationalization@be1b2e5
yarn add https://pkg.pr.new/@transcend-io/internationalization@be1b2e5.tgz

@transcend-io/privacy-types

pnpm add https://pkg.pr.new/@transcend-io/privacy-types@be1b2e5
yarn add https://pkg.pr.new/@transcend-io/privacy-types@be1b2e5.tgz

@transcend-io/sdk

pnpm add https://pkg.pr.new/@transcend-io/sdk@be1b2e5
yarn add https://pkg.pr.new/@transcend-io/sdk@be1b2e5.tgz

@transcend-io/secret-value

pnpm add https://pkg.pr.new/@transcend-io/secret-value@be1b2e5
yarn add https://pkg.pr.new/@transcend-io/secret-value@be1b2e5.tgz

@transcend-io/type-utils

pnpm add https://pkg.pr.new/@transcend-io/type-utils@be1b2e5
yarn add https://pkg.pr.new/@transcend-io/type-utils@be1b2e5.tgz

@transcend-io/utils

pnpm add https://pkg.pr.new/@transcend-io/utils@be1b2e5
yarn add https://pkg.pr.new/@transcend-io/utils@be1b2e5.tgz

commit: be1b2e5

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

cursor:needs-attention Cursor PR Autopilot state: cursor:needs-attention

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant