online.fg-goose.gsb.defs

ember.delve.town

{
  "$type": "com.atproto.lexicon.schema",
  "defs": {
    "answerView": {
      "description": "The caller's projected turn answer. Preview outcomes use previewView, whose schema has no receipt.",
      "properties": {
        "$type": {
          "const": "online.fg-goose.gsb.defs#answerView",
          "type": "string"
        },
        "card": {
          "description": "The exact card the turn offered (or, for a try, would offer), as the caller may read it.",
          "type": "string"
        },
        "cardCid": {
          "description": "CID of the exact offered card encoded as a DAG-CBOR string, including its trailing newline; not a repository record CID.",
          "format": "cid",
          "type": "string"
        },
        "offers": {
          "description": "Cards offered to the caller, verbatim.",
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        "outcome": {
          "ref": "online.fg-goose.gsb.defs#outcome",
          "type": "ref"
        },
        "receipt": {
          "ref": "online.fg-goose.gsb.defs#receipt",
          "type": "ref"
        },
        "trace": {
          "ref": "online.fg-goose.gsb.defs#trace",
          "type": "ref"
        },
        "turns": {
          "items": {
            "ref": "#answerView",
            "type": "ref"
          },
          "maxLength": 4,
          "type": "array"
        }
      },
      "required": [
        "outcome"
      ],
      "type": "object"
    },
    "call": {
      "description": "One untagged call: exactly {spell}, or {object, verb, fields?}. Shared wire judgement enforces the exclusive forms; fields must be a JSON object.",
      "properties": {
        "fields": {
          "description": "The verb's fields as a JSON object.",
          "type": "unknown"
        },
        "object": {
          "description": "The object id.",
          "maxLength": 128,
          "minLength": 1,
          "type": "string"
        },
        "spell": {
          "description": "A spell: the delvetalk line and its field lines.",
          "maxLength": 4096,
          "minLength": 1,
          "type": "string"
        },
        "verb": {
          "description": "The verb or method name.",
          "maxLength": 128,
          "minLength": 1,
          "type": "string"
        }
      },
      "type": "object"
    },
    "moved": {
      "properties": {
        "now": {
          "description": "The version the object stands at.",
          "minimum": 0,
          "type": "integer"
        },
        "object": {
          "type": "string"
        },
        "was": {
          "description": "The version the pin named.",
          "minimum": 0,
          "type": "integer"
        }
      },
      "required": [
        "object",
        "was",
        "now"
      ],
      "type": "object"
    },
    "outcome": {
      "properties": {
        "class": {
          "description": "A refusal's class.",
          "type": "string"
        },
        "clause": {
          "type": "string"
        },
        "line": {
          "description": "The host's stamp line as the public reads it: a refusal's only when the host gives it a public projection.",
          "type": "string"
        },
        "moved": {
          "items": {
            "ref": "#moved",
            "type": "ref"
          },
          "type": "array"
        },
        "reason": {
          "type": "string"
        },
        "status": {
          "enum": [
            "admitted",
            "refused",
            "suspended",
            "moved",
            "unsupported",
            "spells",
            "usage",
            "unreached",
            "invalid",
            "error",
            "unknown",
            "denied",
            "looked",
            "receipt"
          ],
          "type": "string"
        }
      },
      "required": [
        "status",
        "line"
      ],
      "type": "object"
    },
    "pin": {
      "description": "Commit-if-unchanged: the object must stand at this version (and state CID) when the turn commits, else the turn is refused `moved`.",
      "properties": {
        "cid": {
          "description": "The object's stateCid at that version (an object projection's of CID).",
          "format": "cid",
          "type": "string"
        },
        "object": {
          "type": "string"
        },
        "version": {
          "minimum": 0,
          "type": "integer"
        }
      },
      "required": [
        "object",
        "version"
      ],
      "type": "object"
    },
    "planCall": {
      "description": "One spell only; a plan never contains object calls.",
      "properties": {
        "spell": {
          "description": "A spell: the delvetalk line and its field lines.",
          "maxLength": 4096,
          "minLength": 1,
          "type": "string"
        }
      },
      "required": [
        "spell"
      ],
      "type": "object"
    },
    "previewOutcome": {
      "properties": {
        "class": {
          "description": "A refusal's class.",
          "type": "string"
        },
        "clause": {
          "type": "string"
        },
        "line": {
          "description": "The host's stamp line as the public reads it: a refusal's only when the host gives it a public projection.",
          "type": "string"
        },
        "moved": {
          "items": {
            "ref": "#moved",
            "type": "ref"
          },
          "type": "array"
        },
        "reason": {
          "type": "string"
        },
        "status": {
          "const": "previewed",
          "type": "string"
        }
      },
      "required": [
        "status",
        "line"
      ],
      "type": "object"
    },
    "previewView": {
      "description": "A projected world-try reply, returned only. No receipt, slug, entry or record is claimed.",
      "properties": {
        "$type": {
          "const": "online.fg-goose.gsb.defs#previewView",
          "type": "string"
        },
        "card": {
          "description": "The exact card the turn offered (or, for a try, would offer), as the caller may read it.",
          "type": "string"
        },
        "cardCid": {
          "description": "CID of the exact offered card encoded as a DAG-CBOR string, including its trailing newline; not a repository record CID.",
          "format": "cid",
          "type": "string"
        },
        "offers": {
          "description": "Cards offered to the caller, verbatim.",
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        "outcome": {
          "ref": "#previewOutcome",
          "type": "ref"
        },
        "trace": {
          "ref": "online.fg-goose.gsb.defs#trace",
          "type": "ref"
        },
        "turns": {
          "items": {
            "ref": "#previewView",
            "type": "ref"
          },
          "maxLength": 4,
          "type": "array"
        }
      },
      "required": [
        "$type",
        "outcome"
      ],
      "type": "object"
    },
    "receipt": {
      "description": "The journal entry the turn made. Absent from a preview, which can never pass for a receipt.",
      "properties": {
        "entry": {
          "description": "The entry's hash: the CID of its canonical DAG-CBOR without `hash`, signed in the world's repository.",
          "type": "cid-link"
        },
        "height": {
          "minimum": 1,
          "type": "integer"
        },
        "slug": {
          "description": "Two proquint words: what a post cites.",
          "type": "string"
        }
      },
      "required": [
        "slug",
        "height",
        "entry"
      ],
      "type": "object"
    },
    "trace": {
      "description": "What the turn read and moved, over objects the reader may view.",
      "properties": {
        "fired": {
          "description": "Rules fired, as journaled.",
          "items": {
            "type": "unknown"
          },
          "type": "array"
        },
        "revealed": {
          "description": "The host's revealed lines, verbatim.",
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        "roots": {
          "description": "Objects read, at the versions read.",
          "items": {
            "ref": "#version",
            "type": "ref"
          },
          "type": "array"
        },
        "unwanted": {
          "description": "Wants closed.",
          "items": {
            "ref": "#wantChange",
            "type": "ref"
          },
          "type": "array"
        },
        "wanted": {
          "description": "Wants opened.",
          "items": {
            "ref": "#wantChange",
            "type": "ref"
          },
          "type": "array"
        },
        "writes": {
          "description": "Objects written, each with its new version and stateCid.",
          "items": {
            "ref": "#version",
            "type": "ref"
          },
          "type": "array"
        }
      },
      "type": "object"
    },
    "version": {
      "properties": {
        "object": {
          "type": "string"
        },
        "stateCid": {
          "format": "cid",
          "type": "string"
        },
        "version": {
          "minimum": 0,
          "type": "integer"
        }
      },
      "required": [
        "object",
        "version"
      ],
      "type": "object"
    },
    "wantChange": {
      "properties": {
        "object": {
          "type": "string"
        },
        "want": {
          "type": "string"
        }
      },
      "required": [
        "object",
        "want"
      ],
      "type": "object"
    }
  },
  "description": "Shared definitions for acting on a DelveTalk world (docs/ATPROTO.md section 2).",
  "id": "online.fg-goose.gsb.defs",
  "lexicon": 1
}

Validate Record

Validate a record against online.fg-goose.gsb.defs

Validation Options
Treat any remaining unresolved references as valid

Metadata

DID
did:plc:6amo7col5h4ciq2gpm5eur7b
CID
bafyreibyln2xtqw5wa22wqqkt56v3ogjwq5eyyuuzfmsymtyunu6wov6gy
Indexed At
2026-10-13 22:54 UTC
AT-URI
at://did:plc:6amo7col5h4ciq2gpm5eur7b/com.atproto.lexicon.schema/online.fg-goose.gsb.defs

Similar Lexicons

Lexicons whose schemas describe something close to this one. Check them before publishing a new one that overlaps.

  • The public projection of a request or XRPC act/plan turn, served through world projection queries and written as a posting-account record; absent from the world signed MST. Private caller responses and previews are neve…

  • A public act on a DelveTalk world, written by its author in their own repository. Public from the moment it is written: never a draft, never a preview (use online.fg-goose.gsb.try).

Lexicon Garden

@