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

FRC-0087: On-chain Deal Aggregation #879

Merged
merged 29 commits into from
Feb 12, 2024

Conversation

aashidham
Copy link
Contributor

Create aggregation FRC. More edits to come before finalization.

FRCs/frc-0070.md Outdated

Recommended API interface for the two retrieval methods mentioned above:

- Retrieval endpoint for Filecoin retrieval: GET /data/<pieceCID>
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is there an example of a market implementation on filecoin that supports data at this path?

I believe boost would expose these pieces at /piece/<pieceCID>, fwiw

We should also specify the expectation for how an aggregator supporting this standard would define where it's HTTPS endpoint for the data layer is located.

Copy link
Contributor

@honghaoq honghaoq Dec 7, 2023

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

there is no market impl on this today, lighthouse/spheron are supporting retrieval via Ipfs pinning instead of Filecoin, but they want to experiment retrieving from Filecoin in the near future.
Im open to aligning with boost endpoint for consistency (GET at /piece/pieceCID)

Copy link
Member

@jsoares jsoares left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm confused about the scope of this PR.

  • It's adding two new files (FRC-0067.md and FRC-0070.md)
  • FRC-0067.md seems to correspond to existing FRC-0068.md
  • FRC-0070.md claims to be FRC-0068 in the metadata, is using an unassigned and conflicting FIP number in filename, and has seemingly the same title as FRC-0068.

I think part of this is due to having been branched out of an older branch, but can we clean this up prior to substantive review? There should only be one RFC here, no unassigned numbers, and no recommitting of existing files. The metadata for the new RFC should match its content.

FRCs/frc-0070.md Outdated Show resolved Hide resolved
FRCs/frc-0070.md Outdated Show resolved Hide resolved
FRCs/frc-xxxx.md Outdated
Comment on lines 321 to 322
- Retrieval endpoint for Filecoin retrieval: GET /data/<pieceCID>
- Retrieval gateway for IPFS retrieval: https://gateway/ipfs/<pieceCID>
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think this is using the client's piece CID here, rather than the aggregated piece CID, correct? I like the use of commPc above to differentiate from commPa, perhaps that could be used here to disambiguate what this is referring to? They look very close to existing boost retrieval endpoints, with /piece/ instead of /data/ today, but those are for stored deal pieces, of commPa (I don't think we do anything fancy with /piece/ retrievals on PoDSI deals today yet anyway).

Copy link
Contributor

@honghaoq honghaoq Dec 19, 2023

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes this is referring to client piece CID. We had a call with Will to align on these, so that it is consistent with the piece retrieval gateway FRC.

Note that this PR is not updated (@aashidham will be updating it soon), you can see the latest draft for retrieval section here #866

Copy link
Contributor

@honghaoq honghaoq Jan 18, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fixed here b2fcc65

FRCs/frc-xxxx.md Outdated
Comment on lines 58 to 59
uint64 providerId; // The storage provider that is storing the data for the deal.
uint64 marketActorId; // The actor ID of the storage market in which the deal representation is stored. dealId is scoped by marketActorId
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
uint64 providerId; // The storage provider that is storing the data for the deal.
uint64 marketActorId; // The actor ID of the storage market in which the deal representation is stored. dealId is scoped by marketActorId
uint64 providerId; // The storage provider that is storing the data for the deal.
uint64 marketActorId; // The actor ID of the storage market in which the deal representation is stored. dealId is scoped by marketActorId

Copy link
Contributor

@honghaoq honghaoq Jan 18, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fixed here 522c607

FRCs/frc-xxxx.md Outdated
Comment on lines 77 to 79
event SubmitAggregatorRequestWithRaaS(uint256 indexed id, bytes cid,
uint256 _replication_target, uint256 _repair_threshold,
uint256 _renew_threshold);
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
event SubmitAggregatorRequestWithRaaS(uint256 indexed id, bytes cid,
uint256 _replication_target, uint256 _repair_threshold,
uint256 _renew_threshold);
event SubmitAggregatorRequestWithRaaS(uint256 indexed id, bytes cid, uint256 _replication_target, uint256 _repair_threshold, uint256 _renew_threshold);

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fixed here 522c607

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@honghaoq doesn't seem to be fixed yet, it's fixed in IOnchainDataAggregator but not IOffchainDataAggregator

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done 1d850a2 Good catch:)

