Concept relationship layer: wikilink edges in rolegraph
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Aptitud para principiantes
- 35/100
Línea de trabajo
Start with MarkdownDirectivesParseResult and build_thesaurus_from_haystack(), then inspect RoleGraph::new() and the affected terraphim_rolegraph, terraphim_automata, terraphim_types, and terraphim_service crates. Confirm how related_concepts from #604 should become ConceptEdge values, then verify that graph traversal, autocomplete, and configurable search ranking support the new relationships.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Summary
Add concept-to-concept edges to the rolegraph, derived from [[wikilinks]] extracted by the Obsidian parser (#604). Currently the thesaurus is flat (synonym -> concept). Wikilinks enable a second layer: concept -> related concept.
Current State
Thesaurus (flat):
"context management" -> concept("context engineering")
"semantic scope" -> concept("context engineering")
Proposed State
Thesaurus (flat, unchanged):
"context management" -> concept("context engineering")
Relationships (new):
concept("context engineering") --Related--> concept("knowledge graph")
concept("context engineering") --Related--> concept("ontology")
concept("knowledge graph") --ParentChild--> concept("context engineering") // from folder hierarchy
Edge Types
pub enum EdgeType {
Related, // from [[wikilinks]]
ParentChild, // from folder hierarchy (subfolder = child)
SeeAlso, // future: explicit "see also::" directive
}
pub struct ConceptEdge {
pub from: NormalizedTermValue,
pub to: NormalizedTermValue,
pub edge_type: EdgeType,
pub weight: f64, // default 1.0, can be boosted by frequency
}
Integration with RoleGraph
terraphim_rolegraph already supports node/edge relationships. Feed ConceptEdge data into the existing graph structure so that:
- Search ranking: when searching for "context engineering", results mentioning related concepts ("knowledge graph", "ontology") get a relevance boost
- Graph traversal:
terraphim_agentASCII graph visualization shows concept neighborhoods - Autocomplete: typing "context" could suggest both synonyms AND related concepts
Implementation
- Extend
MarkdownDirectivesParseResultto includeVec<ConceptEdge>(#604 providesrelated_concepts) - In
build_thesaurus_from_haystack(), after building the flat thesaurus, construct edges fromrelated_concepts - Feed edges into
RoleGraph::new()alongside the thesaurus - Boost search results that match related concepts (configurable weight, default 0.3x of direct match)
Affected Crates
terraphim_rolegraph(primary -- accept and store concept edges)terraphim_automata(pass edges from parser output)terraphim_types(ConceptEdge, EdgeType types)terraphim_service(use edges for search ranking boost)
Dependencies
- #604 Obsidian format parser (provides related_concepts extraction)
Estimated Effort
~1 day
Part of
Epic #603
- Lenguaje dominante
- Rust
- Estrellas
- 62
- Forks
- 5
- Merge medio
- 2 h 27 min
- PR fusionados (30 d)
- 1
Guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de terraphim/terraphim-ai
-
Dificultad 5/5 Más de una semana Aptitud para principiantes 25/100
terraphim/terraphim-ai#885 ·
-
Dificultad 4/5 3-5 días Aptitud para principiantes 55/100
terraphim/terraphim-ai#871 ·
-
enhancement
Dificultad 5/5 Más de una semana Aptitud para principiantes 25/100
terraphim/terraphim-ai#810 · 2 comentarios ·
-
enhancement
Dificultad 5/5 Más de una semana Aptitud para principiantes 35/100
terraphim/terraphim-ai#729 ·
-
enhancement
Dificultad 5/5 Más de una semana Aptitud para principiantes 35/100
terraphim/terraphim-ai#728 ·
Todos los issues de terraphim/terraphim-ai
Issues similares
-
Replayed reasoning items send "content": null, which the Responses API schema does not permit Abiertobug CLI custom-model
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
rust-bitcoin/rust-bitcoin#6930 · 1 comentario ·
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
fulcrumgenomics/ferro-hgvs#2251 ·
-
Missing examples for `Allocator` AbiertoA-allocators A-docs C-enhancement T-libs
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100