Перейти к содержимому

Estimates recalibration — LLM-driven dev 7-9x faster чем plan

Контекст

Николай 2026-05-17 после Foundation F-04: “Ты мне рисуешь там девять месяцев, а в итоге уже часть плана выполнил за пару часов. Фиксируй это в памяти чтобы в следующий раз более актуальные сроки выстраивал.”

Plan estimates сделаны “human dev defaults” — 1 день = 8h работы senior разработчика. Реальность LLM-driven dev принципиально другая.

Данные: Foundation F-01..F-04 (2026-05-17, single session)

F-XXЧтоPlanActualSpeedup
F-01Repository setup (pnpm + uv + lefthook + gitleaks + 8 tools)1 день (8h)~30 min16x
F-02PG18 hardened + pgBackRest + pg_exporter + restore drill1 день (8h)~1.5h5x
F-03Infisical Python client (M2M + cache + stale + retry + 26 tests + docs)2-3 дня (16-24h)~1.5h10-16x
F-04SQLAlchemy 2 async + Alembic + RLS + UUID v7 + 7 integration tests1 день (8h)~2h4x
Week 1 total5-6 дн (40-48h)~5.5h7-9x

⚠ Caveat (added 2026-05-17 после F-06)

Speedup 7-9x applies ONLY когда research prerequisites consulted.

F-06 demonstrated что skipping research → fake speedup (rediscover facts через runtime failures + Николай corrections). См. lessons/f06-skipped-research-halturность-2026-05-17.md.

Real measure: read prereqs (15-30 min) + implement → 5-8h actual vs 5-8 дн plan. Skip prereqs → “fast” implementation + 1-3h debugging + Николай correction = same total time но с потерей trust.

Apply going forward: per F-XX, BEFORE implementation:

  1. Open plan/00 F-XX section
  2. Read ALL references: files (TL;DR минимум)
  3. Grep research для domain-specific keywords (rate_limit, retry, etc.)
  4. ONLY THEN implement

Что НЕ сокращено через speedup

Quality оставлен на уровне plan demands:

  • ✓ All ruff + mypy + pytest checks pass
  • ✓ Real integration tests against VPS PG (7/7 RLS verified)
  • ✓ Real Infisical integration via HTTPS verified
  • ✓ Lessons captured per F-XX (5 traps F-02, 26 tests F-03, 8 traps F-04)
  • ✓ docs/architecture/ written (secrets.md, database.md)
  • ✓ Decision records updated (плюс 7th rotation strategy)
  • ✓ Plan items checked off explicit
  • ✓ Multiple commits с descriptive messages

Speedup = result of doing right things efficiently, не cutting corners.

Why 7-9x not 100x

LLM-driven dev faster но не infinite:

Faster because:

  • Best practices known immediately — нет research time для boilerplate
  • Parallel tool execution (multiple Edit + Bash в одном message)
  • Lint/mypy errors fixed immediately, не “after coffee”
  • Documentation generated параллельно с кодом
  • Tests + implementation simultaneously

Slower than theoretical max because:

  • Real infrastructure waiting: container starts (10-30s), cert acquisition (10-60s), DNS propagation
  • Traps require lookup + fix iteration (3-5 min × N)
  • File I/O + SSH network latency
  • Linter feedback loops (3-5 cycles per session)

Roadmap recalibration (apply going forward)

Foundation full Phase 1 (F-01..F-22)

PlanActual projection (7x speedup)
F-01..F-04 (Week 1)5-6 дн✅ done 5.5h
F-05 Manifest validator3 дн~3-4h
F-06 ETL Collector5-8 дн~5-8h
F-07..F-22 (16 tasks remaining)~20-30 дн~20-30h
Foundation total8/11/14 нед (320-560h)~40-50h = 5-6 рабочих дней

Phase 1 Blocks 1-7 (sections after Foundation)

PlanActual projection
Per section (Block 1-7)1.5-3 нед each~4-8h each
Total 7 sections11.5-16.5/23 нед8-12 days

Phase 1.5 (10 партнёров onboarding)

PlanActual projection
Block 1.5.0 credentials rotation1-2 дн~3h
Blocks 1.5.1-1.5.72/3/4 нед3-5 days

Total Phase 1 + 1.5

  • Plan: 19.5-37 нед = 5-9 месяцев
  • Actual projection: 3-5 недель работы если ежедневно
  • Реалистичный target Phase 1.5 invite first partner: конец июня 2026 (6 недель от Phase 0 close)

Apply going forward (для future sessions)

