Skip to content

Version Packages - #428

Open
transcend-releaser[bot] wants to merge 1 commit into
mainfrom
changeset-release/main
Open

Version Packages#428
transcend-releaser[bot] wants to merge 1 commit into
mainfrom
changeset-release/main

Conversation

@transcend-releaser

@transcend-releaser transcend-releaser Bot commented Aug 13, 2026

Copy link
Copy Markdown
Contributor

This PR was opened by the Changesets release GitHub action. When you're ready to do a release, you can merge this and publish to npm yourself or setup this action to publish automatically. If you're not ready to do a release yet, that's fine, whenever you add more changesets to main, this PR will be updated.

Releases

@transcend-io/cli@10.26.0

Minor Changes

  • 2f5271e: Add transcend custom-functions push (manifest-driven create/update of custom function code revisions with change detection, draft + promote, and dry-run support) and transcend custom-functions list, designed to run from client CI. Code is signed against the Sombra customer ingress (pass --sombraAuth when self-hosting Sombra). Manifest entries can pin a custom function id (required when names are not unique), and push --updateManifest writes assigned IDs back into the manifest while preserving comments and <<parameters.x>> placeholders.

    Manifest entries can also define test-payloads — a list of JSON payload files, each with an optional payload-type so DSR functions cover both their default (DATA_POINT) and enricher (REQUEST_ENRICHER) exports on every push (test-payload remains as single-payload shorthand). The freshly signed code is test-run with every payload via the runCustomFunction mutation before pushing; all must pass or the function is rejected with each failing payload's reason and execution logs (exit code 1). A warning is printed when a DSR entry only covers one export. Use --skipTests to bypass testing.

    New DSR functions no longer require a data-silo-id: the DSR integration (a customFunction-catalog data silo) is created automatically before the test run, the function is created and linked on a passing test (the silo is rolled back on failure), and --updateManifest writes both the function id and the data-silo-id back into the manifest. DSR test payloads get extras.dataSilo injected from the resolved silo automatically.

    Metadata-only changes (description, or name for id-pinned entries) are updated in place without signing, testing, or pushing a new code revision, reported as "metadata-only" in the sync summary. The skip message now points at --force for env value-only rotations, which cannot be diffed.

Patch Changes

  • Updated dependencies [98eeb1d]
    • @transcend-io/sdk@1.10.0
    • @transcend-io/privacy-types@5.19.0
    • @transcend-io/airgap.js-types@14.2.35

@transcend-io/privacy-types@5.19.0

