ShellSafetyVerdictSchema
constShellSafetyVerdictSchema:ZodObject<{outcome:ZodEnum<{attack:"attack";catastrophic:"catastrophic";destructive:"destructive";safe:"safe"; }>;reason:ZodString;suggestedTool:ZodOptional<ZodString>; },$strip>
Defined in: _worktrees/docs-release/gaunt-sloth/packages/core/src/core/shell/rater.ts:107
Structured verdict the rater model must return: one outcome plus one short sentence. There is deliberately nothing else — no severity number, no booleans to recombine into a compound condition. The consequence is a property of the rung, not of a knob.
The schema is written plainly, as the verdict the rater’s CALLERS want. suggestedTool is a
plain .optional() and the parsed verdict’s suggestedTool is string | undefined. What a
strict json_schema provider has to be sent instead — the key required and its type nullable —
and the null that then comes back are entirely the business of
structuredOutputBoundary, which rateShellCommand runs both halves of the call
through. Nothing about the wire belongs in this object; putting it here is what made the schema we
send contradict the schema we validate with.