Revolutionary Update in Communication Tech: Link Compact State Messages Now Unveiled!
New RPC feature promises to eliminate confusion in message retrieval, enhancing clarity and reliability across hubs.
Commit Details:
feat: expose LinkCompactState messages via rpc (#2068) ## Motivation Currently, our retrieval of Link messages only show adds/removes, compact state messages serving as silent tombstones. This is fine for getting a quick set of adds/removes as they currently apply, but may produce confusing state when looking at two hubs, where one has the message, and the other doesn't, and trying to reconcile why some messages are missing from the one with the LinkCompactState message and not the other. ## Change Summary This change adds a new rpc GetLinkCompactStateMessageByFid, which returns the relevant compact state message, if present. ## Merge Checklist _Choose all relevant options below by adding an `x` now or at any time before submitting for review_ - [x] PR title adheres to the [conventional commits](https://www.conventionalcommits.org/en/v1.0.0/) standard - [x] PR has a [changeset](https://github.com/farcasterxyz/hub-monorepo/blob/main/CONTRIBUTING.md#35-adding-changesets) - [x] PR has been tagged with a change label(s) (i.e. documentation, feature, bugfix, or chore) - [x] PR includes [documentation](https://github.com/farcasterxyz/hub-monorepo/blob/main/CONTRIBUTING.md#32-writing-docs) if necessary. - [x] All [commits have been signed](https://github.com/farcasterxyz/hub-monorepo/blob/main/CONTRIBUTING.md#22-signing-commits) ## Additional Context If this is a relatively large or complex change, provide more details here that will help reviewers <!-- start pr-codex --> --- ## PR-Codex overview This PR standardizes the naming convention for `CastType` across multiple files and adds support for `LinkCompactStateMessage` handling in various store modules and RPC methods. ### Detailed summary - Standardized `CastType` naming convention to `cast` in multiple files - Added support for `LinkCompactStateMessage` in store modules and RPC methods > The following files were skipped due to too many changes: `apps/hubble/www/docs/docs/api.md`, `packages/hub-nodejs/src/generated/rpc.ts`, `packages/hub-web/src/generated/rpc.ts` > ✨ Ask PR-Codex anything about this PR by commenting with `/codex {your question}` <!-- end pr-codex -->