VerseVDI-Protocol
The Phase 3A Protocol repository is the sole source of VerseVDI wire contracts. OpenAPI, JSON Schema, Protobuf, registries, and conformance fixtures live here; the Connection Server consumes generated Go bindings and remains the authority for authentication, authorization, persistence, licensing, and provider policy.
Scope
Phase 3A defines versioned control requests/responses, native device contracts, subject-scoped resources, broker actions, gateway-only manifests, resumable control events, registered control datagrams, and bounded text clipboard. It does not implement a gateway, provider transport, media forwarding, file transfer, or a second authentication or datastore path.
Verification
Run make verify after editing a source schema, registry, Protobuf definition,
or fixture. The command validates source bounds and scope, regenerates Go/Rust/
Swift bindings and Protobuf descriptors, compiles generated bindings, runs the
shared Go/Rust/Swift corpus, checks datagram frames, and fails if regeneration
would dirty the checkout.
Generated files under gen/ are never edited by hand. VERSION,
compatibility.json, and the content-addressed fixture manifest identify the
release inputs. A Protocol release candidate is not valid until all consumers
report the same fixture hash and clean-checkout regeneration evidence.
Private Go module
The canonical Go module is
git.sechmachine.io.vn/sechmachine/VerseVDI-Protocol. Private consumers must
resolve an exact Gitea tag and must not use a filesystem replace; the Gitea
workflow verifies this module identity and builds the Go packages on Linux.