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

curio: SPTool actor management cli tool #11733

Closed
Tracked by #11754
magik6k opened this issue Mar 18, 2024 · 1 comment
Closed
Tracked by #11754

curio: SPTool actor management cli tool #11733

magik6k opened this issue Mar 18, 2024 · 1 comment
Labels
area/MinerV2 lotus-provider area/ux Area: UX curio kind/feature Kind: Feature P1 P1: Must be resolved

Comments

@magik6k
Copy link
Contributor

magik6k commented Mar 18, 2024

Curio is currently missing a lot of commands which exist in lotus-miner that interact with the on-chain miner actor. A lot of those commands don't touch anything in lotus-miner at all, beyond maybe querying it for the related actor address.

In Curio we can rethink how interactions with the actor work, initially I propose a simple tool which is not tied to Curio at all, and simply allows interacting with any miner actor, mostly just porting existing commands from lotus-miner (and preserving most of the CLI structure)

existing lotus-miner cmds

  • actor
    • set-addrs / set-peerid - merge into one? (worker-sent)
    • withdraw (owner / beneficiary-sent)
    • repay-debt (worker-sent)
    • set-owner (owner-sent)
    • propose/confirm change worker (owner-sent)
    • control list / set (owner-sent)
    • compact-allocated (dup sectors numbers??) (worker-sent)
    • propose/confirm change beneficiary (owner-sent) / (old/new beneficiary approved)
  • info
    • Maybe, sth like lotus state miner-info
  • sectors
    • list
    • status
    • precommits - on chain precommits
    • check-expire - inspect expiring
    • expired - the check part
    • extend (worker-sent)
    • terminate (worker/ctl)
      • belongs here, curio should have a gc watching for sectors getting terminated on chain
    • compact-partitions (worker-sent)
  • proving
    • info
    • deadlines
    • deadline
    • faults
    • recover-faults??

Native owner msig support:

  • It would be really nice if all commands which do sends from the owner supported msigs properly
  • Commands which do msig sends just send propose messages (and note that approvals are needed)
  • New command proposals lists proposals, decodes things, makes easy to send approves (hashed)
    • By default filters to txes only targetting the relevant sp id
    • Can specify msig address, defaults to miner owner

SPTOOL

  • Global --actor flag, possible to set with some env var like SP_ADDRESS (not specific to sptool so that other things can standardize on using that env var)
  • Keep most commands the same so that it feels familiar
  • Everything should work with just lotus-lite + public RPCs
  • Top-level commands
    • actor
      • move compact-allocated to sectors(?)
    • sectors - maybe rename (→sector?); Maybe better to keep as it was
      • check-expire / expired may be slightly duplicated
      • compact-partitions/allocated - maybe put under some maintanance subcommand?
        • eh.. probably fine without that as well
    • proving - generally kept the same
    • proposals - new command to list miner-related msig proposals and send approvals
      • better name ideas? multisig maybe?

A lot of this can also be implemented in curio webui, but that will be vastly more work, and is not going to be easy to automate + be less familiar to existing SPs. Implementing SPTool will mostly involve moving around existing lotus-miner command code into a shared place + making the shared commands use the actor flag in sptool instead of the lotus-miner rpc to get the actor address

@magik6k magik6k added kind/feature Kind: Feature P1 P1: Must be resolved area/ux Area: UX area/MinerV2 lotus-provider labels Mar 18, 2024
@magik6k magik6k mentioned this issue Mar 18, 2024
8 tasks
@LexLuthr LexLuthr mentioned this issue Mar 20, 2024
19 tasks
@snadrus snadrus mentioned this issue Mar 26, 2024
8 tasks
@LexLuthr
Copy link
Contributor

LexLuthr commented May 3, 2024

@magik6k I think we can close this one. sptool has already landed

@rjan90 rjan90 added the curio label Jun 3, 2024
@LexLuthr LexLuthr closed this as completed Jun 3, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/MinerV2 lotus-provider area/ux Area: UX curio kind/feature Kind: Feature P1 P1: Must be resolved
Projects
None yet
Development

No branches or pull requests

3 participants