Skip to content

Observability runbooks, replication and storefront skills, clearer job log failures - #834

Merged
clavery merged 3 commits into
mainfrom
feature/o11y-runbooks-1
Oct 29, 2026
Merged

clavery merged 3 commits into
mainfrom
feature/o11y-runbooks-1

Conversation

@clavery

@clavery clavery commented Oct 29, 2026

Copy link
Copy Markdown
Collaborator

Summary

Agents and users get more guidance for production triage and for moving work between instances, and failed job commands now say why they failed more often.

Observability

  • New b2c-performance-triage and b2c-integration-triage runbooks, plus a metrics signals catalog. Together they map slow, erroring, or silent storefront and external-service symptoms to Metrics API categories and dimensions. The checkout, edge-traffic, and production triage runbooks now point to these signals.
  • metrics_get (MCP) accepts summarize: true, which returns per-series statistics instead of every data point, so an agent can scan a whole category without hitting output limits. Its output is now compact JSON.
  • Fix: Metrics API series tags (apiFamily, controller, host, ocapiCategory, statusClass) no longer include the <realm>_<environment> prefix. This is fixed in both the TypeScript and Python SDKs.
  • MCP evals: routing cases for the new runbooks, and an opt-in, read-only live tier that runs against a real instance.

Skills

  • b2c-replication: automate code and data replication from staging with a custom job built on the ExecuteCodeReplication / ExecuteDataReplication steps. Includes the task-group reference and the global-then-site order needed the first time a site is replicated.
  • b2c-storefronts: choosing between creating and importing a Storefront Next storefront. Covers moving a storefront to another instance in the same MRT project (export, then job import --wait-for-storefront) and the import requirements. Cross-linked from b2c-job and b2c-custom-job-steps.

Job log diagnostics (shared by job run, job wait, job import, job export, job import-set, cap install, cap uninstall)

  • If a failed execution hasn't flagged its log as written yet, the command re-checks the execution up to twice before giving up.
  • [DATAERROR] lines from the log are printed next to the final error. The generic Internal fatal error summary usually hides the real cause, which those lines carry.
  • When the log download fails, the warning now gives the reason (for example 401 Unauthorized) and a b2c webdav get --root logs ... --user-auth command that can read it. Before, it only said Could not retrieve job log.

Everything is best-effort: if any of these lookups fails, the output is the same as before.

Platform dependencies

  • The Metrics API is in closed beta. Without access, metrics_get and the metrics steps in the runbooks return an authorization error.
  • ExecuteCodeReplication requires B2C Commerce 26.11. The skill documents the preconfigured-process step for earlier releases.
  • Storefront import with --wait-for-storefront requires 26.10 on both instances.

Testing

Manual testing:

  • Run b2c job wait sfcc-site-archive-import <id> --show-log on a failed site import, using client credentials whose API client has no WebDAV access to Logs. The warning should include the 401 and the webdav get --user-auth command, and that command should download the log.
  • With an API client that can read logs over WebDAV, a failed site import (for example, a storefront archive whose sites don't exist on the target) should show a Data errors: block.
  • Follow b2c-replication on a staging instance: import the job definitions, then run the code, global, and site jobs in order.
  • Follow b2c-storefronts to export a storefront from staging and import it on production. Production should get a new environment in the same MRT project.
  • With Metrics API access, run metrics_get with summarize: true and confirm the tags have no realm prefix.

- performance and integration triage runbooks with a metrics signals catalog
- fix Metrics API tags realm_environment prefix (TS and Python SDKs)
- metrics_get summarize option, compact output and per-category notes
- routing evals plus an opt-in live eval tier (read-only)
…lures

- b2c-replication: automate code/data replication with custom jobs on the
  ExecuteCodeReplication / ExecuteDataReplication steps, task reference,
  first-replication ordering
- b2c-storefronts: create vs import Storefront Next storefronts, moving a
  storefront to another instance in the same MRT project
- job commands: re-check for a not-yet-written log, print [DATAERROR] lines,
  and report why a log download failed with a webdav --user-auth hint
@clavery
clavery deployed to b2c-docs-preview October 29, 2026 21:28 — with GitHub Actions Active
@github-actions

github-actions Bot commented Oct 29, 2026 •

Copy link
Copy Markdown
Contributor

📘 Docs preview

🧹 The preview for this PR has been removed (PR closed).

@clavery
clavery merged commit ad5f946 into main Oct 29, 2026
20 checks passed
@clavery
clavery deleted the feature/o11y-runbooks-1 branch October 29, 2026 21:38
@clavery
clavery deployed to b2c-docs-preview October 29, 2026 21:38 — with GitHub Actions Active

This branch was successfully deployed

1 active deployment
b2c-docs-preview — fdc38b17 Deployed Oct 29, 2026 by clavery via Remove preview on close #1167
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.

1 participant