radicle-heartwood-lfs/crates
Fintan Halpenny af6cf03acd radicle: canonical reference rules
Introduce the `rules` module beneath `canonical`. The implementation follows
the Canonical References RIP[^0].

A `Rule` defines the DIDs and threshold required to get the canonical tip
for a reference (or set of references). Since a `Rule` has some specific
validation rules, there can be two versions of a `Rule`. The `RawRule` is one
that can be easily constructed, serialized, and deserialized. It must then be
validated into a `ValidRule`, which validates any constraints, and can be used
in the computing of a canonical tip.

For convenience, a set of `ValidRule`s is wrapped into the `Rules` type, which
also has a further constraint that each rule refers to a specific `refspec`.

[0]: 1d1ce874f7
2025-07-16 16:41:16 +02:00
..
radicle radicle: canonical reference rules 2025-07-16 16:41:16 +02:00
radicle-cli chore: prepare crates release 2025-07-14 15:38:09 +01:00
radicle-cli-test repo: Move workspace crates into `crates` subdirectory 2025-06-09 15:09:21 +02:00
radicle-cob radicle: remove unnecessary constraints 2025-07-08 11:36:42 +02:00
radicle-crypto repo: Move workspace crates into `crates` subdirectory 2025-06-09 15:09:21 +02:00
radicle-dag repo: Move workspace crates into `crates` subdirectory 2025-06-09 15:09:21 +02:00
radicle-fetch chore: prepare crates release 2025-07-14 15:38:09 +01:00
radicle-node radicle: `connect` returns `ConnectError` 2025-07-16 15:47:10 +02:00
radicle-remote-helper chore: prepare crates release 2025-07-14 15:38:09 +01:00
radicle-schemars repo: Move workspace crates into `crates` subdirectory 2025-06-09 15:09:21 +02:00
radicle-signals repo: Move workspace crates into `crates` subdirectory 2025-06-09 15:09:21 +02:00
radicle-ssh repo: Move workspace crates into `crates` subdirectory 2025-06-09 15:09:21 +02:00
radicle-systemd repo: Move workspace crates into `crates` subdirectory 2025-06-09 15:09:21 +02:00
radicle-term chore: prepare crates release 2025-07-14 15:38:09 +01:00