-
Notifications
You must be signed in to change notification settings - Fork 318
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
feat(registry): Add node_reward_type to NodeRecord #1608
Conversation
7ec43c4
to
178d0c1
Compare
rs/registry/canister/src/mutations/node_management/do_add_node.rs
Outdated
Show resolved
Hide resolved
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM, Ty!
e309ad7
to
71c41a0
Compare
Is there a design doc to read about the UTOPIA renumaration ? |
just rubber stamping |
How UTOPIA owners will cover the cost of running the nodes is up to them and NOT part of the product we will offer them in the near future. Therefore there is no design doc for this topic. |
Then how do you know you will need node_type for UTOPIA as part of the renumaration for UTOPIA ? :) |
I don't think this will be needed for remuneration in UTOPIA. That's why I wouldn't want remuneration to be part of the name of the field. As Sasa says in the comment I refer to, having different types for nodes with different specs is useful, e.g., when creating subnet. |
@sasa-tomic @rumenov @yvonneanne Would something like "node_hardware_type" be a reasonable name? I think node_type is too generic (given @andrewbattat's point about how many different "type" ideas refer to nodes. I'm open to suggestions here, and I now agree node_remuneration_type is not a good name either. |
"node_hardware_type" seems very reasonable (and useful) to me. |
This is the Node Provider Machine Hardware Guide, so we'll just have to make sure it's updated to reflect all the different hardware sub-types. |
@sasa-tomic would this still be consistent with the node remuneration?
(i.e. if we used the node type specifications?)
…On Wed, Oct 9, 2024 at 6:57 AM Andrew Battat ***@***.***> wrote:
"node_hardware_type" seems very reasonable (and useful) to me.
This is the Node Provider Machine Hardware Guide
<https://wiki.internetcomputer.org/wiki/Node_Provider_Machine_Hardware_Guide>,
so we'll just have to make sure it's updated to reflect all the different
hardware sub-types.
—
Reply to this email directly, view it on GitHub
<#1608 (comment)>, or
unsubscribe
<https://github.com/notifications/unsubscribe-auth/AX4HWTSNUEDKE4TRRFDXWITZ2UY33AVCNFSM6AAAAABOS6MX5WVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDIMBSGQZDIMZUGQ>
.
You are receiving this because you authored the thread.Message ID:
***@***.***>
|
I think this will just add to the confusion. We have only 2 hardware types (gen1 and gen2) used in production and we have the following remuneration So I think it would be clearer to have a more generic name that would be used for remuneration on the IC Mainnet, and for whatever they want on UTOPIA. |
I assumed this type is exactly to differentiate between the two hardware types, Gen1 and Gen2 (and more types in the future)? (https://dfinity.atlassian.net/browse/IC-797) If this is not the case (do we distinguish Gen1 and Gen2 by the chip_id field in this case?) and we use this type exclusively for remuneration, then remuneration should be part of the name. |
I just had a chat with @yvonneanne to discuss this change. Here is the summary:
The field should be optional to cover for the expected utopia use cases. For the Mainnet, we can make sure in SetupOS that all newly deployed Mainnet nodes have this value set. One option suggested by Rosti earlier was to have a map of rewardable nodes somewhere else. However, that option seems to add a bit more complexity, and thus doesn't seem to be preferred by the NNS team. I also don't see a huge benefit in this option, other than not polluting the node record with even more fields. As a downside, it adds more room for error (e.g. a node could exist in the rewardable nodes map, but not in the list of active node records). So the only open question is the name of the field in the |
325c522
to
bf2a09f
Compare
a7c2b68
to
c1485df
Compare
c1485df
to
67f1c34
Compare
This adds support for node_reward_type to NodeRecord and to AddNodePayload.
It adds it as a string to AddNodePayload, but as an enum with validation to NodeRecord.