@mind-fold/open-flow 0.1.7 → 0.1.9
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/README.md +10 -4
- package/dist/configurators/templates.d.ts.map +1 -1
- package/dist/configurators/templates.js +213 -142
- package/dist/configurators/templates.js.map +1 -1
- package/dist/configurators/workflow.js +148 -69
- package/dist/configurators/workflow.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -77,6 +77,7 @@ your-project/
|
|
|
77
77
|
| `/check-frontend` | Check frontend code against guidelines |
|
|
78
78
|
| `/check-backend` | Check backend code against guidelines |
|
|
79
79
|
| `/record-agent-flow` | Record work progress (after human commits) |
|
|
80
|
+
| `/record-question` | Document a solved problem for future reference |
|
|
80
81
|
| `/onboard-developer` | Guide new developer through setup |
|
|
81
82
|
| `/update-frontend-structure` | Update frontend guidelines if new patterns found |
|
|
82
83
|
| `/update-backend-structure` | Update backend guidelines if new patterns found |
|
|
@@ -107,16 +108,21 @@ Fill in your project-specific guidelines in:
|
|
|
107
108
|
- `workflow/structure/frontend/doc.md`
|
|
108
109
|
- `workflow/structure/backend/doc.md`
|
|
109
110
|
|
|
110
|
-
|
|
111
|
+
**Requirements**:
|
|
112
|
+
- Write all documentation in **English**
|
|
113
|
+
- Add section markers: `@@@section:kebab-case-id` and `@@@/section:kebab-case-id`
|
|
114
|
+
- Update `index.md` files with section IDs for quick navigation
|
|
111
115
|
|
|
112
116
|
## Key Concepts
|
|
113
117
|
|
|
114
118
|
### index.md + doc.md Structure
|
|
115
119
|
|
|
116
120
|
Instead of reading entire guideline documents (which can be 1000+ lines), AI:
|
|
117
|
-
1. Reads the lightweight `index.md` (navigation table)
|
|
118
|
-
2. Finds relevant section
|
|
119
|
-
3.
|
|
121
|
+
1. Reads the lightweight `index.md` (navigation table with section IDs)
|
|
122
|
+
2. Finds relevant section ID for the task
|
|
123
|
+
3. Extracts only the needed section: `sed -n '/@@@section:ID/,/@@@\/section:ID/p' doc.md`
|
|
124
|
+
|
|
125
|
+
Section markers (`@@@section:id`) ensure references don't break when content is added or removed.
|
|
120
126
|
|
|
121
127
|
This saves tokens and improves focus.
|
|
122
128
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"templates.d.ts","sourceRoot":"","sources":["../../src/configurators/templates.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,MAAM,WAAW,gBAAgB;IAChC,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAC;CACtB;AAED,wBAAgB,mBAAmB,IAAI,gBAAgB,
|
|
1
|
+
{"version":3,"file":"templates.d.ts","sourceRoot":"","sources":["../../src/configurators/templates.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,MAAM,WAAW,gBAAgB;IAChC,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAC;CACtB;AAED,wBAAgB,mBAAmB,IAAI,gBAAgB,CAetD"}
|
|
@@ -8,6 +8,7 @@ export function getCommandTemplates() {
|
|
|
8
8
|
"check-frontend": getCheckFrontendTemplate(),
|
|
9
9
|
"check-backend": getCheckBackendTemplate(),
|
|
10
10
|
"record-agent-flow": getRecordAgentFlowTemplate(),
|
|
11
|
+
"record-question": getRecordQuestionTemplate(),
|
|
11
12
|
"onboard-developer": getOnboardDeveloperTemplate(),
|
|
12
13
|
"generate-frontend-structure": getGenerateFrontendStructureTemplate(),
|
|
13
14
|
"generate-backend-structure": getGenerateBackendStructureTemplate(),
|
|
@@ -34,8 +35,8 @@ function getCheckFrontendTemplate() {
|
|
|
34
35
|
|
|
35
36
|
Execute these steps:
|
|
36
37
|
1. Run \`git status\` to see modified files
|
|
37
|
-
2. Read \`workflow/structure/frontend/index.md\` to find relevant
|
|
38
|
-
3.
|
|
38
|
+
2. Read \`workflow/structure/frontend/index.md\` to find relevant section IDs
|
|
39
|
+
3. Extract specific sections: \`sed -n '/@@@section:ID/,/@@@\\/section:ID/p' workflow/structure/frontend/doc.md\`
|
|
39
40
|
4. Review your code against the guidelines
|
|
40
41
|
5. Report any violations and fix them if found
|
|
41
42
|
`;
|
|
@@ -45,8 +46,8 @@ function getCheckBackendTemplate() {
|
|
|
45
46
|
|
|
46
47
|
Execute these steps:
|
|
47
48
|
1. Run \`git status\` to see modified files
|
|
48
|
-
2. Read \`workflow/structure/backend/index.md\` to find relevant
|
|
49
|
-
3.
|
|
49
|
+
2. Read \`workflow/structure/backend/index.md\` to find relevant section IDs
|
|
50
|
+
3. Extract specific sections: \`sed -n '/@@@section:ID/,/@@@\\/section:ID/p' workflow/structure/backend/doc.md\`
|
|
50
51
|
4. Review your code against the guidelines
|
|
51
52
|
5. Report any violations and fix them if found
|
|
52
53
|
`;
|
|
@@ -105,18 +106,15 @@ function getGenerateFrontendStructureTemplate() {
|
|
|
105
106
|
|
|
106
107
|
## Task Description
|
|
107
108
|
|
|
108
|
-
Scan the project's frontend code, analyze existing code patterns and tech stack, then auto-generate \`doc.md\` (detailed guidelines)
|
|
109
|
+
Scan the project's frontend code, analyze existing code patterns and tech stack, then auto-generate \`doc.md\` (detailed guidelines) with section markers, then generate \`index.md\` (navigation index) using section IDs.
|
|
109
110
|
|
|
110
111
|
---
|
|
111
112
|
|
|
112
|
-
## ⚠️ CRITICAL:
|
|
113
|
+
## ⚠️ CRITICAL: Requirements
|
|
113
114
|
|
|
114
|
-
**
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
3. **Finally**: Generate \`index.md\` using the line numbers from step 2
|
|
118
|
-
|
|
119
|
-
**DO NOT** generate index.md with placeholder line numbers. Always use the extract script first.
|
|
115
|
+
1. **Language**: All documentation must be written in **English**
|
|
116
|
+
2. **Section Markers**: Use \`@@@section:kebab-case-id\` and \`@@@/section:kebab-case-id\` to mark sections
|
|
117
|
+
3. **Index**: Reference sections by ID, not line numbers
|
|
120
118
|
|
|
121
119
|
---
|
|
122
120
|
|
|
@@ -188,9 +186,7 @@ find [frontend-dir] -type d -maxdepth 3 | head -50
|
|
|
188
186
|
- Local state
|
|
189
187
|
- URL state synchronization
|
|
190
188
|
|
|
191
|
-
### Step 4: Generate \`doc.md\`
|
|
192
|
-
|
|
193
|
-
⚠️ **Generate doc.md BEFORE index.md**
|
|
189
|
+
### Step 4: Generate \`doc.md\` with Section Markers
|
|
194
190
|
|
|
195
191
|
Create directory and generate detailed guidelines:
|
|
196
192
|
|
|
@@ -205,16 +201,24 @@ mkdir -p workflow/structure/frontend
|
|
|
205
201
|
|
|
206
202
|
These guidelines define the development standards and best practices for [Project Name] frontend modules.
|
|
207
203
|
|
|
204
|
+
@@@section:directory-structure
|
|
208
205
|
## 📁 Directory Structure Guidelines
|
|
209
206
|
|
|
207
|
+
@@@section:module-organization
|
|
210
208
|
### Module Organization
|
|
211
209
|
[Describe directory structure with tree diagram code block]
|
|
212
210
|
|
|
213
211
|
**Reference Example**:
|
|
214
212
|
- \`[path]\` - [description]
|
|
215
213
|
|
|
214
|
+
@@@/section:module-organization
|
|
215
|
+
|
|
216
|
+
@@@/section:directory-structure
|
|
217
|
+
|
|
218
|
+
@@@section:type-safety
|
|
216
219
|
## 🎯 Type Safety Guidelines
|
|
217
220
|
|
|
221
|
+
@@@section:backend-contract-types
|
|
218
222
|
### 1. Backend Contract Types vs Frontend View Models
|
|
219
223
|
|
|
220
224
|
#### ✅ Correct Approach - Import Types from Backend
|
|
@@ -223,23 +227,40 @@ These guidelines define the development standards and best practices for [Projec
|
|
|
223
227
|
#### ❌ Wrong Approach
|
|
224
228
|
[anti-pattern code example]
|
|
225
229
|
|
|
230
|
+
@@@/section:backend-contract-types
|
|
231
|
+
|
|
232
|
+
@@@/section:type-safety
|
|
233
|
+
|
|
234
|
+
@@@section:hook-development
|
|
226
235
|
## 🪝 Hook Development Guidelines
|
|
227
236
|
|
|
237
|
+
@@@section:query-hook-guidelines
|
|
228
238
|
### 1. Query Hook Standards
|
|
229
239
|
|
|
230
240
|
#### ✅ Correct Query Hook Pattern
|
|
231
241
|
[code example]
|
|
232
242
|
|
|
243
|
+
@@@/section:query-hook-guidelines
|
|
244
|
+
|
|
245
|
+
@@@section:mutation-hook-guidelines
|
|
233
246
|
### 2. Mutation Hook Standards
|
|
234
247
|
|
|
235
248
|
#### ✅ Correct Mutation Hook Pattern
|
|
236
249
|
[code example]
|
|
237
250
|
|
|
251
|
+
@@@/section:mutation-hook-guidelines
|
|
252
|
+
|
|
253
|
+
@@@/section:hook-development
|
|
254
|
+
|
|
255
|
+
@@@section:api-calls
|
|
238
256
|
## 🔌 API Call Guidelines
|
|
239
257
|
|
|
240
258
|
### Basic Usage
|
|
241
259
|
[code example]
|
|
242
260
|
|
|
261
|
+
@@@/section:api-calls
|
|
262
|
+
|
|
263
|
+
@@@section:state-management
|
|
243
264
|
## 🏗️ State Management Guidelines
|
|
244
265
|
|
|
245
266
|
### 1. URL State Management
|
|
@@ -248,6 +269,9 @@ These guidelines define the development standards and best practices for [Projec
|
|
|
248
269
|
### 2. React Context Standards
|
|
249
270
|
[code example]
|
|
250
271
|
|
|
272
|
+
@@@/section:state-management
|
|
273
|
+
|
|
274
|
+
@@@section:component-development
|
|
251
275
|
## 🎨 Component Development Guidelines
|
|
252
276
|
|
|
253
277
|
### 1. Component Structure
|
|
@@ -256,51 +280,43 @@ These guidelines define the development standards and best practices for [Projec
|
|
|
256
280
|
### 2. Styling Standards
|
|
257
281
|
[code example]
|
|
258
282
|
|
|
283
|
+
@@@/section:component-development
|
|
284
|
+
|
|
285
|
+
@@@section:performance-optimization
|
|
259
286
|
## ⚡ Performance Optimization Guidelines
|
|
260
287
|
|
|
261
288
|
[performance rules]
|
|
262
289
|
|
|
290
|
+
@@@/section:performance-optimization
|
|
291
|
+
|
|
292
|
+
@@@section:code-quality
|
|
263
293
|
## 🔍 Code Quality Guidelines
|
|
264
294
|
|
|
265
295
|
### Lint and Formatting
|
|
266
296
|
[tool configuration and usage]
|
|
267
297
|
|
|
298
|
+
@@@/section:code-quality
|
|
299
|
+
|
|
300
|
+
@@@section:checklist
|
|
268
301
|
## ✅ Checklist
|
|
269
302
|
|
|
270
303
|
- [ ] Code passes lint check
|
|
271
304
|
- [ ] Type check passes
|
|
272
305
|
- [ ] [other check items...]
|
|
273
306
|
|
|
307
|
+
@@@/section:checklist
|
|
308
|
+
|
|
309
|
+
@@@section:reference-examples
|
|
274
310
|
## 📚 Reference Examples
|
|
275
311
|
|
|
276
312
|
| Feature | Reference File |
|
|
277
313
|
|---------|----------------|
|
|
278
314
|
| [Feature1] | \`[path]\` |
|
|
279
|
-
\`\`\`
|
|
280
|
-
|
|
281
|
-
### Step 5: Extract Line Numbers with Script
|
|
282
315
|
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
\`\`\`bash
|
|
286
|
-
# Get all headings with line number ranges
|
|
287
|
-
./workflow/scripts/extract-md-headings.sh workflow/structure/frontend/doc.md -l 1,2,3 -r
|
|
288
|
-
|
|
289
|
-
# Example output:
|
|
290
|
-
# Level Line Range Title
|
|
291
|
-
# ---- ---- ---- ----
|
|
292
|
-
# 1 1 L1-15 Frontend Development Guidelines
|
|
293
|
-
# 2 5 L5-28 📁 Directory Structure Guidelines
|
|
294
|
-
# 2 30 L30-65 🎯 Type Safety Guidelines
|
|
295
|
-
# 2 67 L67-120 🪝 Hook Development Guidelines
|
|
296
|
-
# ...
|
|
316
|
+
@@@/section:reference-examples
|
|
297
317
|
\`\`\`
|
|
298
318
|
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
### Step 6: Generate \`index.md\` with Accurate Line Numbers
|
|
302
|
-
|
|
303
|
-
⚠️ **Use the EXACT line numbers from Step 5**
|
|
319
|
+
### Step 5: Generate \`index.md\` with Section IDs
|
|
304
320
|
|
|
305
321
|
\`\`\`markdown
|
|
306
322
|
# Frontend Development Guidelines Index
|
|
@@ -311,40 +327,46 @@ This index helps you quickly locate the guidelines you need based on your task t
|
|
|
311
327
|
|
|
312
328
|
## Quick Navigation
|
|
313
329
|
|
|
314
|
-
| Development Task | Section to Read |
|
|
330
|
+
| Development Task | Section to Read | Section ID |
|
|
315
331
|
|-----------------|-----------------|------------|
|
|
316
|
-
| **New feature module** | Directory Structure |
|
|
317
|
-
| **Write Query Hook** | Hook Guidelines > Query Hook |
|
|
318
|
-
| **Write Mutation Hook** | Hook Guidelines > Mutation Hook |
|
|
319
|
-
| **API calls** | API Call Guidelines |
|
|
320
|
-
| **State management** | State Management Guidelines |
|
|
321
|
-
| **Write component** | Component Guidelines |
|
|
322
|
-
| **Performance optimization** | Performance Guidelines |
|
|
323
|
-
| **Code quality check** | Code Quality Guidelines |
|
|
332
|
+
| **New feature module** | Directory Structure | \`directory-structure\` |
|
|
333
|
+
| **Write Query Hook** | Hook Guidelines > Query Hook | \`query-hook-guidelines\` |
|
|
334
|
+
| **Write Mutation Hook** | Hook Guidelines > Mutation Hook | \`mutation-hook-guidelines\` |
|
|
335
|
+
| **API calls** | API Call Guidelines | \`api-calls\` |
|
|
336
|
+
| **State management** | State Management Guidelines | \`state-management\` |
|
|
337
|
+
| **Write component** | Component Guidelines | \`component-development\` |
|
|
338
|
+
| **Performance optimization** | Performance Guidelines | \`performance-optimization\` |
|
|
339
|
+
| **Code quality check** | Code Quality Guidelines | \`code-quality\` |
|
|
340
|
+
|
|
341
|
+
## How to Read Sections
|
|
342
|
+
|
|
343
|
+
\\\`\\\`\\\`bash
|
|
344
|
+
# Extract a specific section by ID
|
|
345
|
+
sed -n '/@@@section:query-hook-guidelines/,/@@@\\\\/section:query-hook-guidelines/p' doc.md
|
|
346
|
+
\\\`\\\`\\\`
|
|
324
347
|
|
|
325
348
|
## By Development Scenario
|
|
326
349
|
|
|
327
350
|
### Scenario 1: Create a new Query Hook
|
|
328
351
|
|
|
329
352
|
**Required Reading**:
|
|
330
|
-
- Type Safety > Backend Contract Types (
|
|
331
|
-
- Hook Guidelines > Query Hook (
|
|
353
|
+
- Type Safety > Backend Contract Types (\`backend-contract-types\`)
|
|
354
|
+
- Hook Guidelines > Query Hook (\`query-hook-guidelines\`)
|
|
332
355
|
|
|
333
356
|
### Scenario 2: Create a new UI Component
|
|
334
357
|
|
|
335
358
|
**Required Reading**:
|
|
336
|
-
- Component Guidelines
|
|
337
|
-
- Component Guidelines > Styling Standards (L202-220)
|
|
359
|
+
- Component Guidelines (\`component-development\`)
|
|
338
360
|
|
|
339
361
|
[... add more scenarios based on project needs ...]
|
|
340
362
|
|
|
341
363
|
## Core Rules Quick Reference
|
|
342
364
|
|
|
343
|
-
| Rule |
|
|
344
|
-
|
|
345
|
-
| Import types from backend, don't redefine |
|
|
346
|
-
|
|
|
347
|
-
| [other core rules...] |
|
|
365
|
+
| Rule | Section ID |
|
|
366
|
+
|------|------------|
|
|
367
|
+
| Import types from backend, don't redefine | \`backend-contract-types\` |
|
|
368
|
+
| Query Hook patterns | \`query-hook-guidelines\` |
|
|
369
|
+
| [other core rules...] | \`section-id\` |
|
|
348
370
|
|
|
349
371
|
## Reference Example Files
|
|
350
372
|
|
|
@@ -360,19 +382,18 @@ This index helps you quickly locate the guidelines you need based on your task t
|
|
|
360
382
|
## Output Requirements
|
|
361
383
|
|
|
362
384
|
1. **Create directory**: \`mkdir -p workflow/structure/frontend\`
|
|
363
|
-
2. **
|
|
364
|
-
3. **
|
|
365
|
-
4. **Generate index.md
|
|
385
|
+
2. **Write in English**: All documentation must be in English
|
|
386
|
+
3. **Add section markers**: Use \`@@@section:id\` and \`@@@/section:id\` format
|
|
387
|
+
4. **Generate index.md**: Reference sections by ID, not line numbers
|
|
366
388
|
5. **Use actual project code**: Examples should come from real project files
|
|
367
389
|
|
|
368
390
|
---
|
|
369
391
|
|
|
370
392
|
## Completion Confirmation
|
|
371
393
|
|
|
372
|
-
- [ ] \`doc.md\` created with detailed guidelines
|
|
373
|
-
- [ ]
|
|
374
|
-
- [ ] \`index.md\` created with
|
|
375
|
-
- [ ] Line numbers verified to match actual doc.md content
|
|
394
|
+
- [ ] \`doc.md\` created with detailed guidelines in **English**
|
|
395
|
+
- [ ] Section markers added to all major sections
|
|
396
|
+
- [ ] \`index.md\` created with section IDs
|
|
376
397
|
- [ ] Example code from actual project files
|
|
377
398
|
- [ ] Covers all major patterns used in project
|
|
378
399
|
|
|
@@ -384,18 +405,15 @@ function getGenerateBackendStructureTemplate() {
|
|
|
384
405
|
|
|
385
406
|
## Task Description
|
|
386
407
|
|
|
387
|
-
Scan the project's backend code, analyze existing code patterns and tech stack, then auto-generate \`doc.md\` (detailed guidelines)
|
|
408
|
+
Scan the project's backend code, analyze existing code patterns and tech stack, then auto-generate \`doc.md\` (detailed guidelines) with section markers, then generate \`index.md\` (navigation index) using section IDs.
|
|
388
409
|
|
|
389
410
|
---
|
|
390
411
|
|
|
391
|
-
## ⚠️ CRITICAL:
|
|
392
|
-
|
|
393
|
-
**MUST follow this order:**
|
|
394
|
-
1. **First**: Generate \`doc.md\` (detailed guidelines)
|
|
395
|
-
2. **Then**: Run \`./workflow/scripts/extract-md-headings.sh doc.md -r\` to get accurate line numbers
|
|
396
|
-
3. **Finally**: Generate \`index.md\` using the line numbers from step 2
|
|
412
|
+
## ⚠️ CRITICAL: Requirements
|
|
397
413
|
|
|
398
|
-
|
|
414
|
+
1. **Language**: All documentation must be written in **English**
|
|
415
|
+
2. **Section Markers**: Use \`@@@section:kebab-case-id\` and \`@@@/section:kebab-case-id\` to mark sections
|
|
416
|
+
3. **Index**: Reference sections by ID, not line numbers
|
|
399
417
|
|
|
400
418
|
---
|
|
401
419
|
|
|
@@ -473,9 +491,7 @@ find [backend-dir] -type d -maxdepth 3 | head -50
|
|
|
473
491
|
- Log level usage
|
|
474
492
|
- Structured log format
|
|
475
493
|
|
|
476
|
-
### Step 4: Generate \`doc.md\`
|
|
477
|
-
|
|
478
|
-
⚠️ **Generate doc.md BEFORE index.md**
|
|
494
|
+
### Step 4: Generate \`doc.md\` with Section Markers
|
|
479
495
|
|
|
480
496
|
Create directory and generate detailed guidelines:
|
|
481
497
|
|
|
@@ -490,13 +506,18 @@ mkdir -p workflow/structure/backend
|
|
|
490
506
|
|
|
491
507
|
These guidelines define the development standards and best practices for [Project Name] backend modules.
|
|
492
508
|
|
|
509
|
+
@@@section:directory-structure
|
|
493
510
|
## 📁 Directory Structure Guidelines
|
|
494
511
|
|
|
495
512
|
### Module Organization
|
|
496
513
|
[describe directory structure]
|
|
497
514
|
|
|
515
|
+
@@@/section:directory-structure
|
|
516
|
+
|
|
517
|
+
@@@section:type-safety
|
|
498
518
|
## 🎯 Type Safety Guidelines
|
|
499
519
|
|
|
520
|
+
@@@section:non-null-assertion
|
|
500
521
|
### 1. TypeScript Non-null Assertion Rules
|
|
501
522
|
|
|
502
523
|
**Never use non-null assertion operator (\`!\`), use local variable extraction instead**
|
|
@@ -522,10 +543,16 @@ if (user.profileId) {
|
|
|
522
543
|
}
|
|
523
544
|
\\\`\\\`\\\`
|
|
524
545
|
|
|
546
|
+
@@@/section:non-null-assertion
|
|
547
|
+
|
|
548
|
+
@@@section:zod-schema
|
|
525
549
|
### 2. Zod Schema Definition
|
|
526
550
|
|
|
527
551
|
**All API endpoints must use Zod to define input/output schemas**
|
|
528
552
|
|
|
553
|
+
@@@/section:zod-schema
|
|
554
|
+
|
|
555
|
+
@@@section:response-format
|
|
529
556
|
### 3. Response Format Standards
|
|
530
557
|
|
|
531
558
|
#### Single Operation Response
|
|
@@ -534,7 +561,6 @@ if (user.profileId) {
|
|
|
534
561
|
success: boolean, // operation result
|
|
535
562
|
reason?: string, // success message or failure reason
|
|
536
563
|
error?: string, // detailed error info
|
|
537
|
-
// ... other domain-specific fields
|
|
538
564
|
}
|
|
539
565
|
\\\`\\\`\\\`
|
|
540
566
|
|
|
@@ -549,27 +575,30 @@ if (user.profileId) {
|
|
|
549
575
|
}
|
|
550
576
|
\\\`\\\`\\\`
|
|
551
577
|
|
|
578
|
+
@@@/section:response-format
|
|
579
|
+
|
|
580
|
+
@@@/section:type-safety
|
|
581
|
+
|
|
582
|
+
@@@section:logging
|
|
552
583
|
## 🪵 Logging Guidelines
|
|
553
584
|
|
|
554
585
|
### Use Structured Logging
|
|
555
586
|
|
|
556
587
|
**Never use \`console.log\` or \`console.error\`**
|
|
557
588
|
|
|
558
|
-
|
|
559
|
-
[code example using logger]
|
|
589
|
+
[code examples]
|
|
560
590
|
|
|
561
|
-
|
|
562
|
-
[anti-pattern example]
|
|
591
|
+
@@@/section:logging
|
|
563
592
|
|
|
593
|
+
@@@section:database-operations
|
|
564
594
|
## 🗄️ Database Operation Guidelines
|
|
565
595
|
|
|
596
|
+
@@@section:no-loops
|
|
566
597
|
### 🚨 Never Execute Database Operations in Loops
|
|
567
598
|
|
|
568
|
-
|
|
569
|
-
[anti-pattern code example]
|
|
599
|
+
[anti-pattern and correct pattern examples]
|
|
570
600
|
|
|
571
|
-
|
|
572
|
-
[correct pattern code example]
|
|
601
|
+
@@@/section:no-loops
|
|
573
602
|
|
|
574
603
|
### Batch Insert
|
|
575
604
|
[code example]
|
|
@@ -577,6 +606,9 @@ if (user.profileId) {
|
|
|
577
606
|
### Conflict Handling
|
|
578
607
|
[code example with onConflictDoUpdate]
|
|
579
608
|
|
|
609
|
+
@@@/section:database-operations
|
|
610
|
+
|
|
611
|
+
@@@section:error-handling
|
|
580
612
|
## 🎨 Error Handling
|
|
581
613
|
|
|
582
614
|
### Graceful Degradation
|
|
@@ -585,6 +617,9 @@ if (user.profileId) {
|
|
|
585
617
|
### Promise.allSettled
|
|
586
618
|
[code example for batch operations]
|
|
587
619
|
|
|
620
|
+
@@@/section:error-handling
|
|
621
|
+
|
|
622
|
+
@@@section:router-guidelines
|
|
588
623
|
## 🎯 Router Guidelines
|
|
589
624
|
|
|
590
625
|
### Hono Router Example
|
|
@@ -593,6 +628,9 @@ if (user.profileId) {
|
|
|
593
628
|
### oRPC Router Example
|
|
594
629
|
[code example]
|
|
595
630
|
|
|
631
|
+
@@@/section:router-guidelines
|
|
632
|
+
|
|
633
|
+
@@@section:checklist
|
|
596
634
|
## ✅ Checklist
|
|
597
635
|
|
|
598
636
|
Before committing, confirm:
|
|
@@ -608,80 +646,70 @@ Before committing, confirm:
|
|
|
608
646
|
- [ ] \`pnpm lint\` passes
|
|
609
647
|
- [ ] \`pnpm type-check\` passes
|
|
610
648
|
|
|
649
|
+
@@@/section:checklist
|
|
650
|
+
|
|
651
|
+
@@@section:reference-examples
|
|
611
652
|
## 📚 Reference Examples
|
|
612
653
|
|
|
613
654
|
| Feature | Reference File |
|
|
614
655
|
|---------|----------------|
|
|
615
656
|
| [Feature1] | \`[path]\` |
|
|
616
|
-
\`\`\`
|
|
617
|
-
|
|
618
|
-
### Step 5: Extract Line Numbers with Script
|
|
619
657
|
|
|
620
|
-
|
|
621
|
-
|
|
622
|
-
\`\`\`bash
|
|
623
|
-
# Get all headings with line number ranges
|
|
624
|
-
./workflow/scripts/extract-md-headings.sh workflow/structure/backend/doc.md -l 1,2,3 -r
|
|
625
|
-
|
|
626
|
-
# Example output:
|
|
627
|
-
# Level Line Range Title
|
|
628
|
-
# ---- ---- ---- ----
|
|
629
|
-
# 1 1 L1-15 Backend Development Guidelines
|
|
630
|
-
# 2 5 L5-28 📁 Directory Structure Guidelines
|
|
631
|
-
# 2 30 L30-85 🎯 Type Safety Guidelines
|
|
632
|
-
# 2 87 L87-120 🪵 Logging Guidelines
|
|
633
|
-
# ...
|
|
658
|
+
@@@/section:reference-examples
|
|
634
659
|
\`\`\`
|
|
635
660
|
|
|
636
|
-
|
|
637
|
-
|
|
638
|
-
### Step 6: Generate \`index.md\` with Accurate Line Numbers
|
|
639
|
-
|
|
640
|
-
⚠️ **Use the EXACT line numbers from Step 5**
|
|
661
|
+
### Step 5: Generate \`index.md\` with Section IDs
|
|
641
662
|
|
|
642
663
|
\`\`\`markdown
|
|
643
664
|
# Backend Development Guidelines Index
|
|
644
665
|
|
|
645
666
|
> **Full Documentation**: See \`./doc.md\` for detailed guidelines
|
|
646
667
|
|
|
647
|
-
This index helps you quickly locate the sections
|
|
668
|
+
This index helps you quickly locate the sections needed for backend tasks.
|
|
648
669
|
|
|
649
670
|
## Quick Navigation
|
|
650
671
|
|
|
651
|
-
| Section | Key Content |
|
|
672
|
+
| Section | Key Content | Section ID |
|
|
652
673
|
|---------|-------------|------------|
|
|
653
|
-
| 📁 Directory Structure | Module directory template, examples |
|
|
654
|
-
| 🎯 Type Safety Guidelines | TypeScript rules, Zod Schema |
|
|
655
|
-
| 🪵 Logging Guidelines | Structured logging, no console |
|
|
656
|
-
| 🗄️ Database
|
|
657
|
-
| 🎨 Error Handling | Graceful degradation, response format |
|
|
658
|
-
| 🎯 Router Guidelines | Route definitions, middleware |
|
|
659
|
-
| ✅ Checklist | Pre-commit checks |
|
|
674
|
+
| 📁 Directory Structure | Module directory template, examples | \`directory-structure\` |
|
|
675
|
+
| 🎯 Type Safety Guidelines | TypeScript rules, Zod Schema | \`type-safety\` |
|
|
676
|
+
| 🪵 Logging Guidelines | Structured logging, no console | \`logging\` |
|
|
677
|
+
| 🗄️ Database Operations | Query directory, batch operations | \`database-operations\` |
|
|
678
|
+
| 🎨 Error Handling | Graceful degradation, response format | \`error-handling\` |
|
|
679
|
+
| 🎯 Router Guidelines | Route definitions, middleware | \`router-guidelines\` |
|
|
680
|
+
| ✅ Checklist | Pre-commit checks | \`checklist\` |
|
|
681
|
+
|
|
682
|
+
## How to Read Sections
|
|
683
|
+
|
|
684
|
+
\\\`\\\`\\\`bash
|
|
685
|
+
# Extract a specific section by ID
|
|
686
|
+
sed -n '/@@@section:database-operations/,/@@@\\\\/section:database-operations/p' doc.md
|
|
687
|
+
\\\`\\\`\\\`
|
|
660
688
|
|
|
661
689
|
## By Scenario
|
|
662
690
|
|
|
663
691
|
### Scenario 1: Create New API Module
|
|
664
|
-
- Required: 📁 Directory Structure (
|
|
665
|
-
- Also read: 🎯 Type Safety Guidelines (
|
|
692
|
+
- Required: 📁 Directory Structure (\`directory-structure\`)
|
|
693
|
+
- Also read: 🎯 Type Safety Guidelines (\`type-safety\`)
|
|
666
694
|
|
|
667
695
|
### Scenario 2: Write Database Operations
|
|
668
|
-
- Required: 🗄️ Database
|
|
669
|
-
- Reference: 🎨 Error Handling (
|
|
696
|
+
- Required: 🗄️ Database Operations (\`database-operations\`)
|
|
697
|
+
- Reference: 🎨 Error Handling (\`error-handling\`)
|
|
670
698
|
|
|
671
699
|
### Scenario 3: Add New Endpoint
|
|
672
|
-
- Required: 🎯 Router Guidelines (
|
|
673
|
-
- Reference: 🎯 Type Safety Guidelines (
|
|
700
|
+
- Required: 🎯 Router Guidelines (\`router-guidelines\`)
|
|
701
|
+
- Reference: 🎯 Type Safety Guidelines (\`type-safety\`)
|
|
674
702
|
|
|
675
703
|
[... add more scenarios based on project needs ...]
|
|
676
704
|
|
|
677
705
|
## Core Rules Quick Reference
|
|
678
706
|
|
|
679
|
-
| Rule |
|
|
680
|
-
|
|
681
|
-
| **All inputs/outputs must have Zod Schema** |
|
|
682
|
-
| **Response body must include success + reason** |
|
|
683
|
-
| **Never await database in loops** |
|
|
684
|
-
|
|
|
707
|
+
| Rule | Section ID |
|
|
708
|
+
|------|------------|
|
|
709
|
+
| **All inputs/outputs must have Zod Schema** | \`zod-schema\` |
|
|
710
|
+
| **Response body must include success + reason** | \`response-format\` |
|
|
711
|
+
| **Never await database in loops** | \`no-loops\` |
|
|
712
|
+
| **No non-null assertions** | \`non-null-assertion\` |
|
|
685
713
|
|
|
686
714
|
## Reference Examples
|
|
687
715
|
|
|
@@ -697,19 +725,18 @@ This index helps you quickly locate the sections and line numbers needed for bac
|
|
|
697
725
|
## Output Requirements
|
|
698
726
|
|
|
699
727
|
1. **Create directory**: \`mkdir -p workflow/structure/backend\`
|
|
700
|
-
2. **
|
|
701
|
-
3. **
|
|
702
|
-
4. **Generate index.md
|
|
728
|
+
2. **Write in English**: All documentation must be in English
|
|
729
|
+
3. **Add section markers**: Use \`@@@section:id\` and \`@@@/section:id\` format
|
|
730
|
+
4. **Generate index.md**: Reference sections by ID, not line numbers
|
|
703
731
|
5. **Use actual project code**: Examples should come from real project files
|
|
704
732
|
|
|
705
733
|
---
|
|
706
734
|
|
|
707
735
|
## Completion Confirmation
|
|
708
736
|
|
|
709
|
-
- [ ] \`doc.md\` created with detailed guidelines
|
|
710
|
-
- [ ]
|
|
711
|
-
- [ ] \`index.md\` created with
|
|
712
|
-
- [ ] Line numbers verified to match actual doc.md content
|
|
737
|
+
- [ ] \`doc.md\` created with detailed guidelines in **English**
|
|
738
|
+
- [ ] Section markers added to all major sections
|
|
739
|
+
- [ ] \`index.md\` created with section IDs
|
|
713
740
|
- [ ] Example code from actual project files
|
|
714
741
|
- [ ] Covers all major patterns used in project
|
|
715
742
|
|
|
@@ -720,8 +747,8 @@ function getBeforeFrontendDevTemplate() {
|
|
|
720
747
|
return `Read the frontend development guidelines before starting your development task.
|
|
721
748
|
|
|
722
749
|
Execute these steps:
|
|
723
|
-
1. Read \`workflow/structure/frontend/index.md\` to find relevant
|
|
724
|
-
2.
|
|
750
|
+
1. Read \`workflow/structure/frontend/index.md\` to find relevant section IDs for your task
|
|
751
|
+
2. Extract specific sections: \`sed -n '/@@@section:ID/,/@@@\\/section:ID/p' workflow/structure/frontend/doc.md\`
|
|
725
752
|
3. Understand the coding standards and patterns you need to follow
|
|
726
753
|
4. Then proceed with your development plan
|
|
727
754
|
|
|
@@ -732,8 +759,8 @@ function getBeforeBackendDevTemplate() {
|
|
|
732
759
|
return `Read the backend development guidelines before starting your development task.
|
|
733
760
|
|
|
734
761
|
Execute these steps:
|
|
735
|
-
1. Read \`workflow/structure/backend/index.md\` to find relevant
|
|
736
|
-
2.
|
|
762
|
+
1. Read \`workflow/structure/backend/index.md\` to find relevant section IDs for your task
|
|
763
|
+
2. Extract specific sections: \`sed -n '/@@@section:ID/,/@@@\\/section:ID/p' workflow/structure/backend/doc.md\`
|
|
737
764
|
3. Understand the coding standards and patterns you need to follow
|
|
738
765
|
4. Then proceed with your development plan
|
|
739
766
|
|
|
@@ -748,11 +775,13 @@ Execute these steps:
|
|
|
748
775
|
2. Check if any new patterns or conventions were introduced
|
|
749
776
|
3. Read current guidelines: \`workflow/structure/frontend/doc.md\`
|
|
750
777
|
4. If updates are needed:
|
|
751
|
-
- Update \`doc.md\` with new patterns or rules
|
|
752
|
-
-
|
|
753
|
-
- Update \`index.md\` with
|
|
778
|
+
- Update \`doc.md\` with new patterns or rules (in **English**)
|
|
779
|
+
- Add section markers: \`@@@section:kebab-case-id\` and \`@@@/section:kebab-case-id\`
|
|
780
|
+
- Update \`index.md\` with new section IDs
|
|
754
781
|
5. Report what was updated (if anything)
|
|
755
782
|
|
|
783
|
+
**Language requirement**: All documentation must be written in **English**.
|
|
784
|
+
|
|
756
785
|
Only update if there are genuine new patterns worth documenting.
|
|
757
786
|
`;
|
|
758
787
|
}
|
|
@@ -764,12 +793,54 @@ Execute these steps:
|
|
|
764
793
|
2. Check if any new patterns or conventions were introduced
|
|
765
794
|
3. Read current guidelines: \`workflow/structure/backend/doc.md\`
|
|
766
795
|
4. If updates are needed:
|
|
767
|
-
- Update \`doc.md\` with new patterns or rules
|
|
768
|
-
-
|
|
769
|
-
- Update \`index.md\` with
|
|
796
|
+
- Update \`doc.md\` with new patterns or rules (in **English**)
|
|
797
|
+
- Add section markers: \`@@@section:kebab-case-id\` and \`@@@/section:kebab-case-id\`
|
|
798
|
+
- Update \`index.md\` with new section IDs
|
|
770
799
|
5. Report what was updated (if anything)
|
|
771
800
|
|
|
801
|
+
**Language requirement**: All documentation must be written in **English**.
|
|
802
|
+
|
|
772
803
|
Only update if there are genuine new patterns worth documenting.
|
|
773
804
|
`;
|
|
774
805
|
}
|
|
806
|
+
function getRecordQuestionTemplate() {
|
|
807
|
+
return `Record the problem you just solved in \`workflow/big-question/\` directory.
|
|
808
|
+
|
|
809
|
+
Create a new markdown file with a descriptive name (e.g., \`issue-name.md\`) that documents:
|
|
810
|
+
|
|
811
|
+
1. **Problem Description**: What was the issue?
|
|
812
|
+
2. **Initial Attempts**: What did you try first?
|
|
813
|
+
3. **Why Initial Attempts Failed**: Why didn't the first approaches work?
|
|
814
|
+
4. **Final Solution**: What ultimately solved the problem?
|
|
815
|
+
5. **Why It Worked**: What made this solution effective?
|
|
816
|
+
6. **Key Insight**: How did you arrive at this solution? What was the "aha" moment?
|
|
817
|
+
|
|
818
|
+
This creates a knowledge base of solved problems for future reference, helping you and other developers avoid the same pitfalls.
|
|
819
|
+
|
|
820
|
+
**Format**:
|
|
821
|
+
\`\`\`markdown
|
|
822
|
+
# [Problem Title]
|
|
823
|
+
|
|
824
|
+
## Problem Description
|
|
825
|
+
[Describe the issue clearly]
|
|
826
|
+
|
|
827
|
+
## Initial Attempts
|
|
828
|
+
1. [First attempt]
|
|
829
|
+
2. [Second attempt]
|
|
830
|
+
...
|
|
831
|
+
|
|
832
|
+
## Why Initial Attempts Failed
|
|
833
|
+
[Explain why each attempt didn't work]
|
|
834
|
+
|
|
835
|
+
## Final Solution
|
|
836
|
+
[Describe what fixed the problem]
|
|
837
|
+
|
|
838
|
+
## Why It Worked
|
|
839
|
+
[Explain the root cause and why this solution addresses it]
|
|
840
|
+
|
|
841
|
+
## Key Insight
|
|
842
|
+
[What did you learn? How can this be applied in the future?]
|
|
843
|
+
\`\`\`
|
|
844
|
+
`;
|
|
845
|
+
}
|
|
775
846
|
//# sourceMappingURL=templates.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"templates.js","sourceRoot":"","sources":["../../src/configurators/templates.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAMH,MAAM,UAAU,mBAAmB;IAClC,OAAO;QACN,YAAY,EAAE,oBAAoB,EAAE;QACpC,gBAAgB,EAAE,wBAAwB,EAAE;QAC5C,eAAe,EAAE,uBAAuB,EAAE;QAC1C,mBAAmB,EAAE,0BAA0B,EAAE;QACjD,mBAAmB,EAAE,2BAA2B,EAAE;QAClD,6BAA6B,EAAE,oCAAoC,EAAE;QACrE,4BAA4B,EAAE,mCAAmC,EAAE;QACnE,qBAAqB,EAAE,4BAA4B,EAAE;QACrD,oBAAoB,EAAE,2BAA2B,EAAE;QACnD,2BAA2B,EAAE,kCAAkC,EAAE;QACjE,0BAA0B,EAAE,iCAAiC,EAAE;KAC/D,CAAC;AACH,CAAC;AAED,SAAS,oBAAoB;IAC5B,OAAO;;;;;;;;;CASP,CAAC;AACF,CAAC;AAED,SAAS,wBAAwB;IAChC,OAAO;;;;;;;;CAQP,CAAC;AACF,CAAC;AAED,SAAS,uBAAuB;IAC/B,OAAO;;;;;;;;CAQP,CAAC;AACF,CAAC;AAED,SAAS,0BAA0B;IAClC,OAAO;;;;;;;;;;;;;;;;;;;CAmBP,CAAC;AACF,CAAC;AAED,SAAS,2BAA2B;IACnC,OAAO;;;;;;;;;;;;;;;;;;;;;;;;CAwBP,CAAC;AACF,CAAC;AAED,SAAS,oCAAoC;IAC5C,OAAO
|
|
1
|
+
{"version":3,"file":"templates.js","sourceRoot":"","sources":["../../src/configurators/templates.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAMH,MAAM,UAAU,mBAAmB;IAClC,OAAO;QACN,YAAY,EAAE,oBAAoB,EAAE;QACpC,gBAAgB,EAAE,wBAAwB,EAAE;QAC5C,eAAe,EAAE,uBAAuB,EAAE;QAC1C,mBAAmB,EAAE,0BAA0B,EAAE;QACjD,iBAAiB,EAAE,yBAAyB,EAAE;QAC9C,mBAAmB,EAAE,2BAA2B,EAAE;QAClD,6BAA6B,EAAE,oCAAoC,EAAE;QACrE,4BAA4B,EAAE,mCAAmC,EAAE;QACnE,qBAAqB,EAAE,4BAA4B,EAAE;QACrD,oBAAoB,EAAE,2BAA2B,EAAE;QACnD,2BAA2B,EAAE,kCAAkC,EAAE;QACjE,0BAA0B,EAAE,iCAAiC,EAAE;KAC/D,CAAC;AACH,CAAC;AAED,SAAS,oBAAoB;IAC5B,OAAO;;;;;;;;;CASP,CAAC;AACF,CAAC;AAED,SAAS,wBAAwB;IAChC,OAAO;;;;;;;;CAQP,CAAC;AACF,CAAC;AAED,SAAS,uBAAuB;IAC/B,OAAO;;;;;;;;CAQP,CAAC;AACF,CAAC;AAED,SAAS,0BAA0B;IAClC,OAAO;;;;;;;;;;;;;;;;;;;CAmBP,CAAC;AACF,CAAC;AAED,SAAS,2BAA2B;IACnC,OAAO;;;;;;;;;;;;;;;;;;;;;;;;CAwBP,CAAC;AACF,CAAC;AAED,SAAS,oCAAoC;IAC5C,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAwSP,CAAC;AACF,CAAC;AAED,SAAS,mCAAmC;IAC3C,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAoVP,CAAC;AACF,CAAC;AAED,SAAS,4BAA4B;IACpC,OAAO;;;;;;;;;CASP,CAAC;AACF,CAAC;AAED,SAAS,2BAA2B;IACnC,OAAO;;;;;;;;;CASP,CAAC;AACF,CAAC;AAED,SAAS,kCAAkC;IAC1C,OAAO;;;;;;;;;;;;;;;CAeP,CAAC;AACF,CAAC;AAED,SAAS,iCAAiC;IACzC,OAAO;;;;;;;;;;;;;;;CAeP,CAAC;AACF,CAAC;AAED,SAAS,yBAAyB;IACjC,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAqCP,CAAC;AACF,CAAC"}
|
|
@@ -491,25 +491,32 @@ This index helps you quickly locate the guidelines you need based on your task t
|
|
|
491
491
|
|
|
492
492
|
## Quick Navigation
|
|
493
493
|
|
|
494
|
-
| Task | Section |
|
|
494
|
+
| Task | Section | Section ID |
|
|
495
495
|
|------|---------|------------|
|
|
496
|
-
| **New feature module** | Directory Structure |
|
|
497
|
-
| **Write Query Hook** | Hook Guidelines > Query |
|
|
498
|
-
| **Write Mutation Hook** | Hook Guidelines > Mutation |
|
|
499
|
-
| **API calls** | API Guidelines |
|
|
500
|
-
| **State management** | State Guidelines |
|
|
501
|
-
| **Write component** | Component Guidelines |
|
|
502
|
-
| **Performance optimization** | Performance Guidelines |
|
|
503
|
-
| **Code quality check** | Quality Guidelines |
|
|
496
|
+
| **New feature module** | Directory Structure | \`directory-structure\` |
|
|
497
|
+
| **Write Query Hook** | Hook Guidelines > Query | \`query-hook\` |
|
|
498
|
+
| **Write Mutation Hook** | Hook Guidelines > Mutation | \`mutation-hook\` |
|
|
499
|
+
| **API calls** | API Guidelines | \`api-guidelines\` |
|
|
500
|
+
| **State management** | State Guidelines | \`state-management\` |
|
|
501
|
+
| **Write component** | Component Guidelines | \`component-guidelines\` |
|
|
502
|
+
| **Performance optimization** | Performance Guidelines | \`performance-guidelines\` |
|
|
503
|
+
| **Code quality check** | Quality Guidelines | \`quality-guidelines\` |
|
|
504
|
+
|
|
505
|
+
## How to Read Sections
|
|
506
|
+
|
|
507
|
+
\`\`\`bash
|
|
508
|
+
# Extract a specific section by ID
|
|
509
|
+
sed -n '/@@@section:query-hook/,/@@@\\/section:query-hook/p' doc.md
|
|
510
|
+
\`\`\`
|
|
504
511
|
|
|
505
512
|
## Core Rules
|
|
506
513
|
|
|
507
|
-
| Rule |
|
|
508
|
-
|
|
509
|
-
| Import types from backend |
|
|
510
|
-
| Use semantic HTML |
|
|
511
|
-
| Use Next.js Image |
|
|
512
|
-
| No non-null assertions |
|
|
514
|
+
| Rule | Section ID |
|
|
515
|
+
|------|------------|
|
|
516
|
+
| Import types from backend | \`type-safety\` |
|
|
517
|
+
| Use semantic HTML | \`semantic-html\` |
|
|
518
|
+
| Use Next.js Image | \`image-optimization\` |
|
|
519
|
+
| No non-null assertions | \`quality-guidelines\` |
|
|
513
520
|
|
|
514
521
|
## Reference Files
|
|
515
522
|
|
|
@@ -521,7 +528,7 @@ This index helps you quickly locate the guidelines you need based on your task t
|
|
|
521
528
|
|
|
522
529
|
---
|
|
523
530
|
|
|
524
|
-
|
|
531
|
+
**Language**: All documentation must be written in **English**.
|
|
525
532
|
`;
|
|
526
533
|
const frontendDoc = `# Frontend Development Guidelines
|
|
527
534
|
|
|
@@ -529,7 +536,8 @@ Fill in the line numbers and reference files based on your project's doc.md cont
|
|
|
529
536
|
|
|
530
537
|
---
|
|
531
538
|
|
|
532
|
-
|
|
539
|
+
@@@section:directory-structure
|
|
540
|
+
## 1. Directory Structure
|
|
533
541
|
|
|
534
542
|
\`\`\`
|
|
535
543
|
modules/
|
|
@@ -540,9 +548,12 @@ modules/
|
|
|
540
548
|
│ └── types.ts # Type definitions
|
|
541
549
|
\`\`\`
|
|
542
550
|
|
|
551
|
+
@@@/section:directory-structure
|
|
552
|
+
|
|
543
553
|
---
|
|
544
554
|
|
|
545
|
-
|
|
555
|
+
@@@section:type-safety
|
|
556
|
+
## 2. Type Safety
|
|
546
557
|
|
|
547
558
|
### Import Types from Backend
|
|
548
559
|
|
|
@@ -559,11 +570,15 @@ interface User {
|
|
|
559
570
|
}
|
|
560
571
|
\`\`\`
|
|
561
572
|
|
|
573
|
+
@@@/section:type-safety
|
|
574
|
+
|
|
562
575
|
---
|
|
563
576
|
|
|
564
|
-
|
|
577
|
+
@@@section:hook-guidelines
|
|
578
|
+
## 3. Hook Guidelines
|
|
565
579
|
|
|
566
|
-
|
|
580
|
+
@@@section:query-hook
|
|
581
|
+
### Query Hook
|
|
567
582
|
|
|
568
583
|
\`\`\`typescript
|
|
569
584
|
// Template for query hooks
|
|
@@ -577,7 +592,10 @@ export function useExample() {
|
|
|
577
592
|
}
|
|
578
593
|
\`\`\`
|
|
579
594
|
|
|
580
|
-
|
|
595
|
+
@@@/section:query-hook
|
|
596
|
+
|
|
597
|
+
@@@section:mutation-hook
|
|
598
|
+
### Mutation Hook
|
|
581
599
|
|
|
582
600
|
\`\`\`typescript
|
|
583
601
|
// Template for mutation hooks
|
|
@@ -595,22 +613,34 @@ export function useUpdateExample() {
|
|
|
595
613
|
}
|
|
596
614
|
\`\`\`
|
|
597
615
|
|
|
616
|
+
@@@/section:mutation-hook
|
|
617
|
+
|
|
618
|
+
@@@/section:hook-guidelines
|
|
619
|
+
|
|
598
620
|
---
|
|
599
621
|
|
|
600
|
-
|
|
622
|
+
@@@section:api-guidelines
|
|
623
|
+
## 4. API Guidelines
|
|
601
624
|
|
|
602
625
|
(Add your project-specific API guidelines here)
|
|
603
626
|
|
|
627
|
+
@@@/section:api-guidelines
|
|
628
|
+
|
|
604
629
|
---
|
|
605
630
|
|
|
606
|
-
|
|
631
|
+
@@@section:state-management
|
|
632
|
+
## 5. State Management
|
|
607
633
|
|
|
608
634
|
(Add your project-specific state management guidelines here)
|
|
609
635
|
|
|
636
|
+
@@@/section:state-management
|
|
637
|
+
|
|
610
638
|
---
|
|
611
639
|
|
|
612
|
-
|
|
640
|
+
@@@section:component-guidelines
|
|
641
|
+
## 6. Component Guidelines
|
|
613
642
|
|
|
643
|
+
@@@section:semantic-html
|
|
614
644
|
### Semantic HTML
|
|
615
645
|
|
|
616
646
|
Use proper HTML elements:
|
|
@@ -623,6 +653,9 @@ Use proper HTML elements:
|
|
|
623
653
|
<div role="button" onClick={handleClick}>Click me</div>
|
|
624
654
|
\`\`\`
|
|
625
655
|
|
|
656
|
+
@@@/section:semantic-html
|
|
657
|
+
|
|
658
|
+
@@@section:image-optimization
|
|
626
659
|
### Image Optimization
|
|
627
660
|
|
|
628
661
|
Use Next.js Image component:
|
|
@@ -636,15 +669,23 @@ import Image from 'next/image';
|
|
|
636
669
|
<img src="/logo.png" alt="Logo" />
|
|
637
670
|
\`\`\`
|
|
638
671
|
|
|
672
|
+
@@@/section:image-optimization
|
|
673
|
+
|
|
674
|
+
@@@/section:component-guidelines
|
|
675
|
+
|
|
639
676
|
---
|
|
640
677
|
|
|
641
|
-
|
|
678
|
+
@@@section:performance-guidelines
|
|
679
|
+
## 7. Performance Guidelines
|
|
642
680
|
|
|
643
681
|
(Add your project-specific performance guidelines here)
|
|
644
682
|
|
|
683
|
+
@@@/section:performance-guidelines
|
|
684
|
+
|
|
645
685
|
---
|
|
646
686
|
|
|
647
|
-
|
|
687
|
+
@@@section:quality-guidelines
|
|
688
|
+
## 8. Quality Guidelines
|
|
648
689
|
|
|
649
690
|
### Before Every Commit
|
|
650
691
|
|
|
@@ -658,9 +699,11 @@ import Image from 'next/image';
|
|
|
658
699
|
- No \`any\` type
|
|
659
700
|
- No unused imports/variables
|
|
660
701
|
|
|
702
|
+
@@@/section:quality-guidelines
|
|
703
|
+
|
|
661
704
|
---
|
|
662
705
|
|
|
663
|
-
**
|
|
706
|
+
**Language**: All documentation must be written in **English**.
|
|
664
707
|
`;
|
|
665
708
|
// Backend index.md
|
|
666
709
|
const backendIndex = `# Backend Development Guidelines Index
|
|
@@ -671,24 +714,31 @@ This index helps you quickly locate the guidelines you need based on your task t
|
|
|
671
714
|
|
|
672
715
|
## Quick Navigation
|
|
673
716
|
|
|
674
|
-
| Task | Section |
|
|
717
|
+
| Task | Section | Section ID |
|
|
675
718
|
|------|---------|------------|
|
|
676
|
-
| **New API module** | Directory Structure |
|
|
677
|
-
| **Type safety** | Type Safety |
|
|
678
|
-
| **Database operations** | Database Guidelines |
|
|
679
|
-
| **Error handling** | Error Handling |
|
|
680
|
-
| **Logging** | Logging Guidelines |
|
|
681
|
-
| **AI/Prompt** | AI Guidelines |
|
|
682
|
-
| **Code quality** | Quality Guidelines |
|
|
719
|
+
| **New API module** | Directory Structure | \`directory-structure\` |
|
|
720
|
+
| **Type safety** | Type Safety | \`type-safety\` |
|
|
721
|
+
| **Database operations** | Database Guidelines | \`database-guidelines\` |
|
|
722
|
+
| **Error handling** | Error Handling | \`error-handling\` |
|
|
723
|
+
| **Logging** | Logging Guidelines | \`logging-guidelines\` |
|
|
724
|
+
| **AI/Prompt** | AI Guidelines | \`ai-guidelines\` |
|
|
725
|
+
| **Code quality** | Quality Guidelines | \`quality-guidelines\` |
|
|
726
|
+
|
|
727
|
+
## How to Read Sections
|
|
728
|
+
|
|
729
|
+
\`\`\`bash
|
|
730
|
+
# Extract a specific section by ID
|
|
731
|
+
sed -n '/@@@section:database-guidelines/,/@@@\\/section:database-guidelines/p' doc.md
|
|
732
|
+
\`\`\`
|
|
683
733
|
|
|
684
734
|
## Core Rules
|
|
685
735
|
|
|
686
|
-
| Rule |
|
|
687
|
-
|
|
688
|
-
| No non-null assertions |
|
|
689
|
-
| All inputs/outputs need Zod Schema |
|
|
690
|
-
| Use structured logging |
|
|
691
|
-
| No await in loops |
|
|
736
|
+
| Rule | Section ID |
|
|
737
|
+
|------|------------|
|
|
738
|
+
| No non-null assertions | \`non-null-assertion\` |
|
|
739
|
+
| All inputs/outputs need Zod Schema | \`zod-schema\` |
|
|
740
|
+
| Use structured logging | \`logging-guidelines\` |
|
|
741
|
+
| No await in loops | \`no-await-in-loops\` |
|
|
692
742
|
|
|
693
743
|
## Reference Files
|
|
694
744
|
|
|
@@ -699,7 +749,7 @@ This index helps you quickly locate the guidelines you need based on your task t
|
|
|
699
749
|
|
|
700
750
|
---
|
|
701
751
|
|
|
702
|
-
|
|
752
|
+
**Language**: All documentation must be written in **English**.
|
|
703
753
|
`;
|
|
704
754
|
const backendDoc = `# Backend Development Guidelines
|
|
705
755
|
|
|
@@ -707,7 +757,8 @@ Fill in the line numbers and reference files based on your project's doc.md cont
|
|
|
707
757
|
|
|
708
758
|
---
|
|
709
759
|
|
|
710
|
-
|
|
760
|
+
@@@section:directory-structure
|
|
761
|
+
## 1. Directory Structure
|
|
711
762
|
|
|
712
763
|
\`\`\`
|
|
713
764
|
packages/api/modules/
|
|
@@ -719,11 +770,15 @@ packages/api/modules/
|
|
|
719
770
|
│ └── *.md
|
|
720
771
|
\`\`\`
|
|
721
772
|
|
|
773
|
+
@@@/section:directory-structure
|
|
774
|
+
|
|
722
775
|
---
|
|
723
776
|
|
|
724
|
-
|
|
777
|
+
@@@section:type-safety
|
|
778
|
+
## 2. Type Safety
|
|
725
779
|
|
|
726
|
-
|
|
780
|
+
@@@section:non-null-assertion
|
|
781
|
+
### No Non-Null Assertions
|
|
727
782
|
|
|
728
783
|
\`\`\`typescript
|
|
729
784
|
// ✅ Good - use local variable
|
|
@@ -737,7 +792,10 @@ const userName = user.name; // Safe access
|
|
|
737
792
|
const userName = user!.name;
|
|
738
793
|
\`\`\`
|
|
739
794
|
|
|
740
|
-
|
|
795
|
+
@@@/section:non-null-assertion
|
|
796
|
+
|
|
797
|
+
@@@section:zod-schema
|
|
798
|
+
### Zod Schema
|
|
741
799
|
|
|
742
800
|
\`\`\`typescript
|
|
743
801
|
// All inputs and outputs need Zod schemas
|
|
@@ -751,11 +809,17 @@ const outputSchema = z.object({
|
|
|
751
809
|
});
|
|
752
810
|
\`\`\`
|
|
753
811
|
|
|
812
|
+
@@@/section:zod-schema
|
|
813
|
+
|
|
814
|
+
@@@/section:type-safety
|
|
815
|
+
|
|
754
816
|
---
|
|
755
817
|
|
|
756
|
-
|
|
818
|
+
@@@section:database-guidelines
|
|
819
|
+
## 3. Database Guidelines
|
|
757
820
|
|
|
758
|
-
|
|
821
|
+
@@@section:no-await-in-loops
|
|
822
|
+
### No Await in Loops
|
|
759
823
|
|
|
760
824
|
\`\`\`typescript
|
|
761
825
|
// ✅ Good - parallel execution
|
|
@@ -769,7 +833,9 @@ for (const id of ids) {
|
|
|
769
833
|
}
|
|
770
834
|
\`\`\`
|
|
771
835
|
|
|
772
|
-
|
|
836
|
+
@@@/section:no-await-in-loops
|
|
837
|
+
|
|
838
|
+
### Batch Operations
|
|
773
839
|
|
|
774
840
|
\`\`\`typescript
|
|
775
841
|
// Use batch insert with conflict handling
|
|
@@ -779,15 +845,21 @@ await db.insert(users).values(data).onConflictDoUpdate({
|
|
|
779
845
|
});
|
|
780
846
|
\`\`\`
|
|
781
847
|
|
|
848
|
+
@@@/section:database-guidelines
|
|
849
|
+
|
|
782
850
|
---
|
|
783
851
|
|
|
784
|
-
|
|
852
|
+
@@@section:error-handling
|
|
853
|
+
## 4. Error Handling
|
|
785
854
|
|
|
786
855
|
(Add your project-specific error handling guidelines here)
|
|
787
856
|
|
|
857
|
+
@@@/section:error-handling
|
|
858
|
+
|
|
788
859
|
---
|
|
789
860
|
|
|
790
|
-
|
|
861
|
+
@@@section:logging-guidelines
|
|
862
|
+
## 5. Logging Guidelines
|
|
791
863
|
|
|
792
864
|
### Use Structured Logging
|
|
793
865
|
|
|
@@ -799,15 +871,21 @@ logger.info('User created', { userId: user.id, email: user.email });
|
|
|
799
871
|
console.log('User created: ' + user.id);
|
|
800
872
|
\`\`\`
|
|
801
873
|
|
|
874
|
+
@@@/section:logging-guidelines
|
|
875
|
+
|
|
802
876
|
---
|
|
803
877
|
|
|
804
|
-
|
|
878
|
+
@@@section:ai-guidelines
|
|
879
|
+
## 6. AI Guidelines
|
|
805
880
|
|
|
806
881
|
(Add your project-specific AI/prompt guidelines here)
|
|
807
882
|
|
|
883
|
+
@@@/section:ai-guidelines
|
|
884
|
+
|
|
808
885
|
---
|
|
809
886
|
|
|
810
|
-
|
|
887
|
+
@@@section:quality-guidelines
|
|
888
|
+
## 7. Quality Guidelines
|
|
811
889
|
|
|
812
890
|
### Before Every Commit
|
|
813
891
|
|
|
@@ -821,9 +899,11 @@ console.log('User created: ' + user.id);
|
|
|
821
899
|
- No \`console.log\` (use logger)
|
|
822
900
|
- No await in loops
|
|
823
901
|
|
|
902
|
+
@@@/section:quality-guidelines
|
|
903
|
+
|
|
824
904
|
---
|
|
825
905
|
|
|
826
|
-
**
|
|
906
|
+
**Language**: All documentation must be written in **English**.
|
|
827
907
|
`;
|
|
828
908
|
fs.writeFileSync(path.join(cwd, "workflow/structure/frontend/index.md"), frontendIndex);
|
|
829
909
|
fs.writeFileSync(path.join(cwd, "workflow/structure/frontend/doc.md"), frontendDoc);
|
|
@@ -955,7 +1035,7 @@ Based on what you'll develop (frontend/backend), read the corresponding guidelin
|
|
|
955
1035
|
cat workflow/structure/frontend/index.md
|
|
956
1036
|
\`\`\`
|
|
957
1037
|
- Find corresponding chapters based on task type (e.g., "New Query Hook", "Write Component")
|
|
958
|
-
- Note down chapter names and
|
|
1038
|
+
- Note down chapter names and **section IDs** (e.g., \`query-hook\`)
|
|
959
1039
|
- This is **mandatory**, not optional
|
|
960
1040
|
|
|
961
1041
|
**Backend Development**:
|
|
@@ -963,29 +1043,27 @@ cat workflow/structure/frontend/index.md
|
|
|
963
1043
|
cat workflow/structure/backend/index.md
|
|
964
1044
|
\`\`\`
|
|
965
1045
|
- Find corresponding chapters based on scenario (e.g., "New API Module", "Write Batch Tasks")
|
|
966
|
-
- Note down chapter names and
|
|
1046
|
+
- Note down chapter names and **section IDs** (e.g., \`database-guidelines\`)
|
|
967
1047
|
- This is **mandatory**, not optional
|
|
968
1048
|
|
|
969
1049
|
### Step 3: Read Specific Guidelines ⚠️ REQUIRED
|
|
970
1050
|
|
|
971
1051
|
**⚠️ CRITICAL: Read detailed guidelines for your specific task**
|
|
972
1052
|
|
|
973
|
-
Based on
|
|
1053
|
+
Based on section IDs found in index, extract specific sections:
|
|
974
1054
|
|
|
975
1055
|
**Frontend**:
|
|
976
1056
|
\`\`\`bash
|
|
977
|
-
#
|
|
978
|
-
|
|
979
|
-
Read workflow/structure/frontend/doc.md --offset 179 --limit 85
|
|
1057
|
+
# Extract specific section by ID
|
|
1058
|
+
sed -n '/@@@section:query-hook/,/@@@\\/section:query-hook/p' workflow/structure/frontend/doc.md
|
|
980
1059
|
\`\`\`
|
|
981
1060
|
- **MUST read** the sections relevant to your task
|
|
982
1061
|
- Do NOT skip this step
|
|
983
1062
|
|
|
984
1063
|
**Backend**:
|
|
985
1064
|
\`\`\`bash
|
|
986
|
-
#
|
|
987
|
-
|
|
988
|
-
Read workflow/structure/backend/doc.md --offset 5 --limit 23
|
|
1065
|
+
# Extract specific section by ID
|
|
1066
|
+
sed -n '/@@@section:database-guidelines/,/@@@\\/section:database-guidelines/p' workflow/structure/backend/doc.md
|
|
989
1067
|
\`\`\`
|
|
990
1068
|
- **MUST read** the sections relevant to your task
|
|
991
1069
|
- Do NOT skip this step
|
|
@@ -1175,6 +1253,7 @@ planned → in-progress → completed
|
|
|
1175
1253
|
7. ⚠️ **Don't** execute \`git commit\` - AI should not commit code
|
|
1176
1254
|
- Only allowed: \`git log\`, \`git status\`, \`git diff\`
|
|
1177
1255
|
- Human is responsible for testing and committing
|
|
1256
|
+
8. **Don't** write \`workflow/structure/\` docs in Chinese - **English only**
|
|
1178
1257
|
|
|
1179
1258
|
---
|
|
1180
1259
|
|
|
@@ -1213,13 +1292,13 @@ git status
|
|
|
1213
1292
|
|
|
1214
1293
|
### Must-read Before Development
|
|
1215
1294
|
|
|
1216
|
-
| Task Type | Must-read Document |
|
|
1295
|
+
| Task Type | Must-read Document | Section ID |
|
|
1217
1296
|
|---------|---------|------|
|
|
1218
|
-
| New Frontend Query Hook | \`frontend/doc.md\` |
|
|
1219
|
-
| New Frontend Mutation Hook | \`frontend/doc.md\` |
|
|
1220
|
-
| New Frontend Component | \`frontend/doc.md\` |
|
|
1221
|
-
| New Backend API | \`backend/doc.md\` |
|
|
1222
|
-
| Database Batch Operations | \`backend/doc.md\` |
|
|
1297
|
+
| New Frontend Query Hook | \`frontend/doc.md\` | \`query-hook\` |
|
|
1298
|
+
| New Frontend Mutation Hook | \`frontend/doc.md\` | \`mutation-hook\` |
|
|
1299
|
+
| New Frontend Component | \`frontend/doc.md\` | \`component-guidelines\` |
|
|
1300
|
+
| New Backend API | \`backend/doc.md\` | \`directory-structure\`, \`type-safety\` |
|
|
1301
|
+
| Database Batch Operations | \`backend/doc.md\` | \`database-guidelines\` |
|
|
1223
1302
|
|
|
1224
1303
|
### Commit Convention
|
|
1225
1304
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workflow.js","sourceRoot":"","sources":["../../src/configurators/workflow.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAAC,GAAW;IACxD,qBAAqB;IACrB,MAAM,IAAI,GAAG;QACZ,UAAU;QACV,kBAAkB;QAClB,yBAAyB;QACzB,oBAAoB;QACpB,6BAA6B;QAC7B,4BAA4B;KAC5B,CAAC;IAEF,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACxB,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACxD,CAAC;IAED,iBAAiB;IACjB,MAAM,aAAa,CAAC,GAAG,CAAC,CAAC;IAEzB,8BAA8B;IAC9B,MAAM,wBAAwB,CAAC,GAAG,CAAC,CAAC;IAEpC,6BAA6B;IAC7B,MAAM,wBAAwB,CAAC,GAAG,CAAC,CAAC;IAEpC,sBAAsB;IACtB,MAAM,iBAAiB,CAAC,GAAG,CAAC,CAAC;IAE7B,iBAAiB;IACjB,MAAM,YAAY,CAAC,GAAG,CAAC,CAAC;IAExB,6BAA6B;IAC7B,MAAM,qBAAqB,CAAC,GAAG,CAAC,CAAC;IAEjC,iCAAiC;IACjC,MAAM,uBAAuB,CAAC,GAAG,CAAC,CAAC;AACpC,CAAC;AAED,KAAK,UAAU,aAAa,CAAC,GAAW;IACvC,MAAM,mBAAmB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAqG5B,CAAC;IAED,MAAM,kBAAkB,GAAG;;;;;;;;;;;;;;;CAe3B,CAAC;IAED,EAAE,CAAC,aAAa,CACf,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,oCAAoC,CAAC,EACpD,mBAAmB,CACnB,CAAC;IACF,EAAE,CAAC,aAAa,CACf,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,mCAAmC,CAAC,EACnD,kBAAkB,CAClB,CAAC;IAEF,0BAA0B;IAC1B,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,oCAAoC,CAAC,EAAE,KAAK,CAAC,CAAC;IAC1E,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,mCAAmC,CAAC,EAAE,KAAK,CAAC,CAAC;IAEzE,uCAAuC;IACvC,MAAM,uBAAuB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAmQhC,CAAC;IAED,EAAE,CAAC,aAAa,CACf,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,yCAAyC,CAAC,EACzD,uBAAuB,CACvB,CAAC;IACF,EAAE,CAAC,SAAS,CACX,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,yCAAyC,CAAC,EACzD,KAAK,CACL,CAAC;AACH,CAAC;AAED,KAAK,UAAU,wBAAwB,CAAC,GAAW;IAClD,MAAM,OAAO,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA6DhB,CAAC;IAED,EAAE,CAAC,aAAa,CACf,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,kCAAkC,CAAC,EAClD,OAAO,CACP,CAAC;AACH,CAAC;AAED,KAAK,UAAU,wBAAwB,CAAC,GAAW;IAClD,oBAAoB;IACpB,MAAM,aAAa,GAAG
|
|
1
|
+
{"version":3,"file":"workflow.js","sourceRoot":"","sources":["../../src/configurators/workflow.ts"],"names":[],"mappings":"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"}
|