pet.trezy.shameOnYou

trezy.pet

{
  "id": "pet.trezy.shameOnYou",
  "defs": {
    "main": {
      "key": "any",
      "type": "record",
      "record": {
        "type": "object",
        "required": [
          "subject",
          "message",
          "errors",
          "noticedAt"
        ],
        "properties": {
          "errors": {
            "type": "array",
            "items": {
              "ref": "#error",
              "type": "ref"
            },
            "minLength": 1,
            "description": "Every refused record, one entry each. An array rather than one record per forgery so a repeat offender accumulates a growing list at a stable address instead of littering a collection — and so the whole history is legible in one read."
          },
          "message": {
            "type": "string",
            "maxLength": 640,
            "description": "The sentence a person reads. Written by the server so both copies say the same thing, and so it cannot be softened by a client."
          },
          "subject": {
            "type": "string",
            "format": "did",
            "description": "Whose forgeries these are. Carried in the body as well as being the rkey on the game's copy, because the copy in the offender's own repo has no rkey to read it from — and a record that names its subject can be quoted without its address."
          },
          "noticedAt": {
            "type": "string",
            "format": "datetime",
            "description": "When this note was last written. NOT when the forgery happened — each entry carries its own time — because the note is rewritten in place as more turn up."
          }
        }
      },
      "description": "A note that somebody was caught forging records. Written in TWO places for two different reasons: one copy in the game's own repo, keyed by the offender's DID, which they cannot delete and which is the durable account; and one copy in the offender's repo, which they can delete the moment they notice — and noticing is the point of that one. Neither is a punishment. Nothing in the game reads these records or behaves differently because one exists; the forged records were already refused at ingest, so the ledger was never wrong. This is the game saying it saw."
    },
    "error": {
      "type": "object",
      "required": [
        "cause",
        "uri"
      ],
      "properties": {
        "uri": {
          "type": "string",
          "format": "at-uri",
          "description": "The record that was refused. It is a real address in the offender's repo, so the claim can be checked rather than taken on trust — and it stays checkable after they delete it, because the URI is the evidence of what was attempted."
        },
        "cause": {
          "type": "string",
          "maxLength": 320,
          "description": "What was wrong, as a sentence rather than a code. ⚠ COMPOSED SERVER-SIDE. The ingest guards store a machine reason — `invalid-signature`, `replay` — and turning that into English in a client would put the accusation's wording in the hands of the accused."
        },
        "reason": {
          "type": "string",
          "maxLength": 64,
          "description": "The machine code behind `cause`, kept so a reader can group or count without parsing English. NOT an enum: a guard that learns a new refusal should not need every reader redeployed before it can say so.",
          "knownValues": [
            "invalid-signature",
            "missing-signature",
            "tampered",
            "replay",
            "duplicate",
            "malformed",
            "not-the-publisher",
            "procedure-only",
            "unchecked"
          ]
        },
        "noticedAt": {
          "type": "string",
          "format": "datetime",
          "description": "When this particular record was refused."
        }
      },
      "description": "One refused record."
    }
  },
  "$type": "com.atproto.lexicon.schema",
  "lexicon": 1
}

Validate Record

Validate a record against pet.trezy.shameOnYou

Validation Options
Treat any remaining unresolved references as valid

Metadata

DID
did:plc:ollch4g7tes2reb5eceiwuol
CID
bafyreief66kewn2hcrserwxsfiqnwu27ov7sjjgnzs4kbggytdr6tumntm
Indexed At
2026-08-09 16:18 UTC
AT-URI
at://did:plc:ollch4g7tes2reb5eceiwuol/com.atproto.lexicon.schema/pet.trezy.shameOnYou

Lexicon Garden

@