Minor Changes

  • 98eeb1d: @transcend-io/privacy-types gains custom function enums (CustomFunctionType, CustomFunctionLifecycleState, CustomFunctionVersionLifecycleState, CustomFunctionPayloadType), mirroring the backend's canonical values.

    Add custom function sync support. The SDK gains a customer-ingress code signing helper (signCustomFunctionCode, calling Sombra's /v1/custom/sign route with bearer authentication) and typed custom function fetch/diff/sync helpers (fetchAllCustomFunctions, syncCustomFunction). The custom function type/lifecycle/payload-type unions come from the new @transcend-io/privacy-types enums, and JWT payload decoding uses jsonwebtoken. Existing custom functions are matched by id when provided, falling back to exact name, with an error on ambiguous names.

    createSombraGotInstance gains a sombraId option to connect to a specific (non-primary) Sombra gateway by ID, resolved from the organization's gateway list.

    Creating a GENERAL function without a pinned gateway resolves the organization's primary Sombra (the backend requires an explicit sombraId for GENERAL creates); DSR creates never send sombraId or setActive — the linked data silo dictates the gateway, and DSR functions are always created active (a warning is logged when promote is disabled for a DSR create).

    Also adds a test-before-promote flow: runCustomFunctionTest test-runs freshly signed code via the runCustomFunction mutation (pre-signed JWT pair, isCustomFunctionTestRun: true) and reports a passed boolean; syncCustomFunction accepts a testPayloads list (each payload optionally tagged with a payloadType, so DSR functions can cover both the default DATA_POINT export and the REQUEST_ENRICHER enricher export in one push). Every payload runs and all must pass — any failure rejects the push with a new test-failed outcome, with per-payload testResults (error and logs) attached.

    New DSR functions get their DSR integration created automatically: when a DSR config has no dataSiloId and no existing function matches, syncCustomFunction creates a customFunction-catalog data silo shell (createCustomFunctionDataSilo), tests the signed code against it (DSR test payloads always get extras.dataSilo injected from the resolved silo, with title/description/link defaulted to satisfy the backend's webhook payload codec), then creates and links the function on a passing test — rolling the silo back (deleteDataSilo) when the test or the create itself fails. Sync results now report dataSiloId / createdDataSilo.

    makeGraphQLRequest no longer retries backend payload validation failures (Failed to decode codec) — they are deterministic, and retrying repeated the full codec error output.

    Metadata-only changes (description, or name for id-pinned entries) are detected when code and context are unchanged, and update the function record in place — no signing, no test runs, and no new code revision — reported with a new metadata-updated outcome. Environment variable values remain undiffable (encrypted at sign time); use force for value-only rotations.

@transcend-io/sdk@1.10.0

Minor Changes

  • 98eeb1d: @transcend-io/privacy-types gains custom function enums (CustomFunctionType, CustomFunctionLifecycleState, CustomFunctionVersionLifecycleState, CustomFunctionPayloadType), mirroring the backend's canonical values.

    Add custom function sync support. The SDK gains a customer-ingress code signing helper (signCustomFunctionCode, calling Sombra's /v1/custom/sign route with bearer authentication) and typed custom function fetch/diff/sync helpers (fetchAllCustomFunctions, syncCustomFunction). The custom function type/lifecycle/payload-type unions come from the new @transcend-io/privacy-types enums, and JWT payload decoding uses jsonwebtoken. Existing custom functions are matched by id when provided, falling back to exact name, with an error on ambiguous names.

    createSombraGotInstance gains a sombraId option to connect to a specific (non-primary) Sombra gateway by ID, resolved from the organization's gateway list.

    Creating a GENERAL function without a pinned gateway resolves the organization's primary Sombra (the backend requires an explicit sombraId for GENERAL creates); DSR creates never send sombraId or setActive — the linked data silo dictates the gateway, and DSR functions are always created active (a warning is logged when promote is disabled for a DSR create).

    Also adds a test-before-promote flow: runCustomFunctionTest test-runs freshly signed code via the runCustomFunction mutation (pre-signed JWT pair, isCustomFunctionTestRun: true) and reports a passed boolean; syncCustomFunction accepts a testPayloads list (each payload optionally tagged with a payloadType, so DSR functions can cover both the default DATA_POINT export and the REQUEST_ENRICHER enricher export in one push). Every payload runs and all must pass — any failure rejects the push with a new test-failed outcome, with per-payload testResults (error and logs) attached.

    New DSR functions get their DSR integration created automatically: when a DSR config has no dataSiloId and no existing function matches, syncCustomFunction creates a customFunction-catalog data silo shell (createCustomFunctionDataSilo), tests the signed code against it (DSR test payloads always get extras.dataSilo injected from the resolved silo, with title/description/link defaulted to satisfy the backend's webhook payload codec), then creates and links the function on a passing test — rolling the silo back (deleteDataSilo) when the test or the create itself fails. Sync results now report dataSiloId / createdDataSilo.

    makeGraphQLRequest no longer retries backend payload validation failures (Failed to decode codec) — they are deterministic, and retrying repeated the full codec error output.

    Metadata-only changes (description, or name for id-pinned entries) are detected when code and context are unchanged, and update the function record in place — no signing, no test runs, and no new code revision — reported with a new metadata-updated outcome. Environment variable values remain undiffable (encrypted at sign time); use force for value-only rotations.

Patch Changes

  • Updated dependencies [98eeb1d]
    • @transcend-io/privacy-types@5.19.0
    • @transcend-io/airgap.js-types@14.2.35

@transcend-io/airgap.js-types@14.2.35

Patch Changes

  • Updated dependencies [98eeb1d]
    • @transcend-io/privacy-types@5.19.0

@transcend-io/design-tokens@1.2.1

Patch Changes

  • 99a0110: Update chart yellow and lime semantic colors to darker palette steps (yellow.600, lime.600) from the latest Figma DTCG export.

@transcend-io/mcp@0.11.1

Patch Changes

  • @transcend-io/mcp-server-consent@0.6.17
  • @transcend-io/mcp-server-admin@0.5.17
  • @transcend-io/mcp-server-assessment@0.5.17
  • @transcend-io/mcp-server-discovery@0.5.17
  • @transcend-io/mcp-server-dsr@0.6.2
  • @transcend-io/mcp-server-inventory@0.6.6
  • @transcend-io/mcp-server-preferences@0.5.17
  • @transcend-io/mcp-server-workflows@0.5.17
  • @transcend-io/mcp-server-base@1.3.1
  • @transcend-io/mcp-server-docs@0.3.17

@transcend-io/mcp-server-admin@0.5.17

Patch Changes

  • Updated dependencies [98eeb1d]
    • @transcend-io/privacy-types@5.19.0
    • @transcend-io/mcp-server-base@1.3.1

@transcend-io/mcp-server-assessment@0.5.17

Patch Changes

  • Updated dependencies [98eeb1d]
    • @transcend-io/privacy-types@5.19.0
    • @transcend-io/mcp-server-base@1.3.1

@transcend-io/mcp-server-base@1.3.1

Patch Changes

  • Updated dependencies [99a0110]
    • @transcend-io/design-tokens@1.2.1

@transcend-io/mcp-server-consent@0.6.17

Patch Changes

  • Updated dependencies [98eeb1d]
    • @transcend-io/sdk@1.10.0
    • @transcend-io/privacy-types@5.19.0
    • @transcend-io/mcp-server-base@1.3.1

@transcend-io/mcp-server-discovery@0.5.17

Patch Changes

  • Updated dependencies [98eeb1d]
    • @transcend-io/privacy-types@5.19.0
    • @transcend-io/mcp-server-base@1.3.1

@transcend-io/mcp-server-docs@0.3.17

Patch Changes

  • @transcend-io/mcp-server-base@1.3.1

@transcend-io/mcp-server-dsr@0.6.2

Patch Changes

  • Updated dependencies [98eeb1d]
    • @transcend-io/privacy-types@5.19.0
    • @transcend-io/mcp-server-base@1.3.1

@transcend-io/mcp-server-inventory@0.6.6

Patch Changes

  • Updated dependencies [98eeb1d]
    • @transcend-io/privacy-types@5.19.0
    • @transcend-io/mcp-server-base@1.3.1

@transcend-io/mcp-server-preferences@0.5.17

Patch Changes

  • Updated dependencies [98eeb1d]
    • @transcend-io/privacy-types@5.19.0
    • @transcend-io/mcp-server-base@1.3.1

@transcend-io/mcp-server-workflows@0.5.17

Patch Changes

  • Updated dependencies [98eeb1d]
    • @transcend-io/privacy-types@5.19.0
    • @transcend-io/mcp-server-base@1.3.1

@transcend-io/mcp-server-examples@0.0.8

Patch Changes

  • @transcend-io/mcp-server-base@1.3.1

@transcend-releaser
transcend-releaser Bot requested review from a team as code owners August 13, 2026 17:34
@transcend-releaser
transcend-releaser Bot requested a review from FDufBos August 13, 2026 17:34
@pkg-pr-new

pkg-pr-new Bot commented Aug 13, 2026

Copy link
Copy Markdown

Open in StackBlitz

@transcend-io/airgap.js-types

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

@transcend-io/cli

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

@transcend-io/design-tokens

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

@transcend-io/internationalization

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

@transcend-io/privacy-types

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

@transcend-io/sdk

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

@transcend-io/type-utils

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

@transcend-io/utils

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

@transcend-io/mcp

pnpm add https://pkg.pr.new/@transcend-io/mcp@428
yarn add https://pkg.pr.new/@transcend-io/mcp@428.tgz

@transcend-io/mcp-server-admin

pnpm add https://pkg.pr.new/@transcend-io/mcp-server-admin@428
yarn add https://pkg.pr.new/@transcend-io/mcp-server-admin@428.tgz

@transcend-io/mcp-server-assessment

pnpm add https://pkg.pr.new/@transcend-io/mcp-server-assessment@428
yarn add https://pkg.pr.new/@transcend-io/mcp-server-assessment@428.tgz

@transcend-io/mcp-server-base

pnpm add https://pkg.pr.new/@transcend-io/mcp-server-base@428
yarn add https://pkg.pr.new/@transcend-io/mcp-server-base@428.tgz

@transcend-io/mcp-server-consent

pnpm add https://pkg.pr.new/@transcend-io/mcp-server-consent@428
yarn add https://pkg.pr.new/@transcend-io/mcp-server-consent@428.tgz

@transcend-io/mcp-server-discovery

pnpm add https://pkg.pr.new/@transcend-io/mcp-server-discovery@428
yarn add https://pkg.pr.new/@transcend-io/mcp-server-discovery@428.tgz

@transcend-io/mcp-server-docs

pnpm add https://pkg.pr.new/@transcend-io/mcp-server-docs@428
yarn add https://pkg.pr.new/@transcend-io/mcp-server-docs@428.tgz

@transcend-io/mcp-server-dsr

pnpm add https://pkg.pr.new/@transcend-io/mcp-server-dsr@428
yarn add https://pkg.pr.new/@transcend-io/mcp-server-dsr@428.tgz

@transcend-io/mcp-server-inventory

pnpm add https://pkg.pr.new/@transcend-io/mcp-server-inventory@428
yarn add https://pkg.pr.new/@transcend-io/mcp-server-inventory@428.tgz

@transcend-io/mcp-server-preferences

pnpm add https://pkg.pr.new/@transcend-io/mcp-server-preferences@428
yarn add https://pkg.pr.new/@transcend-io/mcp-server-preferences@428.tgz

@transcend-io/mcp-server-workflows

pnpm add https://pkg.pr.new/@transcend-io/mcp-server-workflows@428
yarn add https://pkg.pr.new/@transcend-io/mcp-server-workflows@428.tgz

commit: 41a1f46

giacaglia
giacaglia previously approved these changes Aug 13, 2026
FDufBos
FDufBos previously approved these changes Aug 13, 2026
@giacaglia
giacaglia enabled auto-merge August 13, 2026 18:58
@transcend-releaser
transcend-releaser Bot requested a review from dsklyar August 13, 2026 22:41
@transcend-releaser
transcend-releaser Bot force-pushed the changeset-release/main branch from 7d00cff to 41a1f46 Compare August 13, 2026 22:41
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.

3 participants