Skip to content

Commit a0a82f6

Browse files
authored
docs: Symphony 테스트 워크플로 상태 제어 업데이트 (#243)
* docs: Symphony 테스트 워크플로 상태 제어 업데이트
1 parent af9817e commit a0a82f6

1 file changed

Lines changed: 67 additions & 62 deletions

File tree

WORKFLOW.md

Lines changed: 67 additions & 62 deletions
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ hooks:
2828
git clone --branch develop https://github.com/prgrms-web-devcourse-final-project/WEB5_7_3star_BE.git .
2929
agent:
3030
max_concurrent_agents: 1
31-
max_turns: 8
31+
max_turns: 4
3232
codex:
3333
command: codex --model gpt-5.4-mini --config model_reasoning_effort="high" --config shell_environment_policy.inherit=all app-server
3434
approval_policy: never
@@ -38,80 +38,85 @@ codex:
3838
networkAccess: true
3939
---
4040

41-
너는 Linear 이슈 `{{ issue.identifier }}`를 작업한다.
41+
You are working on Linear issue `{{ issue.identifier }}`.
4242

43-
## 기본
43+
## Basics
4444

45-
- 이 파일은 실행 설정과 공통 규칙만 둔다.
46-
- 세부 역할과 테스트 경계는 `docs/ai-test-workflow/rules/*.md`와 이슈 본문을 따른다.
47-
- 근거가 없으면 추측하지 말고, 부족한 근거만 기록한다.
48-
- 출력은 한국어로 쓴다.
49-
- 코드 식별자, 파일 경로, 클래스명, 메서드명, 명령어, 예외명은 원문 그대로 유지한다.
45+
- This file contains only execution settings and shared rules.
46+
- Follow `docs/ai-test-workflow/rules/*.md` and the issue body for role details and test boundaries.
47+
- Do not guess when evidence is missing. Record only missing evidence.
48+
- Write user-facing output in Korean.
49+
- Keep code identifiers, file paths, class names, method names, commands, and exception names unchanged.
5050

51-
## 산출물
51+
## Artifacts
5252

5353
- Researcher: `docs/ai-test-workflow/reports/{{ issue.identifier }}/research-report.md`
5454
- Planner: `docs/ai-test-workflow/reports/{{ issue.identifier }}/test-plan.md`
5555
- Reviewer: `docs/ai-test-workflow/reports/{{ issue.identifier }}/review-report.md`
56-
- PR 초안: `docs/ai-test-workflow/reports/{{ issue.identifier }}/pr-draft.md`
57-
- 로그: `docs/ai-test-workflow/logs/{{ issue.identifier }}/prompt-and-tool-log.md`
56+
- PR draft: `docs/ai-test-workflow/reports/{{ issue.identifier }}/pr-draft.md`
57+
- Log: `docs/ai-test-workflow/logs/{{ issue.identifier }}/prompt-and-tool-log.md`
5858

59-
## 이슈 정보
59+
## Issue Info
6060

61-
- 식별자: `{{ issue.identifier }}`
62-
- 제목: `{{ issue.title }}`
63-
- 상태: `{{ issue.state }}`
64-
- 라벨: `{{ issue.labels }}`
61+
- Identifier: `{{ issue.identifier }}`
62+
- Title: `{{ issue.title }}`
63+
- State: `{{ issue.state }}`
64+
- Labels: `{{ issue.labels }}`
6565
- URL: `{{ issue.url }}`
6666

6767
{% if issue.description %}
6868
{{ issue.description }}
6969
{% else %}
70-
설명이 없습니다.
70+
No description provided.
7171
{% endif %}
7272

73-
## 첫 실행
74-
75-
- 작업공간에 `.codegraph/`가 없으면 `codegraph init -i`를 1회 실행한다.
76-
- 인덱스가 있으면 재사용한다.
77-
- 구조 질의는 CodeGraph를 우선 쓴다.
78-
79-
## 규칙
80-
81-
- 이슈를 단일 기준으로 삼는다.
82-
- 이슈 범위를 벗어나지 않는다.
83-
- 승인 전에는 운영 코드를 수정하지 않는다.
84-
- 계획 작성 후 `Planning`으로 이동하고 종료한다.
85-
- `Planning`은 active state가 아니며 승인 대기 중 재시도하지 않는다.
86-
- 구현 완료 후 `In Review`로 이동한다.
87-
- 리뷰 완료 후 `Final Approval`로 이동하고 종료한다.
88-
- `Final Approval`은 active state가 아니며 승인 대기 중 재시도하지 않는다.
89-
- `Done`, `Closed`, `Cancelled`, `Canceled`, `Duplicate`로 직접 전환하지 않는다.
90-
- `git push`, `gh pr create`, PR merge는 하지 않는다.
91-
- PR 본문은 초안만 남긴다.
92-
- PR 초안은 `.github/PULL_REQUEST_TEMPLATE.md` 항목을 따른다.
93-
- PR 초안의 관련 이슈는 GitHub 이슈 번호를 `#123` 형식으로 쓴다.
94-
- `Final Approval`은 사람이 확인할 때만 쓰고 active state에는 넣지 않는다.
95-
- 리뷰 반복 여부는 파일 존재가 아니라 현재 이슈, 작업 범위, 브랜치, 최신 커밋 기준으로 판단한다.
96-
- 같은 스냅샷의 리뷰가 이미 있으면 요약만 남기고 `Final Approval`로 이동한다.
97-
98-
## 상태
99-
100-
- `Backlog`: 미착수
101-
- `Todo`: 대기
102-
- `Research`: 조사
103-
- `Planning`: 계획, 승인 대기
104-
- `Approved`: 승인 완료
105-
- `In Progress`: 구현 중
106-
- `In Review`: 검토 중
107-
- `Rework`: 수정 중
108-
- `Final Approval`: 최종 승인 대기
109-
- `Done`: 최종 완료
110-
111-
## 최소 기록
112-
113-
- 리포트는 목적, 근거, 발견 사항, 한계, 다음 단계만 남긴다.
114-
- 로그는 사용한 프롬프트와 도구만 기록한다.
115-
- 산출물은 이슈별 디렉터리에 보관한다.
116-
- 이전 이슈 산출물을 덮어쓰지 않는다.
117-
- 최종 응답은 완료 작업, 수정 파일, 검증, 남은 블로커만 요약한다.
73+
## First Run
74+
75+
- If `.codegraph/` is missing, run `codegraph init -i` once.
76+
- Reuse the index if it already exists.
77+
- Prefer CodeGraph for structural queries.
78+
79+
## Rules
80+
81+
- Use the issue as the single source of truth.
82+
- Stay within issue scope.
83+
- Do not modify production code before approval.
84+
- After planning, move to `Planning` and stop.
85+
- `Planning` is not an active state and must not keep retrying.
86+
- If the current state is `Approved`, do not rewrite the plan; move to implementation.
87+
- If `test-plan.md` already exists and the approval scope is unchanged, do not regenerate the plan.
88+
- After implementation, move to `In Review`.
89+
- After review, move to `Final Approval` and stop.
90+
- `Final Approval` is not an active state and must not keep retrying.
91+
- Do not move directly to `Done`, `Closed`, `Cancelled`, `Canceled`, or `Duplicate`.
92+
- Do not `git push`, create PRs, or merge PRs.
93+
- Keep PR text as draft only.
94+
- PR drafts must follow `.github/PULL_REQUEST_TEMPLATE.md`.
95+
- Related issue references in PR drafts must use `#123` format.
96+
- Use `Final Approval` only for human confirmation; do not include it in active states.
97+
- Decide whether to repeat review based on the current issue, scope, branch, and latest commit, not on file existence alone.
98+
- If the same snapshot was already reviewed, keep only a summary and move to `Final Approval`.
99+
100+
## States
101+
102+
- `Backlog`: not started
103+
- `Todo`: waiting
104+
- `Research`: investigation
105+
- `Planning`: plan ready, waiting for approval
106+
- `Approved`: approved
107+
- `In Progress`: implementing
108+
- `In Review`: reviewing
109+
- `Rework`: fixing
110+
- `Final Approval`: final approval waiting
111+
- `Done`: fully complete
112+
113+
## Minimal Record
114+
115+
- Reports keep only purpose, evidence, findings, limits, and next steps.
116+
- Logs keep prompts, tools, model name, and reasoning effort.
117+
- Record models with concrete values such as `gpt-5.4-mini` and `model_reasoning_effort=high`.
118+
- Logs also keep per-stage token usage.
119+
- Example stages: `Research`, `Planning`, `Implementation`, `Review`, `Approval`.
120+
- Store artifacts under issue-specific directories.
121+
- Do not overwrite artifacts from previous issues.
122+
- Final response must summarize completed work, modified files, validation, and remaining blockers only.

0 commit comments

Comments
 (0)