Skip to content

Conversation

@silent-cipher
Copy link
Collaborator

@silent-cipher silent-cipher commented Jan 15, 2026

📝 Description

This PR adds Sync Contract Addresses workflow to raise a PR for any contract address update in upstream deployments.
Also, replaces grid card view by table to show all FWSS related contracts.

  • Type: New feature

🛠️ Key Changes

  • Update contract type definitions
  • Create deployments.json with deployed contract addresses. JSON data is validated by zod schema.
  • Create WarmStorageContractsTable to display all FWSS related contract addresses into table format. This replaces the Grid Cards with table.

📸 Screenshots

Screenshot 2026-01-26 at 6 58 09 PM

Closes #134 #217

@vercel
Copy link

vercel bot commented Jan 15, 2026

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Review Updated (UTC)
filecoin-cloud Ready Ready Preview, Comment Jan 26, 2026 2:15pm

Request Review

@FilOzzy FilOzzy added this to FOC Jan 15, 2026
@github-project-automation github-project-automation bot moved this to 📌 Triage in FOC Jan 15, 2026
@silent-cipher silent-cipher self-assigned this Jan 15, 2026
@BigLep BigLep moved this from 📌 Triage to 🔎 Awaiting review in FOC Jan 15, 2026
@BigLep
Copy link
Contributor

BigLep commented Jan 15, 2026

@silent-cipher : when we deploy new contracts does this get updated automatically or is there a manual step?

Also, if you want someone to review it, please @mention them or request review.

@silent-cipher
Copy link
Collaborator Author

It's a manual step. When new contracts are deployed, the contract addresses needs to be updated explicitly.

@BigLep
Copy link
Contributor

BigLep commented Jan 17, 2026

It's a manual step. When new contracts are deployed, the contract addresses needs to be updated explicitly.

Ack, ok. It would be good to have that automated, but that's a task for another time. For now we'll document this step as part of doing FilOzone/filecoin-services#346

@rjan90
Copy link

rjan90 commented Jan 17, 2026

It's a manual step. When new contracts are deployed, the contract addresses needs to be updated explicitly.

Can we use the deployment.json file in filecoin-service: https://github.com/FilOzone/filecoin-services/blob/main/service_contracts/deployments.json ? Maybe have a GHA that checks them every day? And then open a PR if they have changed?

@BigLep
Copy link
Contributor

BigLep commented Jan 23, 2026

@silent-cipher : my thought would be that we should list all the FWSS related contracts (which includs pdpVerifier and the SPRegistry for example). I created an issue for this #217 . I think we'll likely need to change the layout, and probably a table is better than cards.

@silent-cipher
Copy link
Collaborator Author

Agreed - listing all FWSS-related contracts makes sense. I’ll incorporate #217 here, and I’m leaning towards using a table instead of cards.
Also: I’ll align the list with the contracts shipped (https://github.com/FilOzone/filecoin-services/blob/main/service_contracts/deployments.json) so we don’t miss anything.

@BigLep
Copy link
Contributor

BigLep commented Jan 23, 2026

All sounds good @silent-cipher . The part that will need to be clarified is how new pay.filecoin.cloud filecoin.cloud gets built/deployed if https://github.com/FilOzone/filecoin-services/blob/main/service_contracts/deployments.json changes.

@silent-cipher
Copy link
Collaborator Author

Until now pay.filecoin.cloud was only dependent on filecoin-pay contract. If that changes then it's manual task to update the subgraph ( ui as well if there's schema changes ) and redeploy it. If there's no ui changes then updating subgraph and redeploying it will do the work.

@BigLep
Copy link
Contributor

BigLep commented Jan 26, 2026

@silent-cipher : apologies, I meant to say: we need to clarify is how new filecoin.cloud (not pay.filecoin.cloud) gets built/deployed if https://github.com/FilOzone/filecoin-services/blob/main/service_contracts/deployments.json changes.

@github-actions github-actions bot added size/L and removed size/S labels Jan 26, 2026
@silent-cipher silent-cipher changed the title feat: replace Service Registry with PDP Verifier feat: automate contract syncing and migrate contracts display to a table Jan 26, 2026
@silent-cipher silent-cipher marked this pull request as ready for review January 26, 2026 13:33
@silent-cipher
Copy link
Collaborator Author

In this PR, I’ve introduced a new github workflow to sync contract addresses with upstream deployments
(https://github.com/FilOzone/filecoin-services/blob/main/service_contracts/deployments.json
).
The workflow opens a PR whenever it detects changes in contract addresses. It runs daily and can also be triggered manually. With this in place, contract syncing becomes an automated process.

Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

Adds automated syncing of on-chain contract addresses from an upstream deployments.json, and updates the Warm Storage Service UI to present all relevant contract addresses in a table.

Changes:

  • Introduces deployments.json + Zod schema parsing to centralize and validate deployed contract addresses.
  • Updates chain/contract config to reference validated addresses instead of hardcoded strings.
  • Replaces the Warm Storage contract “cards” UI with a TanStack table listing all FWSS-related contracts and links.

Reviewed changes

Copilot reviewed 13 out of 13 changed files in this pull request and generated 5 comments.

Show a summary per file
File Description
src/schemas/deployments-schema.ts Adds Zod schema for validating deployments JSON and typing addresses as viem Address.
src/config/deployments.json Introduces checked-in contract addresses for mainnet and calibration.
src/config/deployments.ts Parses and exports validated deployments data.
src/config/chains.ts Migrates chain contract address sources to deployments.json and expands contract set.
src/constants/site-metadata.ts Adds source-code URLs for additional contracts displayed in the new table.
src/app/warm-storage-service/hooks/use-contracts-table-data.ts Provides table-ready contract rows including explorer and source links.
src/app/warm-storage-service/data/contracts-column-definition.tsx Defines table columns for contracts list.
src/app/warm-storage-service/components/WarmStorageContractsTable.tsx New TanStack-based contracts table component.
src/app/warm-storage-service/components/WarmStorageServicesClient.tsx Switches UI from contract cards to the new contracts table.
scripts/sync-contract-addresses.ts New script to compare/sync local deployments against upstream and print diffs.
.github/workflows/sync-contract-addresses.yml Adds scheduled workflow to run the script and open/update a PR on changes.
package.json Adds tsx to run the sync script in CI/workflows.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

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

Labels

Projects

Status: 🔎 Awaiting review

Development

Successfully merging this pull request may close these issues.

Change "Service Registry" to "PDP Verifier" in Warm Storage Details Contract Addresses

4 participants