code2llm 0.5.163__tar.gz → 0.5.165__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {code2llm-0.5.163/code2llm.egg-info → code2llm-0.5.165}/PKG-INFO +9 -9
- {code2llm-0.5.163 → code2llm-0.5.165}/README.md +8 -8
- code2llm-0.5.165/VERSION +1 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/__init__.py +1 -1
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/analysis/_data_impl.py +9 -5
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/analysis/data_analysis.py +0 -1
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/core/analyzer.py +2 -3
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/nlp/__init__.py +1 -1
- {code2llm-0.5.163 → code2llm-0.5.165/code2llm.egg-info}/PKG-INFO +9 -9
- {code2llm-0.5.163 → code2llm-0.5.165}/pyproject.toml +1 -1
- code2llm-0.5.163/VERSION +0 -1
- {code2llm-0.5.163 → code2llm-0.5.165}/LICENSE +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/MANIFEST.in +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/__main__.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/analysis/__init__.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/analysis/call_graph.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/analysis/cfg.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/analysis/coupling.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/analysis/dfg.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/analysis/pipeline_classifier.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/analysis/pipeline_detector.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/analysis/pipeline_resolver.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/analysis/side_effects.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/analysis/smells.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/analysis/type_inference.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/analysis/utils/__init__.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/analysis/utils/ast_helpers.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/api.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/cli.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/cli_analysis.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/cli_commands.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/cli_exports/__init__.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/cli_exports/code2logic.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/cli_exports/formats.py +4 -4
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/cli_exports/orchestrator.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/cli_exports/orchestrator_chunked.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/cli_exports/orchestrator_constants.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/cli_exports/orchestrator_handlers.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/cli_exports/prompt.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/cli_parser.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/core/__init__.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/core/ast_registry.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/core/config.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/core/export_pipeline.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/core/file_analyzer.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/core/file_cache.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/core/file_filter.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/core/gitignore.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/core/incremental.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/core/lang/__init__.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/core/lang/_c_parser.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/core/lang/_calls.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/core/lang/_complexity.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/core/lang/base.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/core/lang/cpp.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/core/lang/csharp.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/core/lang/generic.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/core/lang/go_lang.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/core/lang/java.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/core/lang/php.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/core/lang/ruby.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/core/lang/rust.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/core/lang/ts_extractors.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/core/lang/ts_parser.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/core/lang/typescript.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/core/large_repo.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/core/models.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/core/persistent_cache.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/core/refactoring.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/core/repo_files.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/core/source_classifier.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/core/streaming/__init__.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/core/streaming/cache.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/core/streaming/incremental.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/core/streaming/prioritizer.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/core/streaming/scanner.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/core/streaming/strategies.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/core/streaming_analyzer.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/core/toon_size_manager.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/exporters/__init__.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/exporters/article_view.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/exporters/base.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/exporters/context_exporter.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/exporters/context_view.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/exporters/dashboard_data.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/exporters/dashboard_renderer.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/exporters/evolution/__init__.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/exporters/evolution/computation.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/exporters/evolution/constants.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/exporters/evolution/exclusion.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/exporters/evolution/render.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/exporters/evolution/yaml_export.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/exporters/evolution_exporter.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/exporters/flow_constants.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/exporters/flow_exporter.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/exporters/flow_renderer.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/exporters/html_dashboard.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/exporters/index_generator/__init__.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/exporters/index_generator/renderer.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/exporters/index_generator/scanner.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/exporters/index_generator.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/exporters/json_exporter.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/exporters/llm_exporter.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/exporters/map/__init__.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/exporters/map/alerts.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/exporters/map/details.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/exporters/map/header.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/exporters/map/module_list.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/exporters/map/utils.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/exporters/map/yaml_export.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/exporters/map_exporter.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/exporters/mermaid/__init__.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/exporters/mermaid/calls.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/exporters/mermaid/classic.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/exporters/mermaid/compact.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/exporters/mermaid/flow_compact.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/exporters/mermaid/flow_detailed.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/exporters/mermaid/flow_full.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/exporters/mermaid/utils.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/exporters/mermaid_exporter.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/exporters/mermaid_flow_helpers.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/exporters/planfile_tickets.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/exporters/project_yaml/__init__.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/exporters/project_yaml/constants.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/exporters/project_yaml/core.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/exporters/project_yaml/evolution.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/exporters/project_yaml/health.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/exporters/project_yaml/hotspots.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/exporters/project_yaml/modules.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/exporters/project_yaml_exporter.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/exporters/readme/__init__.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/exporters/readme/content.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/exporters/readme/files.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/exporters/readme/insights.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/exporters/readme/sections.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/exporters/readme_exporter.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/exporters/report_generators.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/exporters/toon/__init__.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/exporters/toon/_render_coupling_helpers.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/exporters/toon/_render_section_helpers.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/exporters/toon/constants.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/exporters/toon/helpers.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/exporters/toon/metrics.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/exporters/toon/metrics_core.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/exporters/toon/metrics_duplicates.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/exporters/toon/metrics_health.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/exporters/toon/module_detail.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/exporters/toon/renderer.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/exporters/toon.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/exporters/toon_view.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/exporters/validate_project.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/exporters/yaml_exporter.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/generators/__init__.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/generators/_utils.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/generators/llm_flow/__init__.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/generators/llm_flow/analysis.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/generators/llm_flow/cli.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/generators/llm_flow/generator.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/generators/llm_flow/nodes.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/generators/llm_flow/parsing.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/generators/llm_flow/utils.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/generators/llm_flow.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/generators/llm_task.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/generators/mermaid/__init__.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/generators/mermaid/fix.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/generators/mermaid/png.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/generators/mermaid/validation.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/generators/mermaid.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/nlp/config.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/nlp/entity_resolution.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/nlp/intent_matching.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/nlp/normalization.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/nlp/pipeline.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/parsers/toon_parser.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/patterns/__init__.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/patterns/detector.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/refactor/__init__.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm/refactor/prompt_engine.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm.egg-info/SOURCES.txt +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm.egg-info/dependency_links.txt +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm.egg-info/entry_points.txt +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm.egg-info/requires.txt +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/code2llm.egg-info/top_level.txt +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/setup.cfg +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/setup.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/tests/test_advanced_analysis.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/tests/test_analyzer.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/tests/test_cache_invalidation_e2e.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/tests/test_calls_toon_export.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/tests/test_declarative_collection.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/tests/test_deep_analysis.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/tests/test_edge_cases.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/tests/test_export_cache_flags.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/tests/test_file_analyzer_tagging.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/tests/test_flow_exporter.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/tests/test_format_quality.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/tests/test_multilanguage_e2e.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/tests/test_nlp_pipeline.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/tests/test_nonpython_cc_calls.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/tests/test_orchestrator_cache_mtime.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/tests/test_persistent_cache.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/tests/test_pipeline_detector.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/tests/test_planfile_tickets_exporter.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/tests/test_project_toon_export.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/tests/test_prompt_engine.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/tests/test_prompt_txt.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/tests/test_refactoring_engine.py +0 -0
- {code2llm-0.5.163 → code2llm-0.5.165}/tests/test_toon_v2.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: code2llm
|
|
3
|
-
Version: 0.5.
|
|
3
|
+
Version: 0.5.165
|
|
4
4
|
Summary: High-performance Python code flow analysis with optimized TOON format - CFG, DFG, call graphs, and intelligent code queries
|
|
5
5
|
Home-page: https://github.com/wronai/stts
|
|
6
6
|
Author: STTS Project
|
|
@@ -66,11 +66,11 @@ Dynamic: requires-python
|
|
|
66
66
|
|
|
67
67
|
## AI Cost Tracking
|
|
68
68
|
|
|
69
|
-
     
|
|
70
|
+
  
|
|
71
71
|
|
|
72
|
-
- 🤖 **LLM usage:** $7.5000 (
|
|
73
|
-
- 👤 **Human dev:** ~$
|
|
72
|
+
- 🤖 **LLM usage:** $7.5000 (238 commits)
|
|
73
|
+
- 👤 **Human dev:** ~$8548 (85.5h @ $100/h, 30min dedup)
|
|
74
74
|
|
|
75
75
|
Generated on 2026-05-25 using [openrouter/qwen/qwen3-coder-next](https://openrouter.ai/qwen/qwen3-coder-next)
|
|
76
76
|
|
|
@@ -78,7 +78,7 @@ Generated on 2026-05-25 using [openrouter/qwen/qwen3-coder-next](https://openrou
|
|
|
78
78
|
|
|
79
79
|
<!-- generated in 0.00s -->
|
|
80
80
|
|
|
81
|
-
This directory contains the complete analysis of your project generated by `code2llm`. Each file serves a specific purpose for understanding, refactoring, and documenting your codebase.
|
|
81
|
+
This directory contains the complete analysis of your project generated by `code2llm`. Each file serves a specific purpose for understanding, refactoring, and documenting your codebase. # noqa: E501
|
|
82
82
|
|
|
83
83
|
## 📁 Generated Files Overview
|
|
84
84
|
|
|
@@ -226,13 +226,13 @@ grep -E "^ .*[0-9]{3,}$" project.toon.yaml | sort -t',' -k2 -n -r | head -10
|
|
|
226
226
|
|
|
227
227
|
### `prompt.txt` - Ready-to-Send LLM Prompt
|
|
228
228
|
**Purpose**: Pre-formatted prompt listing all generated files for LLM conversation
|
|
229
|
-
**Generation**: Written when `code2llm` runs with a source path and requests `-f all` (including `--no-chunk`) or `code2logic`
|
|
229
|
+
**Generation**: Written when `code2llm` runs with a source path and requests `-f all` (including `--no-chunk`) or `code2logic` # noqa: E501
|
|
230
230
|
**Contents**:
|
|
231
|
-
- **Files section**: Lists all existing generated files with descriptions, including `project.toon.yaml` when generated by `-f all`
|
|
231
|
+
- **Files section**: Lists all existing generated files with descriptions, including `project.toon.yaml` when generated by `-f all` # noqa: E501
|
|
232
232
|
- **Source files section**: Highlights important source files such as `cli_exports/orchestrator.py`
|
|
233
233
|
- **Missing section**: Shows which files weren't generated (if any)
|
|
234
234
|
- **Task section**: Refactoring brief with concrete execution instructions, not just analysis
|
|
235
|
-
- **Priority Order section**: State-dependent refactoring priorities, starting with blockers and then architecture cleanup
|
|
235
|
+
- **Priority Order section**: State-dependent refactoring priorities, starting with blockers and then architecture cleanup # noqa: E501
|
|
236
236
|
- **Requirements section**: Guidelines for suggested changes
|
|
237
237
|
|
|
238
238
|
**Example usage**:
|
|
@@ -2,11 +2,11 @@
|
|
|
2
2
|
|
|
3
3
|
## AI Cost Tracking
|
|
4
4
|
|
|
5
|
-
     
|
|
6
|
+
  
|
|
7
7
|
|
|
8
|
-
- 🤖 **LLM usage:** $7.5000 (
|
|
9
|
-
- 👤 **Human dev:** ~$
|
|
8
|
+
- 🤖 **LLM usage:** $7.5000 (238 commits)
|
|
9
|
+
- 👤 **Human dev:** ~$8548 (85.5h @ $100/h, 30min dedup)
|
|
10
10
|
|
|
11
11
|
Generated on 2026-05-25 using [openrouter/qwen/qwen3-coder-next](https://openrouter.ai/qwen/qwen3-coder-next)
|
|
12
12
|
|
|
@@ -14,7 +14,7 @@ Generated on 2026-05-25 using [openrouter/qwen/qwen3-coder-next](https://openrou
|
|
|
14
14
|
|
|
15
15
|
<!-- generated in 0.00s -->
|
|
16
16
|
|
|
17
|
-
This directory contains the complete analysis of your project generated by `code2llm`. Each file serves a specific purpose for understanding, refactoring, and documenting your codebase.
|
|
17
|
+
This directory contains the complete analysis of your project generated by `code2llm`. Each file serves a specific purpose for understanding, refactoring, and documenting your codebase. # noqa: E501
|
|
18
18
|
|
|
19
19
|
## 📁 Generated Files Overview
|
|
20
20
|
|
|
@@ -162,13 +162,13 @@ grep -E "^ .*[0-9]{3,}$" project.toon.yaml | sort -t',' -k2 -n -r | head -10
|
|
|
162
162
|
|
|
163
163
|
### `prompt.txt` - Ready-to-Send LLM Prompt
|
|
164
164
|
**Purpose**: Pre-formatted prompt listing all generated files for LLM conversation
|
|
165
|
-
**Generation**: Written when `code2llm` runs with a source path and requests `-f all` (including `--no-chunk`) or `code2logic`
|
|
165
|
+
**Generation**: Written when `code2llm` runs with a source path and requests `-f all` (including `--no-chunk`) or `code2logic` # noqa: E501
|
|
166
166
|
**Contents**:
|
|
167
|
-
- **Files section**: Lists all existing generated files with descriptions, including `project.toon.yaml` when generated by `-f all`
|
|
167
|
+
- **Files section**: Lists all existing generated files with descriptions, including `project.toon.yaml` when generated by `-f all` # noqa: E501
|
|
168
168
|
- **Source files section**: Highlights important source files such as `cli_exports/orchestrator.py`
|
|
169
169
|
- **Missing section**: Shows which files weren't generated (if any)
|
|
170
170
|
- **Task section**: Refactoring brief with concrete execution instructions, not just analysis
|
|
171
|
-
- **Priority Order section**: State-dependent refactoring priorities, starting with blockers and then architecture cleanup
|
|
171
|
+
- **Priority Order section**: State-dependent refactoring priorities, starting with blockers and then architecture cleanup # noqa: E501
|
|
172
172
|
- **Requirements section**: Guidelines for suggested changes
|
|
173
173
|
|
|
174
174
|
**Example usage**:
|
code2llm-0.5.165/VERSION
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
0.5.165
|
|
@@ -8,7 +8,7 @@ Includes NLP Processing Pipeline for query normalization, intent matching,
|
|
|
8
8
|
and entity resolution with multilingual support.
|
|
9
9
|
"""
|
|
10
10
|
|
|
11
|
-
__version__ = "0.5.
|
|
11
|
+
__version__ = "0.5.165"
|
|
12
12
|
__author__ = "STTS Project"
|
|
13
13
|
|
|
14
14
|
# Core analysis components (lightweight, always needed)
|
|
@@ -261,13 +261,13 @@ def _analyze_data_types(result: AnalysisResult) -> list:
|
|
|
261
261
|
_NAME_TYPE_KEYWORDS: List[tuple] = [
|
|
262
262
|
("list", ("list", "items")),
|
|
263
263
|
("dict", ("dict", "map")),
|
|
264
|
-
("str",
|
|
265
|
-
("int",
|
|
264
|
+
("str", ("text", "string")),
|
|
265
|
+
("int", ("count", "index")),
|
|
266
266
|
]
|
|
267
267
|
_DOC_TYPE_KEYWORDS: List[tuple] = [
|
|
268
268
|
("list", ("list",)),
|
|
269
269
|
("dict", ("dict",)),
|
|
270
|
-
("str",
|
|
270
|
+
("str", ("string", "text")),
|
|
271
271
|
]
|
|
272
272
|
|
|
273
273
|
|
|
@@ -353,8 +353,12 @@ def _type_consolidations(data_types: list) -> list:
|
|
|
353
353
|
if len(sims) > 1:
|
|
354
354
|
usage = sum(s["usage_count"] for s in sims)
|
|
355
355
|
if usage > 10:
|
|
356
|
-
result.append({
|
|
357
|
-
|
|
356
|
+
result.append({
|
|
357
|
+
"type_signature": sig,
|
|
358
|
+
"similar_types": [s["type_name"] for s in sims],
|
|
359
|
+
"total_usage": usage,
|
|
360
|
+
"potential_reduction": len(sims) - 1,
|
|
361
|
+
})
|
|
358
362
|
return result
|
|
359
363
|
|
|
360
364
|
|
|
@@ -51,8 +51,6 @@ try:
|
|
|
51
51
|
except ImportError:
|
|
52
52
|
_HAS_TQDM = False
|
|
53
53
|
|
|
54
|
-
logger = logging.getLogger(__name__)
|
|
55
|
-
|
|
56
54
|
from .config import (
|
|
57
55
|
Config,
|
|
58
56
|
FAST_CONFIG,
|
|
@@ -62,13 +60,14 @@ from .config import (
|
|
|
62
60
|
DEFAULT_PROGRESS_BAR_THRESHOLD,
|
|
63
61
|
)
|
|
64
62
|
from .models import AnalysisResult, Pattern
|
|
65
|
-
|
|
66
63
|
from .file_cache import FileCache
|
|
67
64
|
from .file_filter import FastFileFilter
|
|
68
65
|
from .file_analyzer import FileAnalyzer, _analyze_single_file
|
|
69
66
|
from .persistent_cache import PersistentCache
|
|
70
67
|
from .refactoring import RefactoringAnalyzer
|
|
71
68
|
|
|
69
|
+
logger = logging.getLogger(__name__)
|
|
70
|
+
|
|
72
71
|
|
|
73
72
|
class ProjectAnalyzer:
|
|
74
73
|
"""Main analyzer with parallel processing."""
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: code2llm
|
|
3
|
-
Version: 0.5.
|
|
3
|
+
Version: 0.5.165
|
|
4
4
|
Summary: High-performance Python code flow analysis with optimized TOON format - CFG, DFG, call graphs, and intelligent code queries
|
|
5
5
|
Home-page: https://github.com/wronai/stts
|
|
6
6
|
Author: STTS Project
|
|
@@ -66,11 +66,11 @@ Dynamic: requires-python
|
|
|
66
66
|
|
|
67
67
|
## AI Cost Tracking
|
|
68
68
|
|
|
69
|
-
     
|
|
70
|
+
  
|
|
71
71
|
|
|
72
|
-
- 🤖 **LLM usage:** $7.5000 (
|
|
73
|
-
- 👤 **Human dev:** ~$
|
|
72
|
+
- 🤖 **LLM usage:** $7.5000 (238 commits)
|
|
73
|
+
- 👤 **Human dev:** ~$8548 (85.5h @ $100/h, 30min dedup)
|
|
74
74
|
|
|
75
75
|
Generated on 2026-05-25 using [openrouter/qwen/qwen3-coder-next](https://openrouter.ai/qwen/qwen3-coder-next)
|
|
76
76
|
|
|
@@ -78,7 +78,7 @@ Generated on 2026-05-25 using [openrouter/qwen/qwen3-coder-next](https://openrou
|
|
|
78
78
|
|
|
79
79
|
<!-- generated in 0.00s -->
|
|
80
80
|
|
|
81
|
-
This directory contains the complete analysis of your project generated by `code2llm`. Each file serves a specific purpose for understanding, refactoring, and documenting your codebase.
|
|
81
|
+
This directory contains the complete analysis of your project generated by `code2llm`. Each file serves a specific purpose for understanding, refactoring, and documenting your codebase. # noqa: E501
|
|
82
82
|
|
|
83
83
|
## 📁 Generated Files Overview
|
|
84
84
|
|
|
@@ -226,13 +226,13 @@ grep -E "^ .*[0-9]{3,}$" project.toon.yaml | sort -t',' -k2 -n -r | head -10
|
|
|
226
226
|
|
|
227
227
|
### `prompt.txt` - Ready-to-Send LLM Prompt
|
|
228
228
|
**Purpose**: Pre-formatted prompt listing all generated files for LLM conversation
|
|
229
|
-
**Generation**: Written when `code2llm` runs with a source path and requests `-f all` (including `--no-chunk`) or `code2logic`
|
|
229
|
+
**Generation**: Written when `code2llm` runs with a source path and requests `-f all` (including `--no-chunk`) or `code2logic` # noqa: E501
|
|
230
230
|
**Contents**:
|
|
231
|
-
- **Files section**: Lists all existing generated files with descriptions, including `project.toon.yaml` when generated by `-f all`
|
|
231
|
+
- **Files section**: Lists all existing generated files with descriptions, including `project.toon.yaml` when generated by `-f all` # noqa: E501
|
|
232
232
|
- **Source files section**: Highlights important source files such as `cli_exports/orchestrator.py`
|
|
233
233
|
- **Missing section**: Shows which files weren't generated (if any)
|
|
234
234
|
- **Task section**: Refactoring brief with concrete execution instructions, not just analysis
|
|
235
|
-
- **Priority Order section**: State-dependent refactoring priorities, starting with blockers and then architecture cleanup
|
|
235
|
+
- **Priority Order section**: State-dependent refactoring priorities, starting with blockers and then architecture cleanup # noqa: E501
|
|
236
236
|
- **Requirements section**: Guidelines for suggested changes
|
|
237
237
|
|
|
238
238
|
**Example usage**:
|
|
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
|
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "code2llm"
|
|
7
|
-
version = "0.5.
|
|
7
|
+
version = "0.5.165"
|
|
8
8
|
description = "High-performance Python code flow analysis with optimized TOON format - CFG, DFG, call graphs, and intelligent code queries"
|
|
9
9
|
readme = "README.md"
|
|
10
10
|
requires-python = ">=3.8"
|
code2llm-0.5.163/VERSION
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
0.5.163
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
@@ -15,10 +15,6 @@ and legacy project-yaml/flow exports."""
|
|
|
15
15
|
# _export_evolution() : evolution.yaml (EvolutionExporter)
|
|
16
16
|
# _export_project_yaml() : project.yaml bundle (ProjectYAMLExporter)
|
|
17
17
|
|
|
18
|
-
_CONTEXT_MD = "context.md"
|
|
19
|
-
_PROJECT_TOON_YAML = "project.toon.yaml"
|
|
20
|
-
_CALLS_YAML = "calls.yaml"
|
|
21
|
-
|
|
22
18
|
import sys
|
|
23
19
|
import time
|
|
24
20
|
from pathlib import Path
|
|
@@ -43,6 +39,10 @@ from code2llm.exporters import (
|
|
|
43
39
|
)
|
|
44
40
|
from .orchestrator import _inject_generation_time as _inject_time
|
|
45
41
|
|
|
42
|
+
_CONTEXT_MD = "context.md"
|
|
43
|
+
_PROJECT_TOON_YAML = "project.toon.yaml"
|
|
44
|
+
_CALLS_YAML = "calls.yaml"
|
|
45
|
+
|
|
46
46
|
|
|
47
47
|
def _export_evolution(args, result, output_dir: Path):
|
|
48
48
|
"""Export evolution.toon.yaml format (plain text TOON)."""
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|