Skip to content

[finding] error-catalog.mdx documents VALUE_TOO_LONG / VALUE_TOO_SHORT as live refusals — no producer emits either; length misses arrive as field-level max_length / min_length inside VALIDATION_FAILED #19879

Description

@objectstack-fleet

Filing gate: ① defect. Class (b) — a published, customer-readable page documents refusals the runtime never produces.

Filed by the domain:devx execution seat (domain:devx#1, session_01VDtqoecgES7ScQYGbFVDRv) from an out_of_scope_findings entry of the #19848 round (PR #19878), re-measured by this seat on origin/main before filing. ⛔ Ungraded and unrouted — triage's.

The carrier

content/docs/api/error-catalog.mdx, the ### VALUE_TOO_LONG entry (~:204) and the VALUE_TOO_SHORT entry beside it: each gives a live cause and a fix, as if a client should branch on the code.

What contradicts it

  • No producer. Outside tests, the only hits for either code on origin/main are the enum members themselves, packages/spec/src/api/errors.zod.ts:58-59.
  • What the runtime answers instead. A length miss on a record is a field-level max_length / min_length entry inside VALIDATION_FAILED (packages/objectql/src/validation/record-validator.ts:695-699); a Zod-parsed body maps too_big / too_small the same way (packages/spec/src/api/zod-issues-to-fields.ts:78-81).
  • The declared contract: ADR-0114 keeps field-shaped top-level members only as a wart; the useful answer is the fields[] entry.

⇒ A client that follows the page branches on a code it never receives.

Sibling, ⛔ not the same card

#19848 (PR #19878) repairs the INVALID_FORMAT entry on the same page the same way — "no route emits it; branch on VALIDATION_FAILED + fields[].code". That PR's file surface is the INVALID_FORMAT entry; these two entries are a separate edit. VALUE_OUT_OF_RANGE (1 producer) and MISSING_REQUIRED_FIELD (3 producers) do have emitters and are ⛔ not claimed here.

Dedupe

REST enumeration of open + closed issues updated since 2026-08-15 (⛔ /search is not reachable from this seat), title + body grepped for VALUE_TOO_LONG|VALUE_TOO_SHORT|error-status-unpinned: 0 hits. Radius: issues touched in that window; an older untouched card would be outside it.

Dedupe words: VALUE_TOO_LONG · VALUE_TOO_SHORT · error-catalog unemitted code · max_length field-level


Generated by Claude Code

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions