pub enum MatchKind {
Exact,
Declared,
Inferred,
Ambiguous,
MatchingContract,
}Expand description
How a stitch was evidenced. Never stronger than the keys behind it.
Direction rule: a shared SHAPE (server+server routes, pub+pub topics)
is a MatchKind::MatchingContract, never MatchKind::Exact.
Exact requires evidenced direction across members (publisher in one,
subscriber in another; a declared repo binding) — two servers exposing
the same route may never have called each other.
Variants§
Exact
Direction evidenced across members (publisher↔subscriber, declared repo binding). Reachable for routes once HTTP client-call evidence exists (HTTP_CLIENT_CALL entities — extractor deferred, like deferred FlowEdgeKind detection: documented, not faked).
Declared
Importer names the member repo AND the imported symbol.
Inferred
Symbol match; which repo provides the module is unresolved.
Ambiguous
Same key claimed incompatibly — recorded, never joined.
MatchingContract
Same contract shape in ≥2 members with no evidenced direction (server+server routes, pub+pub or bare topics). A shared contract, NOT a proven cross-repo dependency.