Common utilities for error handling within Backstage with structured error classes and serialization functions
63
{
"context": "Evaluates whether the solution leverages @backstage/errors serialization helpers to control stack trace sharing, keeping stacks off by default and including them only when explicitly requested. Checks also confirm nested causes are serialized through the helpers with stack behavior aligned to the opt-in flag.",
"type": "weighted_checklist",
"checklist": [
{
"name": "Default omit",
"description": "Uses @backstage/errors serializeError without includeStack (or with includeStack: false) so stack traces are excluded in the default serialization path.",
"max_score": 25
},
{
"name": "Stack opt-in",
"description": "When the caller requests debugging detail, calls serializeError with includeStack: true to embed stack traces in the serialized output.",
"max_score": 30
},
{
"name": "Cause handling",
"description": "Passes errors with nested causes through serializeError so the cause chain is preserved, and includes cause stack traces only when includeStack is true.",
"max_score": 25
},
{
"name": "Serialized shape",
"description": "Relies on the SerializedError shape produced by serializeError (name, message, optional stack/cause) rather than hand-rolled structures, matching the package’s output when stacks are toggled.",
"max_score": 20
}
]
}Install with Tessl CLI
npx tessl i tessl/npm-backstage--errorsevals
scenario-1
scenario-2
scenario-3
scenario-4
scenario-5
scenario-6
scenario-7
scenario-8
scenario-9
scenario-10