Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

FIP-0045: update to match deployed types #961

Merged
merged 2 commits into from
Mar 19, 2024

Conversation

rvagg
Copy link
Member

@rvagg rvagg commented Mar 15, 2024

Background: it was discovered (by @LexLuthr) that ClaimExtensionRequest has been implemented wrong in go-state-types so has not been a functional API on the network since nv10, although it was launched (as per this FIP) in nv9 with the types matching. That's being rectified in filecoin-project/go-state-types#254, although it's conforming to the implementation found in builtin-actors rather than the text of the spec in this FIP.

In the process of proposing a retroactive fix to this spec to match the deployed implementation, I've discovered that there are a lot more mismatched types between spec and implementation, so I've adjusted them all here. This isn't a new FIP, but rather an alignment of the spec if we view the spec as a combination of the FIP text and the builtin-actors implementation; and the only thing changing in code as a result of this is a fix to make ClaimExtensionRequest work.


  • Many of the type fields marked as Address in here were launched in nv9 as ActorID.
  • AllocationRequest and ClaimExtensionRequest went live in nv9 with provider as Address but in nv10 switched to ActorID.
  • ClaimExtensionRequest was never adjusted in go-state-types to ActorID so has been unable to successfully parse or pass on these to builtin-actors. ExtendClaimTerms appears to have been the only mechanism used to extend claim terms since this FIP.
  • Minor: updated all epoch fields to match within this FIP, I chose to use int64 which is the base type used in implementations.
  • Add missing docs for AllocationRequest and ClaimExtensionRequest fields.
  • Added historical notes section.

* Many of the type fields marked as Address in here were launched in nv9 as
  ActorID.
* AllocationRequest and ClaimExtensionRequest went live in nv9 with Provider
  as Address but in nv10 switched to ActorID.
* ClaimExtensionRequest was never adjusted in go-state-types to ActorID so has
  been unable to successfully parse or pass on these to builtin-actors.
	ExtendClaimTerms appears to have been the only mechanism used to extend claim
	terms since this FIP.
* Minor: updated all epoch fields to match within this FIP, I chose to use
  int64 which is the base type used in implementations.
* Add missing docs for AllocationRequest and ClaimExtensionRequest fields.
* Added historical notes section.
@rvagg
Copy link
Member Author

rvagg commented Mar 16, 2024

Thanks to Aayush for pointing out that I was using builtin-actor versions instead of network versions. I've fixed that now, 9->17 and 10->18.

@anorth anorth merged commit 042a19c into filecoin-project:master Mar 19, 2024
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Status: ☑️ Done (Archive)
Development

Successfully merging this pull request may close these issues.

4 participants