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
//! The one impure dependency the rule pack needs: resolving VCS revisions. The trait lives
//! in core so rules can depend on it; the git-backed implementation is in `corpora-engine`
//! (it does IO). Inject a [`NullOracle`] in tests to keep rules pure-testable.
use crateRev;
/// Why an oracle can or can't verify revisions — lets Gate B distinguish an intentional
/// no-op (`Disabled`) and a repo-less corpus (`NoRepo`, skip) from a real misconfiguration
/// (`Unavailable`, e.g. git missing), rather than failing open silently for all three.
/// No-VCS oracle: a deliberate no-op. Gates that need revision context skip silently.
;