feat: auto abstraction budget estimation with webapp UI and batch analysis#1
Open
1zero224 wants to merge 4 commits into
Open
feat: auto abstraction budget estimation with webapp UI and batch analysis#11zero224 wants to merge 4 commits into
1zero224 wants to merge 4 commits into
Conversation
- Add DeepAnalysisNode: deep dive into each abstraction (design motivation, trade-offs, alternatives) - Add DesignPatternNode: identify and analyze design patterns used in code - Add ArchitectureOverviewNode: generate architecture overview with multiple Mermaid diagrams - Add CodeWalkthroughNode: line-by-line code walkthrough for key files - Add EnhancedWriteChaptersNode: generate 10x more detailed chapters - Add TutorialSynthesisNode: final synthesis with quick start, FAQ, glossary - Add DeepCombineTutorial: combine all deep analysis into final output - Add --deep flag to main.py for enabling deep analysis mode - Update README.md with deep analysis mode documentation Pipeline: FetchRepo → IdentifyAbstractions → DeepAnalysisNode → DesignPatternNode → ArchitectureOverviewNode → AnalyzeRelationships → OrderChapters → CodeWalkthroughNode → EnhancedWriteChaptersNode → TutorialSynthesisNode → DeepCombineTutorial
- Add 'auto' mode for --max-abstractions: LLM estimates optimal chapter count (clamped 3-12) based on project complexity rather than using a fixed cap - Centralize configuration defaults into app_config.py - Add Flask webapp for GUI-based tutorial generation - Add terminal progress bar with per-node timing - Add token usage summary after each run - Refactor main.py shared state construction
…enerator Integrate two parallel feature branches: - feature/auto-mode-webapp: auto abstraction budget estimation, webapp UI, progress bar, token summary, centralized config (app_config.py) - feature/enhanced-deep-doc-generator: deep analysis mode with DeepAnalysisNode, DesignPatternNode, ArchitectureOverviewNode, CodeWalkthroughNode, EnhancedWriteChaptersNode, TutorialSynthesisNode Resolved conflicts in main.py (merged imports) and README.md (combined usage docs for deep analysis and auto mode features).
…glish output - Remove deprecated --deep flag and deep_flow.py/deep_nodes.py - Switch progress bar/output from Chinese to ASCII/English - Update README to reflect merged feature set - Increase MAX_AUTO_ABSTRACTIONS from 12 to 30 - Auto budget prompt now includes project scale statistics - Add batch_analyze.py + checkpoint.json for multi-repo analysis - Add claw0 analysis documentation output - Enhance call_llm with retry jitter, tempfile support, contextmanager - Update tests for call_llm return signature change
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
合并
feature/auto-mode-webapp和feature/enhanced-deep-doc-generator两个特性分支,带来自动抽象预算估算、Web UI 和批量分析能力:Core Features
--max-abstractionswebapp/)batch_analyze.py支持批量分析多个仓库并输出分析报告(含 checkpoint 断点续跑)Changes
nodes.py: 新增_auto_abstraction_budget_prompt、_compute_project_stats,auto 模式自动估算预算;MAX_AUTO_ABSTRACTIONS 12→30main.py: 移除已废弃的--deep模式,输出切换为英文utils/call_llm.py: 重构 LLM 调用(contextmanager、retry jitter、tempfile 支持、增强缓存)utils/semantic_chunks.py: 改进语义分块策略tests/: 新增 test_main_defaults.py, test_webapp_service.py,增强 test_semantic_chunks.pydocs/design.md: 同步更新架构文档Cleanup
deep_flow.py、deep_nodes.py(功能已合并到主流程)Test plan
python main.py --repo <url> --max-abstractions-mode auto验证自动预算估算python main.py --repo <url> --max-abstractions-mode fixed --max-abstractions 5验证固定模式python webapp/server.py启动 Web UIpython -m pytest tests/通过全部测试