feat(cli): purposes push, scope helpers, and push validation (P0)#276
Draft
michaelfarrell76 wants to merge 7 commits into
Draft
feat(cli): purposes push, scope helpers, and push validation (P0)#276michaelfarrell76 wants to merge 7 commits into
michaelfarrell76 wants to merge 7 commits into
Conversation
Port PR #13 sync support for purposes, preference-options, and consent-workflow-triggers into the SDK and wire them into tr-push. Add derivePushScopesFromTranscendInput, hasTranscendConfigSection, stripEmptyTranscendConfigSections, validateTranscendInputForPush, and TRANSCEND_CONFIG_RESOURCES for RPC consumers.
This was referenced Jul 8, 2026
@transcend-io/airgap.js-types
@transcend-io/cli
@transcend-io/internationalization
@transcend-io/privacy-types
@transcend-io/sdk
@transcend-io/type-utils
@transcend-io/utils
@transcend-io/mcp
@transcend-io/mcp-server-admin
@transcend-io/mcp-server-assessment
@transcend-io/mcp-server-base
@transcend-io/mcp-server-consent
@transcend-io/mcp-server-discovery
@transcend-io/mcp-server-docs
@transcend-io/mcp-server-dsr
@transcend-io/mcp-server-inventory
@transcend-io/mcp-server-preferences
@transcend-io/mcp-server-workflows
commit: |
michaelfarrell76
commented
Jul 8, 2026
Co-authored-by: Michael Farrell <mkfrl09@gmail.com>
michaelfarrell76
commented
Jul 8, 2026
| [TranscendPullResource.ConsentWorkflowTriggers]: { | ||
| description: 'Consent workflow trigger definitions.', | ||
| markdownLinks: [ | ||
| '[Consent Management -> Consent Workflows]\ |
Member
Author
There was a problem hiding this comment.
Workflows -> Preference Workflows https://app.transcend.io/preference-store/consent-workflows
* feat(cli): return SyncResult from syncConfigurationToTranscend Add SyncResult, SyncError, and createCollectingLogger in utils. Push now surfaces per-resource errors instead of a bare boolean. Injectable logger option supports MCP debug=true log capture. * feat(cli): export getTranscendConfigurationSchema for MCP agents (#277) Add runtime JSON Schema export from TranscendInput, improve codec docs for common agent mistakes, and regenerate transcend-yml schema files.
Add summarizeTranscendConfigSections and wire validateTranscendInputForPush into tr-push so agents get early errors on unsupported keys. Add DSR workflow-configs pull/push, resolve data-silo-titles on consent workflow trigger sync, and drop over-scoped ViewGlobalAttributes from action-items push scopes.
6 tasks
Update generated transcend.yml JSON schema and resource scopes table after adding workflow-configs and scope helper changes.
…chema Purpose create/update used non-existent TrackingPurpose*Input types and a trackingPurpose response field; switch to CreatePurposeInput/UpdatePurposeInput and the purpose payload. Send name from input.name (not title), default the required description, and unnest the preference-option-values input. Consolidate duplicate push helper tests under src/lib/tests.
Only Array.prototype.map is used here; the utils map import was dead.
Member
Author
|
Superseded by split PR stack:
Monolith preserved on |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
preference-options→purposes→consent-workflow-triggers→consent-managerderivePushScopesFromTranscendInput,hasTranscendConfigSection,stripEmptyTranscendConfigSections,validateTranscendInputForPush,TRANSCEND_CONFIG_RESOURCESTest plan
pnpm run --dir packages/sdk buildpnpm run --dir packages/cli buildpnpm run --dir packages/cli test{ purposes: [...] }to staging org → pull confirms purpose exists{ "action-items": [] }→derivePushScopesFromTranscendInputexcludes action-item scopes{ attributes: [{ type: "DATE" }] }→ decode error before GraphQLConsumer impact
Main monorepo Retool RPC can replace truthy scope workaround with exported helpers after release.
Notes
@transcend-io/sdkdefault-consentstill not in purpose create/update GraphQL inputs (documented limitation)Made with Cursor