FilOz Blog
The F3 Journey: Network Version 27 Followups

Steve Loeppky (@big_lep)
With the recently completed Network Version 27 “Golden Week” upgrade, the whole network is benefiting from F3 improvements that have rolled out since F3 was first activated on Filecoin Mainnet a little over 5 months ago…
🔬 F3 Aware APIs
Various APIs have been updated or added to consult the F3 sub-system for finality while still falling back to Expected Consensus (EC):
- Ethereum APIs — Ethereum APIs that use
finalizedandsafe. No client changes are needed. Faster finality is being returned transparently. ChainGetFinalizedTipSet— The fully-maintained/v1”JSON-RPC” APIs now have[ChainGetFinalizedTipSet](https://docs.filecoin.io/reference/json-rpc/chain#chaingetfinalizedtipset), which serves as a convenient way to get a finalized tipset to use with other/v1APIs.- Experimental
_/v2_APIs — A significant redesign of Filecoin’s RPC interface was started for non-Ethereum APIs with important goals of more intuitive interaction patterns, expressiveness with selectors, smaller footprint, future extensibility, and of course, f3 awareness in all relevant APIs. This effort is not complete, but can be used today. Learn more in the V2 API documentation.
Here’s a summary of F3-aware APIs:

All of these APIs can be used today in one’s local Lotus node or with RPC providers like Glif nodes.
🔀 F3 Augmented Snapshots
FRC-0108 expands the Filecoin snapshot format to include F3 finality certificates. Previously, nodes needed to get the F3 finality certificate chain from peers outside of the snapshot, which could take hours. Now the F3 state is bundled with the snapshot, both reducing the time and bandwidth required for new nodes to join the network with fast finality. F3-augmented snapshots are produced and hosted by the Forest infra team (download links). As all node implementations (Lotus, Forest, Venus) support this updated format, https://forest-archive.chainsafe.dev/latest/mainnet switched to it by default on October 7.
💪 Resiliency and performance improvements
There were a couple of cases of F3 stalling to make progress after its April activation (1, 2). These events resulted in a whole set of resiliency and performance improvements within go-f3 that the whole network has now adopted. Now that these improvements have been deployed, they’re already showing their impact in the week after the network upgrade. For example, F3 has been staying within 10 epochs from head.

📚 Documentation for operators
We wrote an exchange and RPC providers guide to F3 to help infrastructure providers to understand and onboard with F3. Public dashboards have also been updated.
🔒 Security fixes
Multiple fixes were made to secure F3 before the NV27 upgrade. These have now been publicly disclosed given the network is patched with the software updates as part of the network upgrade:
☑️ Initial powertable CID has been set by default
After F3’s activation in April, there were followup actions for SPs to take to participate in F3. All NV27-compatible node software now has this set by default. We believe this slightly increased F3 participation.
👀 Looking ahead
F3 is not being actively enhanced currently by FilOz, but the ongoing and future workstreams center around:
- Adoption — There have already been efforts to support F3 adoption, and the seamless upgrading of
/v1Ethereum APIs to be “F3 aware” as discussed above certainly helps. But there is more to do, and we’re tracking partner adoptions here! - Increase participation — Looking at the last ~30 days, F3 participation below continues to average around 72%. While this is above the 66.6% requirement, it still leaves us more susceptible for stalls (as we saw during the nv27 upgrade). Tooling has been built to highlight SPs not participating in F3 (example slack thread), but the right long term solution is to incentivize participation.

Thank you to the community for your participation and feedback. As always, please don’t hesitate to reach out at #fil-fast-finality if you have questions! 🙏
