Files
hub-monorepo/protobufs
Cassandra Heart dab95118e0 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 -->
2024-06-17 20:46:28 -05:00
..

@farcaster/protobufs

Specifications for API's and data formats used in Hubble, including both Farcaster protocol types and Hubble specific types.

Schema Type Description Docs
Message Types for Farcaster deltas docs
OnChainEvent Types for Farcaster onchain events docs
HubEvent Types for hub events docs
RPC Types for gRPC APIs exposed by Hubs docs
Gossip Types for gossiping data between Hubs
HubState Types for for maintaining internal state

Getting Started

Compiling Protobufs

If you make changes to the protobufs, you will need to run yarn protoc in the following directories to compile and generate the JS files

  • packages/core
  • packages/hub-nodejs
  • packages/hub-web

Generate Bindings

Coming soon

Docs

Docs for the protobufs is under ../apps/hubble/www/docs/docs