Building Paircaster meant checking Snapchain's documentation and code against a running node. Where they disagreed, we filed it with Snapchain and the Farcaster docs.
Pull requests
- snapchain #1062: the Rust example in the message reference signs the message data, but the node checks the signature over the message hash, so a message signed as shown is rejected. Also,
validateMessagedoes not check that the FID is registered or that the key belongs to it, as the page says it does. - snapchain #1063: corrects the HTTP API reference against a v0.14.3 node: paging takes
reverse=true, not1; the shape of errors; theuser_data_typefilter thatuserDataByFidignores; and which fields are hex and which base64. - snapchain #1072: a long cast over 10,000 bytes was told it was too short, and one too short was told it was too long. The two errors are swapped back, and the test now checks which error comes back.
- docs #471: removing an app key no longer deletes the messages it signed, as the key registry reference says it does.
Issue
- snapchain #1064: the snapshot download starts again from the first chunk after any interruption.
Comments
- On #720: when one shard runs out of results, its paging cursor restarts it from the beginning, so paging through
linksByTargetFidnever ends. - On #1050: a snapshot restore that dies partway through unpacking a shard leaves it half-written, which the fix does not catch.
- On #1049: the new signers reference page, checked against a node: one example needs quotes, one parameter is written in a form the node rejects, and gasless keys are missing from the list of sources.
- On #550: the upstream bugs that held up Snapchain's upgrade of its consensus library look fixed.
- On #513: a smaller step towards faster sync that needs no library upgrade: keep several block requests in flight at once.
Back to the guide.