{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "type": "object",
  "properties": {
    "profile": {
      "type": "string",
      "const": "owp-docs-draft/0.1",
      "description": "Draft discriminator. This value is not OWP v0.4 conformance or an alpha wire profile."
    },
    "nonce": {
      "type": "string",
      "pattern": "^[a-f0-9]{64}$",
      "description": "Source requires random 256-bit nonce; hexadecimal encoding is draft."
    },
    "state_hash": {
      "type": "string",
      "pattern": "^[a-f0-9]{64}$",
      "description": "SHA-256, lowercase hexadecimal. Encoding is a draft choice."
    },
    "active_grants": {
      "maxItems": 1000,
      "type": "array",
      "items": {
        "type": "string",
        "pattern": "^grant_[A-Za-z0-9]{8,64}$",
        "description": "Source defines the prefix; this draft chooses an 8–64 character alphanumeric suffix."
      }
    },
    "vault_access_count_since_last_heartbeat": {
      "type": "integer",
      "minimum": 0,
      "maximum": 9007199254740991
    }
  },
  "required": [
    "profile",
    "nonce",
    "state_hash",
    "active_grants",
    "vault_access_count_since_last_heartbeat"
  ],
  "additionalProperties": false,
  "description": "Unsigned draft telemetry only. Heartbeat MAC/key semantics are unresolved; never treat this object as liveness authentication.",
  "title": "HeartbeatResponse",
  "$comment": "owp-docs-draft/0.1: proposed documentation shape only. Source: https://app.notion.com/p/338ed9cb3201819d96e9fc7b8e88594a §4.5 · unresolved authentication. No production conformance claim."
}
