Next Release: changelog and version packages#471
Merged
Conversation
7a39213 to
d51d6d9
Compare
clavery
approved these changes
Jun 8, 2026
0800959 to
0956eee
Compare
749d86c to
2c69ca9
Compare
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.
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
@salesforce/b2c-cli@1.14.0
Minor Changes
#452
9e44bee- Addecdn firewallcommands (list,get,create,update,delete, (Thanks @charithaT07!)reorder) for managing custom firewall rules on a CDN zone via the existingcdn-zones v1 APIs (
/firewall-custom/rules). Supports partial updates,--jsonoutput (with table column flags onlist), and routes destructiveoperations (
delete,reorder) through the same safety guard the rest ofthe CLI uses.
#484
80e63fc-b2c job importnow supports--splitfor importing directories larger than the instance archive size limit. With--split(and optional--max-size, default190mb), the import is broken into several smaller archives: order-sensitive metadata/XML is imported first — kept together when it fits, otherwise split at data-unit boundaries in dependency order — followed by static assets packed by compressed size. A normal import that exceeds the limit now warns and recommends--split. (Thanks @clavery!)Example:
b2c job import ./big-site-data --split --max-size 150mbThe SDK adds a corresponding
siteArchiveImportSplit()operation.Patch Changes
b723939,21bbed0,de8d40b,80e63fc,c8e0b60]:@salesforce/b2c-dx-mcp@1.2.0
Minor Changes
#420
de8d40b- Add MCP tools for log inspection and documentation lookup. Logs:logs_list_files,logs_get_recent, and alogs_watch_start/logs_watch_poll/logs_watch_stop/logs_watch_listlifecycle that buffers entries between polls so agents don't miss logs produced between tool calls. Docs:docs_search,docs_read,docs_list,docs_schema_search,docs_schema_read,docs_schema_listfor the bundled Script API and XSD schema corpora. Adds a newDIAGNOSTICStoolset that groups the script debugger and log tools; likeSCAPI, it is always enabled (auto-discovered for every project type). SDK now also exports the log filter helpers (parseSinceTime,filterBySince,filterByLevel,filterBySearch,matchesLevel,matchesSearch) for reuse. (Thanks @clavery!)The log watch buffers
logs_watch_startdefaults tolast_entries: 0(capture only new entries, matching the "start before triggering" workflow), bounds the entry buffer by bytes as well as count, reports each discovered file only once per poll, stops the underlying tail if a concurrent-start hostname race loses registration, and makeslogs_watch_stoptruly idempotent.Patch Changes
b723939,21bbed0,de8d40b,80e63fc,c8e0b60]:@salesforce/b2c-tooling-sdk@1.12.0
Minor Changes
#420
de8d40b- Add MCP tools for log inspection and documentation lookup. Logs:logs_list_files,logs_get_recent, and alogs_watch_start/logs_watch_poll/logs_watch_stop/logs_watch_listlifecycle that buffers entries between polls so agents don't miss logs produced between tool calls. Docs:docs_search,docs_read,docs_list,docs_schema_search,docs_schema_read,docs_schema_listfor the bundled Script API and XSD schema corpora. Adds a newDIAGNOSTICStoolset that groups the script debugger and log tools; likeSCAPI, it is always enabled (auto-discovered for every project type). SDK now also exports the log filter helpers (parseSinceTime,filterBySince,filterByLevel,filterBySearch,matchesLevel,matchesSearch) for reuse. (Thanks @clavery!)The log watch buffers
logs_watch_startdefaults tolast_entries: 0(capture only new entries, matching the "start before triggering" workflow), bounds the entry buffer by bytes as well as count, reports each discovered file only once per poll, stops the underlying tail if a concurrent-start hostname race loses registration, and makeslogs_watch_stoptruly idempotent.#484
80e63fc-b2c job importnow supports--splitfor importing directories larger than the instance archive size limit. With--split(and optional--max-size, default190mb), the import is broken into several smaller archives: order-sensitive metadata/XML is imported first — kept together when it fits, otherwise split at data-unit boundaries in dependency order — followed by static assets packed by compressed size. A normal import that exceeds the limit now warns and recommends--split. (Thanks @clavery!)Example:
b2c job import ./big-site-data --split --max-size 150mbThe SDK adds a corresponding
siteArchiveImportSplit()operation.Patch Changes
#473
b723939- Documentation audit and repair pass: corrected stale CLI flag and command references across the CLI reference and guides, fixed broken examples (e.g. eCDN mTLS, sandbox--no-*flags, WebDAVgetarguments), aligned SDK JSDoc with current signatures, and added the missingoperations/captypedoc entry point so the Commerce App SDK module appears in the API reference. Filled in JSDoc for previously undocumented public exports across the SDK (auth, clients, instance, logging, ods, mrt, cap, cip, debug, scaffold, schemas, skills, etc.) so the generated API docs cover the full public surface. (Thanks @clavery!)#474
21bbed0- Make mTLS / self-signed client certificates robust against Node's bundled undici version. The TLS dispatcher is an undiciAgentfrom theundicinpm package, but it was handed toglobal.fetch, which is backed by whatever undici Node bundles internally — a version that drifts across Node releases and can be a different major than the npm package. Because undici's request-handler interface changed across majors (and the cross-version compatibility shim is removed in undici 8), pairing a foreign Agent withglobal.fetchcan fail and silently drop the client certificate. Requests that carry a dispatcher now use undici's ownfetchso the Agent and fetch always share one undici instance, regardless of Node version. Applies to all auth strategies (basic, client-credentials, JWT, implicit, API key), so staging deploys with--certificate/--selfsignedkeep working as Node updates its bundled undici. (Thanks @clavery!)#470
c8e0b60- Remove the CAP validation warning that flagged a root directory not matching the{id}-v{version}naming convention. This convention is no longer required, so the check has been dropped fromb2c cap validate(andb2c cap install). (Thanks @clavery!)b2c-vs-extension@0.9.0
Minor Changes
#457
8aa076e- API Browser: right-click a Shopper schema to runpnpm sfnext scapi addin an integrated terminal. The action is only shown when the workspace is detected as a Storefront Next project. (Thanks @clavery!)#467
ce0c0b5- Remove the Page Designer Assistant webview and its "Open Page Designer Assistant UI" command from the VS Code extension. (Thanks @clavery!)Patch Changes
#458
637df9e- Fix VS Code API Browser handling of Custom APIs and shopper-named system APIs. Custom APIs now show endpoint paths with the required/organizations/{organizationId}/...prefix, and the Shopper/Admin classification is now derived from the spec's declared security schemes (ShopperToken / AmOAuth2 / BearerToken) rather than the API family name — fixing token selection for shopper-named APIs that live under non-shopper families (e.g.product/shopper-products,checkout/shopper-baskets) and for Custom APIs which can be either type. Resolves VS Code API Browser: Custom APIs missing organization prefix #453. (Thanks @clavery!)#475
0363dca- Harden the extension build and packaging pipeline. The esbuild bundle now minifies, drops debugger statements, targets Node 22 (matching VS Code 1.105's runtime), and inlinesrequire('@salesforce/b2c-tooling-sdk/package.json')at SDK source-load time so minification can no longer break the substitution. SDK data directories that the runtime expects (cip-proto,script-api,content-schemas,scaffolds) are all staged intodist/data/instead of justscaffolds. Theinject-script-typesstep that adds the bundled TypeScript Server plugin to the VSIX now uses pure-Node JSZip instead of shelling out tozip/unzip, removing the host-binary requirement (Windows CI compatibility) and fixing a regression where[Content_Types].xmlentries for the injected plugin were emitted without their leading dot. The extension version and telemetry connection string are now injected as build-time constants, eliminating a runtimereadFileSync(package.json).vscode:prepublishnow builds@salesforce/b2c-script-typesbefore the extension bundle so a stale plugin tree can no longer ship. (Thanks @clavery!)#475
0363dca- Correctness and UX hardening pass across the extension: (Thanks @clavery!)ContentFileSystemProvider.stat()now returns a stablemtimeinstead ofDate.now()per call. VS Code no longer believes content files are constantly mutating, eliminating phantom "file modified externally" prompts and silent buffer reloads that could clobber unsaved edits.rename()method delegates to the SDK'swebdav.move(already used by drag-and-drop) instead of throwingNoPermissions. Cross-root attempts and 412 conflicts are mapped to the rightvscode.FileSystemError.fs.readFileSync/existsSync/statSyncon the activation hot path (B2CExtensionConfig) and in the per-paint CAP file-decoration provider withvscode.workspace.fsasync equivalents and a Set lookup, respectively. CAP decorations now answer in O(1) without filesystem syscalls.AbortSignalsupport which is a separate change.TreeItem.id, so expand/collapse state survives refresh andtreeView.reveal()works without try/catch fallback.registerSafeCommand, includingb2c-dx.sandbox.clone(a billable operation). All now route through the safety guard and feature-usage telemetry. Added ascriptTypesfeature category and command-prefix mapping.createDeleteAndDeployCommand, the unusedtempDirscleanup loop incartridge-commands, the deadopenExternalbranch in the Page Designer webview message handler, and the never-implementedb2c-dx.codeSync.diffCartridgecommand.Updated dependencies [
b723939,21bbed0,de8d40b,80e63fc,c8e0b60]:@salesforce/b2c-dx-docs@0.3.4
Patch Changes
#473
b723939- Documentation audit and repair pass: corrected stale CLI flag and command references across the CLI reference and guides, fixed broken examples (e.g. eCDN mTLS, sandbox--no-*flags, WebDAVgetarguments), aligned SDK JSDoc with current signatures, and added the missingoperations/captypedoc entry point so the Commerce App SDK module appears in the API reference. Filled in JSDoc for previously undocumented public exports across the SDK (auth, clients, instance, logging, ods, mrt, cap, cip, debug, scaffold, schemas, skills, etc.) so the generated API docs cover the full public surface. (Thanks @clavery!)#478
d19802f- Document the GitHub Actions install behavior change. The high-level actions (code-deploy,data-import,job-run,mrt-deploy,webdav-upload) now reuse an already-installed CLI and install one only when none is present — so a deploy that follows a setup step, and repeated operations on a persistent self-hosted runner, no longer trigger a redundant reinstall or an unexpected upgrade. Thesetupaction called directly still installs the version you request (a newskip-if-presentinput opts into reuse). The actions no longer cache the npm download directory, which had grown to gigabytes on long-lived self-hosted runners and slowed restores. Plugin installs are skipped by exact name match. (Thanks @clavery!)#431
80d594f- Document deploying to staging environments (two-factor mTLS) from CI/CD. ThesetupGitHub Action now acceptswebdav-server,certificate,certificate-passphrase, andselfsignedinputs so workflows can target staging instances that require a separate WebDAV hostname and a client certificate. The CI/CD guide includes a full GitHub Actions example using a base64-encoded.p12secret. (Thanks @clavery!)@salesforce/b2c-agent-plugins@1.3.3
Patch Changes
#485
e6cec0a- Fixvalue-definitionelement order in the b2c-metadata and b2c-site-import-export skills. The B2Cmetadata.xsdrequires<display>to appear before<value>inside each<value-definition>; the skill examples had them reversed, which caused enum/set attribute imports to fail site-archive validation withcvc-complex-type.2.4.d. Examples now use the correct order and call out the requirement. (Thanks @clavery!)#484
80e63fc-b2c job importnow supports--splitfor importing directories larger than the instance archive size limit. With--split(and optional--max-size, default190mb), the import is broken into several smaller archives: order-sensitive metadata/XML is imported first — kept together when it fits, otherwise split at data-unit boundaries in dependency order — followed by static assets packed by compressed size. A normal import that exceeds the limit now warns and recommends--split. (Thanks @clavery!)Example:
b2c job import ./big-site-data --split --max-size 150mbThe SDK adds a corresponding
siteArchiveImportSplit()operation.