Make the schema files match the server (closes #218)
check / check (push) Waiting to run

Each file in schema/ now describes what the HTTP API on next sends and
accepts. A numeric reply has its name in command and its number in code.
body is always an array of strings. MODE, KICK and JOIN carry their
values in body, and TOPIC needs a non-empty body. PING takes no token,
and its PONG is the HTTP response. A channel name is limited to 63
characters, and the leading # is optional from a client.

PUBKEY.json is deleted, since the server has no such command. The
section of schema/README.md that listed the differences is removed,
and the sentences it made false are corrected.

Model: opus-5-5
This commit was merged in pull request #242.
This commit is contained in:
2026-11-02 06:24:58 +01:00
parent 2b1a49e59b
commit 1e2f0de877
31 changed files with 561 additions and 330 deletions
+4 -10
View File
@@ -2,20 +2,14 @@
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://sneak.berlin/go/neoirc/schema/commands/PONG.json",
"title": "PONG",
"description": "Keepalive response. S2C or S2S. RFC 1459 §4.6.3.",
"description": "The answer to a PING. The server sends it as the HTTP response to the PING, with only 'command' and 'from'. A client's PONG gets ERR_UNKNOWNCOMMAND (421). RFC 1459 §4.6.3.",
"$ref": "../message.json",
"properties": {
"command": { "const": "PONG" },
"from": { "type": "string", "description": "Responding server name." },
"body": {
"type": "array",
"items": { "type": "string" },
"description": "Echoed token from PING (single-element array).",
"maxItems": 1
}
"from": { "type": "string", "description": "The server name." }
},
"required": ["command"],
"required": ["command", "from"],
"examples": [
{ "command": "PONG", "from": "server.example.com", "body": ["1707580000"] }
{ "command": "PONG", "from": "neoirc" }
]
}