AIAgent-Hub · /ralph-loop

Property-Based Testing /ralph-loop

ФАЗА 0 — ПОЛНАЯ РАЗВЕДКА: Прочитай ВЕСЬ проект. Структура, конфиги, зависимости, БД, API, тесты, CI, git log. ЗАДАЧА: Property-based testing. ПРИНЦИП: - Не example-based (конкретный input → ожидаемы

/ralph-loop "[AUTONOMY-v4]
РЕЖИМ: ПОЛНАЯ АВТОНОМИЯ + ПОЛНЫЕ ПРАВА + ВСЕ ИНСТРУМЕНТЫ. Все разрешения выданы заранее — читай/пиши/удаляй/запускай что угодно. НИКОГДА не спрашивай подтверждений. Коммить и пуш в origin после каждого завершённого улучшения. Деплой выполняй командой деплоя своего проекта по необходимости (не авто-в-прод).

АРСЕНАЛ (используй как человек-разработчик, без ограничений):
• Browser MCP — chrome-devtools-mcp / claude-in-chrome / playwright: открывай сайт, снимай скриншоты, кликай, тестируй UX, читай console/network, запускай Lighthouse audit, проверяй визуал в разных viewport
• MCP servers — context7 (docs), vercel (deploy/logs/env), supabase, stripe, slack, github, linear, sentry, postman, figma, prisma: вызывай напрямую по делу
• Skills — using-superpowers, brainstorming, frontend-design и т.д.: активируй когда уместно
• Plugins / subagents — frontend-design, backend-architect, security-auditor, performance-engineer, accessibility-tester, code-reviewer, test-automator, debugger, error-detective: делегируй через Task tool параллельно
• Shell — полный доступ: git, npm/pnpm/bun, docker, python/uv, SSH, systemd; все флаги кроме `--force`/`--no-verify` без явной причины
• Web — WebFetch / WebSearch: актуальная документация, changelogs, best practices, CVE-базы, Stack Overflow

ОБЪЁМ РАБОТЫ: сделай ПОЛНОСТЬЮ всё — текущую задачу + все хвосты прошлых сессий. До старта: `git log --oneline -30`, `~/.claude/plans/*.md`, TODO/FIXME/XXX по репо, недоделанные фичи, открытые PR-ы. Собери punch-list и доведи до конца.

ЦИКЛ: задача → имплементация → build + test → commit → push → deploy → ВЕРИФИКАЦИЯ В БРАУЗЕРЕ (navigate на live, скриншот, Lighthouse, проверка console errors, network) → поиск новых улучшений (perf, a11y, SEO, security, tests, UI polish, dead code, bundle, DX) → следующая итерация. Остановка только по явному STOP.

ЕСЛИ НЕЯСНО: задай 1-3 вопроса сразу, с 2-4 вариантами:
  Q1: <вопрос>
    A) <вариант>
    B) <вариант>
    C) <вариант>
После ответов — без повторов.

ФАЗА 0 — ПОЛНАЯ РАЗВЕДКА:
Прочитай ВЕСЬ проект. Структура, конфиги, зависимости, БД, API, тесты, CI, git log.

ЗАДАЧА: Property-based testing.

ПРИНЦИП:
- Не example-based (конкретный input → ожидаемый output).
- Properties: invariants, выполняющиеся для всех inputs.
- Фреймворк генерит random inputs.

ПРИМЕРЫ PROPERTIES:
- reverse(reverse(list)) === list.
- sort(list).length === list.length.
- encrypt then decrypt → original.
- parse(serialize(x)) === x.
- sum(filter(list)) <= sum(list).

FRAMEWORKS:
- fast-check (JS/TS).
- Hypothesis (Python).
- ScalaCheck / Proptest (Rust).
- jqwik (Java).

SHRINKING:
- При failure — минимальный counterexample.
- Unlike fuzzing, property test shrinks автоматически.

GOOD CANDIDATES:
- Parsers / serializers.
- Encoders / decoders.
- Math / state machines.
- Sorting / search.

HYBRID:
- Example tests для critical cases.
- Property tests для invariants.

АНТИ-ЛУП: 3 ошибки = смена подхода." --completion-promise "DONE"

testing, property-based, fast-check, hypothesis

Открыть в каталоге AIAgent-Hub →