`siac -v`: display full information for Sia, add diagnostics
I think it would probably be useful to both ourselves and our users to add a comprehensive siac -v
command which checks on all of the modules and provides alerts for things that seem out of order, and if there are known / obvious issues, provides steps to resolve those issues.
Right now, when debugging someone's node I often request multiple rounds of information. Such as, is your wallet unlocked? What's the status of your contracts? Is your wallet empty? Is your allowance fully consumed? We could automate this process into one command.
I'm picturing something like this:
siac --verbose
Modules:
+ Gateway: no issues
+ Consensus: <red>Not synced</red>
+ Transaction Pool: no issues
+ Wallet: <red>Locked</red>, <red>Low balance</red>
+ Renter: <red>Allowance is Depeleted</red>, <red>Not Enough Contracts</red>, <red>7 Unrecoverable Files</red>
Gateway:
Inbound Nodes: 24
Outbound Nodes: 8
Peers on version $current_version or higher: 15
Total Data Uploaded: 35 GB
Total Data Downloaded: 15 GB
Consensus:
Synced: No
Block Height: 205,501
Progress: 99.5%
Recent Block: [142, 250, etc...]
Transaction Pool:
Current Size: 250kb
Wallet:
Status: Encrypted, Locked
Balance: 25 KS
Renter:
Total Files: 54,560
Low Redundancy Files: 1558
Unrecoverable Files: <red>7</red>
Total Data: 18 TiB
Active Contracts: 28
Depleted Contracts: 22
Disabled Contracts: 15
Disabled Data Volume: 2.3 TiB
Something like that, so at a glance a user can see all the basic debugging info we might offer them for various issues. If there's a problem and
This command would also provide a good reference for UIs that are looking to inform the user what's going on.