@noyrax/documentation-system-plugin 1.0.4-beta.2 → 1.0.4-beta.4

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.
Files changed (140) hide show
  1. package/out/cli/generate-cli.js +11 -0
  2. package/out/cli/generate-cli.js.map +1 -1
  3. package/out/cli/scan-cli.js +6 -0
  4. package/out/cli/scan-cli.js.map +1 -1
  5. package/out/core/scanner.js +1 -0
  6. package/out/core/scanner.js.map +1 -1
  7. package/out/generator/system-metadata.js +202 -0
  8. package/out/generator/system-metadata.js.map +1 -0
  9. package/out/index/index.js +14 -0
  10. package/out/index/index.js.map +1 -1
  11. package/out/parsers/ts-js.js +208 -7
  12. package/out/parsers/ts-js.js.map +1 -1
  13. package/package.json +9 -2
  14. package/.vscodeignore +0 -41
  15. package/MCP_SERVER_SETUP.md +0 -371
  16. package/assets/icon.svg +0 -27
  17. package/docs/LINKEDIN_ANTWORT_SEQUENZDIAGRAMME.md +0 -190
  18. package/docs/SEQUENZDIAGRAMM_BEWEIS.md +0 -469
  19. package/docs/SEQUENZDIAGRAMM_VALIDATE_FLOW.md +0 -282
  20. package/docs/adr/001-signatur-abweichung-fix.md +0 -54
  21. package/docs/adr/002-file-specific-validation-1.0.1.md +0 -45
  22. package/docs/adr/003-documentation-generation-bugs.md +0 -134
  23. package/docs/adr/004-validator-signature-matching-fix.md +0 -121
  24. package/docs/adr/005-validator-generic-simplification-tightening.md +0 -35
  25. package/docs/adr/006-parser-variable-type-extraction.md +0 -33
  26. package/docs/adr/007-ts-parser-load-libs-for-accurate-types.md +0 -31
  27. package/docs/adr/008-dependencies-cache-phase1.md +0 -133
  28. package/docs/adr/009-consolidation-union-logic-phase1-2.md +0 -147
  29. package/docs/adr/010-extension-union-integration-phase1-3-and-phase2.md +0 -179
  30. package/docs/adr/011-module-doc-change-tracking-phase3.md +0 -190
  31. package/docs/adr/012-git-deletions-change-report-phase4.md +0 -235
  32. package/docs/adr/013-system-functionality-fixes.md +0 -279
  33. package/docs/adr/014-rules-migration-und-mcp-integration.md +0 -113
  34. package/docs/adr/015-global-agent-package.md +0 -158
  35. package/docs/adr/016-produktisierung-docguard.md +0 -193
  36. package/docs/adr/017-signature-matching-optional-fields.md +0 -128
  37. package/docs/adr/018-rebranding-docguard-to-noyrax.md +0 -109
  38. package/docs/adr/019-system-schwachstellen-analyse-und-fixes.md +0 -204
  39. package/docs/adr/020-api-doc-tiefe-und-signatureformatter.md +0 -74
  40. package/docs/adr/021-semantic-api-docs-and-symbol-classifier.md +0 -125
  41. package/docs/adr/022-semantic-class-and-constants-rendering.md +0 -82
  42. package/docs/adr/023-adr-verknuepfung-modul-doku.md +0 -54
  43. package/docs/adr/024-cursor-rules-mehrdimensionaler-raum.md +0 -230
  44. package/docs/adr/025-mcp-tools-scan-validate-cli-bridge.md +0 -202
  45. package/docs/adr/026-reality-driven-development-system.md +0 -173
  46. package/docs/adr/027-scanner-excludes-and-union-logic-fix.md +0 -189
  47. package/docs/adr/028-src-coverage-union-resync.md +0 -124
  48. package/docs/adr/029-parser-flow-kopplung-und-sync-drift-modi.md +0 -102
  49. package/docs/adr/030-dependency-import-symbol-names-preservation.md +0 -123
  50. package/docs/adr/031-generate-cli-vollstaendige-dokumentation.md +0 -99
  51. package/docs/adr/032-windows-optimized-verification-scripts.md +0 -165
  52. package/docs/adr/036-enhanced-dependency-metadata.md +0 -190
  53. package/docs/adr/TEMPLATE.md +0 -76
  54. package/docs/index/symbols.jsonl +0 -40
  55. package/docs/modules/action__action.yml.md +0 -50
  56. package/docs/modules/documentation.config.schema.json.md +0 -37
  57. package/docs/modules/mcp__package.json.md +0 -130
  58. package/docs/modules/mcp__src__resources__docs.ts.md +0 -94
  59. package/docs/modules/mcp__src__server.ts.md +0 -15
  60. package/docs/modules/mcp__src__tools__drift.ts.md +0 -110
  61. package/docs/modules/mcp__src__tools__impact.ts.md +0 -127
  62. package/docs/modules/mcp__src__tools__scan.ts.md +0 -75
  63. package/docs/modules/mcp__src__tools__validate.ts.md +0 -116
  64. package/docs/modules/mcp__src__tools__verify-adrs.ts.md +0 -106
  65. package/docs/modules/mcp__tsconfig.json.md +0 -22
  66. package/docs/modules/package.json.md +0 -131
  67. package/docs/modules/packages__doc-system-agent__examples__basic-project__package.json.md +0 -43
  68. package/docs/modules/packages__doc-system-agent__examples__basic-project__src__calculator.ts.md +0 -81
  69. package/docs/modules/packages__doc-system-agent__package.json.md +0 -154
  70. package/docs/modules/packages__doc-system-agent__src__cli__index.ts.md +0 -8
  71. package/docs/modules/packages__doc-system-agent__src__cli__init.ts.md +0 -93
  72. package/docs/modules/packages__doc-system-agent__src__cli__update.ts.md +0 -113
  73. package/docs/modules/packages__doc-system-agent__src__constants.ts.md +0 -29
  74. package/docs/modules/packages__doc-system-agent__src__index.ts.md +0 -234
  75. package/docs/modules/packages__doc-system-agent__src__mcp__resources__docs.ts.md +0 -94
  76. package/docs/modules/packages__doc-system-agent__src__mcp__server.ts.md +0 -17
  77. package/docs/modules/packages__doc-system-agent__src__mcp__tools__drift.ts.md +0 -38
  78. package/docs/modules/packages__doc-system-agent__src__mcp__tools__impact.ts.md +0 -75
  79. package/docs/modules/packages__doc-system-agent__src__mcp__tools__scan.ts.md +0 -23
  80. package/docs/modules/packages__doc-system-agent__src__mcp__tools__validate.ts.md +0 -23
  81. package/docs/modules/packages__doc-system-agent__src__mcp__tools__verify-adrs.ts.md +0 -106
  82. package/docs/modules/packages__doc-system-agent__src__mcp__types.ts.md +0 -355
  83. package/docs/modules/packages__doc-system-agent__tsconfig.json.md +0 -22
  84. package/docs/modules/scripts__verify-adrs.js.md +0 -97
  85. package/docs/modules/scripts__verify-architecture.js.md +0 -93
  86. package/docs/modules/scripts__verify-imports.js.md +0 -114
  87. package/docs/modules/src____tests____setup.ts.md +0 -8
  88. package/docs/modules/src____tests____signature-formatter.test.ts.md +0 -16
  89. package/docs/modules/src____tests____snapshot-doc-generation.test.ts.md +0 -8
  90. package/docs/modules/src____tests____symbol-classifier.test.ts.md +0 -16
  91. package/docs/modules/src__cache__ast-cache.ts.md +0 -91
  92. package/docs/modules/src__cache__dependencies-cache.ts.md +0 -89
  93. package/docs/modules/src__cache__output-cache.ts.md +0 -91
  94. package/docs/modules/src__cache__signature-cache.ts.md +0 -76
  95. package/docs/modules/src__cli__generate-cli.ts.md +0 -130
  96. package/docs/modules/src__cli__scan-cli.ts.md +0 -99
  97. package/docs/modules/src__cli__validate-cli.ts.md +0 -144
  98. package/docs/modules/src__core__async.ts.md +0 -18
  99. package/docs/modules/src__core__consolidation.ts.md +0 -157
  100. package/docs/modules/src__core__git.ts.md +0 -35
  101. package/docs/modules/src__core__language-detection.ts.md +0 -31
  102. package/docs/modules/src__core__scanner.ts.md +0 -101
  103. package/docs/modules/src__core__signature-formatter.ts.md +0 -232
  104. package/docs/modules/src__core__symbol-classifier.ts.md +0 -178
  105. package/docs/modules/src__core__symbols.ts.md +0 -31
  106. package/docs/modules/src__drift__index.ts.md +0 -53
  107. package/docs/modules/src__extension.ts.md +0 -418
  108. package/docs/modules/src__generator__adr-linker.ts.md +0 -154
  109. package/docs/modules/src__generator__change-report.ts.md +0 -85
  110. package/docs/modules/src__generator__dependency-graph.ts.md +0 -63
  111. package/docs/modules/src__generator__index.ts.md +0 -40
  112. package/docs/modules/src__generator__module-doc.ts.md +0 -242
  113. package/docs/modules/src__index__index.ts.md +0 -141
  114. package/docs/modules/src__logging__index.ts.md +0 -87
  115. package/docs/modules/src__parsers__dependencies.ts.md +0 -69
  116. package/docs/modules/src__parsers__json-yaml.ts.md +0 -97
  117. package/docs/modules/src__parsers__python.ts.md +0 -73
  118. package/docs/modules/src__parsers__ts-js.ts.md +0 -48
  119. package/docs/modules/src__parsers__types.ts.md +0 -99
  120. package/docs/modules/src__ui__commands-provider.ts.md +0 -70
  121. package/docs/modules/src__ui__status-bar.ts.md +0 -79
  122. package/docs/modules/src__validator__index.ts.md +0 -211
  123. package/docs/modules/src__validator__signature-matching.ts.md +0 -209
  124. package/docs/modules/src__validator__status.ts.md +0 -72
  125. package/docs/modules/test-mcp-resources.js.md +0 -27
  126. package/docs/modules/tsconfig.json.md +0 -22
  127. package/docs/system/CHANGE_REPORT.md +0 -29
  128. package/docs/system/DEPENDENCIES.md +0 -403
  129. package/docs/system/DEPENDENCY_GRAPH.md +0 -336
  130. package/docs/system/NAVIGATION_SPACE_ANALYSIS.md +0 -244
  131. package/docs/system/NPX_CACHE_FIX.md +0 -85
  132. package/docs/system/NPX_LOCAL_USAGE.md +0 -66
  133. package/docs/system/PLUGIN_ECOSYSTEM_STATUS.md +0 -465
  134. package/docs/system/PLUGIN_UPDATE_GUIDE.md +0 -212
  135. package/docs/system/RULES_UPDATE_GUIDE.md +0 -182
  136. package/docs/system/SYSTEM_ANALYSIS.md +0 -947
  137. package/documentation.config.schema.json +0 -77
  138. package/noyrax-5d-database-plugin-0.1.8.tgz +0 -0
  139. package/noyrax-documentation-system-plugin-1.0.4-beta.2.tgz +0 -0
  140. package/publish.ps1 +0 -21
