Mechanical rename produced by scripts/msd-rename.cjs: gsd/Gsd/GSD -> msd/Msd/MSD across contents and paths, upstream package/repo coordinates -> @golem15/msd-core and golem15com/msd-core. Deep links into upstream history, sibling upstream packages, the GSD-2 import feature, CHANGELOG.md and .changeset/ are kept as-is. Hand edits on top: MSD block-letter banner and logos, LICENSE copyright line, package/plugin identity, regenerated lockfile, install-tree fixtures, derived registries and benchmark baseline; migration checksum baseline re-locked (MSD keeps its own install state, so no install had applied the old sums); sort-order and regex-escaped expectations in tests adjusted.
19 lines
790 B
Markdown
19 lines
790 B
Markdown
---
|
|
id: 142
|
|
title: Structured JSON Error Mode
|
|
group: v1.42.1 Features
|
|
---
|
|
|
|
**CLI:** `msd-tools --json-errors`
|
|
|
|
**Purpose:** Give automation callers stable machine-readable error envelopes.
|
|
|
|
**Behavior:** Commands that fail under `--json-errors` return structured `ok: false` payloads with error kind, message, command context, and exit mapping instead of prose-only stderr.
|
|
|
|
**Requirements:**
|
|
- REQ-JSON-ERRORS-01: Unknown commands, validation errors, timeouts, native failures, fallback failures, and internal errors MUST map to canonical error kinds.
|
|
- REQ-JSON-ERRORS-02: CLI exit code mapping MUST remain stable for automation callers.
|
|
- REQ-JSON-ERRORS-03: Human-readable output MUST remain the default when `--json-errors` is absent.
|
|
|
|
**Reference:** [JSON Error Mode](json-errors.md)
|