aiwf 0.3.2 → 0.3.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.aiwf/config/language.json +1 -1
- package/.aiwf/installed.flag +1 -0
- package/.aiwf/sessions/session_1752877859489_1t7n2fhdb.json +7 -0
- package/.aiwf/sessions/session_1752877859515_cwdv211ry.json +7 -0
- package/.aiwf/sessions/session_1752877860664_huziadmbo.json +7 -0
- package/.aiwf/sessions/session_1752877860666_kyr5u1np6.json +7 -0
- package/.aiwf/sessions/session_1752877861848_9yinepw3t.json +7 -0
- package/.aiwf/sessions/session_1752877861874_y32sputuc.json +7 -0
- package/.aiwf/sessions/session_1752877862685_ivxbl5rhz.json +7 -0
- package/.aiwf/sessions/session_1752877862820_wnq4glvxi.json +7 -0
- package/.aiwf/sessions/session_1752877864632_3ebnpaelb.json +7 -0
- package/.aiwf/sessions/session_1752877864879_b9zgjcb7d.json +7 -0
- package/.aiwf/sessions/session_1752877865533_x14m1vodi.json +7 -0
- package/.aiwf/sessions/session_1752877865562_gkoh19n7d.json +7 -0
- package/.aiwf/sessions/session_1752877866333_wp8qpdcoh.json +7 -0
- package/.aiwf/sessions/session_1752877866509_dawntfpab.json +7 -0
- package/.aiwf/sessions/session_1752877866890_plc5vfucl.json +7 -0
- package/.aiwf/sessions/session_1752877866895_ga8hmq3oi.json +7 -0
- package/.aiwf/sessions/session_1752877867761_ayjp4v5f5.json +7 -0
- package/.aiwf/sessions/session_1752877867892_lfz6jy252.json +7 -0
- package/.aiwf/sessions/session_1752877868139_7bqd9ubli.json +7 -0
- package/.aiwf/sessions/session_1752877868162_zq3ofjbsh.json +7 -0
- package/.aiwf/sessions/session_1752877869054_7rlgm9jt6.json +7 -0
- package/.aiwf/sessions/session_1752877869477_ax3nhbxzr.json +7 -0
- package/.aiwf/sessions/session_1752877870095_6hgp4vl1e.json +7 -0
- package/.aiwf/sessions/session_1752877870381_qfcrdg4li.json +7 -0
- package/.aiwf/sessions/session_1752877871895_pgd5vllhz.json +7 -0
- package/.aiwf/sessions/session_1752877872199_jbhv2g2da.json +7 -0
- package/.aiwf/sessions/session_1752877872680_x04wpffu6.json +7 -0
- package/.aiwf/sessions/session_1752877872895_3y4vbeauo.json +7 -0
- package/.aiwf/sessions/session_1752877873178_3maolzc6b.json +7 -0
- package/.aiwf/sessions/session_1752877873180_ytm83j07f.json +7 -0
- package/.aiwf/sessions/session_1752877874217_dp56c9t42.json +7 -0
- package/.aiwf/sessions/session_1752877874415_epwp1g1og.json +7 -0
- package/.aiwf/sessions/session_1752877874454_heicyuryb.json +7 -0
- package/.aiwf/sessions/session_1752877874869_1c2illeu5.json +7 -0
- package/.aiwf/sessions/session_1752877874879_k1vo4vxyx.json +7 -0
- package/.aiwf/sessions/session_1752877874913_bwgyiz9bp.json +7 -0
- package/.aiwf/sessions/session_1752877876218_44807kztz.json +7 -0
- package/.aiwf/sessions/session_1752877876515_qkhjv5kpw.json +7 -0
- package/.aiwf/sessions/session_1752877876543_p605aud1m.json +7 -0
- package/.aiwf/sessions/session_1752877876819_l65w7ifck.json +7 -0
- package/.aiwf/sessions/session_1752877876867_xrhzss4we.json +7 -0
- package/.aiwf/sessions/session_1752877876872_u7aso54qb.json +7 -0
- package/.aiwf/sessions/session_1752877877705_telnfg4o6.json +7 -0
- package/.aiwf/sessions/session_1752877878285_6s45im2ib.json +7 -0
- package/.aiwf/sessions/session_1752877878506_v0dvguqhz.json +7 -0
- package/.aiwf/sessions/session_1752877878581_3ri3yc66a.json +7 -0
- package/.aiwf/sessions/session_1752877878756_a82x9s2pd.json +7 -0
- package/.aiwf/sessions/session_1752877878886_20pjsfour.json +7 -0
- package/.aiwf/sessions/session_1752877880266_fm1ydjw0g.json +7 -0
- package/.aiwf/sessions/session_1752877881149_xbat4z03d.json +7 -0
- package/.aiwf/sessions/session_1752877881551_qy5sic9qs.json +7 -0
- package/.aiwf/sessions/session_1752877881554_24ugd96wu.json +7 -0
- package/.aiwf/sessions/session_1752877881797_e9mm25uh0.json +7 -0
- package/.aiwf/sessions/session_1752877881822_bxvjj8c9g.json +7 -0
- package/.aiwf/sessions/session_1752877881890_jv7l6jve3.json +7 -0
- package/.aiwf/sessions/session_1752877881991_f0qugdtcq.json +7 -0
- package/.aiwf/sessions/session_1752877883387_0bvw9rvnx.json +7 -0
- package/.aiwf/sessions/session_1752877883820_q6g2md2up.json +7 -0
- package/.aiwf/sessions/session_1752877884393_sqr7trvjl.json +7 -0
- package/.aiwf/sessions/session_1752877884500_whtypmzlf.json +7 -0
- package/.aiwf/sessions/session_1752877884645_y9mvvxli1.json +7 -0
- package/.aiwf/sessions/session_1752877884733_hk46eenel.json +7 -0
- package/.aiwf/sessions/session_1752877884738_c62j6214r.json +7 -0
- package/.aiwf/sessions/session_1752877884771_temhxehoz.json +7 -0
- package/.aiwf/sessions/session_1752877885643_6v5fcktc7.json +7 -0
- package/.aiwf/sessions/session_1752877886426_ee8di2fqh.json +7 -0
- package/.aiwf/sessions/session_1752877886549_3xj6tdoew.json +7 -0
- package/.aiwf/sessions/session_1752877886604_aj80yyfco.json +7 -0
- package/.aiwf/sessions/session_1752877886702_2b8841vyg.json +7 -0
- package/.aiwf/sessions/session_1752877886712_ntqc8b8bz.json +7 -0
- package/.aiwf/sessions/session_1752877886968_946m8tbw6.json +7 -0
- package/.aiwf/sessions/session_1752877887008_wg6zfg8dn.json +7 -0
- package/.aiwf/sessions/session_1752877888479_ciiu2qiqs.json +7 -0
- package/.aiwf/sessions/session_1752877889330_ravg8l66k.json +7 -0
- package/.aiwf/sessions/session_1752877889542_7zepkhjkc.json +7 -0
- package/.aiwf/sessions/session_1752877889638_ev4htqiu0.json +7 -0
- package/.aiwf/sessions/session_1752877889956_szphy2qma.json +7 -0
- package/.aiwf/sessions/session_1752877890220_o6aaa57tt.json +7 -0
- package/.aiwf/sessions/session_1752877890527_v2loy5vu1.json +7 -0
- package/.aiwf/sessions/session_1752877890572_cwq8fiuma.json +7 -0
- package/.aiwf/sessions/session_1752877892200_sgcwq1alt.json +7 -0
- package/.aiwf/sessions/session_1752877892268_v8kexpbc5.json +7 -0
- package/.aiwf/sessions/session_1752877892384_1gbbgrp4y.json +7 -0
- package/.aiwf/sessions/session_1752877893568_9p2n5p31a.json +7 -0
- package/.aiwf/sessions/session_1752877893727_un34a5tvp.json +7 -0
- package/.aiwf/sessions/session_1752877893778_01j79sw9i.json +7 -0
- package/.aiwf/sessions/session_1752877894053_jrhba6wko.json +7 -0
- package/.aiwf/sessions/session_1752877894082_x3bghawox.json +7 -0
- package/.aiwf/sessions/session_1752877894500_iytiav2ku.json +7 -0
- package/.aiwf/sessions/session_1752877894667_ucn0gc2ge.json +7 -0
- package/.aiwf/test-results-s02.json +4 -4
- package/.claude/commands/aiwf/aiwf_changelog.md +82 -0
- package/.claude/commands/aiwf/aiwf_code_review.md +88 -0
- package/.claude/commands/aiwf/aiwf_commit.md +160 -0
- package/.claude/commands/aiwf/aiwf_compress_context.md +116 -0
- package/.claude/commands/aiwf/aiwf_create_feature_ledger.md +54 -0
- package/.claude/commands/aiwf/aiwf_create_general_task.md +147 -0
- package/.claude/commands/aiwf/aiwf_create_milestone_plan.md +194 -0
- package/.claude/commands/aiwf/aiwf_create_prd.md +280 -0
- package/.claude/commands/aiwf/aiwf_create_sprint_tasks.md +189 -0
- package/.claude/commands/aiwf/aiwf_create_sprints_from_milestone.md +121 -0
- package/.claude/commands/aiwf/aiwf_default_mode.md +44 -0
- package/.claude/commands/aiwf/aiwf_discuss_review.md +29 -0
- package/.claude/commands/aiwf/aiwf_do_task.md +109 -0
- package/.claude/commands/aiwf/aiwf_docs.md +225 -0
- package/.claude/commands/aiwf/aiwf_get_feature_details.md +78 -0
- package/.claude/commands/aiwf/aiwf_infinite.md +202 -0
- package/.claude/commands/aiwf/aiwf_initialize.md +134 -0
- package/.claude/commands/aiwf/aiwf_issue_create.md +65 -0
- package/.claude/commands/aiwf/aiwf_link_feature_to_milestone.md +57 -0
- package/.claude/commands/aiwf/aiwf_list_features.md +54 -0
- package/.claude/commands/aiwf/aiwf_mermaid.md +272 -0
- package/.claude/commands/aiwf/aiwf_persona_architect.md +48 -0
- package/.claude/commands/aiwf/aiwf_persona_backend.md +37 -0
- package/.claude/commands/aiwf/aiwf_persona_data_analyst.md +37 -0
- package/.claude/commands/aiwf/aiwf_persona_frontend.md +37 -0
- package/.claude/commands/aiwf/aiwf_persona_security.md +48 -0
- package/.claude/commands/aiwf/aiwf_persona_status.md +50 -0
- package/.claude/commands/aiwf/aiwf_pr_create.md +76 -0
- package/.claude/commands/aiwf/aiwf_prime.md +9 -0
- package/.claude/commands/aiwf/aiwf_project_review.md +261 -0
- package/.claude/commands/aiwf/aiwf_switch_language.md +160 -0
- package/.claude/commands/aiwf/aiwf_test.md +124 -0
- package/.claude/commands/aiwf/aiwf_testing_review.md +198 -0
- package/.claude/commands/aiwf/aiwf_tm-run-all-subtask.md +210 -0
- package/.claude/commands/aiwf/aiwf_ultrathink_code_advanced.md +460 -0
- package/.claude/commands/aiwf/aiwf_ultrathink_code_basic.md +165 -0
- package/.claude/commands/aiwf/aiwf_ultrathink_general.md +305 -0
- package/.claude/commands/aiwf/aiwf_update_docs_kr.md +25 -0
- package/.claude/commands/aiwf/aiwf_update_feature_status.md +53 -0
- package/.claude/commands/aiwf/aiwf_yolo.md +300 -0
- package/.eslintrc.json +26 -0
- package/.prettierrc +10 -0
- package/CLAUDE.md +154 -54
- package/README.ko.md +25 -0
- package/README.md +25 -0
- package/TEST_RECOVERY_PLAN.md +68 -0
- package/docs/CLEANUP_RECOMMENDATIONS.md +86 -0
- package/docs/CLI_USAGE_GUIDE.md +479 -0
- package/package.json +9 -9
- package/scripts/update-feature-status.js +70 -0
- package/{lib → src/cli}/cache-cli.js +4 -4
- package/src/cli/index.js +165 -0
- package/{language-cli.js → src/cli/language-cli.js} +11 -4
- package/src/commands/cache-templates.js +209 -0
- package/src/commands/create-offline.js +86 -0
- package/src/commands/create-project.js +151 -0
- package/src/lib/backup-manager.js +270 -0
- package/src/lib/file-downloader.js +208 -0
- package/src/lib/installer.js +676 -0
- package/src/lib/rollback-manager.js +418 -0
- package/src/lib/validator.js +561 -0
- package/src/utils/git-integration.js +173 -0
- package/{language-utils.js → src/utils/language-utils.js} +2 -1
- package/src/utils/messages.js +136 -0
- package/src/utils/paths.js +130 -0
- package/tests/application.test.js +2 -2
- package/tests/installer.test.js +2 -2
- package/tests/integration/ai-persona-system.test.js +4 -4
- package/tests/integration/test-persona-system/docs/README.md +1 -0
- package/tests/integration/test-persona-system/package.json +1 -0
- package/tests/integration/test-persona-system/src/auth.js +1 -0
- package/tests/integration/test-persona-system/src/index.js +1 -0
- package/tests/integration/test-persona-system/test/test.js +1 -0
- package/tests/language-utils.test.js +1 -1
- package/tests/temp_invalid_json/invalid.json +1 -0
- package/tests/unit/ai-persona-manager.test.js +7 -7
- package/.aiwf/05_DOCUMENTATION/performance-report.md +0 -33
- package/.aiwf/test-cache/86c7f9e80251abb8bedd58953ab0d1779e46b4f43ea33b63bffdb778106373b0.json +0 -6
- package/.aiwf/test-cache/9e252a90b80fce0585d7ed0646e7a9b4343e109f661f42a3ae678ba1ec5e22c7.json +0 -7
- package/.aiwf/token-data/alerts.json +0 -293
- package/.aiwf/token-data/monitor-config.json +0 -12
- package/CHANGELOG_M02.md +0 -52
- package/claude-code/aiwf/ko/bin/aiwf-create.js +0 -56
- package/claude-code/aiwf/ko/bin/aiwf.js +0 -21
- package/claude-code/aiwf/ko/docs/00_PROJECT_MANIFEST.md +0 -183
- package/claude-code/aiwf/ko/docs/ARCHITECTURE.md +0 -121
- package/claude-code/aiwf/ko/docs/FEATURE_LEDGER_ADVANCED_USE_CASES.md +0 -412
- package/claude-code/aiwf/ko/docs/FEATURE_LEDGER_API_REFERENCE.md +0 -361
- package/claude-code/aiwf/ko/docs/FEATURE_LEDGER_COMMANDS_GUIDE.md +0 -254
- package/claude-code/aiwf/ko/docs/FEATURE_LEDGER_FAQ.md +0 -365
- package/claude-code/aiwf/ko/docs/FEATURE_LEDGER_SYSTEM_OVERVIEW.md +0 -305
- package/claude-code/aiwf/ko/docs/FEATURE_LEDGER_USER_GUIDE.md +0 -416
- package/claude-code/aiwf/ko/docs/FEATURE_LEDGER_/354/213/234/354/236/221_/352/260/200/354/235/264/353/223/234.md +0 -247
- package/claude-code/aiwf/ko/token-data/alerts.json +0 -293
- package/claude-code/aiwf/ko/token-data/monitor-config.json +0 -12
- package/docs/m02-dod-checklist.md +0 -125
- package/docs/m02-gap-analysis.md +0 -214
- package/docs/m02-milestone-completion-report.md +0 -186
- package/docs/m02-milestone-executive-summary.md +0 -68
- package/index.js +0 -1947
- package/lib/cache-integration.js +0 -401
- package/lib/file-batch-processor.js +0 -401
- package/lib/performance-benchmark.js +0 -621
- package/lib/template-manager.js +0 -310
- package/scripts/validate-commands.cjs +0 -338
- /package/{.aiwf/.claude → .claude}/commands/aiwf/aiwf_compress_aggressive_persona.md +0 -0
- /package/{.aiwf/.claude → .claude}/commands/aiwf/aiwf_compress_minimal_persona.md +0 -0
- /package/{.aiwf/.claude → .claude}/commands/aiwf/aiwf_compress_stats.md +0 -0
- /package/{.aiwf/.claude → .claude}/commands/aiwf/aiwf_compress_with_persona.md +0 -0
- /package/{.aiwf/.claude → .claude}/commands/aiwf/aiwf_evaluate.md +0 -0
- /package/{lib → src/lib}/ai-persona-manager.js +0 -0
- /package/{lib → src/lib}/cache-system.js +0 -0
- /package/{lib → src/lib}/context-engine.js +0 -0
- /package/{lib → src/lib}/memory-profiler.js +0 -0
- /package/{lib → src/lib}/metrics-collector.js +0 -0
- /package/{lib → src/lib}/offline-detector.js +0 -0
- /package/{lib → src/lib}/task-analyzer.js +0 -0
- /package/{lib → src/lib}/template-cache-system.js +0 -0
- /package/{lib → src/lib}/template-downloader.js +0 -0
- /package/{lib → src/lib}/template-version-manager.js +0 -0
- /package/{lib → src/lib}/token-optimizer.js +0 -0
|
@@ -1,293 +0,0 @@
|
|
|
1
|
-
[
|
|
2
|
-
{
|
|
3
|
-
"id": "alert_1751994786470_zcqvbs5xg",
|
|
4
|
-
"type": "test_violation",
|
|
5
|
-
"level": "critical",
|
|
6
|
-
"message": "Test violation message",
|
|
7
|
-
"threshold": 100,
|
|
8
|
-
"current": 150,
|
|
9
|
-
"timestamp": 1751994786470,
|
|
10
|
-
"acknowledged": true,
|
|
11
|
-
"acknowledgedAt": 1752017060097
|
|
12
|
-
},
|
|
13
|
-
{
|
|
14
|
-
"id": "alert_1751994787038_en2si4bh0",
|
|
15
|
-
"type": "test_violation",
|
|
16
|
-
"level": "critical",
|
|
17
|
-
"message": "Test violation message",
|
|
18
|
-
"threshold": 100,
|
|
19
|
-
"current": 150,
|
|
20
|
-
"timestamp": 1751994787038,
|
|
21
|
-
"acknowledged": false
|
|
22
|
-
},
|
|
23
|
-
{
|
|
24
|
-
"id": "alert_1751996303656_elo3m8qpy",
|
|
25
|
-
"type": "test_violation",
|
|
26
|
-
"level": "critical",
|
|
27
|
-
"message": "Test violation message",
|
|
28
|
-
"threshold": 100,
|
|
29
|
-
"current": 150,
|
|
30
|
-
"timestamp": 1751996303656,
|
|
31
|
-
"acknowledged": false
|
|
32
|
-
},
|
|
33
|
-
{
|
|
34
|
-
"id": "alert_1751996304206_8gm4cuyxb",
|
|
35
|
-
"type": "test_violation",
|
|
36
|
-
"level": "critical",
|
|
37
|
-
"message": "Test violation message",
|
|
38
|
-
"threshold": 100,
|
|
39
|
-
"current": 150,
|
|
40
|
-
"timestamp": 1751996304206,
|
|
41
|
-
"acknowledged": false
|
|
42
|
-
},
|
|
43
|
-
{
|
|
44
|
-
"id": "alert_1751997016499_u4gtv5713",
|
|
45
|
-
"type": "test_violation",
|
|
46
|
-
"level": "critical",
|
|
47
|
-
"message": "Test violation message",
|
|
48
|
-
"threshold": 100,
|
|
49
|
-
"current": 150,
|
|
50
|
-
"timestamp": 1751997016499,
|
|
51
|
-
"acknowledged": false
|
|
52
|
-
},
|
|
53
|
-
{
|
|
54
|
-
"id": "alert_1751997017052_yq9lug9he",
|
|
55
|
-
"type": "test_violation",
|
|
56
|
-
"level": "critical",
|
|
57
|
-
"message": "Test violation message",
|
|
58
|
-
"threshold": 100,
|
|
59
|
-
"current": 150,
|
|
60
|
-
"timestamp": 1751997017052,
|
|
61
|
-
"acknowledged": false
|
|
62
|
-
},
|
|
63
|
-
{
|
|
64
|
-
"id": "alert_1751997742953_oq5dinke8",
|
|
65
|
-
"type": "test_violation",
|
|
66
|
-
"level": "critical",
|
|
67
|
-
"message": "Test violation message",
|
|
68
|
-
"threshold": 100,
|
|
69
|
-
"current": 150,
|
|
70
|
-
"timestamp": 1751997742953,
|
|
71
|
-
"acknowledged": false
|
|
72
|
-
},
|
|
73
|
-
{
|
|
74
|
-
"id": "alert_1751997743486_2wcisagho",
|
|
75
|
-
"type": "test_violation",
|
|
76
|
-
"level": "critical",
|
|
77
|
-
"message": "Test violation message",
|
|
78
|
-
"threshold": 100,
|
|
79
|
-
"current": 150,
|
|
80
|
-
"timestamp": 1751997743486,
|
|
81
|
-
"acknowledged": false
|
|
82
|
-
},
|
|
83
|
-
{
|
|
84
|
-
"id": "alert_1751998081344_vyhtqtobl",
|
|
85
|
-
"type": "test_violation",
|
|
86
|
-
"level": "critical",
|
|
87
|
-
"message": "Test violation message",
|
|
88
|
-
"threshold": 100,
|
|
89
|
-
"current": 150,
|
|
90
|
-
"timestamp": 1751998081344,
|
|
91
|
-
"acknowledged": false
|
|
92
|
-
},
|
|
93
|
-
{
|
|
94
|
-
"id": "alert_1751998081889_h00m20iy5",
|
|
95
|
-
"type": "test_violation",
|
|
96
|
-
"level": "critical",
|
|
97
|
-
"message": "Test violation message",
|
|
98
|
-
"threshold": 100,
|
|
99
|
-
"current": 150,
|
|
100
|
-
"timestamp": 1751998081889,
|
|
101
|
-
"acknowledged": false
|
|
102
|
-
},
|
|
103
|
-
{
|
|
104
|
-
"id": "alert_1751999789048_zzrp7tp8j",
|
|
105
|
-
"type": "test_violation",
|
|
106
|
-
"level": "critical",
|
|
107
|
-
"message": "Test violation message",
|
|
108
|
-
"threshold": 100,
|
|
109
|
-
"current": 150,
|
|
110
|
-
"timestamp": 1751999789048,
|
|
111
|
-
"acknowledged": false
|
|
112
|
-
},
|
|
113
|
-
{
|
|
114
|
-
"id": "alert_1751999789595_ejdotf0hr",
|
|
115
|
-
"type": "test_violation",
|
|
116
|
-
"level": "critical",
|
|
117
|
-
"message": "Test violation message",
|
|
118
|
-
"threshold": 100,
|
|
119
|
-
"current": 150,
|
|
120
|
-
"timestamp": 1751999789595,
|
|
121
|
-
"acknowledged": false
|
|
122
|
-
},
|
|
123
|
-
{
|
|
124
|
-
"id": "alert_1752011162333_vovhzg1ul",
|
|
125
|
-
"type": "test_violation",
|
|
126
|
-
"level": "critical",
|
|
127
|
-
"message": "Test violation message",
|
|
128
|
-
"threshold": 100,
|
|
129
|
-
"current": 150,
|
|
130
|
-
"timestamp": 1752011162333,
|
|
131
|
-
"acknowledged": false
|
|
132
|
-
},
|
|
133
|
-
{
|
|
134
|
-
"id": "alert_1752011162906_bwtjrcrfc",
|
|
135
|
-
"type": "test_violation",
|
|
136
|
-
"level": "critical",
|
|
137
|
-
"message": "Test violation message",
|
|
138
|
-
"threshold": 100,
|
|
139
|
-
"current": 150,
|
|
140
|
-
"timestamp": 1752011162906,
|
|
141
|
-
"acknowledged": false
|
|
142
|
-
},
|
|
143
|
-
{
|
|
144
|
-
"id": "alert_1752012508985_4rdgrk4kh",
|
|
145
|
-
"type": "test_violation",
|
|
146
|
-
"level": "critical",
|
|
147
|
-
"message": "Test violation message",
|
|
148
|
-
"threshold": 100,
|
|
149
|
-
"current": 150,
|
|
150
|
-
"timestamp": 1752012508985,
|
|
151
|
-
"acknowledged": false
|
|
152
|
-
},
|
|
153
|
-
{
|
|
154
|
-
"id": "alert_1752012509535_y522da3n9",
|
|
155
|
-
"type": "test_violation",
|
|
156
|
-
"level": "critical",
|
|
157
|
-
"message": "Test violation message",
|
|
158
|
-
"threshold": 100,
|
|
159
|
-
"current": 150,
|
|
160
|
-
"timestamp": 1752012509535,
|
|
161
|
-
"acknowledged": false
|
|
162
|
-
},
|
|
163
|
-
{
|
|
164
|
-
"id": "alert_1752012661043_6i171maek",
|
|
165
|
-
"type": "test_violation",
|
|
166
|
-
"level": "critical",
|
|
167
|
-
"message": "Test violation message",
|
|
168
|
-
"threshold": 100,
|
|
169
|
-
"current": 150,
|
|
170
|
-
"timestamp": 1752012661043,
|
|
171
|
-
"acknowledged": false
|
|
172
|
-
},
|
|
173
|
-
{
|
|
174
|
-
"id": "alert_1752012661595_24clai1kj",
|
|
175
|
-
"type": "test_violation",
|
|
176
|
-
"level": "critical",
|
|
177
|
-
"message": "Test violation message",
|
|
178
|
-
"threshold": 100,
|
|
179
|
-
"current": 150,
|
|
180
|
-
"timestamp": 1752012661595,
|
|
181
|
-
"acknowledged": false
|
|
182
|
-
},
|
|
183
|
-
{
|
|
184
|
-
"id": "alert_1752012899177_djh8but6v",
|
|
185
|
-
"type": "test_violation",
|
|
186
|
-
"level": "critical",
|
|
187
|
-
"message": "Test violation message",
|
|
188
|
-
"threshold": 100,
|
|
189
|
-
"current": 150,
|
|
190
|
-
"timestamp": 1752012899177,
|
|
191
|
-
"acknowledged": false
|
|
192
|
-
},
|
|
193
|
-
{
|
|
194
|
-
"id": "alert_1752012899754_4nvxk7ymn",
|
|
195
|
-
"type": "test_violation",
|
|
196
|
-
"level": "critical",
|
|
197
|
-
"message": "Test violation message",
|
|
198
|
-
"threshold": 100,
|
|
199
|
-
"current": 150,
|
|
200
|
-
"timestamp": 1752012899754,
|
|
201
|
-
"acknowledged": false
|
|
202
|
-
},
|
|
203
|
-
{
|
|
204
|
-
"id": "alert_1752012938609_xu8bhygdq",
|
|
205
|
-
"type": "test_violation",
|
|
206
|
-
"level": "critical",
|
|
207
|
-
"message": "Test violation message",
|
|
208
|
-
"threshold": 100,
|
|
209
|
-
"current": 150,
|
|
210
|
-
"timestamp": 1752012938609,
|
|
211
|
-
"acknowledged": false
|
|
212
|
-
},
|
|
213
|
-
{
|
|
214
|
-
"id": "alert_1752012939178_4yno1s9er",
|
|
215
|
-
"type": "test_violation",
|
|
216
|
-
"level": "critical",
|
|
217
|
-
"message": "Test violation message",
|
|
218
|
-
"threshold": 100,
|
|
219
|
-
"current": 150,
|
|
220
|
-
"timestamp": 1752012939178,
|
|
221
|
-
"acknowledged": false
|
|
222
|
-
},
|
|
223
|
-
{
|
|
224
|
-
"id": "alert_1752013016155_pao37ovh8",
|
|
225
|
-
"type": "test_violation",
|
|
226
|
-
"level": "critical",
|
|
227
|
-
"message": "Test violation message",
|
|
228
|
-
"threshold": 100,
|
|
229
|
-
"current": 150,
|
|
230
|
-
"timestamp": 1752013016155,
|
|
231
|
-
"acknowledged": false
|
|
232
|
-
},
|
|
233
|
-
{
|
|
234
|
-
"id": "alert_1752013016704_hcpbcivva",
|
|
235
|
-
"type": "test_violation",
|
|
236
|
-
"level": "critical",
|
|
237
|
-
"message": "Test violation message",
|
|
238
|
-
"threshold": 100,
|
|
239
|
-
"current": 150,
|
|
240
|
-
"timestamp": 1752013016704,
|
|
241
|
-
"acknowledged": false
|
|
242
|
-
},
|
|
243
|
-
{
|
|
244
|
-
"id": "alert_1752016925414_kediy1qjm",
|
|
245
|
-
"type": "test_violation",
|
|
246
|
-
"level": "critical",
|
|
247
|
-
"message": "Test violation message",
|
|
248
|
-
"threshold": 100,
|
|
249
|
-
"current": 150,
|
|
250
|
-
"timestamp": 1752016925414,
|
|
251
|
-
"acknowledged": false
|
|
252
|
-
},
|
|
253
|
-
{
|
|
254
|
-
"id": "alert_1752016926020_63z4d0rro",
|
|
255
|
-
"type": "test_violation",
|
|
256
|
-
"level": "critical",
|
|
257
|
-
"message": "Test violation message",
|
|
258
|
-
"threshold": 100,
|
|
259
|
-
"current": 150,
|
|
260
|
-
"timestamp": 1752016926020,
|
|
261
|
-
"acknowledged": false
|
|
262
|
-
},
|
|
263
|
-
{
|
|
264
|
-
"id": "alert_1752016926507_jirqvmdua",
|
|
265
|
-
"type": "test_violation",
|
|
266
|
-
"level": "critical",
|
|
267
|
-
"message": "Test violation message",
|
|
268
|
-
"threshold": 100,
|
|
269
|
-
"current": 150,
|
|
270
|
-
"timestamp": 1752016926507,
|
|
271
|
-
"acknowledged": false
|
|
272
|
-
},
|
|
273
|
-
{
|
|
274
|
-
"id": "alert_1752017059490_2uwz7rxf6",
|
|
275
|
-
"type": "test_violation",
|
|
276
|
-
"level": "critical",
|
|
277
|
-
"message": "Test violation message",
|
|
278
|
-
"threshold": 100,
|
|
279
|
-
"current": 150,
|
|
280
|
-
"timestamp": 1752017059490,
|
|
281
|
-
"acknowledged": false
|
|
282
|
-
},
|
|
283
|
-
{
|
|
284
|
-
"id": "alert_1752017060091_vegx43pgk",
|
|
285
|
-
"type": "test_violation",
|
|
286
|
-
"level": "critical",
|
|
287
|
-
"message": "Test violation message",
|
|
288
|
-
"threshold": 100,
|
|
289
|
-
"current": 150,
|
|
290
|
-
"timestamp": 1752017060091,
|
|
291
|
-
"acknowledged": false
|
|
292
|
-
}
|
|
293
|
-
]
|
package/CHANGELOG_M02.md
DELETED
|
@@ -1,52 +0,0 @@
|
|
|
1
|
-
# Changelog - M02 Milestone
|
|
2
|
-
|
|
3
|
-
All notable changes for M02 milestone (Context Engineering Enhancement) are documented here.
|
|
4
|
-
|
|
5
|
-
## [0.4.0] - 2025-07-08
|
|
6
|
-
|
|
7
|
-
### Added
|
|
8
|
-
- Context Compression System with 50%+ token reduction
|
|
9
|
-
- AI Persona System with 5 pre-configured personas
|
|
10
|
-
- Feature Ledger Git integration automation
|
|
11
|
-
- AI tool integration templates for 5 major tools
|
|
12
|
-
- Comprehensive Korean documentation
|
|
13
|
-
- Performance benchmark tooling
|
|
14
|
-
- Usability test framework
|
|
15
|
-
|
|
16
|
-
### Changed
|
|
17
|
-
- Enhanced Feature Ledger with performance metrics
|
|
18
|
-
- Improved CLI command structure
|
|
19
|
-
- Updated project initialization flow
|
|
20
|
-
- Optimized memory usage for large files
|
|
21
|
-
|
|
22
|
-
### Fixed
|
|
23
|
-
- Feature ledger file parsing errors
|
|
24
|
-
- Persona context loading race conditions
|
|
25
|
-
- CLI validation error messages
|
|
26
|
-
- Directory structure consistency
|
|
27
|
-
|
|
28
|
-
### Performance
|
|
29
|
-
- Token usage reduced by 53.5% average
|
|
30
|
-
- Compression processing < 200ms
|
|
31
|
-
- Memory overhead < 50MB
|
|
32
|
-
- Cost savings ~$36/month
|
|
33
|
-
|
|
34
|
-
## [0.3.1] - 2025-07-01
|
|
35
|
-
|
|
36
|
-
### Added
|
|
37
|
-
- Initial Feature Ledger implementation
|
|
38
|
-
- Basic project structure
|
|
39
|
-
- Sprint management system
|
|
40
|
-
- Template system
|
|
41
|
-
|
|
42
|
-
### Changed
|
|
43
|
-
- Improved error handling
|
|
44
|
-
- Enhanced CLI feedback
|
|
45
|
-
|
|
46
|
-
### Fixed
|
|
47
|
-
- Installation issues on Windows
|
|
48
|
-
- Path resolution bugs
|
|
49
|
-
|
|
50
|
-
---
|
|
51
|
-
|
|
52
|
-
For full release notes, see RELEASE_NOTES_M02.md
|
|
@@ -1,56 +0,0 @@
|
|
|
1
|
-
#!/usr/bin/env node
|
|
2
|
-
|
|
3
|
-
import { createProject } from '../scripts/create-project.js';
|
|
4
|
-
import { createProjectOffline, isOnline } from '../scripts/create-offline.js';
|
|
5
|
-
import chalk from 'chalk';
|
|
6
|
-
|
|
7
|
-
export async function main(args = process.argv.slice(2)) {
|
|
8
|
-
|
|
9
|
-
// 오프라인 모드 체크
|
|
10
|
-
if (args.includes('--offline')) {
|
|
11
|
-
console.log(chalk.yellow('⚠️ 오프라인 모드로 실행합니다.'));
|
|
12
|
-
// 오프라인 생성 로직
|
|
13
|
-
const template = args[0];
|
|
14
|
-
const projectName = args[1];
|
|
15
|
-
|
|
16
|
-
if (!template || !projectName) {
|
|
17
|
-
console.log(chalk.red('사용법: aiwf create --offline <template> <project-name>'));
|
|
18
|
-
process.exit(1);
|
|
19
|
-
}
|
|
20
|
-
|
|
21
|
-
try {
|
|
22
|
-
await createProjectOffline(template, projectName, projectName);
|
|
23
|
-
} catch (error) {
|
|
24
|
-
console.error(chalk.red('오류:', error.message));
|
|
25
|
-
process.exit(1);
|
|
26
|
-
}
|
|
27
|
-
|
|
28
|
-
return;
|
|
29
|
-
}
|
|
30
|
-
|
|
31
|
-
// 네트워크 연결 확인
|
|
32
|
-
const online = await isOnline();
|
|
33
|
-
|
|
34
|
-
if (!online) {
|
|
35
|
-
console.log(chalk.yellow('\n⚠️ 인터넷 연결을 확인할 수 없습니다.'));
|
|
36
|
-
console.log(chalk.yellow('오프라인 모드로 전환합니다.\n'));
|
|
37
|
-
console.log(chalk.gray('온라인 모드를 강제하려면 --online 플래그를 사용하세요.'));
|
|
38
|
-
|
|
39
|
-
// 오프라인 모드로 자동 전환
|
|
40
|
-
if (!args.includes('--online')) {
|
|
41
|
-
// 오프라인 프로젝트 생성 로직
|
|
42
|
-
return;
|
|
43
|
-
}
|
|
44
|
-
}
|
|
45
|
-
|
|
46
|
-
// 온라인 모드 (대화형)
|
|
47
|
-
createProject();
|
|
48
|
-
}
|
|
49
|
-
|
|
50
|
-
// CLI로 직접 실행된 경우에만 main 함수 호출
|
|
51
|
-
if (import.meta.url === `file://${process.argv[1]}`) {
|
|
52
|
-
main().catch(error => {
|
|
53
|
-
console.error(chalk.red('오류:', error.message));
|
|
54
|
-
process.exit(1);
|
|
55
|
-
});
|
|
56
|
-
}
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
#!/usr/bin/env node
|
|
2
|
-
|
|
3
|
-
// AIWF (AI Workflow Framework) Binary
|
|
4
|
-
// This is a wrapper that forwards to the main index.js file
|
|
5
|
-
|
|
6
|
-
import { execSync } from 'child_process';
|
|
7
|
-
import path from 'path';
|
|
8
|
-
import { fileURLToPath } from 'url';
|
|
9
|
-
|
|
10
|
-
const __dirname = path.dirname(fileURLToPath(import.meta.url));
|
|
11
|
-
const mainScript = path.join(__dirname, '../../index.js');
|
|
12
|
-
|
|
13
|
-
// Forward all arguments to the main script
|
|
14
|
-
const args = process.argv.slice(2);
|
|
15
|
-
const command = `node "${mainScript}" ${args.join(' ')}`;
|
|
16
|
-
|
|
17
|
-
try {
|
|
18
|
-
execSync(command, { stdio: 'inherit', cwd: process.cwd() });
|
|
19
|
-
} catch (error) {
|
|
20
|
-
process.exit(error.status || 1);
|
|
21
|
-
}
|
|
@@ -1,183 +0,0 @@
|
|
|
1
|
-
# AIWF 프로젝트 매니페스트
|
|
2
|
-
|
|
3
|
-
**프로젝트명**: AIWF (AI Workflow Framework)
|
|
4
|
-
**생성일**: 2025-07-02
|
|
5
|
-
**마지막 업데이트**: 2025-07-10
|
|
6
|
-
**프로젝트 유형**: Node.js NPM 패키지
|
|
7
|
-
**현재 버전**: 0.3.0
|
|
8
|
-
**최고 마일스톤**: M02
|
|
9
|
-
**최고 스프린트**: S03
|
|
10
|
-
|
|
11
|
-
## 프로젝트 개요
|
|
12
|
-
|
|
13
|
-
AIWF는 Claude Code와의 통합을 위해 설계된 마크다운 기반 프로젝트 관리 프레임워크입니다. AI 지원 개발을 위한 체계적인 워크플로우를 제공하며, 다국어 지원(한국어/영어)을 통해 글로벌 개발자들이 사용할 수 있도록 설계되었습니다.
|
|
14
|
-
|
|
15
|
-
## 현재 마일스톤
|
|
16
|
-
|
|
17
|
-
- **활성 마일스톤**: M02_Context_Engineering_Enhancement
|
|
18
|
-
- **마일스톤 상태**: 완료
|
|
19
|
-
- **진행률**: 100%
|
|
20
|
-
- **완료일**: 2025-07-08
|
|
21
|
-
|
|
22
|
-
## 현재 스프린트
|
|
23
|
-
|
|
24
|
-
- **활성 스프린트**: S03_M02_ecosystem_integration
|
|
25
|
-
- **스프린트 상태**: complete
|
|
26
|
-
- **시작일**: 2025-07-08
|
|
27
|
-
- **완료일**: 2025-07-08
|
|
28
|
-
|
|
29
|
-
## 활성 태스크
|
|
30
|
-
|
|
31
|
-
### 진행 중
|
|
32
|
-
|
|
33
|
-
- **T14_S03**: 기본 프로젝트 템플릿 구축 (in_progress → 2025-07-10 06:20 시작)
|
|
34
|
-
|
|
35
|
-
### 계획됨
|
|
36
|
-
|
|
37
|
-
- 계획된 태스크 없음
|
|
38
|
-
|
|
39
|
-
### 최근 완료
|
|
40
|
-
|
|
41
|
-
- **T13_S03**: AI 도구 통합 템플릿 개발 (completed → 2025-07-10 04:37 완료)
|
|
42
|
-
|
|
43
|
-
- **TX001**: Complete English Translation for 100% i18n Support (completed → 2025-07-09 08:13 완료)
|
|
44
|
-
- **TX05_S02**: S02 통합 테스트 및 문서화 (completed → 2025-07-08 00:09 완료)
|
|
45
|
-
- **TX03_S02**: Context 압축 알고리즘 구현 (completed → 2025-07-09 03:48 완료)
|
|
46
|
-
- **TX11_S01**: 통합 테스트 Suite 구축 (completed → 2025-07-09 03:06 완료)
|
|
47
|
-
- **TX10_S01**: update_docs 명령어 복구 (completed → 2025-07-09 02:49 완료)
|
|
48
|
-
- **TX09_S01**: 압축 알고리즘 프로토타입 (completed → 2025-07-09 02:35 완료)
|
|
49
|
-
- **TX08_S01**: 토큰 추적 시스템 프로토타입 (completed → 2025-07-09 02:12 완료)
|
|
50
|
-
- **TX07_S01**: Context 압축 아키텍처 설계 (completed → 2025-07-09 01:54 완료)
|
|
51
|
-
- **TX05_S01**: AI 페르소나 데이터 구조 설계 (completed → 2025-07-09 01:25 완료)
|
|
52
|
-
- **TX04_S01**: Feature Ledger 문서화 (completed → 2025-07-09 01:02 완료)
|
|
53
|
-
- **TX03_S01**: Git 연동 Feature 추적 (completed → 2025-07-09 00:45 완료)
|
|
54
|
-
- **TX02_S01**: Feature Ledger CLI 명령어 개발 (completed → 2025-07-09 00:18 완료)
|
|
55
|
-
- **TX01_S01**: Feature Ledger 데이터 구조 설계 (completed → 2025-07-09 00:01 완료)
|
|
56
|
-
- **T04_S03**: update_docs 명령어 누락 이슈 해결 (completed → 2025-07-03 06:35 완료)
|
|
57
|
-
- **T03_S03**: 한국어 명령어 전체 시스템 표준화 (completed → 2025-07-03 06:28 완료)
|
|
58
|
-
|
|
59
|
-
### 완료됨
|
|
60
|
-
|
|
61
|
-
- 프로젝트 초기화 완료
|
|
62
|
-
- M01 마일스톤 완료 (한국어 명령어 표준화)
|
|
63
|
-
|
|
64
|
-
## 마일스톤 목록
|
|
65
|
-
|
|
66
|
-
| ID | 이름 | 상태 | 진행률 | 시작일 | 완료일 |
|
|
67
|
-
| --- | ------------------------------- | ------- | ------ | ---------- | ------ |
|
|
68
|
-
| M02 | Context_Engineering_Enhancement | 완료 | 100% | 2025-07-08 | 2025-07-08 |
|
|
69
|
-
|
|
70
|
-
### 마일스톤 상세
|
|
71
|
-
- [x] [M02: Context Engineering Enhancement](02_REQUIREMENTS/M02_Context_Engineering_Enhancement/M02_milestone_meta.md) - 상태: 완료
|
|
72
|
-
|
|
73
|
-
## 스프린트 목록
|
|
74
|
-
|
|
75
|
-
| ID | 이름 | 마일스톤 | 상태 | 진행률 | 시작일 | 완료일 |
|
|
76
|
-
| --- | ----------------------------- | -------- | --------- | ------ | ---------- | ------ |
|
|
77
|
-
| S01 | context_foundation | M02 | complete | 100% | 2025-07-08 | 2025-07-08 |
|
|
78
|
-
| S02 | ai_enhancement | M02 | complete | 100% | 2025-07-08 | 2025-07-08 |
|
|
79
|
-
| S03 | ecosystem_integration | M02 | complete | 100% | 2025-07-08 | 2025-07-08 |
|
|
80
|
-
|
|
81
|
-
## 일반 태스크
|
|
82
|
-
|
|
83
|
-
- [x] [TX001: Complete English Translation for 100% i18n Support](04_GENERAL_TASKS/TX001_complete_english_translation.md) - 상태: 완료
|
|
84
|
-
|
|
85
|
-
## 태스크 통계
|
|
86
|
-
|
|
87
|
-
- **총 태스크**: 19
|
|
88
|
-
- **완료**: 19
|
|
89
|
-
- **진행 중**: 0
|
|
90
|
-
- **대기 중**: 0
|
|
91
|
-
- **차단됨**: 0
|
|
92
|
-
|
|
93
|
-
## 프로젝트 메트릭
|
|
94
|
-
|
|
95
|
-
- **코드 커버리지**: N/A (NPM 패키지)
|
|
96
|
-
- **활성 이슈**: 0
|
|
97
|
-
- **해결된 이슈**: 0
|
|
98
|
-
- **오픈 PR**: 0
|
|
99
|
-
|
|
100
|
-
## 기술 스택
|
|
101
|
-
|
|
102
|
-
- **언어**: JavaScript (ES6+)
|
|
103
|
-
- **런타임**: Node.js 14.0.0+
|
|
104
|
-
- **패키지 매니저**: NPM
|
|
105
|
-
- **테스트**: Jest
|
|
106
|
-
- **CLI 도구**: Commander.js, Chalk, Ora, Prompts
|
|
107
|
-
|
|
108
|
-
## 주요 디렉토리
|
|
109
|
-
|
|
110
|
-
- `index.js`: 메인 CLI 설치 도구
|
|
111
|
-
- `claude-code/aiwf/ko/`: 한국어 AIWF 프레임워크
|
|
112
|
-
- `claude-code/aiwf/en/`: 영어 AIWF 프레임워크
|
|
113
|
-
- `rules/`: IDE별 개발 규칙
|
|
114
|
-
- `docs/`: 프로젝트 문서
|
|
115
|
-
- `tests/`: 테스트 파일
|
|
116
|
-
|
|
117
|
-
## 연락처 및 리소스
|
|
118
|
-
|
|
119
|
-
- **저자**: moonklabs
|
|
120
|
-
- **라이선스**: MIT
|
|
121
|
-
- **저장소**: https://github.com/aiwf/aiwf
|
|
122
|
-
- **NPM**: https://www.npmjs.com/package/aiwf
|
|
123
|
-
- **이슈 트래커**: https://github.com/aiwf/aiwf/issues
|
|
124
|
-
|
|
125
|
-
## 주요 변경사항 로그
|
|
126
|
-
|
|
127
|
-
### 2025-07-10
|
|
128
|
-
|
|
129
|
-
- 스프린트 태스크 상태 업데이트:
|
|
130
|
-
- S01_M02: 실제로 11/12 태스크 구현 완료 (테스크 파일에는 4/12로 표시됨)
|
|
131
|
-
- AI 페르소나, Context 압축, 토큰 추적 시스템 모두 구현됨
|
|
132
|
-
- Feature Ledger CLI 명령어만 미구현
|
|
133
|
-
- S02_M02: 태스크 파일과 구현의 불일치 확인
|
|
134
|
-
- 6개 페르소나 구현 (계획 5개와 다른 이름)
|
|
135
|
-
- Feature-Git 연동 부분 구현
|
|
136
|
-
- S03_M02: AI 도구 템플릿 및 프로젝트 템플릿 미구현
|
|
137
|
-
- Claude Code 템플릿만 존재
|
|
138
|
-
- 오프라인 캐시 시스템은 구현됨
|
|
139
|
-
|
|
140
|
-
### 2025-07-08
|
|
141
|
-
|
|
142
|
-
- S02 스프린트 완료: AI 강화 기능 구현
|
|
143
|
-
- 5개 AI 페르소나 명령어 구현 완료
|
|
144
|
-
- Context 압축 알고리즘 구현 (토큰 50% 절약 달성)
|
|
145
|
-
- Feature-Git 연동 시스템 구축
|
|
146
|
-
- 모든 DoD 항목 충족
|
|
147
|
-
- M01 마일스톤 삭제 (완료됨)
|
|
148
|
-
- M02 Context Engineering Enhancement 마일스톤을 위한 스프린트 재구성:
|
|
149
|
-
- S01_M02_context_foundation: Feature Ledger, AI 페르소나, Context 압축 기반 구축
|
|
150
|
-
- S02_M02_ai_enhancement: 5개 AI 페르소나, Context 압축 모드, Git 연동 구현
|
|
151
|
-
- S03_M02_ecosystem_integration: 5개 AI 도구 템플릿, 통합 및 문서화 완성
|
|
152
|
-
- M02 DoD 요구사항에 맞춘 스프린트 재정의
|
|
153
|
-
- 1주일 단위 실행 가능한 범위로 조정
|
|
154
|
-
|
|
155
|
-
### 2025-07-02
|
|
156
|
-
|
|
157
|
-
- AIWF 프로젝트 초기화 완료
|
|
158
|
-
- 아키텍처 문서 생성
|
|
159
|
-
- M01 한국어 명령어 표준화 마일스톤 시작
|
|
160
|
-
- T03_S03 태스크 생성
|
|
161
|
-
|
|
162
|
-
## 향후 계획
|
|
163
|
-
|
|
164
|
-
1. **즉시 조치 필요 사항**:
|
|
165
|
-
- Feature Ledger CLI 명령어 구현 (aiwf_create_feature_ledger, aiwf_update_feature_status 등)
|
|
166
|
-
- AI 도구 템플릿 4개 추가 (GitHub Copilot, Cursor, Windsurf, Augment)
|
|
167
|
-
- 프로젝트 템플릿 시스템 구현
|
|
168
|
-
- `.aiwf/ai-tools/` 및 `.aiwf/07_AI_PERSONAS/` 디렉토리 생성
|
|
169
|
-
|
|
170
|
-
2. **단기 목표 (1-2주)**:
|
|
171
|
-
- M02 DoD 항목 완전 충족
|
|
172
|
-
- 테스크 파일과 구현 상태 동기화
|
|
173
|
-
- 누락된 기능 구현 완료
|
|
174
|
-
|
|
175
|
-
3. **중기 목표 (1개월)**:
|
|
176
|
-
- 다음 마일스톤 계획 수립
|
|
177
|
-
- 사용자 피드백 반영
|
|
178
|
-
- 프로덕션 준비
|
|
179
|
-
|
|
180
|
-
4. **장기 목표 (분기)**:
|
|
181
|
-
- 새로운 언어 지원 추가
|
|
182
|
-
- AI 도구 통합 확대
|
|
183
|
-
- 커뮤니티 생태계 구축
|