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

⚠️ AI DRAFT Michael: review/edit, then delete this line
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