Skip to content

feat: boba#119

Open
LeoSlrRf wants to merge 1 commit into
mainfrom
feat/boba
Open

feat: boba#119
LeoSlrRf wants to merge 1 commit into
mainfrom
feat/boba

Conversation

@LeoSlrRf
Copy link
Copy Markdown

Description

Add payment subgraph for Boba

@greptile-apps
Copy link
Copy Markdown
Contributor

greptile-apps Bot commented May 24, 2026

Greptile Summary

This PR adds Boba network support to the payments subgraph by introducing subgraph.boba.yaml, registering "boba" in the deploy matrix and networks list, and bumping @requestnetwork/smart-contracts to obtain the Boba contract addresses.

  • subgraph.boba.yaml: Tracks four contracts (ERC20Proxy, ERC20FeeProxy, EthProxy, EthFeeProxy) on Boba; conversion proxies are omitted, which is consistent with several other chains in this repo.
  • package.json: Upgrades @requestnetwork/smart-contracts from the stable 0.49.0 to the pre-release build 0.51.1-next.2d9d2486.0, a jump of two minor versions on the next channel.
  • yarn.lock: The generated lockfile contains duplicate tslib@2.8.1 stanzas (back-to-back with no separator) and duplicate dependency keys inside the smart-contracts entry, indicating the lockfile was not regenerated cleanly.

Confidence Score: 2/5

The yarn.lock is malformed with duplicate tslib@2.8.1 stanzas and a smart-contracts dependency block that lists the same keys twice; this could break CI installs or cause non-deterministic resolution across environments.

The lockfile corruption means yarn install may behave differently across machines or fail outright. Additionally, the core shared dependency @requestnetwork/smart-contracts was bumped to a pre-release next build spanning two minor versions — this affects every chain in the subgraph, not just Boba.

yarn.lock and package.json need attention: the lockfile should be regenerated cleanly after resolving whether a stable version of @requestnetwork/smart-contracts can be used instead of the next pre-release.

Important Files Changed

Filename Overview
subgraph.boba.yaml New subgraph config for Boba with 4 data sources (ERC20Proxy, ERC20FeeProxy, EthProxy, EthFeeProxy); conversion proxies intentionally omitted consistent with other limited chains; missing trailing newline.
package.json Bumps @requestnetwork/smart-contracts from stable 0.49.0 to a pre-release next build (0.51.1-next.2d9d2486.0), introducing risk for all chains that depend on this package.
yarn.lock Corrupted lockfile: duplicate tslib@2.8.1 stanzas and duplicate dependency keys inside the smart-contracts entry; needs a clean regeneration.
.github/workflows/deploy.yaml Adds boba to the deploy matrix; straightforward and consistent with existing chain entries.
cli/networks.json Adds boba to the networks list; simple, correct JSON update.

Flowchart

%%{init: {'theme': 'neutral'}}%%
flowchart TD
    A[Push to main] --> B[deploy-thegraph-studio matrix]
    B --> D[boba chain job]
    D --> E[checkout + deploy action]
    E --> F[graph-cli codegen + build]
    F --> G[graph deploy to Subgraph Studio]

    subgraph BobaSubgraph["subgraph.boba.yaml"]
        I["ERC20Proxy 0x5079...d72"]
        J["ERC20FeeProxy_0_2_0 0x8881...eE7"]
        K["EthProxy_0_3_0 0xba25...fBA"]
        L["EthFeeProxy_0_2_0 0xe456...eF"]
    end

    G --> BobaSubgraph
Loading

Comments Outside Diff (1)

  1. yarn.lock, line 4075-4082 (link)

    P1 Duplicate tslib@2.8.1 stanza corrupts the lockfile

    Two back-to-back tslib@2.8.1: entries exist with no blank line separator (lines 4075 and 4079). Yarn's lockfile parser requires unique keys per stanza; a duplicate stanza can make yarn install fail with a parse error or silently resolve to whichever entry the parser happens to keep, causing non-deterministic dependency resolution across environments. Run yarn again after fixing the package version bump to regenerate a clean lockfile.

Reviews (1): Last reviewed commit: "feat: boba" | Re-trigger Greptile

Comment thread yarn.lock
Comment on lines 684 to +688
dependencies:
commerce-payments "git+https://github.com/base/commerce-payments.git#v1.0.0"
tslib "2.8.1"
commerce-payments "git+https://github.com/base/commerce-payments.git#v1.0.0"
tslib "2.8.1"
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 Duplicate dependency keys in smart-contracts lock stanza

The generated entry for @requestnetwork/smart-contracts@0.51.1-next.2d9d2486.0 lists both commerce-payments and tslib twice under dependencies. Duplicate keys in a YAML mapping are technically invalid; most parsers apply last-wins semantics, but it signals the lockfile was not generated cleanly and may trip stricter tooling. Regenerating the lockfile after a clean install should eliminate these.

Comment thread package.json
"@graphprotocol/graph-cli": "^0.81.0",
"@graphprotocol/graph-ts": "^0.35.1",
"@requestnetwork/smart-contracts": "0.49.0",
"@requestnetwork/smart-contracts": "0.51.1-next.2d9d2486.0",
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 Pre-release next package pinned as production dependency

@requestnetwork/smart-contracts is being bumped from the stable 0.49.0 to 0.51.1-next.2d9d2486.0, a pre-release nightly build that skips roughly two minor versions. Pre-release packages on the next dist-tag may include breaking changes, incomplete ABIs, or be unpublished/yanked at any time. If the Boba contract addresses are now available in a stable release (or will be shortly), pinning to that instead reduces risk for all chains that share this dependency.

Comment thread subgraph.boba.yaml
handler: handleTransferWithReferenceAndFee
receipt: true
file: ./src/ethFeeProxy.ts

No newline at end of file
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Missing trailing newline at end of file

The file ends without a newline character. While not functionally harmful here, it is inconsistent with every other subgraph.*.yaml in the repo and may trigger linting warnings in some tools.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant