at.functions.metadata

hamburgerz.bsky.social

Schema Diff

+5 -0

From

CID
bafyreihe2b4ontp...
Indexed At
2026-04-26 02:32 UTC
View this version

To

CID
bafyreidwdt7uloo...
Indexed At
2026-08-03 18:44 UTC
View this version

Compatibility Analysis

Backward Compatible

Backward compatible. 2 non-breaking changes.

Non-Breaking Changes (2)
  • AddedVertex AddedVertex { vertex_id: "at.functions.metadata:body.updatedAt" }
  • AddedEdge AddedEdge { src: "at.functions.metadata:body", tgt: "at.functions.metadata:body.updatedAt", kind: "prop", name: Some("updatedAt") }

Migration Guidance

Added Elements

  • AddedVertex { vertex_id: "at.functions.metadata:body.updatedAt" }

Additional Notes

  • Non-breaking: AddedEdge { src: "at.functions.metadata:body", tgt: "at.functions.metadata:body.updatedAt", kind: "prop", name: Some("updatedAt") }
1 1
{
2 2
  "id": "at.functions.metadata",
3 3
  "defs": {
4 4
    "main": {
5 5
      "key": "any",
6 6
      "type": "record",
7 7
      "record": {
8 8
        "type": "object",
9 9
        "required": [
10 10
          "name",
11 11
          "version",
12 12
          "mode",
13 13
          "code",
14 14
          "entrypoint",
15 15
          "inputEncoding",
16 16
          "outputEncoding"
17 17
        ],
18 18
        "properties": {
19 19
          "code": {
20 20
            "type": "blob",
21 21
            "accept": [
22 22
              "application/wasm"
23 23
            ],
24 24
            "description": "Compiled WebAssembly binary"
25 25
          },
26 26
          "mode": {
27 27
            "type": "string",
28 28
            "description": "Execution mode",
29 29
            "knownValues": [
30 30
              "pure-v1",
31 31
              "host-v1",
32 32
              "component-v1"
33 33
            ]
34 34
          },
35 35
          "name": {
36 36
            "type": "string",
37 37
            "maxLength": 128,
38 38
            "description": "Human-readable function name"
39 39
          },
40 40
          "public": {
41 41
            "type": "boolean",
42 42
            "default": true,
43 43
            "description": "Whether this function is publicly invocable"
44 44
          },
45 45
          "version": {
46 46
            "type": "string",
47 47
            "maxLength": 32,
48 48
            "description": "Semver string"
49 49
          },
50 +
          "updatedAt": {
51 +
            "type": "string",
52 +
            "maxLength": 64,
53 +
            "description": "Last update time (ISO 8601 string). Useful for ensuring deploys produce a repo commit."
54 +
          },
50 55
          "entrypoint": {
51 56
            "type": "string",
52 57
            "const": "run",
53 58
            "description": "WASM export name to call (always 'run')"
54 59
          },
55 60
          "description": {
56 61
            "type": "string",
57 62
            "maxLength": 2048,
58 63
            "description": "Optional description of what the function does"
59 64
          },
60 65
          "inputSchema": {
61 66
            "type": "unknown",
62 67
            "description": "Optional JSON Schema for input validation"
63 68
          },
64 69
          "maxMemoryMb": {
65 70
            "type": "integer",
66 71
            "default": 32,
67 72
            "maximum": 256,
68 73
            "minimum": 1,
69 74
            "description": "Memory limit in megabytes"
70 75
          },
71 76
          "allowedHosts": {
72 77
            "type": "array",
73 78
            "items": {
74 79
              "type": "string"
75 80
            },
76 81
            "description": "For host-v1: list of AT URIs the function may read from"
77 82
          },
78 83
          "outputSchema": {
79 84
            "type": "unknown",
80 85
            "description": "Optional JSON Schema for output description"
81 86
          },
82 87
          "inputEncoding": {
83 88
            "type": "string",
84 89
            "const": "application/json",
85 90
            "description": "Input encoding (always application/json)"
86 91
          },
87 92
          "maxDurationMs": {
88 93
            "type": "integer",
89 94
            "default": 100,
90 95
            "maximum": 5000,
91 96
            "minimum": 1,
92 97
            "description": "Execution timeout in milliseconds"
93 98
          },
94 99
          "outputEncoding": {
95 100
            "type": "string",
96 101
            "const": "application/json",
97 102
            "description": "Output encoding (always application/json)"
98 103
          }
99 104
        }
100 105
      },
101 106
      "description": "A WebAssembly function registered on AT Protocol"
102 107
    }
103 108
  },
104 109
  "$type": "com.atproto.lexicon.schema",
105 110
  "lexicon": 1
106 111
}

Compare Other Versions

Lexicon Garden

@