1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
//! Version control and its remote host behind one host-neutral vocabulary.
//!
//! The review unit is a [`ChangeRequest`] — GitHub maps it to a pull request,
//! and a later host maps it to whatever it calls the same thing. [`Vcs`] owns the
//! repository side (identities, sessions, preserved work) and [`RemoteHost`] owns
//! the host side (opening a change, reading its checks, merging it). A
//! [`rules`] file decides, per repository, how a change is published and what
//! verifies it. Everything a process does along the way is emitted as an
//! [`Envelope`].
//!
//! # This crate is interface-only
//!
//! The public surface here is the approved contract in `docs/contract.md`,
//! compiled. Nothing behind it is implemented yet: every trait method returns
//! [`Error::NotImplemented`], and the CLI refuses with exit code 70. Types,
//! traits, config schemas, and the argument surface are final; behaviour lands
//! per-seam.
pub use ;
pub use ;
pub use ;
pub use Identity;
pub use MergePolicy;
pub use ;
pub use ;
/// A parsed absolute URL, re-exported so a caller needs no direct dependency on
/// the parser this crate validates change-request URLs with.
pub use Url;