# Agent 미팅 주최 — `.done` 시맨틱 재설계 (실제 머지 일치)

## 작업 레벨: Lv.3 (시스템 시맨틱 재설계 미팅)

## 레벨
코드 수정 없음 (미팅 + 문서만 — `scripts/**` forbidden_paths)

## 프로젝트
- 인프라: `/home/jay/workspace/`
- 미팅 결과 저장: `memory/meetings/2026-05-02-done-semantics-redesign.md`

## 위임
- **주최팀**: dev1-team (1팀, 헤르메스 진행)
- **외부 페르소나**: 로키, 마아트, 비너스, 아틀라스, 다빈치

## 배경

### 발견된 시스템 결함

현재 흐름:
1. 봇 작업 → finish-task.sh → `.done` 생성 (봇 작업 완료 신호)
2. auto_merge.py 비동기 머지 → PR 생성/리뷰/머지 (실제 main 반영)
3. **두 단계가 분리되어 있어 `.done` 시점에 main 머지 미보장**

### 사례 — task-2364 (Capability Matrix P0)

- `.done` 마커 생성: 17:08
- PR #5 머지 완료: 18:11
- **63분 갭** — 이 시간 동안 아누가 ".done = 완료"라 단정 → 회장께 "머지 누락" 잘못 보고

### 회장 메시지 (2026-05-02)
> "정말 모든 작업이 끝나야 .done 생성할 수 있게 할 방법 없을까????? 실제 상황이랑 일치하게 만들고 싶은데!!!"

### 본 미팅 안건
`.done` 마커가 **실제 머지 완료를 보장**하도록 시맨틱 재설계.

## 미팅 안건 (5 사이클)

### Cycle 1 — 옵션 A/B/C 독립 평가

**옵션 A — State Machine 분리**
- `.work-done` (봇 작업 끝, finish-task.sh 생성)
- `.merged` (PR mergedAt 확인 후 auto_merge.py 생성)
- `.fully-done` (post-merge probe PASS)
- 아누는 `.merged`만 ack

**옵션 B — Synchronous .done**
- finish-task.sh가 PR 머지 완료까지 폴링 후 .done 생성
- 단점: 봇 세션 점유 + GitHub 응답 대기

**옵션 C — 봇 .done 무시 + 머지 폴링**
- 봇은 .done 생성 안 함
- done-watcher.py가 PR mergedAt 폴링 → main에 들어온 task만 `.merged` 생성

### Cycle 2 — 각 옵션 트레이드오프 + 외부 차용

GitHub Actions, GitLab CI, Drone CI 등 다른 시스템의 머지 완료 시그널 패턴 차용 가능성 검토.

### Cycle 3 — Devil's Advocate (로키)

각 옵션의 실패 시나리오, 6개월 후 후회 이유, 더 단순한 대안.

### Cycle 4 — Unconventional Alternative (아틀라스)

기존 옵션 외 비전형적 접근 (예: GitHub webhook 기반 push 알림, GraphQL 구독, 봇 자체가 머지 완료 후 self-report 등).

### Cycle 5 — 최종 합의 + 후속 task 권장

- 채택 옵션 + 사유
- 구현 단계별 분해
- task-2367 (P1 Tiered Auto-Merge) 범위에 포함 여부
- 별도 task 권장 시 우선순위

## 페르소나 (10명)

### 1팀 (주최)
- **헤르메스** — 진행자, 풀스택, 태스크 분해
- **불칸** — 백엔드 안정성 (auto_merge.py 변경 영향)
- **이리스** — 프론트 (대시보드 표시 영향)
- **아테나** — UX (회장 알림/cognitive load)
- **아르고스** — 테스터 (회귀 시나리오)

### 외부 (회장 지정)
- **로키** — Devil's Advocate (필수 참여)
- **마아트** — QC (검증 게이트 일관성)
- **비너스** — 디자인/UX 세컨드 오피니언
- **아틀라스** — 시스템 아키텍처, Unconventional Alternative 의무
- **다빈치** — 멀티 도메인 통합

## 검증 시나리오 (미팅 결과 품질 게이트)

1. **합의 5+ 도출** — Cycle 5에서 명확한 합의안
2. **로키 DA 3대 질문 답변** + 반박
3. **아틀라스 Unconventional 1+ 제시 + 5항목 평가**
4. **Temporal Interrogation** — HOUR 1/2-3/4-5/6+ 결정사항 식별
5. **후속 task 권장** — task-2367 포함 vs 별도 신규
6. **미팅 파일 저장**: `memory/meetings/2026-05-02-done-semantics-redesign.md`

## 작업 범위

