gobby-wiki 0.8.0

Gobby wiki CLI shell
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
//! Wikilink extraction and target normalization.
//!
//! The implementation lives in `gobby_core::vault::links` (#17514) so gcode
//! and gwiki resolve link targets with identical grammar; this module
//! re-exports the pieces gwiki consumes under the crate-local path every
//! consumer already uses.

pub use gobby_core::vault::links::{LinkKind, WikiLink, canonical_target_key, extract_links};

/// Entity-shaped keys (no path separator) are what upkeep clusters into
/// entity pages; path-shaped targets — including `knowledge/sources/...`
/// digest keys — can never converge that way. Upkeep's cluster accumulation
/// and librarian's broken-link classification must share this predicate, or
/// upkeep mints junk pages librarian already wrote off as repair debt
/// (#17652).
pub(crate) fn is_entity_key(key: &str) -> bool {
    !key.is_empty() && !key.contains('/')
}