social.wips.comment

wips.social

{
  "$type": "com.atproto.lexicon.schema",
  "defs": {
    "main": {
      "description": "Native wips.social comment / reply record.",
      "key": "tid",
      "record": {
        "properties": {
          "createdAt": {
            "description": "Client-declared timestamp when the comment was originally created.",
            "format": "datetime",
            "type": "string"
          },
          "facets": {
            "description": "Rich-text annotations (mentions, links, tags) over text, using official app.bsky.richtext.facet. Application validators enforce UTF-8 codepoint-aligned byte ranges, per-facet feature caps, and http(s) link URIs. Ceiling keeps worst-case DAG-CBOR under the explicit record budget.",
            "items": {
              "ref": "app.bsky.richtext.facet",
              "type": "ref"
            },
            "maxLength": 30,
            "type": "array"
          },
          "labels": {
            "description": "Open union for forward compatibility. Current app authoring/validation requires com.atproto.label.defs#selfLabels when present; unknown variants are not treated as self-labels. External moderation labels stay out of the record.",
            "refs": [
              "com.atproto.label.defs#selfLabels"
            ],
            "type": "union"
          },
          "langs": {
            "description": "Indicates human language(s) of the comment primary text content (BCP 47).",
            "items": {
              "format": "language",
              "type": "string"
            },
            "maxLength": 3,
            "type": "array"
          },
          "media": {
            "description": "Ordered media items. May freely mix images and videos using shared social.wips.defs media objects. Same app media safety policy as updates.",
            "items": {
              "refs": [
                "social.wips.defs#image",
                "social.wips.defs#video"
              ],
              "type": "union"
            },
            "maxLength": 50,
            "type": "array"
          },
          "parent": {
            "description": "When present, AT URI of the immediate parent social.wips.comment. Omitted for top-level comments.",
            "ref": "social.wips.defs#uriRef",
            "type": "ref"
          },
          "subject": {
            "description": "AT URI of the root social.wips.update.",
            "ref": "social.wips.defs#uriRef",
            "type": "ref"
          },
          "text": {
            "description": "Optional comment body text. Required by application semantics when facets are present; at least one of non-whitespace text or known image/video media is required overall.",
            "maxGraphemes": 8000,
            "maxLength": 80000,
            "type": "string"
          }
        },
        "required": [
          "subject",
          "createdAt"
        ],
        "type": "object"
      },
      "type": "record"
    }
  },
  "description": "Comment on a wips.social update. Top-level comments omit parent; replies set parent to the immediate comment being answered. subject always points at the root update. Body may be text, ordered media, or both (application validators require at least one of non-whitespace text or known image/video media; unknown open-union media variants do not satisfy content alone). Optional rich-text facets (app.bsky.richtext.facet), langs, and labels (open union; current app policy requires selfLabels). Comments are not edited through wips.social (create/delete only) — that is App View/write policy, not a Lexicon/PDS immutability guarantee. Protocol ceilings stay generous while keeping worst-case DAG-CBOR size under the explicit budget.",
  "id": "social.wips.comment",
  "lexicon": 1
}

Validate Record

Validate a record against social.wips.comment

Validation Options
Automatically resolve and include external schemas for full validation
Treat any remaining unresolved references as valid

Metadata

DID
did:plc:sodoi37wr44i3ypdwwlqqeup
CID
bafyreid6feth4oqgwttspvjndziznswanbtrbmgjuqzzvdyhhwedl2g7ma
Indexed At
2026-07-26 01:50 UTC
AT-URI
at://did:plc:sodoi37wr44i3ypdwwlqqeup/com.atproto.lexicon.schema/social.wips.comment

Referenced Schemas (5)

Similar Lexicons

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

  • A Markdown comment on a canonical subject or a reply to another comment.

  • A project update with optional text, ordered mixed media, ordered links, and optional rich-text facets. Application validators require at least one of non-empty text, known image/video media, or links (media union stays…

  • A comment on a post. Optionally includes a single image with alt text and self-applied labels — same image shape as feed.post. Either text or image (or both) must be present in practice; the lexicon doesn't enforce th…

  • A comment on a post or another comment. Comments live in user repositories and support nested threading.

  • A comment on a 2bit.pics post record.

Lexicon Garden

@