[Offline] BbbbBadNet [21/03/2024 Testnet]

I suspect we might knock this one on the head shortly. Some pricing tweaks coming in and a hopefully more robust (if slower) faucet to try out too.

13 Likes

I thought I had a lightbulb moment with wallet balance accepting paths and thought great perhaps wallet send will too, that way I can easily gather all my nodes rewards in a single wallet. Sadly no go.

Could we add a option safe wallet send [OPTION] <amount> <destination> where the option is the node wallet that I intend to target?

Sorry @chriso this proposal probably exaggerates the issue you have with mixing client and node wallets.

Unless of course there are other plans for accessing node rewards?

7 Likes

Hey Josh,

No, that’s OK. In the other thread, I was just kind of thinking out loud, and it seems like people are OK with adding arguments to refer to other wallets.

It’s been indicated to me though that the other commands weren’t yet intended to refer to other wallets. So far, we only have the balance command doing that. I’d like to try and get some discussion on this though, because it seems like an inconsistency to me.

3 Likes

Seems with some bad node reduction tweaks, we’ve spotted a fairly surly bug in the code that would be flagging all sorts of nodes as bad when they should not be. That’s probably been causing some grief herein.

Bringing this one down the now!

19 Likes

@Shu’s eyes light up like it’s Christmas morning. :star_struck:

10 Likes

Ohh yeahhhh!!! Whooray!!! Go team!!!

5 Likes

For sure… just thinking out loud, which operation would not be allowed against a node’s wallet folder from safe wallet compared to the safe cli default location of the original wallet folder? If none, then there might not be any exceptions to the generic rule to allow that optional override?

Also, I posted the below question on Discord but I would like to get a more clearer understanding on the few statements below:

  • When a token is received by a safenode pid from the network supply, does the safenode at all depend on the private key (any read operation here or direct dependency) off the wallet’s private key to accept the token in the present code? I understand it might need the private key to generate an address (initial) on spin up but if the address input was exposed as a parameter to safenode, would that still allow the safenode to receive tokens without the private key?

  • If so, then ideally at least for myself, I would ideally like to use the same private key to generate either 1 or more addresses that are then passed onto the safenode pid uses to accept the tokens from the network supply (if possible).

  • My concern here about the safe node operator's management of his or her nodes… how complex is this going to get or not… say you launch 100 nodes, and at some point I want to rotate or transfer those tokens to the exchange (say pay my electricity bill lol), I would currently need to use the safe cli 100 times to send all those tokens outbound, but if I can somehow bootstrap the safenode with a given address (same one be re-used or say < 100 unique addresses for the collection of 100 nodes) (generated from the same wallet private key (or less 100 wallet private keys)), then the central outbound transfer would be much easier. I would no longer need to keep or access 100 private keys for 100 unique safe node addresses.

  • All of above depends on if a private key is required to receive tokens at all by safenode or not from the network supply after say an initial bootstrap off the wallet address that safenode is running under? and if not, then potentially exposing the address on which the safenode receives the token as optional input parameter?

I really don’t know the network details here to confirm any of the above.

Any insight here would be helpful.

4 Likes

@aatonnomicc - you say you built the latest and have a local testnet up. :clap:

How did you build this?


cargo build --release --features=???????????????

Im a bit lost as to what features we need to specify? Cos its a localtestnet Im guessing
--features=local-discovery but what else - if any?

1 Like

plane jane vanila instructions from the git hub

cargo run --bin safenode-manager --features local-discovery -- run --build
2 Likes

just make sure you have port 8000 free for the faucet my pi-hole had that port in use and took me a while to figure it out why faucet was not working. and I know you have a pie-hole :wink:

1 Like

Thats a bridie insertion orifice to you , pal!!!

1 Like

1 Like

Not sure what the image is inferring, but for those who want to run well more than 1 node, I like to understand the current dependency requirements properly, so I can plan accordingly for the wallet management / keys / addresses for well more than 1 node being launched.

I am not expecting the dev team to try to solve complex management for advanced farmers setups but I just need a few points to be clarified so I can code the automation on my end, as I see fit based on what will be allowed or required from safenode’s requirements perspective.

Anyhow, will wait for further clarity.

2 Likes

It’s opaque, do you think folks could get around the fact there is no group wallet management in the core or API?

Atm, I imagine we could aim to get the manager using derived keys from a main wallet, so this could all be automated away.

Essentially this

7 Likes

That’d be good. To be able to use the one wallet for each group of nodes will make running multiple nodes more attractive in a practical sense. The incentive to run nodes is the earnings and if it becomes difficult to look after the earnings then people will not be so attracted to run many nodes. And as you said to be able to supply the wallet is even better.

7 Likes

Great, that would go a long way in adding flexibility whether I want to have 1 address for all 100 nodes or up to N unique addresses spread across the 100 nodes, depending on how compartmentalized I want the setup to be (from a security perspective as well).

Well said.


Another question that came to my mind is, so when safenode receives cash notes (i.e somehow related to getting a farming reward I assume), can those be safely deleted from disk, while still retaining the validity of the balance on the address / network?

Note: I temporarily moved the cash note from one of my safenode wallet folders, and the safe cli reported back the proper prior balance (offline mode I assume).

Reference statements on cash_notes found on github (incase others were curious):

A CashNote represents a spendable unit of currency in the network, denoting ownership of a certain number of NanoTokens.

A CashNote is like a check. Only the recipient can spend it.

Are these cash notes already spent (i.e. the spend happened and the token was transfered to the node operator’s wallet address)? If so, to then attempt another transfer off tokens, these cash notes then won’t be required to be preserved? Just need to pass on the encrypted transfer output from safe send to the recipient. Or maybe I got this backwards, and they are required to be preserved and saved to facilitate future transfers? :thinking: .

I am still fairly new to all the details (underlying file operations (read or writes) the CLI is handling today) revolving wallets outside of the basic safe wallet balance and safe wallet send and safe wallet receive commands. I was trying to understand just how many different file types / file names under the wallet folder will always need to be preserved (assuming in the present state of a 100 wallets for 100 nodes).

Like files pertaining to private keys I would hope to not even exist within the safenode VM or container environment (those be locked down somewhere or offline etc), but other files that act as read only to allow the node to receive tokens (that seems okay and safe) to be left on disk next to the safenode pid etc. Trying to get a sense off what what extra automation for either preserving or cleanup, if any, will be required here by the operators, once the --address input is available as input to the safenode manager or safenode pid or both etc.

I know we are in the early stages, and getting the core network fully stabilized is the bigger priority here, so any further automation done by the dev team here to make life easier for safe node operators will come likely later or maybe in parallel (depending on the bandwidth and queued up work).

Happy to wait it out as the environment changes and more details are flushed out.

7 Likes

The cashnotes will be required to send the money. What we need is the transaction info, which I’m not sure if that’s lighter than what we’re writing to disk atm? (cc @Anselme )

In general we want to be able to keep the signing of things offline where we can. So we should be able to get towards a decent and secure experience here. But yeh, this will flesh out as things progress!

7 Likes

Yes deleting a CashNote locally doesn’t change its value on the Network. On the other hand, it contains an important secret that the owner needs to spend it: the derivation index!

That’s why we have the smaller CashNoteRedemption, which contain the minimal data needed to redeem and spend a CN! (your secret key is also needed!)

6 Likes

Everybody has a plan until they get £ in the head

Imagine rewarding your personal AI 1 nano to do… :crazy_face: