Sync of the upstream enum-validation + narrow-bind batch (vgi 28539a4..129aff1, vgi-python 59e332b/595481d). Full launcher suite green (178 pass / 13 skip / 0 fail); CI green on all three lanes (launch / http / shm).
Changes
- fix(serializer): emit canonical
order_preservationwire names (PRESERVES_ORDER/NO_ORDER_GUARANTEE/FIXED_ORDER). vgi now throws on any unrecognized wire enum (was: silent default for all butfunction_type), which surfaced this latent bug. AddedOrderPreservation.wireName()(enum constants stay DuckDB-aligned). - feat(catalog): extra-catalog tables —
Worker.registerExtraCatalogTable+ routing in the four catalog-table RPCs, backing thenarrow_bindreproducer catalog (a worker whose bind output_schema is narrower than the table it advertises must fail closed at bind, not segfault the client). - feat(fixtures):
query_seedscalar (the onlyCONSISTENT_WITHIN_QUERYfixture),overlapping_range_partitionedtable fn (the onlyOVERLAPPING_PARTITIONSfixture), and thebad_enumfixture worker (advertises an unrecognizednull_handlingto exercise the C++ strict-enum rejection).
Depends on farm.query:vgirpc:0.10.2 (unchanged).