Previously, our advertized inventory was not always correct: when we stopped seeding a repository, it was still advertised as part of our inventory until node restart, because the `Storage` type doesn't have access to seeding policies. In this change, we remove the concept of inventory from `Storage` and make the authoritative place for it the routing table in our database. To make this work, we have to add our node to the database on profile creation, to not violate the foreign key constraint on the routing table. Hence, the tests are changed to include our alias which is now always available.
6.9 KiB
Project 'todo' items are called 'issue's. They can be inspected and modified using the 'issue' subcommand.
Let's say the new car you are designing with your peers has a problem with its flux capacitor.
$ rad issue open --title "flux capacitor underpowered" --description "Flux capacitor power requirements exceed current supply" --no-announce
╭─────────────────────────────────────────────────────────╮
│ Title flux capacitor underpowered │
│ Issue d87dcfe8c2b3200e78b128d9b959cfdf7063fefe │
│ Author alice (you) │
│ Status open │
│ │
│ Flux capacitor power requirements exceed current supply │
╰─────────────────────────────────────────────────────────╯
The issue is now listed under our project.
$ rad issue list
╭──────────────────────────────────────────────────────────────────────────────────────────╮
│ ● ID Title Author Labels Assignees Opened │
├──────────────────────────────────────────────────────────────────────────────────────────┤
│ ● d87dcfe flux capacitor underpowered alice (you) now │
╰──────────────────────────────────────────────────────────────────────────────────────────╯
Show the issue information issue.
$ rad issue show d87dcfe
╭─────────────────────────────────────────────────────────╮
│ Title flux capacitor underpowered │
│ Issue d87dcfe8c2b3200e78b128d9b959cfdf7063fefe │
│ Author alice (you) │
│ Status open │
│ │
│ Flux capacitor power requirements exceed current supply │
╰─────────────────────────────────────────────────────────╯
Great! Now we've documented the issue for ourselves and others.
Just like with other project management systems, the issue can be labeled and assigned to others to work on. This is to ensure work is not duplicated.
Let's assign ourselves to this one, this is to ensure work is not duplicated. While we're at it, let's add a label.
$ rad issue assign d87dcfe --add did:key:z6MknSLrJoTcukLrE435hVNQT4JUhbvWLX4kUzqkEStBU8Vi --no-announce
$ rad issue label d87dcfe --add good-first-issue --no-announce
It will now show in the list of issues assigned to us, along with the new label.
$ rad issue list --assigned
╭────────────────────────────────────────────────────────────────────────────────────────────────────╮
│ ● ID Title Author Labels Assignees Opened │
├────────────────────────────────────────────────────────────────────────────────────────────────────┤
│ ● d87dcfe flux capacitor underpowered alice (you) good-first-issue alice now │
╰────────────────────────────────────────────────────────────────────────────────────────────────────╯
Note: this can always be undone with the unassign subcommand.
$ rad issue assign d87dcfe --delete did:key:z6MknSLrJoTcukLrE435hVNQT4JUhbvWLX4kUzqkEStBU8Vi --no-announce
Great, now we have communicated to the world about our car's defect.
But wait! We've found an important detail about the car's power requirements. It will help whoever works on a fix.
$ rad issue comment d87dcfe8c2b3200e78b128d9b959cfdf7063fefe --message 'The flux capacitor needs 1.21 Gigawatts' -q --no-announce
2193e871916d18ddd0416b5198cb08c5dc7416b7
$ rad issue comment d87dcfe8c2b3200e78b128d9b959cfdf7063fefe --reply-to 2193e871916d18ddd0416b5198cb08c5dc7416b7 --message 'More power!' -q --no-announce
880fdcd94b36e412fc906b510f41008700d65424
We can see our comments by showing the issue:
$ rad issue show d87dcfe8c2b3200e78b128d9b959cfdf7063fefe
╭─────────────────────────────────────────────────────────╮
│ Title flux capacitor underpowered │
│ Issue d87dcfe8c2b3200e78b128d9b959cfdf7063fefe │
│ Author alice (you) │
│ Labels good-first-issue │
│ Status open │
│ │
│ Flux capacitor power requirements exceed current supply │
├─────────────────────────────────────────────────────────┤
│ alice (you) now 2193e87 │
│ The flux capacitor needs 1.21 Gigawatts │
├─────────────────────────────────────────────────────────┤
│ alice (you) now 880fdcd │
│ More power! │
╰─────────────────────────────────────────────────────────╯