@su-record/vibe 3.2.7 → 3.2.8
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/CLAUDE.md +5 -2
- package/agents/build-error-resolver.md +1 -1
- package/agents/code-reviewer.md +1 -1
- package/agents/e2e-tester.md +1 -1
- package/agents/event/event-ops.md +1 -1
- package/agents/event/event-planner.md +1 -1
- package/agents/implementer.md +1 -1
- package/agents/security-reviewer.md +1 -1
- package/agents/tester.md +1 -1
- package/agents/ui/design-reviewer.md +1 -1
- package/agents/ui/design-system-gen.md +1 -1
- package/dist/cli/commands/info.d.ts +9 -0
- package/dist/cli/commands/info.d.ts.map +1 -1
- package/dist/cli/commands/info.js +32 -0
- package/dist/cli/commands/info.js.map +1 -1
- package/dist/cli/commands/info.test.js +34 -1
- package/dist/cli/commands/info.test.js.map +1 -1
- package/dist/cli/commands/upgrade.d.ts +18 -0
- package/dist/cli/commands/upgrade.d.ts.map +1 -1
- package/dist/cli/commands/upgrade.js +60 -2
- package/dist/cli/commands/upgrade.js.map +1 -1
- package/dist/cli/commands/upgrade.test.js +51 -1
- package/dist/cli/commands/upgrade.test.js.map +1 -1
- package/dist/cli/generate-release-notes.js +8 -6
- package/dist/cli/generate-release-notes.js.map +1 -1
- package/dist/cli/postinstall/claude-agents.d.ts.map +1 -1
- package/dist/cli/postinstall/claude-agents.js +3 -1
- package/dist/cli/postinstall/claude-agents.js.map +1 -1
- package/dist/cli/postinstall/constants.d.ts.map +1 -1
- package/dist/cli/postinstall/constants.js +17 -12
- package/dist/cli/postinstall/constants.js.map +1 -1
- package/dist/tests/curated-release-notes.test.js +55 -1
- package/dist/tests/curated-release-notes.test.js.map +1 -1
- package/dist/tools/release/releaseNotes.d.ts +22 -0
- package/dist/tools/release/releaseNotes.d.ts.map +1 -1
- package/dist/tools/release/releaseNotes.js +45 -0
- package/dist/tools/release/releaseNotes.js.map +1 -1
- package/hooks/scripts/__tests__/.vibe/command-log.txt +3 -3
- package/hooks/scripts/__tests__/code-check-detectors.test.js +58 -0
- package/hooks/scripts/code-check.js +7 -0
- package/package.json +1 -1
- package/skills/vibe.analyze/references/output-templates.md +2 -2
- package/skills/vibe.review/SKILL.md +27 -14
- package/skills/vibe.run/SKILL.md +7 -5
- package/skills/vibe.run/references/parallel-agents.md +44 -60
- package/skills/vibe.run/references/ultrawork-mode.md +1 -1
- package/skills/vibe.spec/SKILL.md +1 -1
- package/vibe/rules/principles/dual-harness-doctrine.md +10 -9
|
@@ -403,22 +403,27 @@ export const LEGACY_SKILL_DIRS = [
|
|
|
403
403
|
];
|
|
404
404
|
// ─── Claude Code 네이티브 서브에이전트 매핑 ───
|
|
405
405
|
// Claude Code 모델 매핑 (사용 가능: sonnet, opus, haiku, inherit)
|
|
406
|
-
// 독트린: 기본은 세션 모델 상속 —
|
|
407
|
-
// (
|
|
406
|
+
// 독트린: 기본은 세션 모델 상속(`inherit`) — 명시 tier 는 의도적 예외만.
|
|
407
|
+
// WHY: 세션 모델이 강할수록(예: Opus 급) 고정 tier 는 업그레이드가 아니라
|
|
408
|
+
// **다운그레이드**로 작동한다. vibe.review 는 리뷰어를 8~11개 spawn 하므로
|
|
409
|
+
// 고정 tier 하나가 리뷰 품질 전체의 상한이 된다. 비용 라우팅으로 아끼는 것보다
|
|
410
|
+
// 약한 모델이 만든 오탐·누락을 사람이 되돌리는 비용이 크다.
|
|
411
|
+
// 예외는 "세션 모델과 무관하게 항상 이 tier 여야 한다"를 근거로 댈 수 있을 때만 추가한다.
|
|
408
412
|
export const CLAUDE_MODEL_MAPPING = {
|
|
413
|
+
// 의도적 예외 — 되돌리기 비싼 설계 판단은 세션 모델이 낮아도 상한을 보장한다
|
|
409
414
|
'architect': 'opus',
|
|
410
|
-
'implementer': '
|
|
411
|
-
'tester': '
|
|
412
|
-
'e2e-tester': '
|
|
413
|
-
'build-error-resolver': '
|
|
414
|
-
'code-reviewer': '
|
|
415
|
-
'security-reviewer': '
|
|
415
|
+
'implementer': 'inherit',
|
|
416
|
+
'tester': 'inherit',
|
|
417
|
+
'e2e-tester': 'inherit',
|
|
418
|
+
'build-error-resolver': 'inherit',
|
|
419
|
+
'code-reviewer': 'inherit',
|
|
420
|
+
'security-reviewer': 'inherit',
|
|
416
421
|
// UI agents (conditional group)
|
|
417
|
-
'design-reviewer': '
|
|
418
|
-
'design-system-gen': '
|
|
422
|
+
'design-reviewer': 'inherit',
|
|
423
|
+
'design-system-gen': 'inherit',
|
|
419
424
|
// Event agents (conditional group)
|
|
420
|
-
'event-planner': '
|
|
421
|
-
'event-ops': '
|
|
425
|
+
'event-planner': 'inherit',
|
|
426
|
+
'event-ops': 'inherit',
|
|
422
427
|
};
|
|
423
428
|
// Claude Code 에이전트 도구 세트 정의
|
|
424
429
|
export const CLAUDE_AGENT_TOOLS = {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../src/cli/postinstall/constants.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../src/cli/postinstall/constants.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { readFileSync } from 'node:fs';
|
|
2
2
|
import { resolve } from 'node:path';
|
|
3
3
|
import { describe, expect, it } from 'vitest';
|
|
4
|
-
import { classifyCommits, createReleaseNotes, selectPreviousSemanticTag, } from '../tools/release/releaseNotes.js';
|
|
4
|
+
import { classifyCommits, createReleaseNotes, selectChangedSpecPaths, selectPreviousSemanticTag, } from '../tools/release/releaseNotes.js';
|
|
5
5
|
const CLASSIFICATION_CASES = [
|
|
6
6
|
['feat: add packets', 'Added'],
|
|
7
7
|
['fix(parser): reject drift', 'Fixed'],
|
|
@@ -102,5 +102,59 @@ describe('release notes CLI', () => {
|
|
|
102
102
|
const cli = readFileSync(resolve('src/cli/generate-release-notes.ts'), 'utf8');
|
|
103
103
|
expect(cli).toContain("'--diff-filter=AMR'");
|
|
104
104
|
});
|
|
105
|
+
it('detects renames so pure moves can be filtered', () => {
|
|
106
|
+
const cli = readFileSync(resolve('src/cli/generate-release-notes.ts'), 'utf8');
|
|
107
|
+
expect(cli).toContain("'--name-status'");
|
|
108
|
+
expect(cli).toContain("'-M'");
|
|
109
|
+
});
|
|
110
|
+
// pathspec 은 rename 짝을 잘라 R100 을 A 로 만든다 — 경로 필터는 순수 함수 쪽에 있어야 한다
|
|
111
|
+
it('does not restrict the spec diff with a pathspec', () => {
|
|
112
|
+
const cli = readFileSync(resolve('src/cli/generate-release-notes.ts'), 'utf8');
|
|
113
|
+
expect(cli).not.toContain("'--', '.vibe/specs'");
|
|
114
|
+
});
|
|
115
|
+
});
|
|
116
|
+
/**
|
|
117
|
+
* 디렉토리 재편이 릴리즈 노트를 오염시키던 회귀를 막는다:
|
|
118
|
+
* 레거시 `.claude/vibe/specs/` → `.vibe/specs/` 이전만으로 몇 달 전 feature 가
|
|
119
|
+
* 신규 Highlights 로 올라갔다 (v3.2.8 준비 중 발견).
|
|
120
|
+
*/
|
|
121
|
+
describe('selectChangedSpecPaths', () => {
|
|
122
|
+
it('keeps added and modified specs', () => {
|
|
123
|
+
const nameStatus = ['A\t.vibe/specs/new-feature.md', 'M\t.vibe/specs/existing.md'].join('\n');
|
|
124
|
+
expect(selectChangedSpecPaths(nameStatus)).toEqual([
|
|
125
|
+
'.vibe/specs/new-feature.md',
|
|
126
|
+
'.vibe/specs/existing.md',
|
|
127
|
+
]);
|
|
128
|
+
});
|
|
129
|
+
it('drops pure renames — a move is not release content', () => {
|
|
130
|
+
const nameStatus = 'R100\t.claude/vibe/specs/old-feature.md\t.vibe/specs/old-feature.md';
|
|
131
|
+
expect(selectChangedSpecPaths(nameStatus)).toEqual([]);
|
|
132
|
+
});
|
|
133
|
+
it('keeps a rename that also changed content, using the new path', () => {
|
|
134
|
+
const nameStatus = 'R087\t.vibe/specs/before.md\t.vibe/specs/after.md';
|
|
135
|
+
expect(selectChangedSpecPaths(nameStatus)).toEqual(['.vibe/specs/after.md']);
|
|
136
|
+
});
|
|
137
|
+
it('drops deletions — they do not exist at the current tag', () => {
|
|
138
|
+
expect(selectChangedSpecPaths('D\t.vibe/specs/removed.md')).toEqual([]);
|
|
139
|
+
});
|
|
140
|
+
it('ignores non-markdown entries and blank lines', () => {
|
|
141
|
+
const nameStatus = ['A\t.vibe/specs/notes.txt', '', 'A\t.vibe/specs/real.md'].join('\n');
|
|
142
|
+
expect(selectChangedSpecPaths(nameStatus)).toEqual(['.vibe/specs/real.md']);
|
|
143
|
+
});
|
|
144
|
+
// 경로 필터가 git pathspec 이 아니라 이 함수에 있어야 하는 이유:
|
|
145
|
+
// pathspec 으로 제한하면 rename 원본이 밖에 있을 때 git 이 R100 대신 A 를 낸다.
|
|
146
|
+
it('filters to .vibe/specs/ so the diff can run without a pathspec', () => {
|
|
147
|
+
const nameStatus = [
|
|
148
|
+
'M\tsrc/cli/index.ts',
|
|
149
|
+
'A\tCLAUDE.md',
|
|
150
|
+
'M\t.vibe/features/thing.feature',
|
|
151
|
+
'A\t.vibe/specs/real.md',
|
|
152
|
+
].join('\n');
|
|
153
|
+
expect(selectChangedSpecPaths(nameStatus)).toEqual(['.vibe/specs/real.md']);
|
|
154
|
+
});
|
|
155
|
+
it('drops the legacy .claude/vibe/specs source side of a move', () => {
|
|
156
|
+
const nameStatus = 'R100\t.claude/vibe/specs/a.md\t.vibe/specs/a.md';
|
|
157
|
+
expect(selectChangedSpecPaths(nameStatus)).toEqual([]);
|
|
158
|
+
});
|
|
105
159
|
});
|
|
106
160
|
//# sourceMappingURL=curated-release-notes.test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"curated-release-notes.test.js","sourceRoot":"","sources":["../../src/tests/curated-release-notes.test.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"curated-release-notes.test.js","sourceRoot":"","sources":["../../src/tests/curated-release-notes.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -15,6 +15,28 @@ export interface ReleaseNotesInput {
|
|
|
15
15
|
type ReleaseSection = 'Breaking' | 'Added' | 'Fixed' | 'Changed' | 'Documentation' | 'Internal';
|
|
16
16
|
export type ClassifiedCommits = Record<ReleaseSection, string[]>;
|
|
17
17
|
export declare function selectPreviousSemanticTag(tags: string[], currentTag: string): string;
|
|
18
|
+
/**
|
|
19
|
+
* `git diff --name-status -M --diff-filter=AMR <range>` 출력에서
|
|
20
|
+
* **이번 릴리즈의 SPEC**만 골라낸다.
|
|
21
|
+
*
|
|
22
|
+
* 경로 필터를 git pathspec 이 아니라 여기서 하는 이유: `-- .vibe/specs` 로
|
|
23
|
+
* 제한하면 rename 의 원본이 pathspec 밖일 때 git 이 짝을 못 찾아 R100 대신 A 로
|
|
24
|
+
* 보고하고, 순수 이동이 신규 SPEC 으로 새어든다.
|
|
25
|
+
*
|
|
26
|
+
* 제외 대상:
|
|
27
|
+
* - `.vibe/specs/` 밖의 경로 (릴리즈 노트의 SPEC 이 아니다)
|
|
28
|
+
* - `D` — 삭제된 SPEC (currentTag 에 없어 `git show` 가 실패한다)
|
|
29
|
+
* - `R100`/`C100` — 내용이 그대로인 이동/개명. 디렉토리 재편(예: 레거시
|
|
30
|
+
* `.claude/vibe/specs/` → `.vibe/specs/`)만으로 몇 달 전 feature 가 신규
|
|
31
|
+
* Highlights 로 올라가면 릴리즈 노트가 사용자를 오인시킨다. 이동은 릴리즈
|
|
32
|
+
* 내용이 아니다.
|
|
33
|
+
*
|
|
34
|
+
* `R` 중 유사도가 100 미만인 것(개명 + 실제 수정)은 신규 경로로 유지한다.
|
|
35
|
+
*
|
|
36
|
+
* @param nameStatus `--name-status` 원문 (pathspec 없이 전체 트리)
|
|
37
|
+
* @returns currentTag 기준 SPEC 경로
|
|
38
|
+
*/
|
|
39
|
+
export declare function selectChangedSpecPaths(nameStatus: string): string[];
|
|
18
40
|
export declare function classifyCommits(commits: ReleaseCommit[]): ClassifiedCommits;
|
|
19
41
|
export declare function createReleaseNotes(input: ReleaseNotesInput): string;
|
|
20
42
|
export {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"releaseNotes.d.ts","sourceRoot":"","sources":["../../../src/tools/release/releaseNotes.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,aAAa;IAC5B,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,iBAAiB;IAChC,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,WAAW,EAAE,CAAC;IACrB,OAAO,EAAE,aAAa,EAAE,CAAC;CAC1B;AAED,KAAK,cAAc,GAAG,UAAU,GAAG,OAAO,GAAG,OAAO,GAAG,SAAS,GAAG,eAAe,GAAG,UAAU,CAAC;AAChG,MAAM,MAAM,iBAAiB,GAAG,MAAM,CAAC,cAAc,EAAE,MAAM,EAAE,CAAC,CAAC;AAmCjE,wBAAgB,yBAAyB,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM,CAWpF;AAMD,wBAAgB,eAAe,CAAC,OAAO,EAAE,aAAa,EAAE,GAAG,iBAAiB,CAa3E;AA4BD,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,iBAAiB,GAAG,MAAM,CAkBnE"}
|
|
1
|
+
{"version":3,"file":"releaseNotes.d.ts","sourceRoot":"","sources":["../../../src/tools/release/releaseNotes.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,aAAa;IAC5B,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,iBAAiB;IAChC,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,WAAW,EAAE,CAAC;IACrB,OAAO,EAAE,aAAa,EAAE,CAAC;CAC1B;AAED,KAAK,cAAc,GAAG,UAAU,GAAG,OAAO,GAAG,OAAO,GAAG,SAAS,GAAG,eAAe,GAAG,UAAU,CAAC;AAChG,MAAM,MAAM,iBAAiB,GAAG,MAAM,CAAC,cAAc,EAAE,MAAM,EAAE,CAAC,CAAC;AAmCjE,wBAAgB,yBAAyB,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM,CAWpF;AAKD;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,sBAAsB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,EAAE,CAmBnE;AAMD,wBAAgB,eAAe,CAAC,OAAO,EAAE,aAAa,EAAE,GAAG,iBAAiB,CAa3E;AA4BD,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,iBAAiB,GAAG,MAAM,CAkBnE"}
|
|
@@ -42,6 +42,51 @@ export function selectPreviousSemanticTag(tags, currentTag) {
|
|
|
42
42
|
throw new Error(`No previous semantic tag found for ${currentTag}`);
|
|
43
43
|
return candidates[0].tag;
|
|
44
44
|
}
|
|
45
|
+
/** SPEC 으로 인정하는 경로 접두사 — 레거시 `.claude/vibe/specs/` 는 제외(이전 원본) */
|
|
46
|
+
const SPEC_PATH_PREFIX = '.vibe/specs/';
|
|
47
|
+
/**
|
|
48
|
+
* `git diff --name-status -M --diff-filter=AMR <range>` 출력에서
|
|
49
|
+
* **이번 릴리즈의 SPEC**만 골라낸다.
|
|
50
|
+
*
|
|
51
|
+
* 경로 필터를 git pathspec 이 아니라 여기서 하는 이유: `-- .vibe/specs` 로
|
|
52
|
+
* 제한하면 rename 의 원본이 pathspec 밖일 때 git 이 짝을 못 찾아 R100 대신 A 로
|
|
53
|
+
* 보고하고, 순수 이동이 신규 SPEC 으로 새어든다.
|
|
54
|
+
*
|
|
55
|
+
* 제외 대상:
|
|
56
|
+
* - `.vibe/specs/` 밖의 경로 (릴리즈 노트의 SPEC 이 아니다)
|
|
57
|
+
* - `D` — 삭제된 SPEC (currentTag 에 없어 `git show` 가 실패한다)
|
|
58
|
+
* - `R100`/`C100` — 내용이 그대로인 이동/개명. 디렉토리 재편(예: 레거시
|
|
59
|
+
* `.claude/vibe/specs/` → `.vibe/specs/`)만으로 몇 달 전 feature 가 신규
|
|
60
|
+
* Highlights 로 올라가면 릴리즈 노트가 사용자를 오인시킨다. 이동은 릴리즈
|
|
61
|
+
* 내용이 아니다.
|
|
62
|
+
*
|
|
63
|
+
* `R` 중 유사도가 100 미만인 것(개명 + 실제 수정)은 신규 경로로 유지한다.
|
|
64
|
+
*
|
|
65
|
+
* @param nameStatus `--name-status` 원문 (pathspec 없이 전체 트리)
|
|
66
|
+
* @returns currentTag 기준 SPEC 경로
|
|
67
|
+
*/
|
|
68
|
+
export function selectChangedSpecPaths(nameStatus) {
|
|
69
|
+
const paths = [];
|
|
70
|
+
for (const line of nameStatus.split('\n')) {
|
|
71
|
+
const fields = line.split('\t').map((field) => field.trim());
|
|
72
|
+
const status = fields[0];
|
|
73
|
+
if (!status)
|
|
74
|
+
continue;
|
|
75
|
+
// rename/copy 는 `R100 old new` 형태 — 대상 경로는 마지막 필드
|
|
76
|
+
const isRenameLike = /^[RC]\d*$/.test(status);
|
|
77
|
+
const target = isRenameLike ? fields[2] : fields[1];
|
|
78
|
+
if (!target || !target.endsWith('.md'))
|
|
79
|
+
continue;
|
|
80
|
+
if (!target.startsWith(SPEC_PATH_PREFIX))
|
|
81
|
+
continue;
|
|
82
|
+
if (status.startsWith('D'))
|
|
83
|
+
continue;
|
|
84
|
+
if (isRenameLike && /^[RC]100$/.test(status))
|
|
85
|
+
continue;
|
|
86
|
+
paths.push(target);
|
|
87
|
+
}
|
|
88
|
+
return paths;
|
|
89
|
+
}
|
|
45
90
|
function emptySections() {
|
|
46
91
|
return { Breaking: [], Added: [], Fixed: [], Changed: [], Documentation: [], Internal: [] };
|
|
47
92
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"releaseNotes.js","sourceRoot":"","sources":["../../../src/tools/release/releaseNotes.ts"],"names":[],"mappings":"AAoBA,MAAM,YAAY,GAAG,wBAAwB,CAAC;AAC9C,MAAM,cAAc,GAAG,iEAAiE,CAAC;AACzF,MAAM,oBAAoB,GAAG,uCAAuC,CAAC;AACrE,MAAM,aAAa,GAAqB;IACtC,UAAU,EAAE,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,UAAU;CACrE,CAAC;AACF,MAAM,eAAe,GAAmC;IACtD,IAAI,EAAE,OAAO;IACb,GAAG,EAAE,OAAO;IACZ,IAAI,EAAE,eAAe;IACrB,QAAQ,EAAE,UAAU;IACpB,KAAK,EAAE,UAAU;IACjB,IAAI,EAAE,UAAU;IAChB,EAAE,EAAE,UAAU;IACd,KAAK,EAAE,UAAU;IACjB,IAAI,EAAE,SAAS;IACf,KAAK,EAAE,SAAS;CACjB,CAAC;AAEF,SAAS,QAAQ,CAAC,GAAW;IAC3B,MAAM,KAAK,GAAG,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACrC,IAAI,CAAC,KAAK;QAAE,OAAO,SAAS,CAAC;IAC7B,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAChE,CAAC;AAED,SAAS,eAAe,CAAC,IAAc,EAAE,KAAe;IACtD,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,IAAI,CAAC,MAAM,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC;QACpD,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC;QAC9C,IAAI,UAAU,KAAK,CAAC;YAAE,OAAO,UAAU,CAAC;IAC1C,CAAC;IACD,OAAO,CAAC,CAAC;AACX,CAAC;AAED,MAAM,UAAU,yBAAyB,CAAC,IAAc,EAAE,UAAkB;IAC1E,MAAM,OAAO,GAAG,QAAQ,CAAC,UAAU,CAAC,CAAC;IACrC,IAAI,CAAC,OAAO;QAAE,MAAM,IAAI,KAAK,CAAC,wBAAwB,UAAU,EAAE,CAAC,CAAC;IACpE,MAAM,UAAU,GAAG,IAAI;SACpB,GAAG,CAAC,CAAC,GAAG,EAAkE,EAAE,CAC3E,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;SACnC,MAAM,CAAC,CAAC,IAAI,EAA8D,EAAE,CAC3E,IAAI,CAAC,OAAO,KAAK,SAAS,IAAI,eAAe,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC;SAC1E,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAU,EAAE,CAAC,eAAe,CAAC,KAAK,CAAC,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;IAC/E,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,sCAAsC,UAAU,EAAE,CAAC,CAAC;IACxF,OAAO,UAAU,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;AAC3B,CAAC;AAED,SAAS,aAAa;IACpB,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,aAAa,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC;AAC9F,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,OAAwB;IACtD,OAAO,OAAO,CAAC,MAAM,CAAoB,CAAC,QAAQ,EAAE,MAAM,EAAqB,EAAE;QAC/E,IAAI,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC;YAAE,OAAO,QAAQ,CAAC;QAChG,MAAM,KAAK,GAAG,oBAAoB,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACxD,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YACtC,OAAO,QAAQ,CAAC;QAClB,CAAC;QACD,MAAM,UAAU,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,GAAG,IAAI,sBAAsB,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAChF,MAAM,OAAO,GAAG,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,IAAI,SAAS,CAAC,CAAC;QACjG,QAAQ,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QACjC,OAAO,QAAQ,CAAC;IAClB,CAAC,EAAE,aAAa,EAAE,CAAC,CAAC;AACtB,CAAC;AAED,SAAS,cAAc,CAAC,OAAe,EAAE,OAAe;IACtD,MAAM,OAAO,GAAG,IAAI,MAAM,CAAC,iBAAiB,OAAO,gDAAgD,EAAE,IAAI,CAAC,CAAC;IAC3G,OAAO,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;AAClD,CAAC;AAED,SAAS,qBAAqB,CAAC,IAAiB;IAC9C,MAAM,KAAK,GAAG,0BAA0B,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC;IAC9E,MAAM,QAAQ,GAAG,cAAc,CAAC,IAAI,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IACtF,MAAM,YAAY,GAAG,cAAc,CAAC,IAAI,CAAC,OAAO,EAAE,cAAc,CAAC;SAC9D,KAAK,CAAC,IAAI,CAAC;SACX,MAAM,CAAC,CAAC,IAAI,EAAW,EAAE,CAAC,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;SACzD,GAAG,CAAC,CAAC,IAAI,EAAsB,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC;SAC7D,MAAM,CAAC,CAAC,KAAK,EAAmB,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;IACtD,OAAO,CAAC,OAAO,KAAK,EAAE,EAAE,QAAQ,EAAE,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC,WAAW,EAAU,EAAE,CAAC,KAAK,WAAW,EAAE,CAAC,CAAC;SAChG,MAAM,CAAC,CAAC,KAAK,EAAW,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;AAChD,CAAC;AAED,SAAS,oBAAoB,CAAC,QAA2B;IACvD,OAAO,aAAa,CAAC,OAAO,CAAC,CAAC,OAAO,EAAY,EAAE;QACjD,MAAM,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC,CAAC;QAClC,OAAO,OAAO,CAAC,MAAM,GAAG,CAAC;YACvB,CAAC,CAAC,CAAC,MAAM,OAAO,EAAE,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,KAAK,EAAU,EAAE,CAAC,KAAK,KAAK,EAAE,CAAC,CAAC;YACpE,CAAC,CAAC,EAAE,CAAC;IACT,CAAC,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,KAAwB;IACzD,MAAM,QAAQ,GAAG,eAAe,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAChD,MAAM,UAAU,GAAG,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,qBAAqB,CAAC,CAAC;IAC9D,MAAM,cAAc,GAAG,oBAAoB,CAAC,QAAQ,CAAC,CAAC;IACtD,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,IAAI,cAAc,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC3D,MAAM,IAAI,KAAK,CAAC,+BAA+B,KAAK,CAAC,WAAW,KAAK,KAAK,CAAC,UAAU,EAAE,CAAC,CAAC;IAC3F,CAAC;IACD,OAAO;QACL,KAAK,KAAK,CAAC,UAAU,EAAE;QACvB,eAAe;QACf,GAAG,UAAU;QACb,GAAG,cAAc;QACjB,iBAAiB;QACjB,sBAAsB,KAAK,CAAC,WAAW,KAAK,KAAK,CAAC,UAAU,IAAI;QAChE,uBAAuB,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE;QAC7C,2EAA2E;QAC3E,EAAE;KACH,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;AACjB,CAAC"}
|
|
1
|
+
{"version":3,"file":"releaseNotes.js","sourceRoot":"","sources":["../../../src/tools/release/releaseNotes.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
[2026-07-
|
|
2
|
-
[2026-07-
|
|
3
|
-
[2026-07-
|
|
1
|
+
[2026-07-26T20:17:16.249Z] rm -rf /
|
|
2
|
+
[2026-07-26T20:17:16.366Z] ls -la
|
|
3
|
+
[2026-07-26T20:17:16.472Z] rm -rf src/infra/lib/evolution/
|
|
@@ -153,3 +153,61 @@ describe('console.log 허용 경로 정책', () => {
|
|
|
153
153
|
expect(isConsoleAllowed('src/infra/lib/MemoryManager.ts')).toBe(false);
|
|
154
154
|
});
|
|
155
155
|
});
|
|
156
|
+
|
|
157
|
+
// ─── 확장자 게이트 (문서 안의 코드 스니펫 오탐 방지) ──────────────────────
|
|
158
|
+
/**
|
|
159
|
+
* SKILL.md 등 문서에 인용된 `console.log(` 는 커밋되면 안 되는 디버그 코드가
|
|
160
|
+
* 아니라 예시다. 확장자 게이트가 없으면 문서를 편집할 때마다 고칠 수도 없는
|
|
161
|
+
* P1 이 주입되고, 반복되는 오탐이 게이트 신뢰도를 깎는다.
|
|
162
|
+
*
|
|
163
|
+
* 재구현이 아니라 실제 code-check.js 의 run() 을 통과시켜 검증한다.
|
|
164
|
+
*/
|
|
165
|
+
describe('console.log 확장자 게이트', () => {
|
|
166
|
+
let tempDir;
|
|
167
|
+
let runCodeCheck;
|
|
168
|
+
|
|
169
|
+
beforeEach(async () => {
|
|
170
|
+
tempDir = fs.mkdtempSync(path.join(os.tmpdir(), 'vibe-codecheck-ext-'));
|
|
171
|
+
({ run: runCodeCheck } = await import('../code-check.js'));
|
|
172
|
+
});
|
|
173
|
+
|
|
174
|
+
afterEach(() => {
|
|
175
|
+
fs.rmSync(tempDir, { recursive: true, force: true });
|
|
176
|
+
});
|
|
177
|
+
|
|
178
|
+
/** 허용 glob 에 걸리지 않는 경로를 쓰기 위해 src/feature/ 아래에 만든다 */
|
|
179
|
+
function writeFixture(name, body) {
|
|
180
|
+
const dir = path.join(tempDir, 'src', 'feature');
|
|
181
|
+
fs.mkdirSync(dir, { recursive: true });
|
|
182
|
+
const full = path.join(dir, name);
|
|
183
|
+
fs.writeFileSync(full, body);
|
|
184
|
+
return full;
|
|
185
|
+
}
|
|
186
|
+
|
|
187
|
+
it('마크다운 안의 console.log 는 findings 를 만들지 않는다', async () => {
|
|
188
|
+
const filePath = writeFixture(
|
|
189
|
+
'guide.md',
|
|
190
|
+
['# Guide', '', '```bash', 'node -e "console.log(1)"', '```', ''].join('\n'),
|
|
191
|
+
);
|
|
192
|
+
|
|
193
|
+
const { findings } = await runCodeCheck({ filePath });
|
|
194
|
+
|
|
195
|
+
expect(findings.filter(f => /console\.log/.test(f))).toEqual([]);
|
|
196
|
+
});
|
|
197
|
+
|
|
198
|
+
it('JSON 안의 console.log 문자열도 findings 를 만들지 않는다', async () => {
|
|
199
|
+
const filePath = writeFixture('fixture.json', '{ "cmd": "console.log(1)" }\n');
|
|
200
|
+
|
|
201
|
+
const { findings } = await runCodeCheck({ filePath });
|
|
202
|
+
|
|
203
|
+
expect(findings.filter(f => /console\.log/.test(f))).toEqual([]);
|
|
204
|
+
});
|
|
205
|
+
|
|
206
|
+
it('코드 확장자에서는 여전히 탐지한다 (게이트가 탐지 자체를 죽이지 않음)', async () => {
|
|
207
|
+
const filePath = writeFixture('service.ts', 'export const f = () => { console.log(1); };\n');
|
|
208
|
+
|
|
209
|
+
const { findings } = await runCodeCheck({ filePath });
|
|
210
|
+
|
|
211
|
+
expect(findings.some(f => /console\.log/.test(f))).toBe(true);
|
|
212
|
+
});
|
|
213
|
+
});
|
|
@@ -124,11 +124,18 @@ function detectAnyType(lines) {
|
|
|
124
124
|
|
|
125
125
|
/**
|
|
126
126
|
* P1: console.log 탐지 — 허용 경로가 아닌 곳의 src/ 코드.
|
|
127
|
+
*
|
|
128
|
+
* 코드 확장자에만 적용한다: 마크다운·JSON·텍스트에 인용된 `console.log(` 는
|
|
129
|
+
* 커밋되면 안 되는 디버그 코드가 아니라 문서상의 예시다. 확장자 게이트가 없으면
|
|
130
|
+
* SKILL.md 안의 bash/JS 스니펫이 매 편집마다 P1 으로 주입돼, 고칠 수도 없는
|
|
131
|
+
* 경고가 반복되고 게이트 신뢰도가 떨어진다.
|
|
132
|
+
*
|
|
127
133
|
* @param {string[]} lines
|
|
128
134
|
* @param {string} filePath
|
|
129
135
|
* @returns {Array<{ line: number, match: string, severity: 'P1' }>}
|
|
130
136
|
*/
|
|
131
137
|
function detectConsoleLogs(lines, filePath) {
|
|
138
|
+
if (!CODE_EXT_RE.test(filePath)) return [];
|
|
132
139
|
if (isConsoleAllowed(filePath)) return [];
|
|
133
140
|
const findings = [];
|
|
134
141
|
lines.forEach((line, i) => {
|
package/package.json
CHANGED
|
@@ -15,10 +15,10 @@
|
|
|
15
15
|
## Mode 1: Scale for Large Projects (6+ related files) — Additional Agent Prompts
|
|
16
16
|
|
|
17
17
|
```text
|
|
18
|
-
Agent(subagent_type="Explore",
|
|
18
|
+
Agent(subagent_type="Explore",
|
|
19
19
|
prompt="Find all test files related to [FEATURE]. Identify tested vs untested paths.")
|
|
20
20
|
|
|
21
|
-
Agent(subagent_type="Explore",
|
|
21
|
+
Agent(subagent_type="Explore",
|
|
22
22
|
prompt="Analyze [FEATURE] configuration, environment variables, and external integrations.")
|
|
23
23
|
```
|
|
24
24
|
|
|
@@ -31,7 +31,9 @@ user-invocable: true
|
|
|
31
31
|
> CODEX_AVAILABLE=$(node "{{VIBE_PATH}}/hooks/scripts/codex-detect.js" 2>/dev/null || echo "unavailable")
|
|
32
32
|
> ```
|
|
33
33
|
>
|
|
34
|
-
> `available`이면
|
|
34
|
+
> `available`이면 Codex 플러그인의 review/rescue 명령을 사용하고, `unavailable`이면 GPT+Antigravity Race 모드로 동작한다.
|
|
35
|
+
>
|
|
36
|
+
> ⚠️ **명령 이름을 가정하지 않는다.** 과거 본문은 `/codex:review`·`/codex:rescue` 를 고정 호출했으나, 이는 특정 플러그인 설치본에만 존재하는 표면이다. 실제 사용 가능한 명령을 확인한 뒤 쓰고, 없으면 Race 모드로 폴백한다 — 존재하지 않는 슬래시 명령을 실행하려 시도하지 않는다.
|
|
35
37
|
|
|
36
38
|
## Race Mode (v2.6.9)
|
|
37
39
|
|
|
@@ -41,9 +43,11 @@ user-invocable: true
|
|
|
41
43
|
|
|
42
44
|
## File Reading Policy (Mandatory)
|
|
43
45
|
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
-
|
|
46
|
+
> 규칙은 **전체 읽기**이지 특정 도구 이름이 아니다. 하네스가 제공하는 파일 읽기 수단을 쓴다 — Claude Code 는 `Read` 도구, Codex 는 셸(`cat`/`sed -n`) 등. 도구 이름이 없다고 규칙을 건너뛰지 않는다.
|
|
47
|
+
|
|
48
|
+
- **소스코드 파일**: 리뷰 대상 파일은 전체를 읽은 후 리뷰한다 (검색 결과만 훑어보고 판단 금지)
|
|
49
|
+
- **검색 도구 사용 제한**: grep/ripgrep 류는 **파일 위치 탐색**에만 쓴다. 내용 파악과 리뷰는 전체 읽기로 한다
|
|
50
|
+
- **에이전트 실행 시**: 프롬프트에 "대상 파일을 전체 읽은 후 분석하라"를 포함한다
|
|
47
51
|
- **부분 읽기 금지**: Grep 결과의 주변 몇 줄만 보고 판단하지 말 것. 전체 맥락을 파악해야 정확한 리뷰 가능
|
|
48
52
|
|
|
49
53
|
## Priority System
|
|
@@ -82,7 +86,7 @@ user-invocable: true
|
|
|
82
86
|
- "All items must be verified" → Only P1 is mandatory, P2/P3 are best-effort
|
|
83
87
|
- "Found one more issue" (repeated) → Only report P1s not mentioned in previous review
|
|
84
88
|
- Forcing code changes for P3 issues → P3 goes to TODO files only, never force code changes
|
|
85
|
-
- Infinite retries on auto-fix failure →
|
|
89
|
+
- Infinite retries on auto-fix failure → **escalation ladder**: 최초 시도 → 재시도 1회 → (Codex 플러그인 있으면) Codex Rescue 1회 → TODO. 같은 방식으로 계속 재시도하지 않는다
|
|
86
90
|
|
|
87
91
|
## Process
|
|
88
92
|
|
|
@@ -114,16 +118,25 @@ Detect project tech stack FIRST before launching reviewers.
|
|
|
114
118
|
| demo / prototype | >5 또는 prototype | correctness + security + data-integrity **3종** |
|
|
115
119
|
| production | 무관 | 아래 Core Reviewers 전체 (기존 기본 동작 — 불변) |
|
|
116
120
|
|
|
117
|
-
**Spawn
|
|
121
|
+
**Spawn one reviewer per focus, as concurrently as the harness allows** — a `code-reviewer` instance per focus plus `security-reviewer`, each scoped to the changed files.
|
|
122
|
+
|
|
123
|
+
호출 계약(하네스 무관): "에이전트 `{agent}` 를 인자 `Review {FILES} — focus: {focus}` 로 실행한다"
|
|
118
124
|
|
|
119
125
|
```
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
126
|
+
run agent code-reviewer args: "Review {FILES} — focus: correctness"
|
|
127
|
+
run agent code-reviewer args: "Review {FILES} — focus: data-integrity"
|
|
128
|
+
run agent code-reviewer args: "Review {FILES} — focus: performance"
|
|
129
|
+
run agent code-reviewer args: "Review {FILES} — focus: architecture"
|
|
130
|
+
run agent security-reviewer args: "Review {FILES} for vulnerabilities"
|
|
125
131
|
```
|
|
126
132
|
|
|
133
|
+
| 하네스 | 실행 방식 |
|
|
134
|
+
|---|---|
|
|
135
|
+
| Claude Code | 네이티브 서브에이전트를 **한 메시지에 모두** 스폰 (동시 실행) |
|
|
136
|
+
| Codex | 동시 슬롯 한도 내에서 스폰하고, 남는 focus 는 **순차 실행**한다 |
|
|
137
|
+
|
|
138
|
+
> **동시 슬롯이 focus 수보다 적으면 focus 를 버리지 말고 순차로 돌린다.** 커버리지가 동시성보다 우선이다 — 리뷰 축을 조용히 빠뜨리면 P1 을 놓친다. 스킵한 focus 가 있으면 최종 보고에 명시한다.
|
|
139
|
+
|
|
127
140
|
Stack-specific focus (`idioms`) is added when the diff touches that stack's files. Collect all results, then dedupe/merge findings before Phase 3.
|
|
128
141
|
|
|
129
142
|
**Core Reviewers (Always Run — parallel `code-reviewer` instances, one per focus, plus `security-reviewer`):**
|
|
@@ -210,7 +223,7 @@ After agent results:
|
|
|
210
223
|
|
|
211
224
|
### Auto-Fix 실패 시 Codex Rescue (Codex 플러그인 활성화 시)
|
|
212
225
|
|
|
213
|
-
P1/P2 auto-fix
|
|
226
|
+
P1/P2 auto-fix 가 **재시도 1회까지 실패**하면(= 시도 2회), TODO 로 내리기 전에 Codex 에 **1회** 위임한다 — escalation ladder SSOT: 위 Anti-Patterns:
|
|
214
227
|
|
|
215
228
|
```
|
|
216
229
|
/codex:rescue "Fix {priority} issue: {issue-description}. File: {file-path}"
|
|
@@ -235,8 +248,8 @@ Save **remaining** findings to `.vibe/todos/`:
|
|
|
235
248
|
> Read `references/output-template.md` for the full Fix Workflow prompt template.
|
|
236
249
|
|
|
237
250
|
- Wait for user's choice before proceeding
|
|
238
|
-
- If user chooses VIBE → wait for
|
|
239
|
-
- If user chooses Plan Mode →
|
|
251
|
+
- If user chooses VIBE → wait for the user to invoke the `vibe.spec` skill
|
|
252
|
+
- If user chooses Plan Mode → enter the harness's plan/read-only mode if it has one (Claude Code: plan mode). **하네스에 등가 모드가 없으면**(Codex 등) 모드 전환 대신 "계획만 제시하고 사용자 승인 전까지 파일을 수정하지 않는다"를 그대로 지킨다 — 없는 모드를 호출하려 시도하지 않는다.
|
|
240
253
|
|
|
241
254
|
## Core Tools (Code Analysis)
|
|
242
255
|
|
package/skills/vibe.run/SKILL.md
CHANGED
|
@@ -41,10 +41,12 @@ Execute **Scenario-Driven Implementation** with automatic quality verification.
|
|
|
41
41
|
|
|
42
42
|
## File Reading Policy (Mandatory)
|
|
43
43
|
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
- **
|
|
47
|
-
-
|
|
44
|
+
> 규칙은 **전체 읽기**이지 특정 도구 이름이 아니다. 하네스가 제공하는 파일 읽기 수단을 쓴다 — Claude Code 는 `Read` 도구, Codex 는 셸(`cat`/`sed -n`) 등. 도구 이름이 없다고 규칙을 건너뛰지 않는다.
|
|
45
|
+
|
|
46
|
+
- **SPEC/Feature 파일**: 전체를 읽는다 (검색 결과 일부만 보고 판단 금지)
|
|
47
|
+
- **소스코드 파일**: 구현/수정 대상 파일은 전체를 읽은 후 작업한다
|
|
48
|
+
- **검색 도구 사용 제한**: grep/ripgrep 류는 **파일 위치 탐색**(어떤 파일에 있는지)에만 쓴다. 내용 파악은 전체 읽기로 한다
|
|
49
|
+
- **에이전트 실행 시**: 프롬프트에 "대상 파일을 전체 읽은 후 구현하라"를 포함한다
|
|
48
50
|
|
|
49
51
|
## **Scenario-Driven Development (SDD)**
|
|
50
52
|
|
|
@@ -177,7 +179,7 @@ Default: a
|
|
|
177
179
|
| 1-1 | Phase Isolation Protocol | 3+ phase SPEC 은 phase 단위 격리 + 체크포인트 필수 |
|
|
178
180
|
| 1-2 | SPEC-First Gate | SPEC 에 없는 것을 구현하지 않는다 |
|
|
179
181
|
| 2 | Extract Scenario List | Feature 파일의 시나리오가 작업 단위 |
|
|
180
|
-
| 3 | Scenario-by-Scenario Implementation | 시나리오
|
|
182
|
+
| 3 | Scenario-by-Scenario Implementation | 기본 순차. **구현→검증 쌍은 시나리오 단위로 쪼개지 않는다**. `autonomous` 에서 서로 의존하지 않는 시나리오는 병렬 가능하되 검증은 시나리오별로 각각 (SSOT: 위 "하네스-안전 증분") |
|
|
181
183
|
| 4 | Brand Assets | 신규 프로젝트만 (`references/brand-assets.md`) |
|
|
182
184
|
| 5 | Race Code Review | `references/race-review.md` |
|
|
183
185
|
| 6 | Quality Report | 자동 생성 |
|