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;
17pub mod lsp_client;
18pub mod lsp_daemon;
19pub mod harness;
20pub mod storage;
21
22// Ritual module (requires "ritual" feature)
23#[cfg(feature = "ritual")]
24pub mod ritual;
25
26// Re-export commonly used types
27pub use graph::*;
28pub use query::QueryEngine;
29pub use parser::{load_graph, save_graph};
30pub use code_graph::{
31    CodeGraph, CodeNode, CodeEdge, NodeKind, EdgeRelation, Language,
32    ImpactReport, CausalChain, ChainNode,
33    UnifiedGraphResult, UnifiedNode, UnifiedEdge,
34    ExtractMetadata, FileState, FileDelta, ExtractReport,
35};
36pub use unified::{build_unified_graph, merge_relevant_code, link_tasks_to_code, UnifiedStats};
37pub use working_mem::{
38    GidContext, NodeInfo, ErrorType, RiskLevel, ImpactAnalysis,
39    query_gid_context, find_low_risk_alternatives, classify_error,
40    extract_key_traceback, analyze_impact, format_impact_for_llm,
41    // Agent working memory types
42    Action, TestOutcome, AttemptRecord, NodeRisk, WorkingMemory,
43};
44pub use history::{HistoryManager, HistoryEntry, GraphDiff};
45pub use visual::{render, render_ascii, render_dot, render_mermaid, VisualFormat};
46pub use advise::{analyze, AnalysisResult, Advice, Severity, AdviceType};
47pub use design::{
48    generate_graph_prompt, generate_features_prompt, generate_components_prompt,
49    parse_llm_response, parse_features_response, parse_components_response,
50    build_graph_from_proposals, FeatureProposal, ComponentProposal, DesignResult,
51};
52pub use semantify::{
53    generate_semantify_prompt, generate_full_transform_prompt,
54    parse_semantify_response, parse_full_transform_response,
55    apply_proposals, apply_heuristic_layers, heuristic_assign_layer,
56    SemanticProposal, SemantifyResult,
57};
58pub use refactor::{
59    preview_rename, apply_rename,
60    preview_merge, apply_merge,
61    preview_split, apply_split,
62    preview_extract, apply_extract,
63    update_title, move_to_layer,
64    RefactorPreview, Change, ChangeType, SplitDefinition,
65};
66pub use ignore::{
67    load_ignore_list, IgnoreList, IgnorePattern, is_common_ignore, DEFAULT_IGNORES,
68};
69pub use task_graph_knowledge::{
70    ToolCallRecord, KnowledgeNode, KnowledgeGraph, KnowledgeManagement,
71    SimpleKnowledgeGraph,
72};
73pub use complexity::{
74    Complexity, ComplexityReport, assess_complexity_from_graph, assess_complexity,
75    is_high_risk_change, assess_risk_level,
76};
77pub use lsp_client::{
78    LspClient, LspEnrichmentStats, LspLocation, LspRefinementStats, LspServerConfig,
79};
80
81// Ritual re-exports (requires "ritual" feature)
82#[cfg(feature = "ritual")]
83pub use ritual::{
84    RitualDefinition, PhaseDefinition, PhaseKind, ApprovalRequirement,
85    SkipCondition, FailureStrategy, ArtifactRef, ArtifactSpec, PhaseHooks,
86    RitualConfig, RitualEngine, RitualState, RitualStatus, PhaseState,
87    PhaseStatus, PhaseExecutor, PhaseResult, PhaseContext, ArtifactManager,
88    ApprovalGate, ApprovalRequest, TemplateRegistry, TemplateSummary,
89};