Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
feat(matching): FOK matching gate + execution wiring (3/3) #169
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Uh oh!
There was an error while loading. Please reload this page.
feat(matching): FOK matching gate + execution wiring (3/3) #169
Changes from 46 commits
6ad00963576638dea59214cf0ad8ae5b3391d0dfc7de45ee7263862299491a99bf1425fa79f5ffcc811f651075208490062333a69c8fa88598ae9b6cd01e9de08d0efe623a91a2267081043c3aaf8a6340cbf0b28d95d44c2a9625f04aad10a33d34481fbc518029b1d44fb93b584c41b89efbf057a1d7925b844c364849bfc351bd038765191f5141c17b41f79ccfc72a08630fb8272005196afca97f4018444fb399d6db92a81dd747d24bc4ac294b8d6b455d6851a66bf98f6bde5923010b2File filter
Filter by extension
Conversations
Uh oh!
There was an error while loading. Please reload this page.
Jump to
Uh oh!
There was an error while loading. Please reload this page.
There are no files selected for viewing
Large diffs are not rendered by default.
Uh oh!
There was an error while loading. Please reload this page.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🧐 🔵 Nit — this PR adds
Encode, DecodetoRemovedOrderonly because it is now embedded inMatchingOutput.expired_orders(#[n(3)]), andMatchingOutputderivesEncode/Decode. ButMatchingOutputis never actually serialized — it is produced byprocess_pending_ordersand consumed transiently byrecord_matching_event; onlyMatchingEvent { orders: Vec<OrderSeq> }is persisted. I confirmed by removing both derives (and the#[n(..)]attrs): nothing at a call site needs them. So the newRemovedOrderEncode/Decode is dead capability, inherited from an already-unused derive onMatchingOutput. Optional: dropEncode/Decode+ the#[n]field tags from bothMatchingOutputandRemovedOrder. Pre-existing onMatchingOutput, so fine to leave — flagging since the PR propagates it.There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🤖 Done in b92a81d. Confirmed neither
MatchingOutputnorRemovedOrderis ever serialized — nominicbor::encode/decode,to_vec,from_slice, or stable-memory persistence references either type; both are only constructed and consumed in-memory. Dropped theEncode, Decodederives from both types and removed the now-dead#[n(..)]field attrs (includingexpired_orders'). Theminicbor::{Decode, Encode}import stays — other types in the module still use it.Uh oh!
There was an error while loading. Please reload this page.