Skip to content

docs: document the solana.perpetual.proto Kafka stream - #240

Merged
buddies2705 merged 1 commit into
mainfrom
docs/perpetuals-api
Aug 8, 2026
Merged

docs: document the solana.perpetual.proto Kafka stream#240
buddies2705 merged 1 commit into
mainfrom
docs/perpetuals-api

Conversation

@buddies2705

Copy link
Copy Markdown
Contributor

Follow-up to #239 — that PR was merged just before this commit landed on the branch.

Adds the Solana Perpetuals Kafka Stream page (docs/streams/protobuf/chains/Solana-perpetual-protobuf.md) documenting the solana.perpetual.proto topic:

  • Message anatomy: PerpetualBlockMessage → five event lists, mapped 1:1 to the GraphQL Perpetual cubes
  • Schema-reading rules verified against the live topic and the schema comments: human-unit scaling, empty-bytes semantics, the SOL Asset.Id = 0 proto3 quirk, EventIndex ordering, MakerOrderId XOR SplineId, cross-margin Collateral caveat, liquidation flagging across all rows, mark-price denormalization, maker rebates, trade-driven price publication, conditional-order join keys
  • Working Python quickstart consumer (validated by consuming the live topic), pointers to the pb2 / npm / Go helper packages and the examples repo
  • Kafka vs GraphQL-subscription decision table
  • Cross-links from the Perp DEX overview, Phoenix Perpetuals API, Phoenix spot page, and the Solana shred-streams page; sidebar entry under Kafka Streams → Chain-specific Stream

Validation: production build passes, internal link checker green (545 pages, 0 errors).

🤖 Generated with Claude Code

New Solana Perpetuals Stream page under Kafka protobuf chains covering
the PerpetualBlockMessage topic: message anatomy mapped 1:1 to the five
GraphQL Perpetual cubes, schema-reading rules (human units, empty-bytes
absence, SOL Asset.Id 0 quirk, EventIndex ordering, MakerOrderId XOR
SplineId, cross-margin Collateral caveat, liquidation flagging, mark
denormalization, maker rebates, trade-driven price publication,
conditional-order join keys), a working Python consumer, and
Kafka-vs-GraphQL guidance. Verified by consuming the live topic.

Cross-linked from the Perp DEX overview, Phoenix Perpetuals API, the
Phoenix spot page and the Solana shred-streams page.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
@buddies2705
buddies2705 merged commit 56faeca into main Aug 8, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant