Skip to content

Dev-client hides derived-field decode rejection behind error-free JSON and shell exit1 #578

Closed

Description

@trissim

Original retained dev-client shell exits1 after eight successful public replies, without visible JSON error.

Determined offline against exact qualified8513 target and original closed journal: registration-status rejects declared derived CustomFunctionRegistrationObservation.outcome because original python_introspect.dataclass_from_mapping admits only init=True fields, while canonical serializer emits all fields. McpDevPayloadFailure carries mcp_payload_invalid, but its JSON projector emits only the raw receipt and hides that diagnostic. Shell's nonzero aggregation is therefore justified by an invisible local decode failure, not a native operation failure.

Singer owns OpenHCS result/diagnostic family; declaration decoder seam coordinated with Dewey. No current open dev-client owner or Root394 crossing found. No new client, registration replay, science input, timeout/cap increase or environment change. Original shell terminal1 and merged567 native positive remain retained.

Acceptance: original successful saved reply round-trips through its declared owner, while supplied contradictory derived state/unknown fields fail closed. Any genuine decode rejection remains visible through JSON and formatting with original receipt retained and nonzero returncode. Independent derived declaration needs no generic consumer switch. Original shell/user entrypoint verification after coherent fix; no UNKNOWN request replay.

Activity

  1. added a commit that references this issue on Oct 4, 2026
  2. trissim commented on Oct 6, 2026

    @trissim
    CollaboratorAuthor

    Closing the covered dev-client decoder/diagnostic defect with merged PR #579 and merged python-introspect PR #10 (published 0.1.16). The real dev_client.main/shell/codec entrypoint replay of retained replies passes: eight original successful replies return zero; contradictory derived state and unknown fields return nonzero with visible typed cause and original receipt. This is the documented source entrypoint acceptance, not a new live registration or scientific replay.

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

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions