feat: v2 Phase 1 — foundation, proto schemas, RPC framework, SDK skeleton
New workspace structure with 9 crates. Adds: - proto/qpq/v1/*.proto: 11 protobuf schemas covering all 33 RPC methods - quicproquo-proto: dual codegen (capnp legacy + prost v2) - quicproquo-rpc: QUIC RPC framework (framing, server, client, middleware) - quicproquo-sdk: client SDK (QpqClient, events, conversation store) - quicproquo-server/domain/: protocol-agnostic domain types and services - justfile: build commands Wire format: [method_id:u16][req_id:u32][len:u32][protobuf] per QUIC stream. All 151 existing tests pass. Backward compatible with v1 capnp code.
This commit is contained in:
29
proto/qpq/v1/blob.proto
Normal file
29
proto/qpq/v1/blob.proto
Normal file
@@ -0,0 +1,29 @@
|
||||
syntax = "proto3";
|
||||
package qpq.v1;
|
||||
|
||||
// Blob upload/download (2 methods).
|
||||
// Method IDs: 600-601.
|
||||
|
||||
message UploadBlobRequest {
|
||||
bytes blob_hash = 1;
|
||||
bytes chunk = 2;
|
||||
uint64 offset = 3;
|
||||
uint64 total_size = 4;
|
||||
string mime_type = 5;
|
||||
}
|
||||
|
||||
message UploadBlobResponse {
|
||||
bytes blob_id = 1;
|
||||
}
|
||||
|
||||
message DownloadBlobRequest {
|
||||
bytes blob_id = 1;
|
||||
uint64 offset = 2;
|
||||
uint32 length = 3;
|
||||
}
|
||||
|
||||
message DownloadBlobResponse {
|
||||
bytes chunk = 1;
|
||||
uint64 total_size = 2;
|
||||
string mime_type = 3;
|
||||
}
|
||||
Reference in New Issue
Block a user