2 Commits (c4e86e06ec4cbf340c53744bbbf9f0fff3f97522)

Author SHA1 Message Date
Claude c4e86e06ec Phase 6: 통합 · 연합 흐름 · QA & MVP 수용 기준
- 백엔드: test_federation(캡처→분류→확인→tasks 등장→risks 재계산→dashboard 집계,
  confirm 멱등, k1 done 후 지연위험 소멸) + test_nplus1(tree≤6/dashboard≤12 쿼리 예산)
  + /api/_test/reset(ARI_ALLOW_TEST_RESET 가드) + confirm 멱등 가드
- 프론트 E2E: federation.spec(7단계 사용자 여정) + a11y.spec(3페이지 라이트/다크/키보드,
  color-contrast 제외) + responsive.spec(모바일/태블릿/데스크톱 가로스크롤 0) + seed-reset fixture
- tokens.test(토큰 HEX/px 회귀)
- 반응형 보정: 모바일에서 .ttoolbar/.pagehead 줄바꿈 + 검색창 가변폭(가로 스크롤 제거)
- README 한 장 실행법/데모 스크립트, scripts/dev.sh, frontend/.env.local.example, CI 워크플로

최종 검증(전 phase 누적):
- 백엔드 pytest 63 passed, ruff clean
- 프론트 vitest 69 passed, tsc/eslint clean, build OK
- Playwright E2E 39 passed(연합/a11y/반응형/shell/tasks/inbox/dashboard) — axe 위반 0
- 라이브: Ollama 분류 동작(모델 비종속) + heuristic 폴백, 전 엔드포인트 200, 콘솔 에러 0
- 소스 TODO/FIXME 0

MVP 완료: 작업·인박스·대시보드 3페이지 + 연합 end-to-end.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2 months ago
Claude d2d7c17ad3 Phase 3: 작업(Tasks) 페이지
- 폴더 트리 사이드바(업무/개인/즐겨찾기) + 무한중첩 프로젝트 + 인라인 새 프로젝트
- 칸반(5컬럼)/리스트 2뷰 + 작업 카드(태그·담당·마감임박·우선순위·진행률·위임칩)
- 상세 드로어(DetailPanel): 리치노트·댓글·하위작업 드릴다운·메타 편집·삭제
  + Auto-Scaffolding(미리보기→적용) + 위임 추천(suggestCollaborator)
- 리스크 레이더(업무 스코프, **굵게→<b> 파서, CTA로 드로어 열기)
- SWR 서버 연동(tree/tasks/risks), 낙관적 mutate, UI상태 ari.tasks.* localStorage 영속
- tasks.css 픽셀 이식, lib/cx.ts, lib/tasks/{api,store,tree}, lib/types 확장
- 백엔드: PATCH 작업 순환참조(self/후손 parent) 400 가드 추가

검증: 백엔드 pytest 46, 프론트 vitest 32, playwright e2e 19(shell+tasks+a11y),
tsc/eslint clean, build OK. axe: color-contrast(레퍼런스 액센트 팔레트)만 제외, 나머지 0.
라이브 시각 확인: 사이드바/칸반/리스크레이더/드로어/scaffold/위임 충실 재현.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2 months ago