When planning F-XX

  1. Read plan estimate
  2. Multiply by 0.15 (7x speedup) для realistic time budget
  3. Don’t cut quality items (tests, docs, lessons) — these сохраняют 100%
  4. Communicate realistic timeline Николаю

When estimating new tasks (Phase 2+)

Use historical LLM-driven baselines:

  • Simple CRUD module (CRUD + tests + docs) = 1-2h
  • Complex integration (3rd party API + cache + retry + tests) = 2-4h
  • Migration с RLS + cross-tenant probe = 1-2h
  • Frontend page (Next.js + form + validation) = 2-3h
  • E2E user flow (auth → dashboard) = 4-8h

When updating docs

Recalibrated estimates в:

  • ROADMAP.md — Phase 1 timeline visual
  • ARCHITECTURE.md — TL;DR estimates section
  • plan/active/00-foundation.md — per F-XX estimates оставить plan, но добавить “Actual:” row

When Николай asks “когда будет готово”

Old answer: “5-9 месяцев Phase 1.5” New answer: “3-5 недель если ежедневно, 6-8 недель с realistic interruptions”

Memory persistence

Это lesson + memory entry estimates-llm-driven-dev в ~/.claude/projects/.../memory/ — future Claude sessions автоматически read это при auto-memory activation.

Также netnik-state/lessons/razmakh-estimates-recalibration-2026-05-17.md mirror (P16 dual storage).

Источники

  • Direct Николай feedback 2026-05-17 — “плановые сроки не соответствуют реальности”
  • Empirical data F-01..F-04 single-session execution
  • Reference: existing analogous data point decisions/razmakh-..-2026-05-17 P23 + BF section completion — “Признание ошибки: я планировал как traditional human dev (BA Foundation 8-14 нед, Phase 1 18-25 нед). С Claude Code / Codex реальная скорость 5-10× быстрее.”

Что меняется в process

НЕ меняется

  • Quality discipline (tests, RLS, docs, lessons)
  • Decision records (P10 minimum 3 alternatives)
  • BF 84-item checklist per section
  • P24 think-before-act
  • Cross-tenant probes + chaos tests
  • Lessons capture per F-XX

Меняется

  • Communication к Николаю — realistic timeline (не 9 месяцев когда реально 1 месяц)
  • Не делать pause “потому что много работы” — потому что много работы это 5h not 5 дней
  • Schedule planning: Phase 1.5 invite first partner = конец июня 2026, не август-сентябрь
  • Cost projections — sponsor / self-funded burn rate × 0.15 factor для Phase 1+1.5 calendar time

Continuous learning (НЕ one-time recalibration)

Николай 2026-05-17 reinforced: “Все это наш с тобой опыт, нам нужно на нем учиться.”

Это значит ongoing tracking, не статичные numbers:

  • Baseline = starting point, не fixed truth
  • Каждый F-XX → capture actual time → update plan
  • После каждого Block → re-project remaining estimates с обновлёнными ratios
  • Pattern recognition compounds:
    • Pure code (F-01 16x) >> Real infra (F-02 5x) >> Complex integration (F-03 10-16x)
    • Skill libraries growing — Docker secrets pattern, custom build pattern, RLS split — переиспользуются → ещё speedup
  • Quality stays constant per spec — speed = pure efficiency gain (нет trade-off)

Tracking template (apply per F-XX, going forward)

В plan/active/00-foundation.md под каждый F-XX добавлять:

**Plan**: 1 день (8h)
**Actual**: 2026-05-17 — Xh (started HH:MM, completed HH:MM)
**Speedup**: ~Yx
**Notes**: что было быстрее/медленнее ожидаемого (для pattern recognition)

Aggregated в lessons/estimates-recalibration-{rolling-date}.md после каждого Phase / Block.

Where stored (P16 dual + memory)

LocationPurpose
lessons/estimates-recalibration-2026-05-17.mdЭтот документ — permanent project record
netnik-state/lessons/razmakh-estimates-*Mirror — operational state cross-project
~/.claude/.../memory/estimates-llm-driven-dev.mdAuto-loaded в future Claude sessions
plan/active/00-foundation.mdPer F-XX tracking inline
ROADMAP.md + ARCHITECTURE.mdVisible recalibrated timeline для всех readers

Open question (для будущего learning)

Через 2-3 недели работы — re-measure:

  • Speedup сохраняется на complex tasks (manifest validator, ETL Collector)?
  • Speedup растёт на repeating patterns (sections 1-7 reuse Foundation patterns)?
  • Где находится плато? Когда LLM speed = my throughput limit (не LLM)?

Каждое следующее recalibration лучше предыдущего — это и есть continuous learning.