Skip to main content

gid_core/
lib.rs

1pub mod graph;
2pub mod query;
3pub mod parser;
4pub mod validator;
5pub mod code_graph;
6pub mod unified;
7pub mod working_mem;
8pub mod history;
9pub mod visual;
10pub mod advise;
11pub mod design;
12pub mod semantify;
13pub mod refactor;
14pub mod ignore;
15pub mod task_graph_knowledge;
16pub mod complexity;
17
18// Re-export commonly used types
19pub use graph::*;
20pub use query::QueryEngine;
21pub use parser::{load_graph, save_graph};
22pub use code_graph::{
23    CodeGraph, CodeNode, CodeEdge, NodeKind, EdgeRelation, Language,
24    ImpactReport, CausalChain, ChainNode,
25    UnifiedGraphResult, UnifiedNode, UnifiedEdge,
26};
27pub use unified::{build_unified_graph, merge_relevant_code, link_tasks_to_code, UnifiedStats};
28pub use working_mem::{
29    GidContext, NodeInfo, ErrorType, RiskLevel, ImpactAnalysis,
30    query_gid_context, find_low_risk_alternatives, classify_error,
31    extract_key_traceback, analyze_impact, format_impact_for_llm,
32    // Agent working memory types
33    Action, TestOutcome, AttemptRecord, NodeRisk, WorkingMemory,
34};
35pub use history::{HistoryManager, HistoryEntry, GraphDiff};
36pub use visual::{render, render_ascii, render_dot, render_mermaid, VisualFormat};
37pub use advise::{analyze, AnalysisResult, Advice, Severity, AdviceType};
38pub use design::{
39    generate_graph_prompt, generate_features_prompt, generate_components_prompt,
40    parse_llm_response, parse_features_response, parse_components_response,
41    build_graph_from_proposals, FeatureProposal, ComponentProposal, DesignResult,
42};
43pub use semantify::{
44    generate_semantify_prompt, generate_full_transform_prompt,
45    parse_semantify_response, parse_full_transform_response,
46    apply_proposals, apply_heuristic_layers, heuristic_assign_layer,
47    SemanticProposal, SemantifyResult,
48};
49pub use refactor::{
50    preview_rename, apply_rename,
51    preview_merge, apply_merge,
52    preview_split, apply_split,
53    preview_extract, apply_extract,
54    update_title, move_to_layer,
55    RefactorPreview, Change, ChangeType, SplitDefinition,
56};
57pub use ignore::{
58    load_ignore_list, IgnoreList, IgnorePattern, is_common_ignore, DEFAULT_IGNORES,
59};
60pub use task_graph_knowledge::{
61    ToolCallRecord, KnowledgeNode, KnowledgeGraph, KnowledgeManagement,
62    SimpleKnowledgeGraph,
63};
64pub use complexity::{
65    Complexity, ComplexityReport, assess_complexity_from_graph, assess_complexity,
66    is_high_risk_change, assess_risk_level,
67};