1- # code2llm | 39f 5657L | python:38,shell:1 | 2026-03-09
2- # CC̄=4.4 | critical:27/295 | dups:0 | cycles:1
1+ # code2llm | 39f 5810L | python:38,shell:1 | 2026-03-15
2+ # CC̄=4.4 | critical:28/298 | dups:0 | cycles:1
33
4- HEALTH[11 ]:
4+ HEALTH[12 ]:
55 🟡 CC _render_first_usage CC=15 (limit:15)
66 🟡 CC _generate_intro CC=16 (limit:15)
77 🟡 CC parse_gitignore CC=15 (limit:15)
@@ -11,11 +11,12 @@ HEALTH[11]:
1111 🟡 CC _extract_description CC=17 (limit:15)
1212 🟡 CC _render_module_section CC=25 (limit:15)
1313 🟡 CC _generate_advanced CC=22 (limit:15)
14+ 🟡 CC _generate_html CC=15 (limit:15)
1415 🟡 CC _render_code_style CC=16 (limit:15)
1516 🟡 CC _extract_project_metadata CC=29 (limit:15)
1617
1718REFACTOR[2]:
18- 1. split 11 high-CC methods (CC>15)
19+ 1. split 12 high-CC methods (CC>15)
1920 2. break 1 circular dependencies
2021
2122COUPLING:
@@ -30,11 +31,11 @@ LAYERS:
3031 code2docs/ CC̄=4.4 ←in:0 →out:1
3132 │ !! readme_gen 477L 1C 18m CC=29 ←1
3233 │ !! examples_gen 443L 1C 15m CC=22 ←0
34+ │ !! _registry_adapters 441L 15C 31m CC=15 ←0
3335 │ dependency_scanner 325L 3C 10m CC=9 ←0
3436 │ ! cli 319L 1C 14m CC=10 ←0
3537 │ ! config 297L 7C 5m CC=10 ←2
3638 │ ! architecture_gen 294L 1C 10m CC=13 ←0
37- │ _registry_adapters 287L 14C 28m CC=7 ←0
3839 │ !! contributing_gen 231L 1C 8m CC=16 ←0
3940 │ !! org_readme_gen 227L 1C 10m CC=17 ←0
4041 │ !! code2llm_gen 206L 1C 6m CC=17 ←0
@@ -68,12 +69,12 @@ LAYERS:
6869 │ __init__ 6L 0C 0m CC=0.0 ←0
6970 │
7071 ./ CC̄=0.0 ←in:0 →out:0
71- │ project.sh 19L 0C 0m CC=0.0 ←0
72+ │ project.sh 18L 0C 0m CC=0.0 ←0
7273 │
7374
7475DUPLICATES[0]: none
7576
76- FUNCTIONS (CC≥10, 27 of 255 ):
77+ FUNCTIONS (CC≥10, 28 of 258 ):
7778 29.0 ReadmeGenerator._extract_project_metadata 14n 2exit loops+cond+ret !! split
7879 25.0 ModuleDocsGenerator._render_module_detail 18n 2exit loops+cond+ret !! split
7980 25.0 ApiReferenceGenerator._render_module_section 13n 2exit loops+cond+ret !! split
@@ -85,6 +86,7 @@ FUNCTIONS (CC≥10, 27 of 255):
8586 16.0 ContributingGenerator._render_code_style 29n 2exit cond+ret !! split
8687 15.0 GettingStartedGenerator._render_first_usage 7n 2exit cond+ret !! split
8788 15.0 parse_gitignore 6n 3exit cond+ret !! split
89+ 15.0 IndexHtmlAdapter._generate_html 25n 2exit cond+ret !! split
8890 14.0 ApiChangelogGenerator._render 17n 4exit loops+cond+ret
8991 13.0 ExamplesGenerator._generate_quickstart 17n 2exit loops+cond+ret
9092 13.0 ArchitectureGenerator.generate 15n 2exit loops+cond+ret
@@ -103,7 +105,7 @@ FUNCTIONS (CC≥10, 27 of 255):
103105 10.0 _run_check 11n 1exit loops+cond
104106
105107 summary:
106- critical(≥10): 27 | high(5-10): 58 | medium(2-5): 100 | low(<2): 70
108+ critical(≥10): 28 | high(5-10): 58 | medium(2-5): 101 | low(<2): 71
107109 11% CC≥10 33% CC≥5
108110
109111HOTSPOTS:
@@ -143,6 +145,7 @@ CLASSES:
143145 Code2LlmGenerator █████ 4m CC̄=6.2 max=17 !!
144146 Code2DocsConfig █████ 4m CC̄=4.0 max=10
145147 BaseGenerator ████ 3m CC̄=1.0 max=1
148+ IndexHtmlAdapter ████ 3m CC̄=6.0 max=15 !!
146149 EndpointDetector ████ 3m CC̄=4.0 max=5
147150 ProjectScanner ████ 3m CC̄=1.3 max=2
148151 Updater ██ 2m CC̄=3.0 max=4
@@ -215,6 +218,38 @@ Thi...
215218 e: ContributingGenerator
216219 ContributingGenerator # Generate CONTRIBUTING.md by detecting dev tools from pyproje...
217220 __init__(2) CC=1.0
221+ code2docs/generators/_registry_adapters.py:
222+ e: ReadmeGeneratorAdapter,ApiReferenceAdapter,ModuleDocsAdapter,ArchitectureAdapter,DepGraphAdapter,CoverageAdapter,ApiChangelogAdapter,ExamplesAdapter,MkDocsAdapter,GettingStartedAdapter,ConfigDocsAdapter,ContributingAdapter,Code2LlmAdapter,OrgReadmeAdapter,IndexHtmlAdapter
223+ ReadmeGeneratorAdapter
224+ should_run(0) CC=1.0
225+ ApiReferenceAdapter
226+ should_run(0) CC=2.0
227+ ModuleDocsAdapter
228+ should_run(0) CC=2.0
229+ ArchitectureAdapter
230+ should_run(0) CC=2.0
231+ DepGraphAdapter
232+ should_run(0) CC=1.0
233+ CoverageAdapter
234+ should_run(0) CC=1.0
235+ ApiChangelogAdapter
236+ should_run(0) CC=1.0
237+ ExamplesAdapter
238+ should_run(0) CC=2.0
239+ MkDocsAdapter
240+ should_run(0) CC=1.0
241+ GettingStartedAdapter
242+ should_run(0) CC=1.0
243+ ConfigDocsAdapter
244+ should_run(0) CC=1.0
245+ ContributingAdapter
246+ should_run(0) CC=1.0
247+ Code2LlmAdapter # Adapter for code2llm analysis generation....
248+ should_run(0) CC=1.0
249+ OrgReadmeAdapter # Adapter for organization README generation....
250+ should_run(0) CC=2.0
251+ IndexHtmlAdapter # Adapter for generating index.html for GitHub Pages browsing....
252+ should_run(0) CC=1.0
218253 code2docs/generators/api_changelog_gen.py:
219254 e: ApiChange,ApiChangelogGenerator
220255 ApiChange # A single API change between two analysis snapshots....
@@ -317,36 +352,6 @@ Thi...
317352I...
318353 __init__(1) CC=1.0
319354 _get_litellm()
320- code2docs/generators/_registry_adapters.py:
321- e: ReadmeGeneratorAdapter,ApiReferenceAdapter,ModuleDocsAdapter,ArchitectureAdapter,DepGraphAdapter,CoverageAdapter,ApiChangelogAdapter,ExamplesAdapter,MkDocsAdapter,GettingStartedAdapter,ConfigDocsAdapter,ContributingAdapter,Code2LlmAdapter,OrgReadmeAdapter
322- ReadmeGeneratorAdapter
323- should_run(0) CC=1.0
324- ApiReferenceAdapter
325- should_run(0) CC=2.0
326- ModuleDocsAdapter
327- should_run(0) CC=2.0
328- ArchitectureAdapter
329- should_run(0) CC=2.0
330- DepGraphAdapter
331- should_run(0) CC=1.0
332- CoverageAdapter
333- should_run(0) CC=1.0
334- ApiChangelogAdapter
335- should_run(0) CC=1.0
336- ExamplesAdapter
337- should_run(0) CC=2.0
338- MkDocsAdapter
339- should_run(0) CC=1.0
340- GettingStartedAdapter
341- should_run(0) CC=1.0
342- ConfigDocsAdapter
343- should_run(0) CC=1.0
344- ContributingAdapter
345- should_run(0) CC=1.0
346- Code2LlmAdapter # Adapter for code2llm analysis generation....
347- should_run(0) CC=1.0
348- OrgReadmeAdapter # Adapter for organization README generation....
349- should_run(0) CC=2.0
350355 code2docs/sync/differ.py:
351356 e: ChangeInfo,Differ
352357 ChangeInfo # Describes a detected change....
0 commit comments