@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.
- package/out/cli/generate-cli.js +11 -0
- package/out/cli/generate-cli.js.map +1 -1
- package/out/cli/scan-cli.js +6 -0
- package/out/cli/scan-cli.js.map +1 -1
- package/out/core/scanner.js +1 -0
- package/out/core/scanner.js.map +1 -1
- package/out/generator/system-metadata.js +202 -0
- package/out/generator/system-metadata.js.map +1 -0
- package/out/index/index.js +14 -0
- package/out/index/index.js.map +1 -1
- package/out/parsers/ts-js.js +208 -7
- package/out/parsers/ts-js.js.map +1 -1
- package/package.json +9 -2
- package/.vscodeignore +0 -41
- package/MCP_SERVER_SETUP.md +0 -371
- package/assets/icon.svg +0 -27
- package/docs/LINKEDIN_ANTWORT_SEQUENZDIAGRAMME.md +0 -190
- package/docs/SEQUENZDIAGRAMM_BEWEIS.md +0 -469
- package/docs/SEQUENZDIAGRAMM_VALIDATE_FLOW.md +0 -282
- package/docs/adr/001-signatur-abweichung-fix.md +0 -54
- package/docs/adr/002-file-specific-validation-1.0.1.md +0 -45
- package/docs/adr/003-documentation-generation-bugs.md +0 -134
- package/docs/adr/004-validator-signature-matching-fix.md +0 -121
- package/docs/adr/005-validator-generic-simplification-tightening.md +0 -35
- package/docs/adr/006-parser-variable-type-extraction.md +0 -33
- package/docs/adr/007-ts-parser-load-libs-for-accurate-types.md +0 -31
- package/docs/adr/008-dependencies-cache-phase1.md +0 -133
- package/docs/adr/009-consolidation-union-logic-phase1-2.md +0 -147
- package/docs/adr/010-extension-union-integration-phase1-3-and-phase2.md +0 -179
- package/docs/adr/011-module-doc-change-tracking-phase3.md +0 -190
- package/docs/adr/012-git-deletions-change-report-phase4.md +0 -235
- package/docs/adr/013-system-functionality-fixes.md +0 -279
- package/docs/adr/014-rules-migration-und-mcp-integration.md +0 -113
- package/docs/adr/015-global-agent-package.md +0 -158
- package/docs/adr/016-produktisierung-docguard.md +0 -193
- package/docs/adr/017-signature-matching-optional-fields.md +0 -128
- package/docs/adr/018-rebranding-docguard-to-noyrax.md +0 -109
- package/docs/adr/019-system-schwachstellen-analyse-und-fixes.md +0 -204
- package/docs/adr/020-api-doc-tiefe-und-signatureformatter.md +0 -74
- package/docs/adr/021-semantic-api-docs-and-symbol-classifier.md +0 -125
- package/docs/adr/022-semantic-class-and-constants-rendering.md +0 -82
- package/docs/adr/023-adr-verknuepfung-modul-doku.md +0 -54
- package/docs/adr/024-cursor-rules-mehrdimensionaler-raum.md +0 -230
- package/docs/adr/025-mcp-tools-scan-validate-cli-bridge.md +0 -202
- package/docs/adr/026-reality-driven-development-system.md +0 -173
- package/docs/adr/027-scanner-excludes-and-union-logic-fix.md +0 -189
- package/docs/adr/028-src-coverage-union-resync.md +0 -124
- package/docs/adr/029-parser-flow-kopplung-und-sync-drift-modi.md +0 -102
- package/docs/adr/030-dependency-import-symbol-names-preservation.md +0 -123
- package/docs/adr/031-generate-cli-vollstaendige-dokumentation.md +0 -99
- package/docs/adr/032-windows-optimized-verification-scripts.md +0 -165
- package/docs/adr/036-enhanced-dependency-metadata.md +0 -190
- package/docs/adr/TEMPLATE.md +0 -76
- package/docs/index/symbols.jsonl +0 -40
- package/docs/modules/action__action.yml.md +0 -50
- package/docs/modules/documentation.config.schema.json.md +0 -37
- package/docs/modules/mcp__package.json.md +0 -130
- package/docs/modules/mcp__src__resources__docs.ts.md +0 -94
- package/docs/modules/mcp__src__server.ts.md +0 -15
- package/docs/modules/mcp__src__tools__drift.ts.md +0 -110
- package/docs/modules/mcp__src__tools__impact.ts.md +0 -127
- package/docs/modules/mcp__src__tools__scan.ts.md +0 -75
- package/docs/modules/mcp__src__tools__validate.ts.md +0 -116
- package/docs/modules/mcp__src__tools__verify-adrs.ts.md +0 -106
- package/docs/modules/mcp__tsconfig.json.md +0 -22
- package/docs/modules/package.json.md +0 -131
- package/docs/modules/packages__doc-system-agent__examples__basic-project__package.json.md +0 -43
- package/docs/modules/packages__doc-system-agent__examples__basic-project__src__calculator.ts.md +0 -81
- package/docs/modules/packages__doc-system-agent__package.json.md +0 -154
- package/docs/modules/packages__doc-system-agent__src__cli__index.ts.md +0 -8
- package/docs/modules/packages__doc-system-agent__src__cli__init.ts.md +0 -93
- package/docs/modules/packages__doc-system-agent__src__cli__update.ts.md +0 -113
- package/docs/modules/packages__doc-system-agent__src__constants.ts.md +0 -29
- package/docs/modules/packages__doc-system-agent__src__index.ts.md +0 -234
- package/docs/modules/packages__doc-system-agent__src__mcp__resources__docs.ts.md +0 -94
- package/docs/modules/packages__doc-system-agent__src__mcp__server.ts.md +0 -17
- package/docs/modules/packages__doc-system-agent__src__mcp__tools__drift.ts.md +0 -38
- package/docs/modules/packages__doc-system-agent__src__mcp__tools__impact.ts.md +0 -75
- package/docs/modules/packages__doc-system-agent__src__mcp__tools__scan.ts.md +0 -23
- package/docs/modules/packages__doc-system-agent__src__mcp__tools__validate.ts.md +0 -23
- package/docs/modules/packages__doc-system-agent__src__mcp__tools__verify-adrs.ts.md +0 -106
- package/docs/modules/packages__doc-system-agent__src__mcp__types.ts.md +0 -355
- package/docs/modules/packages__doc-system-agent__tsconfig.json.md +0 -22
- package/docs/modules/scripts__verify-adrs.js.md +0 -97
- package/docs/modules/scripts__verify-architecture.js.md +0 -93
- package/docs/modules/scripts__verify-imports.js.md +0 -114
- package/docs/modules/src____tests____setup.ts.md +0 -8
- package/docs/modules/src____tests____signature-formatter.test.ts.md +0 -16
- package/docs/modules/src____tests____snapshot-doc-generation.test.ts.md +0 -8
- package/docs/modules/src____tests____symbol-classifier.test.ts.md +0 -16
- package/docs/modules/src__cache__ast-cache.ts.md +0 -91
- package/docs/modules/src__cache__dependencies-cache.ts.md +0 -89
- package/docs/modules/src__cache__output-cache.ts.md +0 -91
- package/docs/modules/src__cache__signature-cache.ts.md +0 -76
- package/docs/modules/src__cli__generate-cli.ts.md +0 -130
- package/docs/modules/src__cli__scan-cli.ts.md +0 -99
- package/docs/modules/src__cli__validate-cli.ts.md +0 -144
- package/docs/modules/src__core__async.ts.md +0 -18
- package/docs/modules/src__core__consolidation.ts.md +0 -157
- package/docs/modules/src__core__git.ts.md +0 -35
- package/docs/modules/src__core__language-detection.ts.md +0 -31
- package/docs/modules/src__core__scanner.ts.md +0 -101
- package/docs/modules/src__core__signature-formatter.ts.md +0 -232
- package/docs/modules/src__core__symbol-classifier.ts.md +0 -178
- package/docs/modules/src__core__symbols.ts.md +0 -31
- package/docs/modules/src__drift__index.ts.md +0 -53
- package/docs/modules/src__extension.ts.md +0 -418
- package/docs/modules/src__generator__adr-linker.ts.md +0 -154
- package/docs/modules/src__generator__change-report.ts.md +0 -85
- package/docs/modules/src__generator__dependency-graph.ts.md +0 -63
- package/docs/modules/src__generator__index.ts.md +0 -40
- package/docs/modules/src__generator__module-doc.ts.md +0 -242
- package/docs/modules/src__index__index.ts.md +0 -141
- package/docs/modules/src__logging__index.ts.md +0 -87
- package/docs/modules/src__parsers__dependencies.ts.md +0 -69
- package/docs/modules/src__parsers__json-yaml.ts.md +0 -97
- package/docs/modules/src__parsers__python.ts.md +0 -73
- package/docs/modules/src__parsers__ts-js.ts.md +0 -48
- package/docs/modules/src__parsers__types.ts.md +0 -99
- package/docs/modules/src__ui__commands-provider.ts.md +0 -70
- package/docs/modules/src__ui__status-bar.ts.md +0 -79
- package/docs/modules/src__validator__index.ts.md +0 -211
- package/docs/modules/src__validator__signature-matching.ts.md +0 -209
- package/docs/modules/src__validator__status.ts.md +0 -72
- package/docs/modules/test-mcp-resources.js.md +0 -27
- package/docs/modules/tsconfig.json.md +0 -22
- package/docs/system/CHANGE_REPORT.md +0 -29
- package/docs/system/DEPENDENCIES.md +0 -403
- package/docs/system/DEPENDENCY_GRAPH.md +0 -336
- package/docs/system/NAVIGATION_SPACE_ANALYSIS.md +0 -244
- package/docs/system/NPX_CACHE_FIX.md +0 -85
- package/docs/system/NPX_LOCAL_USAGE.md +0 -66
- package/docs/system/PLUGIN_ECOSYSTEM_STATUS.md +0 -465
- package/docs/system/PLUGIN_UPDATE_GUIDE.md +0 -212
- package/docs/system/RULES_UPDATE_GUIDE.md +0 -182
- package/docs/system/SYSTEM_ANALYSIS.md +0 -947
- package/documentation.config.schema.json +0 -77
- package/noyrax-5d-database-plugin-0.1.8.tgz +0 -0
- package/noyrax-documentation-system-plugin-1.0.4-beta.2.tgz +0 -0
- 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.**
|