Skip to content

topofbook-parser: ManifestSummary never decodes the Valid byte #47

Description

@armcconnell

Found while cross-checking the Rust codec crates against the Go parsers (#45).

go/topofbook-parser/tob/topofbook_wire.go:419-420 reads ChannelID then br.skip(3) // reserved. Per reference-data/spec.md, offset 4 is Channel ID, offset 5 is Valid, offsets 6-7 are reserved — so the skip swallows Valid and it is never decoded.

marketbyprice-parser carries the field (marketbyprice_wire.go:188,201), and the Rust ManifestSummary decodes it at offset 5, so the top-of-book parser is the outlier.

A subscriber reading this parser cannot tell an established instrument set from an uninitialized or shutting-down channel, which is the whole point of the flag.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions