Status

Problem Statement

What this proposal addresses

This proposal focuses on one structural improvement that emerged from 2026-05-28 Hotfix FWSS v1.2.0 compatibility with PDPVerifier v3.4.0 and subsequent discussions: moving from a deploy-then-tag process to a tag-then-deploy process, using GitHub pre-releases as the mechanism.

This doesn't solve all the issues from the event (cross-repo latches, foc-devnet partial-upgrade testing, and smoke tests are separate work items). But it addresses a key gap: today, downstream systems like synapse-sdk and foc-devnet are configured to track release tags. Under the current deploy-then-tag process, those tags don't exist until after the contract is already live behind the proxy. By tagging first, we give foc-devnet a concrete reference to test against before the proxy switch, and we give synapse-sdk a head start on integration.

Rod's proposal

In a 1:1 discussion (2026-06-03), Rod made the case for tagging before deploying to the proxy:

"Let's tag before we commit to something on chain and then we can run foc-devnet over that tag. Rather than treating a tag as something that you do once you're happy that everything's all deployed."

"It's fine to tag and then find that it's broken and then tag again. If you tag afterwards, then synapse doesn't have anything to consume... foc-devnet doesn't have anything to test on."

"Even the contract addresses still work because by that time, Orjan will have deployed a new implementation contract, just not done the switch over. So he will have all the addresses for the release notes, just not have done the switch over."


Current Release Processes

PDP repo (FilOzone/pdp)

The PDPVerifier upgrade checklist (.github/ISSUE_TEMPLATE/pdpverifier-upgrade.md) defines 4 phases:

  1. Release Preparation — Merge version bump + draft CHANGELOG with TBD addresses, freeze deploy commit on main
  2. Calibration Rollout — Deploy implementation, verify on Sourcify/Blockscout, announce planned upgrade via SAFE, wait for notice window, execute SAFE upgrade, smoke test
  3. Mainnet Rollout — Same sequence, only after Calibration passes