Keystone WORKLOG & Failure Learning
05 메모리 & 지식 Markdown

WORKLOG & Failure Learning

시간순 작업 스냅샷과 실패 학습 문서를 분리 관리 — agent-retro 라벨 체계와 FAILURE_LOG/CASEBOOK 기준

Source
src/content/docs/worklog-and-failure-learning.md
Order
62

한눈에 보기

작업 맥락이 세션 사이에서 사라지지 않도록, 시간순 WORKLOG와 실패 학습 문서를 분리해 관리하는 운영 규칙입니다. 에이전트 작업 회고에 쓰는 라벨 체계도 함께 정의합니다.

목적

프로젝트 진행 맥락을 INTENT.md/SESSION.md만으로 놓치지 않도록, 시간순 작업 스냅샷과 실패 학습 문서를 분리해 관리한다.

문서 역할 분리

문서역할질문 예시
INTENT.md이번 작업의 목표/범위/검증 기준”이번 작업에서 뭘 하기로 했지?”
SESSION.md세션 handoff, 막힘, 다음 행동”다음 세션에서 어디부터 이어야 하지?”
WORKLOG/YYYY/MM/YYYY-MM-DD-keyword.md시간순 작업 스냅샷”오늘 무엇을 바꿨고 어떤 판단을 했지?”
FAILURE_LOG.md반복 실패 패턴 ledger”같은 문제가 반복되고 있나?”
docs/guide/AI_AGENT_FAILURE_CASEBOOK.md일반화 가능한 실패 교훈/운영 플레이북”다음에는 어떤 방식으로 행동해야 하나?”

WORKLOG 규칙

  • 경로: WORKLOG/YYYY/MM/YYYY-MM-DD-keyword.md
  • 같은 날은 기존 파일에 append
  • 날짜가 바뀌면 새 파일 생성
  • 세션 시작 전에 빈 파일을 미리 만들지 않는다
  • 세션 종료 때 한 번 몰아서 쓰지 말고, 의미 있는 단계 완료 직후 기록한다
  • Memory Bank로 충분한 단순 대화 맥락은 WORKLOG에 복제하지 않는다

권장 포맷

# 2026-04-01
#backend #auth #refactor

## 14:20 — Prisma service 정리
- 커넥션 생성 책임을 서비스로 고정
- 관련: `INTENT.md`, `docs/design/auth/DESIGN.md`

## 15:05 — 타입 에러 수정
- nullable 처리 누락 수정
- 관련: `FAILURE_LOG.md`

WORKLOG에 꼭 남길 것

  • 무엇을 바꿨는지보다 왜 그렇게 결정했는지
  • 다음 단계가 자연스럽게 이어지도록 하는 상태 정보
  • 관련 문서 링크 (INTENT.md, DESIGN.md, PR, 테스트, 장애 문서)
  • 실패했다면 증상보다 우회/교훈까지
  • 다음 세션의 행동이나 프로젝트 정본 문서에 영향을 주는 내용

Agent Usage Labels

에이전트 사용 경험을 메모리뱅크와 WORKLOG에 남길 때는 라벨을 최소 3개 붙인다. 슬래시 명령어 /agent-retro를 사용하면 아래 라벨과 템플릿을 기준으로 회고 블록을 생성한다.

  1. 결과 라벨 1개
  2. 성공 요인 또는 실패 원인 라벨 1개 이상
  3. 다음 행동 라벨 1개

라벨은 모두 소문자 kebab-case를 사용한다.

결과 라벨

라벨의미
agent-outcome:success목표 달성, 검증 통과, 재사용할 가치 있음
agent-outcome:partial핵심 진척은 있었지만 남은 검증/수정 존재
agent-outcome:blocked외부 의사결정, 권한, 환경 문제로 중단
agent-outcome:failed접근 방식이 틀렸거나 재작업 필요
agent-outcome:invalidated완료처럼 보였지만 이후 검증에서 잘못된 성공으로 판명

실행 방식 라벨

라벨의미
agent-mode:direct메인 에이전트가 직접 처리
agent-mode:single-worker단일 worker/subagent 위임
agent-mode:parallel-workers여러 worker를 파일/역할 경계로 병렬 위임
agent-mode:review-only구현 없이 리뷰/분석만 수행
agent-mode:bugfix-loop실패 로그 기반 수정-검증 반복
agent-mode:cross-reviewClaude/Codex 또는 복수 관점 교차 리뷰

성공 요인 라벨

라벨의미
agent-success:clear-acceptance완료 조건과 검증 기준이 명확했음
agent-success:small-scope범위가 작고 되돌리기 쉬웠음
agent-success:file-ownership에이전트별 수정 가능 파일 경계가 명확했음
agent-success:existing-pattern-reused기존 코드/문서 패턴을 재사용했음
agent-success:parallel-review코드 재사용/품질/일관성 등 관점 분리 리뷰가 효과적이었음
agent-success:independent-qa구현자와 다른 주체가 독립 검증했음
agent-success:fast-feedback타입체크, lint, 테스트, hook이 빠르게 실패를 드러냈음
agent-success:memory-recall메모리뱅크의 과거 결정/패턴이 작업 품질을 높였음

