tldr_cli/commands/remaining/mod.rs
1//! Remaining commands for TLDR CLI
2//!
3//! This module implements additional analysis commands:
4//! - LOW: todo, explain, secure
5//! - MEDIUM: definition, diff
6//! - HIGH: api_check, equivalence, vuln
7//!
8//! # Module Structure
9//!
10//! - `types`: Shared data types for all remaining commands
11//! - `error`: Error types and result aliases
12//! - `ast_cache`: AST caching layer for efficient multi-analysis
13//! - `graph_utils`: Cycle detection for graph traversal (TIGER-02)
14//! - `todo`: Improvement aggregation command
15//! - `explain`: Comprehensive function analysis command
16//! - `secure`: Security analysis dashboard
17//! - `definition`: Go-to-definition command
18//! - `diff`: AST-aware structural diff
19//! - `equivalence`: GVN-based redundancy detection command
20//! - `api_check`: API misuse detection command
21//! - `vuln`: Vulnerability detection via taint analysis
22
23pub mod api_check;
24pub mod ast_cache;
25pub mod difftastic;
26// equivalence: archived (T5 deep analysis)
27pub mod definition;
28pub mod diff;
29pub mod vuln;
30// diff_impact: archived (superseded by change-impact)
31pub mod error;
32pub mod explain;
33pub mod graph_utils;
34pub mod secure;
35pub mod todo;
36pub mod types;
37
38// Re-export types for convenience
39pub use error::{RemainingError, RemainingResult};
40pub use types::{
41 // Diff Impact types (archived - superseded by change-impact)
42 // ChangedFunction, DiffImpactReport, DiffImpactSummary,
43 // API Check types
44 APICheckReport,
45 APICheckSummary,
46 APIRule,
47 // Diff types
48 ASTChange,
49 // L8 Architecture-level types
50 ArchChangeType,
51 ArchDiffSummary,
52 ArchLevelChange,
53 BaseChanges,
54 // Explain types
55 CallInfo,
56 ChangeType,
57 ComplexityInfo,
58 // Definition types
59 DefinitionResult,
60 DiffGranularity,
61 DiffReport,
62 DiffSummary,
63 ExplainReport,
64 // Equivalence (GVN) types (from types.rs)
65 ExpressionRef,
66 // L6 File-level types
67 FileLevelChange,
68 GVNEquivalence,
69 GVNReport,
70 GVNSummary,
71 // L7 Module-level types
72 ImportEdge,
73 ImportGraphSummary,
74 // Common types
75 Location,
76 MisuseCategory,
77 MisuseFinding,
78 MisuseSeverity,
79 ModuleLevelChange,
80 NodeKind,
81 OutputFormat,
82 ParamInfo,
83 PurityInfo,
84 Redundancy,
85 // Secure types
86 SecureFinding,
87 SecureReport,
88 SecureSummary,
89 Severity,
90 SignatureInfo,
91 SymbolInfo,
92 SymbolKind,
93 // Vuln types
94 TaintFlow,
95 // Todo types
96 TodoItem,
97 TodoReport,
98 TodoSummary,
99 VulnFinding,
100 VulnReport,
101 VulnSummary,
102 VulnType,
103};
104
105// Re-export graph utilities
106pub use graph_utils::{
107 CycleDetector, TraversalResult, VisitedSet, MAX_GRAPH_DEPTH, MAX_IMPORT_DEPTH,
108};
109
110// Re-export command Args
111pub use api_check::ApiCheckArgs;
112pub use definition::DefinitionArgs;
113pub use diff::DiffArgs;
114// DiffImpactArgs: archived (superseded by change-impact)
115// EquivalenceArgs: archived (T5 deep analysis)
116pub use explain::ExplainArgs;
117pub use secure::SecureArgs;
118pub use todo::TodoArgs;
119pub use vuln::VulnArgs;