@@ -1,469 +0,0 @@
1
- # Beweis: Sequenzdiagramme aus docs/index, docs/modules und docs/system ableiten
2
-
3
- Dieses Dokument beweist, dass aus den automatisch generierten Dokumentations-Artefakten (`docs/index`, `docs/modules`, `docs/system`) vollständige Sequenzdiagramme für beliebige Abläufe im System abgeleitet werden können.
4
-
5
- ---
6
-
7
- ## 1. Gewählter Use Case: "Dokumentations-Scan-Flow"
8
-
9
- ### 1.1 Use Case Definition
10
- **Ablauf**: Ein Benutzer führt den VS Code-Befehl "Scan System" aus, um die gesamte Codebasis zu scannen und Dokumentation zu generieren.
11
-
12
- ### 1.2 Einstiegspunkt (aus `docs/modules/src__extension.ts.md`)
13
- ```ts
14
- // Quelle: docs/modules/src__extension.ts.md, Zeile 137-139
15
- function scanSystemTs(): any
16
- ```
17
-
18
- ### 1.3 Einstiegspunkt mit Dependencies (aus `docs/index/symbols.jsonl`)
19
- ```json
20
- // Zeile 417 aus symbols.jsonl
21
- {
22
- "symbol_id": "ts://src/extension.ts#activate(f93629ec84e52398)",
23
- "path": "src/extension.ts",
24
- "kind": "function",
25
- "name": "activate",
26
- "dependencies": [
27
- "./cache/ast-cache",
28
- "./cache/dependencies-cache",
29
- "./cache/output-cache",
30
- "./cache/signature-cache",
31
- "./core/async",
32
- "./core/consolidation",
33
- "./core/git",
34
- "./core/scanner",
35
- "./drift/index",
36
- "./generator/change-report",
37
- "./generator/dependency-graph",
38
- "./generator/index",
39
- "./index/index",
40
- "./parsers/dependencies",
41
- "./parsers/json-yaml",
42
- "./parsers/python",
43
- "./parsers/ts-js",
44
- "./parsers/types",
45
- "./ui/commands-provider",
46
- "./ui/status-bar",
47
- "./validator/index",
48
- "./validator/status",
49
- "fs", "path", "vscode"
50
- ]
51
- }
52
- ```
53
-
54
- ---
55
-
56
- ## 2. Beteiligte Module aus `docs/system/DEPENDENCIES.md`
57
-
58
- ### 2.1 Direkte Abhängigkeiten von `src/extension.ts` (Zeilen 213-241)
59
-
60
- ```markdown
61
- ## src/extension.ts
62
-
63
- ### Imports
64
- - `./cache/ast-cache` (computeFileHash, loadAstHashCache, saveAstHashCache)
65
- - `./cache/dependencies-cache` (loadDependenciesCache, saveDependenciesCache)
66
- - `./cache/output-cache` (computeContentHash, loadOutputHashCache, saveOutputHashCache)
67
- - `./cache/signature-cache` (loadSignatureCache, saveSignatureCache)
68
- - `./core/async` (mapLimit)
69
- - `./core/consolidation` (buildDependenciesUnion, buildDependenciesUnionWithDebug, buildSymbolsUnion, UnionDebugInfo)
70
- - `./core/git` (getChangedFiles, getDeletedFiles)
71
- - `./core/scanner` (scanWorkspace)
72
- - `./drift/index` (computeCacheEntries, detectDrift)
73
- - `./generator/change-report` (extractChangesFromModuleDocs, generateChangeReport)
74
- - `./generator/dependency-graph` (generateDependencyOverview, generateMermaidGraph)
75
- - `./generator/index` (generatePerFileDocs)
76
- - `./index/index` (buildIndexFromSymbols, writeJsonlIndex)
77
- - `./parsers/dependencies` (extractPythonDependencies, extractTsJsDependencies, ModuleDependency)
78
- - `./parsers/json-yaml` (JsonYamlParser)
79
- - `./parsers/python` (PythonParser)
80
- - `./parsers/ts-js` (TsJsParser)
81
- - `./parsers/types` (ParsedSymbol, ParserAdapter)
82
- - `./ui/commands-provider` (CommandsProvider)
83
- - `./ui/status-bar` (StatusBarManager)
84
- - `./validator/index` (computeCoverage, validateMarkdownDir)
85
- - `./validator/status` (computeValidationStatus)
86
- - `fs`, `path`, `vscode`
87
- ```
88
-
89
- ### 2.2 Transitive Abhängigkeiten (aus DEPENDENCIES.md)
90
-
91
- | Modul | Importiert von | Eigene Imports |
92
- |-------|----------------|----------------|
93
- | `src/core/scanner.ts` | extension.ts | `../logging/index`, `./language-detection`, `fs`, `ignore`, `path` |
94
- | `src/parsers/ts-js.ts` | extension.ts | `ts-morph`, `./dependencies`, `./types`, `path` |
95
- | `src/parsers/dependencies.ts` | extension.ts, parsers | `ts-morph`, `path` |
96
- | `src/generator/index.ts` | extension.ts | `../parsers/types`, `./module-doc`, `fs`, `path` |
97
- | `src/generator/module-doc.ts` | generator/index.ts | `../parsers/types` |
98
- | `src/generator/dependency-graph.ts` | extension.ts | `../parsers/dependencies` |
99
- | `src/validator/index.ts` | extension.ts | `../logging/index`, `../parsers/types`, `./signature-matching`, `./status`, `fs`, `path` |
100
- | `src/validator/signature-matching.ts` | validator/index.ts | `../core/symbols`, `../parsers/types` |
101
- | `src/drift/index.ts` | extension.ts | `../cache/signature-cache`, `../core/symbols`, `../parsers/types` |
102
- | `src/index/index.ts` | extension.ts | `../core/symbols`, `../parsers/dependencies`, `../parsers/types`, `fs`, `path` |
103
-
104
- ---
105
-
106
- ## 3. Abhängigkeitsgraph aus `docs/system/DEPENDENCY_GRAPH.md`
107
-
108
- ### 3.1 Relevanter Ausschnitt (Mermaid-Graph, Zeilen 97-120)
109
-
110
- ```mermaid
111
- graph TD
112
- N98["src/extension.ts"]
113
- N95["src/core/scanner.ts"]
114
- N107["src/parsers/ts-js.ts"]
115
- N104["src/parsers/dependencies.ts"]
116
- N101["src/generator/index.ts"]
117
- N102["src/generator/module-doc.ts"]
118
- N100["src/generator/dependency-graph.ts"]
119
- N103["src/index/index.ts"]
120
- N97["src/drift/index.ts"]
121
- N110["src/validator/index.ts"]
122
- N111["src/validator/signature-matching.ts"]
123
-
124
- N98 --> N21["./core/scanner"]
125
- N98 --> N36["./parsers/ts-js"]
126
- N98 --> N33["./parsers/dependencies"]
127
- N98 --> N26["./generator/index"]
128
- N98 --> N25["./generator/dependency-graph"]
129
- N98 --> N27["./index/index"]
130
- N98 --> N23["./drift/index"]
131
- N98 --> N51["./validator/index"]
132
-
133
- N101 --> N32["./module-doc"]
134
- N110 --> N39["./signature-matching"]
135
- ```
136
-
137
- ### 3.2 Abgeleitete Teilnehmer-Hierarchie
138
-
139
- Aus dem Graphen ergibt sich folgende Aufruf-Hierarchie:
140
-
141
- ```
142
- src/extension.ts (Entry Point)
143
- ├── src/core/scanner.ts
144
- ├── src/parsers/ts-js.ts
145
- │ └── src/parsers/dependencies.ts
146
- ├── src/cache/signature-cache.ts
147
- ├── src/drift/index.ts
148
- ├── src/generator/index.ts
149
- │ └── src/generator/module-doc.ts
150
- ├── src/generator/dependency-graph.ts
151
- ├── src/generator/change-report.ts
152
- ├── src/index/index.ts
153
- └── src/validator/index.ts
154
- └── src/validator/signature-matching.ts
155
- ```
156
-
157
- ---
158
-
159
- ## 4. Konkrete Symbole aus `docs/index/symbols.jsonl`
160
-
161
- ### 4.1 Scanner-Symbole (Zeilen 406-411)
162
- ```json
163
- {"symbol_id":"ts://src/core/scanner.ts#scanWorkspace(606c9426b4f0d06a)","path":"src/core/scanner.ts","kind":"function","name":"scanWorkspace","dependencies":["../logging/index","./language-detection","fs","ignore","path"]}
164
- {"symbol_id":"ts://src/core/scanner.ts#ScannedFile(7c102c616459a20a)","path":"src/core/scanner.ts","kind":"interface","name":"ScannedFile"}
165
- {"symbol_id":"ts://src/core/scanner.ts#ScanOptions(d2d336b1afc58b23)","path":"src/core/scanner.ts","kind":"interface","name":"ScanOptions"}
166
- ```
167
-
168
- ### 4.2 Generator-Symbole (Zeilen 452-463)
169
- ```json
170
- {"symbol_id":"ts://src/generator/index.ts#generatePerFileDocs(7896bf436e864bf4)","path":"src/generator/index.ts","kind":"function","name":"generatePerFileDocs","dependencies":["../parsers/types","./module-doc","fs","path"]}
171
- {"symbol_id":"ts://src/generator/module-doc.ts#buildModuleDocWithChanges(a77408e193f866b3)","path":"src/generator/module-doc.ts","kind":"function","name":"buildModuleDocWithChanges","dependencies":["../parsers/types"]}
172
- {"symbol_id":"ts://src/generator/module-doc.ts#renderModuleDoc(4b110cf883155046)","path":"src/generator/module-doc.ts","kind":"function","name":"renderModuleDoc","dependencies":["../parsers/types"]}
173
- {"symbol_id":"ts://src/generator/dependency-graph.ts#generateMermaidGraph(8d456bec91d98bba)","path":"src/generator/dependency-graph.ts","kind":"function","name":"generateMermaidGraph","dependencies":["../parsers/dependencies"]}
174
- {"symbol_id":"ts://src/generator/dependency-graph.ts#generateDependencyOverview(45556c1fd48c7c5a)","path":"src/generator/dependency-graph.ts","kind":"function","name":"generateDependencyOverview","dependencies":["../parsers/dependencies"]}
175
- ```
176
-
177
- ### 4.3 Validator-Symbole (Zeilen 513-530)
178
- ```json
179
- {"symbol_id":"ts://src/validator/index.ts#validateSymbols(c5833b419ccb1672)","path":"src/validator/index.ts","kind":"function","name":"validateSymbols","dependencies":["../logging/index","../parsers/types","./signature-matching","./status","fs","path"]}
180
- {"symbol_id":"ts://src/validator/index.ts#validateMarkdownDir(d6efd94036f4ae1d)","path":"src/validator/index.ts","kind":"function","name":"validateMarkdownDir"}
181
- {"symbol_id":"ts://src/validator/index.ts#computeCoverage(d5f43a349f420f9b)","path":"src/validator/index.ts","kind":"function","name":"computeCoverage"}
182
- {"symbol_id":"ts://src/validator/signature-matching.ts#validateSignatureMatching(71446a0efaa1d0fa)","path":"src/validator/signature-matching.ts","kind":"function","name":"validateSignatureMatching","dependencies":["../core/symbols","../parsers/types"]}
183
- ```
184
-
185
- ### 4.4 Index-Symbole (Zeilen 465-467)
186
- ```json
187
- {"symbol_id":"ts://src/index/index.ts#buildIndexFromSymbols(...)","path":"src/index/index.ts","kind":"function","name":"buildIndexFromSymbols","dependencies":["../core/symbols","../parsers/dependencies","../parsers/types","fs","path"]}
188
- {"symbol_id":"ts://src/index/index.ts#writeJsonlIndex(...)","path":"src/index/index.ts","kind":"function","name":"writeJsonlIndex"}
189
- ```
190
-
191
- ---
192
-
193
- ## 5. Aufrufkette (rekonstruiert aus allen drei Quellen)
194
-
195
- ```
196
- scanSystemTs() [src/extension.ts]
197
-
198
- ├─→ scanWorkspace(options) [src/core/scanner.ts]
199
- │ Dependencies: ../logging/index, ./language-detection, fs, ignore, path
200
- │ → Liefert: ScannedFile[]
201
-
202
- ├─→ TsJsParser.parse(filePath, content) [src/parsers/ts-js.ts]
203
- │ Dependencies: ts-morph, ./dependencies, ./types, path
204
- │ → Liefert: ParsedSymbol[]
205
-
206
- ├─→ extractTsJsDependencies(sourceFile, path) [src/parsers/dependencies.ts]
207
- │ Dependencies: ts-morph, path
208
- │ → Liefert: ModuleDependency[]
209
-
210
- ├─→ loadSignatureCache(cacheFile) [src/cache/signature-cache.ts]
211
- │ Dependencies: fs, path
212
- │ → Liefert: SignatureCacheData | null
213
-
214
- ├─→ computeCacheEntries(symbols) [src/drift/index.ts]
215
- │ Dependencies: ../cache/signature-cache, ../core/symbols, ../parsers/types
216
- │ → Liefert: CacheEntry[]
217
-
218
- ├─→ detectDrift(previous, current) [src/drift/index.ts]
219
- │ → Liefert: DriftResult
220
-
221
- ├─→ generatePerFileDocs(symbols, modulesDir, existing) [src/generator/index.ts]
222
- │ Dependencies: ../parsers/types, ./module-doc, fs, path
223
- │ │
224
- │ ├─→ buildModuleDocWithChanges(symbols, existingDoc) [src/generator/module-doc.ts]
225
- │ │ Dependencies: ../parsers/types
226
- │ │ → Liefert: ModuleDoc
227
- │ │
228
- │ └─→ renderModuleDoc(doc, filePath) [src/generator/module-doc.ts]
229
- │ → Liefert: string (Markdown)
230
-
231
- ├─→ generateDependencyOverview(dependencies) [src/generator/dependency-graph.ts]
232
- │ Dependencies: ../parsers/dependencies
233
- │ → Liefert: string (DEPENDENCIES.md Inhalt)
234
-
235
- ├─→ generateMermaidGraph(dependencies) [src/generator/dependency-graph.ts]
236
- │ → Liefert: string (DEPENDENCY_GRAPH.md Inhalt)
237
-
238
- ├─→ buildIndexFromSymbols(symbols, dependencies) [src/index/index.ts]
239
- │ Dependencies: ../core/symbols, ../parsers/dependencies, ../parsers/types, fs, path
240
- │ → Liefert: IndexRow[]
241
-
242
- ├─→ writeJsonlIndex(rows, outFile) [src/index/index.ts]
243
- │ → Schreibt: symbols.jsonl
244
-
245
- ├─→ generateChangeReport(data) [src/generator/change-report.ts]
246
- │ Dependencies: ../parsers/dependencies, ../parsers/types
247
- │ → Liefert: string (CHANGE_REPORT.md Inhalt)
248
-
249
- ├─→ saveSignatureCache(cacheDir, data) [src/cache/signature-cache.ts]
250
- │ → Schreibt: Cache-Datei
251
-
252
- └─→ validateMarkdownDir(modulesDir, symbols) [src/validator/index.ts]
253
- Dependencies: ../logging/index, ../parsers/types, ./signature-matching, ./status, fs, path
254
-
255
- └─→ validateSignatureMatching(symbols, modulesDir) [src/validator/signature-matching.ts]
256
- Dependencies: ../core/symbols, ../parsers/types
257
- → Liefert: SignatureMismatch[]
258
- ```
259
-
260
- ---
261
-
262
- ## 6. Semantische Rollen (aus `docs/modules/`)
263
-
264
- | Modul | Sprechender Name | Rolle |
265
- |-------|------------------|-------|
266
- | `src/extension.ts` | **Extension Entry** | VS Code Extension Entry Point, orchestriert alle Abläufe |
267
- | `src/core/scanner.ts` | **Workspace Scanner** | Findet Dateien, filtert nach Globs, erkennt Sprachen |
268
- | `src/parsers/ts-js.ts` | **TS/JS Parser** | Parst TypeScript/JavaScript mit ts-morph |
269
- | `src/parsers/dependencies.ts` | **Dependency Extractor** | Extrahiert Import/Export-Beziehungen |
270
- | `src/cache/signature-cache.ts` | **Signature Cache** | Persistiert Signatur-Hashes für inkrementelle Läufe |
271
- | `src/drift/index.ts` | **Drift Detector** | Erkennt veraltete/geänderte Symbole |
272
- | `src/generator/index.ts` | **Doc Generator** | Orchestriert Modul-Dokumentations-Erzeugung |
273
- | `src/generator/module-doc.ts` | **Module Doc Builder** | Erzeugt Markdown für einzelne Module |
274
- | `src/generator/dependency-graph.ts` | **Graph Generator** | Erzeugt DEPENDENCIES.md und Mermaid-Graph |
275
- | `src/generator/change-report.ts` | **Change Reporter** | Erzeugt CHANGE_REPORT.md |
276
- | `src/index/index.ts` | **Index Builder** | Erzeugt symbols.jsonl |
277
- | `src/validator/index.ts` | **Validator** | Prüft Coverage und Markdown-Syntax |
278
- | `src/validator/signature-matching.ts` | **Signature Matcher** | Vergleicht Code- mit Doku-Signaturen |
279
-
280
- ---
281
-
282
- ## 7. Sequenzdiagramm in Mermaid-Notation
283
-
284
- ```mermaid
285
- sequenceDiagram
286
- autonumber
287
-
288
- participant User as Benutzer
289
- participant VSCode as VS Code UI
290
- participant Ext as Extension Entry<br/>(src/extension.ts)
291
- participant Scanner as Workspace Scanner<br/>(src/core/scanner.ts)
292
- participant Parser as TS/JS Parser<br/>(src/parsers/ts-js.ts)
293
- participant DepEx as Dependency Extractor<br/>(src/parsers/dependencies.ts)
294
- participant Cache as Signature Cache<br/>(src/cache/signature-cache.ts)
295
- participant Drift as Drift Detector<br/>(src/drift/index.ts)
296
- participant Gen as Doc Generator<br/>(src/generator/index.ts)
297
- participant ModDoc as Module Doc Builder<br/>(src/generator/module-doc.ts)
298
- participant Graph as Graph Generator<br/>(src/generator/dependency-graph.ts)
299
- participant Change as Change Reporter<br/>(src/generator/change-report.ts)
300
- participant Index as Index Builder<br/>(src/index/index.ts)
301
- participant Val as Validator<br/>(src/validator/index.ts)
302
- participant SigMatch as Signature Matcher<br/>(src/validator/signature-matching.ts)
303
-
304
- User->>VSCode: Klickt "Scan System"
305
- VSCode->>Ext: scanSystemTs()
306
-
307
- rect rgb(240, 248, 255)
308
- Note over Ext,Scanner: Phase 1: Dateien sammeln
309
- Ext->>Scanner: scanWorkspace(options: ScanOptions)
310
- Note right of Scanner: Nutzt: fs, ignore, path<br/>language-detection
311
- Scanner-->>Ext: ScannedFile[]
312
- end
313
-
314
- rect rgb(255, 248, 240)
315
- Note over Ext,DepEx: Phase 2: Parsing
316
- loop Für jede ScannedFile
317
- Ext->>Parser: parse(filePath, content)
318
- Note right of Parser: Nutzt: ts-morph
319
- Parser-->>Ext: ParsedSymbol[]
320
- Ext->>DepEx: extractTsJsDependencies(sourceFile, path)
321
- DepEx-->>Ext: ModuleDependency[]
322
- end
323
- end
324
-
325
- rect rgb(240, 255, 240)
326
- Note over Ext,Drift: Phase 3: Cache & Drift Detection
327
- Ext->>Cache: loadSignatureCache(cacheFile)
328
- Cache-->>Ext: SignatureCacheData | null
329
- Ext->>Drift: computeCacheEntries(symbols: ParsedSymbol[])
330
- Drift-->>Ext: CacheEntry[]
331
- Ext->>Drift: detectDrift(previous, current)
332
- Drift-->>Ext: DriftResult { staleSymbols: string[] }
333
- end
334
-
335
- rect rgb(255, 240, 255)
336
- Note over Ext,Index: Phase 4: Dokumentations-Generierung
337
- Ext->>Gen: generatePerFileDocs(symbols, modulesDir, existingDocs)
338
- loop Für jedes Modul
339
- Gen->>ModDoc: buildModuleDocWithChanges(symbols, existingDoc)
340
- ModDoc-->>Gen: ModuleDoc { blocks: ModuleDocBlock[] }
341
- Gen->>ModDoc: renderModuleDoc(doc, filePath)
342
- ModDoc-->>Gen: string (Markdown)
343
- end
344
- Gen-->>Ext: Map<string, string>
345
-
346
- Ext->>Graph: generateDependencyOverview(dependencies: ModuleDependency[])
347
- Graph-->>Ext: string (DEPENDENCIES.md)
348
- Ext->>Graph: generateMermaidGraph(dependencies)
349
- Graph-->>Ext: string (DEPENDENCY_GRAPH.md)
350
-
351
- Ext->>Index: buildIndexFromSymbols(symbols, dependencies)
352
- Index-->>Ext: IndexRow[]
353
- Ext->>Index: writeJsonlIndex(rows, outFile)
354
- Note right of Index: Schreibt: docs/index/symbols.jsonl
355
-
356
- Ext->>Change: generateChangeReport(data: ChangeData)
357
- Change-->>Ext: string (CHANGE_REPORT.md)
358
- end
359
-
360
- rect rgb(255, 255, 240)
361
- Note over Ext,Cache: Phase 5: Cache persistieren
362
- Ext->>Cache: saveSignatureCache(cacheDir, data)
363
- Cache-->>Ext: void
364
- end
365
-
366
- rect rgb(240, 240, 255)
367
- Note over Ext,SigMatch: Phase 6: Validierung
368
- Ext->>Val: validateMarkdownDir(modulesDir, symbols)
369
- Val->>SigMatch: validateSignatureMatching(symbols, modulesDir)
370
- SigMatch-->>Val: SignatureMismatch[]
371
- Val->>Val: computeCoverage(symbols, modulesDir, thresholds)
372
- Val-->>Ext: MarkdownDirReport + CoverageReport
373
- end
374
-
375
- Ext-->>VSCode: Ergebnis mit Status
376
- VSCode-->>User: Status-Meldung + Validierungsergebnis
377
- ```
378
-
379
- ---
380
-
381
- ## 8. Quellen-Nachweis (Vollständig)
382
-
383
- ### 8.1 Aus `docs/system/DEPENDENCIES.md`
384
-
385
- | Information | Zeilen |
386
- |-------------|--------|
387
- | Extension-Imports (22 Module) | 213-241 |
388
- | Scanner-Imports | 191-199 |
389
- | Parser-Imports | 297-304 |
390
- | Generator-Imports | 253-259 |
391
- | Validator-Imports | 315-323 |
392
-
393
- ### 8.2 Aus `docs/system/DEPENDENCY_GRAPH.md`
394
-
395
- | Information | Zeilen |
396
- |-------------|--------|
397
- | Node-Definitionen (N0-N119) | 3-119 |
398
- | Extension-Kanten (N98 →) | 254-278 |
399
- | Generator-Kanten | 121-125 |
400
- | Validator-Kanten | 148-155 |
401
-
402
- ### 8.3 Aus `docs/index/symbols.jsonl`
403
-
404
- | Symbol | Zeile | Dependencies |
405
- |--------|-------|--------------|
406
- | `activate` | 417 | 22 interne + 3 externe Module |
407
- | `scanWorkspace` | 411 | logging, language-detection, fs, ignore, path |
408
- | `generatePerFileDocs` | 452 | parsers/types, module-doc, fs, path |
409
- | `validateSignatureMatching` | 530 | core/symbols, parsers/types |
410
- | `buildIndexFromSymbols` | 465 | core/symbols, parsers/dependencies, parsers/types |
411
-
412
- ### 8.4 Aus `docs/modules/*.md`
413
-
414
- | Modul-Doku | Verwendete Signaturen |
415
- |------------|----------------------|
416
- | `src__extension.ts.md` | scanSystemTs, activate, validateDocumentationTs |
417
- | `src__core__scanner.ts.md` | scanWorkspace, ScannedFile, ScanOptions |
418
- | `src__generator__index.ts.md` | generatePerFileDocs, makeSafeFileName |
419
- | `src__generator__module-doc.ts.md` | buildModuleDocWithChanges, renderModuleDoc, parseModuleDoc |
420
- | `src__validator__index.ts.md` | validateSymbols, validateMarkdownDir, computeCoverage |
421
- | `src__validator__signature-matching.ts.md` | validateSignatureMatching, SignatureMismatch |
422
-
423
- ---
424
-
425
- ## 9. Vorher/Nachher-Vergleich
426
-
427
- ### 9.1 VORHER (ohne automatisierte Doku)
428
- - Informationen verteilt über ~25 Quelldateien
429
- - Kein Überblick über Gesamtablauf
430
- - Manuelle Code-Inspektion für jeden Zusammenhang nötig
431
- - Dependencies nur durch Lesen von Import-Statements erkennbar
432
-
433
- ### 9.2 NACHHER (mit docs/modules, docs/index, docs/system)
434
- - **DEPENDENCIES.md**: 330 Zeilen strukturierte Import-Übersicht
435
- - **DEPENDENCY_GRAPH.md**: 281 Zeilen Mermaid-Graph mit 119 Knoten
436
- - **symbols.jsonl**: 548 Symbole mit Dependencies
437
- - **modules/*.md**: 70+ Modul-Dokumentationen mit Signaturen
438
-
439
- ---
440
-
441
- ## 10. Wiederholbarkeit und Determinismus
442
-
443
- ### 10.1 Garantie
444
- ```
445
- Gleicher Code-Stand
446
- → npm run scan
447
- → Gleiche docs/*-Artefakte
448
- → Gleiches Sequenzdiagramm
449
- ```
450
-
451
- ### 10.2 Reproduzierbarkeit
452
- - Alle Informationen stammen aus **automatisch generierten** Artefakten
453
- - Keine manuellen Annotationen erforderlich
454
- - Deterministisch sortiert (alphabetisch, nach Typ)
455
-
456
- ---
457
-
458
- ## 11. Fazit
459
-
460
- **Dieser Beweis zeigt anhand echter Daten:**
461
-
462
- 1. ✅ `docs/system/DEPENDENCIES.md` liefert alle Import-Beziehungen (330 Zeilen)
463
- 2. ✅ `docs/system/DEPENDENCY_GRAPH.md` liefert den visuellen Graphen (119 Knoten, 160+ Kanten)
464
- 3. ✅ `docs/index/symbols.jsonl` liefert alle Symbole mit ihren Dependencies (548 Einträge)
465
- 4. ✅ `docs/modules/*.md` liefert die Signaturen und Typen (70+ Dateien)
466
- 5. ✅ Aus diesen Quellen lässt sich **deterministisch** ein Sequenzdiagramm ableiten
467
- 6. ✅ Der Prozess ist **reproduzierbar** und **versionierbar**
468
-
469
- **Das Dokumentations-System liefert die strukturierte Wissensbasis für automatische Architektur-Diagramme.**