speccrew 0.1.0
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/.speccrew/agents/speccrew-feature-designer.md +142 -0
- package/.speccrew/agents/speccrew-product-manager.md +61 -0
- package/.speccrew/agents/speccrew-system-designer.md +200 -0
- package/.speccrew/agents/speccrew-system-developer.md +238 -0
- package/.speccrew/agents/speccrew-task-worker.md +80 -0
- package/.speccrew/agents/speccrew-team-leader.md +92 -0
- package/.speccrew/agents/speccrew-test-manager.md +313 -0
- package/.speccrew/skills/speccrew-create-agents/SKILL.md +98 -0
- package/.speccrew/skills/speccrew-create-agents/templates/agents/designer-agent.md +54 -0
- package/.speccrew/skills/speccrew-create-agents/templates/agents/dev-agent.md +79 -0
- package/.speccrew/skills/speccrew-create-agents/templates/agents/test-agent.md +80 -0
- package/.speccrew/skills/speccrew-dev-backend/SKILL.md +205 -0
- package/.speccrew/skills/speccrew-dev-backend/templates/TASK-RECORD-TEMPLATE.md +118 -0
- package/.speccrew/skills/speccrew-dev-desktop/SKILL.md +258 -0
- package/.speccrew/skills/speccrew-dev-desktop/templates/TASK-RECORD-TEMPLATE.md +161 -0
- package/.speccrew/skills/speccrew-dev-frontend/SKILL.md +202 -0
- package/.speccrew/skills/speccrew-dev-frontend/templates/TASK-RECORD-TEMPLATE.md +115 -0
- package/.speccrew/skills/speccrew-dev-mobile/SKILL.md +200 -0
- package/.speccrew/skills/speccrew-dev-mobile/templates/TASK-RECORD-TEMPLATE.md +125 -0
- package/.speccrew/skills/speccrew-fd-api-contract/SKILL.md +73 -0
- package/.speccrew/skills/speccrew-fd-api-contract/templates/API-CONTRACT-TEMPLATE.md +96 -0
- package/.speccrew/skills/speccrew-fd-feature-design/SKILL.md +395 -0
- package/.speccrew/skills/speccrew-fd-feature-design/templates/FEATURE-SPEC-TEMPLATE.md +387 -0
- package/.speccrew/skills/speccrew-get-timestamp/SKILL.md +80 -0
- package/.speccrew/skills/speccrew-get-timestamp/scripts/get-timestamp.js +35 -0
- package/.speccrew/skills/speccrew-knowledge-bizs-api-analyze/SKILL.md +1116 -0
- package/.speccrew/skills/speccrew-knowledge-bizs-api-analyze/templates/FEATURE-DETAIL-TEMPLATE-FASTAPI.md +462 -0
- package/.speccrew/skills/speccrew-knowledge-bizs-api-analyze/templates/FEATURE-DETAIL-TEMPLATE-JAVA.md +480 -0
- package/.speccrew/skills/speccrew-knowledge-bizs-api-analyze/templates/FEATURE-DETAIL-TEMPLATE-NET.md +464 -0
- package/.speccrew/skills/speccrew-knowledge-bizs-api-analyze/templates/FEATURE-DETAIL-TEMPLATE.md +480 -0
- package/.speccrew/skills/speccrew-knowledge-bizs-api-analyze/templates/MODULE-OVERVIEW-TEMPLATE.md +367 -0
- package/.speccrew/skills/speccrew-knowledge-bizs-dispatch/SKILL.md +667 -0
- package/.speccrew/skills/speccrew-knowledge-bizs-dispatch/STATUS-FORMATS.md +74 -0
- package/.speccrew/skills/speccrew-knowledge-bizs-dispatch/scripts/batch-orchestrator.js +176 -0
- package/.speccrew/skills/speccrew-knowledge-bizs-dispatch/scripts/get-next-batch.js +150 -0
- package/.speccrew/skills/speccrew-knowledge-bizs-dispatch/scripts/get-pending-features.js +106 -0
- package/.speccrew/skills/speccrew-knowledge-bizs-dispatch/scripts/mark-stale.js +249 -0
- package/.speccrew/skills/speccrew-knowledge-bizs-dispatch/scripts/process-batch-results.js +848 -0
- package/.speccrew/skills/speccrew-knowledge-bizs-dispatch/scripts/update-feature-status.js +226 -0
- package/.speccrew/skills/speccrew-knowledge-bizs-init-features/SKILL.md +264 -0
- package/.speccrew/skills/speccrew-knowledge-bizs-init-features/examples/features.json +34 -0
- package/.speccrew/skills/speccrew-knowledge-bizs-init-features/scripts/generate-inventory.js +867 -0
- package/.speccrew/skills/speccrew-knowledge-bizs-init-features/scripts/test-inventory.js +26 -0
- package/.speccrew/skills/speccrew-knowledge-bizs-module-classify/SKILL.md +165 -0
- package/.speccrew/skills/speccrew-knowledge-bizs-module-classify/scripts/apply-module-mapping.js +208 -0
- package/.speccrew/skills/speccrew-knowledge-bizs-module-classify/scripts/extract-module-summary.js +180 -0
- package/.speccrew/skills/speccrew-knowledge-bizs-module-classify/scripts/reindex-modules.js +358 -0
- package/.speccrew/skills/speccrew-knowledge-bizs-ui-analyze/SKILL.md +1055 -0
- package/.speccrew/skills/speccrew-knowledge-bizs-ui-analyze/templates/FEATURE-DETAIL-TEMPLATE-UI-DESKTOP.md +303 -0
- package/.speccrew/skills/speccrew-knowledge-bizs-ui-analyze/templates/FEATURE-DETAIL-TEMPLATE-UI-ELECTRON.md +327 -0
- package/.speccrew/skills/speccrew-knowledge-bizs-ui-analyze/templates/FEATURE-DETAIL-TEMPLATE-UI-MINIAPP.md +292 -0
- package/.speccrew/skills/speccrew-knowledge-bizs-ui-analyze/templates/FEATURE-DETAIL-TEMPLATE-UI-MOBILE.md +281 -0
- package/.speccrew/skills/speccrew-knowledge-bizs-ui-analyze/templates/FEATURE-DETAIL-TEMPLATE-UI.md +324 -0
- package/.speccrew/skills/speccrew-knowledge-bizs-ui-style-extract/SKILL.md +270 -0
- package/.speccrew/skills/speccrew-knowledge-bizs-ui-style-extract/templates/COMPONENT-PATTERN-TEMPLATE.md +33 -0
- package/.speccrew/skills/speccrew-knowledge-bizs-ui-style-extract/templates/LAYOUT-PATTERN-TEMPLATE.md +33 -0
- package/.speccrew/skills/speccrew-knowledge-bizs-ui-style-extract/templates/PAGE-TYPE-TEMPLATE.md +33 -0
- package/.speccrew/skills/speccrew-knowledge-graph-query/SKILL.md +229 -0
- package/.speccrew/skills/speccrew-knowledge-graph-query/scripts/graph-query.js +549 -0
- package/.speccrew/skills/speccrew-knowledge-graph-write/SKILL.md +181 -0
- package/.speccrew/skills/speccrew-knowledge-graph-write/scripts/graph-write.js +651 -0
- package/.speccrew/skills/speccrew-knowledge-module-summarize/SKILL.md +305 -0
- package/.speccrew/skills/speccrew-knowledge-module-summarize/templates/MODULE-OVERVIEW-TEMPLATE.md +400 -0
- package/.speccrew/skills/speccrew-knowledge-system-summarize/SKILL.md +351 -0
- package/.speccrew/skills/speccrew-knowledge-system-summarize/templates/SYSTEM-OVERVIEW-TEMPLATE.md +294 -0
- package/.speccrew/skills/speccrew-knowledge-techs-dispatch/SKILL.md +683 -0
- package/.speccrew/skills/speccrew-knowledge-techs-dispatch/STATUS-FORMATS.md +550 -0
- package/.speccrew/skills/speccrew-knowledge-techs-dispatch/templates/techs-manifest-EXAMPLE.json +35 -0
- package/.speccrew/skills/speccrew-knowledge-techs-generate/SKILL.md +1087 -0
- package/.speccrew/skills/speccrew-knowledge-techs-generate/templates/ARCHITECTURE-TEMPLATE.md +240 -0
- package/.speccrew/skills/speccrew-knowledge-techs-generate/templates/COLOR-SYSTEM-TEMPLATE.md +68 -0
- package/.speccrew/skills/speccrew-knowledge-techs-generate/templates/COMPONENT-LIBRARY-TEMPLATE.md +86 -0
- package/.speccrew/skills/speccrew-knowledge-techs-generate/templates/CONVENTIONS-BUILD-TEMPLATE.md +466 -0
- package/.speccrew/skills/speccrew-knowledge-techs-generate/templates/CONVENTIONS-DATA-TEMPLATE.md +432 -0
- package/.speccrew/skills/speccrew-knowledge-techs-generate/templates/CONVENTIONS-DESIGN-TEMPLATE.md +1209 -0
- package/.speccrew/skills/speccrew-knowledge-techs-generate/templates/CONVENTIONS-DEV-TEMPLATE.md +1433 -0
- package/.speccrew/skills/speccrew-knowledge-techs-generate/templates/CONVENTIONS-SYSTEM-TEST-TEMPLATE.md +1052 -0
- package/.speccrew/skills/speccrew-knowledge-techs-generate/templates/CONVENTIONS-UNIT-TEST-TEMPLATE.md +946 -0
- package/.speccrew/skills/speccrew-knowledge-techs-generate/templates/INDEX-TEMPLATE.md +29 -0
- package/.speccrew/skills/speccrew-knowledge-techs-generate/templates/PAGE-LAYOUTS-TEMPLATE.md +69 -0
- package/.speccrew/skills/speccrew-knowledge-techs-generate/templates/PAGE-TYPE-SUMMARY-TEMPLATE.md +74 -0
- package/.speccrew/skills/speccrew-knowledge-techs-generate/templates/TECH-STACK-TEMPLATE.md +232 -0
- package/.speccrew/skills/speccrew-knowledge-techs-generate-conventions/SKILL.md +628 -0
- package/.speccrew/skills/speccrew-knowledge-techs-generate-ui-style/SKILL.md +392 -0
- package/.speccrew/skills/speccrew-knowledge-techs-index/SKILL.md +489 -0
- package/.speccrew/skills/speccrew-knowledge-techs-index/templates/INDEX-TEMPLATE.md +243 -0
- package/.speccrew/skills/speccrew-knowledge-techs-init/SKILL.md +269 -0
- package/.speccrew/skills/speccrew-knowledge-techs-ui-analyze/SKILL.md +562 -0
- package/.speccrew/skills/speccrew-knowledge-techs-ui-analyze/templates/BUSINESS-COMPONENTS-TEMPLATE.md +171 -0
- package/.speccrew/skills/speccrew-knowledge-techs-ui-analyze/templates/COMMON-COMPONENTS-TEMPLATE.md +177 -0
- package/.speccrew/skills/speccrew-knowledge-techs-ui-analyze/templates/COMPONENT-INDIVIDUAL-TEMPLATE.md +80 -0
- package/.speccrew/skills/speccrew-knowledge-techs-ui-analyze/templates/COMPONENT-LIBRARY-TEMPLATE.md +118 -0
- package/.speccrew/skills/speccrew-knowledge-techs-ui-analyze/templates/LAYOUT-INDIVIDUAL-TEMPLATE.md +97 -0
- package/.speccrew/skills/speccrew-knowledge-techs-ui-analyze/templates/LAYOUT-PATTERNS-TEMPLATE.md +208 -0
- package/.speccrew/skills/speccrew-knowledge-techs-ui-analyze/templates/NAVIGATION-PATTERNS-TEMPLATE.md +157 -0
- package/.speccrew/skills/speccrew-knowledge-techs-ui-analyze/templates/PAGE-TYPE-INDIVIDUAL-TEMPLATE.md +123 -0
- package/.speccrew/skills/speccrew-knowledge-techs-ui-analyze/templates/PAGE-TYPE-SUMMARY-TEMPLATE.md +58 -0
- package/.speccrew/skills/speccrew-knowledge-techs-ui-analyze/templates/SPACING-TEMPLATE.md +119 -0
- package/.speccrew/skills/speccrew-knowledge-techs-ui-analyze/templates/STYLE-SYSTEM-TEMPLATE.md +117 -0
- package/.speccrew/skills/speccrew-knowledge-techs-ui-analyze/templates/TYPOGRAPHY-TEMPLATE.md +107 -0
- package/.speccrew/skills/speccrew-knowledge-techs-ui-analyze/templates/UI-STYLE-GUIDE-TEMPLATE.md +171 -0
- package/.speccrew/skills/speccrew-pm-requirement-analysis/SKILL.md +434 -0
- package/.speccrew/skills/speccrew-pm-requirement-analysis/templates/BIZS-MODELING-TEMPLATE.md +332 -0
- package/.speccrew/skills/speccrew-pm-requirement-analysis/templates/PRD-TEMPLATE.md +200 -0
- package/.speccrew/skills/speccrew-pm-requirement-assess/SKILL.md +195 -0
- package/.speccrew/skills/speccrew-project-diagnosis/SKILL.md +208 -0
- package/.speccrew/skills/speccrew-project-diagnosis/templates/DIAGNOSIS-REPORT-TEMPLATE.md +202 -0
- package/.speccrew/skills/speccrew-sd-backend/SKILL.md +188 -0
- package/.speccrew/skills/speccrew-sd-backend/templates/INDEX-TEMPLATE.md +85 -0
- package/.speccrew/skills/speccrew-sd-backend/templates/SD-BACKEND-TEMPLATE.md +269 -0
- package/.speccrew/skills/speccrew-sd-desktop/SKILL.md +192 -0
- package/.speccrew/skills/speccrew-sd-desktop/templates/INDEX-TEMPLATE.md +271 -0
- package/.speccrew/skills/speccrew-sd-desktop/templates/SD-DESKTOP-TEMPLATE.md +673 -0
- package/.speccrew/skills/speccrew-sd-frontend/SKILL.md +176 -0
- package/.speccrew/skills/speccrew-sd-frontend/templates/INDEX-TEMPLATE.md +184 -0
- package/.speccrew/skills/speccrew-sd-frontend/templates/SD-FRONTEND-TEMPLATE.md +382 -0
- package/.speccrew/skills/speccrew-sd-mobile/SKILL.md +189 -0
- package/.speccrew/skills/speccrew-sd-mobile/templates/INDEX-TEMPLATE.md +219 -0
- package/.speccrew/skills/speccrew-sd-mobile/templates/SD-MOBILE-TEMPLATE.md +534 -0
- package/.speccrew/skills/speccrew-test-case-design/SKILL.md +284 -0
- package/.speccrew/skills/speccrew-test-case-design/templates/TEST-CASE-DESIGN-TEMPLATE.md +263 -0
- package/.speccrew/skills/speccrew-test-code-gen/SKILL.md +313 -0
- package/.speccrew/skills/speccrew-test-code-gen/templates/TEST-CODE-PLAN-TEMPLATE.md +180 -0
- package/.speccrew/skills/speccrew-test-execute/SKILL.md +283 -0
- package/.speccrew/skills/speccrew-test-execute/templates/BUG-REPORT-TEMPLATE.md +50 -0
- package/.speccrew/skills/speccrew-test-execute/templates/TEST-REPORT-TEMPLATE.md +57 -0
- package/.speccrew/skills/speccrew-workflow-diagnose/SKILL.md +155 -0
- package/LICENSE +21 -0
- package/README.ar.md +318 -0
- package/README.en.md +318 -0
- package/README.es.md +318 -0
- package/README.md +340 -0
- package/bin/cli.js +62 -0
- package/lib/commands/doctor.js +138 -0
- package/lib/commands/init.js +231 -0
- package/lib/commands/list.js +114 -0
- package/lib/commands/uninstall.js +117 -0
- package/lib/commands/update.js +351 -0
- package/lib/ide-adapters.js +73 -0
- package/lib/utils.js +104 -0
- package/package.json +28 -0
- package/workspace-template/docs/configs/document-templates.json +667 -0
- package/workspace-template/docs/configs/platform-mapping.json +194 -0
- package/workspace-template/docs/configs/tech-stack-mappings.json +313 -0
- package/workspace-template/docs/configs/validation-rules.json +87 -0
- package/workspace-template/docs/rules/mermaid-rule.md +114 -0
- package/workspace-template/docs/solutions/Agent/346/212/200/350/203/275/345/256/232/344/271/211+/351/234/200/346/261/202/346/226/207/346/241/243+UML/344/275/277/347/224/250/346/250/241/346/235/277/357/274/210ISA-95/345/205/255/346/256/265/345/274/217/350/236/215/345/220/210/347/211/210/357/274/211.md +586 -0
- package/workspace-template/docs/solutions/agent-knowledge-map.md +238 -0
- package/workspace-template/docs/solutions/bizs-knowledge-pipeline.md +678 -0
- package/workspace-template/docs/solutions/harness.md +410 -0
- package/workspace-template/docs/solutions/knowledge-incremental-sync-spec.md +943 -0
- package/workspace-template/docs/solutions/techs-knowledge-pipeline.md +803 -0
- package/workspace-template/docs/solutions/workspace-structure.md +318 -0
package/.speccrew/skills/speccrew-knowledge-techs-generate/templates/CONVENTIONS-DATA-TEMPLATE.md
ADDED
|
@@ -0,0 +1,432 @@
|
|
|
1
|
+
# {{platform_name}} Data Conventions
|
|
2
|
+
|
|
3
|
+
<cite>
|
|
4
|
+
**Files Referenced in This Document**
|
|
5
|
+
{{#each source_files}}
|
|
6
|
+
- [{{name}}](file://{{path}})
|
|
7
|
+
{{/each}}
|
|
8
|
+
</cite>
|
|
9
|
+
|
|
10
|
+
> **Target Audience**: devcrew-designer-{{platform_id}}, devcrew-dev-{{platform_id}}, devcrew-test-{{platform_id}}
|
|
11
|
+
|
|
12
|
+
## Table of Contents
|
|
13
|
+
|
|
14
|
+
1. [Introduction](#introduction)
|
|
15
|
+
2. [Project Structure](#project-structure)
|
|
16
|
+
3. [Core Components](#core-components)
|
|
17
|
+
4. [Architecture Overview](#architecture-overview)
|
|
18
|
+
5. [Detailed Component Analysis](#detailed-component-analysis)
|
|
19
|
+
6. [Dependency Analysis](#dependency-analysis)
|
|
20
|
+
7. [Performance Considerations](#performance-considerations)
|
|
21
|
+
8. [Troubleshooting Guide](#troubleshooting-guide)
|
|
22
|
+
9. [Conclusion](#conclusion)
|
|
23
|
+
10. [Appendix](#appendix)
|
|
24
|
+
|
|
25
|
+
## Introduction
|
|
26
|
+
|
|
27
|
+
This data conventions document defines ORM/database tools, data modeling conventions, migration patterns, query optimization, and caching strategies for the {{platform_name}} platform.
|
|
28
|
+
|
|
29
|
+
> **Platform Applicability**: This template primarily covers backend data layer conventions (ORM, database, migrations, queries). For frontend platforms, only the Dictionary Usage and Caching sections are typically applicable — fill other sections with "Not applicable - this is a frontend platform without direct database access."
|
|
30
|
+
|
|
31
|
+
## Project Structure
|
|
32
|
+
|
|
33
|
+
### Data Layer Structure
|
|
34
|
+
|
|
35
|
+
```
|
|
36
|
+
{{data_directory_structure}}
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
```mermaid
|
|
40
|
+
graph TB
|
|
41
|
+
{{#each data_components}}
|
|
42
|
+
{{id}}["{{name}}"]
|
|
43
|
+
{{/each}}
|
|
44
|
+
{{#each data_relations}}
|
|
45
|
+
{{from}} --> {{to}}
|
|
46
|
+
{{/each}}
|
|
47
|
+
```
|
|
48
|
+
|
|
49
|
+
**Diagram Source**
|
|
50
|
+
{{#each structure_sources}}
|
|
51
|
+
- [{{name}}](file://{{path}}#L{{start}}-L{{end}})
|
|
52
|
+
{{/each}}
|
|
53
|
+
|
|
54
|
+
**Section Source**
|
|
55
|
+
{{#each project_structure_sources}}
|
|
56
|
+
- [{{name}}](file://{{path}}#L{{start}}-L{{end}})
|
|
57
|
+
{{/each}}
|
|
58
|
+
|
|
59
|
+
## Core Components
|
|
60
|
+
|
|
61
|
+
### ORM/Database Tool
|
|
62
|
+
|
|
63
|
+
| Tool | Version | Purpose |
|
|
64
|
+
|------|---------|---------|
|
|
65
|
+
{{#each orm_tools}}
|
|
66
|
+
| {{name}} | {{version}} | {{purpose}} |
|
|
67
|
+
{{/each}}
|
|
68
|
+
|
|
69
|
+
### Data Modeling Conventions
|
|
70
|
+
|
|
71
|
+
{{data_modeling_conventions}}
|
|
72
|
+
|
|
73
|
+
**Section Source**
|
|
74
|
+
{{#each core_components_sources}}
|
|
75
|
+
- [{{name}}](file://{{path}}#L{{start}}-L{{end}})
|
|
76
|
+
{{/each}}
|
|
77
|
+
|
|
78
|
+
## Architecture Overview
|
|
79
|
+
|
|
80
|
+
### Data Architecture
|
|
81
|
+
|
|
82
|
+
```mermaid
|
|
83
|
+
erDiagram
|
|
84
|
+
{{#each entities}}
|
|
85
|
+
{{name}} {
|
|
86
|
+
{{#each fields}}
|
|
87
|
+
{{type}} {{field_name}}
|
|
88
|
+
{{/each}}
|
|
89
|
+
}
|
|
90
|
+
{{/each}}
|
|
91
|
+
{{#each relationships}}
|
|
92
|
+
{{from}} ||--o{ {{to}} : "{{relation}}"
|
|
93
|
+
{{/each}}
|
|
94
|
+
```
|
|
95
|
+
|
|
96
|
+
**Diagram Source**
|
|
97
|
+
{{#each architecture_sources}}
|
|
98
|
+
- [{{name}}](file://{{path}}#L{{start}}-L{{end}})
|
|
99
|
+
{{/each}}
|
|
100
|
+
|
|
101
|
+
**Section Source**
|
|
102
|
+
{{#each architecture_overview_sources}}
|
|
103
|
+
- [{{name}}](file://{{path}}#L{{start}}-L{{end}})
|
|
104
|
+
{{/each}}
|
|
105
|
+
|
|
106
|
+
## Detailed Component Analysis
|
|
107
|
+
|
|
108
|
+
### Entity Design
|
|
109
|
+
|
|
110
|
+
{{entity_design}}
|
|
111
|
+
|
|
112
|
+
### Migration Patterns
|
|
113
|
+
|
|
114
|
+
<!-- AI-TAG: MIGRATION_PATTERNS -->
|
|
115
|
+
<!-- Backend only. If this platform is frontend or mobile, write 'Not applicable - database operations are handled at the backend layer.' -->
|
|
116
|
+
|
|
117
|
+
{{migration_patterns}}
|
|
118
|
+
|
|
119
|
+
```mermaid
|
|
120
|
+
flowchart TD
|
|
121
|
+
Dev["Development"] --> CreateMigration["Create Migration"]
|
|
122
|
+
CreateMigration --> TestMigration["Test Migration"]
|
|
123
|
+
TestMigration --> ApplyMigration["Apply to Production"]
|
|
124
|
+
```
|
|
125
|
+
|
|
126
|
+
**Diagram Source**
|
|
127
|
+
{{#each migration_sources}}
|
|
128
|
+
- [{{name}}](file://{{path}}#L{{start}}-L{{end}})
|
|
129
|
+
{{/each}}
|
|
130
|
+
|
|
131
|
+
### Query Optimization
|
|
132
|
+
|
|
133
|
+
<!-- AI-TAG: QUERY_OPTIMIZATION -->
|
|
134
|
+
<!-- Backend only. If this platform is frontend or mobile, write 'Not applicable - database operations are handled at the backend layer.' -->
|
|
135
|
+
|
|
136
|
+
{{query_optimization}}
|
|
137
|
+
|
|
138
|
+
### Caching Strategies
|
|
139
|
+
|
|
140
|
+
{{caching_strategies}}
|
|
141
|
+
|
|
142
|
+
**Section Source**
|
|
143
|
+
{{#each component_analysis_sources}}
|
|
144
|
+
- [{{name}}](file://{{path}}#L{{start}}-L{{end}})
|
|
145
|
+
{{/each}}
|
|
146
|
+
|
|
147
|
+
## Dependency Analysis
|
|
148
|
+
|
|
149
|
+
### Data Layer Dependencies
|
|
150
|
+
|
|
151
|
+
```mermaid
|
|
152
|
+
graph LR
|
|
153
|
+
{{#each data_modules}}
|
|
154
|
+
{{id}}["{{name}}"]
|
|
155
|
+
{{/each}}
|
|
156
|
+
{{#each data_deps}}
|
|
157
|
+
{{from}} --> {{to}}
|
|
158
|
+
{{/each}}
|
|
159
|
+
```
|
|
160
|
+
|
|
161
|
+
**Diagram Source**
|
|
162
|
+
{{#each dependency_sources}}
|
|
163
|
+
- [{{name}}](file://{{path}}#L{{start}}-L{{end}})
|
|
164
|
+
{{/each}}
|
|
165
|
+
|
|
166
|
+
**Section Source**
|
|
167
|
+
{{#each dependency_analysis_sources}}
|
|
168
|
+
- [{{name}}](file://{{path}}#L{{start}}-L{{end}})
|
|
169
|
+
{{/each}}
|
|
170
|
+
|
|
171
|
+
## Performance Considerations
|
|
172
|
+
|
|
173
|
+
### Database Performance
|
|
174
|
+
|
|
175
|
+
{{#each performance_guidelines}}
|
|
176
|
+
#### {{category}}
|
|
177
|
+
|
|
178
|
+
{{description}}
|
|
179
|
+
|
|
180
|
+
**Guidelines:**
|
|
181
|
+
{{#each items}}
|
|
182
|
+
- {{this}}
|
|
183
|
+
{{/each}}
|
|
184
|
+
|
|
185
|
+
{{/each}}
|
|
186
|
+
|
|
187
|
+
### Indexing Strategy
|
|
188
|
+
|
|
189
|
+
<!-- AI-TAG: INDEXING_STRATEGY -->
|
|
190
|
+
<!-- Backend only. If this platform is frontend or mobile, write 'Not applicable - database operations are handled at the backend layer.' -->
|
|
191
|
+
|
|
192
|
+
{{indexing_strategy}}
|
|
193
|
+
|
|
194
|
+
[This section provides general guidance, no specific file reference required]
|
|
195
|
+
|
|
196
|
+
## Troubleshooting Guide
|
|
197
|
+
|
|
198
|
+
### Common Data Issues
|
|
199
|
+
|
|
200
|
+
{{#each troubleshooting}}
|
|
201
|
+
#### {{issue}}
|
|
202
|
+
|
|
203
|
+
**Symptoms:**
|
|
204
|
+
{{#each symptoms}}
|
|
205
|
+
- {{this}}
|
|
206
|
+
{{/each}}
|
|
207
|
+
|
|
208
|
+
**Solutions:**
|
|
209
|
+
{{#each solutions}}
|
|
210
|
+
- {{this}}
|
|
211
|
+
{{/each}}
|
|
212
|
+
|
|
213
|
+
{{/each}}
|
|
214
|
+
|
|
215
|
+
**Section Source**
|
|
216
|
+
{{#each troubleshooting_sources}}
|
|
217
|
+
- [{{name}}](file://{{path}}#L{{start}}-L{{end}})
|
|
218
|
+
{{/each}}
|
|
219
|
+
|
|
220
|
+
## Conclusion
|
|
221
|
+
|
|
222
|
+
{{conclusion}}
|
|
223
|
+
|
|
224
|
+
[This section is a summary, no specific file reference required]
|
|
225
|
+
|
|
226
|
+
## Appendix
|
|
227
|
+
|
|
228
|
+
### Data Conventions Checklist
|
|
229
|
+
|
|
230
|
+
{{#each data_checklist}}
|
|
231
|
+
- [ ] {{item}}
|
|
232
|
+
{{/each}}
|
|
233
|
+
|
|
234
|
+
### Common Data Scenarios
|
|
235
|
+
|
|
236
|
+
{{#each common_scenarios}}
|
|
237
|
+
#### {{name}}
|
|
238
|
+
|
|
239
|
+
{{description}}
|
|
240
|
+
|
|
241
|
+
**Recommended Approach:**
|
|
242
|
+
{{approach}}
|
|
243
|
+
|
|
244
|
+
{{/each}}
|
|
245
|
+
|
|
246
|
+
## Data Dictionary Management (Platform-Specific)
|
|
247
|
+
|
|
248
|
+
<!-- AI-TAG: DICTIONARY_MANAGEMENT -->
|
|
249
|
+
<!-- Fill with actual dictionary management patterns found in source code -->
|
|
250
|
+
|
|
251
|
+
### Backend Dictionary Management (if backend platform)
|
|
252
|
+
|
|
253
|
+
<!-- AI-TAG: BACKEND_DICTIONARY -->
|
|
254
|
+
<!-- Fill with backend dictionary management patterns. If frontend platform, skip this subsection. -->
|
|
255
|
+
|
|
256
|
+
#### Dictionary Entity Design
|
|
257
|
+
|
|
258
|
+
| Field | Type | Description |
|
|
259
|
+
|-------|------|-------------|
|
|
260
|
+
| field | type | description |
|
|
261
|
+
|
|
262
|
+
#### Dictionary CRUD Pattern
|
|
263
|
+
|
|
264
|
+
| Operation | Implementation | Cache Impact |
|
|
265
|
+
|-----------|---------------|-------------|
|
|
266
|
+
| Create | create_impl | cache_impact |
|
|
267
|
+
| Update | update_impl | cache_impact |
|
|
268
|
+
| Delete | delete_impl | cache_impact |
|
|
269
|
+
|
|
270
|
+
#### Dictionary Caching Strategy
|
|
271
|
+
|
|
272
|
+
| Item | Detail |
|
|
273
|
+
|------|--------|
|
|
274
|
+
| Cache Location | cache_location (e.g., Redis) |
|
|
275
|
+
| TTL | ttl |
|
|
276
|
+
| Invalidation | invalidation |
|
|
277
|
+
|
|
278
|
+
### Frontend Dictionary Usage (if frontend platform)
|
|
279
|
+
|
|
280
|
+
<!-- AI-TAG: FRONTEND_DICTIONARY -->
|
|
281
|
+
<!-- Fill with frontend dictionary consumption patterns. If backend platform, skip this subsection. -->
|
|
282
|
+
|
|
283
|
+
| Item | Detail |
|
|
284
|
+
|------|--------|
|
|
285
|
+
| Dictionary API | dict_api_endpoint |
|
|
286
|
+
| Local Cache | cache_location (e.g., Pinia store, localStorage, sessionStorage) |
|
|
287
|
+
| Cache TTL | cache_ttl |
|
|
288
|
+
| Refresh Strategy | refresh_strategy (e.g., on login, on demand, periodic) |
|
|
289
|
+
|
|
290
|
+
#### Dictionary Component Usage
|
|
291
|
+
|
|
292
|
+
```lang
|
|
293
|
+
// Example: Using dictionary values in frontend components
|
|
294
|
+
frontend_dict_example
|
|
295
|
+
```
|
|
296
|
+
|
|
297
|
+
#### Dictionary Helper/Utility
|
|
298
|
+
|
|
299
|
+
```lang
|
|
300
|
+
// Example: Dictionary lookup utility function
|
|
301
|
+
frontend_dict_utility_example
|
|
302
|
+
```
|
|
303
|
+
|
|
304
|
+
---
|
|
305
|
+
|
|
306
|
+
## Multi-tenancy Data Isolation (Platform-Specific)
|
|
307
|
+
|
|
308
|
+
<!-- AI-TAG: TENANT_DATA_ISOLATION -->
|
|
309
|
+
<!-- Fill if the platform implements multi-tenancy data isolation. If not applicable, write "Not applicable." -->
|
|
310
|
+
|
|
311
|
+
### Backend Tenant Data Isolation (if backend platform)
|
|
312
|
+
|
|
313
|
+
<!-- AI-TAG: BACKEND_TENANT_ISOLATION -->
|
|
314
|
+
<!-- Fill with backend tenant data isolation patterns. If frontend platform, skip this subsection. -->
|
|
315
|
+
|
|
316
|
+
#### Tenant Data Strategy
|
|
317
|
+
|
|
318
|
+
| Item | Detail |
|
|
319
|
+
|------|--------|
|
|
320
|
+
| Isolation Strategy | isolation_strategy |
|
|
321
|
+
| Tenant Column | tenant_column |
|
|
322
|
+
| Auto-Filter Plugin | auto_filter |
|
|
323
|
+
|
|
324
|
+
#### Tenant-Aware Repository Pattern
|
|
325
|
+
|
|
326
|
+
```lang
|
|
327
|
+
// Example showing how tenant isolation is enforced at the data layer
|
|
328
|
+
tenant_repo_example
|
|
329
|
+
```
|
|
330
|
+
|
|
331
|
+
#### Tables Excluded from Tenant Isolation
|
|
332
|
+
|
|
333
|
+
| Table | Reason |
|
|
334
|
+
|-------|--------|
|
|
335
|
+
| table | reason |
|
|
336
|
+
|
|
337
|
+
### Frontend Tenant Context (if frontend platform)
|
|
338
|
+
|
|
339
|
+
<!-- AI-TAG: FRONTEND_TENANT -->
|
|
340
|
+
<!-- Fill with frontend tenant context handling. If backend platform, skip this subsection. -->
|
|
341
|
+
|
|
342
|
+
| Item | Detail |
|
|
343
|
+
|------|--------|
|
|
344
|
+
| Tenant Identification | tenant_id_source (e.g., subdomain, URL path, login selection) |
|
|
345
|
+
| Tenant Header | tenant_header (e.g., X-Tenant-Id in request interceptor) |
|
|
346
|
+
| Tenant Storage | tenant_storage (e.g., localStorage, cookie, JWT claim) |
|
|
347
|
+
| UI Tenant Switching | tenant_switch_ui (e.g., dropdown, login page selection) |
|
|
348
|
+
|
|
349
|
+
```lang
|
|
350
|
+
// Example: Setting tenant context in request interceptor
|
|
351
|
+
frontend_tenant_example
|
|
352
|
+
```
|
|
353
|
+
|
|
354
|
+
---
|
|
355
|
+
|
|
356
|
+
## Caching Strategy (Platform-Specific)
|
|
357
|
+
|
|
358
|
+
<!-- AI-TAG: CACHING_STRATEGY -->
|
|
359
|
+
<!-- Fill with actual caching patterns found in source code. If not applicable, write "Not applicable." -->
|
|
360
|
+
|
|
361
|
+
### Backend Caching Strategy (if backend platform)
|
|
362
|
+
|
|
363
|
+
<!-- AI-TAG: BACKEND_CACHING_STRATEGY -->
|
|
364
|
+
<!-- Fill with backend caching patterns. If frontend platform, skip this subsection. -->
|
|
365
|
+
|
|
366
|
+
#### Cache Infrastructure
|
|
367
|
+
|
|
368
|
+
| Item | Detail |
|
|
369
|
+
|------|--------|
|
|
370
|
+
| Cache Provider | cache_provider (e.g., Redis, Caffeine, Ehcache) |
|
|
371
|
+
| Client Library | client_library |
|
|
372
|
+
| Configuration | cache_config |
|
|
373
|
+
|
|
374
|
+
#### Cache Key Naming Convention
|
|
375
|
+
|
|
376
|
+
| Convention | Pattern | Example |
|
|
377
|
+
|-----------|---------|---------|
|
|
378
|
+
| convention | pattern | example |
|
|
379
|
+
|
|
380
|
+
#### Cache Usage Patterns
|
|
381
|
+
|
|
382
|
+
| Pattern | Description | TTL | Example |
|
|
383
|
+
|---------|------------|-----|---------|
|
|
384
|
+
| pattern | description | ttl | example |
|
|
385
|
+
|
|
386
|
+
#### Cache Invalidation Strategy
|
|
387
|
+
|
|
388
|
+
| Trigger | Strategy | Implementation |
|
|
389
|
+
|---------|----------|---------------|
|
|
390
|
+
| trigger | strategy | implementation |
|
|
391
|
+
|
|
392
|
+
#### Cache Pitfall Prevention
|
|
393
|
+
|
|
394
|
+
| Pitfall | Prevention Strategy |
|
|
395
|
+
|---------|-------------------|
|
|
396
|
+
| Cache Penetration | prevention |
|
|
397
|
+
| Cache Avalanche | prevention |
|
|
398
|
+
| Cache Breakdown | prevention |
|
|
399
|
+
|
|
400
|
+
### Frontend Caching Strategy (if frontend platform)
|
|
401
|
+
|
|
402
|
+
<!-- AI-TAG: FRONTEND_CACHING_STRATEGY -->
|
|
403
|
+
<!-- Fill with frontend caching patterns. If backend platform, skip this subsection. -->
|
|
404
|
+
|
|
405
|
+
| Storage | Use Case | Max Size | Persistence | Example |
|
|
406
|
+
|---------|----------|----------|-------------|---------|
|
|
407
|
+
| localStorage | use_case | ~5MB | Permanent until cleared | example |
|
|
408
|
+
| sessionStorage | use_case | ~5MB | Browser tab session | example |
|
|
409
|
+
| IndexedDB | use_case | Large (50MB+) | Permanent until cleared | example |
|
|
410
|
+
| In-Memory (Store) | use_case | Runtime memory | Page session | example |
|
|
411
|
+
|
|
412
|
+
#### Cache Key Naming
|
|
413
|
+
|
|
414
|
+
| Convention | Pattern | Example |
|
|
415
|
+
|-----------|---------|---------|
|
|
416
|
+
| convention | pattern | example |
|
|
417
|
+
|
|
418
|
+
#### Cache Invalidation
|
|
419
|
+
|
|
420
|
+
| Trigger | Strategy | Example |
|
|
421
|
+
|---------|----------|---------|
|
|
422
|
+
| trigger | strategy | example |
|
|
423
|
+
|
|
424
|
+
```lang
|
|
425
|
+
// Example: Frontend caching utility
|
|
426
|
+
frontend_caching_example
|
|
427
|
+
```
|
|
428
|
+
|
|
429
|
+
**Section Source**
|
|
430
|
+
{{#each appendix_sources}}
|
|
431
|
+
- [{{name}}](file://{{path}}#L{{start}}-L{{end}})
|
|
432
|
+
{{/each}}
|