mirror of
https://github.com/farcasterxyz/hub-monorepo.git
synced 2026-01-13 23:28:13 -05:00
@farcaster/shuttle@0.6.6
1650 Commits
| Author | SHA1 | Message | Date | |
|---|---|---|---|---|
|
|
d0de3a91ff |
Release shuttle v0.6.6 (#2360)
## Why is this change needed? Releases v0.6.6 of shuttle ## 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) - [ ] PR includes [documentation](https://github.com/farcasterxyz/hub-monorepo/blob/main/CONTRIBUTING.md#32-writing-docs) if necessary. <!-- start pr-codex --> --- ## PR-Codex overview This PR updates the version of the `@farcaster/shuttle` package from `0.6.5` to `0.6.6`, adds a new entry to the `CHANGELOG.md` for patch changes, and includes a fix for handling streaming hangups when the server unexpectedly dies. ### Detailed summary - Updated `version` in `packages/shuttle/package.json` from `0.6.5` to `0.6.6`. - Added a new section in `CHANGELOG.md` for version `0.6.6`. - Documented a fix for gracefully handling streaming hangups when the server dies unexpectedly. > ✨ Ask PR-Codex anything about this PR by commenting with `/codex {your question}` <!-- end pr-codex -->@farcaster/shuttle@0.6.6 |
||
|
|
386059ac25 |
fix: gracefully handle streaming hangups when the server dies unexpected (#2358)
## Why is this change needed? Fixes #2346. Under certain conditions, like a hub failure or odd connectivity quirks, the fetch can hang indefinitely, leading to a need for consumers to restart if they aren't timeout driven. This avoids the issue by setting a sensible timeout and returning failure in the event it can't complete the request. ## 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) - [ ] PR includes [documentation](https://github.com/farcasterxyz/hub-monorepo/blob/main/CONTRIBUTING.md#32-writing-docs) if necessary. <!-- start pr-codex --> --- ## PR-Codex overview This PR focuses on improving the handling of server streaming timeouts and errors in the `shuttle` package, ensuring graceful termination of unresponsive connections and adding corresponding tests. ### Detailed summary - Added timeout handling to prevent hanging connections in `packages/shuttle/src/shuttle/messageReconciliation.ts`. - Updated promise resolution logic to handle server timeout errors. - Implemented a test case in `packages/shuttle/src/shuttle.integration.test.ts` for unresponsive server requests. > ✨ Ask PR-Codex anything about this PR by commenting with `/codex {your question}` <!-- end pr-codex --> |
||
|
|
7370ee4e29 |
chore: release hubble v1.15.6 (#2359)
Releasing hubble v1.15.6 ## 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) - [ ] PR includes [documentation](https://github.com/farcasterxyz/hub-monorepo/blob/main/CONTRIBUTING.md#32-writing-docs) if necessary. <!-- start pr-codex --> --- ## PR-Codex overview This PR primarily focuses on updating the version of the `@farcaster/hubble` package from `1.15.5` to `1.15.6`. It includes updates to the `CHANGELOG.md` to reflect the new version and its associated changes. ### Detailed summary - Updated `version` of `@farcaster/hubble` from `1.15.5` to `1.15.6` in `package.json`. - Added a new section for version `1.15.6` in `CHANGELOG.md`: - `c2c409fb`: Added metrics for gRPC server. - `1ca66d8c`: Fixed limit on message bundle size. > ✨ Ask PR-Codex anything about this PR by commenting with `/codex {your question}` <!-- end pr-codex -->@farcaster/hubble@1.15.6 |
||
|
|
c2c409fb77 |
chore: add metrics for rpc server (#2357)
It would be useful to know when there are spikes in certain kinds of rpcs for debugging purposes. ## 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) - [ ] PR includes [documentation](https://github.com/farcasterxyz/hub-monorepo/blob/main/CONTRIBUTING.md#32-writing-docs) if necessary. <!-- start pr-codex --> --- ## PR-Codex overview This PR focuses on enhancing the monitoring of RPC calls in the `Server` class by integrating `statsd` metrics to track the count of open RPC requests for various methods. ### Detailed summary - Added `statsd().increment` for tracking open request count at the start of multiple RPC methods. - Added `statsd().decrement` for tracking open request count at the end of the same methods. - Methods updated include `getInfo`, `stopSync`, `forceSync`, `getCurrentPeers`, `getSyncStatus`, and many others. > ✨ Ask PR-Codex anything about this PR by commenting with `/codex {your question}` <!-- end pr-codex --> |
||
|
|
1ca66d8cf2 |
fix: Limit max bundle size (#2355)
## Why is this change needed? `submitBulkMessages` and `submitMessageBundle` were not validating size of the bundle and allowing unbounded input. ## 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) - [ ] PR includes [documentation](https://github.com/farcasterxyz/hub-monorepo/blob/main/CONTRIBUTING.md#32-writing-docs) if necessary. <!-- start pr-codex --> --- ## PR-Codex overview This PR focuses on limiting the size of message bundles in the application to enhance performance and prevent overload. ### Detailed summary - Added a new export `MAX_BUNDLE_SIZE` in `apps/hubble/src/network/p2p/bundleCreator.ts`. - Implemented a check in `apps/hubble/src/hubble.ts` to reject message bundles exceeding `MAX_BUNDLE_SIZE`. - Added a similar check in `apps/hubble/src/rpc/server.ts` for gRPC message submissions. > ✨ Ask PR-Codex anything about this PR by commenting with `/codex {your question}` <!-- end pr-codex --> |
||
|
|
23758b571f |
docs: Update disk space requirements (#2353)
## Why is this change needed? These were out of date as the network has grown. ## Merge Checklist - [x] PR title adheres to the [conventional commits](https://www.conventionalcommits.org/en/v1.0.0/) standard - [ ] 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. <!-- start pr-codex --> --- ## PR-Codex overview This PR focuses on updating the documentation for the `Hubble` application, specifically regarding hardware requirements and setup instructions, including increases in RAM and disk space requirements. ### Detailed summary - Updated RAM requirement from `8GB` to `16GB` for the `Mainnet Hub`. - Increased disk space requirement from `20GB` to `300GB` for the `Mainnet Hub`. - Adjusted disk size in `main.tf` from `200GB` to `300GB`. - Updated storage requirement from `200GB` to `300GB` in installation instructions. - Changed exposed ports from `2282 - 2285` to `2282 & 2283` in installation instructions. > ✨ Ask PR-Codex anything about this PR by commenting with `/codex {your question}` <!-- end pr-codex --> |
||
|
|
3b9f2e806d |
chore: Release 1.15.5 (#2352)
## Why is this change needed? Release 1.15.5 ## 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) - [ ] PR includes [documentation](https://github.com/farcasterxyz/hub-monorepo/blob/main/CONTRIBUTING.md#32-writing-docs) if necessary. <!-- start pr-codex --> --- ## PR-Codex overview This PR focuses on updating package versions and changelogs across multiple packages within the Farcaster project, including reintroducing a dependency and fixing various issues in the `shuttle` and `hubble` packages. ### Detailed summary - Deleted multiple `.changeset` markdown files. - Updated `@farcaster/core` version from `0.15.3` to `0.15.4`. - Updated `@farcaster/hub-nodejs` version from `0.12.3` to `0.12.4`. - Updated `@farcaster/shuttle` version from `0.6.4` to `0.6.5`. - Updated `@farcaster/hubble` version from `1.15.4` to `1.15.5`. - Added notable changes to changelogs for `core`, `hub-nodejs`, `shuttle`, and `hubble` packages, including bug fixes and new features. > ✨ Ask PR-Codex anything about this PR by commenting with `/codex {your question}` <!-- end pr-codex -->@farcaster/hubble@1.15.5 @farcaster/core@0.15.4 @farcaster/shuttle@0.6.5 @farcaster/hub-nodejs@0.12.4 |
||
|
|
8dfe98437f | fix: restore start/stop time for reconcileMessagesForFid (#2351) | ||
|
|
071ea250a1 |
chore(deps): bump rollup from 3.19.1 to 3.29.5 (#2350)
Bumps [rollup](https://github.com/rollup/rollup) from 3.19.1 to 3.29.5. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/rollup/rollup/releases">rollup's releases</a>.</em></p> <blockquote> <h2>v3.29.4</h2> <h2>3.29.4</h2> <p><em>2023-09-28</em></p> <h3>Bug Fixes</h3> <ul> <li>Fix static analysis when an exported function uses callbacks (<a href="https://redirect.github.com/rollup/rollup/issues/5158">#5158</a>)</li> </ul> <h3>Pull Requests</h3> <ul> <li><a href="https://redirect.github.com/rollup/rollup/pull/5158">#5158</a>: Deoptimize all parameters when losing track of a function (<a href="https://github.com/lukastaegert"><code>@lukastaegert</code></a>)</li> </ul> <h2>v3.29.3</h2> <h2>3.29.3</h2> <p><em>2023-09-24</em></p> <h3>Bug Fixes</h3> <ul> <li>Fix a bug where code was wrongly tree-shaken after mutating function parameters (<a href="https://redirect.github.com/rollup/rollup/issues/5153">#5153</a>)</li> </ul> <h3>Pull Requests</h3> <ul> <li><a href="https://redirect.github.com/rollup/rollup/pull/5145">#5145</a>: docs: improve the docs repl appearance in the light mode (<a href="https://github.com/TrickyPi"><code>@TrickyPi</code></a>)</li> <li><a href="https://redirect.github.com/rollup/rollup/pull/5148">#5148</a>: chore(deps): update dependency <code>@vue/eslint-config-typescript</code> to v12 (<a href="https://github.com/renovate"><code>@renovate</code></a>[bot])</li> <li><a href="https://redirect.github.com/rollup/rollup/pull/5149">#5149</a>: chore(deps): lock file maintenance minor/patch updates (<a href="https://github.com/renovate"><code>@renovate</code></a>[bot])</li> <li><a href="https://redirect.github.com/rollup/rollup/pull/5153">#5153</a>: Fully deoptimize first level path when deoptimizing nested parameter paths (<a href="https://github.com/lukastaegert"><code>@lukastaegert</code></a>)</li> </ul> <h2>v3.29.2</h2> <h2>3.29.2</h2> <p><em>2023-09-15</em></p> <h3>Bug Fixes</h3> <ul> <li>Export <code>TreeshakingPreset</code> type (<a href="https://redirect.github.com/rollup/rollup/issues/5131">#5131</a>)</li> </ul> <h3>Pull Requests</h3> <ul> <li><a href="https://redirect.github.com/rollup/rollup/pull/5131">#5131</a>: fix: exports <code>TreeshakingPreset</code> (<a href="https://github.com/moltar"><code>@moltar</code></a>)</li> <li><a href="https://redirect.github.com/rollup/rollup/pull/5134">#5134</a>: docs: steps to enable symlinks on windows (<a href="https://github.com/thebanjomatic"><code>@thebanjomatic</code></a>)</li> <li><a href="https://redirect.github.com/rollup/rollup/pull/5137">#5137</a>: chore(deps): lock file maintenance minor/patch updates (<a href="https://github.com/renovate"><code>@renovate</code></a>[bot])</li> </ul> <h2>v3.29.1</h2> <h2>3.29.1</h2> <p><em>2023-09-10</em></p> <h3>Bug Fixes</h3> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/rollup/rollup/blob/master/CHANGELOG.md">rollup's changelog</a>.</em></p> <blockquote> <h1>rollup changelog</h1> <h2>4.24.0</h2> <p><em>2024-10-02</em></p> <h3>Features</h3> <ul> <li>Support preserving and transpiling JSX syntax (<a href="https://redirect.github.com/rollup/rollup/issues/5668">#5668</a>)</li> </ul> <h3>Pull Requests</h3> <ul> <li><a href="https://redirect.github.com/rollup/rollup/pull/5668">#5668</a>: Introduce JSX support (<a href="https://github.com/lukastaegert"><code>@lukastaegert</code></a>, <a href="https://github.com/Martin-Idel"><code>@Martin-Idel</code></a>, <a href="https://github.com/felixhuttmann"><code>@felixhuttmann</code></a>, <a href="https://github.com/AlexDroll"><code>@AlexDroll</code></a>, <a href="https://github.com/tiptr"><code>@tiptr</code></a>)</li> </ul> <h2>4.23.0</h2> <p><em>2024-10-01</em></p> <h3>Features</h3> <ul> <li>Collect all emitted names and originalFileNames for assets (<a href="https://redirect.github.com/rollup/rollup/issues/5686">#5686</a>)</li> </ul> <h3>Pull Requests</h3> <ul> <li><a href="https://redirect.github.com/rollup/rollup/pull/5686">#5686</a>: Add names and originalFileNames to assets (<a href="https://github.com/lukastaegert"><code>@lukastaegert</code></a>)</li> </ul> <h2>4.22.5</h2> <p><em>2024-09-27</em></p> <h3>Bug Fixes</h3> <ul> <li>Allow parsing of certain unicode characters again (<a href="https://redirect.github.com/rollup/rollup/issues/5674">#5674</a>)</li> </ul> <h3>Pull Requests</h3> <ul> <li><a href="https://redirect.github.com/rollup/rollup/pull/5674">#5674</a>: Fix panic with unicode characters (<a href="https://github.com/sapphi-red"><code>@sapphi-red</code></a>, <a href="https://github.com/lukastaegert"><code>@lukastaegert</code></a>)</li> <li><a href="https://redirect.github.com/rollup/rollup/pull/5675">#5675</a>: chore(deps): update dependency rollup to v4.22.4 [security] (<a href="https://github.com/renovate"><code>@renovate</code></a>[bot])</li> <li><a href="https://redirect.github.com/rollup/rollup/pull/5680">#5680</a>: chore(deps): update dependency <code>@rollup/plugin-commonjs</code> to v28 (<a href="https://github.com/renovate"><code>@renovate</code></a>[bot], <a href="https://github.com/lukastaegert"><code>@lukastaegert</code></a>)</li> <li><a href="https://redirect.github.com/rollup/rollup/pull/5681">#5681</a>: chore(deps): update dependency <code>@rollup/plugin-replace</code> to v6 (<a href="https://github.com/renovate"><code>@renovate</code></a>[bot])</li> <li><a href="https://redirect.github.com/rollup/rollup/pull/5682">#5682</a>: chore(deps): update dependency <code>@rollup/plugin-typescript</code> to v12 (<a href="https://github.com/renovate"><code>@renovate</code></a>[bot])</li> <li><a href="https://redirect.github.com/rollup/rollup/pull/5684">#5684</a>: chore(deps): lock file maintenance minor/patch updates (<a href="https://github.com/renovate"><code>@renovate</code></a>[bot])</li> </ul> <h2>4.22.4</h2> <p><em>2024-09-21</em></p> <h3>Bug Fixes</h3> <ul> <li>Fix a vulnerability in generated code that affects IIFE, UMD and CJS bundles when run in a browser context (<a href="https://redirect.github.com/rollup/rollup/issues/5671">#5671</a>)</li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |
||
|
|
48be01a654 |
feat: export makeMessage fn (#2283)
## Why is this change needed? This function will be useful in the backend for a script that generates a message from another message and publishes with a new signer. ## 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 - [ ] 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) - [ ] PR includes [documentation](https://github.com/farcasterxyz/hub-monorepo/blob/main/CONTRIBUTING.md#32-writing-docs) if necessary. <!-- start pr-codex --> --- ## PR-Codex overview This PR focuses on making the `makeMessage` function in `builders.ts` file exportable. ### Detailed summary - Exported the `makeMessage` function in `builders.ts` file. > ✨ Ask PR-Codex anything about this PR by commenting with `/codex {your question}` <!-- end pr-codex --> |
||
|
|
6b8120c510 |
chore(deps): bump micromatch from 4.0.7 to 4.0.8 (#2349)
Bumps [micromatch](https://github.com/micromatch/micromatch) from 4.0.7 to 4.0.8. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/micromatch/micromatch/releases">micromatch's releases</a>.</em></p> <blockquote> <h2>4.0.8</h2> <p>Ultimate release that fixes both CVE-2024-4067 and CVE-2024-4068. We consider the issues low-priority, so even if you see automated scanners saying otherwise, don't be scared.</p> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/micromatch/micromatch/blob/master/CHANGELOG.md">micromatch's changelog</a>.</em></p> <blockquote> <h2>[4.0.8] - 2024-08-22</h2> <ul> <li>backported CVE-2024-4067 fix (from v4.0.6) over to 4.x branch</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |
||
|
|
a8736e1de7 |
fix(core): add faker back as a dependency as it is used (#2201)
## Why is this change needed? Faker has been removed from the dependencies on the farcaster/core library by mistake, as it is used in factory.ts . Re-introducing it will prevent if from being bundled. Fixes #2031 ## 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. <!-- start pr-codex --> --- ## PR-Codex overview This PR re-introduces the `faker` dependency in the `@farcaster/core` package. ### Detailed summary - Re-added `@faker-js/faker` dependency in `@farcaster/core` package.json - Removed `@faker-js/faker` from devDependencies > ✨ Ask PR-Codex anything about this PR by commenting with `/codex {your question}` <!-- end pr-codex --> |
||
|
|
cda909b087 |
fix: add request length limit for getAllMessagesBySyncIds (#2347)
We've observed hub memory usage and disk reads spike over the last couple days. We'd like to put a size bound on `getAllMessagesBySyncIds` because it currently accepts an unlimited number of sync ids and could end up exhausting hub resources. ## 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) - [ ] PR includes [documentation](https://github.com/farcasterxyz/hub-monorepo/blob/main/CONTRIBUTING.md#32-writing-docs) if necessary. <!-- start pr-codex --> --- ## PR-Codex overview This PR focuses on adding a request length limit for the `getAllMessagesBySyncIds` function in the `server.ts` file and refactoring the message retrieval logic in `syncHealth.ts` to handle multiple requests efficiently. ### Detailed summary - Added a check for the length of `syncIds` in `getAllMessagesBySyncIds` to enforce a maximum limit. - Changed the message retrieval logic in `syncHealth.ts` to accumulate messages from multiple requests into `allMessages`. - Updated the error handling to ensure consistent error responses. > ✨ Ask PR-Codex anything about this PR by commenting with `/codex {your question}` <!-- end pr-codex --> |
||
|
|
dbf1f15589 |
fix: Split sync health job into 10 min chunks to limit memory usage (#2345)
## Why is this change needed? Hubs might be running into memory pressure because divergingSyncIds is examining too many messages at once. Chunk sync health job to 10 minute intervals to reduce memory usage. ## 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) - [ ] PR includes [documentation](https://github.com/farcasterxyz/hub-monorepo/blob/main/CONTRIBUTING.md#32-writing-docs) if necessary. <!-- start pr-codex --> --- ## PR-Codex overview This PR focuses on optimizing the `syncHealthJob` by splitting the processing of sync health messages into 10-minute intervals to reduce memory usage. ### Detailed summary - Introduced a loop to process `syncHealthMessageStats` in 10-minute chunks. - Adjusted the handling of `syncHealthMessageStats` and error logging. - Updated the process for pushing diverging sync IDs and logging results. - Improved logging details for computed sync health stats. > ✨ Ask PR-Codex anything about this PR by commenting with `/codex {your question}` <!-- end pr-codex --> |
||
|
|
6408496826 |
feat(shuttle): Support deleting messages on DB that are missing on hub (#2341)
There was existing support for handling messages that were present on hub and missing on DB, but not the opposite. From talking with Sanjay, it should be correct/safe to delete these messages from the DB. ## Why is this change needed? Shuttle only reconciled in one direction, even though everything appears 95% written to support both directions. This completes that. I know from adding logging to our Shuttle-powered app that that are a significant number of messages present in our DB that are missing in the hub. ## 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) - [ ] PR has been tagged with a change label(s) (i.e. documentation, feature, bugfix, or chore) - [ ] PR includes [documentation](https://github.com/farcasterxyz/hub-monorepo/blob/main/CONTRIBUTING.md#32-writing-docs) if necessary. <!-- start pr-codex --> --- ## PR-Codex overview This PR introduces functionality to delete messages from the database that are not present on the hub, enhancing the message handling logic in the `shuttle` package. ### Detailed summary - Updated `handleMissingMessage` method in `HubEventProcessor` to accept an optional `missingInHub` parameter. - Added logic to delete messages if `missingInHub` is true; otherwise, it merges them. - Adjusted calls to `handleMissingMessage` in `app.ts` to pass the new parameter. > ✨ Ask PR-Codex anything about this PR by commenting with `/codex {your question}` <!-- end pr-codex --> |
||
|
|
c31c73b712 |
Update CONTRIBUTING.md (#2340)
I found the opposite error with the dots in the patch ## Why is this change needed? Describe why this issue should be fixed and link to any relevant design docs, issues or other relevant items. ## Merge Checklist _Choose all relevant options below by adding an `x` now or at any time before submitting for review_ - [ ] PR title adheres to the [conventional commits](https://www.conventionalcommits.org/en/v1.0.0/) standard - [ ] PR has a [changeset](https://github.com/farcasterxyz/hub-monorepo/blob/main/CONTRIBUTING.md#35-adding-changesets) - [ ] PR has been tagged with a change label(s) (i.e. documentation, feature, bugfix, or chore) - [ ] PR includes [documentation](https://github.com/farcasterxyz/hub-monorepo/blob/main/CONTRIBUTING.md#32-writing-docs) if necessary. <!-- start pr-codex --> --- ## PR-Codex overview This PR primarily focuses on updating the formatting of section headings in the `CONTRIBUTING.md` file for consistency by removing the period after the section numbers. ### Detailed summary - Changed heading format for `2.2. Signing Commits` to `2.2 Signing Commits` - Changed heading format for `2.3. Navigating the Monorepo` to `2.3 Navigating the Monorepo` - Changed heading format for `3.1. Writing Tests` to `3.1 Writing Tests` - Changed heading format for `3.3. Handling Errors` to `3.3 Handling Errors` - Changed heading format for `3.4. Creating the PR` to `3.4 Creating the PR` - Changed heading format for `3.5. Adding Changesets` to `3.5 Adding Changesets` > ✨ Ask PR-Codex anything about this PR by commenting with `/codex {your question}` <!-- end pr-codex --> |
||
|
|
44126c2fc7 |
feat: Add --announce-rpc-port flag (#2342)
## Why is this change needed? When using a reverse proxy with hubs, the RPC port the hub itself binds to might be different than the port needed to communicate with the hub on the public internet. Allow overriding via the `--announce-rpc-port` flag. ## Merge Checklist - [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. <!-- start pr-codex --> --- ## PR-Codex overview This PR introduces a new flag `--announce-rpc-port` for the `Hubble` application, updates documentation, and modifies the handling of RPC port configurations to enhance functionality and improve usability with reverse proxies. ### Detailed summary - Added `announceRpcPort` property to the `Hub` class. - Updated comments for `rpcPort` to clarify its role as the RPC Server port. - Introduced `--announce-rpc-port` flag in the CLI options. - Updated the handling of `announceRpcPort` in the application configuration. - Enhanced documentation for CLI commands and options. > ✨ Ask PR-Codex anything about this PR by commenting with `/codex {your question}` <!-- end pr-codex --> |
||
|
|
8f4e8e4012 |
fix: make the contact info logs for the sync health job richer (#2338)
It's currently hard to tell what state the contact info is in if the rpc address is not present. Differentiate the error states better in the logging. ## 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 - [ ] 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) - [ ] PR includes [documentation](https://github.com/farcasterxyz/hub-monorepo/blob/main/CONTRIBUTING.md#32-writing-docs) if necessary. <!-- start pr-codex --> --- ## PR-Codex overview This PR focuses on improving error handling and simplifying the return values related to `contactInfo` in the `syncHealthJob.ts` file. ### Detailed summary - Replaced returning `undefined` when `contactInfo` is missing with returning the string `"Missing contact info"`. - Changed the return value for `contactInfo` to directly return `contactInfo.contactInfo`. - Updated the error message to exclude `contactInfo` details in the logging. > ✨ Ask PR-Codex anything about this PR by commenting with `/codex {your question}` <!-- end pr-codex --> |
||
|
|
12e8c0589a |
chore(deps): bump rollup from 4.14.0 to 4.22.4 in /apps/hubble/www (#2329)
Bumps [rollup](https://github.com/rollup/rollup) from 4.14.0 to 4.22.4. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/rollup/rollup/releases">rollup's releases</a>.</em></p> <blockquote> <h2>v4.22.4</h2> <h2>4.22.4</h2> <p><em>2024-09-21</em></p> <h3>Bug Fixes</h3> <ul> <li>Fix a vulnerability in generated code that affects IIFE, UMD and CJS bundles when run in a browser context (<a href="https://redirect.github.com/rollup/rollup/issues/5671">#5671</a>)</li> </ul> <h3>Pull Requests</h3> <ul> <li><a href="https://redirect.github.com/rollup/rollup/pull/5670">#5670</a>: refactor: Use object.prototype to check for reserved properties (<a href="https://github.com/YuHyeonWook"><code>@YuHyeonWook</code></a>)</li> <li><a href="https://redirect.github.com/rollup/rollup/pull/5671">#5671</a>: Fix DOM Clobbering CVE (<a href="https://github.com/lukastaegert"><code>@lukastaegert</code></a>)</li> </ul> <h2>v4.22.3</h2> <h2>4.22.3</h2> <p><em>2024-09-21</em></p> <h3>Bug Fixes</h3> <ul> <li>Ensure that mutations in modules without side effects are observed while properly handling transitive dependencies (<a href="https://redirect.github.com/rollup/rollup/issues/5669">#5669</a>)</li> </ul> <h3>Pull Requests</h3> <ul> <li><a href="https://redirect.github.com/rollup/rollup/pull/5669">#5669</a>: Ensure impure dependencies of pure modules are added (<a href="https://github.com/lukastaegert"><code>@lukastaegert</code></a>)</li> </ul> <h2>v4.22.2</h2> <h2>4.22.2</h2> <p><em>2024-09-20</em></p> <h3>Bug Fixes</h3> <ul> <li>Revert fix for side effect free modules until other issues are investigated (<a href="https://redirect.github.com/rollup/rollup/issues/5667">#5667</a>)</li> </ul> <h3>Pull Requests</h3> <ul> <li><a href="https://redirect.github.com/rollup/rollup/pull/5667">#5667</a>: Partially revert <a href="https://redirect.github.com/rollup/rollup/issues/5658">#5658</a> and re-apply <a href="https://redirect.github.com/rollup/rollup/issues/5644">#5644</a> (<a href="https://github.com/lukastaegert"><code>@lukastaegert</code></a>)</li> </ul> <h2>v4.22.1</h2> <h2>4.22.1</h2> <p><em>2024-09-20</em></p> <h3>Bug Fixes</h3> <ul> <li>Revert <a href="https://redirect.github.com/rollup/rollup/issues/5644">#5644</a> "stable chunk hashes" while issues are being investigated</li> </ul> <h3>Pull Requests</h3> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/rollup/rollup/blob/master/CHANGELOG.md">rollup's changelog</a>.</em></p> <blockquote> <h2>4.22.4</h2> <p><em>2024-09-21</em></p> <h3>Bug Fixes</h3> <ul> <li>Fix a vulnerability in generated code that affects IIFE, UMD and CJS bundles when run in a browser context (<a href="https://redirect.github.com/rollup/rollup/issues/5671">#5671</a>)</li> </ul> <h3>Pull Requests</h3> <ul> <li><a href="https://redirect.github.com/rollup/rollup/pull/5670">#5670</a>: refactor: Use object.prototype to check for reserved properties (<a href="https://github.com/YuHyeonWook"><code>@YuHyeonWook</code></a>)</li> <li><a href="https://redirect.github.com/rollup/rollup/pull/5671">#5671</a>: Fix DOM Clobbering CVE (<a href="https://github.com/lukastaegert"><code>@lukastaegert</code></a>)</li> </ul> <h2>4.22.3</h2> <p><em>2024-09-21</em></p> <h3>Bug Fixes</h3> <ul> <li>Ensure that mutations in modules without side effects are observed while properly handling transitive dependencies (<a href="https://redirect.github.com/rollup/rollup/issues/5669">#5669</a>)</li> </ul> <h3>Pull Requests</h3> <ul> <li><a href="https://redirect.github.com/rollup/rollup/pull/5669">#5669</a>: Ensure impure dependencies of pure modules are added (<a href="https://github.com/lukastaegert"><code>@lukastaegert</code></a>)</li> </ul> <h2>4.22.2</h2> <p><em>2024-09-20</em></p> <h3>Bug Fixes</h3> <ul> <li>Revert fix for side effect free modules until other issues are investigated (<a href="https://redirect.github.com/rollup/rollup/issues/5667">#5667</a>)</li> </ul> <h3>Pull Requests</h3> <ul> <li><a href="https://redirect.github.com/rollup/rollup/pull/5667">#5667</a>: Partially revert <a href="https://redirect.github.com/rollup/rollup/issues/5658">#5658</a> and re-apply <a href="https://redirect.github.com/rollup/rollup/issues/5644">#5644</a> (<a href="https://github.com/lukastaegert"><code>@lukastaegert</code></a>)</li> </ul> <h2>4.22.1</h2> <p><em>2024-09-20</em></p> <h3>Bug Fixes</h3> <ul> <li>Revert <a href="https://redirect.github.com/rollup/rollup/issues/5644">#5644</a> "stable chunk hashes" while issues are being investigated</li> </ul> <h3>Pull Requests</h3> <ul> <li><a href="https://redirect.github.com/rollup/rollup/pull/5663">#5663</a>: chore(deps): update dependency inquirer to v11 (<a href="https://github.com/renovate"><code>@renovate</code></a>[bot], <a href="https://github.com/lukastaegert"><code>@lukastaegert</code></a>)</li> <li><a href="https://redirect.github.com/rollup/rollup/pull/5664">#5664</a>: chore(deps): lock file maintenance minor/patch updates (<a href="https://github.com/renovate"><code>@renovate</code></a>[bot])</li> <li><a href="https://redirect.github.com/rollup/rollup/pull/5665">#5665</a>: fix: type in CI file (<a href="https://github.com/YuHyeonWook"><code>@YuHyeonWook</code></a>)</li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |
||
|
|
a19bab5b8c |
chore(deps): bump micromatch from 4.0.7 to 4.0.8 in /packages/hub-nodejs/examples/hello-world (#2279)
Bumps [micromatch](https://github.com/micromatch/micromatch) from 4.0.7 to 4.0.8. <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/micromatch/micromatch/blob/4.0.8/CHANGELOG.md">micromatch's changelog</a>.</em></p> <blockquote> <h2>[4.0.8] - 2024-08-22</h2> <ul> <li>backported CVE-2024-4067 fix (from v4.0.6) over to 4.x branch</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |
||
|
|
e5f50885f9 |
chore(deps): bump elliptic from 6.5.5 to 6.5.7 in /packages/hub-nodejs/examples/hello-world (#2264)
Bumps [elliptic](https://github.com/indutny/elliptic) from 6.5.5 to 6.5.7. <details> <summary>Commits</summary> <ul> <li><a href=" |
||
|
|
f9d357b791 |
chore(deps): bump path-to-regexp from 6.2.2 to 6.3.0 (#2311)
Bumps [path-to-regexp](https://github.com/pillarjs/path-to-regexp) from 6.2.2 to 6.3.0. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/pillarjs/path-to-regexp/releases">path-to-regexp's releases</a>.</em></p> <blockquote> <h2>Fix backtracking in 6.x</h2> <p><strong>Fixed</strong></p> <ul> <li>Add backtrack protection to 6.x (<a href="https://redirect.github.com/pillarjs/path-to-regexp/issues/324">#324</a>) f1253b4</li> </ul> <p><a href="https://github.com/pillarjs/path-to-regexp/compare/v6.2.2...v6.3.0">https://github.com/pillarjs/path-to-regexp/compare/v6.2.2...v6.3.0</a></p> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |
||
|
|
15fe47bef4 |
chore(deps): bump axios from 1.6.0 to 1.7.4 in /packages/hub-web/examples/events (#2322)
Bumps [axios](https://github.com/axios/axios) from 1.6.0 to 1.7.4. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/axios/axios/releases">axios's releases</a>.</em></p> <blockquote> <h2>Release v1.7.4</h2> <h2>Release notes:</h2> <h3>Bug Fixes</h3> <ul> <li><strong>sec:</strong> CVE-2024-39338 (<a href="https://redirect.github.com/axios/axios/issues/6539">#6539</a>) (<a href="https://redirect.github.com/axios/axios/issues/6543">#6543</a>) (<a href=" |
||
|
|
60d24fd05e |
chore(deps): bump vite from 5.2.8 to 5.4.7 in /apps/hubble/www (#2328)
Bumps [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) from 5.2.8 to 5.4.7. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/vitejs/vite/releases">vite's releases</a>.</em></p> <blockquote> <h2>create-vite@5.4.0</h2> <p>Please refer to <a href="https://github.com/vitejs/vite/blob/create-vite@5.4.0/packages/create-vite/CHANGELOG.md">CHANGELOG.md</a> for details.</p> <h2>create-vite@5.3.0</h2> <p>Please refer to <a href="https://github.com/vitejs/vite/blob/create-vite@5.3.0/packages/create-vite/CHANGELOG.md">CHANGELOG.md</a> for details.</p> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/vitejs/vite/blob/v5.4.7/packages/vite/CHANGELOG.md">vite's changelog</a>.</em></p> <blockquote> <h2><!-- raw HTML omitted -->5.4.7 (2024-09-20)<!-- raw HTML omitted --></h2> <ul> <li>fix: treat config file as ESM in Deno (<a href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/18158">#18158</a>) (<a href=" |
||
|
|
8ce6169ad3 |
fix: turn sync health contact info into string before logging (#2337)
Contact info appears as "Object" in the logs because it isn't translated into a string prior to logging. ## 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) - [ ] PR includes [documentation](https://github.com/farcasterxyz/hub-monorepo/blob/main/CONTRIBUTING.md#32-writing-docs) if necessary. <!-- start pr-codex --> --- ## PR-Codex overview This PR focuses on enhancing the `syncHealthJob` by adding functionality to serialize contact information into a string format before logging, improving the clarity and usability of logs related to synchronization health. ### Detailed summary - Added import for `addressInfoFromGossip` and `addressInfoToString` from `../../utils/p2p.js`. - Introduced logic to extract `rpcAddress` from `contactInfo`. - Implemented error handling for `addressInfo` and return a string representation of the address if successful. > ✨ Ask PR-Codex anything about this PR by commenting with `/codex {your question}` <!-- end pr-codex --> |
||
|
|
2717d44de3 |
chore: add contact info to sync health logs (#2336)
Add more data to validate whether hubs are connecting to the correct IP addresses and ports. ## 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) - [ ] PR includes [documentation](https://github.com/farcasterxyz/hub-monorepo/blob/main/CONTRIBUTING.md#32-writing-docs) if necessary. <!-- start pr-codex --> --- ## PR-Codex overview This PR focuses on enhancing the logging of sync health jobs by adding contact information related to peers in the logs, which aids in troubleshooting. ### Detailed summary - Added `contactInfoForLogs` method in `syncHealthJob.ts` to retrieve contact information for peers. - Updated the logging in `doJobs` method to include contact info when an error occurs during sync health computation. > ✨ Ask PR-Codex anything about this PR by commenting with `/codex {your question}` <!-- end pr-codex --> |
||
|
|
fff8d7bfaf |
fix: Ignore local/loopback traffic in IP connection limiter (#2335)
## Why is this change needed? This allows the use of reverse proxies. ## Merge Checklist - [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. <!-- start pr-codex --> --- ## PR-Codex overview This PR focuses on enhancing the connection limiting functionality by ignoring local loopback IP traffic and modifying a test case. ### Detailed summary - Updated `rateLimits.ts` to ignore both `127.0.0.1` and `::1` for local loopback traffic. - Changed the connection limit check in `server.ts` to exclude local IPs from the limit enforcement. - Modified the test in `eventService.test.ts` to skip the test case for excessive subscriptions. > ✨ Ask PR-Codex anything about this PR by commenting with `/codex {your question}` <!-- end pr-codex --> |
||
|
|
8923cb7156 |
fix: Ignore rate limits for local/loopback IP traffic (#2331)
## Why is this change needed? When using a proxy in front of the hub you'll get rate limit errors even though the traffic is coming from different IPs. Until we support the `X-Forwarded-For`, this is a quick way to unblock the use of reverse proxies like nginx or Caddy. ## Merge Checklist - [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. <!-- start pr-codex --> --- ## PR-Codex overview This PR focuses on enhancing the rate limiting functionality to ignore rate limits for local loopback traffic, specifically allowing requests from `127.0.0.1` without restrictions. ### Detailed summary - Updated `rateLimits.ts` to bypass rate limits for local loopback IP `127.0.0.1`. - Removed rate limit check in `server.ts` for local requests. - Added a test in `rateLimits.test.ts` to ensure local requests are not rate limited. > ✨ Ask PR-Codex anything about this PR by commenting with `/codex {your question}` <!-- end pr-codex --> |
||
|
|
3a24d074a2 |
chore: release hubble v1.15.4 (#2330)
Releasing hubble v1.15.4. ## 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) - [ ] PR includes [documentation](https://github.com/farcasterxyz/hub-monorepo/blob/main/CONTRIBUTING.md#32-writing-docs) if necessary. <!-- start pr-codex --> --- ## PR-Codex overview This PR updates the version of the `@farcaster/hubble` package from `1.15.3` to `1.15.4` and adds a new entry in the `CHANGELOG.md` to document a new feature. ### Detailed summary - Updated `version` in `apps/hubble/package.json` from `1.15.3` to `1.15.4`. - Added changelog entry for version `1.15.4`: - Introduced feature to allow providing peers' IP address/port for syncing health jobs. > ✨ Ask PR-Codex anything about this PR by commenting with `/codex {your question}` <!-- end pr-codex -->@farcaster/hubble@1.15.4 |
||
|
|
40094001fe |
feat: add the ability to provide ip addresses to sync health job (#2324)
We want to enable hubs to provide ip addresses to the sync health job in order to bypass the contact info lookup required when peer ids are provided. ## 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) - [ ] PR includes [documentation](https://github.com/farcasterxyz/hub-monorepo/blob/main/CONTRIBUTING.md#32-writing-docs) if necessary. <!-- start pr-codex --> --- ## PR-Codex overview This PR focuses on enhancing the `Hub` and `MeasureSyncHealthJobScheduler` classes to support synchronization health monitoring with added capabilities for peer identification and RPC client retrieval. ### Detailed summary - Added `performedFirstSync` property to `MockHub` and `Hub` classes. - Introduced `getHubRpcClient` method in `Hub` and `MockHub`. - Updated `MeasureSyncHealthJobScheduler` to use `PeerIdentifier` type. - Created `getRpcClient` method for handling different peer types. - Modified job execution logic to check for `performedFirstSync`. > ✨ Ask PR-Codex anything about this PR by commenting with `/codex {your question}` <!-- end pr-codex --> |
||
|
|
39be986cda |
chore: release hubble v1.15.3 (#2327)
Releasing hubble v1.15.3. ## 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) - [ ] PR includes [documentation](https://github.com/farcasterxyz/hub-monorepo/blob/main/CONTRIBUTING.md#32-writing-docs) if necessary. <!-- start pr-codex --> --- ## PR-Codex overview This PR updates the version of `@farcaster/hubble` to `1.15.3` and includes enhancements related to syncing trie and log tags in the sync health job. ### Detailed summary - Updated version to `1.15.3` - Added missing messages to sync trie - Enhanced log tags in sync health job and errors > ✨ Ask PR-Codex anything about this PR by commenting with `/codex {your question}` <!-- end pr-codex -->@farcaster/hubble@1.15.3 |
||
|
|
5504e05750 |
feat: pull missing messages into sync trie via sync health job (#2326)
There are cases where messages exist in the db but are missing from the trie. This happens primarily around restarts. When the sync health job sees "message has already been merged" it's an indication that the message exists in the db but not in the trie. Deployed to hoyt for testing and it looks good. ## 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) - [ ] PR includes [documentation](https://github.com/farcasterxyz/hub-monorepo/blob/main/CONTRIBUTING.md#32-writing-docs) if necessary. <!-- start pr-codex --> --- ## PR-Codex overview This PR adds missing messages to the sync trie via a sync health job. ### Detailed summary - Added missing messages to sync trie - Updated `processSumbitResults` to handle already merged messages - Added `numAlreadyMerged` counter - Updated logging for merged messages > ✨ Ask PR-Codex anything about this PR by commenting with `/codex {your question}` <!-- end pr-codex --> |
||
|
|
3b1d12ffaf |
chore: add more message details to sync health errors (#2325)
It's useful to have more information about the original message in these logs to understand if there are patterns in messages that result in certain types of submit errors. ## 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) - [ ] PR includes [documentation](https://github.com/farcasterxyz/hub-monorepo/blob/main/CONTRIBUTING.md#32-writing-docs) if necessary. <!-- start pr-codex --> --- ## PR-Codex overview This PR enhances logging in the `syncHealthJob.ts` file by adding more detailed message information for sync health errors. ### Detailed summary - Added `unixTimestampFromMessage` method to extract Unix timestamp from message data - Updated `processSumbitResults` to include detailed message information in logs for successful and failed submissions > ✨ Ask PR-Codex anything about this PR by commenting with `/codex {your question}` <!-- end pr-codex --> |
||
|
|
7206e8c579 |
chore: add start time and stop time to sync health logs (#2323)
## Why is this change needed? Describe why this issue should be fixed and link to any relevant design docs, issues or other relevant items. ## 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) - [ ] PR includes [documentation](https://github.com/farcasterxyz/hub-monorepo/blob/main/CONTRIBUTING.md#32-writing-docs) if necessary. <!-- start pr-codex --> --- ## PR-Codex overview This PR enhances the sync health job in `hubble` by adding more log tags and capturing start and stop times. ### Detailed summary - Added start and stop time parameters to `processSumbitResults` function - Enhanced log details with `startTime` and `stopTime` in `MeasureSyncHealthJobScheduler` - Updated `resultsPushingToUs` with `startTime` and `stopTime` parameters > ✨ Ask PR-Codex anything about this PR by commenting with `/codex {your question}` <!-- end pr-codex --> |
||
|
|
f7c1a97547 |
chore(deps): bump axios from 1.6.0 to 1.7.4 in /packages/hub-nodejs/examples/hello-world (#2254)
Bumps [axios](https://github.com/axios/axios) from 1.6.0 to 1.7.4. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/axios/axios/releases">axios's releases</a>.</em></p> <blockquote> <h2>Release v1.7.4</h2> <h2>Release notes:</h2> <h3>Bug Fixes</h3> <ul> <li><strong>sec:</strong> CVE-2024-39338 (<a href="https://redirect.github.com/axios/axios/issues/6539">#6539</a>) (<a href="https://redirect.github.com/axios/axios/issues/6543">#6543</a>) (<a href=" |
||
|
|
4909c176a7 |
chore(deps): bump axios from 1.6.0 to 1.7.4 in /packages/hub-web/examples/submit-message (#2253)
Bumps [axios](https://github.com/axios/axios) from 1.6.0 to 1.7.4. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/axios/axios/releases">axios's releases</a>.</em></p> <blockquote> <h2>Release v1.7.4</h2> <h2>Release notes:</h2> <h3>Bug Fixes</h3> <ul> <li><strong>sec:</strong> CVE-2024-39338 (<a href="https://redirect.github.com/axios/axios/issues/6539">#6539</a>) (<a href="https://redirect.github.com/axios/axios/issues/6543">#6543</a>) (<a href=" |
||
|
|
ae2d887e4a |
update CHANGELOG.md (#2274)
Duplicated twice ## Why is this change needed? Describe why this issue should be fixed and link to any relevant design docs, issues or other relevant items. ## Merge Checklist _Choose all relevant options below by adding an `x` now or at any time before submitting for review_ - [ ] PR title adheres to the [conventional commits](https://www.conventionalcommits.org/en/v1.0.0/) standard - [ ] PR has a [changeset](https://github.com/farcasterxyz/hub-monorepo/blob/main/CONTRIBUTING.md#35-adding-changesets) - [ ] PR has been tagged with a change label(s) (i.e. documentation, feature, bugfix, or chore) - [ ] PR includes [documentation](https://github.com/farcasterxyz/hub-monorepo/blob/main/CONTRIBUTING.md#32-writing-docs) if necessary. <!-- start pr-codex --> --- ## PR-Codex overview This PR focuses on adding protobufs `IdRegistryEvent` and `SignerStore` to the Hubble app, along with updating dependencies. ### Detailed summary - Added protobufs `IdRegistryEvent` and `SignerStore` - Updated dependencies for `@farcaster/utils@0.2.0` and `@farcaster/protobufs@0.1.1` > ✨ Ask PR-Codex anything about this PR by commenting with `/codex {your question}` <!-- end pr-codex --> |
||
|
|
5a2857a0fa |
fix:docs (#2277)
## Why is this change needed? Fixes #2276 Corrected several grammatical and textual errors in the documentation files. This change is needed to ensure that the documentation is clear, professional, and free of errors, which will enhance the user experience and make the documentation easier to understand for all contributors. ## 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 - [ ] 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. <!-- start pr-codex --> --- ## PR-Codex overview This PR improves code consistency and clarity in documentation across the project. ### Detailed summary - Corrected grammar in `architecture.md` - Updated formatting in `CONTRIBUTING.md` - Ensured consistent use of backticks in documentation > ✨ Ask PR-Codex anything about this PR by commenting with `/codex {your question}` <!-- end pr-codex --> |
||
|
|
03a3f29ce5 |
move to hoyt from nemes and add idenitity env variable comment (#2295)
## Why is this change needed? Documents: https://warpcast.com/sds/0x4a4bedb1 and implements https://warpcast.com/sanjay/0x498eb749 ## Merge Checklist _Choose all relevant options below by adding an `x` now or at any time before submitting for review_ - [ ] PR title adheres to the [conventional commits](https://www.conventionalcommits.org/en/v1.0.0/) standard - [ ] PR has a [changeset](https://github.com/farcasterxyz/hub-monorepo/blob/main/CONTRIBUTING.md#35-adding-changesets) - [ ] PR has been tagged with a change label(s) (i.e. documentation, feature, bugfix, or chore) - [ ] PR includes [documentation](https://github.com/farcasterxyz/hub-monorepo/blob/main/CONTRIBUTING.md#32-writing-docs) if necessary. <!-- start pr-codex --> --- ## PR-Codex overview The focus of this PR is to update the bootstrap node in the `docker-compose.yml` file for the Hubble app. ### Detailed summary - Updated the bootstrap node from `/dns/nemes.farcaster.xyz/tcp/2282` to `/dns/hoyt.farcaster.xyz/tcp/2282` in the Hubble `docker-compose.yml` file. > ✨ Ask PR-Codex anything about this PR by commenting with `/codex {your question}` <!-- end pr-codex --> |
||
|
|
5048b296c6 |
Docs: Update README (#2299)
Hi. Please review the changes in the documentation ## Why is this change needed? Describe why this issue should be fixed and link to any relevant design docs, issues or other relevant items. ## Merge Checklist _Choose all relevant options below by adding an `x` now or at any time before submitting for review_ - [ ] PR title adheres to the [conventional commits](https://www.conventionalcommits.org/en/v1.0.0/) standard - [ ] PR has a [changeset](https://github.com/farcasterxyz/hub-monorepo/blob/main/CONTRIBUTING.md#35-adding-changesets) - [ ] PR has been tagged with a change label(s) (i.e. documentation, feature, bugfix, or chore) - [ ] PR includes [documentation](https://github.com/farcasterxyz/hub-monorepo/blob/main/CONTRIBUTING.md#32-writing-docs) if necessary. <!-- start pr-codex --> --- ## PR-Codex overview The focus of this PR is to enhance the clarity of the README.md file by adding hyperlinks to tools and technologies mentioned. ### Detailed summary - Added hyperlinks to Typescript, Yarn, and TurboRepo for improved readability in the README.md file. > ✨ Ask PR-Codex anything about this PR by commenting with `/codex {your question}` <!-- end pr-codex --> |
||
|
|
21bb96a54c |
Removed the hyphen in onchain and offchain to maintain a consistent style (#2315)
## Why is this change needed? "The community has generally settled on onchain and offchain as individual words, rather than hyphenated." - @sds https://github.com/farcasterxyz/docs/pull/296#discussion_r1744299916 Removed the hyphen in onchain and offchain to maintain a consistent style <!-- start pr-codex --> --- ## PR-Codex overview This PR standardizes the term "on-chain" to "onchain" across various files and documentation. ### Detailed summary - Replaced "on-chain" with "onchain" for consistency - Updated terminology in code comments, classes, and documentation > ✨ Ask PR-Codex anything about this PR by commenting with `/codex {your question}` <!-- end pr-codex --> |
||
|
|
7fe117e4ec |
chore: release shuttle v0.6.4 (#2321)
## Why is this change needed? Releases shuttle v.0.6.4 ## 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) - [ ] PR includes [documentation](https://github.com/farcasterxyz/hub-monorepo/blob/main/CONTRIBUTING.md#32-writing-docs) if necessary. <!-- start pr-codex --> --- ## PR-Codex overview This PR updates the version of the `@farcaster/shuttle` package to `0.6.4` and aligns hub-nodejs dependency interfaces. ### Detailed summary - Updated `@farcaster/shuttle` package version to `0.6.4` - Aligned hub-nodejs dependency interfaces > ✨ Ask PR-Codex anything about this PR by commenting with `/codex {your question}` <!-- end pr-codex -->@farcaster/shuttle@0.6.4 |
||
|
|
2de0697ef5 |
chore: upgrade hub-nodejs dependency so interfaces align (#2320)
## Why is this change needed? Describe why this issue should be fixed and link to any relevant design docs, issues or other relevant items. ## 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) - [ ] PR includes [documentation](https://github.com/farcasterxyz/hub-monorepo/blob/main/CONTRIBUTING.md#32-writing-docs) if necessary. <!-- start pr-codex --> --- ## PR-Codex overview This PR updates the `@farcaster/hub-nodejs` dependency in the `shuttle` package to version `0.12.3` to align with interfaces. ### Detailed summary - Updated `@farcaster/hub-nodejs` dependency in `shuttle` package to `0.12.3` - Ensured alignment with interfaces by upgrading hub-nodejs dependency > ✨ Ask PR-Codex anything about this PR by commenting with `/codex {your question}` <!-- end pr-codex --> |
||
|
|
e2ce82b4f2 |
chore: bump version (#2316)
## Why is this change needed? bumps version of hubble and libraries ## 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. <!-- start pr-codex --> --- ## PR-Codex overview This PR updates version numbers and dependencies across different packages. ### Detailed summary - Bumped version to `0.15.3` in `@farcaster/core` - Bumped version to `0.9.3` in `@farcaster/hub-web` - Bumped version to `0.12.3` in `@farcaster/hub-nodejs` - Bumped version to `1.15.2` in `@farcaster/hubble` - Updated dependencies and added new features in various packages > ✨ Ask PR-Codex anything about this PR by commenting with `/codex {your question}` <!-- end pr-codex -->@farcaster/core@0.15.3 @farcaster/hub-nodejs@0.12.3 @farcaster/hub-web@0.9.3 @farcaster/hubble@1.15.2 |
||
|
|
e5a8611498 |
feat: support bulk message RPC (#2313)
## Why is this change needed? Reconciliation of messages historically from off-hub sources is achieved via `submitMessage`, which incurs a performance penalty when many of these calls are made in rapid succession. This change introduces a new `submitBulkMessages` RPC which allows many of the to-be reconciled messages to be submitted at once and handle via the more efficient rust `mergeMany` underlying call. ## 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. <!-- start pr-codex --> --- ## PR-Codex overview This PR adds a new gRPC method `SubmitBulkMessages` for submitting multiple messages at once and updates related proto files and service implementations. ### Detailed summary - Added `SubmitBulkMessages` gRPC method - Defined new message types: `SubmitBulkMessagesRequest`, `MessageError`, `BulkMessageResponse`, `SubmitBulkMessagesResponse` - Updated service implementations and proto files - Implemented server-side logic for `SubmitBulkMessages` - Added encoding and decoding functions for new message types > The following files were skipped due to too many changes: `packages/hub-web/src/generated/request_response.ts`, `packages/hub-nodejs/src/generated/request_response.ts`, `packages/core/src/protobufs/generated/request_response.ts` > ✨ Ask PR-Codex anything about this PR by commenting with `/codex {your question}` <!-- end pr-codex --> |
||
|
|
0a655b9bd9 |
fix: Fix flaky test (#2314)
## Why is this change needed? Fix flaky timestamp test that was relying `expiry` instead of `blockTimestamp` for storage rent. ## 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 - [ ] 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) - [ ] PR includes [documentation](https://github.com/farcasterxyz/hub-monorepo/blob/main/CONTRIBUTING.md#32-writing-docs) if necessary. <!-- start pr-codex --> --- ## PR-Codex overview The focus of this PR is to update the storage cache test by adjusting the values of `units` and `legacy_units`. ### Detailed summary - Updated `units` and `legacy_units` values in the storage cache test - Added `blockTimestamp` to `storageRentEvent` > ✨ Ask PR-Codex anything about this PR by commenting with `/codex {your question}` <!-- end pr-codex --> |
||
|
|
f084daa184 |
feat: request missing on chain events on error (#2298)
## Why is this change needed? Our hubs regularly fail to get into sync because some of them are missing onchain events. This feature will have us request missing onchain events if there are errors related to missing on chain events when messages are submitted. Deployed to hoyt for testing: [Logs](https://app.datadoghq.com/logs?query=%22Attempting%20to%20retryEventsForFid%22%20OR%20%22Finished%20retryEventsForFid%22%20OR%20%22cacheOnChainEvent%22%20&agg_m=count&agg_m_source=base&agg_q=%40fid&agg_q_source=base&agg_t=count&cols=host%2Cservice&fromUser=true&messageDisplay=inline&refresh_mode=paused&storage=hot&stream_sort=time%2Cdesc&top_n=30&top_o=top&viz=stream&x_missing=true&from_ts=1726433975166&to_ts=1726433977504&live=false) ## 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) - [ ] PR includes [documentation](https://github.com/farcasterxyz/hub-monorepo/blob/main/CONTRIBUTING.md#32-writing-docs) if necessary. <!-- start pr-codex --> --- ## PR-Codex overview The focus of this PR is to enhance error handling and retry mechanisms for on-chain events in the Hubble application. ### Detailed summary - Added feature to request missing on-chain events on related submit message errors - Improved error code handling for validation failures and unknown signers - Implemented retry mechanism for on-chain events by fid - Enhanced error messages and error handling logic > The following files were skipped due to too many changes: `apps/hubble/src/storage/engine/index.ts`, `apps/hubble/src/eth/l2EventsProvider.ts` > ✨ Ask PR-Codex anything about this PR by commenting with `/codex {your question}` <!-- end pr-codex --> |
||
|
|
398b66162f |
chore: release shuttle v0.6.3 (#2310)
Release shuttle v0.6.3. ## 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) - [ ] PR includes [documentation](https://github.com/farcasterxyz/hub-monorepo/blob/main/CONTRIBUTING.md#32-writing-docs) if necessary. <!-- start pr-codex --> --- ## PR-Codex overview This PR updates the version of `@farcaster/shuttle` package to `0.6.3` and includes a new metric for events processed with event type tag. ### Detailed summary - Updated version to `0.6.3` - Added a new metric for events processed with event type tag > ✨ Ask PR-Codex anything about this PR by commenting with `/codex {your question}` <!-- end pr-codex -->@farcaster/shuttle@0.6.3 |
||
|
|
f6ba2b096a |
chore: add metric to track events received by kind (#2309)
There are regular spikes in events received that aren't reflected in the hub metrics. This metric should be useful for understanding what kind of events are causing the spikes. ## 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) - [ ] PR includes [documentation](https://github.com/farcasterxyz/hub-monorepo/blob/main/CONTRIBUTING.md#32-writing-docs) if necessary. <!-- start pr-codex --> --- ## PR-Codex overview This PR adds a metric for events processed with event type tag in the `shuttle` package. ### Detailed summary - Added metric for events processed with event type tag in `shuttle/eventStream.ts` - Incremented attempt count for current and stale events - Added hubEventType tag to metrics - Calculated dequeue delay for events > ✨ Ask PR-Codex anything about this PR by commenting with `/codex {your question}` <!-- end pr-codex --> |
||
|
|
1c9deb45a1 | Update CONTRIBUTING.md |