Skip to content

feat(detect): T1 예외 안내 6가지를 프로토타입에 맞춤 (SIL-66) - #53

Merged
k0nghaa merged 2 commits into
mainfrom
feat/sil-66-t1-exceptions
Oct 15, 2026
Merged

k0nghaa merged 2 commits into
mainfrom
feat/sil-66-t1-exceptions

Conversation

@k0nghaa

@k0nghaa k0nghaa commented Oct 15, 2026

Copy link
Copy Markdown
Collaborator

관련 이슈

SIL-66 [개발] 바뀐 결정 사항을 찾아 저장하기 (에이전트 경로 T1, 10/14 확정 예외)
https://linear.app/pj-3/issue/SIL-66

④ PR(feat/sil-66-t1-saved-screen) 위에 쌓은 PR이에요. ④ PR을 먼저 머지한 뒤 이 PR의 기준(base)을 main으로 바꿔 머지해 주세요.

무엇을 바꿨나요

예외 막대 화면
3 조사 실패 · 경우 1 빨강 다른 결정 사항을 조회하지 못해 하던 작업을 멈췄어요. / 잠시 뒤 다시 시도해 보시고 반복된다면 담당자에게 알려 주세요.
3 조사 실패 · 경우 2 빨강 다른 결정 사항을 조회하지 못해 등록을 멈췄어요. / 같은 둘째 줄
충돌 3 완전히 같음 빨강 같은 결정 사항이 있어서 등록하지 않았어요. / [영역] 제목 · 값 (선택지 없이 끝)
충돌 3 뜻이 같음 노랑 같은 뜻의 결정 사항이 이미 있어요. / [영역] 제목 · 값 → "그래도 새 결정 사항으로 등록할까요?"(예 등록해요 / 아니요 등록하지 않아요)
뜻이 같음 → 아니요 기본 글자색 등록하지 않았어요. 기존 결정 사항을 그대로 둘게요.
7 저장하는 사이 바뀜 노랑 저장하는 사이 다른 사람이 먼저 이 결정 사항을 바꿨어요. / 바뀐 내용을 다시 확인할게요.
11 아니요 뒤 새 부탁 없음 CLAUDE.md T1 3번: 아니요는 그 프롬프트의 작업에만 적용, 새 프롬프트면 다시 물어요
  • 예외 3·충돌 3은 notice.ts 명령 + hook-notice.ts로 띄워요(언제 띄울지는 CLAUDE.md T1 9번).
  • 예외 7은 프로토타입처럼 save_standard가 VERSION_CONFLICT로 거절된 그 자리에서 hook-saved.ts가 바로 띄우고, 에이전트에게 1부터 다시 하라고 전해요. 거절이 PostToolUseFailure로 와도 띄우게 그때도 hook을 등록했어요.
  • 막대 색에 "기본 글자색"(plain)을 더했어요 (뜻이 같음 → 아니요).

왜 바꿨나요

부건님 프로토타입 "T1 결정 사항 등록"의 10/14 확정 예외(결정기록 4-2)와 맞추려고요.

어떻게 확인했나요

  • pnpm check 통과 (커밋마다, 1개 건너뜀: .env에 DB 주소가 있으면 건너뛰는 기존 테스트)
  • 실제 notice.ts → hook으로 예외 3(경우 1·2)·완전히 같음·뜻이 같음·아니요 안내를 띄워 글자를 확인했어요. 예외 7은 거절 응답을 흉내 낸 테스트로 확인했어요(PostToolUse·PostToolUseFailure 둘 다).

직접 확인하지 못한 부분

  • 완전히 같음·뜻이 같음은 프로토타입 메모와 달리 서버가 아니라 에이전트가 판단해요(결정 사항의 지금 값과 비교).
  • 뜻이 같음 문구(막대·질문·예/아니요 설명)는 프로토타입에 "제안 문구"로 적혀 있어서 부건님 확정이 필요해요.
  • 조사 실패와 저장하는 사이 바뀜은 일부러 만들기 어려워 실제 터미널에서 못 봤어요. 거절이 실패로 오면 머리글이 PostToolUseFailure:…로 보일 수 있어요.
  • "아니요" 뒤 롤백 지시(SIL-95)는 이 PR에 없어요.

