Skip to content

Latest commit

 

History

History
95 lines (74 loc) · 12.7 KB

README.md

File metadata and controls

95 lines (74 loc) · 12.7 KB

Filecoin Improvement Protocol

The Filecoin Improvement Protocol contains the set of fundamental governing principles for the Filecoin Network. It outlines the vision for Filecoin and the principles, processes, and parties involved in making decisions that affect the future of the network. It also describes how improvements to these rules can be proposed and ratified.

The Filecoin Vision

Filecoin is a peer-to-peer network that stores files, with built-in economic incentives to ensure that files are stored reliably over time. Its mission is to create a decentralized, efficient and robust foundation for humanity’s information. To advance that mission, Filecoin has created a decentralized storage network that lets anyone in the world store or retrieve files.

In Filecoin, users pay to store their files on storage miners. Storage miners are computers responsible for storing files and proving they have stored the files correctly over time. Anyone who wants to store their files or get paid for storing other users’ files can join Filecoin. Available storage and pricing are not controlled by any single entity. Instead, Filecoin facilitates open markets for storing and retrieving files that anyone can participate in, thereby providing storage to billions of people who are currently locked out of the web.

Filecoin Design Principles

The design of Filecoin is intended to follow a set of principles. The community will help define these principles in the coming months.

Filecoin Improvement Principles

When making decisions about how to improve Filecoin, we will follow a set of principles. The community will help define these principles in the coming months.

Making changes to the Filecoin network

Filecoin Improvement Proposals (FIPs) are the primary mechanism by which the Filecoin community can submit, discuss, and approve changes relevant to the Filecoin network. These discussions and decisions should be guided by the governance and design principles above.

FIPs are classified into three categories:

Technical FIPs, or Filecoin Technical Proposals (FTPs) are designed to gather community feedback on technical Filecoin issues. These include changes to the Filecoin protocol, a change in block or transaction validity rules, and proposed application standards or conventions. They are then reviewed by the Filecoin community and the technical steering committee. They are normally followed by a PR to the Filecoin Specification repository to update the protocol's spec.

Organizational FIPs, or Filecoin Organization Proposals (FOPs) allow the Filecoin community to propose, discuss, and achieve consensus on Filecoin governance. This includes procedures, guidelines, decision-making processes, and changes to FIP processes.

Recovery FIPs, or Filecoin Recovery Proposals (FRPs) are intended to provide the Filecoin community with a forum to raise, discuss, and achieve consensus on fault recovery and chain rewrites, under a very limited, clearly-defined set of criteria (ex, in the case of protocol bugs destroying network value). The community will help define this process as needed in the coming months.

A decentralized, global network

Filecoin is still in its infancy, but it has the potential to play a central role in the storage and distribution of humanity’s information. To help the network grow and evolve, it is critical for the community to collectively be engaged in proposing, discussing, and implementing changes that improve the network and its operations.

This improvement protocol helps achieve that objective for all members of the Filecoin community (developers, miners, clients, token holders, ecosystem partners, and more).

FIPs

