octoturge 99c1d038f9 Add InfoCommand as one fully-wired real example in bambulab.v1
The rest of proto/bambulab/ was pure boilerplate/comments with nothing
concrete to copy from. This one message (sequence_id + command, matching
Bambu's real get_version request) is wired all the way through: real
proto, real generated Rust struct, lib.rs actually include!'d instead of
commented out. continuum-proxy's bambu_protocol_demo example serializes it
and diffs the output against Bambu's actual wire JSON byte for byte.

Verified with cargo build (this crate) and cargo run --example
bambu_protocol_demo (continuum-proxy) - output matches exactly.
2026-08-28 22:41:42 +00:00

continuum-schemas

Single source of truth for the Continuum data model. Protobuf definitions in proto/ are compiled into two consumer packages:

  • packages/ts-types — TypeScript types generated via ts-proto, plus hand-written TypeBox schemas under src/schemas/ used for runtime validation in continuum-backend's ElysiaJS routes.
  • packages/rust-types — a Rust crate (continuum-rust-types) that compiles the same .proto files with prost-build (via build.rs), producing serde-derived structs for continuum-proxy and continuum-ai-worker.

Layout

proto/continuum/v1/       canonical .proto message definitions
packages/ts-types/        TypeBox schemas + generated TS proto types
packages/rust-types/      prost-generated Rust structs (build.rs codegen)

Build

Requires protoc on PATH and npm install run at the repo root first.

npm install
npm run build:ts     # protoc + ts-proto -> packages/ts-types/src/generated
npm run build:rust   # cargo build, runs build.rs -> prost-generated structs
npm run build        # both

Generated TS output under packages/ts-types/src/generated is build-derived and gitignored. The Rust crate's generated code lands in OUT_DIR per standard prost-build conventions and is never committed.

S
Description
Continuum platform: continuum-schemas
Readme 146 KiB
Languages
Rust 61.2%
TypeScript 38.8%