{
  "canonical_bytes": "UTF-8 without BOM, LF line endings, final LF; digest includes every byte of this file.",
  "capabilities": [
    {
      "name": "telemetry",
      "state": "implemented",
      "description": "Full-rate binary cycle records; observation needs no session or authority.",
      "transport": "GET /v1/telemetry?after=<sequence>; GET /v1/telemetry/stream?after=<sequence>",
      "request_type": "",
      "required_fields": [],
      "response_type": "TelemetryBatch"
    },
    {
      "name": "mark_telemetry",
      "request_type": "Request",
      "required_fields": [
        "schema",
        "operation",
        "session",
        "generation",
        "label"
      ],
      "response_type": "sequence",
      "state": "implemented",
      "transport": "POST /v1/control"
    },
    {
      "name": "acquire",
      "request_type": "Request",
      "required_fields": [
        "schema",
        "operation",
        "controller",
        "binding"
      ],
      "response_type": "Grant",
      "state": "implemented",
      "transport": "POST /v1/control"
    },
    {
      "name": "renew",
      "request_type": "Request",
      "required_fields": [
        "schema",
        "operation",
        "session",
        "generation"
      ],
      "response_type": "Grant",
      "state": "implemented",
      "transport": "POST /v1/control"
    },
    {
      "name": "release",
      "request_type": "Request",
      "required_fields": [
        "schema",
        "operation",
        "session",
        "generation"
      ],
      "response_type": "Grant",
      "state": "implemented",
      "transport": "POST /v1/control"
    },
    {
      "name": "stop",
      "request_type": "Request",
      "required_fields": [
        "schema",
        "operation",
        "session",
        "generation"
      ],
      "response_type": "Grant",
      "state": "implemented",
      "transport": "POST /v1/control"
    },
    {
      "name": "enable",
      "request_type": "Request",
      "required_fields": [
        "schema",
        "operation",
        "session",
        "generation",
        "axis_mask"
      ],
      "response_type": "sequence",
      "state": "implemented",
      "transport": "POST /v1/control"
    },
    {
      "name": "arm",
      "request_type": "Request",
      "required_fields": [
        "schema",
        "operation",
        "session",
        "generation"
      ],
      "response_type": "sequence",
      "state": "implemented",
      "transport": "POST /v1/control"
    },
    {
      "name": "home",
      "request_type": "Request",
      "required_fields": [
        "schema",
        "operation",
        "session",
        "generation",
        "axis_mask"
      ],
      "response_type": "sequence",
      "state": "implemented",
      "transport": "POST /v1/control"
    },
    {
      "name": "reset_fault",
      "request_type": "Request",
      "required_fields": [
        "schema",
        "operation",
        "session",
        "generation"
      ],
      "response_type": "RecoveryStatus",
      "state": "interim",
      "transport": "POST /v1/control"
    },
    {
      "name": "recovery_status",
      "request_type": "Request",
      "required_fields": [
        "schema",
        "operation",
        "session",
        "generation"
      ],
      "response_type": "RecoveryStatus",
      "state": "implemented",
      "transport": "POST /v1/control"
    },
    {
      "name": "jog",
      "description": "Legacy velocity jog is test-only for oracle ports and fixtures. Consumers use begin_jog/update_jog/end_jog; update_jog uses jog.sock or WSS /v1/jog.",
      "request_type": "Request",
      "required_fields": [
        "schema",
        "operation",
        "session",
        "generation",
        "axis_mask",
        "velocity",
        "timeout_ms"
      ],
      "response_type": "sequence",
      "state": "test_only",
      "transport": "POST /v1/control"
    },
    {
      "name": "begin_jog",
      "request_type": "Request",
      "required_fields": [
        "schema",
        "operation",
        "session",
        "generation",
        "axis_mask",
        "source_origin_host_ns",
        "deadline_host_ns",
        "clock_incarnation"
      ],
      "response_type": "handle",
      "state": "implemented",
      "transport": "POST /v1/control"
    },
    {
      "name": "end_jog",
      "request_type": "Request",
      "required_fields": [
        "schema",
        "operation",
        "session",
        "generation",
        "jog_generation"
      ],
      "response_type": "handle",
      "state": "implemented",
      "transport": "POST /v1/control"
    },
    {
      "name": "prepare_trajectory",
      "request_type": "Request",
      "required_fields": [
        "schema",
        "operation",
        "session",
        "generation",
        "axis_mask",
        "points"
      ],
      "response_type": "handle",
      "state": "implemented",
      "transport": "POST /v1/control"
    },
    {
      "name": "start_trajectory",
      "request_type": "Request",
      "required_fields": [
        "schema",
        "operation",
        "session",
        "generation",
        "handle"
      ],
      "response_type": "sequence",
      "state": "implemented",
      "transport": "POST /v1/control"
    },
    {
      "name": "discard_trajectory",
      "request_type": "Request",
      "required_fields": [
        "schema",
        "operation",
        "session",
        "generation",
        "handle"
      ],
      "response_type": "sequence",
      "state": "implemented",
      "transport": "POST /v1/control"
    },
    {
      "name": "start_program",
      "request_type": "Request",
      "required_fields": [
        "schema",
        "operation",
        "session",
        "generation",
        "identity"
      ],
      "response_type": "sequence",
      "state": "implemented",
      "transport": "POST /v1/control"
    },
    {
      "name": "describe",
      "request_type": "none",
      "required_fields": [],
      "response_type": "Description",
      "state": "implemented",
      "transport": "GET /v1/describe"
    },
    {
      "name": "status",
      "request_type": "none",
      "required_fields": [],
      "response_type": "ProcessStatus",
      "state": "implemented",
      "transport": "GET /v1/status"
    },
    {
      "name": "jog_clock",
      "request_type": "none",
      "required_fields": [],
      "response_type": "LocalJogClock",
      "state": "implemented",
      "transport": "GET /v1/jog/clock"
    },
    {
      "name": "jog_status",
      "request_type": "none",
      "required_fields": [],
      "response_type": "JogObservation",
      "state": "implemented",
      "transport": "GET /v1/jog"
    },
    {
      "name": "jog_ingress",
      "request_type": "none",
      "required_fields": [],
      "response_type": "JogIngressObservation",
      "state": "implemented",
      "transport": "GET /v1/jog/ingress"
    },
    {
      "name": "prepare_program",
      "request_type": "binary rdt",
      "required_fields": [
        "X-Control-Session",
        "X-Control-Generation"
      ],
      "response_type": "Program",
      "state": "implemented",
      "transport": "POST /v1/program"
    },
    {
      "name": "update_jog",
      "request_type": "local_jog_update",
      "required_fields": [],
      "response_type": "JogObservation",
      "state": "implemented",
      "transport": "jog.sock datagram or WSS /v1/jog; protocol/control.json local_jog_update"
    },
    {
      "name": "halt",
      "description": "Controlled deceleration to enabled hold using the active trajectory acceleration, or jog acceleration when no trajectory bound is declared. Retires active motion; preserves authority and Arm. Stop and faults always inhibit immediately.",
      "request_type": "Request",
      "required_fields": [
        "schema",
        "operation",
        "session",
        "generation"
      ],
      "response_type": "Response.sequence/native_result",
      "state": "implemented",
      "transport": "POST /v1/control"
    },
    {
      "name": "abort",
      "request_type": "Request",
      "required_fields": [
        "schema",
        "operation"
      ],
      "response_type": "none",
      "state": "unimplemented",
      "transport": "none"
    },
    {
      "name": "subscribe_events",
      "request_type": "none",
      "required_fields": [],
      "response_type": "EventBatch",
      "state": "implemented",
      "transport": "GET /v1/events?after=<sequence>; GET /v1/events/stream?after=<sequence> (SSE)"
    },
    {
      "name": "readiness",
      "request_type": "Request",
      "required_fields": [
        "schema",
        "operation"
      ],
      "response_type": "none",
      "state": "unimplemented",
      "transport": "none"
    },
    {
      "name": "restore_anchor",
      "request_type": "Request",
      "required_fields": [
        "schema",
        "operation",
        "session",
        "generation",
        "axis_mask"
      ],
      "response_type": "RecoveryStatus",
      "state": "implemented",
      "transport": "POST /v1/control"
    },
    {
      "name": "io_arm",
      "state": "implemented",
      "transport": "POST /v1/control",
      "request_type": "Request",
      "required_fields": [
        "schema",
        "operation",
        "session",
        "generation"
      ],
      "response_type": "sequence",
      "description": "Native cell I/O permission; torch remains unqualified (P6-05)."
    },
    {
      "name": "io_disarm",
      "state": "implemented",
      "transport": "POST /v1/control",
      "request_type": "Request",
      "required_fields": [
        "schema",
        "operation",
        "session",
        "generation"
      ],
      "response_type": "sequence",
      "description": "Native cell I/O permission; torch remains unqualified (P6-05)."
    },
    {
      "name": "resource",
      "state": "implemented",
      "description": "Read one bounded content-addressed compiled resource without a lease; remote mutual TLS required.",
      "transport": "GET /v1/resources/<sha256>",
      "request_type": "",
      "required_fields": [],
      "response_type": "binary"
    }
  ],
  "capability_states": [
    "implemented",
    "interim",
    "test_only",
    "unimplemented"
  ],
  "contract_version": 2,
  "handle_states": [
    "prepared",
    "started",
    "consumed",
    "discarded",
    "superseded",
    "retired"
  ],
  "reasons": [
    {
      "name": "no_grant",
      "meaning": "Halt requires a current valid application grant."
    },
    {
      "name": "wrong_generation",
      "meaning": "Halt carries a different application or native generation."
    },
    {
      "name": "inhibited",
      "meaning": "Halt requires an armed, enabled machine with current readiness; Stop or a fault takes precedence."
    },
    {
      "name": "invalid_telemetry_cursor",
      "meaning": "Telemetry after must be one unsigned decimal uint64 cursor."
    },
    {
      "name": "telemetry_cursor_ahead",
      "meaning": "Telemetry cursor exceeds the current ring sequence; reconcile incarnation before restarting."
    },
    {
      "name": "telemetry_busy",
      "meaning": "Ring header remained torn after the bounded 16 samples; retry the same cursor. Established streams continue with an empty batch and unchanged cursor."
    },
    {
      "name": "telemetry_unavailable",
      "meaning": "A compatible live telemetry ring could not be observed."
    },
    {
      "meaning": "Telemetry label must contain 1..128 valid UTF-8 bytes.",
      "name": "telemetry_label_invalid"
    },
    {
      "meaning": "Dense axis count differs from the nine-axis format.",
      "name": "axis_count_mismatch"
    },
    {
      "meaning": "Dense payload length differs from the declared block extents.",
      "name": "blob_length_mismatch"
    },
    {
      "meaning": "Dense block offsets, record lengths or segment metadata counts are inconsistent.",
      "name": "block_layout_invalid"
    },
    {
      "meaning": "Dense segment bytes do not match their declared SHA-256 digest.",
      "name": "block_sha256_mismatch"
    },
    {
      "meaning": "Dense header schema does not name the supported dense trajectory format.",
      "name": "dense_schema_mismatch"
    },
    {
      "meaning": "Dense segment duration differs from its final sample clock.",
      "name": "duration_mismatch"
    },
    {
      "meaning": "Dense header cannot be decoded or encoded as JSON.",
      "name": "header_json_invalid"
    },
    {
      "meaning": "Dense header length or header bytes are incomplete.",
      "name": "header_truncated"
    },
    {
      "meaning": "Dense segment kind is not freespace, weld or dwell.",
      "name": "kind_invalid"
    },
    {
      "meaning": "Dense velocity limits must contain nine positive finite values.",
      "name": "limits_invalid"
    },
    {
      "meaning": "Dense time, position or velocity sample is not finite.",
      "name": "nonfinite_sample"
    },
    {
      "meaning": "Dense position step exceeds the format velocity allowance.",
      "name": "q_step_exceeded"
    },
    {
      "meaning": "Dense supplied velocity exceeds its declared format limit.",
      "name": "qd_limit_exceeded"
    },
    {
      "meaning": "Dense sample sets a reserved process flag bit.",
      "name": "reserved_flags_set"
    },
    {
      "meaning": "Dense source sample count exceeds the format capacity.",
      "name": "sample_count_overflow"
    },
    {
      "meaning": "Dense record encoding or record byte count is unsupported.",
      "name": "sample_encoding_mismatch"
    },
    {
      "meaning": "Dense segment indices do not follow payload order.",
      "name": "segment_index_out_of_order"
    },
    {
      "meaning": "Dense segment contains fewer than two samples.",
      "name": "segment_too_short"
    },
    {
      "meaning": "Dense program contains no motion segments.",
      "name": "segments_empty"
    },
    {
      "meaning": "Dense sample clock is not on its declared positive time grid.",
      "name": "time_grid_invalid"
    },
    {
      "meaning": "Dense torch flag is set outside a weld segment.",
      "name": "torch_outside_weld"
    },
    {
      "meaning": "Dense total sample count differs from its segment counts.",
      "name": "total_sample_count_mismatch"
    },
    {
      "meaning": "Dense content digest differs from the declared trajectory digest.",
      "name": "trajectory_digest_mismatch"
    },
    {
      "meaning": "Event history was lost; reconcile status before resuming from a new cursor.",
      "name": "event_cursor_lost"
    },
    {
      "meaning": "Rejected: application generation exhausted.",
      "name": "application_generation_exhausted"
    },
    {
      "meaning": "Rejected: authority binding mismatch.",
      "name": "authority_binding_mismatch"
    },
    {
      "meaning": "Rejected: body too large.",
      "name": "body_too_large"
    },
    {
      "meaning": "Rejected: bound path is not a socket.",
      "name": "bound path is not a socket"
    },
    {
      "meaning": "Rejected dense segment position gap or accumulated normalisation correction above the boundary tolerance.",
      "name": "boundary_q_discontinuity"
    },
    {
      "meaning": "Rejected dense segment endpoint velocity above the stationary boundary tolerance.",
      "name": "boundary_qd_nonzero"
    },
    {
      "meaning": "Rejected: busy.",
      "name": "busy"
    },
    {
      "meaning": "The named target capability is unavailable and performs no operation.",
      "name": "capability_unimplemented"
    },
    {
      "meaning": "The WebSocket transport refused control payload too large.",
      "name": "control payload too large"
    },
    {
      "meaning": "Rejected: control already owned.",
      "name": "control_already_owned"
    },
    {
      "meaning": "Rejected: control session stale.",
      "name": "control_session_stale"
    },
    {
      "meaning": "The session belongs to a different TLS principal/pair or local transport authority.",
      "name": "session_principal_mismatch"
    },
    {
      "meaning": "Rejected: daemon restarted.",
      "name": "daemon_restarted"
    },
    {
      "meaning": "Rejected: dense axis map requires nine ids.",
      "name": "dense_axis_map_requires_nine_ids"
    },
    {
      "meaning": "Rejected: duplicate request field.",
      "name": "duplicate_request_field"
    },
    {
      "meaning": "Rejected: expired.",
      "name": "expired"
    },
    {
      "meaning": "At least one fault condition still prevents clearing.",
      "name": "fault_persists"
    },
    {
      "meaning": "Assigned PDO mapping differs from the registered layout; corrected bring-up is required.",
      "name": "pdo_mapping_mismatch"
    },
    {
      "meaning": "Rejected: fence.",
      "name": "fence"
    },
    {
      "meaning": "The WebSocket transport refused fragmentation rejected.",
      "name": "fragmentation rejected"
    },
    {
      "meaning": "Rejected: handle active.",
      "name": "handle_active"
    },
    {
      "meaning": "This handle completed or was replaced by a later execution.",
      "name": "handle_consumed"
    },
    {
      "meaning": "This handle was explicitly discarded.",
      "name": "handle_discarded"
    },
    {
      "meaning": "Cancellation or uncertain ownership permanently retired this handle.",
      "name": "handle_retired"
    },
    {
      "meaning": "This handle has already started.",
      "name": "handle_started"
    },
    {
      "meaning": "A committed replacement superseded this handle.",
      "name": "handle_superseded"
    },
    {
      "meaning": "Rejected: hijacking unavailable.",
      "name": "hijacking unavailable"
    },
    {
      "meaning": "Rejected: independent jog unavailable.",
      "name": "independent_jog_unavailable"
    },
    {
      "meaning": "The WebSocket transport refused invalid UTF-8.",
      "name": "invalid UTF-8"
    },
    {
      "meaning": "The WebSocket transport refused invalid close code.",
      "name": "invalid close code"
    },
    {
      "meaning": "The WebSocket transport refused invalid close payload.",
      "name": "invalid close payload"
    },
    {
      "meaning": "The WebSocket transport refused invalid close reason.",
      "name": "invalid close reason"
    },
    {
      "meaning": "The WebSocket transport refused invalid frame flags.",
      "name": "invalid frame flags"
    },
    {
      "meaning": "The WebSocket transport refused invalid opcode.",
      "name": "invalid opcode"
    },
    {
      "meaning": "Rejected: invalid remote CRL PEM.",
      "name": "invalid remote CRL PEM"
    },
    {
      "meaning": "Rejected: invalid remote pair SAN.",
      "name": "invalid remote pair SAN"
    },
    {
      "meaning": "Rejected: invalid remote principal SAN.",
      "name": "invalid remote principal SAN"
    },
    {
      "meaning": "Rejected: invalid websocket upgrade.",
      "name": "invalid websocket upgrade"
    },
    {
      "meaning": "Rejected: invalid control generation.",
      "name": "invalid_control_generation"
    },
    {
      "meaning": "Rejected: invalid dense axis map.",
      "name": "invalid_dense_axis_map"
    },
    {
      "meaning": "Rejected: invalid pair configuration binding.",
      "name": "invalid_pair_configuration_binding"
    },
    {
      "meaning": "Rejected: invalid request envelope.",
      "name": "invalid_request_envelope"
    },
    {
      "meaning": "Rejected: invalid request id.",
      "name": "invalid_request_id"
    },
    {
      "meaning": "Rejected: jog clock arithmetic range.",
      "name": "jog_clock_arithmetic_range"
    },
    {
      "meaning": "Rejected: jog clock calibration expired.",
      "name": "jog_clock_calibration_expired"
    },
    {
      "meaning": "Rejected: jog clock exchange inconsistent.",
      "name": "jog_clock_exchange_inconsistent"
    },
    {
      "meaning": "Rejected: jog clock incarnation mismatch.",
      "name": "jog_clock_incarnation_mismatch"
    },
    {
      "meaning": "Rejected: jog clock invalid budget or exchange.",
      "name": "jog_clock_invalid_budget_or_exchange"
    },
    {
      "meaning": "Rejected: jog clock mapping generation mismatch.",
      "name": "jog_clock_mapping_generation_mismatch"
    },
    {
      "meaning": "Rejected: jog clock moved backwards.",
      "name": "jog_clock_moved_backwards"
    },
    {
      "meaning": "Rejected: jog clock uncertainty exceeded.",
      "name": "jog_clock_uncertainty_exceeded"
    },
    {
      "meaning": "Rejected: jog clock unqualified.",
      "name": "jog_clock_unqualified"
    },
    {
      "meaning": "Rejected: jog input deadline expired.",
      "name": "jog_input_deadline_expired"
    },
    {
      "meaning": "Rejected: jog input entirely future.",
      "name": "jog_input_entirely_future"
    },
    {
      "meaning": "Rejected: jog input too old.",
      "name": "jog_input_too_old"
    },
    {
      "meaning": "Rejected: jog invalid frame.",
      "name": "jog_invalid_frame"
    },
    {
      "meaning": "Rejected: jog publisher busy.",
      "name": "jog_publisher_busy"
    },
    {
      "meaning": "Rejected: jog session or sequence stale.",
      "name": "jog_session_or_sequence_stale"
    },
    {
      "meaning": "Rejected: jog session stale.",
      "name": "jog_session_stale"
    },
    {
      "meaning": "Rejected: no complete jog stream frame within FastControlMaxJogInputAgeNs (250,000,000 ns).",
      "name": "jog_stream_idle"
    },
    {
      "meaning": "Rejected: manifest revision mismatch.",
      "name": "manifest_revision_mismatch"
    },
    {
      "meaning": "Another active motion mode prevents this operation.",
      "name": "mode_conflict"
    },
    {
      "meaning": "Native execution ended without successful completion; motion completion is unverified. Inspect status and fault details, correct the cause, and explicitly prepare and start a new execution.",
      "name": "native_execution_failed"
    },
    {
      "meaning": "A dense sample exceeds a native position, velocity or declared sampled acceleration limit.",
      "name": "native_limit_exceeded"
    },
    {
      "meaning": "A motion request increases an exterior limit excursion or crosses the opposite boundary; native command reason 8 and jog reason 15.",
      "name": "outside_limits_outward"
    },
    {
      "meaning": "Native command admission refused; inspect native_result.",
      "name": "native_rejected"
    },
    {
      "meaning": "Rejected: native segment rate exceeded.",
      "name": "native_segment_rate_exceeded"
    },
    {
      "meaning": "The WebSocket transport refused noncanonical length.",
      "name": "noncanonical length"
    },
    {
      "meaning": "The controlled axes do not satisfy native movement readiness.",
      "name": "not_ready"
    },
    {
      "meaning": "The WebSocket transport refused payload too large.",
      "name": "payload too large"
    },
    {
      "meaning": "Rejected: process start time unavailable.",
      "name": "process start time unavailable"
    },
    {
      "meaning": "Rejected: process io executor not qualified.",
      "name": "process_io_executor_not_qualified"
    },
    {
      "meaning": "Rejected: program already executing.",
      "name": "program_already_executing"
    },
    {
      "meaning": "Rejected: program identity mismatch.",
      "name": "program_identity_mismatch"
    },
    {
      "meaning": "Rejected: program identity missing.",
      "name": "program_identity_missing"
    },
    {
      "meaning": "Rejected: recovery observation unavailable.",
      "name": "recovery_observation_unavailable"
    },
    {
      "meaning": "Rejected: remote CA must be a self-signed component CA.",
      "name": "remote CA must be a self-signed component CA"
    },
    {
      "meaning": "Rejected: remote CA must contain one CA certificate.",
      "name": "remote CA must contain one CA certificate"
    },
    {
      "meaning": "Rejected: remote CA, certificate, key and CRL are required.",
      "name": "remote CA, certificate, key and CRL are required"
    },
    {
      "meaning": "Rejected: remote CRL not current.",
      "name": "remote CRL not current"
    },
    {
      "meaning": "Rejected: remote client must be issued directly by component CA.",
      "name": "remote client must be issued directly by component CA"
    },
    {
      "meaning": "Rejected: remote client revoked.",
      "name": "remote client revoked"
    },
    {
      "meaning": "Rejected: remote identity SAN must be an opaque token.",
      "name": "remote identity SAN must be an opaque token"
    },
    {
      "meaning": "Rejected: remote pair-id required.",
      "name": "remote pair-id required"
    },
    {
      "meaning": "Rejected: remote principal/pair binding mismatch.",
      "name": "remote principal/pair binding mismatch"
    },
    {
      "meaning": "Rejected: request envelope changed.",
      "name": "request_envelope_changed"
    },
    {
      "meaning": "Rejected: request id conflict.",
      "name": "request_id_conflict"
    },
    {
      "meaning": "Rejected: reset requires inhibited.",
      "name": "reset_requires_inhibited"
    },
    {
      "meaning": "Rejected: schema mismatch.",
      "name": "schema_mismatch"
    },
    {
      "meaning": "Rejected moving segment seam; boundary is the zero-based join index and gap_counts reports second minus first in source-axis counts.",
      "name": "segment_boundary_discontinuous"
    },
    {
      "meaning": "Rejected: socket lock ownership cannot be verified.",
      "name": "socket lock ownership cannot be verified"
    },
    {
      "meaning": "Rejected: socket lock path changed.",
      "name": "socket lock path changed"
    },
    {
      "meaning": "Rejected: socket owned by a live process.",
      "name": "socket owned by a live process"
    },
    {
      "meaning": "Rejected: socket ownership cannot be verified.",
      "name": "socket ownership cannot be verified"
    },
    {
      "meaning": "Rejected: trailing request data.",
      "name": "trailing_request_data"
    },
    {
      "meaning": "Rejected: unknown endpoint.",
      "name": "unknown_endpoint"
    },
    {
      "meaning": "Rejected: unknown handle.",
      "name": "unknown_handle"
    },
    {
      "meaning": "Rejected: unknown operation.",
      "name": "unknown_operation"
    },
    {
      "meaning": "The configured dense axis ID has no native axis mapping.",
      "name": "unmapped_dense_axis"
    },
    {
      "meaning": "Rejected: unsupported critical CRL extension.",
      "name": "unsupported critical CRL extension"
    },
    {
      "meaning": "Rejected: unsupported socket ownership transport.",
      "name": "unsupported socket ownership transport"
    },
    {
      "meaning": "No persisted anchor exists for the axis.",
      "name": "anchor_missing"
    },
    {
      "meaning": "The persisted anchor was recorded under a different configuration digest, drive identity or home epoch.",
      "name": "anchor_identity_mismatch"
    },
    {
      "meaning": "The drive reports no valid absolute source for the axis.",
      "name": "anchor_source_invalid"
    },
    {
      "meaning": "The current absolute source disagrees with the persisted anchor beyond the profile tolerance.",
      "name": "anchor_disagrees"
    },
    {
      "meaning": "Anchor storage could not be read or persisted; unverified stored evidence cannot authorize restoration. Filesystem details are logged locally and never returned in public feedback. Retry after checking the anchor directory and disk. On restore refusal, the anchor store is not modified.",
      "name": "anchor_store_io"
    },
    {
      "meaning": "The requested axis mask is empty or names an axis outside the configured group.",
      "name": "invalid_axis_mask"
    },
    {
      "meaning": "Cursor exceeds this adapter incarnation's newest event; obtain current status/incarnation before resuming.",
      "name": "event_cursor_ahead"
    },
    {
      "meaning": "Event cursor must be a single unsigned decimal uint64.",
      "name": "invalid_event_cursor"
    },
    {
      "meaning": "Raw trajectory Start identity differs from its immutable preparation.",
      "name": "trajectory_identity_mismatch"
    },
    {
      "name": "invalid_requested_lease",
      "meaning": "Acquire requested lease is negative or exceeds the unverified absolute 10000 ms bound."
    },
    {
      "name": "io_not_configured",
      "meaning": "P6-05: named cell I/O is not configured."
    },
    {
      "name": "io_not_armed",
      "meaning": "Explicit io_arm is required before an ON intent."
    },
    {
      "name": "io_fast_input_unsatisfied",
      "meaning": "A cyclic fast contact is invalid or not satisfied."
    },
    {
      "name": "io_readback_disagreement",
      "meaning": "Independent physical feedback disagrees with commanded output."
    },
    {
      "name": "io_torch_unqualified",
      "meaning": "P6-05: torch-class markers remain refused pending hardware qualification."
    },
    {
      "name": "io_marker_late",
      "meaning": "A process marker missed its one-cycle delivery bound."
    },
    {
      "name": "io_exchange_lost",
      "meaning": "Cell I/O has no current complete exchange."
    },
    {
      "name": "io_marker_invalid",
      "meaning": "A marker names an unknown output or has an invalid sample association."
    },
    {
      "name": "resource_unknown",
      "meaning": "Digest is malformed or absent from the loaded compiled resource set; HTTP 404."
    },
    {
      "name": "resource_artifact_invalid",
      "meaning": "Startup refuses an incomplete, mismatched, malformed or over-bound compiled resource artefact."
    }
  ],
  "request_schema": "rosie.rt-control.request.v1",
  "response_schema": "rosie.rt-control.response.v1",
  "rules": {
    "telemetry": "application/octet-stream only: generated 312-byte little-endian TelemetryBatchHeaderV1 followed by record_count full 5392-byte CycleCaptureRecordV2 records, never JSON/base64. Maximum bytes per batch: 312 + min(ring capacity,4096)*5392 <= 22085944. after is the last consumed sequence; zero starts at sequence 1 with explicit dropped count for overwritten history. Empty batches have first_sequence=0 and last_sequence=after+dropped. Invalid/future cursors return HTTP 409 with catalogue reasons. Streaming flush cadence is 20 ms (unverified off-cycle budget to amortize HTTP overhead while bounding batching latency); one complete batch per write/flush, including empty batches; HTTP intermediaries may reframe chunks. Slow writes terminate at 5 seconds. No session or authority required; transport authentication still applies. Incarnation changes close a stream; reconcile Describe before resetting the cursor.",
    "constraints": {
      "axis_mask": "Native 32-bit axis mask constrained to the configured group; reset_fault uses zero for all axes.",
      "binding": "controller is 1..63 bytes; pair_id is nonempty; revision nonzero and equal to configured pair revision; configuration_sha256 equals native description.",
      "fence": "Current unpredictable session and exact generation; acquire has no fence; restart fencing takes precedence for dispatched operations.",
      "handle": "Opaque native uint64 identifier, nonzero for start/discard; terminal handles never regain permission.",
      "identity": "start_program requires exact equality with the prepared identity.",
      "jog": "Legacy timeout_ms 1..250; independent jog uses negotiated monotonic host origin, original non-extended deadline and clock incarnation.",
      "points": "2..250000 points, time_ns int64 nanoseconds; first time zero, increasing subsequent times; position/velocity in described axis order and logical rad/m units; native limits and continuity enforced."
    },
    "envelope_before_points": "Large prepare_trajectory requests must put schema, operation, session and nonzero generation before points within 16384 bytes. Unknown envelope fields and duplicate prefix fields are rejected; full decoding disallows unknown fields. Small unordered bodies fitting the prefix retain existing admission behavior.",
    "error_patterns": [
      "unmapped_dense_axis: <axis>",
      "native_limit_exceeded: segment=<index> sample=<index> axis=<id>",
      "discard preparation <handle>: <cause>",
      "jog_native_rejected_<number>",
      "remote CRL signature: <cause>",
      "<underlying diagnostic>",
      "<cause>\\n<cleanup cause>"
    ],
    "errors": "The reasons list is the closed catalogue of adapter-owned literal reason labels (including startup/TLS failures). Existing error is also a diagnostic string: JSON, I/O, context, native and dense decoder errors and errors.Join are forwarded unchanged; these open diagnostics are not additional stable reason labels.",
    "events": {
      "batch_limit": 64,
      "capacity": 256,
      "ordering": "Sequences increase within adapter_incarnation. An events_dropped record uses the last lost sequence as its resumable cursor. Retained events keep their original sequences. A future cursor is rejected; adapter restart requires a new cursor.",
      "readers": "Unix socket filesystem permissions and the existing remote mutual-TLS principal/pair verification apply to both event routes. Events contain no grant session/capability secret.",
      "timestamp": "time_ns is the daemon publication used to observe a change, not adapter wall time. Native snapshots can coalesce transitions between publications; this stream preserves observations, not every cyclic transition."
    },
    "recovery": "reset_fault is interim: requires inhibited idle native observation, reports correlated reset_sequence, per-bit faults/outcomes and home masks, and retires the session after a submitted result; never starts motion. restore_anchor returns RecoveryStatus from a native publication after the restore receipt, with the restore command sequence in Response.sequence; reset_sequence remains the last fault reset sequence.",
    "remote_jog_upgrade": {
      "endpoint": "GET /v1/jog on the mutual-TLS listener is exclusively WebSocket upgrade; local GET /v1/jog is the JSON jog_status endpoint.",
      "frames": "Two calibrate JSON exchanges establish clock bounds before binary local_jog_update frames from protocol/control.json are admitted; successful updates do not get per-update replies. Calibration replies have type, seq, source_ns, host_rx_ns, host_tx_ns; rejection replies have type, seq, reason. With jog_generation=0, send begin with seq=3, axis_mask, a fresh source_ns and the second host_tx_ns after both calibration replies. The server uses the post-calibration Begin sample's earliest host bound as the capture cutoff, independently starts the native first-input allowance at receipt, and replies begun with seq and jog_generation. The native cell age bounds cutoff freshness and the separate wait, and every input retains its original age/deadline checks. Input captured before the Begin source_ns is rejected before clock conversion. Binary input before begin and repeated begin close the stream. Existing nonzero-generation upgrades remain supported.",
      "headers": "HTTP/1.1 Connection: Upgrade, Upgrade: websocket, Sec-WebSocket-Version: 13 and a base64 Sec-WebSocket-Key decoding to 16 bytes.",
      "request_fields": [
        {
          "constraints": "Exact current session, owned by the authenticated remote principal.",
          "json_type": "string",
          "location": "query",
          "name": "session",
          "required": true
        },
        {
          "constraints": "Uint64 exact application grant generation, encoded as decimal query text.",
          "json_type": "integer",
          "location": "query",
          "name": "generation",
          "required": true
        },
        {
          "constraints": "Uint64 exact current jog generation, or zero to prepare transport without native motion, encoded as decimal query text.",
          "json_type": "integer",
          "location": "query",
          "name": "jog_generation",
          "required": true
        }
      ],
      "response": "HTTP 101 upgrades to the dedicated jog lane. Failures before upgrade may be text/plain HTTP 400, 403 or 409; unauthenticated remote requests are denied before the application handler. No Response envelope wraps WebSocket frames."
    },
    "request_id": "Optional on JSON control requests only; 1..64 printable ASCII bytes; null and non-string values rejected. The current session caches 256 outcomes; identical decoded payload retries join/replay, changed payload conflicts; release/expiry detaches the cache.",
    "required_fields": "Type.required describes mandatory response/codec fields. Request fields default when omitted; capability.required_fields lists semantically necessary input for valid admission. Native operation-specific defaults and constraints remain authoritative. Codec parsing does not authorize or execute motion.",
    "response": "Response.data is the capability response type when named; sequence and handle are envelope fields. Errors return HTTP 409 except body size HTTP 413; success HTTP 200. Native receipts use their existing case-sensitive JSON field names.",
    "external_enable": "A6-EC manual chapter 11, 2004h/C04 and 60FDh: bits 16..20 report DI1..DI5 logic; function 1 selects S-ON, function 4 Emergency stop. Wire the cell stop-chain auxiliary contact to a declared DI and configure/read back its function and polarity to observe it. S-ON observation requires exactly one explicit function-1 startup assignment. A dedicated cyclic STO indication is not documented; S-ON/DI observations are diagnostics and never safety certification or a control decision.",
    "control_timing": {
      "cell": "control.link_profile is lan (500000000/250000000 ns) or internet (unverified 3000000000/750000000 ns). Explicit max_grant_lease_ns and max_jog_input_age_ns override ceilings; unverified absolute bounds 10000000000 and 2000000000 ns. Lease overrides use whole ms. Compiled configuration and native machine identity bind effective nondefault policy.",
      "negotiation": "Describe publishes max_grant_lease_ns and max_jog_input_age_ns. Acquire requests requested_lease_ms, returns effective lease_ms. Clients size at least three measured round trips plus cadence, capped by cell; renew at most one third of effective lease on a dedicated connection. An insufficient lease fails closed, typed control_session_stale.",
      "safety": "Longer effective leases increase worst-case unattended-stop delay after operator link loss. Longer input-age ceilings prolong stale velocity application before immutable expiry and the existing jog expiry ramp. Clock uncertainty remains part of worst-case age, never subtracted as network latency."
    },
    "cell_io": {
      "qualification": "P6-05: torch remains refused. Generic terminal mappings and cycle bounds are unverified on hardware.",
      "fencing": "Stop commands OFF in the fence cycle; ON requires a fresh grant, explicit io_arm and valid OFF readback observed after the fence cycle.",
      "marker_delivery_cycles_unverified": 1,
      "readback_cycles_unverified": 3,
      "intent_vs_readback": "Intent and commanded values never establish independent physical feedback.",
      "marker_collision": "Multiple markers for the same output in one native exchange fault; transitions are never silently collapsed."
    },
    "resources": "GET only. Immutable bytes, Content-Length, declared Content-Type and quoted digest ETag. Unknown or malformed digests return resource_unknown with HTTP 404. No repository lookup at request time. Max resource 33554432 bytes, set 134217728 bytes and 1024 entries (unverified bounds)."
  },
  "types": [
    {
      "fields": [
        {
          "name": "Armed",
          "json": "armed",
          "type": "bool",
          "json_type": "boolean",
          "required": true,
          "constraints": "True only while enabled, armed and receiving valid feedback; false after a trip."
        },
        {
          "name": "TorqueCycles",
          "json": "torque_cycles",
          "type": "uint32",
          "json_type": "integer",
          "required": true,
          "constraints": "Consecutive torque breaches; equality resets. Frozen at trip."
        },
        {
          "name": "FollowingErrorCycles",
          "json": "following_error_cycles",
          "type": "uint32",
          "json_type": "integer",
          "required": true,
          "constraints": "Consecutive following-error breaches independent of torque. Frozen at trip."
        },
        {
          "name": "PeakTorqueRaw",
          "json": "peak_torque_raw",
          "type": "uint32",
          "json_type": "integer",
          "required": true,
          "constraints": "Peak absolute 0x6077 raw per-mille since arm; frozen at trip."
        },
        {
          "name": "PeakFollowingErrorCounts",
          "json": "peak_following_error_counts",
          "type": "uint64",
          "json_type": "integer",
          "required": true,
          "constraints": "Peak absolute counts since arm; drive 0x60F4 when valid, otherwise prior wire target minus feedback with configured wrap handling."
        },
        {
          "name": "LastTripQuantity",
          "json": "last_trip_quantity",
          "type": "string",
          "json_type": "string",
          "required": true,
          "constraints": "none, torque, following_error or torque_and_following_error; retained across explicit reset."
        },
        {
          "name": "TripSustainedCycles",
          "json": "trip_sustained_cycles",
          "type": "uint32",
          "json_type": "integer",
          "required": true,
          "constraints": "Configured consecutive count reached at last trip, 2..1000."
        },
        {
          "name": "TripCount",
          "json": "trip_count",
          "type": "uint64",
          "json_type": "integer",
          "required": true,
          "constraints": "Monotonic per-axis trip sequence for the daemon incarnation."
        },
        {
          "name": "Samples",
          "json": "samples",
          "type": "uint64",
          "json_type": "integer",
          "required": true,
          "constraints": "Fresh normal armed/enabled cycles accumulated since arm, even if the watchdog is disabled; peaks include pre-motion hold. Frozen after trip or disarm."
        },
        {
          "name": "LastTripPeakTorqueRaw",
          "json": "last_trip_peak_torque_raw",
          "type": "uint32",
          "json_type": "integer",
          "required": true,
          "constraints": "Peak absolute torque at last trip, retained across reset and rearm."
        },
        {
          "name": "LastTripPeakFollowingErrorCounts",
          "json": "last_trip_peak_following_error_counts",
          "type": "uint64",
          "json_type": "integer",
          "required": true,
          "constraints": "Peak absolute following error at last trip, retained across reset and rearm."
        }
      ],
      "go_alias": "ipcclient.CollisionWatchdogStatus",
      "name": "CollisionWatchdogStatus"
    },
    {
      "fields": [
        {
          "constraints": "Current unguessable session token; acquire omits the fence. Tokens issued by the adapter are 64 lowercase hexadecimal characters.",
          "json": "session",
          "json_type": "string",
          "name": "Session",
          "required": true,
          "type": "string"
        },
        {
          "constraints": "Nonzero uint64 grant generation. Motion requires exact equality; renew and stop accept an older nonzero generation not above the current one for the same session.",
          "json": "generation",
          "json_type": "integer",
          "name": "Generation",
          "required": true,
          "type": "uint64"
        }
      ],
      "name": "Fence"
    },
    {
      "fields": [
        {
          "constraints": "Exact configured nonempty pair ID.",
          "json": "pair_id",
          "json_type": "string",
          "name": "PairID",
          "required": true,
          "type": "string"
        },
        {
          "constraints": "Nonzero uint64 equal to configured pair revision.",
          "json": "revision",
          "json_type": "integer",
          "name": "Revision",
          "required": true,
          "type": "uint64"
        },
        {
          "constraints": "Exact configured native SHA-256 label.",
          "json": "configuration_sha256",
          "json_type": "string",
          "name": "ConfigurationSHA256",
          "required": true,
          "type": "string"
        },
        {
          "constraints": "Machine-semantics digest; omitted by clients that only know the whole-artifact digest.",
          "json": "machine_sha256",
          "json_type": "string",
          "name": "MachineSHA256",
          "omit_empty": true,
          "required": false,
          "type": "string"
        }
      ],
      "name": "Binding"
    },
    {
      "fields": [
        {
          "constraints": "Signed int64 nanoseconds from plan start; first point zero, later timestamps strictly increasing.",
          "json": "time_ns",
          "json_type": "integer",
          "name": "Time",
          "required": true,
          "type": "int64"
        },
        {
          "constraints": "Finite logical rad/m positions in described axis order, within native configured bounds.",
          "json": "position",
          "json_type": "array",
          "name": "Position",
          "required": true,
          "type": "[]float64"
        },
        {
          "constraints": "Optional finite logical rad/s or m/s velocities in described axis order; nil/empty omits feedforward.",
          "json": "velocity",
          "json_type": "array",
          "name": "Velocity",
          "omit_empty": true,
          "required": false,
          "type": "[]float64"
        },
        {
          "name": "IOMask",
          "json": "io_mask",
          "type": "uint32",
          "json_type": "integer",
          "required": false,
          "omit_empty": true,
          "constraints": "Eight-bit mask in configured output order; set bits require configured non-torch outputs."
        },
        {
          "name": "IOValues",
          "json": "io_values",
          "type": "uint32",
          "json_type": "integer",
          "required": false,
          "omit_empty": true,
          "constraints": "Eight-bit output intents; every set bit must also be set in io_mask. Physical readback is independent."
        }
      ],
      "go_alias": "ipcclient.Point",
      "name": "Point"
    },
    {
      "fields": [
        {
          "constraints": "Wire field; native admission remains authoritative.",
          "json": "plan_id",
          "json_type": "string",
          "name": "PlanID",
          "required": true,
          "type": "string"
        },
        {
          "constraints": "Wire field; native admission remains authoritative.",
          "json": "program_id",
          "json_type": "string",
          "name": "ProgramID",
          "required": true,
          "type": "string"
        },
        {
          "constraints": "Wire field; native admission remains authoritative.",
          "json": "program_digest",
          "json_type": "string",
          "name": "ProgramDigest",
          "required": true,
          "type": "string"
        },
        {
          "constraints": "Wire field; native admission remains authoritative.",
          "json": "trajectory_digest",
          "json_type": "string",
          "name": "TrajectoryDigest",
          "required": true,
          "type": "string"
        },
        {
          "constraints": "Verified source trajectory digest; start_program must echo the prepared value exactly.",
          "json": "source_digest",
          "json_type": "string",
          "name": "SourceDigest",
          "required": true,
          "type": "string"
        },
        {
          "constraints": "Canonical segment-record digest including local clocks and process bits; start_program must echo the prepared value exactly.",
          "json": "normalised_digest",
          "json_type": "string",
          "name": "NormalisedDigest",
          "required": true,
          "type": "string"
        },
        {
          "constraints": "Exact uint64 integer; no floating-point conversion.",
          "json": "manifest_revision",
          "json_type": "integer",
          "name": "ManifestRevision",
          "required": true,
          "type": "uint64"
        },
        {
          "constraints": "Exact uint64 integer; no floating-point conversion.",
          "json": "plan_revision",
          "json_type": "integer",
          "name": "PlanRevision",
          "required": true,
          "type": "uint64"
        }
      ],
      "go_existing": true,
      "name": "Identity"
    },
    {
      "fields": [
        {
          "constraints": "Optional, non-null string of 1..64 printable ASCII bytes (0x20..0x7e).",
          "json": "request_id",
          "json_type": "string",
          "name": "RequestID",
          "omit_empty": true,
          "required": false,
          "type": "*string"
        },
        {
          "constraints": "Exactly rosie.rt-control.request.v1.",
          "json": "schema",
          "json_type": "string",
          "name": "Schema",
          "required": true,
          "type": "string"
        },
        {
          "constraints": "Exact capability name; only POST /v1/control operations dispatch here. Unknown names are rejected.",
          "json": "operation",
          "json_type": "string",
          "name": "Operation",
          "required": true,
          "type": "string"
        },
        {
          "constraints": "Wire field; native admission remains authoritative.",
          "embedded": true,
          "json": "Fence",
          "json_type": "object",
          "name": "Fence",
          "required": false,
          "type": "Fence"
        },
        {
          "constraints": "mark_telemetry requires 1..128 UTF-8 bytes; free-text dump label.",
          "json": "label",
          "json_type": "string",
          "name": "Label",
          "required": false,
          "type": "string"
        },
        {
          "constraints": "Acquire requires 1..63 bytes; opaque controller name.",
          "json": "controller",
          "json_type": "string",
          "name": "Controller",
          "required": false,
          "type": "string"
        },
        {
          "constraints": "Acquire requires exact equality with the configured Binding.",
          "json": "binding",
          "json_type": "object",
          "name": "Binding",
          "required": false,
          "type": "Binding"
        },
        {
          "constraints": "Uint32 configured axis group mask; interpretation is native operation-specific; reset_fault defaults zero to all axes.",
          "json": "axis_mask",
          "json_type": "integer",
          "name": "AxisMask",
          "required": false,
          "type": "uint32"
        },
        {
          "constraints": "Finite logical velocities in described axis order for legacy jog; native vector and velocity-limit validation applies.",
          "json": "velocity",
          "json_type": "array",
          "name": "Velocity",
          "required": false,
          "type": "[]float64"
        },
        {
          "constraints": "Legacy jog requires an integer 1..250 milliseconds.",
          "json": "timeout_ms",
          "json_type": "integer",
          "name": "TimeoutMS",
          "required": false,
          "type": "uint32"
        },
        {
          "constraints": "Nonzero opaque uint64 handle for start/discard, owned by the current daemon incarnation and grant.",
          "json": "handle",
          "json_type": "integer",
          "name": "Handle",
          "required": false,
          "type": "uint64"
        },
        {
          "constraints": "2..250000 Point records; declared axis order, native limits and continuity apply. Large bodies require the envelope before this array.",
          "json": "points",
          "json_type": "array",
          "name": "Points",
          "required": false,
          "type": "[]Point"
        },
        {
          "constraints": "Exact prepared program Identity for start_program.",
          "json": "identity",
          "json_type": "object",
          "name": "Identity",
          "required": false,
          "type": "Identity"
        },
        {
          "constraints": "EndJog requires the exact current nonzero independent jog generation.",
          "json": "jog_generation",
          "json_type": "integer",
          "name": "JogGeneration",
          "required": false,
          "type": "uint64"
        },
        {
          "constraints": "Accepted envelope field retained for compatibility; current /v1/control dispatch does not consume it. Independent updates use the binary lane.",
          "json": "source_sequence",
          "json_type": "integer",
          "name": "SourceSequence",
          "required": false,
          "type": "uint64"
        },
        {
          "constraints": "BeginJog origin in the negotiated host monotonic clock, uint64 nanoseconds; native freshness validation applies.",
          "json": "source_origin_host_ns",
          "json_type": "integer",
          "name": "SourceOriginHostNS",
          "required": false,
          "type": "uint64"
        },
        {
          "constraints": "BeginJog producer deadline in host monotonic nanoseconds; after origin and never extended by admission or renewal.",
          "json": "deadline_host_ns",
          "json_type": "integer",
          "name": "DeadlineHostNS",
          "required": false,
          "type": "uint64"
        },
        {
          "constraints": "BeginJog requires exact equality with GET /v1/jog/clock incarnation.",
          "json": "clock_incarnation",
          "json_type": "string",
          "name": "ClockIncarnation",
          "required": false,
          "type": "string"
        },
        {
          "constraints": "Acquire requested lease in whole ms, 1..10000; omitted or zero retains the LAN default capped by the cell. Adapter returns min(request, cell ceiling) in Grant.lease_ms. Clients require at least three measured round trips plus renewal cadence.",
          "json": "requested_lease_ms",
          "json_type": "integer",
          "name": "RequestedLeaseMS",
          "required": false,
          "type": "int"
        }
      ],
      "name": "Request"
    },
    {
      "fields": [
        {
          "constraints": "Exact uint64 integer; no floating-point conversion.",
          "json": "Ticket",
          "json_type": "integer",
          "name": "Ticket",
          "required": true,
          "type": "uint64"
        },
        {
          "constraints": "Exact uint64 integer; no floating-point conversion.",
          "json": "ConnectionId",
          "json_type": "integer",
          "name": "ConnectionId",
          "required": true,
          "type": "uint64"
        },
        {
          "constraints": "Exact uint64 integer; no floating-point conversion.",
          "json": "NativeGeneration",
          "json_type": "integer",
          "name": "NativeGeneration",
          "required": true,
          "type": "uint64"
        },
        {
          "constraints": "Wire field; native admission remains authoritative.",
          "json": "CapabilityId",
          "json_type": "array",
          "name": "CapabilityId",
          "required": true,
          "type": "[16]uint8"
        },
        {
          "constraints": "Exact uint64 integer; no floating-point conversion.",
          "json": "AppGrantGeneration",
          "json_type": "integer",
          "name": "AppGrantGeneration",
          "required": true,
          "type": "uint64"
        },
        {
          "constraints": "Exact uint64 integer; no floating-point conversion.",
          "json": "ConfigurationEpoch",
          "json_type": "integer",
          "name": "ConfigurationEpoch",
          "required": true,
          "type": "uint64"
        },
        {
          "constraints": "Exact uint64 integer; no floating-point conversion.",
          "json": "HomeEpoch",
          "json_type": "integer",
          "name": "HomeEpoch",
          "required": true,
          "type": "uint64"
        },
        {
          "constraints": "Exact uint64 integer; no floating-point conversion.",
          "json": "ClockMappingGeneration",
          "json_type": "integer",
          "name": "ClockMappingGeneration",
          "required": true,
          "type": "uint64"
        },
        {
          "constraints": "Exact uint64 integer; no floating-point conversion.",
          "json": "JogGeneration",
          "json_type": "integer",
          "name": "JogGeneration",
          "required": true,
          "type": "uint64"
        },
        {
          "constraints": "Exact uint64 integer; no floating-point conversion.",
          "json": "SourceSequence",
          "json_type": "integer",
          "name": "SourceSequence",
          "required": true,
          "type": "uint64"
        },
        {
          "constraints": "Exact uint64 integer; no floating-point conversion.",
          "json": "InputDeadlineHostNs",
          "json_type": "integer",
          "name": "InputDeadlineHostNs",
          "required": true,
          "type": "uint64"
        },
        {
          "constraints": "Exact uint64 integer; no floating-point conversion.",
          "json": "NowHostNs",
          "json_type": "integer",
          "name": "NowHostNs",
          "required": true,
          "type": "uint64"
        },
        {
          "constraints": "Exact uint64 integer; no floating-point conversion.",
          "json": "ObservedSourceSequence",
          "json_type": "integer",
          "name": "ObservedSourceSequence",
          "required": true,
          "type": "uint64"
        },
        {
          "constraints": "Exact uint64 integer; no floating-point conversion.",
          "json": "ObservedOriginHostNs",
          "json_type": "integer",
          "name": "ObservedOriginHostNs",
          "required": true,
          "type": "uint64"
        },
        {
          "constraints": "Exact uint64 integer; no floating-point conversion.",
          "json": "FirstObservedHostNs",
          "json_type": "integer",
          "name": "FirstObservedHostNs",
          "required": true,
          "type": "uint64"
        },
        {
          "constraints": "Exact uint32 integer; no floating-point conversion.",
          "json": "ControlReason",
          "json_type": "integer",
          "name": "ControlReason",
          "required": true,
          "type": "uint32"
        },
        {
          "constraints": "Exact uint32 integer; no floating-point conversion.",
          "json": "ControlAccepted",
          "json_type": "integer",
          "name": "ControlAccepted",
          "required": true,
          "type": "uint32"
        },
        {
          "constraints": "Exact uint32 integer; no floating-point conversion.",
          "json": "UpdateReason",
          "json_type": "integer",
          "name": "UpdateReason",
          "required": true,
          "type": "uint32"
        },
        {
          "constraints": "Exact uint32 integer; no floating-point conversion.",
          "json": "StateReason",
          "json_type": "integer",
          "name": "StateReason",
          "required": true,
          "type": "uint32"
        },
        {
          "constraints": "Exact uint32 integer; no floating-point conversion.",
          "json": "AxisMask",
          "json_type": "integer",
          "name": "AxisMask",
          "required": true,
          "type": "uint32"
        },
        {
          "constraints": "Exact uint32 integer; no floating-point conversion.",
          "json": "Open",
          "json_type": "integer",
          "name": "Open",
          "required": true,
          "type": "uint32"
        },
        {
          "constraints": "Exact uint32 integer; no floating-point conversion.",
          "json": "HasInput",
          "json_type": "integer",
          "name": "HasInput",
          "required": true,
          "type": "uint32"
        },
        {
          "constraints": "Exact uint32 integer; no floating-point conversion.",
          "json": "VelocityScalePpm",
          "json_type": "integer",
          "name": "VelocityScalePpm",
          "required": true,
          "type": "uint32"
        }
      ],
      "go_alias": "ipcclient.JogObservation",
      "name": "JogObservation"
    },
    {
      "fields": [
        {
          "constraints": "Exact uint64 integer; no floating-point conversion.",
          "json": "Sequence",
          "json_type": "integer",
          "name": "Sequence",
          "required": true,
          "type": "uint64"
        },
        {
          "constraints": "Exact uint64 integer; no floating-point conversion.",
          "json": "Handle",
          "json_type": "integer",
          "name": "Handle",
          "required": true,
          "type": "uint64"
        },
        {
          "constraints": "Exact uint64 integer; no floating-point conversion.",
          "json": "Generation",
          "json_type": "integer",
          "name": "Generation",
          "required": true,
          "type": "uint64"
        },
        {
          "constraints": "Exact uint32 integer; no floating-point conversion.",
          "json": "Operation",
          "json_type": "integer",
          "name": "Operation",
          "required": true,
          "type": "uint32"
        },
        {
          "constraints": "Exact uint32 integer; no floating-point conversion.",
          "json": "Result",
          "json_type": "integer",
          "name": "Result",
          "required": true,
          "type": "uint32"
        },
        {
          "constraints": "Exact uint32 integer; no floating-point conversion.",
          "json": "Reason",
          "json_type": "integer",
          "name": "Reason",
          "required": true,
          "type": "uint32"
        },
        {
          "constraints": "Exact uint32 integer; no floating-point conversion.",
          "json": "AxisMask",
          "json_type": "integer",
          "name": "AxisMask",
          "required": true,
          "type": "uint32"
        }
      ],
      "go_alias": "ipcclient.CommandResult",
      "name": "CommandResult"
    },
    {
      "fields": [
        {
          "constraints": "Wire field; native admission remains authoritative.",
          "json": "native_jog_result",
          "json_type": "object",
          "name": "NativeJogResult",
          "omit_empty": true,
          "required": false,
          "type": "*JogObservation"
        },
        {
          "constraints": "Wire field; native admission remains authoritative.",
          "json": "native_result",
          "json_type": "object",
          "name": "NativeResult",
          "omit_empty": true,
          "required": false,
          "type": "*CommandResult"
        },
        {
          "constraints": "Wire field; native admission remains authoritative.",
          "json": "schema",
          "json_type": "string",
          "name": "Schema",
          "required": true,
          "type": "string"
        },
        {
          "constraints": "Wire field; native admission remains authoritative.",
          "json": "operation",
          "json_type": "string",
          "name": "Operation",
          "required": true,
          "type": "string"
        },
        {
          "constraints": "Exact uint64 integer; no floating-point conversion.",
          "json": "sequence",
          "json_type": "integer",
          "name": "Sequence",
          "omit_empty": true,
          "required": false,
          "type": "uint64"
        },
        {
          "constraints": "Exact uint64 integer; no floating-point conversion.",
          "json": "handle",
          "json_type": "integer",
          "name": "Handle",
          "omit_empty": true,
          "required": false,
          "type": "uint64"
        },
        {
          "constraints": "Wire field; native admission remains authoritative.",
          "json": "data",
          "json_type": "any",
          "name": "Data",
          "omit_empty": true,
          "required": false,
          "type": "json"
        },
        {
          "constraints": "Wire field; native admission remains authoritative.",
          "json": "error",
          "json_type": "string",
          "name": "Error",
          "omit_empty": true,
          "required": false,
          "type": "string"
        }
      ],
      "name": "Response"
    },
    {
      "fields": [
        {
          "constraints": "True means renewal keeps the lease alive while Stop is in flight; it grants no movement permission.",
          "json": "stopping",
          "json_type": "boolean",
          "name": "Stopping",
          "required": true,
          "type": "bool"
        },
        {
          "constraints": "Uint64 absolute lease deadline in host monotonic nanoseconds.",
          "json": "deadline_host_ns",
          "json_type": "integer",
          "name": "DeadlineHostNS",
          "required": true,
          "type": "uint64"
        },
        {
          "constraints": "64-character unpredictable lowercase hexadecimal token while owned; empty after release/expiry.",
          "json": "session",
          "json_type": "string",
          "name": "Session",
          "required": true,
          "type": "string"
        },
        {
          "constraints": "Monotonically increasing uint64 application generation, fenced by Stop and acquisition.",
          "json": "generation",
          "json_type": "integer",
          "name": "Generation",
          "required": true,
          "type": "uint64"
        },
        {
          "constraints": "Wire field; native admission remains authoritative.",
          "json": "controller",
          "json_type": "string",
          "name": "Controller",
          "required": true,
          "type": "string"
        },
        {
          "constraints": "Wire field; native admission remains authoritative.",
          "json": "binding",
          "json_type": "object",
          "name": "Binding",
          "required": true,
          "type": "Binding"
        },
        {
          "constraints": "Effective negotiated lease in whole milliseconds: min(client requested lease, compiled cell ceiling); zero/omitted request retains 500 ms capped by the cell. Renew preserves this value. Longer leases increase worst-case unattended-stop delay after link loss. Unverified absolute bound: 10000 ms.",
          "json": "lease_ms",
          "json_type": "integer",
          "name": "LeaseMS",
          "required": true,
          "type": "int"
        }
      ],
      "name": "Grant"
    },
    {
      "fields": [
        {
          "constraints": "Exact uint64 integer; no floating-point conversion.",
          "json": "handle",
          "json_type": "integer",
          "name": "Handle",
          "required": true,
          "type": "uint64"
        },
        {
          "constraints": "One of the handle_states labels; terminal states never regain permission.",
          "json": "state",
          "json_type": "string",
          "name": "State",
          "required": true,
          "type": "HandleState"
        },
        {
          "constraints": "Application grant generation that prepared this handle.",
          "json": "generation",
          "json_type": "integer",
          "name": "Generation",
          "required": true,
          "type": "uint64"
        },
        {
          "constraints": "Count of acknowledged native Starts when this handle started; zero before Start.",
          "json": "execution_generation",
          "json_type": "integer",
          "name": "ExecutionGeneration",
          "required": true,
          "type": "uint64"
        },
        {
          "constraints": "Correlated native Start sequence; zero before Start.",
          "json": "native_sequence",
          "json_type": "integer",
          "name": "NativeSequence",
          "required": true,
          "type": "uint64"
        },
        {
          "constraints": "Immutable raw trajectory identity supplied at Prepare and checked at Start; echoed unchanged through terminal observation.",
          "json": "identity",
          "json_type": "object",
          "name": "Identity",
          "required": false,
          "type": "Identity"
        }
      ],
      "name": "HandleRecord"
    },
    {
      "fields": [
        {
          "constraints": "Wire field; native admission remains authoritative.",
          "json": "handles",
          "json_type": "array",
          "name": "Handles",
          "required": true,
          "type": "[]HandleRecord"
        },
        {
          "constraints": "Count of acknowledged native Starts; distinct from native control generation.",
          "json": "generation",
          "json_type": "integer",
          "name": "Generation",
          "required": true,
          "type": "uint64"
        },
        {
          "constraints": "Application execution state: empty before observation, prepared, executing, completed, faulted, cancelled, discarded or released.",
          "json": "state",
          "json_type": "string",
          "name": "State",
          "required": true,
          "type": "string"
        },
        {
          "constraints": "Wire field; native admission remains authoritative.",
          "json": "identity",
          "json_type": "object",
          "name": "Identity",
          "required": true,
          "type": "Identity"
        },
        {
          "constraints": "Current zero-based program segment when a program is observed.",
          "json": "segment",
          "json_type": "integer",
          "name": "Segment",
          "required": true,
          "type": "int"
        },
        {
          "constraints": "Exact uint64 integer; no floating-point conversion.",
          "json": "native_sequence",
          "json_type": "integer",
          "name": "NativeSequence",
          "required": true,
          "type": "uint64"
        },
        {
          "constraints": "Wire field; native admission remains authoritative.",
          "json": "error",
          "json_type": "string",
          "name": "Error",
          "omit_empty": true,
          "required": false,
          "type": "string"
        }
      ],
      "name": "Execution"
    },
    {
      "fields": [
        {
          "constraints": "Exact uint64 integer; no floating-point conversion.",
          "json": "Ticket",
          "json_type": "integer",
          "name": "Ticket",
          "required": true,
          "type": "uint64"
        },
        {
          "constraints": "Exact uint64 integer; no floating-point conversion.",
          "json": "ConnectionId",
          "json_type": "integer",
          "name": "ConnectionId",
          "required": true,
          "type": "uint64"
        },
        {
          "constraints": "Exact uint64 integer; no floating-point conversion.",
          "json": "NativeGeneration",
          "json_type": "integer",
          "name": "NativeGeneration",
          "required": true,
          "type": "uint64"
        },
        {
          "constraints": "Exact uint64 integer; no floating-point conversion.",
          "json": "AppGrantGeneration",
          "json_type": "integer",
          "name": "AppGrantGeneration",
          "required": true,
          "type": "uint64"
        },
        {
          "constraints": "Wire field; native admission remains authoritative.",
          "json": "CapabilityId",
          "json_type": "array",
          "name": "CapabilityId",
          "required": true,
          "type": "[16]uint8"
        },
        {
          "constraints": "Exact uint64 integer; no floating-point conversion.",
          "json": "DeadlineHostNs",
          "json_type": "integer",
          "name": "DeadlineHostNs",
          "required": true,
          "type": "uint64"
        },
        {
          "constraints": "Exact uint64 integer; no floating-point conversion.",
          "json": "NowHostNs",
          "json_type": "integer",
          "name": "NowHostNs",
          "required": true,
          "type": "uint64"
        },
        {
          "constraints": "Exact uint64 integer; no floating-point conversion.",
          "json": "ConfigurationEpoch",
          "json_type": "integer",
          "name": "ConfigurationEpoch",
          "required": true,
          "type": "uint64"
        },
        {
          "constraints": "Exact uint64 integer; no floating-point conversion.",
          "json": "HomeEpoch",
          "json_type": "integer",
          "name": "HomeEpoch",
          "required": true,
          "type": "uint64"
        },
        {
          "constraints": "Exact uint64 integer; no floating-point conversion.",
          "json": "StopAckId",
          "json_type": "integer",
          "name": "StopAckId",
          "required": true,
          "type": "uint64"
        },
        {
          "constraints": "Exact uint32 integer; no floating-point conversion.",
          "json": "GrantReason",
          "json_type": "integer",
          "name": "GrantReason",
          "required": true,
          "type": "uint32"
        },
        {
          "constraints": "Exact uint32 integer; no floating-point conversion.",
          "json": "GrantActive",
          "json_type": "integer",
          "name": "GrantActive",
          "required": true,
          "type": "uint32"
        },
        {
          "constraints": "Exact uint32 integer; no floating-point conversion.",
          "json": "AxisMask",
          "json_type": "integer",
          "name": "AxisMask",
          "required": true,
          "type": "uint32"
        },
        {
          "constraints": "Exact uint32 integer; no floating-point conversion.",
          "json": "Reserved",
          "json_type": "integer",
          "name": "Reserved",
          "required": true,
          "type": "uint32"
        },
        {
          "constraints": "Exact uint64 integer; no floating-point conversion.",
          "json": "Reserved1",
          "json_type": "integer",
          "name": "Reserved1",
          "required": true,
          "type": "uint64"
        },
        {
          "constraints": "Exact uint64 integer; no floating-point conversion.",
          "json": "Reserved2",
          "json_type": "integer",
          "name": "Reserved2",
          "required": true,
          "type": "uint64"
        },
        {
          "constraints": "Exact uint64 integer; no floating-point conversion.",
          "json": "Reserved3",
          "json_type": "integer",
          "name": "Reserved3",
          "required": true,
          "type": "uint64"
        }
      ],
      "go_alias": "ipcclient.GrantObservation",
      "name": "GrantObservation"
    },
    {
      "fields": [
        {
          "constraints": "Native execution-fault bit index.",
          "json": "bit",
          "json_type": "integer",
          "name": "Bit",
          "required": true,
          "type": "uint32"
        },
        {
          "constraints": "Native fault name for that bit.",
          "json": "name",
          "json_type": "string",
          "name": "Name",
          "required": true,
          "type": "string"
        },
        {
          "constraints": "Affected axis evidence mask.",
          "json": "axis_mask",
          "json_type": "integer",
          "name": "AxisMask",
          "required": true,
          "type": "uint32"
        },
        {
          "constraints": "Native recovery-policy label for the fault bit.",
          "json": "recovery",
          "json_type": "string",
          "name": "Recovery",
          "required": true,
          "type": "string"
        },
        {
          "constraints": "Native per-bit outcome: persists, cleared or rehome_required.",
          "json": "outcome",
          "json_type": "string",
          "name": "Outcome",
          "required": true,
          "type": "string"
        },
        {
          "constraints": "Axes requiring qualified re-home after this outcome.",
          "json": "rehome_axis_mask",
          "json_type": "integer",
          "name": "RehomeAxisMask",
          "required": true,
          "type": "uint32"
        }
      ],
      "go_alias": "ipcclient.FaultRecovery",
      "name": "FaultRecovery"
    },
    {
      "fields": [
        {
          "constraints": "Native per-axis home evidence remaining after observed recovery.",
          "json": "home_valid_mask",
          "json_type": "integer",
          "name": "HomeValidMask",
          "required": true,
          "type": "uint32"
        },
        {
          "constraints": "Currently latched fault bits with axis masks and recovery policy.",
          "json": "faults",
          "json_type": "array",
          "name": "Faults",
          "required": true,
          "type": "[]FaultRecovery"
        },
        {
          "constraints": "Exact native command sequence of the observed reset, zero before any reset; response sequence must match for reset_fault.",
          "json": "reset_sequence",
          "json_type": "integer",
          "name": "ResetSequence",
          "required": true,
          "type": "uint64"
        },
        {
          "constraints": "Native recovery summary: empty when no fault persists, otherwise fault_persists; FaultResetRecovery refuses a persistent fault.",
          "json": "reason",
          "json_type": "string",
          "name": "Reason",
          "required": true,
          "type": "string"
        },
        {
          "constraints": "Per-bit outcomes of the correlated reset; never inferred from elapsed time.",
          "json": "outcomes",
          "json_type": "array",
          "name": "Outcomes",
          "required": true,
          "type": "[]FaultRecovery"
        }
      ],
      "go_alias": "ipcclient.RecoveryStatus",
      "name": "RecoveryStatus"
    },
    {
      "fields": [
        {
          "constraints": "Native acquisition validity; never motion permission.",
          "json": "valid",
          "json_type": "boolean",
          "name": "Valid",
          "required": true,
          "type": "bool"
        },
        {
          "constraints": "Independent signed raw encoder count.",
          "json": "encoder_counts",
          "json_type": "integer",
          "name": "EncoderCounts",
          "required": true,
          "type": "int64"
        },
        {
          "constraints": "Host-monotonic acquisition completion timestamp in nanoseconds.",
          "json": "completed_ns",
          "json_type": "integer",
          "name": "CompletedNS",
          "required": true,
          "type": "uint64"
        },
        {
          "constraints": "Configured acquisition freshness bound in nanoseconds.",
          "json": "maximum_age_ns",
          "json_type": "integer",
          "name": "MaximumAgeNS",
          "required": true,
          "type": "uint64"
        }
      ],
      "go_alias": "ipcclient.IndependentAnchorSource",
      "name": "IndependentAnchorSource"
    },
    {
      "fields": [
        {
          "constraints": "A6-EC display code from the 0x603F/0x203F low-half pair; unresolved bus candidates joined by |; empty when clear, unmapped, or another drive family.",
          "json": "drive_alarm",
          "json_type": "string",
          "name": "DriveAlarm",
          "required": true,
          "type": "string"
        },
        {
          "constraints": "Manual meaning corresponding to drive_alarm; multiple candidates joined by | in matching order.",
          "json": "drive_alarm_text",
          "json_type": "string",
          "name": "DriveAlarmText",
          "required": true,
          "type": "string"
        },
        {
          "constraints": "Full raw 0x203F auxiliary SDO word; a two-byte reply occupies the low half. Retained for the current nonzero 0x603F event and configuration epoch, zero when invalid or cleared. Separate from manufacturer_error_code, which carries the cyclic manufacturer_err PDO.",
          "json": "drive_alarm_aux_code",
          "json_type": "integer",
          "name": "DriveAlarmAuxCode",
          "required": true,
          "type": "uint32"
        },
        {
          "constraints": "True only for an admitted auxiliary reply matching the current nonzero 0x603F event and configuration epoch; false when missing, stale, or cleared, preventing zero from being mistaken for a valid reply.",
          "json": "drive_alarm_aux_valid",
          "json_type": "boolean",
          "name": "DriveAlarmAuxValid",
          "required": true,
          "type": "bool"
        },
        {
          "constraints": "Wire field; native publication is authoritative.",
          "json": "logical_position",
          "json_type": "number",
          "name": "LogicalPosition",
          "required": true,
          "type": "float64"
        },
        {
          "constraints": "Wire field; native publication is authoritative.",
          "json": "logical_valid",
          "json_type": "boolean",
          "name": "LogicalValid",
          "required": true,
          "type": "bool"
        },
        {
          "constraints": "Wire field; native publication is authoritative.",
          "json": "coordinate_counts",
          "json_type": "integer",
          "name": "CoordinateCounts",
          "required": true,
          "type": "int64"
        },
        {
          "constraints": "Wire field; native publication is authoritative.",
          "json": "absolute_source_counts",
          "json_type": "integer",
          "name": "AbsoluteSourceCounts",
          "required": true,
          "type": "int32"
        },
        {
          "constraints": "Fresh independent raw acquisition; does not grant a command-frame binding or Home.",
          "json": "independent_anchor_source",
          "json_type": "object",
          "name": "IndependentAnchorSource",
          "omit_empty": true,
          "required": false,
          "type": "*IndependentAnchorSource"
        },
        {
          "constraints": "Wire field; native publication is authoritative.",
          "json": "coordinate_valid",
          "json_type": "integer",
          "name": "CoordinateValid",
          "required": true,
          "type": "uint32"
        },
        {
          "constraints": "Wire field; native publication is authoritative.",
          "json": "coordinate_source_valid",
          "json_type": "integer",
          "name": "CoordinateSourceValid",
          "required": true,
          "type": "uint32"
        },
        {
          "constraints": "Wire field; native publication is authoritative.",
          "json": "pdo_fresh",
          "json_type": "integer",
          "name": "PDOFresh",
          "required": true,
          "type": "uint32"
        },
        {
          "constraints": "Wire field; native publication is authoritative.",
          "json": "native_home_position_offset",
          "json_type": "integer",
          "name": "HomeOffset",
          "required": true,
          "type": "int32"
        },
        {
          "constraints": "Wire field; native publication is authoritative.",
          "json": "observed_revision_no",
          "json_type": "integer",
          "name": "Revision",
          "required": true,
          "type": "uint32"
        },
        {
          "constraints": "Wire field; native publication is authoritative.",
          "json": "revision_readback_valid",
          "json_type": "integer",
          "name": "RevisionValid",
          "required": true,
          "type": "uint32"
        },
        {
          "constraints": "Wire field; native publication is authoritative.",
          "json": "serial_no",
          "json_type": "integer",
          "name": "Serial",
          "required": true,
          "type": "uint32"
        },
        {
          "constraints": "Wire field; native publication is authoritative.",
          "json": "serial_readback_valid",
          "json_type": "integer",
          "name": "SerialValid",
          "required": true,
          "type": "uint32"
        },
        {
          "constraints": "Wire field; native publication is authoritative.",
          "json": "anchor_period_counts",
          "json_type": "integer",
          "name": "AnchorPeriodCounts",
          "required": true,
          "type": "uint32"
        },
        {
          "constraints": "Wire field; native publication is authoritative.",
          "json": "anchor_tolerance_counts",
          "json_type": "integer",
          "name": "AnchorToleranceCounts",
          "required": true,
          "type": "uint64"
        },
        {
          "constraints": "Wire field; native publication is authoritative.",
          "json": "coordinate_reason",
          "json_type": "integer",
          "name": "CoordinateReason",
          "required": true,
          "type": "uint32"
        },
        {
          "constraints": "Canonical P0-12 coordinate digest; empty means persisted anchors are unavailable.",
          "json": "coordinate_identity_sha256",
          "json_type": "string",
          "name": "CoordinateIdentitySHA256",
          "required": true,
          "type": "string"
        },
        {
          "constraints": "Canonical P0-12 per-axis fields; empty means persisted anchors are unavailable.",
          "json": "coordinate_identity",
          "json_type": "string",
          "name": "CoordinateIdentity",
          "required": true,
          "type": "string"
        },
        {
          "constraints": "Differing identity component for anchor_identity_mismatch, or empty.",
          "json": "anchor_identity_changed_field",
          "json_type": "string",
          "name": "AnchorIdentityChangedField",
          "required": true,
          "type": "string"
        },
        {
          "constraints": "Wire field; native publication is authoritative.",
          "json": "anchor_reason",
          "json_type": "string",
          "name": "AnchorReason",
          "required": true,
          "type": "string"
        },
        {
          "constraints": "Wire field; native publication is authoritative.",
          "json": "restored_anchor_home_epoch",
          "json_type": "integer",
          "name": "RestoredAnchorHomeEpoch",
          "required": true,
          "type": "uint64"
        },
        {
          "constraints": "Exact int32 integer; no floating-point conversion.",
          "json": "pos_counts",
          "json_type": "integer",
          "name": "PositionCounts",
          "required": true,
          "type": "int32"
        },
        {
          "constraints": "Exact uint16 integer; no floating-point conversion.",
          "json": "statusword",
          "json_type": "integer",
          "name": "Statusword",
          "required": true,
          "type": "uint16"
        },
        {
          "constraints": "Exact uint16 integer; no floating-point conversion.",
          "json": "error_code",
          "json_type": "integer",
          "name": "ErrorCode",
          "required": true,
          "type": "uint16"
        },
        {
          "constraints": "Exact uint32 integer; no floating-point conversion.",
          "json": "vendor_id",
          "json_type": "integer",
          "name": "VendorID",
          "required": true,
          "type": "uint32"
        },
        {
          "constraints": "Exact uint32 integer; no floating-point conversion.",
          "json": "product_code",
          "json_type": "integer",
          "name": "ProductCode",
          "required": true,
          "type": "uint32"
        },
        {
          "constraints": "Exact uint16 integer; no floating-point conversion.",
          "json": "slave_position",
          "json_type": "integer",
          "name": "SlavePosition",
          "required": true,
          "type": "uint16"
        },
        {
          "constraints": "Native daemon publication; never adapter-estimated motion.",
          "json": "time_ns",
          "json_type": "integer",
          "name": "TimeNS",
          "required": true,
          "type": "uint64"
        },
        {
          "constraints": "Native daemon publication; never adapter-estimated motion.",
          "json": "logical_target",
          "json_type": "number",
          "name": "LogicalTarget",
          "required": true,
          "type": "float64"
        },
        {
          "constraints": "Native daemon publication; never adapter-estimated motion.",
          "json": "readiness",
          "json_type": "string",
          "name": "Readiness",
          "required": true,
          "type": "string"
        },
        {
          "constraints": "Native daemon publication; never adapter-estimated motion.",
          "json": "brake_state",
          "json_type": "integer",
          "name": "BrakeState",
          "required": true,
          "type": "uint32"
        },
        {
          "constraints": "Native daemon publication; never adapter-estimated motion.",
          "json": "home_valid",
          "json_type": "boolean",
          "name": "HomeValid",
          "required": true,
          "type": "bool"
        },
        {
          "constraints": "Native daemon publication; never adapter-estimated motion.",
          "json": "logical_velocity",
          "json_type": "number",
          "name": "LogicalVelocity",
          "omit_empty": true,
          "required": false,
          "type": "*float64"
        },
        {
          "constraints": "Drive 0x606C signed reference counts/s in the position frame, sampled each cycle. Diagnostics only; never a speed-safety certification or an execution guard.",
          "json": "velocity_actual_counts_per_s",
          "json_type": "integer",
          "name": "VelocityActualCountsPerS",
          "required": true,
          "type": "int32"
        },
        {
          "constraints": "Drive 0x60F4 signed reference counts in the position frame; preferred input to the configured collision watchdog.",
          "json": "following_error_counts",
          "json_type": "integer",
          "name": "FollowingErrorCounts",
          "required": true,
          "type": "int32"
        },
        {
          "constraints": "True only when velocity_actual is mapped and this cycle has fresh PDO feedback. An absent signal is zero with false validity.",
          "json": "velocity_actual_valid",
          "json_type": "boolean",
          "name": "VelocityActualValid",
          "required": true,
          "type": "bool"
        },
        {
          "constraints": "True only when following_error is mapped and this cycle has fresh PDO feedback. An absent signal is zero with false validity.",
          "json": "following_error_valid",
          "json_type": "boolean",
          "name": "FollowingErrorValid",
          "required": true,
          "type": "bool"
        },
        {
          "constraints": "Maximum absolute valid drive velocity in counts/s since the last accepted Arm(true); zero before Arm. Retained through Stop/disarm; INT32_MIN has magnitude 2147483648.",
          "json": "max_abs_velocity_actual_counts_per_s",
          "json_type": "integer",
          "name": "MaxAbsVelocityActualCountsPerS",
          "required": true,
          "type": "uint32"
        },
        {
          "constraints": "Maximum absolute valid drive following error in counts since the last accepted Arm(true); zero before Arm. Retained through Stop/disarm; INT32_MIN has magnitude 2147483648.",
          "json": "max_abs_following_error_counts",
          "json_type": "integer",
          "name": "MaxAbsFollowingErrorCounts",
          "required": true,
          "type": "uint32"
        },
        {
          "name": "DIBits",
          "json": "di_bits",
          "type": "uint32",
          "json_type": "integer",
          "required": true,
          "constraints": "Current 0x60FD DI logic bits; interpret only when di_valid."
        },
        {
          "name": "DIValid",
          "json": "di_valid",
          "type": "bool",
          "json_type": "boolean",
          "required": true,
          "constraints": "True only for a fresh PDO and verified digital-input mapping."
        },
        {
          "name": "ExternalEnableActive",
          "json": "external_enable_active",
          "type": "bool",
          "json_type": "boolean",
          "required": true,
          "constraints": "A6-EC S-ON input active; interpret only when external_enable_valid. Diagnostics only; does not prove STO or torque state."
        },
        {
          "name": "ExternalEnableValid",
          "json": "external_enable_valid",
          "type": "bool",
          "json_type": "boolean",
          "required": true,
          "constraints": "True only with valid DI feedback and exactly one explicitly configured, verified A6-EC S-ON DI function."
        },
        {
          "name": "TorqueRaw",
          "json": "torque_raw",
          "type": "int32",
          "json_type": "integer",
          "required": true,
          "constraints": "Drive 0x6077 raw per-mille of rated torque; use only with fresh PDO feedback."
        },
        {
          "name": "CollisionWatchdog",
          "json": "collision_watchdog",
          "type": "CollisionWatchdogStatus",
          "json_type": "object",
          "required": true,
          "constraints": "Native cycle evaluation and latched trip evidence for this axis."
        },
        {
          "name": "CalibrationValid",
          "json": "calibration_valid",
          "type": "*bool",
          "json_type": "boolean",
          "required": false,
          "omit_empty": true,
          "constraints": "Persistent calibration applicability; null/absent means legacy unknown."
        },
        {
          "name": "PositionState",
          "json": "position_state",
          "type": "string",
          "json_type": "string",
          "required": false,
          "omit_empty": true,
          "constraints": "Native state: unverified, recovering, trusted or lost; empty means legacy unknown."
        },
        {
          "name": "PositionReason",
          "json": "position_reason",
          "type": "string",
          "json_type": "string",
          "required": false,
          "omit_empty": true,
          "constraints": "Native CoordinateReason name; none means no coordinate refusal; absent means legacy unknown."
        },
        {
          "name": "AuditStatus",
          "json": "audit_status",
          "type": "string",
          "required": false,
          "json_type": "string",
          "omit_empty": true,
          "constraints": "Last stationary audit: pending, verified or unavailable; never motion authority."
        },
        {
          "name": "AuditReason",
          "json": "audit_reason",
          "type": "string",
          "json_type": "string",
          "required": false,
          "omit_empty": true,
          "constraints": "Native SampleInvalidity name; none means no reported audit failure; absent means legacy unknown."
        },
        {
          "name": "AuditLastVerifiedNS",
          "json": "audit_last_verified_ns",
          "type": "uint64",
          "json_type": "integer",
          "required": false,
          "omit_empty": true,
          "constraints": "Monotonic acquisition completion of last accepted independent evidence; zero means never."
        }
      ],
      "go_alias": "ipcclient.AxisStatus",
      "name": "AxisStatus"
    },
    {
      "fields": [
        {
          "constraints": "Wire field; native publication is authoritative.",
          "json": "daemon_incarnation",
          "json_type": "string",
          "name": "DaemonIncarnation",
          "required": true,
          "type": "string"
        },
        {
          "constraints": "Configured RT CPU index as an exact uint32 integer.",
          "json": "rt_cpu",
          "json_type": "integer",
          "name": "RTCPU",
          "required": true,
          "type": "uint32"
        },
        {
          "constraints": "Effective Linux CPU-list mask for housekeeping workers, excluding the RT CPU.",
          "json": "housekeeping_cpus",
          "json_type": "string",
          "name": "HousekeepingCPUs",
          "required": true,
          "type": "string"
        },
        {
          "constraints": "Worker name to affinity-application success; false is not qualified placement and null means no observations.",
          "json": "affinity_applied",
          "json_type": "object",
          "name": "AffinityApplied",
          "required": true,
          "type": "map[string]bool"
        },
        {
          "constraints": "Wire field; native admission remains authoritative.",
          "json": "recovery",
          "json_type": "object",
          "name": "Recovery",
          "required": true,
          "type": "*RecoveryStatus"
        },
        {
          "constraints": "Exact uint64 integer; no floating-point conversion.",
          "json": "time_ns",
          "json_type": "integer",
          "name": "TimeNS",
          "required": true,
          "type": "uint64"
        },
        {
          "constraints": "Wire field; native admission remains authoritative.",
          "json": "backend",
          "json_type": "string",
          "name": "Backend",
          "required": true,
          "type": "string"
        },
        {
          "constraints": "Wire field; native admission remains authoritative.",
          "json": "configuration_sha256",
          "json_type": "string",
          "name": "ConfigurationSHA256",
          "required": true,
          "type": "string"
        },
        {
          "constraints": "Exact uint64 integer; no floating-point conversion.",
          "json": "control_generation",
          "json_type": "integer",
          "name": "ControlGeneration",
          "required": true,
          "type": "uint64"
        },
        {
          "constraints": "Exact uint32 integer; no floating-point conversion.",
          "json": "lease_valid",
          "json_type": "integer",
          "name": "LeaseValid",
          "required": true,
          "type": "uint32"
        },
        {
          "constraints": "Exact uint32 integer; no floating-point conversion.",
          "json": "config_verified_mask",
          "json_type": "integer",
          "name": "ConfigVerifiedMask",
          "required": true,
          "type": "uint32"
        },
        {
          "constraints": "Exact uint32 integer; no floating-point conversion.",
          "json": "home_valid_mask",
          "json_type": "integer",
          "name": "HomeValidMask",
          "required": true,
          "type": "uint32"
        },
        {
          "constraints": "Exact uint64 integer; no floating-point conversion.",
          "json": "home_epoch",
          "json_type": "integer",
          "name": "HomeEpoch",
          "required": true,
          "type": "uint64"
        },
        {
          "constraints": "Exact uint32 integer; no floating-point conversion.",
          "json": "commissioning_phase",
          "json_type": "integer",
          "name": "CommissioningPhase",
          "required": true,
          "type": "uint32"
        },
        {
          "constraints": "Exact uint32 integer; no floating-point conversion.",
          "json": "safety_fault_mask",
          "json_type": "integer",
          "name": "SafetyFaultMask",
          "required": true,
          "type": "uint32"
        },
        {
          "constraints": "Exact uint32 integer; no floating-point conversion.",
          "json": "execution_fault_reasons",
          "json_type": "integer",
          "name": "ExecutionFaultReasons",
          "required": true,
          "type": "uint32"
        },
        {
          "constraints": "Exact uint32 integer; no floating-point conversion.",
          "json": "last_bus_failure_operation",
          "json_type": "integer",
          "name": "LastBusFailureOperation",
          "required": true,
          "type": "uint32"
        },
        {
          "constraints": "Exact int64 integer; no floating-point conversion.",
          "json": "last_bus_failure_code",
          "json_type": "integer",
          "name": "LastBusFailureCode",
          "required": true,
          "type": "int64"
        },
        {
          "constraints": "Exact uint32 integer; no floating-point conversion.",
          "json": "armed",
          "json_type": "integer",
          "name": "Armed",
          "required": true,
          "type": "uint32"
        },
        {
          "constraints": "Exact uint32 integer; no floating-point conversion.",
          "json": "axis_enable_mask",
          "json_type": "integer",
          "name": "AxisEnableMask",
          "required": true,
          "type": "uint32"
        },
        {
          "constraints": "Exact uint32 integer; no floating-point conversion.",
          "json": "native_home_active_axis_mask",
          "json_type": "integer",
          "name": "NativeHomeActiveMask",
          "required": true,
          "type": "uint32"
        },
        {
          "constraints": "Wire field; native admission remains authoritative.",
          "json": "axes",
          "json_type": "array",
          "name": "Axes",
          "required": true,
          "type": "[]AxisStatus"
        },
        {
          "constraints": "Native daemon publication; never adapter-estimated motion.",
          "json": "configuration_epoch",
          "json_type": "integer",
          "name": "ConfigurationEpoch",
          "required": true,
          "type": "uint64"
        },
        {
          "constraints": "Native daemon publication; never adapter-estimated motion.",
          "json": "buffer_health",
          "json_type": "object",
          "name": "BufferHealth",
          "required": true,
          "type": "BufferHealth"
        },
        {
          "constraints": "Native daemon publication; never adapter-estimated motion.",
          "json": "plan_cursor",
          "json_type": "object",
          "name": "PlanCursor",
          "required": true,
          "type": "PlanCursor"
        },
        {
          "constraints": "Native bus policy and held_slaves with retained, observed and expected declared identities, presence, AL state and disposition; unreadable identity fields are null. Dispositions: held for an undeclared device allowed by hold; declared_unused for a matching declaration; refused_unknown for an undeclared device under refuse; refused_identity for a declared identity mismatch; identity_unreadable for an unavailable SII identity; refused_missing for a missing required declaration; identity_changed for a post-admission identity change under hold; disappeared for a missing unused device under hold; refused_state for a held device outside PREOP or INIT, or a configured terminal outside OP after activation. Refuse continuously requires declared identities and presence; post-admission refusal latches a readiness fault and inhibits outputs before submission, requiring public reset_fault (FaultReset), reacquisition of the application session, then explicit Enable and Arm after restoring the device and verified readiness. Enable before reset is rejected with native not_ready (reason 2); reset clears the readiness fault (reason 128) and safety mask while keeping outputs inhibited and retiring the session. Lost Home evidence requires separate qualified recovery before motion. Hold reports post-admission unused-device identity or presence changes and continues axes while axis readiness remains valid. Admission reason and reason_position identify identity_unreadable, unknown_slave, declared_identity_mismatch, declared_slave_missing, unsafe_held_state or capacity_exceeded; none means no observed refusal. No output capability is granted to held devices. A declared cell I/O terminal has disposition io_terminal and contributes one required responding slave. Its declared identity and presence remain mandatory under both hold and refuse; after activation it must be OP or admission reports io_terminal_not_operational. Held devices alone receive no PDOs or output capability.",
          "json": "bus",
          "json_type": "object",
          "name": "Bus",
          "required": true,
          "type": "rawjson"
        },
        {
          "name": "IO",
          "json": "io",
          "type": "IoState",
          "json_type": "object",
          "required": true,
          "constraints": "Native cycle observation or bounded marker intent; physical readback is independent."
        }
      ],
      "go_alias": "ipcclient.Status",
      "name": "NativeStatus"
    },
    {
      "fields": [
        {
          "constraints": "Exact uint32 integer; no floating-point conversion.",
          "json": "mode",
          "json_type": "integer",
          "name": "Mode",
          "required": true,
          "type": "uint32"
        },
        {
          "constraints": "Exact uint32 integer; no floating-point conversion.",
          "json": "state",
          "json_type": "integer",
          "name": "State",
          "required": true,
          "type": "uint32"
        },
        {
          "constraints": "Exact uint64 integer; no floating-point conversion.",
          "json": "trajectory_id",
          "json_type": "integer",
          "name": "TrajectoryID",
          "required": true,
          "type": "uint64"
        },
        {
          "constraints": "Exact uint32 integer; no floating-point conversion.",
          "json": "point_index",
          "json_type": "integer",
          "name": "PointIndex",
          "required": true,
          "type": "uint32"
        },
        {
          "constraints": "Exact uint32 integer; no floating-point conversion.",
          "json": "queue_depth",
          "json_type": "integer",
          "name": "QueueDepth",
          "required": true,
          "type": "uint32"
        },
        {
          "constraints": "Exact uint32 integer; no floating-point conversion.",
          "json": "last_event",
          "json_type": "integer",
          "name": "LastEvent",
          "required": true,
          "type": "uint32"
        },
        {
          "constraints": "Wire field; native admission remains authoritative.",
          "json": "done",
          "json_type": "boolean",
          "name": "Done",
          "required": true,
          "type": "bool"
        },
        {
          "constraints": "Exact uint64 integer; no floating-point conversion.",
          "json": "command_sequence",
          "json_type": "integer",
          "name": "CommandSequence",
          "required": true,
          "type": "uint64"
        },
        {
          "constraints": "Exact uint64 integer; no floating-point conversion.",
          "json": "time_ns",
          "json_type": "integer",
          "name": "TimeNS",
          "required": true,
          "type": "uint64"
        }
      ],
      "go_alias": "ipcclient.MotionState",
      "name": "MotionState"
    },
    {
      "fields": [
        {
          "constraints": "Wire field; native admission remains authoritative.",
          "json": "daemon_incarnation",
          "json_type": "string",
          "name": "DaemonIncarnation",
          "required": true,
          "type": "string"
        },
        {
          "constraints": "Wire field; native admission remains authoritative.",
          "json": "adapter_incarnation",
          "json_type": "string",
          "name": "AdapterIncarnation",
          "required": true,
          "type": "string"
        },
        {
          "constraints": "Wire field; native admission remains authoritative.",
          "json": "grant",
          "json_type": "object",
          "name": "Grant",
          "required": true,
          "type": "*GrantObservation"
        },
        {
          "constraints": "Wire field; native admission remains authoritative.",
          "json": "jog",
          "json_type": "object",
          "name": "Jog",
          "required": true,
          "type": "*JogObservation"
        },
        {
          "constraints": "Adapter-lifetime ingress outcomes across datagram, WSS and UpdateJog; counters and latest refusal match GET /v1/jog/ingress.",
          "json": "jog_ingress",
          "json_type": "object",
          "name": "JogIngress",
          "required": true,
          "type": "JogIngressObservation"
        },
        {
          "constraints": "Wire field; native admission remains authoritative.",
          "json": "core",
          "json_type": "object",
          "name": "Core",
          "required": true,
          "type": "NativeStatus"
        },
        {
          "constraints": "Wire field; native admission remains authoritative.",
          "json": "motion",
          "json_type": "object",
          "name": "Motion",
          "required": true,
          "type": "MotionState"
        },
        {
          "constraints": "Wire field; native admission remains authoritative.",
          "json": "execution",
          "json_type": "object",
          "name": "Execution",
          "required": true,
          "type": "Execution"
        },
        {
          "constraints": "Native daemon publication; time_ns identifies the observation, never adapter-estimated motion.",
          "json": "time_ns",
          "json_type": "integer",
          "name": "TimeNS",
          "required": true,
          "type": "uint64"
        },
        {
          "constraints": "Native daemon publication; time_ns identifies the observation, never adapter-estimated motion.",
          "json": "axes",
          "json_type": "array",
          "name": "Axes",
          "required": true,
          "type": "[]LogicalAxisStatus"
        },
        {
          "constraints": "Native daemon publication; time_ns identifies the observation, never adapter-estimated motion.",
          "json": "generations",
          "json_type": "object",
          "name": "Generations",
          "required": true,
          "type": "StatusGenerations"
        },
        {
          "constraints": "Native daemon publication; time_ns identifies the observation, never adapter-estimated motion.",
          "json": "plan_cursor",
          "json_type": "object",
          "name": "PlanCursor",
          "required": true,
          "type": "PlanCursor"
        },
        {
          "constraints": "Native daemon publication; time_ns identifies the observation, never adapter-estimated motion.",
          "json": "buffer_health",
          "json_type": "object",
          "name": "BufferHealth",
          "required": true,
          "type": "BufferHealth"
        },
        {
          "constraints": "Adapter runtime observations; not native motion state.",
          "json": "adapter",
          "json_type": "object",
          "name": "Adapter",
          "required": true,
          "type": "AdapterStatus"
        }
      ],
      "name": "ProcessStatus"
    },
    {
      "fields": [
        {
          "constraints": "Exact int64 integer; no floating-point conversion.",
          "json": "time_ns",
          "json_type": "integer",
          "name": "TimeNS",
          "required": true,
          "type": "int64"
        },
        {
          "constraints": "Exact int integer; no floating-point conversion.",
          "json": "segment",
          "json_type": "integer",
          "name": "Segment",
          "required": true,
          "type": "int"
        },
        {
          "constraints": "Exact int integer; no floating-point conversion.",
          "json": "sample",
          "json_type": "integer",
          "name": "Sample",
          "required": true,
          "type": "int"
        },
        {
          "constraints": "Wire field; native admission remains authoritative.",
          "json": "action",
          "json_type": "string",
          "name": "Action",
          "required": true,
          "type": "string"
        },
        {
          "constraints": "Wire field; native admission remains authoritative.",
          "json": "value",
          "json_type": "boolean",
          "name": "Value",
          "required": true,
          "type": "bool"
        }
      ],
      "go_existing": true,
      "name": "ProcessMarker"
    },
    {
      "fields": [
        {
          "constraints": "Wire field; native admission remains authoritative.",
          "json": "process_markers",
          "json_type": "array",
          "name": "Markers",
          "required": true,
          "type": "[]ProcessMarker"
        },
        {
          "constraints": "Wire field; native admission remains authoritative.",
          "json": "identity",
          "json_type": "object",
          "name": "Identity",
          "required": true,
          "type": "Identity"
        },
        {
          "constraints": "Wire field; native admission remains authoritative.",
          "json": "requires_process_io",
          "json_type": "boolean",
          "name": "RequiresProcessIO",
          "required": true,
          "type": "bool"
        },
        {
          "constraints": "Exact int integer; no floating-point conversion.",
          "json": "segments",
          "json_type": "integer",
          "name": "Segments",
          "required": true,
          "type": "int"
        },
        {
          "constraints": "Exact int integer; no floating-point conversion.",
          "json": "samples",
          "json_type": "integer",
          "name": "Samples",
          "required": true,
          "type": "int"
        },
        {
          "constraints": "Exact execution sample count after coincident segment endpoints are shared.",
          "json": "normalised_samples",
          "json_type": "integer",
          "name": "NormalisedSamples",
          "required": true,
          "type": "int"
        },
        {
          "constraints": "Exact uint32 integer; no floating-point conversion.",
          "json": "axis_mask",
          "json_type": "integer",
          "name": "AxisMask",
          "required": true,
          "type": "uint32"
        }
      ],
      "go_existing": true,
      "name": "Program"
    },
    {
      "fields": [
        {
          "constraints": "Logical joint-limit diagnostic for native_limit_exceeded or native_segment_rate_exceeded; supplements the unchanged refusal reason and is not a native command receipt.",
          "json": "limit_violation",
          "json_type": "object",
          "name": "LimitViolation",
          "required": true,
          "type": "ProgramLimitViolation"
        }
      ],
      "go_existing": true,
      "name": "ProgramLimitData"
    },
    {
      "fields": [
        {
          "constraints": "Diagnostic quantity: position or velocity.",
          "json": "kind",
          "json_type": "string",
          "name": "Kind",
          "required": true,
          "type": "string"
        },
        {
          "constraints": "Zero-based source segment index, matching the refusal detail.",
          "json": "segment",
          "json_type": "integer",
          "name": "Segment",
          "required": true,
          "type": "int"
        },
        {
          "constraints": "Zero-based source sample index, matching the refusal detail.",
          "json": "sample",
          "json_type": "integer",
          "name": "Sample",
          "required": true,
          "type": "int"
        },
        {
          "constraints": "Canonical joint identifier reported by admission, for example J6.",
          "json": "axis",
          "json_type": "string",
          "name": "Axis",
          "required": true,
          "type": "string"
        },
        {
          "constraints": "Finite logical joint position or peak velocity in unit; command-count direction and Home offset have been removed.",
          "json": "value",
          "json_type": "number",
          "name": "Value",
          "required": true,
          "type": "float64"
        },
        {
          "constraints": "Finite logical admission bound in unit; invalid numeric details are omitted as a whole without discarding the refusal.",
          "json": "limit",
          "json_type": "number",
          "name": "Limit",
          "required": true,
          "type": "float64"
        },
        {
          "constraints": "rad for position; rad/s for velocity.",
          "json": "unit",
          "json_type": "string",
          "name": "Unit",
          "required": true,
          "type": "string"
        }
      ],
      "go_existing": true,
      "name": "ProgramLimitViolation"
    },
    {
      "fields": [
        {
          "constraints": "Exact uint64 integer; no floating-point conversion.",
          "json": "source_sequence",
          "json_type": "integer",
          "name": "SourceSequence",
          "required": true,
          "type": "uint64"
        },
        {
          "constraints": "Exact uint32 integer; no floating-point conversion.",
          "json": "reason",
          "json_type": "integer",
          "name": "Reason",
          "required": true,
          "type": "uint32"
        },
        {
          "constraints": "Exact uint64 integer; no floating-point conversion.",
          "json": "now_host_ns",
          "json_type": "integer",
          "name": "NowHostNS",
          "required": true,
          "type": "uint64"
        },
        {
          "constraints": "Cumulative refused ingress count for this adapter process; accepted frames do not increment it.",
          "json": "refused",
          "json_type": "integer",
          "name": "Refused",
          "required": true,
          "type": "uint64"
        },
        {
          "constraints": "Cumulative refusal counts indexed by protocol/control.json jog reason 0..14; index 0 remains zero. Unverified fixed capacity: 15 reason slots.",
          "json": "refused_by_reason",
          "json_type": "array",
          "name": "RefusedByReason",
          "required": true,
          "type": "[15]uint64"
        },
        {
          "constraints": "Most recent refusal across all ingress transports; zero before any refusal and preserved through acceptance and grant changes.",
          "json": "latest_refusal",
          "json_type": "object",
          "name": "LatestRefusal",
          "required": true,
          "type": "JogIngressRefusal"
        }
      ],
      "name": "JogIngressObservation"
    },
    {
      "fields": [
        {
          "constraints": "Refused source sequence; zero when no complete input frame is available.",
          "json": "source_sequence",
          "json_type": "integer",
          "name": "SourceSequence",
          "required": true,
          "type": "uint64"
        },
        {
          "constraints": "Typed native jog reason; zero only before the first refusal.",
          "json": "reason",
          "json_type": "integer",
          "name": "Reason",
          "required": true,
          "type": "uint32"
        },
        {
          "constraints": "Host monotonic ns when the adapter recorded the refusal; not an RT application timestamp.",
          "json": "now_host_ns",
          "json_type": "integer",
          "name": "NowHostNS",
          "required": true,
          "type": "uint64"
        }
      ],
      "name": "JogIngressRefusal"
    },
    {
      "fields": [
        {
          "constraints": "Wire field; native admission remains authoritative.",
          "json": "completion_tolerance",
          "json_type": "number",
          "name": "CompletionTolerance",
          "required": true,
          "type": "float64"
        },
        {
          "constraints": "Wire field; native admission remains authoritative.",
          "json": "feedback_fields",
          "json_type": "array",
          "name": "FeedbackFields",
          "required": true,
          "type": "[]string"
        },
        {
          "constraints": "Exact uint32 integer; no floating-point conversion.",
          "json": "index",
          "json_type": "integer",
          "name": "Index",
          "required": true,
          "type": "uint32"
        },
        {
          "constraints": "Wire field; native admission remains authoritative.",
          "json": "id",
          "json_type": "string",
          "name": "ID",
          "required": true,
          "type": "string"
        },
        {
          "constraints": "Wire field; native admission remains authoritative.",
          "json": "position_unit",
          "json_type": "string",
          "name": "PositionUnit",
          "required": true,
          "type": "string"
        },
        {
          "constraints": "Wire field; native admission remains authoritative.",
          "json": "counts_per_unit",
          "json_type": "number",
          "name": "CountsPerUnit",
          "required": true,
          "type": "float64"
        },
        {
          "constraints": "Exact int integer; no floating-point conversion.",
          "json": "sign",
          "json_type": "integer",
          "name": "Sign",
          "required": true,
          "type": "int"
        },
        {
          "constraints": "Wire field; native admission remains authoritative.",
          "json": "feedback_wrap",
          "json_type": "boolean",
          "name": "FeedbackWrap",
          "required": true,
          "type": "bool"
        },
        {
          "constraints": "Wire field; native admission remains authoritative.",
          "json": "command_wrap",
          "json_type": "boolean",
          "name": "CommandWrap",
          "required": true,
          "type": "bool"
        },
        {
          "constraints": "Wire field; native admission remains authoritative.",
          "json": "velocity_command_mapped",
          "json_type": "boolean",
          "name": "VelocityCommandMapped",
          "required": true,
          "type": "bool"
        },
        {
          "constraints": "Wire field; native admission remains authoritative.",
          "json": "native_home",
          "json_type": "boolean",
          "name": "NativeHome",
          "required": true,
          "type": "bool"
        },
        {
          "constraints": "Wire field; native admission remains authoritative.",
          "json": "require_home",
          "json_type": "boolean",
          "name": "RequireHome",
          "required": true,
          "type": "bool"
        },
        {
          "constraints": "Wire field; native admission remains authoritative.",
          "json": "min_position",
          "json_type": "number",
          "name": "MinPosition",
          "required": true,
          "type": "float64"
        },
        {
          "constraints": "Wire field; native admission remains authoritative.",
          "json": "max_position",
          "json_type": "number",
          "name": "MaxPosition",
          "required": true,
          "type": "float64"
        },
        {
          "constraints": "Wire field; native admission remains authoritative.",
          "json": "max_velocity",
          "json_type": "number",
          "name": "MaxVelocity",
          "required": true,
          "type": "float64"
        },
        {
          "constraints": "Wire field; native admission remains authoritative.",
          "json": "jog_acceleration",
          "json_type": "number",
          "name": "JogAcceleration",
          "required": true,
          "type": "float64"
        },
        {
          "constraints": "Wire field; native admission remains authoritative.",
          "json": "max_target_lead",
          "json_type": "number",
          "name": "MaxTargetLead",
          "required": true,
          "type": "float64"
        },
        {
          "constraints": "Wire field; native admission remains authoritative.",
          "json": "following_error",
          "json_type": "number",
          "name": "FollowingError",
          "required": true,
          "type": "float64"
        },
        {
          "constraints": "Exact uint64 integer; no floating-point conversion.",
          "json": "following_error_timeout_ns",
          "json_type": "integer",
          "name": "FollowingErrorTimeoutNS",
          "required": true,
          "type": "uint64"
        },
        {
          "constraints": "Exact uint64 integer; no floating-point conversion.",
          "json": "completion_timeout_ns",
          "json_type": "integer",
          "name": "CompletionTimeoutNS",
          "required": true,
          "type": "uint64"
        },
        {
          "constraints": "hermite_position_with_velocity, linear_without: cubic Hermite q when both knots supply qd, otherwise linear q; configured shortest-step command wrapping applies.",
          "json": "interpolation",
          "json_type": "string",
          "name": "Interpolation",
          "required": true,
          "type": "string"
        },
        {
          "constraints": "qd_optional: both supplied knot velocities shape Hermite position; feedforward is its derivative. If either knot lacks qd, feedforward is the linear segment slope. Endpoint hold velocity is zero.",
          "json": "feedforward",
          "json_type": "string",
          "name": "Feedforward",
          "required": true,
          "type": "string"
        },
        {
          "constraints": "Object with exactly position: declared, velocity: declared, acceleration: declared or not_declared, jerk: unsupported. Prepare checks position range and supplied qd/segment velocity. With max_acceleration, check consecutive qd differences per segment or second q differences across segment midpoints when qd is absent; mixed qd presence rejects. Without the profile field acceleration is not_declared. Sampled derivatives give no continuous acceleration guarantee at linear corners or endpoint hold. Jerk is never checked.",
          "json": "checks",
          "json_type": "object",
          "name": "Checks",
          "required": true,
          "type": "rawjson"
        },
        {
          "constraints": "hold_last_sample_then_settle: hold final q with zero velocity; fresh ready feedback within completion_tolerance by completion_timeout_ns, as evaluated by completion.hpp.",
          "json": "endpoint",
          "json_type": "string",
          "name": "Endpoint",
          "required": true,
          "type": "string"
        },
        {
          "constraints": "Positive finite profile bound in position units per s^2; absent only when acceleration is not_declared.",
          "json": "max_acceleration",
          "json_type": "number",
          "name": "MaxAcceleration",
          "omit_empty": true,
          "required": false,
          "type": "*float64"
        },
        {
          "constraints": "Nonempty reason for an explicit bench brake override (effective present=false); absent without an override. Does not claim the physical brake is absent or qualified.",
          "json": "brake_override_reason",
          "json_type": "string",
          "name": "BrakeOverrideReason",
          "omit_empty": true,
          "required": false,
          "type": "string"
        }
      ],
      "go_alias": "ipcclient.AxisDescription",
      "name": "AxisDescription"
    },
    {
      "fields": [
        {
          "constraints": "Wire field; native admission remains authoritative.",
          "json": "backend",
          "json_type": "string",
          "name": "Backend",
          "required": true,
          "type": "string"
        },
        {
          "constraints": "Wire field; native admission remains authoritative.",
          "json": "schema",
          "json_type": "string",
          "name": "Schema",
          "required": true,
          "type": "string"
        },
        {
          "constraints": "Exact uint32 integer; no floating-point conversion.",
          "json": "protocol_major",
          "json_type": "integer",
          "name": "ProtocolMajor",
          "required": true,
          "type": "uint32"
        },
        {
          "constraints": "Exact uint32 integer; no floating-point conversion.",
          "json": "protocol_minor",
          "json_type": "integer",
          "name": "ProtocolMinor",
          "required": true,
          "type": "uint32"
        },
        {
          "constraints": "Wire field; native admission remains authoritative.",
          "json": "configuration_sha256",
          "json_type": "string",
          "name": "ConfigurationSHA256",
          "required": true,
          "type": "string"
        },
        {
          "constraints": "Canonical machine-semantics digest recomputed by the daemon at startup.",
          "json": "machine_sha256",
          "json_type": "string",
          "name": "MachineSHA256",
          "required": true,
          "type": "string"
        },
        {
          "constraints": "Deployment identity digest (host, NIC, CPUs, sockets, pair, users).",
          "json": "deployment_sha256",
          "json_type": "string",
          "name": "DeploymentSHA256",
          "required": true,
          "type": "string"
        },
        {
          "constraints": "Exact uint32 integer; no floating-point conversion.",
          "json": "max_trajectory_points",
          "json_type": "integer",
          "name": "MaxTrajectoryPoints",
          "required": true,
          "type": "uint32"
        },
        {
          "constraints": "Exact uint32 integer; no floating-point conversion.",
          "json": "resident_plans",
          "json_type": "integer",
          "name": "ResidentPlans",
          "required": true,
          "type": "uint32"
        },
        {
          "constraints": "Exact uint64 integer; no floating-point conversion.",
          "json": "cycle_ns",
          "json_type": "integer",
          "name": "CycleNS",
          "required": true,
          "type": "uint64"
        },
        {
          "constraints": "Wire field; native admission remains authoritative.",
          "json": "interpolation",
          "json_type": "string",
          "name": "Interpolation",
          "required": true,
          "type": "string"
        },
        {
          "constraints": "Wire field; native admission remains authoritative.",
          "json": "stop",
          "json_type": "string",
          "name": "Stop",
          "required": true,
          "type": "string"
        },
        {
          "constraints": "Wire field; native admission remains authoritative.",
          "json": "axes",
          "json_type": "array",
          "name": "Axes",
          "required": true,
          "type": "[]AxisDescription"
        },
        {
          "constraints": "Current native bus policy and held_slaves inventory; the machine digest binds configured policy and declarations, not discovered devices. A declared cell I/O terminal has disposition io_terminal and contributes one required responding slave. Its declared identity and presence remain mandatory under both hold and refuse; after activation it must be OP or admission reports io_terminal_not_operational. Held devices alone receive no PDOs or output capability.",
          "json": "bus",
          "json_type": "object",
          "name": "Bus",
          "required": true,
          "type": "rawjson"
        },
        {
          "constraints": "Compiled cell lease ceiling in ns; a longer effective lease increases unattended-stop delay after link loss.",
          "json": "max_grant_lease_ns",
          "json_type": "integer",
          "name": "MaxGrantLeaseNS",
          "required": true,
          "type": "uint64"
        },
        {
          "constraints": "Compiled cell capture-age and lifetime ceiling in ns; longer ages prolong stale velocity application before the existing expiry ramp.",
          "json": "max_jog_input_age_ns",
          "json_type": "integer",
          "name": "MaxJogInputAgeNS",
          "required": true,
          "type": "uint64"
        },
        {
          "constraints": "Configured cell I/O terminal identity, torch_qualified=false, named input classes and polarities, and output classes, OFF safe states, expiry_ns budgets and independent readback wiring. Omitted when no terminal is configured; this policy is separate from NativeStatus.io observations.",
          "json": "io",
          "json_type": "object",
          "name": "IO",
          "required": false,
          "omit_empty": true,
          "type": "rawjson"
        }
      ],
      "go_alias": "ipcclient.Description",
      "name": "NativeDescription"
    },
    {
      "fields": [
        {
          "constraints": "Wire field; native admission remains authoritative.",
          "json": "domain",
          "json_type": "string",
          "name": "Domain",
          "required": true,
          "type": "string"
        },
        {
          "constraints": "Wire field; native admission remains authoritative.",
          "json": "incarnation",
          "json_type": "string",
          "name": "Incarnation",
          "required": true,
          "type": "string"
        },
        {
          "constraints": "Exact uint64 integer; no floating-point conversion.",
          "json": "mapping_generation",
          "json_type": "integer",
          "name": "MappingGeneration",
          "required": true,
          "type": "uint64"
        },
        {
          "constraints": "Exact uint64 integer; no floating-point conversion.",
          "json": "now_host_ns",
          "json_type": "integer",
          "name": "NowHostNS",
          "required": true,
          "type": "uint64"
        }
      ],
      "go_alias": "ipcclient.LocalJogClock",
      "name": "LocalJogClock"
    },
    {
      "fields": [
        {
          "constraints": "Flattened native description fields.",
          "embedded": true,
          "json": "Description",
          "json_type": "object",
          "name": "Description",
          "required": true,
          "type": "NativeDescription"
        },
        {
          "constraints": "Exactly 1.",
          "json": "contract_version",
          "json_type": "integer",
          "name": "ContractVersion",
          "required": true,
          "type": "uint32"
        },
        {
          "constraints": "Lowercase SHA-256 of the exact committed UTF-8 LF schema file bytes, including its final newline; no self-referential digest field.",
          "json": "capabilities_digest",
          "json_type": "string",
          "name": "CapabilitiesDigest",
          "required": true,
          "type": "string"
        },
        {
          "constraints": "Every target capability with its implementation state and transport.",
          "json": "capabilities",
          "json_type": "array",
          "name": "Capabilities",
          "required": true,
          "type": "[]CapabilityInfo"
        },
        {
          "constraints": "Compiled link idle timeout in ns; clients keep reserved connections alive at one third of this bound, independently of grants. Unverified LAN and internet policy: 90000000000 ns. An omitted legacy field uses 30000000000 ns.",
          "json": "control_idle_timeout_ns",
          "json_type": "integer",
          "name": "ControlIdleTimeoutNS",
          "omit_empty": true,
          "required": false,
          "type": "uint64"
        },
        {
          "constraints": "Detached prepared program metadata including both identity digests; absent when no program is prepared.",
          "json": "program",
          "json_type": "object",
          "name": "Program",
          "omit_empty": true,
          "required": false,
          "type": "*Program"
        },
        {
          "constraints": "Null when no robot definition is bound or no compiled artefact is loaded; never guessed from axis count.",
          "json": "robot",
          "json_type": "object",
          "name": "Robot",
          "required": false,
          "type": "*RobotDescription"
        },
        {
          "constraints": "Per-axis compiled drive configuration and current verified bring-up identity; empty without a compiled artefact.",
          "json": "drives",
          "json_type": "array",
          "name": "Drives",
          "required": true,
          "type": "[]DriveDescription"
        }
      ],
      "name": "Description"
    },
    {
      "fields": [
        {
          "constraints": "Canonical capability name.",
          "json": "name",
          "json_type": "string",
          "name": "Name",
          "required": true,
          "type": "string"
        },
        {
          "constraints": "implemented, interim, test_only or unimplemented. test_only operations are retained for oracle ports and fixtures; consumers use implemented operations.",
          "json": "state",
          "json_type": "string",
          "name": "State",
          "required": true,
          "type": "string"
        },
        {
          "constraints": "Actual ingress; unimplemented has no transport.",
          "json": "transport",
          "json_type": "string",
          "name": "Transport",
          "required": true,
          "type": "string"
        }
      ],
      "name": "CapabilityInfo"
    },
    {
      "fields": [
        {
          "constraints": "Wire field; native admission remains authoritative.",
          "json": "native_jog_result",
          "json_type": "object",
          "name": "NativeJogResult",
          "omit_empty": true,
          "required": false,
          "type": "*JogObservation"
        },
        {
          "constraints": "Wire field; native admission remains authoritative.",
          "json": "native_result",
          "json_type": "object",
          "name": "NativeResult",
          "omit_empty": true,
          "required": false,
          "type": "*CommandResult"
        },
        {
          "constraints": "Wire field; native admission remains authoritative.",
          "json": "schema",
          "json_type": "string",
          "name": "Schema",
          "required": true,
          "type": "string"
        },
        {
          "constraints": "Wire field; native admission remains authoritative.",
          "json": "operation",
          "json_type": "string",
          "name": "Operation",
          "required": true,
          "type": "string"
        },
        {
          "constraints": "Exact uint64 integer; no floating-point conversion.",
          "json": "sequence",
          "json_type": "integer",
          "name": "Sequence",
          "omit_empty": true,
          "required": false,
          "type": "uint64"
        },
        {
          "constraints": "Exact uint64 integer; no floating-point conversion.",
          "json": "handle",
          "json_type": "integer",
          "name": "Handle",
          "omit_empty": true,
          "required": false,
          "type": "uint64"
        },
        {
          "constraints": "Wire field; native admission remains authoritative.",
          "json": "data",
          "json_type": "any",
          "name": "Data",
          "omit_empty": true,
          "required": false,
          "type": "rawjson"
        },
        {
          "constraints": "Wire field; native admission remains authoritative.",
          "json": "error",
          "json_type": "string",
          "name": "Error",
          "omit_empty": true,
          "required": false,
          "type": "string"
        }
      ],
      "name": "RawResponse"
    },
    {
      "fields": [
        {
          "constraints": "A6-EC display code from the 0x603F/0x203F low-half pair; unresolved bus candidates joined by |; empty when clear, unmapped, or another drive family.",
          "json": "drive_alarm",
          "json_type": "string",
          "name": "DriveAlarm",
          "required": true,
          "type": "string"
        },
        {
          "constraints": "Manual meaning corresponding to drive_alarm; multiple candidates joined by | in matching order.",
          "json": "drive_alarm_text",
          "json_type": "string",
          "name": "DriveAlarmText",
          "required": true,
          "type": "string"
        },
        {
          "constraints": "Full raw 0x203F auxiliary SDO word; a two-byte reply occupies the low half. Retained for the current nonzero 0x603F event and configuration epoch, zero when invalid or cleared. Separate from manufacturer_error_code, which carries the cyclic manufacturer_err PDO.",
          "json": "drive_alarm_aux_code",
          "json_type": "integer",
          "name": "DriveAlarmAuxCode",
          "required": true,
          "type": "uint32"
        },
        {
          "constraints": "True only for an admitted auxiliary reply matching the current nonzero 0x603F event and configuration epoch; false when missing, stale, or cleared, preventing zero from being mistaken for a valid reply.",
          "json": "drive_alarm_aux_valid",
          "json_type": "boolean",
          "name": "DriveAlarmAuxValid",
          "required": true,
          "type": "bool"
        },
        {
          "constraints": "Native daemon publication; time_ns identifies the observation, never adapter-estimated motion.",
          "json": "time_ns",
          "json_type": "integer",
          "name": "TimeNS",
          "required": true,
          "type": "uint64"
        },
        {
          "constraints": "Native daemon publication; time_ns identifies the observation, never adapter-estimated motion.",
          "json": "logical_position",
          "json_type": "number",
          "name": "LogicalPosition",
          "required": true,
          "type": "float64"
        },
        {
          "constraints": "Native daemon publication; time_ns identifies the observation, never adapter-estimated motion.",
          "json": "logical_valid",
          "json_type": "boolean",
          "name": "LogicalValid",
          "required": true,
          "type": "bool"
        },
        {
          "constraints": "Native daemon publication; time_ns identifies the observation, never adapter-estimated motion.",
          "json": "logical_target",
          "json_type": "number",
          "name": "LogicalTarget",
          "required": true,
          "type": "float64"
        },
        {
          "constraints": "Native daemon publication; time_ns identifies the observation, never adapter-estimated motion.",
          "json": "logical_velocity",
          "json_type": "number",
          "name": "LogicalVelocity",
          "omit_empty": true,
          "required": false,
          "type": "*float64"
        },
        {
          "constraints": "ready or first failing axis gate in this order: faulted, mode_mismatch, home_required, coordinate_invalid, not_enabled, not_operation_enabled, brake_wait; group authority still applies.",
          "json": "readiness",
          "json_type": "string",
          "name": "Readiness",
          "required": true,
          "type": "string"
        },
        {
          "constraints": "Native daemon publication; time_ns identifies the observation, never adapter-estimated motion.",
          "json": "position_counts",
          "json_type": "integer",
          "name": "PositionCounts",
          "required": true,
          "type": "int32"
        },
        {
          "constraints": "Native daemon publication; time_ns identifies the observation, never adapter-estimated motion.",
          "json": "statusword",
          "json_type": "integer",
          "name": "Statusword",
          "required": true,
          "type": "uint16"
        },
        {
          "constraints": "Native daemon publication; time_ns identifies the observation, never adapter-estimated motion.",
          "json": "brake_state",
          "json_type": "integer",
          "name": "BrakeState",
          "required": true,
          "type": "uint32"
        },
        {
          "constraints": "Native daemon publication; time_ns identifies the observation, never adapter-estimated motion.",
          "json": "home_valid",
          "json_type": "boolean",
          "name": "HomeValid",
          "required": true,
          "type": "bool"
        },
        {
          "constraints": "Drive 0x606C signed reference counts/s in the position frame, sampled each cycle. Diagnostics only; never a speed-safety certification or an execution guard.",
          "json": "velocity_actual_counts_per_s",
          "json_type": "integer",
          "name": "VelocityActualCountsPerS",
          "required": true,
          "type": "int32"
        },
        {
          "constraints": "Drive 0x60F4 signed reference counts in the position frame; preferred input to the configured collision watchdog.",
          "json": "following_error_counts",
          "json_type": "integer",
          "name": "FollowingErrorCounts",
          "required": true,
          "type": "int32"
        },
        {
          "constraints": "True only when velocity_actual is mapped and this cycle has fresh PDO feedback. An absent signal is zero with false validity.",
          "json": "velocity_actual_valid",
          "json_type": "boolean",
          "name": "VelocityActualValid",
          "required": true,
          "type": "bool"
        },
        {
          "constraints": "True only when following_error is mapped and this cycle has fresh PDO feedback. An absent signal is zero with false validity.",
          "json": "following_error_valid",
          "json_type": "boolean",
          "name": "FollowingErrorValid",
          "required": true,
          "type": "bool"
        },
        {
          "constraints": "Maximum absolute valid drive velocity in counts/s since the last accepted Arm(true); zero before Arm. Retained through Stop/disarm; INT32_MIN has magnitude 2147483648.",
          "json": "max_abs_velocity_actual_counts_per_s",
          "json_type": "integer",
          "name": "MaxAbsVelocityActualCountsPerS",
          "required": true,
          "type": "uint32"
        },
        {
          "constraints": "Maximum absolute valid drive following error in counts since the last accepted Arm(true); zero before Arm. Retained through Stop/disarm; INT32_MIN has magnitude 2147483648.",
          "json": "max_abs_following_error_counts",
          "json_type": "integer",
          "name": "MaxAbsFollowingErrorCounts",
          "required": true,
          "type": "uint32"
        },
        {
          "name": "DIBits",
          "json": "di_bits",
          "type": "uint32",
          "json_type": "integer",
          "required": true,
          "constraints": "Current 0x60FD DI logic bits; interpret only when di_valid."
        },
        {
          "name": "DIValid",
          "json": "di_valid",
          "type": "bool",
          "json_type": "boolean",
          "required": true,
          "constraints": "True only for a fresh PDO and verified digital-input mapping."
        },
        {
          "name": "ExternalEnableActive",
          "json": "external_enable_active",
          "type": "bool",
          "json_type": "boolean",
          "required": true,
          "constraints": "A6-EC S-ON input active; interpret only when external_enable_valid. Diagnostics only; does not prove STO or torque state."
        },
        {
          "name": "ExternalEnableValid",
          "json": "external_enable_valid",
          "type": "bool",
          "json_type": "boolean",
          "required": true,
          "constraints": "True only with valid DI feedback and exactly one explicitly configured, verified A6-EC S-ON DI function."
        },
        {
          "name": "TorqueRaw",
          "json": "torque_raw",
          "type": "int32",
          "json_type": "integer",
          "required": true,
          "constraints": "Drive 0x6077 raw per-mille of rated torque; use only with fresh PDO feedback."
        },
        {
          "name": "CollisionWatchdog",
          "json": "collision_watchdog",
          "type": "CollisionWatchdogStatus",
          "json_type": "object",
          "required": true,
          "constraints": "Native cycle evaluation and latched trip evidence for this axis."
        },
        {
          "name": "CalibrationValid",
          "json": "calibration_valid",
          "type": "*bool",
          "json_type": "boolean",
          "required": false,
          "omit_empty": true,
          "constraints": "Persistent calibration applicability; null/absent means legacy unknown."
        },
        {
          "name": "PositionState",
          "json": "position_state",
          "type": "string",
          "json_type": "string",
          "required": false,
          "omit_empty": true,
          "constraints": "Native state: unverified, recovering, trusted or lost; empty means legacy unknown."
        },
        {
          "name": "PositionReason",
          "json": "position_reason",
          "type": "string",
          "json_type": "string",
          "required": false,
          "omit_empty": true,
          "constraints": "Native CoordinateReason name; none means no coordinate refusal; absent means legacy unknown."
        },
        {
          "name": "AuditStatus",
          "json": "audit_status",
          "type": "string",
          "required": false,
          "json_type": "string",
          "omit_empty": true,
          "constraints": "Last stationary audit: pending, verified or unavailable; never motion authority."
        },
        {
          "name": "AuditReason",
          "json": "audit_reason",
          "type": "string",
          "json_type": "string",
          "required": false,
          "omit_empty": true,
          "constraints": "Native SampleInvalidity name; none means no reported audit failure; absent means legacy unknown."
        },
        {
          "name": "AuditLastVerifiedNS",
          "json": "audit_last_verified_ns",
          "type": "uint64",
          "json_type": "integer",
          "required": false,
          "omit_empty": true,
          "constraints": "Monotonic acquisition completion of last accepted independent evidence; zero means never."
        }
      ],
      "go_alias": "ipcclient.LogicalAxisStatus",
      "name": "LogicalAxisStatus"
    },
    {
      "fields": [
        {
          "constraints": "Native daemon publication; time_ns identifies the observation, never adapter-estimated motion.",
          "json": "time_ns",
          "json_type": "integer",
          "name": "TimeNS",
          "required": true,
          "type": "uint64"
        },
        {
          "constraints": "Native daemon publication; time_ns identifies the observation, never adapter-estimated motion.",
          "json": "native",
          "json_type": "integer",
          "name": "Native",
          "required": true,
          "type": "uint64"
        },
        {
          "constraints": "Native daemon publication; time_ns identifies the observation, never adapter-estimated motion.",
          "json": "configuration_epoch",
          "json_type": "integer",
          "name": "ConfigurationEpoch",
          "required": true,
          "type": "uint64"
        },
        {
          "constraints": "Native daemon publication; time_ns identifies the observation, never adapter-estimated motion.",
          "json": "home_epoch",
          "json_type": "integer",
          "name": "HomeEpoch",
          "required": true,
          "type": "uint64"
        },
        {
          "constraints": "Adapter handle execution generation; correlated native Start acknowledgement.",
          "json": "execution",
          "json_type": "integer",
          "name": "Execution",
          "required": true,
          "type": "uint64"
        },
        {
          "constraints": "Native daemon publication; time_ns identifies the observation, never adapter-estimated motion.",
          "json": "jog",
          "json_type": "integer",
          "name": "Jog",
          "required": true,
          "type": "uint64"
        },
        {
          "constraints": "Native daemon publication; time_ns identifies the observation, never adapter-estimated motion.",
          "json": "grant",
          "json_type": "integer",
          "name": "Grant",
          "required": true,
          "type": "uint64"
        },
        {
          "constraints": "Daemon fast-grant publication timestamp; zero if grant observation is unavailable. Independent of metrics time_ns.",
          "json": "grant_time_ns",
          "json_type": "integer",
          "name": "GrantTimeNS",
          "required": true,
          "type": "uint64"
        },
        {
          "constraints": "Daemon jog publication timestamp; zero if jog observation is unavailable. Independent of metrics time_ns.",
          "json": "jog_time_ns",
          "json_type": "integer",
          "name": "JogTimeNS",
          "required": true,
          "type": "uint64"
        }
      ],
      "name": "StatusGenerations"
    },
    {
      "fields": [
        {
          "constraints": "Native daemon publication; time_ns identifies the observation, never adapter-estimated motion.",
          "json": "time_ns",
          "json_type": "integer",
          "name": "TimeNS",
          "required": true,
          "type": "uint64"
        },
        {
          "constraints": "Native daemon publication; time_ns identifies the observation, never adapter-estimated motion.",
          "json": "active_handle",
          "json_type": "integer",
          "name": "ActiveHandle",
          "required": true,
          "type": "uint64"
        },
        {
          "constraints": "Native daemon publication; time_ns identifies the observation, never adapter-estimated motion.",
          "json": "sample_index",
          "json_type": "integer",
          "name": "SampleIndex",
          "required": true,
          "type": "uint32"
        },
        {
          "constraints": "Native daemon publication; time_ns identifies the observation, never adapter-estimated motion.",
          "json": "native_clock_ns",
          "json_type": "integer",
          "name": "NativeClockNS",
          "required": true,
          "type": "uint64"
        }
      ],
      "go_alias": "ipcclient.PlanCursor",
      "name": "PlanCursor"
    },
    {
      "fields": [
        {
          "constraints": "Native daemon publication; time_ns identifies the observation, never adapter-estimated motion.",
          "json": "time_ns",
          "json_type": "integer",
          "name": "TimeNS",
          "required": true,
          "type": "uint64"
        },
        {
          "constraints": "Native daemon publication; time_ns identifies the observation, never adapter-estimated motion.",
          "json": "slots_free",
          "json_type": "integer",
          "name": "SlotsFree",
          "required": true,
          "type": "uint32"
        },
        {
          "constraints": "Native daemon publication; time_ns identifies the observation, never adapter-estimated motion.",
          "json": "staging_in_progress",
          "json_type": "boolean",
          "name": "StagingInProgress",
          "required": true,
          "type": "bool"
        },
        {
          "constraints": "Native daemon publication; time_ns identifies the observation, never adapter-estimated motion.",
          "json": "ring_drops",
          "json_type": "integer",
          "name": "RingDrops",
          "required": true,
          "type": "uint64"
        },
        {
          "constraints": "Native daemon publication; time_ns identifies the observation, never adapter-estimated motion.",
          "json": "native_slot_occupancy",
          "json_type": "object",
          "name": "NativeSlotOccupancy",
          "required": true,
          "type": "map[string]uint32"
        }
      ],
      "go_alias": "ipcclient.BufferHealth",
      "name": "BufferHealth"
    },
    {
      "fields": [
        {
          "constraints": "Go runtime bytes at request observation.",
          "json": "heap_inuse",
          "json_type": "integer",
          "name": "HeapInuse",
          "required": true,
          "type": "uint64"
        },
        {
          "constraints": "Go runtime bytes at request observation.",
          "json": "sys",
          "json_type": "integer",
          "name": "Sys",
          "required": true,
          "type": "uint64"
        },
        {
          "constraints": "Go runtime goroutine count at request observation.",
          "json": "goroutines",
          "json_type": "integer",
          "name": "Goroutines",
          "required": true,
          "type": "uint32"
        },
        {
          "constraints": "Available adapter preparation admissions, from the two atomic reservations.",
          "json": "open_preparation_slots",
          "json_type": "integer",
          "name": "OpenPreparationSlots",
          "required": true,
          "type": "uint32"
        }
      ],
      "name": "AdapterStatus"
    },
    {
      "fields": [
        {
          "constraints": "Native daemon publication; time_ns identifies the observation, never adapter-estimated motion.",
          "json": "generation",
          "json_type": "integer",
          "name": "Generation",
          "required": true,
          "type": "uint64"
        },
        {
          "constraints": "True for a local keepalive while Stop drains; does not confer native authority.",
          "json": "stopping",
          "json_type": "boolean",
          "name": "Stopping",
          "required": true,
          "type": "bool"
        }
      ],
      "name": "GrantEvent"
    },
    {
      "fields": [
        {
          "constraints": "Native daemon publication; time_ns identifies the observation, never adapter-estimated motion.",
          "json": "handle",
          "json_type": "integer",
          "name": "Handle",
          "required": true,
          "type": "uint64"
        },
        {
          "constraints": "Native daemon publication; time_ns identifies the observation, never adapter-estimated motion.",
          "json": "from",
          "json_type": "string",
          "name": "From",
          "required": true,
          "type": "string"
        },
        {
          "constraints": "Native daemon publication; time_ns identifies the observation, never adapter-estimated motion.",
          "json": "to",
          "json_type": "string",
          "name": "To",
          "required": true,
          "type": "string"
        },
        {
          "constraints": "Native daemon publication; time_ns identifies the observation, never adapter-estimated motion.",
          "json": "execution_generation",
          "json_type": "integer",
          "name": "ExecutionGeneration",
          "required": true,
          "type": "uint64"
        },
        {
          "constraints": "Native daemon publication; time_ns identifies the observation, never adapter-estimated motion.",
          "json": "native_sequence",
          "json_type": "integer",
          "name": "NativeSequence",
          "required": true,
          "type": "uint64"
        },
        {
          "constraints": "Immutable raw trajectory identity supplied at Prepare and checked at Start; echoed unchanged through terminal observation.",
          "json": "identity",
          "json_type": "object",
          "name": "Identity",
          "required": false,
          "type": "Identity"
        },
        {
          "constraints": "Application grant generation that owns this immutable preparation.",
          "json": "generation",
          "json_type": "integer",
          "name": "Generation",
          "required": false,
          "type": "uint64"
        }
      ],
      "name": "HandleTransitionEvent"
    },
    {
      "fields": [
        {
          "constraints": "Native daemon publication; time_ns identifies the observation, never adapter-estimated motion.",
          "json": "handle",
          "json_type": "integer",
          "name": "Handle",
          "required": true,
          "type": "uint64"
        },
        {
          "constraints": "Native daemon publication; time_ns identifies the observation, never adapter-estimated motion.",
          "json": "generation",
          "json_type": "integer",
          "name": "Generation",
          "required": true,
          "type": "uint64"
        },
        {
          "constraints": "Native daemon publication; time_ns identifies the observation, never adapter-estimated motion.",
          "json": "native_sequence",
          "json_type": "integer",
          "name": "NativeSequence",
          "required": true,
          "type": "uint64"
        },
        {
          "constraints": "Native daemon publication; time_ns identifies the observation, never adapter-estimated motion.",
          "json": "fault_bits",
          "json_type": "integer",
          "name": "FaultBits",
          "required": true,
          "type": "uint32"
        },
        {
          "constraints": "Native daemon publication; time_ns identifies the observation, never adapter-estimated motion.",
          "json": "recovery",
          "json_type": "array",
          "name": "Recovery",
          "required": true,
          "type": "[]FaultRecovery"
        },
        {
          "constraints": "Immutable raw trajectory identity supplied at Prepare and checked at Start; echoed unchanged through terminal observation.",
          "json": "identity",
          "json_type": "object",
          "name": "Identity",
          "required": false,
          "type": "Identity"
        }
      ],
      "name": "ExecutionEvent"
    },
    {
      "fields": [
        {
          "constraints": "Native daemon publication; time_ns identifies the observation, never adapter-estimated motion.",
          "json": "generation",
          "json_type": "integer",
          "name": "Generation",
          "required": true,
          "type": "uint64"
        },
        {
          "constraints": "Native daemon publication; time_ns identifies the observation, never adapter-estimated motion.",
          "json": "reason",
          "json_type": "integer",
          "name": "Reason",
          "required": true,
          "type": "uint32"
        },
        {
          "constraints": "Native daemon publication; time_ns identifies the observation, never adapter-estimated motion.",
          "json": "axis_mask",
          "json_type": "integer",
          "name": "AxisMask",
          "required": true,
          "type": "uint32"
        },
        {
          "constraints": "Native daemon publication; time_ns identifies the observation, never adapter-estimated motion.",
          "json": "velocity_scale_ppm",
          "json_type": "integer",
          "name": "VelocityScalePPM",
          "required": true,
          "type": "uint32"
        }
      ],
      "name": "JogEvent"
    },
    {
      "fields": [
        {
          "constraints": "Native daemon publication; time_ns identifies the observation, never adapter-estimated motion.",
          "json": "bit",
          "json_type": "integer",
          "name": "Bit",
          "required": true,
          "type": "uint32"
        },
        {
          "constraints": "Native daemon publication; time_ns identifies the observation, never adapter-estimated motion.",
          "json": "axis_mask",
          "json_type": "integer",
          "name": "AxisMask",
          "required": true,
          "type": "uint32"
        },
        {
          "constraints": "Native daemon publication; time_ns identifies the observation, never adapter-estimated motion.",
          "json": "recovery_class",
          "json_type": "string",
          "name": "RecoveryClass",
          "required": true,
          "type": "string"
        }
      ],
      "name": "FaultEvent"
    },
    {
      "fields": [
        {
          "constraints": "Native daemon publication; time_ns identifies the observation, never adapter-estimated motion.",
          "json": "enabled_mask",
          "json_type": "integer",
          "name": "EnabledMask",
          "required": true,
          "type": "uint32"
        },
        {
          "constraints": "Native daemon publication; time_ns identifies the observation, never adapter-estimated motion.",
          "json": "armed",
          "json_type": "boolean",
          "name": "Armed",
          "required": true,
          "type": "bool"
        }
      ],
      "name": "EnableEvent"
    },
    {
      "fields": [
        {
          "constraints": "Native daemon publication; time_ns identifies the observation, never adapter-estimated motion.",
          "json": "previous",
          "json_type": "integer",
          "name": "Previous",
          "required": true,
          "type": "uint64"
        },
        {
          "constraints": "Native daemon publication; time_ns identifies the observation, never adapter-estimated motion.",
          "json": "current",
          "json_type": "integer",
          "name": "Current",
          "required": true,
          "type": "uint64"
        }
      ],
      "name": "EpochEvent"
    },
    {
      "fields": [
        {
          "constraints": "Native daemon publication; time_ns identifies the observation, never adapter-estimated motion.",
          "json": "previous",
          "json_type": "string",
          "name": "Previous",
          "required": true,
          "type": "string"
        },
        {
          "constraints": "Native daemon publication; time_ns identifies the observation, never adapter-estimated motion.",
          "json": "current",
          "json_type": "string",
          "name": "Current",
          "required": true,
          "type": "string"
        }
      ],
      "name": "IncarnationEvent"
    },
    {
      "fields": [
        {
          "constraints": "Native daemon publication; time_ns identifies the observation, never adapter-estimated motion.",
          "json": "previous_drops",
          "json_type": "integer",
          "name": "PreviousDrops",
          "required": true,
          "type": "uint64"
        },
        {
          "constraints": "Native daemon publication; time_ns identifies the observation, never adapter-estimated motion.",
          "json": "total_drops",
          "json_type": "integer",
          "name": "TotalDrops",
          "required": true,
          "type": "uint64"
        }
      ],
      "name": "PublisherOverflowEvent"
    },
    {
      "fields": [
        {
          "constraints": "Inclusive first missing event.",
          "json": "first_lost_sequence",
          "json_type": "integer",
          "name": "FirstLostSequence",
          "required": true,
          "type": "uint64"
        },
        {
          "constraints": "Inclusive last missing event; synthetic drop event sequence equals this cursor, so retained sequences are never renumbered.",
          "json": "last_lost_sequence",
          "json_type": "integer",
          "name": "LastLostSequence",
          "required": true,
          "type": "uint64"
        }
      ],
      "name": "EventsDropped"
    },
    {
      "fields": [
        {
          "constraints": "Accepted mark label, 1..128 UTF-8 bytes; receipt of queued dump work, not proof of disk output.",
          "json": "label",
          "json_type": "string",
          "name": "Label",
          "required": true,
          "type": "string"
        },
        {
          "constraints": "Accepted mark command sequence returned by POST /v1/control; distinct from event and telemetry sample cursors.",
          "json": "native_sequence",
          "json_type": "integer",
          "name": "NativeSequence",
          "required": true,
          "type": "uint64"
        },
        {
          "constraints": "Authorizing application grant generation; session capability is never published.",
          "json": "generation",
          "json_type": "integer",
          "name": "Generation",
          "required": true,
          "type": "uint64"
        }
      ],
      "name": "TelemetryMarkEvent"
    },
    {
      "fields": [
        {
          "constraints": "Strictly increasing within adapter_incarnation; drop records use last_lost_sequence; no renumbering.",
          "json": "sequence",
          "json_type": "integer",
          "name": "Sequence",
          "required": true,
          "type": "uint64"
        },
        {
          "constraints": "Native observation host time, except telemetry_mark uses adapter host monotonic time after native acceptance; never proof of motion or disk output.",
          "json": "time_ns",
          "json_type": "integer",
          "name": "TimeNS",
          "required": true,
          "type": "uint64"
        },
        {
          "constraints": "grant_acquired, grant_renewed, grant_released, grant_expired, grant_revoked, enable_changed, arm_changed, handle_transition, execution_started, execution_completed, execution_faulted, execution_aborted, jog_begin, jog_end, jog_expired, jog_ramping, jog_limited, fault_latched, fault_cleared, home_epoch_changed, daemon_incarnation_changed, adapter_incarnation_changed, publisher_overflow, events_dropped, telemetry_mark",
          "json": "type",
          "json_type": "string",
          "name": "Type",
          "required": true,
          "type": "string"
        },
        {
          "constraints": "Native daemon publication; time_ns identifies the observation, never adapter-estimated motion.",
          "json": "daemon_incarnation",
          "json_type": "string",
          "name": "DaemonIncarnation",
          "required": true,
          "type": "string"
        },
        {
          "constraints": "Native daemon publication; time_ns identifies the observation, never adapter-estimated motion.",
          "json": "adapter_incarnation",
          "json_type": "string",
          "name": "AdapterIncarnation",
          "required": true,
          "type": "string"
        },
        {
          "constraints": "Native daemon publication; time_ns identifies the observation, never adapter-estimated motion.",
          "json": "grant",
          "json_type": "object",
          "name": "Grant",
          "omit_empty": true,
          "required": false,
          "type": "*GrantEvent"
        },
        {
          "constraints": "Native daemon publication; time_ns identifies the observation, never adapter-estimated motion.",
          "json": "handle",
          "json_type": "object",
          "name": "Handle",
          "omit_empty": true,
          "required": false,
          "type": "*HandleTransitionEvent"
        },
        {
          "constraints": "Native daemon publication; time_ns identifies the observation, never adapter-estimated motion.",
          "json": "execution",
          "json_type": "object",
          "name": "Execution",
          "omit_empty": true,
          "required": false,
          "type": "*ExecutionEvent"
        },
        {
          "constraints": "Native daemon publication; time_ns identifies the observation, never adapter-estimated motion.",
          "json": "jog",
          "json_type": "object",
          "name": "Jog",
          "omit_empty": true,
          "required": false,
          "type": "*JogEvent"
        },
        {
          "constraints": "Native daemon publication; time_ns identifies the observation, never adapter-estimated motion.",
          "json": "fault",
          "json_type": "object",
          "name": "Fault",
          "omit_empty": true,
          "required": false,
          "type": "*FaultEvent"
        },
        {
          "constraints": "Native daemon publication; time_ns identifies the observation, never adapter-estimated motion.",
          "json": "enable",
          "json_type": "object",
          "name": "Enable",
          "omit_empty": true,
          "required": false,
          "type": "*EnableEvent"
        },
        {
          "constraints": "Native daemon publication; time_ns identifies the observation, never adapter-estimated motion.",
          "json": "epoch",
          "json_type": "object",
          "name": "Epoch",
          "omit_empty": true,
          "required": false,
          "type": "*EpochEvent"
        },
        {
          "constraints": "Native daemon publication; time_ns identifies the observation, never adapter-estimated motion.",
          "json": "incarnation",
          "json_type": "object",
          "name": "Incarnation",
          "omit_empty": true,
          "required": false,
          "type": "*IncarnationEvent"
        },
        {
          "constraints": "Native daemon publication; time_ns identifies the observation, never adapter-estimated motion.",
          "json": "overflow",
          "json_type": "object",
          "name": "Overflow",
          "omit_empty": true,
          "required": false,
          "type": "*PublisherOverflowEvent"
        },
        {
          "constraints": "Native daemon publication; time_ns identifies the observation, never adapter-estimated motion.",
          "json": "events_dropped",
          "json_type": "object",
          "name": "Dropped",
          "omit_empty": true,
          "required": false,
          "type": "*EventsDropped"
        },
        {
          "constraints": "Present for telemetry_mark only, once per accepted mark command; rejected commands produce no mark event.",
          "json": "mark",
          "json_type": "object",
          "name": "Mark",
          "omit_empty": true,
          "required": false,
          "type": "*TelemetryMarkEvent"
        }
      ],
      "name": "Event"
    },
    {
      "fields": [
        {
          "constraints": "At most 64 records, including at most one leading events_dropped record; 256 retained events.",
          "json": "events",
          "json_type": "array",
          "name": "Events",
          "required": true,
          "type": "[]Event"
        },
        {
          "constraints": "Resume cursor after the last returned event; unchanged when empty.",
          "json": "next_sequence",
          "json_type": "integer",
          "name": "NextSequence",
          "required": true,
          "type": "uint64"
        },
        {
          "constraints": "Newest retained sequence at batch capture.",
          "json": "latest_sequence",
          "json_type": "integer",
          "name": "LatestSequence",
          "required": true,
          "type": "uint64"
        },
        {
          "constraints": "Native daemon publication; time_ns identifies the observation, never adapter-estimated motion.",
          "json": "adapter_incarnation",
          "json_type": "string",
          "name": "AdapterIncarnation",
          "required": true,
          "type": "string"
        }
      ],
      "name": "EventBatch"
    },
    {
      "name": "TelemetryBatch",
      "binary": true,
      "fields": [
        {
          "name": "DaemonIncarnation",
          "json": "daemon_incarnation",
          "type": "string",
          "json_type": "binary",
          "required": true,
          "constraints": "32 lowercase hex bytes identifying the daemon owning these sequences; reconnect must reconcile changes."
        },
        {
          "name": "AdapterIncarnation",
          "json": "adapter_incarnation",
          "type": "string",
          "json_type": "binary",
          "required": true,
          "constraints": "32 lowercase hex bytes identifying the adapter incarnation."
        },
        {
          "name": "MachineSHA256",
          "json": "machine_sha256",
          "type": "string",
          "json_type": "binary",
          "required": true,
          "constraints": "64 lowercase hex machine digest bytes."
        },
        {
          "name": "DeploymentSHA256",
          "json": "deployment_sha256",
          "type": "string",
          "json_type": "binary",
          "required": true,
          "constraints": "64 lowercase hex deployment digest bytes."
        },
        {
          "name": "CyclePeriodNS",
          "json": "cycle_period_ns",
          "type": "uint64",
          "json_type": "binary",
          "required": true,
          "constraints": "Cycle period in ns."
        },
        {
          "name": "AxisCount",
          "json": "axis_count",
          "type": "uint32",
          "json_type": "binary",
          "required": true,
          "constraints": "Active axes, 1 through 16."
        },
        {
          "name": "RecordLayoutDigest",
          "json": "record_layout_digest",
          "type": "string",
          "json_type": "binary",
          "required": true,
          "constraints": "64 ASCII hex bytes from the generated transitive CycleCaptureRecordV2 layout digest."
        },
        {
          "name": "FirstSequence",
          "json": "first_sequence",
          "type": "uint64",
          "json_type": "binary",
          "required": true,
          "constraints": "First included sequence; zero when empty."
        },
        {
          "name": "LastSequence",
          "json": "last_sequence",
          "type": "uint64",
          "json_type": "binary",
          "required": true,
          "constraints": "Last included sequence or after+dropped when empty; resume cursor."
        },
        {
          "name": "Dropped",
          "json": "dropped",
          "type": "uint64",
          "json_type": "binary",
          "required": true,
          "constraints": "Exact number of records lost after the requested cursor and before this batch."
        },
        {
          "name": "RecordCount",
          "json": "record_count",
          "type": "uint32",
          "json_type": "binary",
          "required": true,
          "constraints": "Number of complete records, at most min(ring capacity,4096)."
        },
        {
          "name": "Records",
          "json": "records",
          "type": "[]uint8",
          "json_type": "binary",
          "required": true,
          "constraints": "Opaque binary body; never encoded as JSON or base64. Each CycleCaptureAxisV2 appends velocity_actual_counts_per_s (i32), following_error_counts (i32), velocity_actual_valid (u32 0/1), following_error_valid (u32 0/1). Drive position-frame counts/s and counts; following error also feeds the configured collision watchdog. No speed-safety certification."
        }
      ]
    },
    {
      "name": "IoInput",
      "go_alias": "ipcclient.IoInput",
      "fields": [
        {
          "name": "Name",
          "json": "name",
          "type": "string",
          "json_type": "string",
          "required": true,
          "constraints": "Native cycle observation or bounded marker intent; physical readback is independent."
        },
        {
          "name": "Value",
          "json": "value",
          "type": "bool",
          "json_type": "boolean",
          "required": true,
          "constraints": "Native cycle observation or bounded marker intent; physical readback is independent."
        },
        {
          "name": "Valid",
          "json": "valid",
          "type": "bool",
          "json_type": "boolean",
          "required": true,
          "constraints": "Native cycle observation or bounded marker intent; physical readback is independent."
        },
        {
          "name": "ObservedNS",
          "json": "observed_ns",
          "type": "uint64",
          "json_type": "integer",
          "required": true,
          "constraints": "Native cycle observation or bounded marker intent; physical readback is independent."
        },
        {
          "name": "Bit",
          "json": "bit",
          "type": "uint32",
          "json_type": "integer",
          "required": true,
          "constraints": "Native cycle observation or bounded marker intent; physical readback is independent."
        },
        {
          "name": "Fast",
          "json": "fast",
          "type": "bool",
          "json_type": "boolean",
          "required": true,
          "constraints": "Native cycle observation or bounded marker intent; physical readback is independent."
        }
      ]
    },
    {
      "name": "IoOutput",
      "go_alias": "ipcclient.IoOutput",
      "fields": [
        {
          "name": "Name",
          "json": "name",
          "type": "string",
          "json_type": "string",
          "required": true,
          "constraints": "Native cycle observation or bounded marker intent; physical readback is independent."
        },
        {
          "name": "Intent",
          "json": "intent",
          "type": "bool",
          "json_type": "boolean",
          "required": true,
          "constraints": "Native cycle observation or bounded marker intent; physical readback is independent."
        },
        {
          "name": "Commanded",
          "json": "commanded",
          "type": "bool",
          "json_type": "boolean",
          "required": true,
          "constraints": "Native cycle observation or bounded marker intent; physical readback is independent."
        },
        {
          "name": "Readback",
          "json": "readback",
          "type": "bool",
          "json_type": "boolean",
          "required": true,
          "constraints": "Native cycle observation or bounded marker intent; physical readback is independent."
        },
        {
          "name": "Valid",
          "json": "valid",
          "type": "bool",
          "json_type": "boolean",
          "required": true,
          "constraints": "Native cycle observation or bounded marker intent; physical readback is independent."
        },
        {
          "name": "ExpiryNS",
          "json": "expiry_ns",
          "type": "uint64",
          "json_type": "integer",
          "required": true,
          "constraints": "Native cycle observation or bounded marker intent; physical readback is independent."
        },
        {
          "name": "ObservedNS",
          "json": "observed_ns",
          "type": "uint64",
          "json_type": "integer",
          "required": true,
          "constraints": "Native cycle observation or bounded marker intent; physical readback is independent."
        },
        {
          "name": "ChangedNS",
          "json": "changed_ns",
          "type": "uint64",
          "json_type": "integer",
          "required": true,
          "constraints": "Native cycle observation or bounded marker intent; physical readback is independent."
        },
        {
          "name": "MarkerSampleNS",
          "json": "marker_sample_ns",
          "type": "uint64",
          "json_type": "integer",
          "required": true,
          "constraints": "Native cycle observation or bounded marker intent; physical readback is independent."
        },
        {
          "name": "MarkerCycle",
          "json": "marker_cycle",
          "type": "uint64",
          "json_type": "integer",
          "required": true,
          "constraints": "Native cycle observation or bounded marker intent; physical readback is independent."
        },
        {
          "name": "Bit",
          "json": "bit",
          "type": "uint32",
          "json_type": "integer",
          "required": true,
          "constraints": "Native cycle observation or bounded marker intent; physical readback is independent."
        },
        {
          "name": "Torch",
          "json": "torch",
          "type": "bool",
          "json_type": "boolean",
          "required": true,
          "constraints": "Native cycle observation or bounded marker intent; physical readback is independent."
        }
      ]
    },
    {
      "name": "IoState",
      "go_alias": "ipcclient.IoState",
      "fields": [
        {
          "name": "TimeNS",
          "json": "time_ns",
          "type": "uint64",
          "json_type": "integer",
          "required": true,
          "constraints": "Native cycle observation or bounded marker intent; physical readback is independent."
        },
        {
          "name": "Cycle",
          "json": "cycle",
          "type": "uint64",
          "json_type": "integer",
          "required": true,
          "constraints": "Native cycle observation or bounded marker intent; physical readback is independent."
        },
        {
          "name": "Armed",
          "json": "armed",
          "type": "bool",
          "json_type": "boolean",
          "required": true,
          "constraints": "Native cycle observation or bounded marker intent; physical readback is independent."
        },
        {
          "name": "Reason",
          "json": "reason",
          "type": "uint32",
          "json_type": "integer",
          "required": true,
          "constraints": "Native cycle observation or bounded marker intent; physical readback is independent."
        },
        {
          "name": "Inputs",
          "json": "inputs",
          "type": "[]IoInput",
          "json_type": "array",
          "required": true,
          "constraints": "Native cycle observation or bounded marker intent; physical readback is independent."
        },
        {
          "name": "Outputs",
          "json": "outputs",
          "type": "[]IoOutput",
          "json_type": "array",
          "required": true,
          "constraints": "Native cycle observation or bounded marker intent; physical readback is independent."
        }
      ]
    },
    {
      "name": "ResourceInfo",
      "fields": [
        {
          "constraints": "Description-relative path (robot_description_manifest.json, robot.urdf, meshes/<file>, rtcore_definition.json, ...) or machine_planning_calibration.json. Never a server filesystem path.",
          "json": "path",
          "json_type": "string",
          "name": "Path",
          "required": true,
          "type": "string"
        },
        {
          "constraints": "Lowercase SHA-256 of the exact resource bytes.",
          "json": "sha256",
          "json_type": "string",
          "name": "SHA256",
          "required": true,
          "type": "string"
        },
        {
          "constraints": "Exact resource byte count; unverified maximum 33554432 bytes.",
          "json": "bytes",
          "json_type": "integer",
          "name": "Bytes",
          "required": true,
          "type": "uint64"
        },
        {
          "constraints": "application/json, application/xml, model/vnd.collada+xml, model/stl or application/octet-stream.",
          "json": "media_type",
          "json_type": "string",
          "name": "MediaType",
          "required": true,
          "type": "string"
        }
      ]
    },
    {
      "name": "RobotDescription",
      "fields": [
        {
          "constraints": "The robot description's model id: the directory name under robot_description/robots/ the machine was compiled with.",
          "json": "model_id",
          "json_type": "string",
          "name": "ModelID",
          "required": true,
          "type": "string"
        },
        {
          "constraints": "sha256:<64 lowercase hex>, the description's manifest identity over the resources it registers (docs/ROBOT-DESCRIPTION-CONTRACT.md); the identity a plan's header must carry.",
          "json": "robot_description_sha256",
          "json_type": "string",
          "name": "RobotDescriptionSHA256",
          "required": true,
          "type": "string"
        },
        {
          "constraints": "sha256:<64 lowercase hex> of the served machine_planning_calibration.json bytes, this machine's deviation from the description; the identity a plan's header must carry.",
          "json": "machine_planning_calibration_sha256",
          "json_type": "string",
          "name": "MachinePlanningCalibrationSHA256",
          "required": true,
          "type": "string"
        },
        {
          "constraints": "The description's manifest and every file it registers, by description-relative path, plus machine_planning_calibration.json; unverified maximum 1024 entries and 134217728 distinct bytes.",
          "json": "resources",
          "json_type": "array",
          "name": "Resources",
          "required": true,
          "type": "[]ResourceInfo"
        }
      ]
    },
    {
      "name": "DriveIdentity",
      "fields": [
        {
          "constraints": "Configured vendor expectation used by IgH slave matching; not an independent vendor readback.",
          "json": "expected_vendor_id",
          "json_type": "integer",
          "name": "ExpectedVendorID",
          "required": true,
          "type": "uint32"
        },
        {
          "constraints": "Configured product expectation used by IgH slave matching; not an independent product readback.",
          "json": "expected_product_code",
          "json_type": "integer",
          "name": "ExpectedProductCode",
          "required": true,
          "type": "uint32"
        },
        {
          "constraints": "Observed CoE 0x1018:3 firmware revision; distinct from the configured SII revision and never substituted from configuration.",
          "json": "observed_coe_revision",
          "json_type": "integer",
          "name": "ObservedCoERevision",
          "required": true,
          "type": "uint32"
        }
      ]
    },
    {
      "name": "DriveDescription",
      "fields": [
        {
          "constraints": "Configured axis ID in native axis order.",
          "json": "axis",
          "json_type": "string",
          "name": "Axis",
          "required": true,
          "type": "string"
        },
        {
          "constraints": "Compiled drive configuration name.",
          "json": "config_name",
          "json_type": "string",
          "name": "ConfigName",
          "required": true,
          "type": "string"
        },
        {
          "constraints": "SHA-256 of canonical drive configuration content used in the compiled identity.",
          "json": "config_sha256",
          "json_type": "string",
          "name": "ConfigSHA256",
          "required": true,
          "type": "string"
        },
        {
          "constraints": "Configured EtherCAT slave position.",
          "json": "slave_position",
          "json_type": "integer",
          "name": "SlavePosition",
          "required": true,
          "type": "uint16"
        },
        {
          "constraints": "Null unless current native configuration verification and CoE revision readback are valid. Vendor/product are configured expectations, revision is observed. Simulation synthesizes vendor/product from the profile and cannot independently inject their mismatch.",
          "json": "verified_identity",
          "json_type": "object",
          "name": "VerifiedIdentity",
          "required": false,
          "type": "*DriveIdentity"
        }
      ]
    }
  ]
}
