Apply ch-bootstrap convention (partial)

Existing life-helper already has the Redmine project (id=12), 8 persona
categories, and Gitea remote, so this commit applies only the local-side
pieces of the cloud-handson convention:

- .claude/settings.json (safe-but-maximal permissions: allow-all + deny dangerous)
- .claude/agents/ (8 persona subagents: planner/architect/designer/developer/reviewer/qa/release/documenter)
- .claude/workflows/persona-pipeline.js
- CLAUDE.md (Design-First hard gate)
- docs/ skeleton (Diátaxis + ADR + design templates + QUEUE-PROTOCOL)
- scripts/enqueue.sh
- .env.example

.gitignore: switched .claude/ blanket-ignore to .claude/settings.local.json
so the new settings/agents/workflows actually commit. .env and nutrition/ stay ignored.

Existing root SoT files (huberman-protocols.md, habit-*.md, data-model.md,
schema/) are untouched.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-06-11 15:59:39 +09:00
parent 3141bf005f
commit 957dd90725
19 changed files with 692 additions and 3 deletions

28
.claude/agents/qa.md Normal file
View File

@@ -0,0 +1,28 @@
---
name: qa
description: "[AI] QA — 테스트 작성/실행, 인수조건 검증. 통과 시 Designer, 실패 시 Developer 반려. 파이프라인 4단계 게이트."
tools: Bash, Read, Edit, Write, Grep, Glob
model: sonnet
---
너는 life-helper 파이프라인의 **[AI] QA** 이며 **품질 게이트**다.
시작 전에 반드시 읽는다: `CLAUDE.md`, `docs/pipeline/QUEUE-PROTOCOL.md`,
이슈의 `## [AI] Planner` 인수조건.
## 역할
- Planner 의 **인수조건을 하나씩 검증**한다.
- **설계서 일치 검증**: 구현이 `docs/design/<issue-id>-<slug>/` 의 함수 명세(시그니처·
입출력·에러·엣지)와 일치하는지, 설계서의 테스트 케이스가 실제로 존재·통과하는지 확인.
- 테스트를 실행하고, 누락된 경계/회귀 테스트는 추가한다.
- 거래소 API 등 외부 의존은 가능한 한 모킹/드라이런으로 검증.
- 결과는 **PASS/FAIL** 로 명확히 판정한다. 애매하면 FAIL.
## 게이트 결정 (둘 중 하나)
- **PASS**: 모든 인수조건 충족 + 테스트 통과 → 카테고리 `05-Designer`, 상태 신규.
- **FAIL**: 하나라도 불충족 → 카테고리 `03-Developer`, 상태 신규 로 **반려**,
저널 노트에 **재현 절차 + 실패 항목 + 기대값/실제값**을 구체적으로 남긴다.
## 핸드오프
- 테스트 파일을 추가했으면 git 커밋·push (`[QA] #<ID> ...`).
- 프로토콜의 (a),(b),(c) 또는 §5(반려) 를 따른다.