실패 원인 라벨

라벨의미
agent-failure:ambiguous-scope요청 범위나 완료 기준이 모호했음
agent-failure:missing-context필요한 기존 문서/코드/결정 확인이 빠졌음
agent-failure:wrong-file-boundary에이전트가 수정하면 안 되는 파일을 건드렸거나 충돌했음
agent-failure:verification-skipped테스트, 브라우저 확인, 빌드 등 검증이 빠졌음
agent-failure:test-gap테스트가 실제 실패 조건을 잡지 못했음
agent-failure:over-refactor필요한 수정 범위를 넘어 리팩터링이 커졌음
agent-failure:tool-env셸, 경로, 인코딩, 의존성, 권한 등 환경 문제
agent-failure:user-change-collision사용자의 미커밋 변경 또는 병렬 작업과 충돌
agent-failure:stale-handoff오래된 SESSION/WORKLOG/HANDOFF를 신뢰했음
agent-failure:false-success성공 보고와 실제 런타임/QA 결과가 달랐음

다음 행동 라벨

라벨의미
agent-next:reuse같은 조건에서 이 방식 재사용
agent-next:promote-rule반복 가능성이 높아 규칙/가이드로 승격
agent-next:add-hook자동 차단/검증 hook 후보
agent-next:add-test테스트 또는 QA 시나리오 추가 필요
agent-next:write-casebook여러 프로젝트에 적용 가능한 교훈으로 casebook 반영
agent-next:human-review다음에는 사람 확인이 필요한 영역
agent-next:avoid-pattern같은 방식 재사용 금지

메모리뱅크 기록 템플릿

성공 케이스:

[agent-retro]
labels: agent-outcome:success, agent-mode:parallel-workers, agent-success:parallel-review, agent-next:reuse
context: 어떤 작업이었는가
worked: 무엇이 효과적이었는가
evidence: 어떤 검증/결과로 성공을 확인했는가
reuse_when: 어떤 조건에서 다시 쓸 것인가

실패 케이스:

[agent-retro]
labels: agent-outcome:failed, agent-mode:bugfix-loop, agent-failure:verification-skipped, agent-next:add-test
context: 어떤 작업이었는가
expected: 기대한 결과
actual: 실제 결과
root_cause: 실패 원인
prevention: 다음에 막는 방법

부분 성공/중단 케이스:

[agent-retro]
labels: agent-outcome:partial, agent-mode:single-worker, agent-success:existing-pattern-reused, agent-next:human-review
context: 어떤 작업이었는가
done: 완료된 것
remaining: 남은 것
decision_needed: 사람 판단이 필요한 지점

FAILURE_LOG vs CASEBOOK

FAILURE_LOG.md

아래에 해당하면 여기에 기록한다.

  • 동일 오류가 2회 이상 반복됨
  • 같은 파일/도메인/에러 유형에서 재발 조짐이 있음
  • 방지책을 체크리스트처럼 추적해야 함

기록 예:

## FL-012: auth null-check 누락
- 상태: Open
- 발생일: 2026-04-01
- 영향 파일: src/auth/useSession.ts
- 증상: 로그인 직후 null 접근으로 화면 깨짐
- 근본 원인: optional 응답 계약 누락
- 방지책: null-guard를 기본 체크리스트에 포함

docs/guide/AI_AGENT_FAILURE_CASEBOOK.md

아래에 해당하면 여기에 기록한다.

  • 여러 프로젝트에서 재사용 가능한 교훈
  • 툴링 함정, 인코딩/BOM, 경로/셸 차이 같은 운영 이슈
  • 문서 append 위치, 세션 시작 점검 순서 같은 작업 습관 교정

예:

  • “PowerShell에서는 되지만 Git Bash SSH에서 BOM 때문에 실패”
  • “WORKLOG append 전에 하단 참고 블록 위치 확인 필요”
  • “과거 대화보다 최신 WORKLOG/SESSION을 우선 신뢰”

세션 운영 요약

세션 시작:

  1. SESSION.md 확인
  2. 최신 WORKLOG 1개 확인
  3. INTENT.md 확인
  4. 필요 시 FAILURE_LOG.md와 casebook 확인

세션 종료:

  1. SESSION.md handoff 갱신
  2. 의미 있는 진척이 있으면 WORKLOG append
  3. 반복 실패면 FAILURE_LOG.md 갱신
  4. 일반화 가능한 교훈이면 casebook 반영

Source Notes

이 문서는 KeystoneHub 규칙 원천의 WORKLOG and Failure Learning 가이드를 공개용으로 정리한 것입니다. 예시의 파일 경로와 코드 조각은 일반화된 샘플입니다. Provenance: keystone-native.