Add more data in explorer - #53
Conversation
n13
left a comment
There was a problem hiding this comment.
Reviewer model: GPT-6 Sol
Verdict: Request changes. The new test prevents the required build from passing.
- Blocking —
src/components/common/table-columns/ERROR_EVENT_COLUMNS.test.tsx:17:docsColumn()selects from the union of all table columns, but thetypeof column.cell === 'function'check does not leave TypeScript with a callablecellat this use site. The PR's Build and Test job fails duringtscwith TS2349 (Not all constituents ... are callable), so this head cannot pass CI. Narrow the docs column to a callable cell type or test its output by rendering the column, then rerun the build.
Validation: reviewed the diff from base 10db6d2 to head b897e49; git diff --check passed. The on-head CI Vite bundle succeeded, but tsc failed at the line above. I compared the vesting accrual formula with pallets/vesting/src/lib.rs and found it consistent. Local Jest/build were unavailable because this checkout has no installed dependencies or Bun runtime; the workflow also does not run Jest.
n13
left a comment
There was a problem hiding this comment.
Reviewer model: GPT-6 Sol
Verdict: Request changes. The previous TypeScript build failure is fixed at b3b7ef0, but two user-facing issues remain.
-
Blocking —
src/hooks/useChecksum.tsx:10-23andsrc/components/ui/composites/account-address-cell/AccountAddressCell.tsx:26-49: When a cell is reused for a different address, the hook returns the previouschecksumwithloading=falseuntil its effect runs. The cell can therefore render and offer to copy the old address's checkphrase next to the new address. This is reachable in search results, whose list items are keyed by index (SearchPreview.tsx:91-94), and in table rows reused across pages. Keep the resolved address with the phrase and render it only when it matches the current address; cover an address-change rerender in a component test. -
Blocking for the selectable Planck network —
src/routes/vesting/index.tsx:14-26andsrc/api/vesting-schedules.tsx:13-15: The new route and navigation are available on every network, but the configured Planck endpoint (sub2.quantus.com/v1/graphql) currently returnsfield 'vesting_schedule_aggregate' not found in type: 'query_root'and has novesting_scheduletype. All Vesting panels fail on Planck. Deploy a compatible Subsquid for Planck before this route is exposed there, or gate the page for unsupported networks. The PR description already calls out the Subsquid rollout prerequisite; please verify it for both selectable networks before merging.
Validation: reviewed base 10db6d2 through head b3b7ef0; git diff --check passed. The on-head GitHub Build and Test and dependency checks pass. A read-only mainnet GraphQL probe returned 48 vesting rows; the Planck probe returned the schema error above. Local Jest was unavailable because this worktree has no installed dependencies or Bun; the CI workflow does not run Jest.
This is known issue that is why we have note saying don't merge this unless subsquid updated to latest for both env |
n13
left a comment
There was a problem hiding this comment.
Reviewer model: GPT-6 Sol
Verdict: Request changes. The stale checkphrase issue is fixed at f8141b9, but Vesting still fails on the selectable Planck network.
- Blocking — src/routes/vesting/index.tsx:14-26 and src/api/vesting-schedules.tsx:13-15: The page is exposed on Planck and all three panels query vesting_schedule or vesting_schedule_aggregate. A fresh read-only query to the configured Planck endpoint (https://sub2.quantus.com/v1/graphql) returns
field 'vesting_schedule_aggregate' not found in type: 'query_root'; the same query returns 48 schedules on mainnet. Deploy a compatible Subsquid for Planck before enabling this page there, or hide/disable the route for unsupported networks. The PR description also identifies the Subsquid rollout as a merge prerequisite.
Validation: reviewed base 10db6d2 through head f8141b9, including the new address-change regression test; git diff --check passed. The on-head GitHub Build and Test and dependency checks pass. Local Jest was unavailable because this detached worktree has no installed dependencies or Bun, and the CI workflow does not run Jest. No other blocking findings identified.
to not show crashing because displaying partial day
n13
left a comment
There was a problem hiding this comment.
Reviewer model: GPT-6 Sol
Verdict: Request changes. This head fails the required build, and its GraphQL queries break the selectable Planck network.
- Blocking —
src/components/features/landing/hero/chain-stats/transferred-amount-chart-value.ts:10: The new10nliteral is incompatible withtsconfig.json'ses2017target. The current Build and Test job failstscwith TS2737 here and intransferred-amount-chart-value.test.ts:24. UseBigInt(10)as the other vesting code does, or update the target deliberately, then rerun the build. - Blocking —
src/api/chain-status.tsx:31-34,56andsrc/api/vesting-schedules.tsx:13: The UI exposes these queries on Planck, but its configuredsub2.quantus.com/v1/graphqlendpoint currently rejectscirculating_supply,transferred_amount, andvesting_schedule_aggregateas unknown fields. The homepage's combined stats query now fails, hiding existing stats, and every new Vesting panel fails there. Deploy a compatible Planck Subsquid before enabling these queries, or gate unsupported fields and the Vesting route by network. This remains a merge prerequisite noted in the PR description.
Validation: reviewed base 10db6d2 through head 65a6ca6; git diff --check passed. The on-head GitHub build fails with TS2737; a fresh read-only GraphQL probe confirmed the Planck errors while the mainnet fields and vesting aggregate resolve. Local build and Jest were unavailable because this detached worktree has no installed dependencies or Bun runtime.
n13
left a comment
There was a problem hiding this comment.
Reviewer model: GPT-6 Sol
Verdict: Approve. No blocking findings at head 25b82c7.
The prior BigInt build failure is fixed. I verified the complete homepage stats query and new account, error, and vesting fields against both configured GraphQL endpoints. Mainnet returns 48 vesting schedules; Planck returns zero without schema errors. The vesting calculation, address-change checkphrase handling, and table wiring are consistent with the reviewed code and tests.
Validation: git diff --check and local tsc --noEmit passed; the exact-head GitHub build and dependency checks passed. The initial npm install omitted the @testing-library/dom peer, so the first local build stopped at the test's waitFor import; TypeScript passed after adding that peer in this temporary worktree. Local Jest could not run any suites because the existing Jest config does not transform jest.setup.ts (Cannot use import statement outside a module), and CI does not run Jest.
Summary
Note
Only merge if we already have latest version of subsquid up