Skip to content

Conversation

rjan90
Copy link
Collaborator

@rjan90 rjan90 commented Oct 6, 2025

Towards: #254

Although currently blocked on pushing releases until FilOzone/pdp#210 is out, a initial review of the changelog at this point seems like a good starting point

@FilOzzy FilOzzy added this to FS Oct 6, 2025
@github-project-automation github-project-automation bot moved this to 📌 Triage in FS Oct 6, 2025
@rjan90
Copy link
Collaborator Author

rjan90 commented Oct 6, 2025

Changes since commit e24ce37, which is when the entry for v0.1.0 was created in the changelog. From now on we will tag releases, so that finding the diff will be easier. Items below marked with ✅ has been highlighted in the changelog:

git log --oneline e24ce37..main

@rjan90 rjan90 moved this from 📌 Triage to ⌨️ In Progress in FS Oct 6, 2025
@rjan90
Copy link
Collaborator Author

rjan90 commented Oct 6, 2025

Just commenting here that a lot of the oldest changes from the diff between 0.1.0 and 0.2.0 in the tags are kind of outdated, as there have been multiple contracts/releases published: https://github.com/FilOzone/filecoin-services/tags, but we have not kept a good enough changelog on them.

@rjan90 rjan90 force-pushed the phi/prep-020-release branch 2 times, most recently from e922400 to c047dad Compare October 6, 2025 15:39
@rjan90 rjan90 self-assigned this Oct 6, 2025
@rjan90 rjan90 moved this from ⌨️ In Progress to 🔎 Awaiting review in FS Oct 6, 2025
@rjan90 rjan90 marked this pull request as ready for review October 6, 2025 15:41
@rjan90 rjan90 requested a review from BigLep October 6, 2025 15:41
@github-project-automation github-project-automation bot moved this from 🔎 Awaiting review to ✔️ Approved by reviewer in FS Oct 6, 2025
@rjan90 rjan90 force-pushed the phi/prep-020-release branch from c096105 to 550eb03 Compare October 6, 2025 19:38
@rjan90
Copy link
Collaborator Author

rjan90 commented Oct 6, 2025

Okay, deploying the M3 Filecoin Warm Storage Service contract for Calibration from this commit:

git log
commit 65b82ac (HEAD -> phi/prep-020-release, origin/phi/prep-020-release)
Author: Phi [email protected]
Date: Mon Oct 6 21:41:04 2025 +0200

I´m using the https://github.com/FilOzone/filecoin-services/blob/main/service_contracts/tools/deploy-warm-storage-calibnet.sh script, and are setting these env-vars:


Running the script gives:

./deploy-warm-storage-calibnet.sh                                                          
Deploying Warm Storage Service Contract
Service configuration:
  Name: Filecoin Warm Storage Service - Calibration M3
  Description: Calibration FWSS contracts for M3
Querying PDPVerifier's challengeFinality...
PDPVerifier challengeFinality: 10
Configuration validation passed:
  PDPVerifier challengeFinality: 10
  MAX_PROVING_PERIOD: 240 epochs
  CHALLENGE_WINDOW_SIZE: 30 epochs
Deploying contracts from address 0xe7D1b14eAC0dcE3d6867C2Ef06b5bdFF52362C84
Deploying FilecoinWarmStorageService implementation...
FilecoinWarmStorageService implementation deployed at: 0xDcFa312C4c26Fa99d81FBF8673f8c9B7Ffa3fd11
Deploying FilecoinWarmStorageService proxy...
FilecoinWarmStorageService proxy deployed at: 0x3Ccb1bCe9474ff07D484dB14580790D12489b61b
----
# DEPLOYMENT SUMMARY
FilecoinWarmStorageService Implementation: 0xDcFa312C4c26Fa99d81FBF8673f8c9B7Ffa3fd11
FilecoinWarmStorageService Proxy: 0x3Ccb1bCe9474ff07D484dB14580790D12489b61b

USDFC token address: 0xb3042734b608a1B16e9e86B374A3f3e389B4cDf0
PDPVerifier address: 0x9ecb84bB617a6Fd9911553bE12502a1B091CdfD8
Payments contract address: 0x6dB198201F900c17e86D267d7Df82567FB03df5E
FilBeam controller address: 0x5f7E5E2A756430EdeE781FF6e6F7954254Ef629A
FilBeam beneficiary address: 0x1D60d2F5960Af6341e842C539985FA297E10d6eA
ServiceProviderRegistry address: 0xA8a7e2130C27e4f39D1aEBb3D538D5937bCf8ddb
Max proving period: 240 epochs
Challenge window size: 30 epochs
Service name: Filecoin Warm Storage Service - Calibration M3
Service description: Calibration FWSS contracts for M3

@rjan90
Copy link
Collaborator Author

rjan90 commented Oct 7, 2025

The https://github.com/FilOzone/filecoin-services/blob/main/service_contracts/tools/deploy-warm-storage-calibnet.sh is missing publishing the FilecoinWarmStorageServiceStateView contract per the Slack conversation here.

Ideally we should just consolidate all these scripts into the deploy-all and make it accept optional env vars for dependent contracts, and make a single more robust script - but I will not block on that, and will adjust the script for now, just to unblock the release of the M3 FWSS contracts

@rjan90 rjan90 force-pushed the phi/prep-020-release branch from 4eff78e to 2705010 Compare October 7, 2025 08:27
rjan90 added 3 commits October 7, 2025 10:29
docs: add #260 to the changelog after rebase
docs: update date in 0.2.0 release
docs: update new FWSS M3 addresses
@rjan90
Copy link
Collaborator Author

