Heartwood doesn't cache custom COBs, so every board read replayed the
board's whole history, about 2.5 s for 3,000 ops. Evaluated boards are
now kept in `boards.db` next to radicle-artifact's cache, keyed by the
board's ref tips, so a read with nothing new takes a few milliseconds and
an op fetched from any peer still triggers a fresh evaluation.
A board arranges a repository's issues and patches in columns and stores
only where each card sits, as `works.monadic.board` in its own crate so
other clients can reuse it. Moves follow the issue and patch access
rules, ops that fail them are ignored rather than rejected, and positions
are fractional keys so concurrent moves converge. ADR 0005 records the
decisions.
Co-authored-by: Rūdolfs Ošiņš <rudolfs@osins.org>
- Decide in ADR 0004 to always open releases on Delegates
- Drop the fallback to Others in lists and releases
- Show the Others filter whenever it has content
- Name the scope in the empty artifacts message
- Open Others in the e2e test of an artifact by a non-delegate,
which no longer opens there by itself