gendesign/.claude/agents/deep-review-phases/phase-1-scope.md
lekss361 13dbe6e681 chore(claude-config): align with 2026 best practices
- CLAUDE.md: 97->63 lines, drop dev-commands and Don't duplicates
  already covered by .claude/rules/*
- git-pr.md, deploy.md: replace gh CLI with Forgejo MCP/curl
- code-reviewer.md: fix mcp__postgres__ -> mcp__postgres-gendesign__
- tech-analyst.md: sonnet -> haiku
- deep-code-reviewer.md: 391->135 lines, phase details split into
  .claude/agents/deep-review-phases/ (loaded on demand)
- qa-tester, code-reviewer, deep-code-reviewer: add memory: project
- ui-ux.md: split into ui-tokens/ui-conventions/ui-microcopy
- scripts/claude-hooks/check-no-print.py + PostToolUse hook
- .gitignore: explicit list (git whitelist limitation)
2026-05-24 11:39:52 +03:00

2.3 KiB
Raw Blame History

Deep Review — Phase 1: Scope discovery

Supporting reference for deep-code-reviewer.md. Read on demand when scope analysis non-trivial.

Git-level scope

git status
git diff --staged                  # если pre-push
git diff origin/main..HEAD         # если post-push, до merge
git log origin/main..HEAD --stat   # сколько коммитов, кто author
git rev-parse --abbrev-ref HEAD    # не main ли это

Forgejo PR metadata (curl + token из $FORGEJO_TOKEN env)

# Все вызовы используют $FORGEJO_URL и $FORGEJO_TOKEN
H="Authorization: token $FORGEJO_TOKEN"
REPO="$FORGEJO_URL/api/v1/repos/lekss361/gendesign"

# PR metadata: title, body, labels, base, head SHA, mergeable, state, draft
curl -sH "$H" "$REPO/pulls/<N>" | jq '{title,state,mergeable,draft,head:.head.sha,labels:[.labels[].name]}'

# Full file list (даже большой PR)
curl -sH "$H" "$REPO/pulls/<N>/files?limit=50" | jq '.[] | {filename,status,additions,deletions}'

# Diff целиком
curl -sH "$H" "$REPO/pulls/<N>.diff"

# Reviews (что уже сказали bot / lekss361)
curl -sH "$H" "$REPO/pulls/<N>/reviews" | jq '.[] | {user:.user.login,state,body:.body[0:200]}'

# Commits в ветке PR
curl -sH "$H" "$REPO/pulls/<N>/commits" | jq '.[] | {sha:.sha[0:7],message:.commit.message|split("\n")[0]}'

Альтернатива — mcp__forgejo__get_pull_request, mcp__forgejo__list_pr_files, mcp__forgejo__get_pr_diff, mcp__forgejo__list_pr_reviews, mcp__forgejo__list_pr_commits.

File categorization (приоритет ревью)

Категория Что Приоритет
🔴 P0 data/sql/**, backend/alembic/versions/**, auth code, secrets/tokens блокирующий
🟠 P1 backend/app/api/v1/**, backend/app/services/**, backend/app/scrapers/** критичный
🟡 P2 frontend/src/app/**, frontend/src/hooks/**, docker-compose*.yml, Caddyfile, .github/workflows/**, .forgejo/workflows/** важный
🟢 P3 frontend/src/components/** UI-only, tests, CLAUDE.md стандартный
skip lock-файлы, генеренные TS типы (api-types.ts), *.md без правил смотреть только если связано с P0-P2