Skip to content

Evaluate flatc/FlatBuffers-driven codegen vs hand-rolled schema/type conformance oracles #613

Description

@MGudgin

Description of the task

Evaluate whether a schema-driven codegen pipeline — for example an internal FlatBuffers schema compiled with flatc — could replace the hand-rolled conformance oracles that keep the JSON schema, the generated Rust wire model, and the generated TypeScript wire types in agreement.
Today these artifacts are kept in sync by bespoke generators (mxc_schema_gen, wxc_common::ts_emit) plus hand-written conformance helpers and tests (sdk/tests/unit/conformance-helpers.ts, wire-conformance*.test.ts). @bbonaby raised in review of #580 that a single FlatBuffer schema could instead drive flatc-generated JSON schema, Rust types, and TypeScript types, with the FlatBuffer SDK verifying JSON — potentially reducing the amount of bespoke code we author and maintain.
The current no-third-party-generator approach is deliberate. The outcome of this task is a recommendation weighing that trade-off (maintenance cost and comprehensibility of the hand-rolled oracles vs. adopting an external generator/toolchain), not a commitment to switch.

Additional context

Metadata

Metadata

Type

Fields

No fields configured for Task.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions