aiwf 0.3.7 → 0.3.12
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/CHANGELOG.md +97 -0
- package/README.ko.md +114 -28
- package/README.md +152 -40
- package/docs/AI-WORKFLOW.md +121 -19
- package/docs/API_DOCUMENTATION.md +1 -1
- package/docs/API_REFERENCE.md +1 -1
- package/docs/CLI_USAGE_GUIDE.ko.md +634 -0
- package/docs/CLI_USAGE_GUIDE.md +339 -178
- package/docs/COMMANDS_GUIDE.ko.md +308 -4
- package/docs/COMMANDS_GUIDE.md +117 -0
- package/docs/CONTRIBUTING.ko.md +6 -6
- package/docs/CONTRIBUTING.md +6 -6
- package/docs/DEVELOPMENT_GUIDE.ko.md +440 -0
- package/docs/DEVELOPMENT_GUIDE.md +1 -1
- package/docs/EXAMPLES.md +8 -6
- package/docs/GETTING_STARTED.md +6 -3
- package/docs/STATE_MANAGEMENT_GUIDE.ko.md +278 -0
- package/docs/STATE_MANAGEMENT_GUIDE.md +278 -0
- package/docs/TROUBLESHOOTING.md +14 -13
- package/docs/guides/checkpoint-system-guide-ko.md +356 -0
- package/docs/guides/checkpoint-system-guide.md +356 -0
- package/docs/guides/independent-sprint-guide-ko.md +321 -0
- package/docs/guides/independent-sprint-guide.md +321 -0
- package/package.json +30 -3
- package/scripts/update-file-lists.js +267 -0
- package/src/cli/checkpoint-cli.js +417 -0
- package/src/cli/index.js +461 -0
- package/src/cli/sprint-cli.js +287 -0
- package/src/commands/compress.js +60 -0
- package/src/commands/create-project.js +23 -17
- package/src/commands/evaluate.js +459 -0
- package/src/commands/persona.js +37 -16
- package/src/commands/sprint-independent.js +393 -0
- package/src/commands/state-refactored.js +419 -0
- package/src/commands/state.js +1164 -0
- package/src/commands/token.js +312 -0
- package/src/commands/yolo-config.js +502 -0
- package/src/config/file-lists.js +147 -0
- package/src/config/yolo-config-template.yaml +168 -0
- package/src/lib/file-downloader.js +7 -72
- package/src/lib/github-integration.js +402 -0
- package/src/lib/resource-loader-enhanced.js +399 -0
- package/src/lib/resource-loader.js +250 -0
- package/{claude-code/aiwf/ko → src/lib/resources}/commands/ai-persona.js +1 -1
- package/src/lib/state/priority-calculator.js +217 -0
- package/src/lib/state/state-index.js +155 -0
- package/src/lib/state/task-scanner.js +328 -0
- package/src/utils/checkpoint-manager.js +425 -0
- package/src/utils/engineering-guard.js +389 -0
- package/.aiwf/00_PROJECT_MANIFEST.md +0 -196
- package/.aiwf/01_PROJECT_DOCS/ARCHITECTURE.md +0 -121
- package/.aiwf/01_PROJECT_DOCS/FEATURE_LEDGER_ADVANCED_USE_CASES.md +0 -412
- package/.aiwf/01_PROJECT_DOCS/FEATURE_LEDGER_API_REFERENCE.md +0 -361
- package/.aiwf/01_PROJECT_DOCS/FEATURE_LEDGER_COMMANDS_GUIDE.md +0 -254
- package/.aiwf/01_PROJECT_DOCS/FEATURE_LEDGER_FAQ.md +0 -365
- package/.aiwf/01_PROJECT_DOCS/FEATURE_LEDGER_SYSTEM_OVERVIEW.md +0 -305
- package/.aiwf/01_PROJECT_DOCS/FEATURE_LEDGER_USER_GUIDE.md +0 -416
- package/.aiwf/01_PROJECT_DOCS/FEATURE_LEDGER_/354/213/234/354/236/221_/352/260/200/354/235/264/353/223/234.md +0 -247
- package/.aiwf/02_REQUIREMENTS/CLAUDE.md +0 -78
- package/.aiwf/02_REQUIREMENTS/M02_Context_Engineering_Enhancement/M02_milestone_meta.md +0 -34
- package/.aiwf/02_REQUIREMENTS/M02_Context_Engineering_Enhancement/PRD_Context_Engineering_Enhancement.md +0 -108
- package/.aiwf/02_REQUIREMENTS/M02_Context_Engineering_Enhancement/SPECS_AI_Persona_System.md +0 -299
- package/.aiwf/02_REQUIREMENTS/M02_Context_Engineering_Enhancement/SPECS_Feature_Ledger_System.md +0 -330
- package/.aiwf/02_REQUIREMENTS/M02_Context_Engineering_Enhancement/SPECS_Token_Optimization.md +0 -833
- package/.aiwf/02_REQUIREMENTS/M03_Simone_Integration_Enhancement/M03_milestone_meta.md +0 -55
- package/.aiwf/02_REQUIREMENTS/M03_Simone_Integration_Enhancement/SPECS_AIWF_Simplified_Plan.md +0 -221
- package/.aiwf/03_SPRINTS/CLAUDE.md +0 -83
- package/.aiwf/03_SPRINTS/S01_M02_context_foundation/S01_M02_sprint_meta.md +0 -95
- package/.aiwf/03_SPRINTS/S01_M02_context_foundation/TX01_S01_Feature_Ledger_/353/215/260/354/235/264/355/204/260_/352/265/254/354/241/260_/354/204/244/352/263/204.md +0 -111
- package/.aiwf/03_SPRINTS/S01_M02_context_foundation/TX02_S01_Feature_Ledger_CLI_/353/252/205/353/240/271/354/226/264_/352/260/234/353/260/234.md +0 -115
- package/.aiwf/03_SPRINTS/S01_M02_context_foundation/TX03_S01_Git_/354/227/260/353/217/231_Feature_/354/266/224/354/240/201.md +0 -141
- package/.aiwf/03_SPRINTS/S01_M02_context_foundation/TX04_S01_Feature_Ledger_/353/254/270/354/204/234/355/231/224.md +0 -114
- package/.aiwf/03_SPRINTS/S01_M02_context_foundation/TX05_S01_AI_/355/216/230/353/245/264/354/206/214/353/202/230_/353/215/260/354/235/264/355/204/260_/352/265/254/354/241/260_/354/204/244/352/263/204.md +0 -123
- package/.aiwf/03_SPRINTS/S01_M02_context_foundation/TX06_S01_/355/216/230/353/245/264/354/206/214/353/202/230_/352/264/200/353/246/254_/353/252/205/353/240/271/354/226/264_/352/265/254/355/230/204.md +0 -114
- package/.aiwf/03_SPRINTS/S01_M02_context_foundation/TX07_S01_Context_/354/225/225/354/266/225_/354/225/204/355/202/244/355/205/215/354/262/230_/354/204/244/352/263/204.md +0 -114
- package/.aiwf/03_SPRINTS/S01_M02_context_foundation/TX08_S01_/355/206/240/355/201/260_/354/266/224/354/240/201_/354/213/234/354/212/244/355/205/234_/355/224/204/353/241/234/355/206/240/355/203/200/354/236/205.md +0 -112
- package/.aiwf/03_SPRINTS/S01_M02_context_foundation/TX09_S01_/354/225/225/354/266/225_/354/225/214/352/263/240/353/246/254/354/246/230_/355/224/204/353/241/234/355/206/240/355/203/200/354/236/205.md +0 -118
- package/.aiwf/03_SPRINTS/S01_M02_context_foundation/TX10_S01_update_docs_/353/252/205/353/240/271/354/226/264_/353/263/265/352/265/254.md +0 -118
- package/.aiwf/03_SPRINTS/S01_M02_context_foundation/TX11_S01_/355/206/265/355/225/251_/355/205/214/354/212/244/355/212/270_Suite_/352/265/254/354/266/225.md +0 -128
- package/.aiwf/03_SPRINTS/S01_M02_context_foundation/TX12_S01_/354/204/261/353/212/245_/354/265/234/354/240/201/355/231/224_/353/260/217_/353/254/270/354/204/234/355/231/224.md +0 -122
- package/.aiwf/03_SPRINTS/S02_M02_ai_enhancement/S02_M02_sprint_meta.md +0 -107
- package/.aiwf/03_SPRINTS/S02_M02_ai_enhancement/TX01_S02_AI_/355/216/230/353/245/264/354/206/214/353/202/230_/353/252/205/353/240/271/354/226/264_/352/265/254/355/230/204.md +0 -129
- package/.aiwf/03_SPRINTS/S02_M02_ai_enhancement/TX02_S02_/355/216/230/353/245/264/354/206/214/353/202/230_/354/273/250/355/205/215/354/212/244/355/212/270_/354/240/201/354/232/251_/354/213/234/354/212/244/355/205/234.md +0 -152
- package/.aiwf/03_SPRINTS/S02_M02_ai_enhancement/TX03_S02_Context_/354/225/225/354/266/225_/354/225/214/352/263/240/353/246/254/354/246/230_/352/265/254/355/230/204.md +0 -186
- package/.aiwf/03_SPRINTS/S02_M02_ai_enhancement/TX05_S02_S02_/355/206/265/355/225/251_/355/205/214/354/212/244/355/212/270_/353/260/217_/353/254/270/354/204/234/355/231/224.md +0 -192
- package/.aiwf/03_SPRINTS/S02_M02_ai_enhancement/TX4_S02_Feature_Git_/354/227/260/353/217/231_/353/260/217_/354/236/220/353/217/231/355/231/224.md +0 -162
- package/.aiwf/03_SPRINTS/S03_M02_ecosystem_integration/S03_FINAL_SPRINT_SUMMARY.md +0 -137
- package/.aiwf/03_SPRINTS/S03_M02_ecosystem_integration/S03_M02_sprint_meta.md +0 -105
- package/.aiwf/03_SPRINTS/S03_M02_ecosystem_integration/TX14_S03_M02_/353/247/210/354/235/274/354/212/244/355/206/244_/354/265/234/354/242/205_/352/262/200/354/246/235_/353/260/217_/353/254/270/354/204/234/355/231/224.md +0 -214
- package/.aiwf/03_SPRINTS/S03_M02_ecosystem_integration/TX15_S03_/352/270/260/353/263/270_/355/224/204/353/241/234/354/240/235/355/212/270_/355/205/234/355/224/214/353/246/277_/352/260/234/353/260/234.md +0 -177
- package/.aiwf/03_SPRINTS/S03_M02_ecosystem_integration/TX16_S03_/354/230/244/355/224/204/353/235/274/354/235/270_/355/205/234/355/224/214/353/246/277_/354/272/220/354/213/234_/354/213/234/354/212/244/355/205/234.md +0 -206
- package/.aiwf/03_SPRINTS/S03_M02_ecosystem_integration/TX_T13_S03_AI_/353/217/204/352/265/254_/355/206/265/355/225/251_/355/205/234/355/224/214/353/246/277_/352/260/234/353/260/234.md +0 -151
- package/.aiwf/04_GENERAL_TASKS/CLAUDE.md +0 -96
- package/.aiwf/04_GENERAL_TASKS/TX001_complete_english_translation.md +0 -127
- package/.aiwf/06_FEATURE_LEDGERS/FEATURE_GIT_INTEGRATION.md +0 -314
- package/.aiwf/06_FEATURE_LEDGERS/FEATURE_INTEGRATION_GUIDE.md +0 -227
- package/.aiwf/06_FEATURE_LEDGERS/FEATURE_LEDGER_INDEX.md +0 -23
- package/.aiwf/06_FEATURE_LEDGERS/FEATURE_SCHEMA.md +0 -205
- package/.aiwf/06_FEATURE_LEDGERS/FEATURE_STATE_DIAGRAM.md +0 -190
- package/.aiwf/06_FEATURE_LEDGERS/active/FL001_user_authentication_system.md +0 -47
- package/.aiwf/06_FEATURE_LEDGERS/active/FL002_user_authentication_system.md +0 -47
- package/.aiwf/07_AI_PERSONAS/architect/best_practices.md +0 -104
- package/.aiwf/07_AI_PERSONAS/architect/context_rules.md +0 -46
- package/.aiwf/07_AI_PERSONAS/architect/knowledge_base.md +0 -235
- package/.aiwf/07_AI_PERSONAS/backend/best_practices.md +0 -363
- package/.aiwf/07_AI_PERSONAS/backend/context_rules.md +0 -61
- package/.aiwf/07_AI_PERSONAS/backend/knowledge_base.md +0 -623
- package/.aiwf/07_AI_PERSONAS/data_analyst/best_practices.md +0 -32
- package/.aiwf/07_AI_PERSONAS/data_analyst/context_rules.md +0 -43
- package/.aiwf/07_AI_PERSONAS/data_analyst/knowledge_base.md +0 -36
- package/.aiwf/07_AI_PERSONAS/frontend/best_practices.md +0 -31
- package/.aiwf/07_AI_PERSONAS/frontend/context_rules.md +0 -43
- package/.aiwf/07_AI_PERSONAS/frontend/knowledge_base.md +0 -32
- package/.aiwf/07_AI_PERSONAS/security/best_practices.md +0 -63
- package/.aiwf/07_AI_PERSONAS/security/context_rules.md +0 -53
- package/.aiwf/07_AI_PERSONAS/security/knowledge_base.md +0 -93
- package/.aiwf/10_PERSONAS/active.json +0 -1
- package/.aiwf/10_STATE_OF_PROJECT/2025-07-09-07-20-solid-progress.md +0 -144
- package/.aiwf/98_PROMPTS/SAAS_DEVELOPMENT_GUIDE.md +0 -302
- package/.aiwf/98_PROMPTS/github_integration.md +0 -130
- package/.aiwf/98_PROMPTS/useful-prompts.md +0 -31
- package/.aiwf/98_PROMPTS/vibe-front-prompts.md +0 -89
- package/.aiwf/99_TEMPLATES/adr_template.md +0 -49
- package/.aiwf/99_TEMPLATES/feature_template.md +0 -263
- package/.aiwf/99_TEMPLATES/milestone_meta_template.md +0 -25
- package/.aiwf/99_TEMPLATES/project_manifest_template.md +0 -39
- package/.aiwf/99_TEMPLATES/sprint_meta_template.md +0 -23
- package/.aiwf/99_TEMPLATES/task_template.md +0 -36
- package/.aiwf/CLAUDE.md +0 -76
- package/.aiwf/ai-tools/README.md +0 -105
- package/.aiwf/ai-tools/augment/README.md +0 -371
- package/.aiwf/ai-tools/augment/config.json +0 -30
- package/.aiwf/ai-tools/augment/template/.augment/aiwf-integration.md +0 -387
- package/.aiwf/ai-tools/augment/template/.augment/augment.yaml +0 -347
- package/.aiwf/ai-tools/augment/template/augment.config.json +0 -64
- package/.aiwf/ai-tools/claude-code/README.md +0 -151
- package/.aiwf/ai-tools/claude-code/config.json +0 -28
- package/.aiwf/ai-tools/claude-code/template/CLAUDE.md +0 -91
- package/.aiwf/ai-tools/cursor/README.md +0 -314
- package/.aiwf/ai-tools/cursor/config.json +0 -29
- package/.aiwf/ai-tools/cursor/template/.cursorrules +0 -362
- package/.aiwf/ai-tools/github-copilot/README.md +0 -195
- package/.aiwf/ai-tools/github-copilot/config.json +0 -24
- package/.aiwf/ai-tools/github-copilot/template/.github/copilot-instructions.md +0 -202
- package/.aiwf/ai-tools/windsurf/README.md +0 -355
- package/.aiwf/ai-tools/windsurf/config.json +0 -29
- package/.aiwf/ai-tools/windsurf/template/.windsurf/aiwf-rules.md +0 -260
- package/.aiwf/ai-tools/windsurf/template/.windsurf/windsurf.config.js +0 -312
- package/.aiwf/ai-tools/windsurf/template/windsurf.config.json +0 -63
- package/.aiwf/config/language.json +0 -6
- package/.aiwf/feature-ledger/FL-001-authentication.json +0 -52
- package/.aiwf/feature-ledger/feature-index.json +0 -20
- package/.aiwf/installed.flag +0 -1
- package/.aiwf/metrics/metrics.json +0 -18
- package/.aiwf/personas/current.json +0 -5
- package/.aiwf/scripts/cache-templates.js +0 -209
- package/.aiwf/scripts/create-offline.js +0 -86
- package/.aiwf/scripts/create-project.js +0 -151
- package/.aiwf/scripts/feature-progress-calculator.cjs +0 -236
- package/.aiwf/scripts/git-integration.cjs +0 -391
- package/.aiwf/scripts/install-git-hooks.cjs +0 -226
- package/.aiwf/scripts/test-commit-parsing.cjs +0 -125
- package/.aiwf/scripts/update-feature-status.cjs +0 -198
- package/.aiwf/test-results-s02.json +0 -36
- package/.claude/commands/aiwf/aiwf_add_task_to_sprint.md +0 -283
- package/.claude/commands/aiwf/aiwf_changelog.md +0 -82
- package/.claude/commands/aiwf/aiwf_code_review.md +0 -88
- package/.claude/commands/aiwf/aiwf_commit.md +0 -160
- package/.claude/commands/aiwf/aiwf_compress_aggressive_persona.md +0 -53
- package/.claude/commands/aiwf/aiwf_compress_context.md +0 -116
- package/.claude/commands/aiwf/aiwf_compress_minimal_persona.md +0 -48
- package/.claude/commands/aiwf/aiwf_compress_stats.md +0 -79
- package/.claude/commands/aiwf/aiwf_compress_with_persona.md +0 -51
- package/.claude/commands/aiwf/aiwf_create_feature_ledger.md +0 -54
- package/.claude/commands/aiwf/aiwf_create_general_task.md +0 -147
- package/.claude/commands/aiwf/aiwf_create_milestone_plan.md +0 -194
- package/.claude/commands/aiwf/aiwf_create_prd.md +0 -280
- package/.claude/commands/aiwf/aiwf_create_sprint_tasks.md +0 -189
- package/.claude/commands/aiwf/aiwf_create_sprints_from_milestone.md +0 -121
- package/.claude/commands/aiwf/aiwf_default_mode.md +0 -44
- package/.claude/commands/aiwf/aiwf_discuss_review.md +0 -29
- package/.claude/commands/aiwf/aiwf_do_task.md +0 -109
- package/.claude/commands/aiwf/aiwf_docs.md +0 -225
- package/.claude/commands/aiwf/aiwf_evaluate.md +0 -92
- package/.claude/commands/aiwf/aiwf_get_feature_details.md +0 -78
- package/.claude/commands/aiwf/aiwf_infinite.md +0 -202
- package/.claude/commands/aiwf/aiwf_initialize.md +0 -134
- package/.claude/commands/aiwf/aiwf_install_git_hooks.md +0 -63
- package/.claude/commands/aiwf/aiwf_issue_create.md +0 -65
- package/.claude/commands/aiwf/aiwf_link_feature_branch.md +0 -43
- package/.claude/commands/aiwf/aiwf_link_feature_commit.md +0 -46
- package/.claude/commands/aiwf/aiwf_link_feature_to_milestone.md +0 -57
- package/.claude/commands/aiwf/aiwf_list_features.md +0 -54
- package/.claude/commands/aiwf/aiwf_mermaid.md +0 -272
- package/.claude/commands/aiwf/aiwf_persona_architect.md +0 -48
- package/.claude/commands/aiwf/aiwf_persona_backend.md +0 -37
- package/.claude/commands/aiwf/aiwf_persona_data_analyst.md +0 -37
- package/.claude/commands/aiwf/aiwf_persona_frontend.md +0 -37
- package/.claude/commands/aiwf/aiwf_persona_security.md +0 -48
- package/.claude/commands/aiwf/aiwf_persona_status.md +0 -50
- package/.claude/commands/aiwf/aiwf_pr_create.md +0 -76
- package/.claude/commands/aiwf/aiwf_prime.md +0 -9
- package/.claude/commands/aiwf/aiwf_project_review.md +0 -261
- package/.claude/commands/aiwf/aiwf_switch_language.md +0 -160
- package/.claude/commands/aiwf/aiwf_test.md +0 -124
- package/.claude/commands/aiwf/aiwf_testing_review.md +0 -198
- package/.claude/commands/aiwf/aiwf_tm-run-all-subtask.md +0 -210
- package/.claude/commands/aiwf/aiwf_ultrathink_code_advanced.md +0 -460
- package/.claude/commands/aiwf/aiwf_ultrathink_code_basic.md +0 -165
- package/.claude/commands/aiwf/aiwf_ultrathink_general.md +0 -305
- package/.claude/commands/aiwf/aiwf_update_docs_kr.md +0 -25
- package/.claude/commands/aiwf/aiwf_update_feature_status.md +0 -53
- package/.claude/commands/aiwf/aiwf_yolo.md +0 -300
- package/.eslintrc.json +0 -26
- package/.prettierrc +0 -10
- package/CLAUDE.md +0 -254
- package/RELEASE_NOTES_M02.md +0 -177
- package/TEST_RECOVERY_PLAN.md +0 -68
- package/claude-code/aiwf/en/.aiwf/00_PROJECT_MANIFEST.md +0 -49
- package/claude-code/aiwf/en/.aiwf/01_PROJECT_DOCS/ARCHITECTURE.md +0 -55
- package/claude-code/aiwf/en/.aiwf/02_REQUIREMENTS/CLAUDE.md +0 -78
- package/claude-code/aiwf/en/.aiwf/02_REQUIREMENTS/M01_Backend_Setup/M01_milestone_meta.md +0 -42
- package/claude-code/aiwf/en/.aiwf/02_REQUIREMENTS/M01_Backend_Setup/PRD_AMEND_01_Auth_Flow_Update.md +0 -73
- package/claude-code/aiwf/en/.aiwf/02_REQUIREMENTS/M01_Backend_Setup/PRD_Backend_Setup.md +0 -98
- package/claude-code/aiwf/en/.aiwf/02_REQUIREMENTS/M01_Backend_Setup/SPECS_API_V1.md +0 -232
- package/claude-code/aiwf/en/.aiwf/03_SPRINTS/CLAUDE.md +0 -83
- package/claude-code/aiwf/en/.aiwf/03_SPRINTS/S01_M01_Initial_API/S01_sprint_meta.md +0 -49
- package/claude-code/aiwf/en/.aiwf/03_SPRINTS/S01_M01_Initial_API/T01_S01_Setup_Project_Structure.md +0 -60
- package/claude-code/aiwf/en/.aiwf/04_GENERAL_TASKS/CLAUDE.md +0 -96
- package/claude-code/aiwf/en/.aiwf/04_GENERAL_TASKS/T002_API_Rate_Limiting.md +0 -54
- package/claude-code/aiwf/en/.aiwf/04_GENERAL_TASKS/TX001_Refactor_Logging_Module.md +0 -58
- package/claude-code/aiwf/en/.aiwf/05_ARCHITECTURAL_DECISIONS/ADR001_Chosen_Database_System.md +0 -119
- package/claude-code/aiwf/en/.aiwf/05_ARCHITECTURAL_DECISIONS/ADR002_API_Authentication_Method.md +0 -124
- package/claude-code/aiwf/en/.aiwf/10_STATE_OF_PROJECT/2025-06-12-12-00-needs-focus.md +0 -139
- package/claude-code/aiwf/en/.aiwf/10_STATE_OF_PROJECT/2025-06-12-12-00-test-alignment.md +0 -155
- package/claude-code/aiwf/en/.aiwf/10_STATE_OF_PROJECT/2025-06-13-00-50-solid-progress.md +0 -122
- package/claude-code/aiwf/en/.aiwf/10_STATE_OF_PROJECT/2025-06-14-08-30-infrastructure-challenges.md +0 -141
- package/claude-code/aiwf/en/.aiwf/10_STATE_OF_PROJECT/2025-06-16-21-48-critical-foundation-issues.md +0 -177
- package/claude-code/aiwf/en/.aiwf/10_STATE_OF_PROJECT/2025-06-17-15-08-solid-progress.md +0 -149
- package/claude-code/aiwf/en/.aiwf/10_STATE_OF_PROJECT/index.json +0 -5
- package/claude-code/aiwf/en/.aiwf/10_STATE_OF_PROJECT/sync-index.js +0 -78
- package/claude-code/aiwf/en/.aiwf/98_PROMPTS/github_integration.md +0 -130
- package/claude-code/aiwf/en/.aiwf/98_PROMPTS/useful-prompts.md +0 -31
- package/claude-code/aiwf/en/.aiwf/98_PROMPTS/vibe-front-prompts.md +0 -89
- package/claude-code/aiwf/en/.aiwf/99_TEMPLATES/adr_template.md +0 -49
- package/claude-code/aiwf/en/.aiwf/99_TEMPLATES/milestone_meta_template.md +0 -25
- package/claude-code/aiwf/en/.aiwf/99_TEMPLATES/project_manifest_template.md +0 -39
- package/claude-code/aiwf/en/.aiwf/99_TEMPLATES/sprint_meta_template.md +0 -23
- package/claude-code/aiwf/en/.aiwf/99_TEMPLATES/task_template.md +0 -36
- package/claude-code/aiwf/en/.aiwf/CLAUDE.md +0 -74
- package/claude-code/aiwf/en/.aiwf/README.md +0 -97
- package/claude-code/aiwf/en/.claude/CLAUDE_BE.md +0 -276
- package/claude-code/aiwf/en/.claude/commands/aiwf/aiwf_changelog.md +0 -82
- package/claude-code/aiwf/en/.claude/commands/aiwf/aiwf_code_review.md +0 -88
- package/claude-code/aiwf/en/.claude/commands/aiwf/aiwf_commit.md +0 -160
- package/claude-code/aiwf/en/.claude/commands/aiwf/aiwf_create_feature_ledger.md +0 -54
- package/claude-code/aiwf/en/.claude/commands/aiwf/aiwf_create_general_task.md +0 -147
- package/claude-code/aiwf/en/.claude/commands/aiwf/aiwf_create_milestone_plan.md +0 -194
- package/claude-code/aiwf/en/.claude/commands/aiwf/aiwf_create_prd.md +0 -272
- package/claude-code/aiwf/en/.claude/commands/aiwf/aiwf_create_sprint_tasks.md +0 -189
- package/claude-code/aiwf/en/.claude/commands/aiwf/aiwf_create_sprints_from_milestone.md +0 -121
- package/claude-code/aiwf/en/.claude/commands/aiwf/aiwf_create_testcase.md +0 -561
- package/claude-code/aiwf/en/.claude/commands/aiwf/aiwf_default_mode.md +0 -66
- package/claude-code/aiwf/en/.claude/commands/aiwf/aiwf_discuss_review.md +0 -29
- package/claude-code/aiwf/en/.claude/commands/aiwf/aiwf_do_task.md +0 -109
- package/claude-code/aiwf/en/.claude/commands/aiwf/aiwf_docs.md +0 -225
- package/claude-code/aiwf/en/.claude/commands/aiwf/aiwf_get_feature_details.md +0 -78
- package/claude-code/aiwf/en/.claude/commands/aiwf/aiwf_infinite.md +0 -202
- package/claude-code/aiwf/en/.claude/commands/aiwf/aiwf_initialize.md +0 -134
- package/claude-code/aiwf/en/.claude/commands/aiwf/aiwf_issue_create.md +0 -65
- package/claude-code/aiwf/en/.claude/commands/aiwf/aiwf_link_feature_to_milestone.md +0 -57
- package/claude-code/aiwf/en/.claude/commands/aiwf/aiwf_list_features.md +0 -54
- package/claude-code/aiwf/en/.claude/commands/aiwf/aiwf_mermaid.md +0 -272
- package/claude-code/aiwf/en/.claude/commands/aiwf/aiwf_persona_architect.md +0 -60
- package/claude-code/aiwf/en/.claude/commands/aiwf/aiwf_persona_backend.md +0 -60
- package/claude-code/aiwf/en/.claude/commands/aiwf/aiwf_persona_data_analyst.md +0 -60
- package/claude-code/aiwf/en/.claude/commands/aiwf/aiwf_persona_frontend.md +0 -60
- package/claude-code/aiwf/en/.claude/commands/aiwf/aiwf_persona_security.md +0 -60
- package/claude-code/aiwf/en/.claude/commands/aiwf/aiwf_persona_status.md +0 -72
- package/claude-code/aiwf/en/.claude/commands/aiwf/aiwf_pr_create.md +0 -76
- package/claude-code/aiwf/en/.claude/commands/aiwf/aiwf_prime.md +0 -9
- package/claude-code/aiwf/en/.claude/commands/aiwf/aiwf_project_review.md +0 -261
- package/claude-code/aiwf/en/.claude/commands/aiwf/aiwf_switch_language.md +0 -160
- package/claude-code/aiwf/en/.claude/commands/aiwf/aiwf_test.md +0 -125
- package/claude-code/aiwf/en/.claude/commands/aiwf/aiwf_testing_review.md +0 -198
- package/claude-code/aiwf/en/.claude/commands/aiwf/aiwf_tm-run-all-subtask.md +0 -206
- package/claude-code/aiwf/en/.claude/commands/aiwf/aiwf_ultrathink_code_advanced.md +0 -460
- package/claude-code/aiwf/en/.claude/commands/aiwf/aiwf_ultrathink_code_basic.md +0 -165
- package/claude-code/aiwf/en/.claude/commands/aiwf/aiwf_ultrathink_general.md +0 -362
- package/claude-code/aiwf/en/.claude/commands/aiwf/aiwf_update_feature_status.md +0 -53
- package/claude-code/aiwf/en/.claude/commands/aiwf/aiwf_yolo.md +0 -300
- package/claude-code/aiwf/en/.claude/mcp.json +0 -31
- package/claude-code/aiwf/en/.claude/settings.json +0 -102
- package/claude-code/aiwf/en/commands/ai-persona.js +0 -667
- package/claude-code/aiwf/en/commands/compress-context.js +0 -355
- package/claude-code/aiwf/en/commands/feature-ledger.js +0 -565
- package/claude-code/aiwf/en/config/commit-patterns.js +0 -103
- package/claude-code/aiwf/en/hooks/install-hooks.sh +0 -100
- package/claude-code/aiwf/en/hooks/post-commit +0 -84
- package/claude-code/aiwf/en/tests/compression-test-suite.js +0 -1252
- package/claude-code/aiwf/en/tests/test-git-integration.js +0 -164
- package/claude-code/aiwf/en/tests/token-tracking.test.js +0 -537
- package/claude-code/aiwf/en/utils/context-compressor.js +0 -583
- package/claude-code/aiwf/en/utils/git-utils.js +0 -220
- package/claude-code/aiwf/en/utils/text-summarizer.js +0 -487
- package/claude-code/aiwf/ko/.aiwf/00_PROJECT_MANIFEST.md +0 -49
- package/claude-code/aiwf/ko/.aiwf/01_PROJECT_DOCS/ARCHITECTURE.md +0 -55
- package/claude-code/aiwf/ko/.aiwf/02_REQUIREMENTS/CLAUDE.md +0 -78
- package/claude-code/aiwf/ko/.aiwf/02_REQUIREMENTS/M01_Backend_Setup/M01_milestone_meta.md +0 -42
- package/claude-code/aiwf/ko/.aiwf/02_REQUIREMENTS/M01_Backend_Setup/PRD_AMEND_01_Auth_Flow_Update.md +0 -73
- package/claude-code/aiwf/ko/.aiwf/02_REQUIREMENTS/M01_Backend_Setup/PRD_Backend_Setup.md +0 -98
- package/claude-code/aiwf/ko/.aiwf/02_REQUIREMENTS/M01_Backend_Setup/SPECS_API_V1.md +0 -232
- package/claude-code/aiwf/ko/.aiwf/03_SPRINTS/CLAUDE.md +0 -83
- package/claude-code/aiwf/ko/.aiwf/03_SPRINTS/S01_M01_Initial_API/S01_sprint_meta.md +0 -49
- package/claude-code/aiwf/ko/.aiwf/03_SPRINTS/S01_M01_Initial_API/T01_S01_Setup_Project_Structure.md +0 -60
- package/claude-code/aiwf/ko/.aiwf/04_GENERAL_TASKS/CLAUDE.md +0 -96
- package/claude-code/aiwf/ko/.aiwf/04_GENERAL_TASKS/T002_API_Rate_Limiting.md +0 -54
- package/claude-code/aiwf/ko/.aiwf/04_GENERAL_TASKS/TX001_Refactor_Logging_Module.md +0 -58
- package/claude-code/aiwf/ko/.aiwf/05_ARCHITECTURAL_DECISIONS/ADR001_Chosen_Database_System.md +0 -119
- package/claude-code/aiwf/ko/.aiwf/05_ARCHITECTURAL_DECISIONS/ADR002_API_Authentication_Method.md +0 -124
- package/claude-code/aiwf/ko/.aiwf/06_FEATURE_LEDGERS/FEATURE_ID_GENERATOR.md +0 -138
- package/claude-code/aiwf/ko/.aiwf/06_FEATURE_LEDGERS/FEATURE_INDEX.md +0 -186
- package/claude-code/aiwf/ko/.aiwf/06_FEATURE_LEDGERS/FEATURE_METADATA.md +0 -240
- package/claude-code/aiwf/ko/.aiwf/06_FEATURE_LEDGERS/FEATURE_WORKFLOW.md +0 -183
- package/claude-code/aiwf/ko/.aiwf/06_FEATURE_LEDGERS/README.md +0 -94
- package/claude-code/aiwf/ko/.aiwf/06_FEATURE_LEDGERS/active/FL001_/354/202/254/354/232/251/354/236/220_/354/235/270/354/246/235_/354/213/234/354/212/244/355/205/234.md +0 -154
- package/claude-code/aiwf/ko/.aiwf/06_FEATURE_LEDGERS/active/FL002_ai_/355/216/230/353/245/264/354/206/214/353/202/230_/354/213/234/354/212/244/355/205/234.md +0 -272
- package/claude-code/aiwf/ko/.aiwf/06_FEATURE_LEDGERS/completed/FL003_/353/213/244/352/265/255/354/226/264_/353/252/205/353/240/271/354/226/264_/355/221/234/354/244/200/355/231/224.md +0 -266
- package/claude-code/aiwf/ko/.aiwf/06_FEATURE_LEDGERS/schemas/feature_schema.json +0 -122
- package/claude-code/aiwf/ko/.aiwf/06_FEATURE_LEDGERS/schemas/feature_validator.cjs +0 -406
- package/claude-code/aiwf/ko/.aiwf/10_STATE_OF_PROJECT/2025-06-12-12-00-needs-focus.md +0 -139
- package/claude-code/aiwf/ko/.aiwf/10_STATE_OF_PROJECT/2025-06-12-12-00-test-alignment.md +0 -155
- package/claude-code/aiwf/ko/.aiwf/10_STATE_OF_PROJECT/2025-06-13-00-50-solid-progress.md +0 -122
- package/claude-code/aiwf/ko/.aiwf/10_STATE_OF_PROJECT/2025-06-14-08-30-infrastructure-challenges.md +0 -141
- package/claude-code/aiwf/ko/.aiwf/10_STATE_OF_PROJECT/2025-06-16-21-48-critical-foundation-issues.md +0 -177
- package/claude-code/aiwf/ko/.aiwf/10_STATE_OF_PROJECT/2025-06-17-15-08-solid-progress.md +0 -149
- package/claude-code/aiwf/ko/.aiwf/10_STATE_OF_PROJECT/index.json +0 -5
- package/claude-code/aiwf/ko/.aiwf/10_STATE_OF_PROJECT/sync-index.js +0 -78
- package/claude-code/aiwf/ko/.aiwf/98_PROMPTS/github_integration.md +0 -130
- package/claude-code/aiwf/ko/.aiwf/98_PROMPTS/useful-prompts.md +0 -31
- package/claude-code/aiwf/ko/.aiwf/98_PROMPTS/vibe-front-prompts.md +0 -89
- package/claude-code/aiwf/ko/.aiwf/99_TEMPLATES/adr_template.md +0 -49
- package/claude-code/aiwf/ko/.aiwf/99_TEMPLATES/milestone_meta_template.md +0 -25
- package/claude-code/aiwf/ko/.aiwf/99_TEMPLATES/project_manifest_template.md +0 -39
- package/claude-code/aiwf/ko/.aiwf/99_TEMPLATES/sprint_meta_template.md +0 -23
- package/claude-code/aiwf/ko/.aiwf/99_TEMPLATES/task_template.md +0 -36
- package/claude-code/aiwf/ko/.aiwf/CLAUDE.md +0 -76
- package/claude-code/aiwf/ko/.aiwf/README.md +0 -97
- package/claude-code/aiwf/ko/.claude/CLAUDE_BE.md +0 -276
- package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_changelog.md +0 -82
- package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_code_review.md +0 -88
- package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_commit.md +0 -160
- package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_compress_aggressive_persona.md +0 -53
- package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_compress_context.md +0 -116
- package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_compress_minimal_persona.md +0 -48
- package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_compress_stats.md +0 -79
- package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_compress_with_persona.md +0 -51
- package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_create_feature_ledger.md +0 -54
- package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_create_general_task.md +0 -147
- package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_create_milestone_plan.md +0 -194
- package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_create_prd.md +0 -280
- package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_create_sprint_tasks.md +0 -189
- package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_create_sprints_from_milestone.md +0 -121
- package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_create_testcase.md +0 -561
- package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_default_mode.md +0 -44
- package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_discuss_review.md +0 -29
- package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_do_task.md +0 -109
- package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_docs.md +0 -225
- package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_evaluate.md +0 -92
- package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_get_feature_details.md +0 -78
- package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_infinite.md +0 -202
- package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_initialize.md +0 -134
- package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_issue_create.md +0 -65
- package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_link_feature_to_milestone.md +0 -57
- package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_list_features.md +0 -54
- package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_mermaid.md +0 -272
- package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_persona_architect.md +0 -48
- package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_persona_backend.md +0 -37
- package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_persona_data_analyst.md +0 -37
- package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_persona_frontend.md +0 -37
- package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_persona_security.md +0 -48
- package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_persona_status.md +0 -50
- package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_pr_create.md +0 -76
- package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_prime.md +0 -9
- package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_project_review.md +0 -261
- package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_switch_language.md +0 -160
- package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_test.md +0 -124
- package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_testing_review.md +0 -198
- package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_tm-run-all-subtask.md +0 -210
- package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_ultrathink_code_advanced.md +0 -460
- package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_ultrathink_code_basic.md +0 -165
- package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_ultrathink_general.md +0 -305
- package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_update_docs_kr.md +0 -25
- package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_update_feature_status.md +0 -53
- package/claude-code/aiwf/ko/.claude/commands/aiwf/aiwf_yolo.md +0 -300
- package/claude-code/aiwf/ko/.claude/mcp.json +0 -31
- package/claude-code/aiwf/ko/.claude/settings.json +0 -102
- package/claude-code/aiwf/ko/CLAUDE.md +0 -76
- package/claude-code/aiwf/ko/ai-tools/README.md +0 -105
- package/claude-code/aiwf/ko/ai-tools/augment/README.md +0 -371
- package/claude-code/aiwf/ko/ai-tools/augment/config.json +0 -30
- package/claude-code/aiwf/ko/ai-tools/augment/template/.augment/aiwf-integration.md +0 -387
- package/claude-code/aiwf/ko/ai-tools/augment/template/.augment/augment.yaml +0 -347
- package/claude-code/aiwf/ko/ai-tools/augment/template/augment.config.json +0 -64
- package/claude-code/aiwf/ko/ai-tools/claude-code/README.md +0 -151
- package/claude-code/aiwf/ko/ai-tools/claude-code/config.json +0 -28
- package/claude-code/aiwf/ko/ai-tools/claude-code/template/CLAUDE.md +0 -91
- package/claude-code/aiwf/ko/ai-tools/cursor/README.md +0 -314
- package/claude-code/aiwf/ko/ai-tools/cursor/config.json +0 -29
- package/claude-code/aiwf/ko/ai-tools/cursor/template/.cursorrules +0 -362
- package/claude-code/aiwf/ko/ai-tools/github-copilot/README.md +0 -195
- package/claude-code/aiwf/ko/ai-tools/github-copilot/config.json +0 -24
- package/claude-code/aiwf/ko/ai-tools/github-copilot/template/.github/copilot-instructions.md +0 -202
- package/claude-code/aiwf/ko/ai-tools/windsurf/README.md +0 -355
- package/claude-code/aiwf/ko/ai-tools/windsurf/config.json +0 -29
- package/claude-code/aiwf/ko/ai-tools/windsurf/template/.windsurf/aiwf-rules.md +0 -260
- package/claude-code/aiwf/ko/ai-tools/windsurf/template/.windsurf/windsurf.config.js +0 -312
- package/claude-code/aiwf/ko/ai-tools/windsurf/template/windsurf.config.json +0 -63
- package/claude-code/aiwf/ko/commands/feature_commit_report.js +0 -370
- package/claude-code/aiwf/ko/commands/scan_git_history.js +0 -234
- package/claude-code/aiwf/ko/commands/sync_feature_commits.js +0 -154
- package/claude-code/aiwf/ko/commands/token-tracking.js +0 -443
- package/claude-code/aiwf/ko/feature-ledger/FL-001-authentication.json +0 -52
- package/claude-code/aiwf/ko/feature-ledger/feature-index.json +0 -20
- package/claude-code/aiwf/ko/hooks/install-hooks.sh +0 -100
- package/claude-code/aiwf/ko/hooks/post-commit +0 -84
- package/claude-code/aiwf/ko/personas/PERSONA_INDEX.md +0 -57
- package/claude-code/aiwf/ko/personas/analyst.json +0 -44
- package/claude-code/aiwf/ko/personas/architect/best_practices.md +0 -136
- package/claude-code/aiwf/ko/personas/architect/knowledge_base.md +0 -377
- package/claude-code/aiwf/ko/personas/architect.json +0 -44
- package/claude-code/aiwf/ko/personas/backend/best_practices.md +0 -766
- package/claude-code/aiwf/ko/personas/backend/knowledge_base.md +0 -1070
- package/claude-code/aiwf/ko/personas/data_analyst/best_practices.md +0 -594
- package/claude-code/aiwf/ko/personas/data_analyst/knowledge_base.md +0 -1057
- package/claude-code/aiwf/ko/personas/developer.json +0 -44
- package/claude-code/aiwf/ko/personas/developer.md +0 -37
- package/claude-code/aiwf/ko/personas/evaluation_criteria.json +0 -137
- package/claude-code/aiwf/ko/personas/frontend/best_practices.md +0 -445
- package/claude-code/aiwf/ko/personas/frontend/knowledge_base.md +0 -729
- package/claude-code/aiwf/ko/personas/persona-index.json +0 -31
- package/claude-code/aiwf/ko/personas/reviewer.json +0 -44
- package/claude-code/aiwf/ko/personas/security/best_practices.md +0 -307
- package/claude-code/aiwf/ko/personas/security/knowledge_base.md +0 -498
- package/claude-code/aiwf/ko/personas/tester.json +0 -44
- package/claude-code/aiwf/ko/scripts/cache-templates.js +0 -209
- package/claude-code/aiwf/ko/scripts/create-offline.js +0 -86
- package/claude-code/aiwf/ko/scripts/create-project.js +0 -151
- package/claude-code/aiwf/ko/scripts/feature-progress-calculator.cjs +0 -236
- package/claude-code/aiwf/ko/scripts/git-integration.cjs +0 -391
- package/claude-code/aiwf/ko/scripts/install-git-hooks.cjs +0 -226
- package/claude-code/aiwf/ko/scripts/test-commit-parsing.cjs +0 -125
- package/claude-code/aiwf/ko/scripts/update-feature-status.cjs +0 -198
- package/claude-code/aiwf/ko/tests/compression-test-suite.js +0 -1252
- package/claude-code/aiwf/ko/tests/test-git-integration.js +0 -164
- package/claude-code/aiwf/ko/tests/token-tracking.test.js +0 -537
- package/claude-code/aiwf/ko/utils/compression-metrics.js +0 -1031
- package/claude-code/aiwf/ko/utils/compression-strategies.js +0 -557
- package/claude-code/aiwf/ko/utils/content-normalizer.js +0 -455
- package/claude-code/aiwf/ko/utils/feature-updater.js +0 -271
- package/claude-code/aiwf/ko/utils/importance-classifier.js +0 -645
- package/claude-code/aiwf/ko/utils/information-filter.js +0 -710
- package/claude-code/aiwf/ko/utils/token-counter.js +0 -177
- package/claude-code/aiwf/ko/utils/token-monitor.js +0 -484
- package/claude-code/aiwf/ko/utils/token-reporter.js +0 -453
- package/claude-code/aiwf/ko/utils/token-storage.js +0 -433
- package/claude-code/aiwf/ko/utils/token-tracker.js +0 -283
- package/claude-code/docker/Dockerfile +0 -117
- package/jest.config.js +0 -23
- package/scripts/update-feature-status.js +0 -70
- package/tests/application.test.js +0 -260
- package/tests/basic.test.js +0 -62
- package/tests/commands.test.js +0 -127
- package/tests/installer.test.js +0 -129
- package/tests/integration/ai-persona-system.test.js +0 -396
- package/tests/integration/ai-persona.test.js +0 -390
- package/tests/integration/command-integration.test.js +0 -600
- package/tests/integration/context-compression.test.js +0 -361
- package/tests/integration/feature-ledger.test.js +0 -226
- package/tests/integration/git-integration.test.js +0 -307
- package/tests/integration/m02-milestone.test.js +0 -420
- package/tests/integration/persona-context-application.test.js +0 -508
- package/tests/integration/setup.js +0 -174
- package/tests/integration/test-persona-aware-compression.js +0 -93
- package/tests/integration/test-persona-system/.aiwf/metrics/metrics.json +0 -833
- package/tests/integration/test-persona-system/docs/README.md +0 -1
- package/tests/integration/test-persona-system/package.json +0 -1
- package/tests/integration/test-persona-system/src/auth.js +0 -1
- package/tests/integration/test-persona-system/src/index.js +0 -1
- package/tests/integration/test-persona-system/test/test.js +0 -1
- package/tests/language-utils.test.js +0 -287
- package/tests/s02-integration.test.js +0 -422
- package/tests/unit/ai-persona-manager.test.js +0 -514
- package/tests/unit/sprint-task.test.js +0 -172
- /package/{claude-code/aiwf/ko → src/lib/resources}/commands/compress-context.js +0 -0
- /package/{claude-code/aiwf/ko → src/lib/resources}/commands/evaluate.js +0 -0
- /package/{claude-code/aiwf/ko → src/lib/resources}/commands/feature-ledger.js +0 -0
- /package/{claude-code/aiwf/en → src/lib/resources}/commands/feature_commit_report.js +0 -0
- /package/{claude-code/aiwf/ko → src/lib/resources}/commands/persona-context-apply.js +0 -0
- /package/{claude-code/aiwf/en → src/lib/resources}/commands/scan_git_history.js +0 -0
- /package/{claude-code/aiwf/en → src/lib/resources}/commands/sync_feature_commits.js +0 -0
- /package/{claude-code/aiwf/en → src/lib/resources}/commands/token-tracking.js +0 -0
- /package/{claude-code/aiwf/ko → src/lib/resources}/config/commit-patterns.js +0 -0
- /package/{claude-code/aiwf/ko → src/lib/resources}/config/language.json +0 -0
- /package/{.aiwf/07_AI_PERSONAS → src/lib/resources/personas}/PERSONA_INDEX.md +0 -0
- /package/{.aiwf → src/lib/resources}/personas/analyst.json +0 -0
- /package/{.aiwf → src/lib/resources}/personas/architect/best_practices.md +0 -0
- /package/{.aiwf → src/lib/resources}/personas/architect/knowledge_base.md +0 -0
- /package/{.aiwf → src/lib/resources}/personas/architect.json +0 -0
- /package/{.aiwf → src/lib/resources}/personas/backend/best_practices.md +0 -0
- /package/{.aiwf → src/lib/resources}/personas/backend/knowledge_base.md +0 -0
- /package/{.aiwf → src/lib/resources}/personas/data_analyst/best_practices.md +0 -0
- /package/{.aiwf → src/lib/resources}/personas/data_analyst/knowledge_base.md +0 -0
- /package/{.aiwf → src/lib/resources}/personas/developer.json +0 -0
- /package/{.aiwf/10_PERSONAS → src/lib/resources/personas}/developer.md +0 -0
- /package/{.aiwf → src/lib/resources}/personas/evaluation_criteria.json +0 -0
- /package/{.aiwf → src/lib/resources}/personas/frontend/best_practices.md +0 -0
- /package/{.aiwf → src/lib/resources}/personas/frontend/knowledge_base.md +0 -0
- /package/{.aiwf → src/lib/resources}/personas/persona-index.json +0 -0
- /package/{.aiwf → src/lib/resources}/personas/reviewer.json +0 -0
- /package/{.aiwf → src/lib/resources}/personas/security/best_practices.md +0 -0
- /package/{.aiwf → src/lib/resources}/personas/security/knowledge_base.md +0 -0
- /package/{.aiwf → src/lib/resources}/personas/tester.json +0 -0
- /package/{claude-code/aiwf/ko → src/lib/resources}/templates/README.md +0 -0
- /package/{claude-code/aiwf/ko → src/lib/resources}/templates/api-server/config.json +0 -0
- /package/{claude-code/aiwf/ko → src/lib/resources}/templates/api-server/template/.aiwf/config.json +0 -0
- /package/{claude-code/aiwf/ko → src/lib/resources}/templates/api-server/template/.aiwf/feature-ledger.json +0 -0
- /package/{claude-code/aiwf/ko → src/lib/resources}/templates/api-server/template/.aiwf/personas/backend-engineer.json +0 -0
- /package/{claude-code/aiwf/ko → src/lib/resources}/templates/api-server/template/.aiwf/scripts/cli.js +0 -0
- /package/{claude-code/aiwf/ko → src/lib/resources}/templates/api-server/template/.env.example +0 -0
- /package/{claude-code/aiwf/ko → src/lib/resources}/templates/api-server/template/.eslintrc.json +0 -0
- /package/{claude-code/aiwf/ko → src/lib/resources}/templates/api-server/template/README.md +0 -0
- /package/{claude-code/aiwf/ko → src/lib/resources}/templates/api-server/template/jest.config.js +0 -0
- /package/{claude-code/aiwf/ko → src/lib/resources}/templates/api-server/template/nodemon.json +0 -0
- /package/{claude-code/aiwf/ko → src/lib/resources}/templates/api-server/template/package.json +0 -0
- /package/{claude-code/aiwf/ko → src/lib/resources}/templates/api-server/template/src/app.ts +0 -0
- /package/{claude-code/aiwf/ko → src/lib/resources}/templates/api-server/template/src/config/swagger.ts +0 -0
- /package/{claude-code/aiwf/ko → src/lib/resources}/templates/api-server/template/src/controllers/aiwfController.ts +0 -0
- /package/{claude-code/aiwf/ko → src/lib/resources}/templates/api-server/template/src/controllers/authController.ts +0 -0
- /package/{claude-code/aiwf/ko → src/lib/resources}/templates/api-server/template/src/controllers/statusController.ts +0 -0
- /package/{claude-code/aiwf/ko → src/lib/resources}/templates/api-server/template/src/index.ts +0 -0
- /package/{claude-code/aiwf/ko → src/lib/resources}/templates/api-server/template/src/middleware/aiwfMiddleware.ts +0 -0
- /package/{claude-code/aiwf/ko → src/lib/resources}/templates/api-server/template/src/middleware/authMiddleware.ts +0 -0
- /package/{claude-code/aiwf/ko → src/lib/resources}/templates/api-server/template/src/middleware/errorHandler.ts +0 -0
- /package/{claude-code/aiwf/ko → src/lib/resources}/templates/api-server/template/src/middleware/notFoundHandler.ts +0 -0
- /package/{claude-code/aiwf/ko → src/lib/resources}/templates/api-server/template/src/middleware/requestLogger.ts +0 -0
- /package/{claude-code/aiwf/ko → src/lib/resources}/templates/api-server/template/src/routes/aiwf.ts +0 -0
- /package/{claude-code/aiwf/ko → src/lib/resources}/templates/api-server/template/src/routes/index.ts +0 -0
- /package/{claude-code/aiwf/ko → src/lib/resources}/templates/api-server/template/src/routes/v1/index.ts +0 -0
- /package/{claude-code/aiwf/ko → src/lib/resources}/templates/api-server/template/src/utils/logger.ts +0 -0
- /package/{claude-code/aiwf/ko → src/lib/resources}/templates/api-server/template/tests/app.test.ts +0 -0
- /package/{claude-code/aiwf/ko → src/lib/resources}/templates/api-server/template/tsconfig.json +0 -0
- /package/{claude-code/aiwf/ko → src/lib/resources}/templates/npm-library/config.json +0 -0
- /package/{claude-code/aiwf/ko → src/lib/resources}/templates/npm-library/template/LICENSE +0 -0
- /package/{claude-code/aiwf/ko → src/lib/resources}/templates/npm-library/template/README.md +0 -0
- /package/{claude-code/aiwf/ko → src/lib/resources}/templates/npm-library/template/package.json +0 -0
- /package/{claude-code/aiwf/ko → src/lib/resources}/templates/web-app/config.json +0 -0
- /package/{claude-code/aiwf/ko → src/lib/resources}/templates/web-app/template/.aiwf/config.json +0 -0
- /package/{claude-code/aiwf/ko → src/lib/resources}/templates/web-app/template/.aiwf/feature-ledger.json +0 -0
- /package/{claude-code/aiwf/ko → src/lib/resources}/templates/web-app/template/.aiwf/personas/fullstack-developer.json +0 -0
- /package/{claude-code/aiwf/ko → src/lib/resources}/templates/web-app/template/.aiwf/scripts/cli.js +0 -0
- /package/{claude-code/aiwf/ko → src/lib/resources}/templates/web-app/template/.eslintrc.cjs +0 -0
- /package/{claude-code/aiwf/ko → src/lib/resources}/templates/web-app/template/README.md +0 -0
- /package/{claude-code/aiwf/ko → src/lib/resources}/templates/web-app/template/index.html +0 -0
- /package/{claude-code/aiwf/ko → src/lib/resources}/templates/web-app/template/package.json +0 -0
- /package/{claude-code/aiwf/ko → src/lib/resources}/templates/web-app/template/postcss.config.js +0 -0
- /package/{claude-code/aiwf/ko → src/lib/resources}/templates/web-app/template/public/vite.svg +0 -0
- /package/{claude-code/aiwf/ko → src/lib/resources}/templates/web-app/template/src/App.tsx +0 -0
- /package/{claude-code/aiwf/ko → src/lib/resources}/templates/web-app/template/src/components/Layout.tsx +0 -0
- /package/{claude-code/aiwf/ko → src/lib/resources}/templates/web-app/template/src/components/aiwf/ContextStatus.tsx +0 -0
- /package/{claude-code/aiwf/ko → src/lib/resources}/templates/web-app/template/src/components/aiwf/FeatureLedger.tsx +0 -0
- /package/{claude-code/aiwf/ko → src/lib/resources}/templates/web-app/template/src/components/aiwf/TokenUsage.tsx +0 -0
- /package/{claude-code/aiwf/ko → src/lib/resources}/templates/web-app/template/src/index.css +0 -0
- /package/{claude-code/aiwf/ko → src/lib/resources}/templates/web-app/template/src/main.tsx +0 -0
- /package/{claude-code/aiwf/ko → src/lib/resources}/templates/web-app/template/src/pages/AiwfDashboard.tsx +0 -0
- /package/{claude-code/aiwf/ko → src/lib/resources}/templates/web-app/template/src/pages/HomePage.tsx +0 -0
- /package/{claude-code/aiwf/ko → src/lib/resources}/templates/web-app/template/src/pages/NotFound.tsx +0 -0
- /package/{claude-code/aiwf/ko → src/lib/resources}/templates/web-app/template/src/stores/aiwfStore.ts +0 -0
- /package/{claude-code/aiwf/ko → src/lib/resources}/templates/web-app/template/src/types/global.d.ts +0 -0
- /package/{claude-code/aiwf/ko → src/lib/resources}/templates/web-app/template/src/vite-env.d.ts +0 -0
- /package/{claude-code/aiwf/ko → src/lib/resources}/templates/web-app/template/tailwind.config.js +0 -0
- /package/{claude-code/aiwf/ko → src/lib/resources}/templates/web-app/template/tsconfig.json +0 -0
- /package/{claude-code/aiwf/ko → src/lib/resources}/templates/web-app/template/tsconfig.node.json +0 -0
- /package/{claude-code/aiwf/ko → src/lib/resources}/templates/web-app/template/vite.config.ts +0 -0
- /package/{claude-code/aiwf/ko → src/lib/resources}/utils/background-monitor.js +0 -0
- /package/{claude-code/aiwf/en → src/lib/resources}/utils/compression-metrics.js +0 -0
- /package/{claude-code/aiwf/en → src/lib/resources}/utils/compression-strategies.js +0 -0
- /package/{claude-code/aiwf/en → src/lib/resources}/utils/content-normalizer.js +0 -0
- /package/{claude-code/aiwf/ko → src/lib/resources}/utils/context-compressor.js +0 -0
- /package/{claude-code/aiwf/ko → src/lib/resources}/utils/context-rule-parser.js +0 -0
- /package/{claude-code/aiwf/ko → src/lib/resources}/utils/context-token-monitor.js +0 -0
- /package/{claude-code/aiwf/ko → src/lib/resources}/utils/context-update-manager.js +0 -0
- /package/{claude-code/aiwf/en → src/lib/resources}/utils/feature-updater.js +0 -0
- /package/{claude-code/aiwf/ko → src/lib/resources}/utils/git-utils.js +0 -0
- /package/{claude-code/aiwf/en → src/lib/resources}/utils/importance-classifier.js +0 -0
- /package/{claude-code/aiwf/en → src/lib/resources}/utils/information-filter.js +0 -0
- /package/{claude-code/aiwf/ko → src/lib/resources}/utils/persona-aware-compressor.js +0 -0
- /package/{claude-code/aiwf/ko → src/lib/resources}/utils/prompt-injector.js +0 -0
- /package/{claude-code/aiwf/ko → src/lib/resources}/utils/simplified-evaluator.js +0 -0
- /package/{claude-code/aiwf/ko → src/lib/resources}/utils/text-summarizer.js +0 -0
- /package/{claude-code/aiwf/en → src/lib/resources}/utils/token-counter.js +0 -0
- /package/{claude-code/aiwf/en → src/lib/resources}/utils/token-monitor.js +0 -0
- /package/{claude-code/aiwf/en → src/lib/resources}/utils/token-reporter.js +0 -0
- /package/{claude-code/aiwf/en → src/lib/resources}/utils/token-storage.js +0 -0
- /package/{claude-code/aiwf/en → src/lib/resources}/utils/token-tracker.js +0 -0
|
@@ -0,0 +1,356 @@
|
|
|
1
|
+
# 체크포인트 시스템 가이드
|
|
2
|
+
|
|
3
|
+
[Read in English](checkpoint-system-guide.md)
|
|
4
|
+
|
|
5
|
+
## 개요
|
|
6
|
+
|
|
7
|
+
AIWF 체크포인트 시스템은 YOLO 모드 실행을 위한 강력한 복구 및 진행 상황 추적을 제공하도록 설계되었습니다. 중요한 시점에 자동으로 상태를 저장하고 중단 후 원활한 계속을 허용합니다.
|
|
8
|
+
|
|
9
|
+
## 핵심 개념
|
|
10
|
+
|
|
11
|
+
### 체크포인트란?
|
|
12
|
+
|
|
13
|
+
체크포인트는 다음의 스냅샷입니다:
|
|
14
|
+
- 현재 세션 상태
|
|
15
|
+
- 태스크 완료 상태
|
|
16
|
+
- Git 저장소 상태
|
|
17
|
+
- 성능 메트릭
|
|
18
|
+
- 실행 컨텍스트
|
|
19
|
+
|
|
20
|
+
### 체크포인트는 언제 생성되나요?
|
|
21
|
+
|
|
22
|
+
체크포인트는 자동으로 생성됩니다:
|
|
23
|
+
- 세션 시작 시
|
|
24
|
+
- 각 태스크 완료 후
|
|
25
|
+
- 위험한 작업 전
|
|
26
|
+
- 정기적인 간격으로 (설정 가능)
|
|
27
|
+
- 우아한 중단 시
|
|
28
|
+
|
|
29
|
+
추가 안전을 위해 언제든지 수동 체크포인트를 생성할 수 있습니다.
|
|
30
|
+
|
|
31
|
+
## 체크포인트 시스템 사용
|
|
32
|
+
|
|
33
|
+
### 기본 명령어
|
|
34
|
+
|
|
35
|
+
```bash
|
|
36
|
+
# 현재 세션 상태 보기
|
|
37
|
+
aiwf checkpoint status
|
|
38
|
+
|
|
39
|
+
# 사용 가능한 체크포인트 목록
|
|
40
|
+
aiwf checkpoint list
|
|
41
|
+
aiwf checkpoint list --limit 20
|
|
42
|
+
|
|
43
|
+
# 체크포인트에서 복원
|
|
44
|
+
aiwf checkpoint restore cp_1234567890
|
|
45
|
+
|
|
46
|
+
# 수동 체크포인트 생성
|
|
47
|
+
aiwf checkpoint create "주요 리팩토링 전"
|
|
48
|
+
|
|
49
|
+
# 오래된 체크포인트 정리
|
|
50
|
+
aiwf checkpoint clean --keep 10
|
|
51
|
+
```
|
|
52
|
+
|
|
53
|
+
### 전용 CLI 도구
|
|
54
|
+
|
|
55
|
+
`aiwf-checkpoint` 명령어는 고급 기능을 제공합니다:
|
|
56
|
+
|
|
57
|
+
```bash
|
|
58
|
+
# 진행 상황 리포트 생성
|
|
59
|
+
aiwf-checkpoint report
|
|
60
|
+
|
|
61
|
+
# 상세 체크포인트 정보 표시
|
|
62
|
+
aiwf-checkpoint show cp_1234567890
|
|
63
|
+
|
|
64
|
+
# 미리보기와 함께 정리
|
|
65
|
+
aiwf-checkpoint clean --keep 5 --dry-run
|
|
66
|
+
|
|
67
|
+
# 도움말 보기
|
|
68
|
+
aiwf-checkpoint help
|
|
69
|
+
```
|
|
70
|
+
|
|
71
|
+
## 체크포인트 구조
|
|
72
|
+
|
|
73
|
+
### 체크포인트 파일
|
|
74
|
+
|
|
75
|
+
```
|
|
76
|
+
.aiwf/checkpoints/
|
|
77
|
+
├── cp_1703123456789/
|
|
78
|
+
│ ├── metadata.json # 체크포인트 메타데이터
|
|
79
|
+
│ ├── session.json # 세션 상태
|
|
80
|
+
│ ├── git-state.json # Git 저장소 스냅샷
|
|
81
|
+
│ └── metrics.json # 성능 메트릭
|
|
82
|
+
└── current-session.json # 활성 세션 참조
|
|
83
|
+
```
|
|
84
|
+
|
|
85
|
+
### 메타데이터 내용
|
|
86
|
+
|
|
87
|
+
```json
|
|
88
|
+
{
|
|
89
|
+
"id": "cp_1703123456789",
|
|
90
|
+
"type": "task_complete",
|
|
91
|
+
"timestamp": "2024-12-25T10:30:45.789Z",
|
|
92
|
+
"session_id": "session_1703123456789",
|
|
93
|
+
"description": "태스크 T01_S01 완료",
|
|
94
|
+
"git_commit": "abc123def",
|
|
95
|
+
"tasks_completed": 5,
|
|
96
|
+
"sprint": "S01"
|
|
97
|
+
}
|
|
98
|
+
```
|
|
99
|
+
|
|
100
|
+
## 복구 프로세스
|
|
101
|
+
|
|
102
|
+
### 자동 복구
|
|
103
|
+
|
|
104
|
+
YOLO 모드가 시작될 때 다음을 확인합니다:
|
|
105
|
+
1. 미완료 태스크가 있는 활성 세션
|
|
106
|
+
2. 최근 체크포인트
|
|
107
|
+
3. Git 상태 일관성
|
|
108
|
+
|
|
109
|
+
미완료 세션이 발견되면 다음 중 선택하라는 메시지가 표시됩니다:
|
|
110
|
+
- 마지막 체크포인트에서 계속
|
|
111
|
+
- 새로 시작
|
|
112
|
+
- 체크포인트 세부 정보 검토
|
|
113
|
+
|
|
114
|
+
### 수동 복구
|
|
115
|
+
|
|
116
|
+
```bash
|
|
117
|
+
# 1. 사용 가능한 항목 확인
|
|
118
|
+
aiwf checkpoint list
|
|
119
|
+
|
|
120
|
+
# 2. 특정 체크포인트 세부 정보 보기
|
|
121
|
+
aiwf-checkpoint show cp_1703123456789
|
|
122
|
+
|
|
123
|
+
# 3. 적절한 경우 복원
|
|
124
|
+
aiwf checkpoint restore cp_1703123456789
|
|
125
|
+
|
|
126
|
+
# 4. YOLO 모드에서 계속
|
|
127
|
+
# Claude Code에서: /project:aiwf:yolo
|
|
128
|
+
```
|
|
129
|
+
|
|
130
|
+
## YOLO 모드와의 통합
|
|
131
|
+
|
|
132
|
+
### YOLO 설정
|
|
133
|
+
|
|
134
|
+
`.aiwf/yolo-config.yaml`에서 체크포인트 동작 구성:
|
|
135
|
+
|
|
136
|
+
```yaml
|
|
137
|
+
checkpoint:
|
|
138
|
+
auto_checkpoint: true
|
|
139
|
+
interval_minutes: 15
|
|
140
|
+
max_checkpoints: 50
|
|
141
|
+
checkpoint_on:
|
|
142
|
+
- task_complete
|
|
143
|
+
- sprint_complete
|
|
144
|
+
- before_risky_operation
|
|
145
|
+
- interval
|
|
146
|
+
```
|
|
147
|
+
|
|
148
|
+
### YOLO 실행 흐름
|
|
149
|
+
|
|
150
|
+
```
|
|
151
|
+
YOLO 시작 → 복구 확인 → 세션 생성 → 태스크 실행
|
|
152
|
+
↓ ↓
|
|
153
|
+
[체크포인트 있음] [체크포인트 생성]
|
|
154
|
+
↓ ↓
|
|
155
|
+
복구 프롬프트 실행 계속
|
|
156
|
+
```
|
|
157
|
+
|
|
158
|
+
## 모범 사례
|
|
159
|
+
|
|
160
|
+
### 1. 정기적인 정리
|
|
161
|
+
|
|
162
|
+
```bash
|
|
163
|
+
# 마지막 10개 체크포인트 유지
|
|
164
|
+
aiwf checkpoint clean --keep 10
|
|
165
|
+
|
|
166
|
+
# 또는 기간(일)으로 정리
|
|
167
|
+
aiwf checkpoint clean --older-than 7
|
|
168
|
+
```
|
|
169
|
+
|
|
170
|
+
### 2. 안전을 위한 수동 체크포인트
|
|
171
|
+
|
|
172
|
+
다음 작업 전에 수동 체크포인트 생성:
|
|
173
|
+
- 주요 리팩토링
|
|
174
|
+
- 데이터베이스 마이그레이션
|
|
175
|
+
- 브레이킹 체인지
|
|
176
|
+
- 실험적 기능
|
|
177
|
+
|
|
178
|
+
```bash
|
|
179
|
+
aiwf checkpoint create "데이터베이스 스키마 변경 전"
|
|
180
|
+
```
|
|
181
|
+
|
|
182
|
+
### 3. 체크포인트 상태 모니터링
|
|
183
|
+
|
|
184
|
+
```bash
|
|
185
|
+
# 정기적인 상태 확인
|
|
186
|
+
aiwf checkpoint status
|
|
187
|
+
|
|
188
|
+
# 주간 리포트
|
|
189
|
+
aiwf-checkpoint report --period week
|
|
190
|
+
```
|
|
191
|
+
|
|
192
|
+
### 4. Git 상태 정렬
|
|
193
|
+
|
|
194
|
+
Git 상태가 체크포인트와 일치하는지 확인:
|
|
195
|
+
```bash
|
|
196
|
+
# 복원 전
|
|
197
|
+
git status
|
|
198
|
+
|
|
199
|
+
# 복원 후
|
|
200
|
+
git log --oneline -5
|
|
201
|
+
```
|
|
202
|
+
|
|
203
|
+
## 고급 기능
|
|
204
|
+
|
|
205
|
+
### 세션 메트릭
|
|
206
|
+
|
|
207
|
+
각 체크포인트는 다음을 추적합니다:
|
|
208
|
+
- 실행 시간
|
|
209
|
+
- 완료된 태스크
|
|
210
|
+
- 성공/실패 비율
|
|
211
|
+
- 토큰 사용량 (가능한 경우)
|
|
212
|
+
- 메모리 사용량
|
|
213
|
+
|
|
214
|
+
메트릭 보기:
|
|
215
|
+
```bash
|
|
216
|
+
aiwf-checkpoint report --detailed
|
|
217
|
+
```
|
|
218
|
+
|
|
219
|
+
### 체크포인트 타입
|
|
220
|
+
|
|
221
|
+
1. **session_start**: YOLO 세션 시작
|
|
222
|
+
2. **task_complete**: 태스크 완료 후
|
|
223
|
+
3. **sprint_complete**: 스프린트 마일스톤
|
|
224
|
+
4. **auto**: 정기 간격 체크포인트
|
|
225
|
+
5. **manual**: 사용자 생성 체크포인트
|
|
226
|
+
6. **error_recovery**: 오류 처리 후
|
|
227
|
+
|
|
228
|
+
### 병렬 세션
|
|
229
|
+
|
|
230
|
+
시스템은 병렬 YOLO 세션을 방지합니다:
|
|
231
|
+
- 하나의 활성 세션만 허용
|
|
232
|
+
- 오래된 세션은 24시간 후 자동 만료
|
|
233
|
+
- `--force` 플래그로 강제 재정의
|
|
234
|
+
|
|
235
|
+
## 문제 해결
|
|
236
|
+
|
|
237
|
+
### 체크포인트를 복원할 수 없음
|
|
238
|
+
|
|
239
|
+
**문제**: "Git 상태 불일치"
|
|
240
|
+
```bash
|
|
241
|
+
# 현재 Git 상태 확인
|
|
242
|
+
git status
|
|
243
|
+
|
|
244
|
+
# 체크포인트 Git 상태 보기
|
|
245
|
+
aiwf-checkpoint show cp_1234567890
|
|
246
|
+
|
|
247
|
+
# 안전한 경우 체크포인트 커밋으로 리셋
|
|
248
|
+
git reset --hard <checkpoint-commit>
|
|
249
|
+
```
|
|
250
|
+
|
|
251
|
+
**문제**: "세션이 이미 활성화됨"
|
|
252
|
+
```bash
|
|
253
|
+
# 활성 세션 확인
|
|
254
|
+
aiwf checkpoint status
|
|
255
|
+
|
|
256
|
+
# 필요한 경우 새 세션 강제
|
|
257
|
+
/project:aiwf:yolo --force
|
|
258
|
+
```
|
|
259
|
+
|
|
260
|
+
### 체크포인트 손상
|
|
261
|
+
|
|
262
|
+
**문제**: "잘못된 체크포인트 데이터"
|
|
263
|
+
```bash
|
|
264
|
+
# 손상된 체크포인트 제거
|
|
265
|
+
rm -rf .aiwf/checkpoints/cp_1234567890
|
|
266
|
+
|
|
267
|
+
# 정리 및 검증
|
|
268
|
+
aiwf checkpoint clean --verify
|
|
269
|
+
```
|
|
270
|
+
|
|
271
|
+
### 저장소 문제
|
|
272
|
+
|
|
273
|
+
**문제**: "체크포인트가 너무 많음"
|
|
274
|
+
```bash
|
|
275
|
+
# 체크포인트 수 확인
|
|
276
|
+
ls -la .aiwf/checkpoints/ | wc -l
|
|
277
|
+
|
|
278
|
+
# 적극적인 정리
|
|
279
|
+
aiwf checkpoint clean --keep 5
|
|
280
|
+
|
|
281
|
+
# 디스크 사용량 확인
|
|
282
|
+
du -sh .aiwf/checkpoints/
|
|
283
|
+
```
|
|
284
|
+
|
|
285
|
+
## 성능 고려사항
|
|
286
|
+
|
|
287
|
+
### 체크포인트 크기
|
|
288
|
+
|
|
289
|
+
- 평균 체크포인트: 10-50 KB
|
|
290
|
+
- 대규모 프로젝트는 더 큰 체크포인트를 가질 수 있음
|
|
291
|
+
- Git 상태 추적은 최소한의 오버헤드 추가
|
|
292
|
+
|
|
293
|
+
### 최적화 팁
|
|
294
|
+
|
|
295
|
+
1. **간격을 현명하게 구성**
|
|
296
|
+
- 기본값: 15분
|
|
297
|
+
- 무거운 작업: 5-10분
|
|
298
|
+
- 가벼운 작업: 20-30분
|
|
299
|
+
|
|
300
|
+
2. **체크포인트 수 제한**
|
|
301
|
+
- 기본값: 마지막 50개 유지
|
|
302
|
+
- 권장: 대부분의 프로젝트에 10-20개
|
|
303
|
+
|
|
304
|
+
3. **간단한 작업에는 비활성화**
|
|
305
|
+
```yaml
|
|
306
|
+
checkpoint:
|
|
307
|
+
auto_checkpoint: false # 간단한 스프린트용
|
|
308
|
+
```
|
|
309
|
+
|
|
310
|
+
## 통합 예시
|
|
311
|
+
|
|
312
|
+
### CI/CD 통합
|
|
313
|
+
|
|
314
|
+
```yaml
|
|
315
|
+
# .github/workflows/yolo-recovery.yml
|
|
316
|
+
name: YOLO 복구 확인
|
|
317
|
+
on:
|
|
318
|
+
schedule:
|
|
319
|
+
- cron: '0 9 * * 1-5' # 평일 오전 9시
|
|
320
|
+
|
|
321
|
+
jobs:
|
|
322
|
+
check-recovery:
|
|
323
|
+
runs-on: ubuntu-latest
|
|
324
|
+
steps:
|
|
325
|
+
- uses: actions/checkout@v3
|
|
326
|
+
- name: AIWF 설치
|
|
327
|
+
run: npm install -g aiwf
|
|
328
|
+
- name: 미완료 세션 확인
|
|
329
|
+
run: |
|
|
330
|
+
if aiwf checkpoint status | grep -q "incomplete"; then
|
|
331
|
+
echo "미완료 YOLO 세션 발견"
|
|
332
|
+
aiwf-checkpoint report
|
|
333
|
+
fi
|
|
334
|
+
```
|
|
335
|
+
|
|
336
|
+
### 사용자 정의 스크립트
|
|
337
|
+
|
|
338
|
+
```bash
|
|
339
|
+
#!/bin/bash
|
|
340
|
+
# backup-checkpoints.sh
|
|
341
|
+
|
|
342
|
+
# 체크포인트 아카이브 생성
|
|
343
|
+
tar -czf checkpoints-$(date +%Y%m%d).tar.gz .aiwf/checkpoints/
|
|
344
|
+
|
|
345
|
+
# 클라우드 스토리지에 업로드
|
|
346
|
+
aws s3 cp checkpoints-*.tar.gz s3://my-bucket/aiwf-backups/
|
|
347
|
+
|
|
348
|
+
# 로컬 오래된 체크포인트 정리
|
|
349
|
+
aiwf checkpoint clean --keep 10
|
|
350
|
+
```
|
|
351
|
+
|
|
352
|
+
## 요약
|
|
353
|
+
|
|
354
|
+
AIWF 체크포인트 시스템은 자율적인 YOLO 세션을 실행할 때 안심을 제공합니다. 진행 상황을 자동으로 추적하고 쉬운 복구를 가능하게 함으로써, 개발자가 작업을 잃을 염려 없이 YOLO 모드의 힘을 활용할 수 있게 합니다. 정기적인 유지보수와 적절한 구성은 최적의 성능과 신뢰성을 보장합니다.
|
|
355
|
+
|
|
356
|
+
기억하세요: **체크포인트는 당신의 안전망입니다 - 현명하게 사용하세요!**
|
|
@@ -0,0 +1,356 @@
|
|
|
1
|
+
# Checkpoint System Guide
|
|
2
|
+
|
|
3
|
+
[한국어로 보기](checkpoint-system-guide-ko.md)
|
|
4
|
+
|
|
5
|
+
## Overview
|
|
6
|
+
|
|
7
|
+
The AIWF Checkpoint System is designed to provide robust recovery and progress tracking for YOLO mode execution. It automatically saves state at critical points and allows seamless continuation after interruptions.
|
|
8
|
+
|
|
9
|
+
## Key Concepts
|
|
10
|
+
|
|
11
|
+
### What is a Checkpoint?
|
|
12
|
+
|
|
13
|
+
A checkpoint is a snapshot of:
|
|
14
|
+
- Current session state
|
|
15
|
+
- Task completion status
|
|
16
|
+
- Git repository state
|
|
17
|
+
- Performance metrics
|
|
18
|
+
- Execution context
|
|
19
|
+
|
|
20
|
+
### When are Checkpoints Created?
|
|
21
|
+
|
|
22
|
+
Checkpoints are automatically created:
|
|
23
|
+
- At session start
|
|
24
|
+
- After each task completion
|
|
25
|
+
- Before risky operations
|
|
26
|
+
- At regular intervals (configurable)
|
|
27
|
+
- On graceful interruption
|
|
28
|
+
|
|
29
|
+
Manual checkpoints can be created anytime for extra safety.
|
|
30
|
+
|
|
31
|
+
## Using the Checkpoint System
|
|
32
|
+
|
|
33
|
+
### Basic Commands
|
|
34
|
+
|
|
35
|
+
```bash
|
|
36
|
+
# View current session status
|
|
37
|
+
aiwf checkpoint status
|
|
38
|
+
|
|
39
|
+
# List available checkpoints
|
|
40
|
+
aiwf checkpoint list
|
|
41
|
+
aiwf checkpoint list --limit 20
|
|
42
|
+
|
|
43
|
+
# Restore from a checkpoint
|
|
44
|
+
aiwf checkpoint restore cp_1234567890
|
|
45
|
+
|
|
46
|
+
# Create manual checkpoint
|
|
47
|
+
aiwf checkpoint create "Before major refactoring"
|
|
48
|
+
|
|
49
|
+
# Clean old checkpoints
|
|
50
|
+
aiwf checkpoint clean --keep 10
|
|
51
|
+
```
|
|
52
|
+
|
|
53
|
+
### Dedicated CLI Tool
|
|
54
|
+
|
|
55
|
+
The `aiwf-checkpoint` command provides advanced features:
|
|
56
|
+
|
|
57
|
+
```bash
|
|
58
|
+
# Generate progress report
|
|
59
|
+
aiwf-checkpoint report
|
|
60
|
+
|
|
61
|
+
# Show detailed checkpoint info
|
|
62
|
+
aiwf-checkpoint show cp_1234567890
|
|
63
|
+
|
|
64
|
+
# Clean with preview
|
|
65
|
+
aiwf-checkpoint clean --keep 5 --dry-run
|
|
66
|
+
|
|
67
|
+
# Get help
|
|
68
|
+
aiwf-checkpoint help
|
|
69
|
+
```
|
|
70
|
+
|
|
71
|
+
## Checkpoint Structure
|
|
72
|
+
|
|
73
|
+
### Checkpoint Files
|
|
74
|
+
|
|
75
|
+
```
|
|
76
|
+
.aiwf/checkpoints/
|
|
77
|
+
├── cp_1703123456789/
|
|
78
|
+
│ ├── metadata.json # Checkpoint metadata
|
|
79
|
+
│ ├── session.json # Session state
|
|
80
|
+
│ ├── git-state.json # Git repository snapshot
|
|
81
|
+
│ └── metrics.json # Performance metrics
|
|
82
|
+
└── current-session.json # Active session reference
|
|
83
|
+
```
|
|
84
|
+
|
|
85
|
+
### Metadata Contents
|
|
86
|
+
|
|
87
|
+
```json
|
|
88
|
+
{
|
|
89
|
+
"id": "cp_1703123456789",
|
|
90
|
+
"type": "task_complete",
|
|
91
|
+
"timestamp": "2024-12-25T10:30:45.789Z",
|
|
92
|
+
"session_id": "session_1703123456789",
|
|
93
|
+
"description": "Completed task T01_S01",
|
|
94
|
+
"git_commit": "abc123def",
|
|
95
|
+
"tasks_completed": 5,
|
|
96
|
+
"sprint": "S01"
|
|
97
|
+
}
|
|
98
|
+
```
|
|
99
|
+
|
|
100
|
+
## Recovery Process
|
|
101
|
+
|
|
102
|
+
### Automatic Recovery
|
|
103
|
+
|
|
104
|
+
When YOLO mode starts, it checks for:
|
|
105
|
+
1. Active session with incomplete tasks
|
|
106
|
+
2. Recent checkpoints
|
|
107
|
+
3. Git state consistency
|
|
108
|
+
|
|
109
|
+
If an incomplete session is found, you'll be prompted to:
|
|
110
|
+
- Continue from last checkpoint
|
|
111
|
+
- Start fresh
|
|
112
|
+
- Review checkpoint details
|
|
113
|
+
|
|
114
|
+
### Manual Recovery
|
|
115
|
+
|
|
116
|
+
```bash
|
|
117
|
+
# 1. Check what's available
|
|
118
|
+
aiwf checkpoint list
|
|
119
|
+
|
|
120
|
+
# 2. View specific checkpoint details
|
|
121
|
+
aiwf-checkpoint show cp_1703123456789
|
|
122
|
+
|
|
123
|
+
# 3. Restore if appropriate
|
|
124
|
+
aiwf checkpoint restore cp_1703123456789
|
|
125
|
+
|
|
126
|
+
# 4. Continue in YOLO mode
|
|
127
|
+
# In Claude Code: /project:aiwf:yolo
|
|
128
|
+
```
|
|
129
|
+
|
|
130
|
+
## Integration with YOLO Mode
|
|
131
|
+
|
|
132
|
+
### YOLO Configuration
|
|
133
|
+
|
|
134
|
+
Configure checkpoint behavior in `.aiwf/yolo-config.yaml`:
|
|
135
|
+
|
|
136
|
+
```yaml
|
|
137
|
+
checkpoint:
|
|
138
|
+
auto_checkpoint: true
|
|
139
|
+
interval_minutes: 15
|
|
140
|
+
max_checkpoints: 50
|
|
141
|
+
checkpoint_on:
|
|
142
|
+
- task_complete
|
|
143
|
+
- sprint_complete
|
|
144
|
+
- before_risky_operation
|
|
145
|
+
- interval
|
|
146
|
+
```
|
|
147
|
+
|
|
148
|
+
### YOLO Execution Flow
|
|
149
|
+
|
|
150
|
+
```
|
|
151
|
+
Start YOLO → Check Recovery → Create Session → Execute Tasks
|
|
152
|
+
↓ ↓
|
|
153
|
+
[Has Checkpoint] [Create Checkpoint]
|
|
154
|
+
↓ ↓
|
|
155
|
+
Prompt Recovery Continue Execution
|
|
156
|
+
```
|
|
157
|
+
|
|
158
|
+
## Best Practices
|
|
159
|
+
|
|
160
|
+
### 1. Regular Cleanup
|
|
161
|
+
|
|
162
|
+
```bash
|
|
163
|
+
# Keep last 10 checkpoints
|
|
164
|
+
aiwf checkpoint clean --keep 10
|
|
165
|
+
|
|
166
|
+
# Or clean by age (days)
|
|
167
|
+
aiwf checkpoint clean --older-than 7
|
|
168
|
+
```
|
|
169
|
+
|
|
170
|
+
### 2. Manual Checkpoints for Safety
|
|
171
|
+
|
|
172
|
+
Create manual checkpoints before:
|
|
173
|
+
- Major refactoring
|
|
174
|
+
- Database migrations
|
|
175
|
+
- Breaking changes
|
|
176
|
+
- Experimental features
|
|
177
|
+
|
|
178
|
+
```bash
|
|
179
|
+
aiwf checkpoint create "Before database schema change"
|
|
180
|
+
```
|
|
181
|
+
|
|
182
|
+
### 3. Monitor Checkpoint Health
|
|
183
|
+
|
|
184
|
+
```bash
|
|
185
|
+
# Regular status checks
|
|
186
|
+
aiwf checkpoint status
|
|
187
|
+
|
|
188
|
+
# Weekly reports
|
|
189
|
+
aiwf-checkpoint report --period week
|
|
190
|
+
```
|
|
191
|
+
|
|
192
|
+
### 4. Git State Alignment
|
|
193
|
+
|
|
194
|
+
Ensure Git state matches checkpoint:
|
|
195
|
+
```bash
|
|
196
|
+
# Before restore
|
|
197
|
+
git status
|
|
198
|
+
|
|
199
|
+
# After restore
|
|
200
|
+
git log --oneline -5
|
|
201
|
+
```
|
|
202
|
+
|
|
203
|
+
## Advanced Features
|
|
204
|
+
|
|
205
|
+
### Session Metrics
|
|
206
|
+
|
|
207
|
+
Each checkpoint tracks:
|
|
208
|
+
- Execution time
|
|
209
|
+
- Tasks completed
|
|
210
|
+
- Success/failure ratio
|
|
211
|
+
- Token usage (if available)
|
|
212
|
+
- Memory usage
|
|
213
|
+
|
|
214
|
+
View metrics:
|
|
215
|
+
```bash
|
|
216
|
+
aiwf-checkpoint report --detailed
|
|
217
|
+
```
|
|
218
|
+
|
|
219
|
+
### Checkpoint Types
|
|
220
|
+
|
|
221
|
+
1. **session_start**: Beginning of YOLO session
|
|
222
|
+
2. **task_complete**: After task completion
|
|
223
|
+
3. **sprint_complete**: Sprint milestone
|
|
224
|
+
4. **auto**: Regular interval checkpoint
|
|
225
|
+
5. **manual**: User-created checkpoint
|
|
226
|
+
6. **error_recovery**: After error handling
|
|
227
|
+
|
|
228
|
+
### Parallel Sessions
|
|
229
|
+
|
|
230
|
+
The system prevents parallel YOLO sessions:
|
|
231
|
+
- Only one active session allowed
|
|
232
|
+
- Stale sessions auto-expire after 24 hours
|
|
233
|
+
- Force override with `--force` flag
|
|
234
|
+
|
|
235
|
+
## Troubleshooting
|
|
236
|
+
|
|
237
|
+
### Cannot Restore Checkpoint
|
|
238
|
+
|
|
239
|
+
**Issue**: "Git state mismatch"
|
|
240
|
+
```bash
|
|
241
|
+
# Check current Git state
|
|
242
|
+
git status
|
|
243
|
+
|
|
244
|
+
# View checkpoint Git state
|
|
245
|
+
aiwf-checkpoint show cp_1234567890
|
|
246
|
+
|
|
247
|
+
# Reset to checkpoint commit if safe
|
|
248
|
+
git reset --hard <checkpoint-commit>
|
|
249
|
+
```
|
|
250
|
+
|
|
251
|
+
**Issue**: "Session already active"
|
|
252
|
+
```bash
|
|
253
|
+
# Check active session
|
|
254
|
+
aiwf checkpoint status
|
|
255
|
+
|
|
256
|
+
# Force new session if needed
|
|
257
|
+
/project:aiwf:yolo --force
|
|
258
|
+
```
|
|
259
|
+
|
|
260
|
+
### Checkpoint Corruption
|
|
261
|
+
|
|
262
|
+
**Issue**: "Invalid checkpoint data"
|
|
263
|
+
```bash
|
|
264
|
+
# Remove corrupted checkpoint
|
|
265
|
+
rm -rf .aiwf/checkpoints/cp_1234567890
|
|
266
|
+
|
|
267
|
+
# Clean and verify
|
|
268
|
+
aiwf checkpoint clean --verify
|
|
269
|
+
```
|
|
270
|
+
|
|
271
|
+
### Storage Issues
|
|
272
|
+
|
|
273
|
+
**Issue**: "Too many checkpoints"
|
|
274
|
+
```bash
|
|
275
|
+
# Check checkpoint count
|
|
276
|
+
ls -la .aiwf/checkpoints/ | wc -l
|
|
277
|
+
|
|
278
|
+
# Aggressive cleanup
|
|
279
|
+
aiwf checkpoint clean --keep 5
|
|
280
|
+
|
|
281
|
+
# Check disk usage
|
|
282
|
+
du -sh .aiwf/checkpoints/
|
|
283
|
+
```
|
|
284
|
+
|
|
285
|
+
## Performance Considerations
|
|
286
|
+
|
|
287
|
+
### Checkpoint Size
|
|
288
|
+
|
|
289
|
+
- Average checkpoint: 10-50 KB
|
|
290
|
+
- Large projects may have bigger checkpoints
|
|
291
|
+
- Git state tracking adds minimal overhead
|
|
292
|
+
|
|
293
|
+
### Optimization Tips
|
|
294
|
+
|
|
295
|
+
1. **Configure intervals wisely**
|
|
296
|
+
- Default: 15 minutes
|
|
297
|
+
- Heavy tasks: 5-10 minutes
|
|
298
|
+
- Light tasks: 20-30 minutes
|
|
299
|
+
|
|
300
|
+
2. **Limit checkpoint count**
|
|
301
|
+
- Default: Keep last 50
|
|
302
|
+
- Recommended: 10-20 for most projects
|
|
303
|
+
|
|
304
|
+
3. **Disable for simple tasks**
|
|
305
|
+
```yaml
|
|
306
|
+
checkpoint:
|
|
307
|
+
auto_checkpoint: false # For simple sprints
|
|
308
|
+
```
|
|
309
|
+
|
|
310
|
+
## Integration Examples
|
|
311
|
+
|
|
312
|
+
### CI/CD Integration
|
|
313
|
+
|
|
314
|
+
```yaml
|
|
315
|
+
# .github/workflows/yolo-recovery.yml
|
|
316
|
+
name: YOLO Recovery Check
|
|
317
|
+
on:
|
|
318
|
+
schedule:
|
|
319
|
+
- cron: '0 9 * * 1-5' # Weekdays at 9 AM
|
|
320
|
+
|
|
321
|
+
jobs:
|
|
322
|
+
check-recovery:
|
|
323
|
+
runs-on: ubuntu-latest
|
|
324
|
+
steps:
|
|
325
|
+
- uses: actions/checkout@v3
|
|
326
|
+
- name: Install AIWF
|
|
327
|
+
run: npm install -g aiwf
|
|
328
|
+
- name: Check Incomplete Sessions
|
|
329
|
+
run: |
|
|
330
|
+
if aiwf checkpoint status | grep -q "incomplete"; then
|
|
331
|
+
echo "Found incomplete YOLO session"
|
|
332
|
+
aiwf-checkpoint report
|
|
333
|
+
fi
|
|
334
|
+
```
|
|
335
|
+
|
|
336
|
+
### Custom Scripts
|
|
337
|
+
|
|
338
|
+
```bash
|
|
339
|
+
#!/bin/bash
|
|
340
|
+
# backup-checkpoints.sh
|
|
341
|
+
|
|
342
|
+
# Create checkpoint archive
|
|
343
|
+
tar -czf checkpoints-$(date +%Y%m%d).tar.gz .aiwf/checkpoints/
|
|
344
|
+
|
|
345
|
+
# Upload to cloud storage
|
|
346
|
+
aws s3 cp checkpoints-*.tar.gz s3://my-bucket/aiwf-backups/
|
|
347
|
+
|
|
348
|
+
# Clean local old checkpoints
|
|
349
|
+
aiwf checkpoint clean --keep 10
|
|
350
|
+
```
|
|
351
|
+
|
|
352
|
+
## Summary
|
|
353
|
+
|
|
354
|
+
The AIWF Checkpoint System provides peace of mind when running autonomous YOLO sessions. By automatically tracking progress and enabling easy recovery, it allows developers to leverage YOLO mode's power without fear of losing work. Regular maintenance and proper configuration ensure optimal performance and reliability.
|
|
355
|
+
|
|
356
|
+
Remember: **Checkpoints are your safety net - use them wisely!**
|