🤖 Generated with Claude Code

k0nghaa and others added 2 commits October 15, 2026 16:36
10/14 확정 예외를 notice.ts 명령 + hook-notice.ts로 띄워요.
- 예외 3 조사 실패(경우 1·2): 빨간 막대 "다른 결정 사항을 조회하지 못해 하던 작업을/등록을 멈췄어요."
- 충돌 3 완전히 같음: 빨간 막대 + 기존 결정 사항 줄, 선택지 없이 끝
- 충돌 3 뜻이 같음: 노란 막대 + 기존 결정 사항 줄 → "그래도 새 결정 사항으로 등록할까요?", 아니요면 기본 글자색 막대
- 예외 7 저장하는 사이 바뀜: VERSION_CONFLICT면 노란 막대 뒤 다른 결정 사항 확인부터 다시
- 예외 11: 아니요는 그 프롬프트의 작업에만 적용, 새 프롬프트면 다시 물어요 (CLAUDE.md)

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
프로토타입처럼 save_standard가 VERSION_CONFLICT로 거절되면 hook-saved.ts가
노란 막대 "저장하는 사이 다른 사람이 먼저 이 결정 사항을 바꿨어요."를 그 자리에서 띄우고,
에이전트에게는 1부터 다시 하라고 전해요. 거절이 PostToolUseFailure로 와도 띄우게
그 때에도 hook을 등록하고, notice.ts는 saveRace를 받지 않아요.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@k0nghaa
k0nghaa changed the base branch from feat/sil-66-t1-saved-screen to main October 15, 2026 07:40
@k0nghaa
k0nghaa merged commit 3fe4990 into main Oct 15, 2026
@github-actions

Copy link
Copy Markdown

바뀐 결정 사항 찾기 · PR #53

지금은 결정 사항을 저장하지 않고 결과만 알려 주는 기간이에요. 저장했다면 아래처럼 했을 거예요.

@k0nghaa 이 PR에서 결정 사항이 바뀐 것 같은데 확실하지 않아요.

'아니요' 답이 그 부탁 하나에만 적용된다는 점과, 결정 사항을 조회하지 못하면 작업을 멈추는 것·같은 결정 사항이나 같은 뜻의 결정 사항이 이미 있을 때의 처리를 팀 결정 사항으로 새로 정한 것인가요?

detect.ask.cancel-keeps-wiki 진행하지 않겠다고 하면 위키를 그대로 둔다

  • 지금 값: 사람이 기존 결정 사항과 다른 작업을 진행하지 않겠다고 답하면 작업을 하지 않고 위키의 기존 값을 그대로 둔다
  • 바뀐 것 같은 값: 사람이 기존 결정 사항과 다른 작업을 진행하지 않겠다고 답하면 그 부탁으로 시작한 작업만 하지 않고 위키의 기존 값을 그대로 두며, 새 부탁에서 다시 다른 값을 쓰게 되면 처음부터 다시 묻는다
  • 코드에서 바뀐 것: 에이전트 규칙 문서에 '아니요' 답은 그 부탁으로 시작한 작업 하나에만 적용되고, 새 부탁이면 다시 묻는다는 내용이 더해졌어요.
  • PR에 적힌 이유: 부건님 프로토타입 "T1 결정 사항 등록"의 10/14 확정 예외(결정기록 4-2)와 맞추려고요.
+  3. 아니요면 저장하지 않고 `notChanged`를 보여 준 뒤 작업을 멈추고 기다린다. 지금 값대로도 코드를 쓰지 않는다. 사람이 "40자로 작업해 줘"처럼 어떻게 할지 다시 말할 때만 그대로 진행한다. 아니요는 그 프롬프트로 시작한 작업 하나에만 적용된다. 새 프롬프트로 다시 결정 사항과 다른 값을 쓰게 되면 새 작업이라 T1을 1부터 다시 한다(예외 11).

결정 사항은 그대로 두었어요. 바뀐 게 맞으면 Claude Code에서 "결정 사항을 바꿔 줘"라고 말해 주세요. 바뀐 게 아니면 이 댓글은 넘어가셔도 돼요.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant