aiwf 0.3.16 → 0.3.18
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.ko.md +1 -1
- package/README.md +88 -229
- package/docs/ADR_MANAGEMENT_GUIDE.ko.md +602 -0
- package/docs/ADR_MANAGEMENT_GUIDE.md +602 -0
- package/docs/API_REFERENCE_FULL.ko.md +160 -4
- package/docs/API_REFERENCE_FULL.md +160 -4
- package/docs/EXAMPLES.ko.md +695 -0
- package/docs/EXAMPLES.md +12 -12
- package/docs/GETTING_STARTED.md +19 -25
- package/docs/MODULE_MANAGEMENT_GUIDE.ko.md +289 -0
- package/docs/MODULE_MANAGEMENT_GUIDE.md +289 -0
- package/docs/PRD.ko.md +2 -2
- package/docs/PRD.md +2 -2
- package/docs/YOLO_SYSTEM_GUIDE.ko.md +542 -0
- package/docs/YOLO_SYSTEM_GUIDE.md +542 -0
- package/package.json +1 -1
- package/src/config/file-lists.js +5 -5
- package/templates/README.md +0 -78
- package/templates/api-server/config.json +0 -64
- package/templates/api-server/template/.aiwf/config.json +0 -56
- package/templates/api-server/template/.aiwf/feature-ledger.json +0 -42
- package/templates/api-server/template/.aiwf/personas/backend-engineer.json +0 -40
- package/templates/api-server/template/.aiwf/scripts/cli.js +0 -111
- package/templates/api-server/template/.env.example +0 -29
- package/templates/api-server/template/.eslintrc.json +0 -23
- package/templates/api-server/template/README.md +0 -171
- package/templates/api-server/template/jest.config.js +0 -26
- package/templates/api-server/template/nodemon.json +0 -9
- package/templates/api-server/template/package.json +0 -61
- package/templates/api-server/template/src/app.ts +0 -60
- package/templates/api-server/template/src/config/swagger.ts +0 -38
- package/templates/api-server/template/src/controllers/aiwfController.ts +0 -54
- package/templates/api-server/template/src/controllers/authController.ts +0 -128
- package/templates/api-server/template/src/controllers/statusController.ts +0 -28
- package/templates/api-server/template/src/index.ts +0 -28
- package/templates/api-server/template/src/middleware/aiwfMiddleware.ts +0 -50
- package/templates/api-server/template/src/middleware/authMiddleware.ts +0 -41
- package/templates/api-server/template/src/middleware/errorHandler.ts +0 -42
- package/templates/api-server/template/src/middleware/notFoundHandler.ts +0 -14
- package/templates/api-server/template/src/middleware/requestLogger.ts +0 -20
- package/templates/api-server/template/src/routes/aiwf.ts +0 -31
- package/templates/api-server/template/src/routes/index.ts +0 -13
- package/templates/api-server/template/src/routes/v1/index.ts +0 -67
- package/templates/api-server/template/src/utils/logger.ts +0 -37
- package/templates/api-server/template/tests/app.test.ts +0 -40
- package/templates/api-server/template/tsconfig.json +0 -43
- package/templates/npm-library/config.json +0 -61
- package/templates/npm-library/template/LICENSE +0 -21
- package/templates/npm-library/template/README.md +0 -201
- package/templates/npm-library/template/package.json +0 -78
- package/templates/web-app/config.json +0 -53
- package/templates/web-app/template/.aiwf/config.json +0 -54
- package/templates/web-app/template/.aiwf/feature-ledger.json +0 -37
- package/templates/web-app/template/.aiwf/personas/fullstack-developer.json +0 -40
- package/templates/web-app/template/.aiwf/scripts/cli.js +0 -110
- package/templates/web-app/template/.eslintrc.cjs +0 -20
- package/templates/web-app/template/README.md +0 -151
- package/templates/web-app/template/index.html +0 -14
- package/templates/web-app/template/package.json +0 -44
- package/templates/web-app/template/postcss.config.js +0 -6
- package/templates/web-app/template/public/vite.svg +0 -1
- package/templates/web-app/template/src/App.tsx +0 -21
- package/templates/web-app/template/src/components/Layout.tsx +0 -57
- package/templates/web-app/template/src/components/aiwf/ContextStatus.tsx +0 -107
- package/templates/web-app/template/src/components/aiwf/TokenUsage.tsx +0 -71
- package/templates/web-app/template/src/index.css +0 -60
- package/templates/web-app/template/src/main.tsx +0 -10
- package/templates/web-app/template/src/pages/AiwfDashboard.tsx +0 -57
- package/templates/web-app/template/src/pages/HomePage.tsx +0 -89
- package/templates/web-app/template/src/pages/NotFound.tsx +0 -25
- package/templates/web-app/template/src/stores/aiwfStore.ts +0 -126
- package/templates/web-app/template/src/types/global.d.ts +0 -9
- package/templates/web-app/template/src/vite-env.d.ts +0 -1
- package/templates/web-app/template/tailwind.config.js +0 -30
- package/templates/web-app/template/tsconfig.json +0 -37
- package/templates/web-app/template/tsconfig.node.json +0 -10
- package/templates/web-app/template/vite.config.ts +0 -23
- /package/rules/global/{code-style-guide.md → aiwf-code-style-guide.md} +0 -0
- /package/rules/global/{coding-principles.md → aiwf-coding-principles.md} +0 -0
- /package/rules/global/{development-process.md → aiwf-development-process.md} +0 -0
- /package/rules/global/{global-rules.md → aiwf-global-rules.md} +0 -0
- /package/rules/manual/{generate-plan-docs.md → aiwf-generate-plan-docs.md} +0 -0
|
@@ -491,6 +491,78 @@ async createInteractiveYoloConfig(): Promise<void>
|
|
|
491
491
|
|
|
492
492
|
## 유틸리티 API
|
|
493
493
|
|
|
494
|
+
### 엔지니어링 가드
|
|
495
|
+
|
|
496
|
+
자율 실행 중 오버엔지니어링을 방지하고 코드 품질을 유지합니다.
|
|
497
|
+
|
|
498
|
+
#### 클래스: `EngineeringGuard`
|
|
499
|
+
|
|
500
|
+
```javascript
|
|
501
|
+
import { EngineeringGuard } from 'aiwf/utils/engineering-guard';
|
|
502
|
+
```
|
|
503
|
+
|
|
504
|
+
##### 생성자
|
|
505
|
+
|
|
506
|
+
```javascript
|
|
507
|
+
new EngineeringGuard(configPath?: string)
|
|
508
|
+
```
|
|
509
|
+
|
|
510
|
+
##### 메서드
|
|
511
|
+
|
|
512
|
+
###### `checkFileComplexity(filePath)`
|
|
513
|
+
|
|
514
|
+
단일 파일의 복잡성 위반을 검사합니다.
|
|
515
|
+
|
|
516
|
+
```javascript
|
|
517
|
+
async checkFileComplexity(filePath: string): Promise<void>
|
|
518
|
+
```
|
|
519
|
+
|
|
520
|
+
###### `checkProject(projectPath, filePatterns)`
|
|
521
|
+
|
|
522
|
+
프로젝트 전체의 포괄적인 복잡성 분석을 수행합니다.
|
|
523
|
+
|
|
524
|
+
```javascript
|
|
525
|
+
async checkProject(
|
|
526
|
+
projectPath: string,
|
|
527
|
+
filePatterns?: string[]
|
|
528
|
+
): Promise<GuardReport>
|
|
529
|
+
```
|
|
530
|
+
|
|
531
|
+
**반환값:**
|
|
532
|
+
```typescript
|
|
533
|
+
interface GuardReport {
|
|
534
|
+
passed: boolean;
|
|
535
|
+
violations: Violation[];
|
|
536
|
+
warnings: Warning[];
|
|
537
|
+
summary: {
|
|
538
|
+
total_violations: number;
|
|
539
|
+
high_severity: number;
|
|
540
|
+
medium_severity: number;
|
|
541
|
+
warnings: number;
|
|
542
|
+
};
|
|
543
|
+
recommendations: string[];
|
|
544
|
+
}
|
|
545
|
+
```
|
|
546
|
+
|
|
547
|
+
###### `provideFeedback(filePath, content)`
|
|
548
|
+
|
|
549
|
+
개발 중 실시간 피드백을 제공합니다.
|
|
550
|
+
|
|
551
|
+
```javascript
|
|
552
|
+
async provideFeedback(
|
|
553
|
+
filePath: string,
|
|
554
|
+
content?: string
|
|
555
|
+
): Promise<Feedback[]>
|
|
556
|
+
```
|
|
557
|
+
|
|
558
|
+
###### `generateReport()`
|
|
559
|
+
|
|
560
|
+
포괄적인 분석 리포트를 생성합니다.
|
|
561
|
+
|
|
562
|
+
```javascript
|
|
563
|
+
generateReport(): GuardReport
|
|
564
|
+
```
|
|
565
|
+
|
|
494
566
|
### 체크포인트 관리자
|
|
495
567
|
|
|
496
568
|
상태 체크포인트와 복구를 관리합니다.
|
|
@@ -501,15 +573,45 @@ async createInteractiveYoloConfig(): Promise<void>
|
|
|
501
573
|
import { CheckpointManager } from 'aiwf/utils/checkpoint-manager';
|
|
502
574
|
```
|
|
503
575
|
|
|
576
|
+
##### 생성자
|
|
577
|
+
|
|
578
|
+
```javascript
|
|
579
|
+
new CheckpointManager(projectRoot: string)
|
|
580
|
+
```
|
|
581
|
+
|
|
504
582
|
##### 메서드
|
|
505
583
|
|
|
506
|
-
###### `
|
|
584
|
+
###### `startSession(sprintId, mode)`
|
|
585
|
+
|
|
586
|
+
추적과 함께 새 YOLO 세션을 시작합니다.
|
|
587
|
+
|
|
588
|
+
```javascript
|
|
589
|
+
async startSession(sprintId: string, mode?: string): Promise<void>
|
|
590
|
+
```
|
|
591
|
+
|
|
592
|
+
###### `startTask(taskId, taskInfo)`
|
|
593
|
+
|
|
594
|
+
특정 태스크 추적을 시작합니다.
|
|
595
|
+
|
|
596
|
+
```javascript
|
|
597
|
+
async startTask(taskId: string, taskInfo?: any): Promise<void>
|
|
598
|
+
```
|
|
599
|
+
|
|
600
|
+
###### `completeTask(taskId, result)`
|
|
601
|
+
|
|
602
|
+
태스크를 결과와 함께 완료된 것으로 표시합니다.
|
|
603
|
+
|
|
604
|
+
```javascript
|
|
605
|
+
async completeTask(taskId: string, result?: any): Promise<void>
|
|
606
|
+
```
|
|
607
|
+
|
|
608
|
+
###### `createCheckpoint(type, metadata)`
|
|
507
609
|
|
|
508
610
|
새 체크포인트를 생성합니다.
|
|
509
611
|
|
|
510
612
|
```javascript
|
|
511
613
|
async createCheckpoint(
|
|
512
|
-
|
|
614
|
+
type?: string,
|
|
513
615
|
metadata?: CheckpointMetadata
|
|
514
616
|
): Promise<string>
|
|
515
617
|
```
|
|
@@ -522,12 +624,66 @@ async createCheckpoint(
|
|
|
522
624
|
async listCheckpoints(): Promise<CheckpointInfo[]>
|
|
523
625
|
```
|
|
524
626
|
|
|
525
|
-
###### `
|
|
627
|
+
###### `restoreFromCheckpoint(checkpointId)`
|
|
526
628
|
|
|
527
629
|
특정 체크포인트에서 복원합니다.
|
|
528
630
|
|
|
529
631
|
```javascript
|
|
530
|
-
async
|
|
632
|
+
async restoreFromCheckpoint(checkpointId: string): Promise<RestoreResult>
|
|
633
|
+
```
|
|
634
|
+
|
|
635
|
+
**반환값:**
|
|
636
|
+
```typescript
|
|
637
|
+
interface RestoreResult {
|
|
638
|
+
success: boolean;
|
|
639
|
+
checkpoint: Checkpoint;
|
|
640
|
+
tasks_to_resume: {
|
|
641
|
+
completed: string[];
|
|
642
|
+
current: string | null;
|
|
643
|
+
next_task_hint: string;
|
|
644
|
+
};
|
|
645
|
+
}
|
|
646
|
+
```
|
|
647
|
+
|
|
648
|
+
###### `generateProgressReport()`
|
|
649
|
+
|
|
650
|
+
포괄적인 진행률 리포트를 생성합니다.
|
|
651
|
+
|
|
652
|
+
```javascript
|
|
653
|
+
async generateProgressReport(): Promise<ProgressReport>
|
|
654
|
+
```
|
|
655
|
+
|
|
656
|
+
**반환값:**
|
|
657
|
+
```typescript
|
|
658
|
+
interface ProgressReport {
|
|
659
|
+
session: {
|
|
660
|
+
id: string;
|
|
661
|
+
started: string;
|
|
662
|
+
sprint: string;
|
|
663
|
+
mode: string;
|
|
664
|
+
};
|
|
665
|
+
progress: {
|
|
666
|
+
completed: number;
|
|
667
|
+
failed: number;
|
|
668
|
+
skipped: number;
|
|
669
|
+
current: string;
|
|
670
|
+
};
|
|
671
|
+
performance: {
|
|
672
|
+
total_time: string;
|
|
673
|
+
avg_task_time: string;
|
|
674
|
+
success_rate: string;
|
|
675
|
+
};
|
|
676
|
+
checkpoints: CheckpointInfo[];
|
|
677
|
+
recommendations: string[];
|
|
678
|
+
}
|
|
679
|
+
```
|
|
680
|
+
|
|
681
|
+
###### `endSession(summary)`
|
|
682
|
+
|
|
683
|
+
현재 세션을 종료하고 최종 리포트를 생성합니다.
|
|
684
|
+
|
|
685
|
+
```javascript
|
|
686
|
+
async endSession(summary?: any): Promise<ProgressReport>
|
|
531
687
|
```
|
|
532
688
|
|
|
533
689
|
### Git 유틸리티
|
|
@@ -491,6 +491,78 @@ async createInteractiveYoloConfig(): Promise<void>
|
|
|
491
491
|
|
|
492
492
|
## Utility APIs
|
|
493
493
|
|
|
494
|
+
### Engineering Guard
|
|
495
|
+
|
|
496
|
+
Prevents over-engineering and maintains code quality during autonomous execution.
|
|
497
|
+
|
|
498
|
+
#### Class: `EngineeringGuard`
|
|
499
|
+
|
|
500
|
+
```javascript
|
|
501
|
+
import { EngineeringGuard } from 'aiwf/utils/engineering-guard';
|
|
502
|
+
```
|
|
503
|
+
|
|
504
|
+
##### Constructor
|
|
505
|
+
|
|
506
|
+
```javascript
|
|
507
|
+
new EngineeringGuard(configPath?: string)
|
|
508
|
+
```
|
|
509
|
+
|
|
510
|
+
##### Methods
|
|
511
|
+
|
|
512
|
+
###### `checkFileComplexity(filePath)`
|
|
513
|
+
|
|
514
|
+
Checks a single file for complexity violations.
|
|
515
|
+
|
|
516
|
+
```javascript
|
|
517
|
+
async checkFileComplexity(filePath: string): Promise<void>
|
|
518
|
+
```
|
|
519
|
+
|
|
520
|
+
###### `checkProject(projectPath, filePatterns)`
|
|
521
|
+
|
|
522
|
+
Performs comprehensive project-wide complexity analysis.
|
|
523
|
+
|
|
524
|
+
```javascript
|
|
525
|
+
async checkProject(
|
|
526
|
+
projectPath: string,
|
|
527
|
+
filePatterns?: string[]
|
|
528
|
+
): Promise<GuardReport>
|
|
529
|
+
```
|
|
530
|
+
|
|
531
|
+
**Returns:**
|
|
532
|
+
```typescript
|
|
533
|
+
interface GuardReport {
|
|
534
|
+
passed: boolean;
|
|
535
|
+
violations: Violation[];
|
|
536
|
+
warnings: Warning[];
|
|
537
|
+
summary: {
|
|
538
|
+
total_violations: number;
|
|
539
|
+
high_severity: number;
|
|
540
|
+
medium_severity: number;
|
|
541
|
+
warnings: number;
|
|
542
|
+
};
|
|
543
|
+
recommendations: string[];
|
|
544
|
+
}
|
|
545
|
+
```
|
|
546
|
+
|
|
547
|
+
###### `provideFeedback(filePath, content)`
|
|
548
|
+
|
|
549
|
+
Provides real-time feedback during development.
|
|
550
|
+
|
|
551
|
+
```javascript
|
|
552
|
+
async provideFeedback(
|
|
553
|
+
filePath: string,
|
|
554
|
+
content?: string
|
|
555
|
+
): Promise<Feedback[]>
|
|
556
|
+
```
|
|
557
|
+
|
|
558
|
+
###### `generateReport()`
|
|
559
|
+
|
|
560
|
+
Generates comprehensive analysis report.
|
|
561
|
+
|
|
562
|
+
```javascript
|
|
563
|
+
generateReport(): GuardReport
|
|
564
|
+
```
|
|
565
|
+
|
|
494
566
|
### Checkpoint Manager
|
|
495
567
|
|
|
496
568
|
Manages state checkpoints and recovery.
|
|
@@ -501,15 +573,45 @@ Manages state checkpoints and recovery.
|
|
|
501
573
|
import { CheckpointManager } from 'aiwf/utils/checkpoint-manager';
|
|
502
574
|
```
|
|
503
575
|
|
|
576
|
+
##### Constructor
|
|
577
|
+
|
|
578
|
+
```javascript
|
|
579
|
+
new CheckpointManager(projectRoot: string)
|
|
580
|
+
```
|
|
581
|
+
|
|
504
582
|
##### Methods
|
|
505
583
|
|
|
506
|
-
###### `
|
|
584
|
+
###### `startSession(sprintId, mode)`
|
|
585
|
+
|
|
586
|
+
Starts a new YOLO session with tracking.
|
|
587
|
+
|
|
588
|
+
```javascript
|
|
589
|
+
async startSession(sprintId: string, mode?: string): Promise<void>
|
|
590
|
+
```
|
|
591
|
+
|
|
592
|
+
###### `startTask(taskId, taskInfo)`
|
|
593
|
+
|
|
594
|
+
Begins tracking a specific task.
|
|
595
|
+
|
|
596
|
+
```javascript
|
|
597
|
+
async startTask(taskId: string, taskInfo?: any): Promise<void>
|
|
598
|
+
```
|
|
599
|
+
|
|
600
|
+
###### `completeTask(taskId, result)`
|
|
601
|
+
|
|
602
|
+
Marks a task as completed with results.
|
|
603
|
+
|
|
604
|
+
```javascript
|
|
605
|
+
async completeTask(taskId: string, result?: any): Promise<void>
|
|
606
|
+
```
|
|
607
|
+
|
|
608
|
+
###### `createCheckpoint(type, metadata)`
|
|
507
609
|
|
|
508
610
|
Creates a new checkpoint.
|
|
509
611
|
|
|
510
612
|
```javascript
|
|
511
613
|
async createCheckpoint(
|
|
512
|
-
|
|
614
|
+
type?: string,
|
|
513
615
|
metadata?: CheckpointMetadata
|
|
514
616
|
): Promise<string>
|
|
515
617
|
```
|
|
@@ -522,12 +624,66 @@ Lists all available checkpoints.
|
|
|
522
624
|
async listCheckpoints(): Promise<CheckpointInfo[]>
|
|
523
625
|
```
|
|
524
626
|
|
|
525
|
-
###### `
|
|
627
|
+
###### `restoreFromCheckpoint(checkpointId)`
|
|
526
628
|
|
|
527
629
|
Restores from a specific checkpoint.
|
|
528
630
|
|
|
529
631
|
```javascript
|
|
530
|
-
async
|
|
632
|
+
async restoreFromCheckpoint(checkpointId: string): Promise<RestoreResult>
|
|
633
|
+
```
|
|
634
|
+
|
|
635
|
+
**Returns:**
|
|
636
|
+
```typescript
|
|
637
|
+
interface RestoreResult {
|
|
638
|
+
success: boolean;
|
|
639
|
+
checkpoint: Checkpoint;
|
|
640
|
+
tasks_to_resume: {
|
|
641
|
+
completed: string[];
|
|
642
|
+
current: string | null;
|
|
643
|
+
next_task_hint: string;
|
|
644
|
+
};
|
|
645
|
+
}
|
|
646
|
+
```
|
|
647
|
+
|
|
648
|
+
###### `generateProgressReport()`
|
|
649
|
+
|
|
650
|
+
Generates comprehensive progress report.
|
|
651
|
+
|
|
652
|
+
```javascript
|
|
653
|
+
async generateProgressReport(): Promise<ProgressReport>
|
|
654
|
+
```
|
|
655
|
+
|
|
656
|
+
**Returns:**
|
|
657
|
+
```typescript
|
|
658
|
+
interface ProgressReport {
|
|
659
|
+
session: {
|
|
660
|
+
id: string;
|
|
661
|
+
started: string;
|
|
662
|
+
sprint: string;
|
|
663
|
+
mode: string;
|
|
664
|
+
};
|
|
665
|
+
progress: {
|
|
666
|
+
completed: number;
|
|
667
|
+
failed: number;
|
|
668
|
+
skipped: number;
|
|
669
|
+
current: string;
|
|
670
|
+
};
|
|
671
|
+
performance: {
|
|
672
|
+
total_time: string;
|
|
673
|
+
avg_task_time: string;
|
|
674
|
+
success_rate: string;
|
|
675
|
+
};
|
|
676
|
+
checkpoints: CheckpointInfo[];
|
|
677
|
+
recommendations: string[];
|
|
678
|
+
}
|
|
679
|
+
```
|
|
680
|
+
|
|
681
|
+
###### `endSession(summary)`
|
|
682
|
+
|
|
683
|
+
Ends the current session and generates final report.
|
|
684
|
+
|
|
685
|
+
```javascript
|
|
686
|
+
async endSession(summary?: any): Promise<ProgressReport>
|
|
531
687
|
```
|
|
532
688
|
|
|
533
689
|
### Git Utilities
|