{
  "kind": "adapter_manifest",
  "expect": "valid",
  "description": "Claude v1-conformance manifest, native_hook mode",
  "data": {
    "contract_version": "lifeloop.v0.2",
    "adapter_id": "claude",
    "adapter_version": "0.1.0",
    "display_name": "Claude",
    "role": "primary_worker",
    "integration_modes": ["native_hook"],
    "lifecycle_events": {
      "session.starting": { "support": "native", "modes": ["native_hook"] },
      "session.started":  { "support": "native", "modes": ["native_hook"] },
      "frame.opening":    { "support": "native", "modes": ["native_hook"] },
      "frame.opened":     { "support": "native", "modes": ["native_hook"] },
      "context.pressure_observed": { "support": "native", "modes": ["native_hook"] },
      "context.compacted": { "support": "unavailable" },
      "frame.ending":     { "support": "native", "modes": ["native_hook"] },
      "frame.ended":      { "support": "native", "modes": ["native_hook"] },
      "session.ending":   { "support": "native", "modes": ["native_hook"] },
      "session.ended":    { "support": "native", "modes": ["native_hook"] },
      "supervisor.tick":  { "support": "unavailable" },
      "capability.degraded": { "support": "synthesized", "modes": ["native_hook"] },
      "receipt.emitted":  { "support": "synthesized", "modes": ["native_hook"] },
      "receipt.gap_detected": { "support": "unavailable" }
    },
    "placement": {
      "pre_session":         { "support": "native", "max_bytes": 16384 },
      "pre_frame_leading":   { "support": "native", "max_bytes": 16384 },
      "pre_frame_trailing":  { "support": "unavailable" },
      "tool_result":         { "support": "unavailable" },
      "manual_operator":     { "support": "manual" }
    },
    "context_pressure": {
      "support": "native",
      "evidence": "Claude emits PreCompact and SessionEnd events that map directly to context.pressure_observed"
    },
    "receipts": {
      "native": false,
      "lifeloop_synthesized": true,
      "receipt_ledger": "unavailable"
    },
    "session_identity": {
      "harness_session_id": "native",
      "harness_run_id": "synthesized",
      "harness_task_id": "unavailable"
    },
    "failure_modes": ["transport_error", "payload_too_large"]
  }
}
