{
  "$type": "com.atproto.lexicon.schema",
  "defs": {
    "main": {
      "description": "An issue the reader has finished. A durable, meaningful event — not a page cursor. Page-level progress is deliberately NOT a repo record: it changes every few seconds and would mean hundreds of writes per issue against a host we don't run.",
      "key": "tid",
      "record": {
        "properties": {
          "createdAt": {
            "format": "datetime",
            "type": "string"
          },
          "issue": {
            "description": "AT-URI of the finished art.graphik.issue.",
            "format": "at-uri",
            "type": "string"
          },
          "readAt": {
            "description": "When the reader finished it.",
            "format": "datetime",
            "type": "string"
          },
          "series": {
            "description": "AT-URI of its series, denormalized so 'have I caught up' needs no lookup.",
            "format": "at-uri",
            "type": "string"
          }
        },
        "required": [
          "issue",
          "createdAt"
        ],
        "type": "object"
      },
      "type": "record"
    }
  },
  "id": "art.graphik.read",
  "lexicon": 1
}