FIP # Title Type Author Status
0001 FIP Purpose and Guidelines FIP @Whyrusleeping Active
0002 Free Faults on Newly Faulted Sectors of a Missed WindowPoSt FIP @anorth, @davidad, @miyazono, @irenegia, @lucaniz, @nicola, @zixuanzh Final
0003 Filecoin Plus Principles FIP @feerst, @jbenet, @jnthnvctr, @tim-murmuration, @mzargham, @zixuanzh Active
0004 Liquidity Improvement for Storage Miners FIP @davidad, @jbenet, @zenground0, @zixuanzh, @danlessa Final
0005 Remove ineffective reward vesting FIP @anorth, @Zenground Final
0006 No repay debt requirement for DeclareFaultsRecovered FIP @nicola, @irenegia Deferred
0007 h/amt-v3 FIP @rvagg, @Stebalien, @anorth, @Zenground0 Final
0008 Add miner batched sector pre-commit method FIP @anorth, @ZenGround0, @nicola Final
0009 Exempt Window PoSts from BaseFee burn FIP @Stebalien, @momack2, @magik6k, @zixuanzh Final
0010 Off-Chain Window PoSt Verification FIP @Stebalien, @anorth Final
0011 Remove reward auction from reporting consensus faults FIP @Kubuxu Final
0012 DataCap Top up for FIL+ Client Addresses FIP @dshoy, @jnthnvctr, @zx Final
0013 Add ProveCommitSectorAggregated method to reduce on-chain congestion FIP @ninitrava @nicola Final
0014 Allow V1 proof sectors to be extended up to a maximum of 540 days FIP @deltazxm, @neogeweb3 Final
0015 Revert FIP-0009(Exempt Window PoSts from BaseFee burn) FIP @jennijuju, @arajasek Final
0016 Pack arbitrary data in CC sectors FIP donghengzhao (@1475) Deferred
0017 Three-messages lightweight sector updates FIP @nicole, @lucaniz, @irenegia Deferred
0018 New miner terminology proposal FIP @Stefaan-V Final
0019 Snap Deals FIP @Kubuxu, @lucaniz, @nicola, @rosariogennaro, @irenegia Final
0020 Add return value to WithdrawBalance FIP @Stefaan-V Final
0021 Correct quality calculation on expiration FIP @Steven004, @Zenground0 Final
0022 Bad deals don't fail PublishStorageDeals FIP @Zenground0 Final
0023 Break ties between tipsets of equal weights FIP @sa8, @arajasek Final
0024 BatchBalancer & BatchDiscount Post -Hyperdrive adjustment FIP @zx, @jbenet, @zenground0, @momack2 Final
0025 Handle expired deals in ProveCommit FIP @ZenGround0 Deferred
0026 Extend sector fault cutoff period from 2 weeks to 6 weeks FIP @IPFSUnion Final
0027 Change type of DealProposal Label field from a (Golang) String to a Union FIP @laudiacay, @Stebalien, @arajasek Final
0028 Remove DataCap and verified client status from client address FIP @jennijuju, @dkkapur Final
0029 Beneficiary address for storage providers FIP @steven004 Accepted
0030 Introducing the Filecoin Virtual Machine (FVM) FIP @raulk, @stebalien Final
0031 Atomic switch to non-programmable FVM FIP @raulk, @stebalien Final
0032 Gas model adjustment for non-programmable FVM FIP @raulk, @stebalien Final
0033 Explicit premium for FIL+ verified deals FIP @anorth Deferred
0034 Fix pre-commit deposit independent of sector content FIP @anorth, @Kubuxu FInal
0035 Support actors as built-in storage market clients FIP @anorth Withdrawn
0036 Introducing a Sector Duration Multiple for Longer Term Sector Commitment FIP @AxCortesCubero, @jbenet, @misilva73, @momack2, @tmellan, @vkalghatgi, @zixuanzh Rejected
0037 Gas model adjustment for user programmability FIP @raulk, @stebalien Draft
0038 Indexer Protocol for Filecoin Content Discovery FRC @willscott, @gammazero, @honghaoq Draft
0039 Filecoin Message Replay Protection FIP @q9f Draft
0040 Boost - Filecoin Storage Deals Market Protocol FRC @dirkmc, @nonsense, @jacobheun, @brendalee Draft
0041 Forward Compatibility for PreCommit and ReplicaUpdate FIP @Kubuxu Final
0042 Calling Convention for Hashed Method Name FRC @Kubuxu, @anorth Draft
0044 Standard Authentication Method for Actors FIP @arajasek, @anorth Final
0045 De-couple verified registry from markets FIP @anorth, @zenground0 Final
0046 Fungible token standard FRC @anorth, @jsuresh, @alexytsu Draft
0047 Proof Expiration & PoRep Security Policy FIP @Kubuxu, @irenegia, @anorth Accepted
0048 f4 Address Class FIP @stebalien, @mriise, @raulk Last Call
0049 Actor Events FIP @stebalien, @raulk Draft
0050 API Between User-Programmed Actors and Built-In Actors FIP @anorth, @arajasek Accepted
0051 Synchronous Consistent Block Broadcast for EC Security FRC Guy Goren guy.goren@protocol.ai, Alfonso de la Rocha alfonso@protocol.ai Draft
0052 Increase max sector commitment to 3.5 years FIP @anorth Last Call
0053 Non-Fungible Token Standard FRC @alexytsu, @abright, @anorth Draft
0055 Supporting Ethereum Accounts, Addresses, and Transactions FIP @raulk, @stebalien Draft