# Graph Report - optima (2026-09-23) ## Corpus Check - cluster-only mode — file stats not available ## Summary - 965 nodes · 2291 edges · 79 communities (69 shown, 10 thin omitted) - Extraction: 93% EXTRACTED · 7% INFERRED · 0% AMBIGUOUS · INFERRED: 168 edges (avg confidence: 0.85) - Token cost: 0 input · 0 output ## Graph Freshness - Built from commit: `e86e26cb` - Run `git rev-parse HEAD` and compare to check if the graph is stale. - Run `graphify update .` after code changes (no API cost). ## Community Hubs (Navigation) - Community 0 - Community 1 - Community 2 - Community 3 - Community 4 - Community 5 - Community 6 - Community 7 - Community 8 - Community 9 - Community 10 - Community 11 - Community 12 - Community 13 - Community 14 - Community 15 - Community 16 - Community 17 - Community 18 - Community 19 - Community 20 - Community 21 - Community 22 - Community 23 - Community 24 - Community 25 - Community 26 - Community 27 - Community 28 - Community 29 - Community 30 - Community 31 - Community 32 - Community 33 - Community 34 - Community 35 - Community 36 - Community 37 - Community 38 - Community 39 - Community 40 - Community 41 - Community 42 - Community 43 - Community 44 - Community 45 - Community 46 - Community 47 - Community 48 - Community 49 - Community 50 - Community 51 - Community 52 - Community 53 - Community 54 - Community 55 - Community 56 - Community 57 - Community 58 - Community 59 - Community 60 - Community 61 - Community 62 - Community 63 - Community 64 - Community 65 - Community 66 - Community 67 - Community 68 - Community 69 - Community 70 - Community 71 - Community 72 - Community 73 - Community 74 - Community 75 ## God Nodes (most connected - your core abstractions) 1. `react` - 119 edges 2. `reactflow` - 93 edges 3. `FlowCanvas()` - 88 edges 4. `toast` - 61 edges 5. `CustomNodeData` - 41 edges 6. `BotService` - 36 edges 7. `CandleData` - 33 edges 8. `@google/genai` - 28 edges 9. `@heroicons/react` - 25 edges 10. `compilerOptions` - 16 edges ## Surprising Connections (you probably didn't know these) - `MenuManagerProps` --references--> `ManagedMenuItem` [EXTRACTED] components/MenuManager.tsx → types.ts - `MultiNodeAddModalProps` --references--> `ManagedMenuItem` [EXTRACTED] components/MultiNodeAddModal.tsx → types.ts - `TemplateGeneratorProps` --references--> `AnyNodeData` [EXTRACTED] components/TemplateGenerator.tsx → types.ts - `DevelopmentPanelProps` --references--> `AnyNodeData` [EXTRACTED] components/DevelopmentPanel.tsx → types.ts - `NodeShellProps` --references--> `AnyNodeData` [EXTRACTED] components/NodeShell.tsx → types.ts ## Import Cycles - None detected. ## Communities (79 total, 10 thin omitted) ### Community 0 - "Community 0" Cohesion: 0.06 Nodes (40): ActionableMenuItem, ContextMenu(), ContextMenuProps, FlowCanvasProps, IconPickerModal(), IconPickerModalProps, { __esModule, ...icons }, ICON_MAP (+32 more) ### Community 1 - "Community 1" Cohesion: 0.07 Nodes (28): ALL_INPUTS, BarChartNode(), DeribitOptionsNode(), DynamicIndicatorDisplayNode(), generateNodeSnapshot(), unpackIndicatorInput(), wrapText(), HistoricalFearAndGreedNode() (+20 more) ### Community 2 - "Community 2" Cohesion: 0.07 Nodes (33): BackendStatusNode(), DEFAULT_FILES_JS, DEFAULT_FILES_PY, VirtualFile, ScriptExamplesNode(), ScriptExamplesNodeProps, ALL_INPUTS, ALL_OUTPUTS (+25 more) ### Community 3 - "Community 3" Cohesion: 0.06 Nodes (24): AdvancedFilterNode(), ALL_INPUTS, ALL_OUTPUTS, areCandlesEqual(), BacktestDisplayNode(), ALL_INPUTS, ALL_OUTPUTS, areCandlesEqual() (+16 more) ### Community 4 - "Community 4" Cohesion: 0.07 Nodes (23): ai, CorrelationMatrixNode(), generateNodeSnapshot(), generateNodeSnapshot(), HeatmapNode(), ImageDisplayNode(), ai, generateNodeSnapshot() (+15 more) ### Community 5 - "Community 5" Cohesion: 0.08 Nodes (33): ALL_INPUTS, ALL_OUTPUTS, BitcoinNode(), calculateADX(), calculateBollingerBands(), calculateEMA(), calculateIchimokuCloud(), calculateMACD() (+25 more) ### Community 6 - "Community 6" Cohesion: 0.09 Nodes (21): ColorPicker(), ColorPickerProps, hexToRgb(), hsvToRgb(), PRESET_COLORS, rgbToHex(), rgbToHsv(), ai (+13 more) ### Community 8 - "Community 8" Cohesion: 0.10 Nodes (28): ALL_OUTPUTS, CryptoSelectorNode(), BLACKLIST_FILE, BotConfig, BotRuntime, DATA_DIR, DATA_FILE, evaluateCustomScriptNode() (+20 more) ### Community 9 - "Community 9" Cohesion: 0.12 Nodes (12): AdxNode(), BollingerBandsNode(), IchimokuCloudNode(), IndicatorStyleNode(), VolumeProfileNode(), reactflow, AdxNodeData, BollingerBandsNodeData (+4 more) ### Community 10 - "Community 10" Cohesion: 0.13 Nodes (16): TelegramBotNode(), ScreenshotModalProps, BacktestTrade, CandleScannerNodeData, CaptureOptions, ChartPatternPoint, CustomScriptIndicator, MarketStructureEvent (+8 more) ### Community 11 - "Community 11" Cohesion: 0.10 Nodes (20): dependencies, chart.js, chartjs-adapter-date-fns, chartjs-chart-financial, chartjs-plugin-annotation, date-fns, express, @google/genai (+12 more) ### Community 12 - "Community 12" Cohesion: 0.12 Nodes (14): ALL_OUTPUTS, ChartScaleNode(), ai, ALL_INPUTS, ALL_OUTPUTS, MarketAnalysisNode(), isPersian(), TextInputNode() (+6 more) ### Community 13 - "Community 13" Cohesion: 0.13 Nodes (17): ALL_INPUTS, ALL_OUTPUTS, buildFileTree(), CustomScriptNode(), DEFAULT_CODES_JS, DEFAULT_CODES_PY, DEFAULT_FILES_JS, DEFAULT_FILES_PY (+9 more) ### Community 14 - "Community 14" Cohesion: 0.20 Nodes (12): NodeGuide(), NodeGuideProps, getChangedKeys(), getHandleLabel(), HandleDefinition, NodeShell(), NodeShellProps, safeJsonStr() (+4 more) ### Community 15 - "Community 15" Cohesion: 0.12 Nodes (16): compilerOptions, allowImportingTsExtensions, allowJs, experimentalDecorators, isolatedModules, jsx, lib, module (+8 more) ### Community 16 - "Community 16" Cohesion: 0.17 Nodes (12): AppState, Window, ActiveKeyCombo, KeystrokeVisualizer(), Shortcut, ShortcutsHelpModal(), ShortcutsHelpModalProps, SplashPage() (+4 more) ### Community 17 - "Community 17" Cohesion: 0.14 Nodes (14): areInputsEqual(), FlowCanvas(), wouldCreateCycle(), CandleScannerNode(), MarketStructureNode(), MultiTimeFrameSetupNode(), CalculatedPath, SignalTradeDecisionTreeNode() (+6 more) ### Community 18 - "Community 18" Cohesion: 0.19 Nodes (11): ConfirmDialog(), ConfirmDialogProps, FailedNodeInfo, initializeMenuItems(), mergeMenuItems(), validateLoadedNodes(), WelcomeScreenProps, Workspace (+3 more) ### Community 19 - "Community 19" Cohesion: 0.15 Nodes (11): HeaderInfo, ai, calculateEMA(), PriceActionStrategyNode(), ai, RiskProfile, TradeStrategyNode(), CandleData (+3 more) ### Community 20 - "Community 20" Cohesion: 0.13 Nodes (14): name, private, type, version, chartjs-chart-financial, esbuild, prismjs, pyodide (+6 more) ### Community 21 - "Community 21" Cohesion: 0.17 Nodes (9): ALL_OUTPUTS, CSVLoaderNode(), ALL_OUTPUTS, TimeFrameSelectorNode(), TIME_FRAMES, CSVLoaderNodeData, MultiTimeFrameSetupNodeData, TimeFrame (+1 more) ### Community 22 - "Community 22" Cohesion: 0.19 Nodes (9): MarketRegimeDisplayNode(), unpackRegimeInput(), SmartMoneyDisplayNode(), unpackSignalInput(), RTL_LANGUAGES, MarketRegimeDisplayNodeData, SmartMoneyDisplayNodeData, SmartMoneySignal (+1 more) ### Community 23 - "Community 23" Cohesion: 0.23 Nodes (8): Props, State, LoginPage(), LoginPageProps, NOTE: auto-bypass removed — the server session cookie (30 days) is the…, initializeDevErrorLogging(), TelemetryLog, telemetryService ### Community 24 - "Community 24" Cohesion: 0.17 Nodes (8): ai, DynamicIndicatorNode(), ai, TranslationNode(), LANGUAGES, DynamicIndicator, DynamicIndicatorNodeData, TranslationNodeData ### Community 25 - "Community 25" Cohesion: 0.17 Nodes (8): LiquidityDisplayNode(), MtfPeriod, MultiTimeFrameNode(), LiquidityDisplayNodeData, LiquidityPool, MtfLine, MtfOverlayObject, MultiTimeFrameNodeData ### Community 26 - "Community 26" Cohesion: 0.17 Nodes (10): codeContent, dataProcessingJS, dataProcessingPY, fs, jsFilesToAdd, portfolioOptimizationJS, portfolioOptimizationPY, pyFilesToAdd (+2 more) ### Community 27 - "Community 27" Cohesion: 0.18 Nodes (7): ai, AnomalyDetectionNode(), ai, PredictiveForecastNode(), @google/genai, AnomalyDetectionNodeData, PredictiveForecastNodeData ### Community 28 - "Community 28" Cohesion: 0.22 Nodes (9): ALL_OUTPUTS, DEFAULT_COLORS, IndicatorNode(), DEFAULT_HEADER_BUTTON_COLORS, HANDLE_COLORS, HEADER_BUTTON_KEYS, INDICATORS, Indicator (+1 more) ### Community 29 - "Community 29" Cohesion: 0.18 Nodes (11): devDependencies, esbuild, tailwindcss, @tailwindcss/vite, tsx, @types/express, @types/node, @types/prismjs (+3 more) ### Community 30 - "Community 30" Cohesion: 0.24 Nodes (7): CommandPalette(), CommandPaletteProps, PaletteItem, NodeCategory, NodeInfo, rawMenuItems, RawPaneMenuItem ### Community 31 - "Community 31" Cohesion: 0.20 Nodes (6): ai, LiquidityHunterNode(), LiquidityHunterNodeData, MarketStructureNodeData, MarketStructureObject, MarketStructurePoint ### Community 32 - "Community 32" Cohesion: 0.31 Nodes (7): TEMPLATE_SUGGESTIONS, TemplateGenerator(), emitter, toast, ToastMessage, ai, generateTemplate() ### Community 33 - "Community 33" Cohesion: 0.22 Nodes (6): content, fs, content, fs, fs, ref_fs ### Community 34 - "Community 34" Cohesion: 0.22 Nodes (6): FilePickerModal(), FilePickerModalProps, guideContent, HelpModal(), HelpModalProps, @heroicons/react ### Community 35 - "Community 35" Cohesion: 0.25 Nodes (6): express, ref_path, @tailwindcss/vite, vite, @vitejs/plugin-react, startServer() ### Community 36 - "Community 36" Cohesion: 0.25 Nodes (6): ai, ALL_INPUTS, ALL_OUTPUTS, CandlestickStorytellerNode(), StorySegment, CandlestickStorytellerNodeData ### Community 37 - "Community 37" Cohesion: 0.25 Nodes (6): ai, ALL_INPUTS, ALL_OUTPUTS, PatternRecognitionNode(), ChartPattern, PatternRecognitionNodeData ### Community 38 - "Community 38" Cohesion: 0.25 Nodes (6): ai, ALL_INPUTS, ALL_OUTPUTS, PriceActionScoutNode(), PriceActionScoutNodeData, PriceActionSetup ### Community 39 - "Community 39" Cohesion: 0.25 Nodes (6): ai, ALL_INPUTS, ALL_OUTPUTS, StrategyBacktesterNode(), BacktestResult, StrategyBacktesterNodeData ### Community 40 - "Community 40" Cohesion: 0.25 Nodes (6): ai, ALL_INPUTS, ALL_OUTPUTS, TopTraderFinderNode(), TopTraderFinderNodeData, TopTradersObject ### Community 41 - "Community 41" Cohesion: 0.32 Nodes (6): ai, formatText(), isPersian(), Message, TradingCoachNode(), TradingCoachNodeData ### Community 42 - "Community 42" Cohesion: 0.38 Nodes (6): ai, ChatModal(), ChatModalProps, formatText(), isPersian(), Message ### Community 44 - "Community 44" Cohesion: 0.33 Nodes (4): AnomalyDisplayNode(), unpackAnomaliesInput(), Anomaly, AnomalyDisplayNodeData ### Community 45 - "Community 45" Cohesion: 0.38 Nodes (5): areStatsEqual(), CandleStatsNode(), generateStatsSnapshot(), CandleStatsNodeData, CandleStatsReport ### Community 46 - "Community 46" Cohesion: 0.29 Nodes (5): ALL_INPUTS, ALL_OUTPUTS, dataKeys, DataSelectorNode(), DataSelectorNodeData ### Community 47 - "Community 47" Cohesion: 0.29 Nodes (5): ai, ALL_INPUTS, ALL_OUTPUTS, NewsAnalysisNode(), NewsAnalysisNodeData ### Community 48 - "Community 48" Cohesion: 0.38 Nodes (5): ai, getSentimentBg(), getSentimentColor(), SentimentAnalyzerNode(), SentimentAnalyzerNodeData ### Community 49 - "Community 49" Cohesion: 0.29 Nodes (5): ai, Sensitivity, SmartMoneyTrackerNode(), AnomalousStrike, SmartMoneyTrackerNodeData ### Community 50 - "Community 50" Cohesion: 0.33 Nodes (5): ALL_INPUTS, formatText(), TextDisplayNode(), TextDisplayNodeData, TranslatedTextObject ### Community 51 - "Community 51" Cohesion: 0.33 Nodes (6): extractArrayRange(), fileContent, fs, jsUpdates, pyUpdates, updateArray() ### Community 52 - "Community 52" Cohesion: 0.33 Nodes (4): App(), root, rootElement, react-dom ### Community 53 - "Community 53" Cohesion: 0.33 Nodes (4): ai, IndicatorOptimizerNode(), OptimizableIndicator, IndicatorOptimizerNodeData ### Community 54 - "Community 54" Cohesion: 0.33 Nodes (4): ai, MarketRegimeDetectorNode(), MarketRegime, MarketRegimeDetectorNodeData ### Community 55 - "Community 55" Cohesion: 0.47 Nodes (4): formatPrice(), StrategyDisplayNode(), unpackStrategyInput(), StrategyDisplayNodeData ### Community 56 - "Community 56" Cohesion: 0.33 Nodes (5): CalculatedPath, EMPTY_ARRAY, TradeDecisionTreeViewNode(), TreeNode, TradeDecisionTreeViewNodeData ### Community 57 - "Community 57" Cohesion: 0.33 Nodes (4): ManualTradeInput, SimulatedTrade, TradeSimulatorPnLNode(), TradeSimulatorPnLNodeData ### Community 58 - "Community 58" Cohesion: 0.40 Nodes (4): ai, isPersian(), WhatIfScenarioNode(), WhatIfScenarioNodeData ### Community 59 - "Community 59" Cohesion: 0.33 Nodes (5): FailedNodeInfo, Step, STEPS, TerminalLoader(), TerminalLoaderProps ### Community 60 - "Community 60" Cohesion: 0.33 Nodes (4): fs, jsExamples, levels, pyExamples ### Community 61 - "Community 61" Cohesion: 0.40 Nodes (4): DiagnosticsModal(), DiagnosticsModalProps, FailedNodeInfo, LogLevel ### Community 62 - "Community 62" Cohesion: 0.40 Nodes (4): CalculatedPath, TradeDecisionTreeNode(), TreeNode, TradeDecisionTreeNodeData ### Community 63 - "Community 63" Cohesion: 0.40 Nodes (4): content, endIndex, fs, startIndex ### Community 64 - "Community 64" Cohesion: 0.50 Nodes (3): cryptoServiceContent, fs, typesContent ### Community 65 - "Community 65" Cohesion: 0.50 Nodes (3): HandleDefinition, HandleManager(), HandleManagerProps ### Community 66 - "Community 66" Cohesion: 0.50 Nodes (3): ai, LibraryDocNode(), LibraryDocNodeData ### Community 67 - "Community 67" Cohesion: 0.50 Nodes (3): PathwayHistoryRecapNode(), TradeRecord, PathwayHistoryRecapNodeData ### Community 68 - "Community 68" Cohesion: 0.50 Nodes (3): CalculatedPath, TradeDecisionTreeDisplayNode(), TradeDecisionTreeDisplayNodeData ### Community 69 - "Community 69" Cohesion: 0.50 Nodes (3): fs, path, processDir() ### Community 70 - "Community 70" Cohesion: 0.50 Nodes (4): scripts, build, dev, start ## Knowledge Gaps - **275 isolated node(s):** `ActionableMenuItem`, `IconPickerModalProps`, `NodeCategory`, `NodeInfo`, `BacktestTrade` (+270 more) These have ≤1 connection - possible missing edges or undocumented components. (Counts symbols only; 371 node(s) total have ≤1 connection when file, concept and rationale nodes are included.) - **10 thin communities (<3 nodes) omitted from report** — run `graphify query` to explore isolated nodes. ## Suggested Questions _Questions this graph is uniquely positioned to answer:_ - **Why does `react` connect `Community 0` to `Community 1`, `Community 2`, `Community 3`, `Community 4`, `Community 5`, `Community 6`, `Community 8`, `Community 9`, `Community 10`, `Community 12`, `Community 13`, `Community 14`, `Community 16`, `Community 17`, `Community 18`, `Community 19`, `Community 20`, `Community 21`, `Community 22`, `Community 23`, `Community 24`, `Community 25`, `Community 27`, `Community 28`, `Community 30`, `Community 31`, `Community 32`, `Community 34`, `Community 36`, `Community 37`, `Community 38`, `Community 39`, `Community 40`, `Community 41`, `Community 42`, `Community 44`, `Community 45`, `Community 46`, `Community 47`, `Community 48`, `Community 49`, `Community 50`, `Community 52`, `Community 53`, `Community 54`, `Community 55`, `Community 56`, `Community 57`, `Community 58`, `Community 59`, `Community 61`, `Community 62`, `Community 65`, `Community 66`, `Community 67`, `Community 68`?** _High betweenness centrality (0.164) - this node is a cross-community bridge._ - **Why does `reactflow` connect `Community 9` to `Community 0`, `Community 1`, `Community 2`, `Community 3`, `Community 4`, `Community 5`, `Community 6`, `Community 8`, `Community 10`, `Community 12`, `Community 13`, `Community 14`, `Community 17`, `Community 18`, `Community 19`, `Community 20`, `Community 21`, `Community 22`, `Community 24`, `Community 25`, `Community 27`, `Community 28`, `Community 31`, `Community 32`, `Community 36`, `Community 37`, `Community 38`, `Community 39`, `Community 40`, `Community 41`, `Community 44`, `Community 45`, `Community 46`, `Community 47`, `Community 48`, `Community 49`, `Community 50`, `Community 53`, `Community 54`, `Community 55`, `Community 56`, `Community 57`, `Community 58`, `Community 62`, `Community 66`, `Community 67`, `Community 68`?** _High betweenness centrality (0.062) - this node is a cross-community bridge._ - **Why does `FlowCanvas()` connect `Community 17` to `Community 0`, `Community 1`, `Community 2`, `Community 3`, `Community 4`, `Community 5`, `Community 8`, `Community 9`, `Community 10`, `Community 12`, `Community 13`, `Community 18`, `Community 19`, `Community 21`, `Community 22`, `Community 24`, `Community 25`, `Community 27`, `Community 28`, `Community 31`, `Community 36`, `Community 37`, `Community 38`, `Community 39`, `Community 40`, `Community 41`, `Community 44`, `Community 45`, `Community 46`, `Community 47`, `Community 48`, `Community 49`, `Community 50`, `Community 53`, `Community 54`, `Community 55`, `Community 56`, `Community 57`, `Community 58`, `Community 62`, `Community 66`, `Community 67`, `Community 68`?** _High betweenness centrality (0.055) - this node is a cross-community bridge._ - **Are the 82 inferred relationships involving `FlowCanvas()` (e.g. with `AdvancedFilterNode()` and `AdxNode()`) actually correct?** _`FlowCanvas()` has 82 INFERRED edges - model-reasoned connections that need verification._ - **What connects `ActionableMenuItem`, `IconPickerModalProps`, `NodeCategory` to the rest of the system?** _275 weakly-connected nodes found - possible documentation gaps or missing edges._ - **Should `Community 0` be split into smaller, more focused modules?** _Cohesion score 0.062146892655367235 - nodes in this community are weakly interconnected._ - **Should `Community 1` be split into smaller, more focused modules?** _Cohesion score 0.06852497096399536 - nodes in this community are weakly interconnected._