Commit 589a95f
committed
http/dispatch: mirror subprocess stream fix (effectiveProducer + __inputSchema)
The subprocess path (src/dispatch/stream.ts) got this fix months ago
(commit 61025e1): respect state.__inputSchema override for dynamic-input
exchange methods, gate conformBatchToSchema on effectiveProducer, and
let a conformance failure fall through rather than throw so exchange
handlers with dummy tick inputs can still run.
The HTTP path (src/http/dispatch.ts::httpDispatchStreamExchange) had
never received the matching fix — it called conformBatchToSchema
unconditionally, which blew up on every VGI init exchange that wasn't
column-shape-compatible with method.inputSchema (i.e. every scalar
function and most table_in_out functions under the HTTP transport).
Port the same three changes here:
- inputSchema now reads state.__inputSchema ?? method.inputSchema
- conform is gated on !effectiveProducer && schema mismatch
- conform failure logs and falls through with the original batch
Unlocks ~20 HTTP test passes in vgi-typescript (all the
integration/scalar/* + most integration/table_in_out/* tests).1 parent 61025e1 commit 589a95f
1 file changed
Lines changed: 20 additions & 3 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
223 | 223 | | |
224 | 224 | | |
225 | 225 | | |
226 | | - | |
| 226 | + | |
| 227 | + | |
| 228 | + | |
| 229 | + | |
| 230 | + | |
227 | 231 | | |
228 | 232 | | |
229 | 233 | | |
| |||
255 | 259 | | |
256 | 260 | | |
257 | 261 | | |
258 | | - | |
259 | | - | |
| 262 | + | |
| 263 | + | |
| 264 | + | |
| 265 | + | |
| 266 | + | |
| 267 | + | |
| 268 | + | |
| 269 | + | |
| 270 | + | |
| 271 | + | |
| 272 | + | |
| 273 | + | |
| 274 | + | |
| 275 | + | |
| 276 | + | |
260 | 277 | | |
261 | 278 | | |
262 | 279 | | |
| |||
0 commit comments