rjan90 commented Oct 7, 2025

Round 2 of deploying the M3 Filecoin Warm Storage Service contracts to Calibnet

Now with the FilecoinWarmStorageServiceStateView contract as well. I´m running the deploy-warm-storage-calibnet.sh script from this commit:

$git log
commit 1260bec (HEAD -> phi/prep-020-release, origin/phi/prep-020-release)
Author: Phi [email protected]
Date: Tue Oct 7 10:29:33 2025 +0200

Env-var set:

Script output:

./deploy-warm-storage-calibnet.sh
Deploying Warm Storage Service Contract
Service configuration:
  Name: Filecoin Warm Storage Service - Calibration M3
  Description: Calibration FWSS contracts for M3
Querying PDPVerifier's challengeFinality...
PDPVerifier challengeFinality: 10
Configuration validation passed:
  PDPVerifier challengeFinality: 10
  MAX_PROVING_PERIOD: 240 epochs
  CHALLENGE_WINDOW_SIZE: 30 epochs
Deploying contracts from address 0xe7D1b14eAC0dcE3d6867C2Ef06b5bdFF52362C84
Deploying FilecoinWarmStorageService implementation...
FilecoinWarmStorageService implementation deployed at: 0x2d76e3A41fa4614D1840CEB73aa07c5d0af6a023
Deploying FilecoinWarmStorageService proxy..
FilecoinWarmStorageService proxy deployed at: 0x9ef4cAb0aD0D19b8Df28791Df80b29bC784bE91b
Deploying FilecoinWarmStorageServiceStateView from address 0xe7D1b14eAC0dcE3d6867C2Ef06b5bdFF52362C84...
FilecoinWarmStorageServiceStateView deployed at 0x7175a72479e2B0050ed310f1a49a517C03573547
Setting view contract address on FilecoinWarmStorageService...
View contract address set successfully
-----------
# DEPLOYMENT SUMMARY
FilecoinWarmStorageService Implementation: 0x2d76e3A41fa4614D1840CEB73aa07c5d0af6a023
FilecoinWarmStorageService Proxy: 0x9ef4cAb0aD0D19b8Df28791Df80b29bC784bE91b
FilecoinWarmStorageServiceStateView: 0x7175a72479e2B0050ed310f1a49a517C03573547

USDFC token address: 0xb3042734b608a1B16e9e86B374A3f3e389B4cDf0
PDPVerifier address: 0x9ecb84bB617a6Fd9911553bE12502a1B091CdfD8
Payments contract address: 0x6dB198201F900c17e86D267d7Df82567FB03df5E
FilBeam controller address: 0x5f7E5E2A756430EdeE781FF6e6F7954254Ef629A
FilBeam beneficiary address: 0x1D60d2F5960Af6341e842C539985FA297E10d6eA
ServiceProviderRegistry address: 0xA8a7e2130C27e4f39D1aEBb3D538D5937bCf8ddb
Max proving period: 240 epochs
Challenge window size: 30 epochs
Service name: Filecoin Warm Storage Service - Calibration M3
Service description: Calibration FWSS contracts for M3

Updated the addresses in: 7675357

@rjan90 rjan90 merged commit 6c26081 into main Oct 7, 2025
5 checks passed
@rjan90 rjan90 deleted the phi/prep-020-release branch October 7, 2025 08:51
@github-project-automation github-project-automation bot moved this from ✔️ Approved by reviewer to 🎉 Done in FS Oct 7, 2025
@rjan90 rjan90 mentioned this pull request Oct 7, 2025
9 tasks
@rjan90
Copy link
Collaborator Author

rjan90 commented Oct 7, 2025

I have successfully verified:

1. FilecoinWarmStorageService Implementation

2. FilecoinWarmStorageServiceStateView

Struggling with getting FilecoinWarmStorageService Proxy, currently debugging in Slack.


Verification Commands Used

# Successfully verified Implementation
filfox-verifier forge --chain 314159 \
  0x2d76e3A41fa4614D1840CEB73aa07c5d0af6a023 \
  src/FilecoinWarmStorageService.sol:FilecoinWarmStorageService

# Successfully verified StateView
filfox-verifier forge --chain 314159 \
  0x7175a72479e2B0050ed310f1a49a517C03573547 \
  src/FilecoinWarmStorageServiceStateView.sol:FilecoinWarmStorageServiceStateView

@rjan90
Copy link
Collaborator Author

rjan90 commented Oct 7, 2025

The FilecoinWarmStorageService Proxy contract required a special approach due to its location in a library submodule. What worked was:

Working Solution

# 1. Flatten the contract using forge
cd service_contracts
forge flatten lib/pdp/src/ERC1967Proxy.sol --output /tmp/MyERC1967ProxyFlat.sol

# 2. Copy to src directory with a clean name
cp /tmp/MyERC1967ProxyFlat.sol src/MyERC1967ProxyFlat.sol

# 3. Verify using filfox-verifier with the clean src path
filfox-verifier forge --chain 314159 \
  0x9ef4cAb0aD0D19b8Df28791Df80b29bC784bE91b \
  src/MyERC1967ProxyFlat.sol:MyERC1967Proxy

# 4. Clean up
rm src/MyERC1967ProxyFlat.sol

FilecoinWarmStorageService Proxy (MyERC1967Proxy)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Status: 🎉 Done
Development

Successfully merging this pull request may close these issues.

2 participants