### 1. 미팅 진행 (헤르메스)
- agent-meeting 스킬 호출 (`/agent-meeting`)
- 모드: hybrid, 깊이: thorough, 사이클: 5
- 8 페르소나 (1팀 5 + 외부 5는 10명)
- 각 페르소나 의견 수집 → 종합 → 다음 사이클

### 2. 미팅 파일 작성
- 표준 양식 (agent-meeting 스킬 가이드 참조)
- 사이클별 기록 + 최종 합의 + 후속 액션

### 3. 후속 task 추천
- 채택 옵션 구현을 위한 task 파일 *초안* 작성 (실제 위임은 회장 승인 후 아누가 dispatch)
- `memory/tasks/dispatch-done-semantics-impl-DRAFT.md` (DRAFT 표기)

### 4. 회장 보고
- 미팅 파일 경로 + 합의 요약 (5줄 이내)
- 후속 task 초안 경로
- finish-task.sh 호출

## allowed_resources

```yaml
allowed_resources:
  paths:
    - "memory/meetings/2026-05-02-done-semantics-redesign.md"
    - "memory/research/done-semantics-*.md"  # 리서치 자료 (필요 시)
    - "memory/reports/task-XXXX-meeting-done-semantics.md"  # 본 task 보고서
    - "memory/tasks/dispatch-done-semantics-impl-DRAFT.md"  # 초안 (DRAFT)
    - "memory/plans/tasks/task-XXXX/**"  # 본 task 3문서
  forbidden_paths:
    - "scripts/**"  # 미팅이지 구현 아님
    - "dispatch.py"
    - "CLAUDE.md"
    - "memory/capabilities/**"
    - "memory/audit/**"
    - "memory/plans/bot-capability-system/**"  # P0 결정 보존
    - "memory/specs/bot-capability-model.md"
    - "memory/events/**"  # 다른 task 이벤트 보호
    - "scripts/task-scope-guard.sh"
    - "scripts/auto_merge.py"
    - "scripts/finish-task.sh"
  commands:
    - "git log"
    - "git diff"
    - "gh pr view"
    - "gh pr list"
  merge_policy: "tiered"
  ttl_hours: 12
```

## 작업 원칙
- **Think Before Coding**: 미팅이 우선. 구현은 회장 승인 후 별도 task
- **Simplicity First**: 옵션 3개 중 가장 단순한 것이 최선일 가능성 높음
- **Surgical Changes**: 본 task에서는 코드 변경 0. 미팅 + 문서만
- **Goal-Driven**: `.done = 실제 머지 완료` 시맨틱 보장이 목표

## 보고

- `memory/reports/task-XXXX-meeting-done-semantics.md`
- 미팅 파일 경로
- 합의 요약 (5줄 이내)
- 후속 task 초안 경로
- 4가지 검증 시나리오 결과 (합의 5+, DA, Unconventional, Temporal)

## 운영 메모

### 의존성
- task-2360 (봇→아누 알림) ✅ 머지 완료
- task-2364 (P0 Capability Matrix) ✅ 머지 완료 (PR #5)
- task-2367 (P1 Tiered Auto-Merge) — dev7 작업 중. **본 미팅 결과가 task-2367 범위에 영향 줄 수 있음**
- 미팅 결과에 따라 task-2367 일시 중단 또는 범위 확장 가능

### 워크트리
- ★ 워크트리 사용 권장 (`.worktrees/task-XXXX-dev1`)
- 단, 본 task는 코드 변경 0 + 문서만 → main 직접 commit도 허용

### 위임 후보
- **dev1 (헤르메스)** — 회장 명시 지정. 풀스택+태스크 분해 강점

### 회장 승인 게이트
- ★ 미팅 합의안 + 후속 task 초안 보고 후 회장 명시 승인 필수
- 승인 없이 구현 진행 금지 (구현은 별도 task)

### finish-task.sh
- 마지막 단계 finish-task.sh 실행 절대 누락 금지
- 본 task는 시스템 가드 첫 적용 task 중 하나 (allowed_resources 명시)

## 참조

- 이전 미팅 (Tier 자동화 합의): `memory/meetings/2026-05-02-bot-anu-automation-safety.md`
- task-2360 finish-task.sh 일원화 결정: 2026-04-20 미팅 (`memory/research/agent-meeting-finish-task-unification.md`)
- task-2364 P0 보고서: `memory/reports/task-2364.md`
- task-2364 PR #5 사례: 63분 갭 (`.done` 17:08 → 머지 18:11)
- agent-meeting 스킬: `/home/jay/.claude/skills/agent-meeting/SKILL.md`