reallyme-codec-proto 0.3.0

ReallyMe codec protobuf error envelopes generated with Buffa.
Documentation

reallyme-codec-proto

reallyme-codec-proto contains the Rust Buffa bindings for reallyme.codec.v1. The package is intentionally small: it publishes the codec requests, options, errors, and fixed-shape result messages used by services and SDK boundaries without pulling in the rest of the codec runtime.

This crate defines messages only; it intentionally declares no protobuf service.

JSON is a generated ProtoJSON request convenience. Results remain one fully discriminated binary CodecOperationResponse.

[dependencies]
reallyme-codec-proto = { version = "0.3.0", features = ["generated"] }

The protobuf source is published with this crate at proto/reallyme/codec/v1/codec.proto. Runtime codec operations still use the typed APIs and errors from reallyme-codec. This crate owns messages and wire codecs; executable dispatch belongs to reallyme-codec::operation_contract (enable the operation-contract feature), which accepts one CodecOperationRequest and returns one fully discriminated CodecOperationResponse.

License

Dual-licensed under the MIT License or Apache License, Version 2.0, at your option. See LICENSE for both license texts.

Generated runtime compatibility

The generated feature exposes message types produced by the pinned Buffa runtime. Those types and the public encode_protobuf and decode_protobuf functions implement Buffa traits, so a Buffa version change can alter this crate's source API even when the protobuf schema is unchanged. Treat such a runtime upgrade as a compatibility review, regenerate every language binding, and run downstream compile tests before publishing. The wire schema remains the cross-language contract; callers should not depend on Buffa-owned fields or views for long-lived domain models.