feat(daemon): wire protocol with a type-safe method vocabulary and a generated OpenRPC contract

Methods and events are enums built by one macro, so every consumer matches
exhaustively: adding a member is a compile error until the dispatcher, the
published schema, and the remote client all handle it. docs/openrpc.json is
derived from the DTOs rather than hand-written, and a test fails the build
when the checked-in copy drifts.
This commit is contained in:
Michel de Graaf
2026-07-27 09:56:48 +02:00
parent e2813392ea
commit df089fbab3
8 changed files with 3481 additions and 0 deletions
+1
View File
@@ -44,4 +44,5 @@ keyring = { version = "3", features = ["apple-native", "windows-native", "async-
chrono = { version = "0.4.45", default-features = false, features = ["clock", "serde"] }
[dev-dependencies]
schemars = "1.2.1"
tempfile = "3"