Skip to content
Back to skills

Repair Acceptance

ASecurity

/accept-milestone이 수집한 사용자 수용 finding을 3+1 판정으로 직접 수리한다. task 재개방 없음 — scope(in-AC/out-of-AC)는 결정 이력의 분류값이다. 본 skill은 커밋하지 않는다 (ADR-066#amend-1 / ADR-068 D1).

  • 2 stars
  • 0 votes
  • 0 copies
  • 1 view
  • Added September 29, 2026
ai-agentsbashgit

Security analysis

A100/100

Scanned September 29, 2026

npx -y skills add kohj1018/agentic-dev-harness --skill repair-acceptance --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Repair Acceptance?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Repair Acceptance
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/kohj1018-repair-acceptance-agentic-dev-harness/badge)](https://www.skillsdirectory.com/skills/kohj1018-repair-acceptance-agentic-dev-harness)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: repair-acceptance
description: /accept-milestone이 수집한 사용자 수용 finding을 3+1 판정으로 직접 수리한다. task 재개방 없음 — scope(in-AC/out-of-AC)는 결정 이력의 분류값이다. 본 skill은 커밋하지 않는다 (ADR-066#amend-1 / ADR-068 D1).
argument-hint: "<milestone-id> [optional scope note]"
disable-model-invocation: true
allowed-tools: Read Glob Grep Write Edit Bash Skill
---

이 skill은 `/accept-milestone`이 남긴 **사용자 관측 finding**을 수리한다. 코드 수정이 허용된다.
**커밋하지 않는다.** **task 재개방은 없다** — `in-AC`든 `out-of-AC`든 본 skill이 직접 고친다(ADR-066#amend-1 / ADR-068 D1). `in-AC`·`out-of-AC` 판별은 라우팅 분기가 아니라 결정 이력의 **필수 분류값**으로만 남는다.

**재개방 금지 (ADR-068 D1)**: 본 skill은 `/implement-workitem`·`/validate-workitem`·`/repair-workitem`·`/finalize-workitem`을 **호출하지 않는다.** task `## 0. Status`·validation report도 건드리지 않는다. task 문서에 쓰는 것은 **수행 4의 `- invalidated` 한 줄뿐이다**(`## 8`의 AC 이벤트 로그 — D1의 예외 2종 중 하나. `- ac-acceptance`는 `/accept-milestone` 소유). 사용자에게 «그 task를 다시 열어라»를 권하지 않는다 — 그 권고 자체가 금지 대상이다.

`/repair-milestone`과의 경계 (ADR-066 D5) — **입력 출처로 갈린다.**
- 본 skill: `docs/40-validation/acceptance-reviews/<M>.r*.md` + 그 라운드가 `QA_FINDINGS.md`·`IMPROVEMENT_GUIDE.md`에 `(수용)` 태그로 등재한 항목.
- `/repair-milestone`: `/stabilize-milestone`이 만든 finding(기계·AI 관측) + `stabilize-reviews` peer 리뷰.
- 같은 항목이 양쪽에 있으면 **사용자 관측이 우선 authority**다 — 본 skill이 처리하고 `/repair-milestone`은 status만 닫는다.

입력:
- `$ARGUMENTS`: milestone id(`M[0-9]+` 패턴만 — 미일치 즉시 종료) + (선택) 부분 범위 메모(예: `M1 "P0만"`).

반드시 먼저 할 일:
1. `docs/40-validation/acceptance-reviews/<M>.r*.md` glob으로 세션 파일을 회수한다(경로 목록을 메모리에 보관 — 삭제 후 재glob 금지).
2. `QA_FINDINGS.md` 본 마일스톤 헤더에서 `(수용)` 태그 항목을 회수한다. **`IMPROVEMENT_GUIDE.md`의 `## 2` 안 `(수용)` 태그 항목도 함께 회수한다** — 사용자가 "개선 제안을 이번 마일스톤에서 고치겠다"고 택한 것이 그 자리에 등재된다(ADR-066 D2/D5).
3. 둘 다 비어 있으면 *"수리 대상 수용 finding 없음 — `/accept-milestone <M>`을 먼저 실행하세요"* 안내 후 종료(문서 수정 금지).
4. 대상 task와 그 `## 6-1`·`## 8`을 읽는다(어떤 AC·modality에 걸린 결함인지 확인).
5. 우선순위(P0 > P1 > P2)로 정렬한다.

## scope 판별 (`scope: in-AC | out-of-AC` — 3+1 판정과 함께 finding마다 1회)

수용 라운드 finding은 «기존 계약이 약속한 것»과 «약속하지 않은 것»이 섞여 들어온다. **둘 다 본 skill이 직접 고치지만**, 계약 근거 유무는 기록해야 한다.

**판별 질문은 하나다 — «이 변경 줄을 기존 계약으로 거꾸로 추적할 수 있는가».** 계약의 범위는 여섯이다: task `## 6. AC` · task `## 3. 구현 항목`의 line item · feature `## 7. FAC` · feature `## 7-2`의 INV · 승인 프로토타입 · `DESIGN.md` 계약(§2 토큰·§7 컴포넌트·§9 Don'ts·§10 voice). **AC 하나만 보지 않는다.**

- **`in-AC`(추적 가능)** → 직접 고친다. 결정 이력에 `scope: in-AC`를 적는다. 별도 부채 등재는 없다.
- **`out-of-AC`(추적 불가)** → 직접 고친다. 결정 이력에 `scope: out-of-AC`를 적고 **아래 계약 부채 등재를 반드시 수행한다.**
- **애매하면 `out-of-AC`로 본다** — 추적 부채를 남기는 쪽이 안전하다(놓친 계약 밖 변경은 조용히 영구화된다).
- **`out-of-contract`와 혼동하지 않는다**: `out-of-AC`는 «이번에 고칠 것»이고, `Out-of-contract`(3+1 판정)는 «이번에 안 고치고 다음으로 넘길 것»이다. 사용자 확인으로 갈린다.

**`out-of-AC` 계약 부채 등재 (필수)** — `out-of-AC`로 고친 항목마다 `docs/40-validation/IMPROVEMENT_GUIDE.md`의 **`## 4. 보류 항목`**에 `status: open`으로 등재한다. 「코드에는 들어갔으나 어느 계약에도 근거가 없다」는 사실과, 다음 `/plan-milestone` R0가 회수해 **AC 승격 여부를 사용자에게 묻는다**는 회수 경로를 함께 적는다. **이 등재가 없으면 그 기능은 영구히 계약 밖에 남는다.** 형식은 `## 4. 보류 항목` 주석의 「② 계약 미반영」 스키마를 그대로 쓴다.

```
- **<M>-uat-<N>** | P2 | [관측됨] | linked: <M> | affected: T-NNN | scope: out-of-AC | status: open
  - 계약 미반영: <무엇이 코드에 들어갔는지 1줄 — 파일·규모 포함>.
  - 근거 부재: <task>의 어느 AC도 이 동작을 약속하지 않았다.
  - 회수: 다음 /plan-milestone R0 — AC로 승격할지 사용자 결정.
```

- **`## 5. Repair decision log` 항목과 별개의 항목이다.** `## 5`는 «무엇을 어떻게 고쳤나»(수리 완결), `## 4`는 «그 수정이 아직 계약에 없다»(열린 채로 남음)를 담는다 — 서로 다른 사실이므로 항목도 둘이다.
- **마일스톤 문서·task 문서에는 쓰지 않는다.**

## 3+1 판정 (수정 *전* 1회)
**중복 병합 (canonical = 원장 항목)**: 같은 finding이 세션 파일의 분류 결과와 원장(`QA_FINDINGS`·`IMPROVEMENT_GUIDE`)에 **동시에 있는 것이 정상이다** — `/accept-milestone` R5가 원장에 등재하고 R6이 세션 원본에 분류 결과를 함께 남긴다. **판정·수리·기록의 단위는 원장 항목 하나이며**(ID와 `status`를 가진 쪽이 canonical), 세션 파일은 그 항목의 재현 절차·사용자 발언을 보충하는 데만 쓴다. 동일 `<라벨> <경로> <증상>`이면 한 항목으로 합쳐 `<M>-uat-<N>`을 **하나만** 발급한다(`/repair-milestone`의 dedup 규율과 동형). 세션 파일에만 있고 원장에 없는 항목은 R5 라우팅 누락이므로 사용자에게 확인한 뒤 처리한다.
각 finding을 아래 넷 중 하나로 판정하고 한 줄 근거를 남긴다.
- **Adopt** — 진짜 결함. 보고된 대로 수리.
- **Adopt-modified** — 결함은 맞지만 더 나은 방식으로 수리(다른 수정 + 사유).
- **Needs User Clarification** — 재현 조건·기대값이 불명확. **추측으로 고치지 않고 사용자에게 되묻는다**(무엇이 불명확한지 1줄 + 필요한 정보).
- **Out-of-contract** — 결함이 아니라 계약 변경(이번 마일스톤이 약속하지 않은 것이고 이번에 고치지도 않는다). **사용자 확인 후** `docs/30-workitems/ROADMAP.md`의 `## Backlog`에 `- `<candidate-key>` <한 줄 요약> — 출처: 수용 라운드 M<N> r<라운드> / 확신도: <높음/중간/낮음>`로 등재하고 다음 마일스톤 후보로 남긴다. 코드를 고치지 않는다. **정본 문서(charter·ARCH·DESIGN)의 한 절을 고쳐야 성립하는 항목만** `DECISION_REGISTER.md`에 등재한다(ADR-005#amend-1 배타 범위 — 한 항목을 양쪽에 쓰지 않는다).

> **`Reject-false-positive`는 없다** — 사용자가 직접 보고 말한 것을 에이전트가 오탐으로 기각하는 것은 authority 역전이다(ADR-066 D4). 불명확하면 `Needs User Clarification`, 계약 밖이면 `Out-of-contract`이며, 그 둘은 모두 **사용자가 판단하는 경로**다.

## 수행
1. Adopt / Adopt-modified 항목을 우선순위 순으로 처리한다.
2. **회귀 테스트 선행 (ADR-066 D4)**: 각 항목마다 **그 결함을 재현하는 실패 테스트를 먼저 추가해 실패를 관측한 뒤**(Red) 고치고 **그 테스트가 통과하는 것까지 확인한다**(Green). Red·Green 두 관측 결과를 결정 이력에 1줄로 남긴다 — Red만 적고 Green을 확인하지 않으면 «고쳤다고 적었지만 안 고쳐진» 항목이 통과한다.
   - **면제**: 코드 3줄 이하 + 외부 행동 불변인 표기·간격·문구 수정, 그리고 **문서만 고치는 finding**(실행 가능한 테스트 대상이 아니다 — ADR-068 D6이 양 repair skill 공통으로 규정한 면제 2종). 면제 사유를 결정 이력에 적는다.
   - 테스트 작성이 불가능하면(사람 관측만으로 판정되는 시각 결함 등) 그 사유를 적고 **그 AC의 modality가 `[사용자 관측]`인지 확인**한다 — 그렇다면 다음 수용 라운드의 재확인 대상이다.
   - **`scope`와 무관하게 본 라운드가 고치는 전 항목이 대상이다** — 위임이 없으므로 «누가 테스트를 쓰는가»가 갈리지 않는다. 추가한 테스트는 통합 `validate`에 묶는다(ADR-068 D6).
3. **모든 항목을 본 skill이 직접 고친다 (ADR-068 D1).** `scope`와 무관하게 위임하지 않는다. 본 skill은 task `## 0. Status`를 쓰지 않고 `## 6 AC`·`## 3`·`## 6-1` 계획 본문도 고치지 않는다(잠긴 계약이다). **task 문서에 쓰는 것은 `## 8`의 `- invalidated` 한 종류뿐이다**(수행 4 — ADR-068 D1의 예외 2종 중 하나). 그 밖의 산출물별 목적지는 각 단계가 규정한다 — 코드(1·2), 채점표 미접근(4-A), pattern-scan·exec-evidence는 `## 5`(5·5-E), 원장 status(8), decision log(7), 계약 변경 등재(`Out-of-contract`).
4. **AC acceptance 무효화 (ADR-065 D3)**: 수리가 어떤 AC의 동작 경로를 건드렸고 그 AC의 modality가 `[사용자 관측]`·`[플랫폼 관측]`이면 그 task `## 8`에 `- invalidated <날짜> <AC-N>: repair-acceptance 수정으로 재확인 필요`를 append한다(기존 `- ac-acceptance`는 지우지 않는다). **새 receipt를 대신 쓰지 않는다.** **`scope`와 무관하게 본 skill이 직접 append한다** — 위임이 사라졌으므로 중복 writer가 없다. 이 append는 [ADR-068](../../../docs/90-decisions/boilerplate/ADR-068-milestone-closure-and-graduation-v3.md) D1이 허용하는 예외 2종(`- ac-acceptance`·`- invalidated`) 중 하나이며, 그 AC 이벤트 로그의 일부라 `## 5`로 옮기면 졸업 item 4와 다음 수용 라운드가 무효화를 읽지 못한다. **이 줄은 사용자가 커밋한다**(본 skill은 커밋하지 않는다).
4-A. **채점표를 삭제하지 않는다 (ADR-068 D3)**: 졸업 판정이 채점표를 읽지 않으므로 무효화할 대상이 없다. `docs/40-validation/reports/`를 건드리지 않는다.
5. **동일 패턴 전수 검색 (ADR-066 D6 / #amend-1)**: **`Adopt`·`Adopt-modified`한 각 결함에 대해** 같은 패턴의 다른 출현을 저장소 전체에서 **읽기 전용**으로 검색하고, **task `## 8`이 아니라** 수행 7의 `## 5` 항목 하위 줄에 `- pattern-scan <날짜> <패턴>: 범위 내 N건 수정 / 범위 밖 M건 <경로>`를 적는다. 범위 밖은 고치지 않고 `/repair-milestone` 또는 다음 마일스톤으로 라우팅한다.
5-E. **실행 증거 갱신 (ADR-064 D4 — 외부 경계 코드를 고쳤을 때만)**: 본 라운드의 `Adopt`/`Adopt-modified` 수정이 (a) 영속 저장소 쓰기 · (b) 외부 네트워크 호출 · (c) 실행 진입점 코드를 건드렸으면, 그 경계의 실행 증거를 다시 확보하고 수행 7의 `## 5` 항목 하위 줄에 `- exec-evidence ...`를 적는다. 증거 등급·안전 규정·waiver 규정은 `/implement-workitem` 6-E와 동일하다. 확보하지 못하면 `Needs Execution Evidence: <경계 종류> — <사유>`를 출력에 남긴다.
   - 등급 1 증거로 새 파일을 만들었어도 task `## 4-1`은 건드리지 않는다(계획 본문 불가침 — 본 skill의 책임 경계). 그 경로는 `## 5. Repair decision log` 항목의 `files:`에 적는다.

5-V. **자체 검증 — 즉시 파손 감지 (ADR-068 D6 검증 집합)**: 위 1~5-E를 마친 뒤 1회 수행한다. 내용은 넷이다: (i) 본 라운드에 추가한 회귀 테스트가 전부 Green이고 통합 `validate`에 묶여 있는지 확인한다, (ii) 변경 파일과 교차하는 task의 `## 6-1` 자동 테스트 매핑 대상을 실행한다, (iii) 외부 경계·핵심 journey를 건드렸으면 해당 integration/e2e smoke를 실행한다, (iv) 통합 검증 명령이 `--changed`를 지원하면 `validate --changed`를(미지원이면 통합 `validate`를) 1회 실행한다. **이것은 전체 검증이 아니다** — 「방금 한 수정이 즉시 깨졌는가」만 본다.
   - **고치는 대상은 본 라운드 수정이 만든 실패로 한정한다.** baseline은 직전 `/stabilize-milestone` 단계 3의 통합 validate 결과다(같은 메인 세션이면 컨텍스트에 있고, 없으면 본 라운드 시작 시 1회 실행해 잡는다). baseline에 이미 있던 실패는 고치지 않고 출력에 명시한다.
   - 실패를 고치면 다시 실행한다. **최대 3회.** 초과하면 `Needs Follow-up: <실패 목록>`으로 명시하고 종료한다.
   - 통합 명령이 없으면 (iv)를 skip하고 사유를 출력에 남긴다(별도 hardstop 없음).

6. **한 라운드에 P0/P1/P2를 모두 판정으로 완결한다**(defer 금지). 작업량을 줄이려면 사용자가 인자로 부분 범위를 지정한다.
7. **결정 이력 영속화 (ADR-047 D7)** — 본 라운드의 P0/P1 항목 전부를 `docs/40-validation/IMPROVEMENT_GUIDE.md`의 `## 5. Repair decision log` 안 `### M-N` 그룹(없으면 신설)에 append한다. P2는 영속화하지 않는다.
   ```
   - **M1-uat-1** | P0 | [관측됨] | linked: M1 | affected: T-004 | files: <경로 목록 또는 docs-only> | scope: out-of-AC | status: closed | decision: Adopt
     - 발견 (수용 라운드 r1): <사용자가 관측한 것 한 줄>.
     - 결정: <Adopt 사유 한 줄> / 회귀 테스트: <추가한 테스트 또는 면제 사유>.
     - pattern-scan: 범위 내 N건 수정 / 범위 밖 M건 <경로>.   ← 검색을 수행한 항목만
   ```
   ID 컨벤션은 `<milestone-id>-uat-<N>`이다. **`affected: T-NNN` · `files:` · `scope: in-AC | out-of-AC` 세 필드가 전부 필수다** — task 계획 본문을 건드리지 않으므로 이 셋이 "어느 task의 산출물을, 어느 파일에서, 어떤 계약 근거로 고쳤는지"를 추적하는 유일한 경로다. **`scope`와 무관하게 결정 전문을 여기에 적는다** — 위임이 없으므로 routing 기록이라는 것이 존재하지 않는다.
8. **원본 finding status 갱신 (4종 전부, ADR-070 D3 — 수용 경로 종결)** — 3+1 판정에는 `Reject-false-positive`가 없으므로 `rejected-fp`는 쓰지 않는다(ADR-066 D4 유지). ① `Adopt`/`Adopt-modified`로 해소한 `QA_FINDINGS.md`의 `(수용)` 항목 → `status: resolved` + `decision: confirmed` + 하위 줄 `- 종결 근거: 회귀 테스트 <경로> Green`(면제 항목은 `- 종결 근거: 면제 — <사유> / 재확인: invalidated → /accept-milestone`) ② 같은 기준으로 `IMPROVEMENT_GUIDE.md` `## 2`의 `(수용)` 항목 → `status: resolved`(이걸 빠뜨리면 개선 제안이 열린 채 남아 다음 stabilize의 open 스냅샷을 부풀린다) ③ `Out-of-contract`로 재분류한 항목 → 원본을 **실제 목적지로** 닫는다 — 기본은 `status: resolved (재분류: ROADMAP ## Backlog <candidate-key> — 다음 M)` + `decision: rejected-context`이고, 정본 문서 변경이 필요해 원장으로 보낸 예외만 `status: resolved (재분류: DECISION_REGISTER D-NNN — 다음 M)` + `decision: rejected-context`다. **앵커가 실제 등재처와 어긋나면 [ADR-005](../../../docs/90-decisions/boilerplate/ADR-005-ssot.md)#amend-1의 비중복 불변식 N-3이 깨진다**(목적지가 로드맵이면 구간까지 적는다) ④ `Needs User Clarification` 항목 → **닫지 않고 `status: open`** + `decision: needs-confirmation` + 하위 줄 `- 대상 / 확인 방법: 사용자 답변 / 막힌 이유` 유지. `(수용)` 태그 항목 소유는 불변(ADR-066 D5).
9. **세션 파일 삭제 (echo-then-rm)**: 한 파일의 **전 severity finding이 판정 완결됐을 때만** 삭제한다. 삭제 전 `삭제 예정: <경로>`를 출력하고 보관한 경로 목록으로 하나씩 삭제한다(삭제 후 재glob 금지).
   - **미완결 = 보존**: `Needs User Clarification`이 1건이라도 남았거나(사용자 답변 후 재실행이 이어받는다) 부분 범위 지정으로 미처리가 남았으면 **삭제하지 않고** 출력에 `미처리 잔존 — 보존: <경로>`를 명시한다.

## 수행 후 (연쇄 없음 — ADR-068 D1)

본 라운드가 코드를 고쳤어도 **task를 재개방하지 않으므로 닫을 것이 없다.** `/repair-workitem`·`/validate-workitem`·`/finalize-workitem`을 호출하지 않는다.

1. 고친 것의 즉시 검증은 5-V(자체 검증)가 담당한다.
2. 전체 검증과 졸업 판정은 다음 `/stabilize-milestone <M>`이 담당한다.
3. `- invalidated`가 1건 이상이면 그 관측 AC의 receipt 재발급을 위해 `/accept-milestone <M>`을 먼저 재실행한다(재확인 모드 — 카운터 미소모, ADR-066#amend-2).
4. **커밋은 사용자가 한다.** 본 skill은 `git commit`을 실행하지 않으며(ADR-047 D7), 연쇄가 사라졌으므로 이 경로에서 `/finalize-workitem`이 커밋하는 일도 없다 — **commit owner는 사용자 하나다.**

책임 경계:
- 새 기능을 추가하지 않는다. 마일스톤 범위 밖 파일을 수정하지 않는다.
- 본 경로에는 `/finalize-workitem` 호출이 없으므로 **commit owner는 사용자 하나다.**
- workitem `## 0. Status`를 변경하지 않는다. task 계획 본문(`## 3`·`## 6`·`## 6-1`)을 고치지 않는다.
- `- ac-acceptance` 줄을 발급하지 않는다(사용자 authority — ADR-065 D1).

마지막 출력:
- 판정 카운트: Adopt M / Adopt-modified K / Needs User Clarification I / Out-of-contract J
- scope 분해: in-AC N건 / out-of-AC M건 (→ `## 4` 등재 ID 목록)
- 수정 파일 목록 + 어떤 finding을 어떻게 해소했는지
- 수정 파일 (files 필드 합계): <경로 목록>
- 회귀 테스트: 추가 N건 / 면제 M건(사유) / 작성 불가 K건(사유)
- `Needs User Clarification` 항목 + 사용자에게 필요한 정보(있으면)
- `Out-of-contract` 항목 + ROADMAP `## Backlog` 등재 결과(있으면) + 정본 문서 변경이 필요해 `DECISION_REGISTER`로 보낸 항목(있으면)
- 계약 부채 등재 (`## 4. 보류 항목`): out-of-AC 수정 N건 → `IMPROVEMENT_GUIDE.md` `## 4`에 등재한 ID 목록 / 해당없음
- 실행 증거 갱신 (ADR-064 D4): 갱신 N건(경계 종류) / 해당없음(외부 경계 코드 미수정) / `Needs Execution Evidence`
- 자체 검증 (즉시 파손 감지): pass / skip(사유) / `Needs Follow-up: <목록>`
- AC acceptance 무효화: N건(AC-N 목록)
- 동일 패턴 전수 검색: 범위 내 N건 / 범위 밖 M건(경로)
- `## 5. Repair decision log` append 줄 수 / status resolved 토글 수 / 삭제·보존한 세션 파일
- 본 skill은 커밋하지 않는다 — 수정 파일과 원장 갱신을 **사용자가 직접 커밋한 뒤** 다음 단계로 진행한다. 재개방이 없으므로 이 경로에 `/finalize-workitem` 커밋분은 없다.
- 후속 권장 (순서 고정): ① `- invalidated`가 1건 이상이면 `/accept-milestone <M>` 재실행(무효화된 관측 AC의 receipt 재발급, 재확인 모드 — 카운터 미소모, ADR-066#amend-2) → ② `/stabilize-milestone <M>` 재실행으로 졸업 판정 확정. **사용자가 돌릴 `/validate-workitem`·`/finalize-workitem`은 없다.**

정책 근거: [ADR-066](../../../docs/90-decisions/boilerplate/ADR-066-milestone-acceptance.md) D2/D4/D5 (라우팅·판정·경계), [ADR-065](../../../docs/90-decisions/boilerplate/ADR-065-ac-verification-contract.md) D3 (receipt 형식·판독), [ADR-047](../../../docs/90-decisions/boilerplate/ADR-047-code-as-agent-harness.md) D7 (결정 이력 영속·commit owner), [ADR-005](../../../docs/90-decisions/boilerplate/ADR-005-ssot.md)#amend-1 (원장 배타 범위), [ADR-060](../../../docs/90-decisions/boilerplate/ADR-060-decision-closure-and-milestone-seal.md) D11. 재개방 폐지는 [ADR-068](../../../docs/90-decisions/boilerplate/ADR-068-milestone-closure-and-graduation-v3.md) D1 · [ADR-066](../../../docs/90-decisions/boilerplate/ADR-066-milestone-acceptance.md)#amend-1.

## Context 정책 (ADR-019)
세션 파일 + 대상 task의 `## 6-1`·`## 8`이 *최소 충분* 회수 목록이다 — 사전 fork-load 금지. 원장의 `(수용)` 항목, 수리 대상 코드·테스트, `수행 5`의 패턴 검색 범위는 본문 지시대로 그때 추가로 읽는다.

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.