FRCs/frc-xxxx.md Outdated
Comment on lines 96 to 97
/**
* @notice Function to submit a new file to the aggregator, specifing the raas parameters
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
/**
* @notice Function to submit a new file to the aggregator, specifing the raas parameters
/**
* @notice Function to submit a new file to the aggregator, specifing the raas parameters

Copy link
Contributor

@honghaoq honghaoq Jan 18, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fixed here 522c607

FRCs/frc-xxxx.md Outdated
Comment on lines 103 to 106
*/
function submitRaaS(bytes memory _cid, bytes memory _fetchLink,
uint256 memory _replication_target, uint256 memory _repair_threshold,
uint256 memory _renew_threshold);
Copy link
Member

@rvagg rvagg Dec 17, 2023

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
*/
function submitRaaS(bytes memory _cid, bytes memory _fetchLink,
uint256 memory _replication_target, uint256 memory _repair_threshold,
uint256 memory _renew_threshold);
*/
function submitRaaS(bytes memory _cid, bytes memory _fetchLink, uint256 memory _replication_target, uint256 memory _repair_threshold, uint256 memory _renew_threshold);

Copy link
Contributor

@honghaoq honghaoq Jan 18, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fixed here 522c607

Updated data retrieval section
Copy link
Contributor

@willscott willscott left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This looks like a reasonable reflection of how data segment indexed data is being structured and made accessible at least in boost. I am in favor of the FIP editors merging this FRC

@honghaoq
Copy link
Contributor

honghaoq commented Feb 1, 2024

This looks like a reasonable reflection of how data segment indexed data is being structured and made accessible at least in boost. I am in favor of the FIP editors merging this FRC

Thanks @willscott, can you approve in the code review, looks like it needs 3 approvals to be able to merge

@willscott
Copy link
Contributor

can you approve in the code review, looks like it needs 3 approvals to be able to merge

I'm not able to approve - you need two fip editors / code owners, as I understand the process.

@anorth
Copy link
Member

anorth commented Feb 5, 2024

I'm assigning number 0087 to this FRC. Please update the header and filename, and also add an appropriate line to the table in README.md

@anorth anorth changed the title Aggregation frc FRC-0087: Aggregation Feb 5, 2024
@anorth anorth changed the title FRC-0087: Aggregation FRC-0087: Deal Aggregation Feb 5, 2024
@anorth anorth changed the title FRC-0087: Deal Aggregation FRC-0087: On-chain Deal Aggregation Feb 5, 2024
Update as per Alex's comment
@honghaoq
Copy link
Contributor

honghaoq commented Feb 8, 2024

I'm assigning number 0087 to this FRC. Please update the header and filename, and also add an appropriate line to the table in README.md

Updated: fdd0dc7
and FIP readme PR: https://github.com/filecoin-project/FIPs/pull/937/files

@anorth can you help approve it? my understanding is we need your approval so @aashidham can merge this PR, thanks

@anorth
Copy link
Member

anorth commented Feb 8, 2024

Please rename the file to frc-0087. If you are able, please also change the README in this same PR so they land together.

@anorth anorth mentioned this pull request Feb 8, 2024
FRCs/frc-xxxx.md Outdated
created: 2023-10-07
---

# FVM-Enabled Deal Aggregation
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This title doesn't match the title metadata. Please make them consistent, and also with the title listed in the README

@aashidham
Copy link
Contributor Author

Title metadata, README and file name have all been altered to reflect the latest.

@honghaoq your edits were in a separate patch branch, you have privileges to make changes directly on aggregation-frc branch. I do not have privileges to merge this PR Honghao, that is in the CODEOWNERS purview.

@anorth have a look and let me know if things are good to merge

@anorth anorth merged commit 7c80fad into filecoin-project:master Feb 12, 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.

7 participants