← всі звіти · sparc-upgrade-plan.md

title: SPARC upgrade — план переведення PM-Agent і Dev Crew date: 2026-05-10 status: draft, чекаю ОК Сергія author: VPS Claude

SPARC upgrade — план

TL;DR

Переводимо PM-Agent (v0.3 → v0.4) і Dev Crew (v1 → v2) на SPARC-методологію (Specification → Pseudocode → Architecture → Refinement → Completion). Ефект: предсказувані артефакти на кожній фазі, readiness_pct рахується точно (= завершених фаз / 5), Dev Crew працює waterfall-pipeline'ом замість fan-out.

Старі версії в backup'ах для миттєвого rollback. Поточні проекти не ламаємо — мігруємо поступово.


Стан "як є" (baseline)

PM-Agent v0.3 (/srv/services/pm-agent/pm_agent.py, 712 рядків)

Щоночі:

  1. Читає /srv/wiki/projects/, оновлює last_updated frontmatter
  2. Пропонує readiness_pct зміни (safety: ±10%/добу)
  3. Додає ## 🤖 PM Changelog → ### YYYY-MM-DD секції у index.md
  4. git commit у /srv/wiki з підписом «🤖 PM Agent v0.3»
  5. Збирає відповіді Сергія з /srv/services/pm-agent/answers/

Dev Crew v1 (/srv/projects/dev-crew/crew.py, 332 рядки)


Стан "як буде" (after SPARC upgrade)

Концепція

Кожен проект (новий або поточний) має 5 SPARC-артефактів у /srv/wiki/projects/<area>/<slug>/sparc/:

sparc/
├── 01-specification.md   # S — що робимо і навіщо
├── 02-pseudocode.md      # P — flow без коду
├── 03-architecture.md    # A — стек, файлова структура, інтерфейси
├── 04-refinement.md      # R — TDD-цикл, тести, реалізація
└── 05-completion.md      # C — рев'ю, документація, deploy verification

readiness_pct рахується автоматично: (completed_phases / 5) * 100, з гранулярністю 20%.

PM-Agent v0.4

Додаємо до v0.3 функціоналу:

  1. Phase detector — для кожного проекту визначає поточну SPARC-фазу
    • Перевіряє наявність артефактів у sparc/
    • Перевіряє frontmatter: sparc_phase: S|P|A|R|C|complete
  2. Readiness recalculation — readiness тепер = функція від фази
    • Видаляємо ручні ±10% оцінки → фіксована формула
  3. Phase advancement notifications — у Telegram digest пише:
    • «proj-X: завершено фаза S, переходимо до P»
    • «proj-Y: фаза R активна 5 днів, нагадую про CTO-review перед C»
  4. SPARC bootstrap — для проекту без sparc/ папки вміє згенерувати 01-specification.md з існуючого index.md (legacy migration)

Dev Crew v2

Переробляємо на pipeline по SPARC-фазах. Кожна роль закріплена за фазою:

Фаза Відповідальний Артефакт
S — Specification IT Director (як Spec Author) 01-specification.md
P — Pseudocode Code Analyst 02-pseudocode.md
A — Architecture UI/UX + Code Analyst (паралельно) 03-architecture.md
R — Refinement Backend + Frontend + QA Tester (TDD-цикл) 04-refinement.md + tests + код
C — Completion QA Tester + DevOps 05-completion.md + smoke + deploy verification

Запуск:

python3 crew.py --project <name> --phase S      # тільки S фаза
python3 crew.py --project <name> --phase auto   # авто-перехід через всі 5
python3 crew.py --project <name> --resume       # продовжити з поточної фази

Не fan-out, а waterfall: фаза P не починається поки S не апрувнута (Telegram review gate, як у Case Builder).

Slash-команди (новий додаток)

Інтерактивні скіли для мене (Telegram bot) і Desktop:


План впровадження (4 етапи)

Etap 1 — Foundation (1 день)

Etap 2 — PM-Agent v0.4 (1 день)

Etap 3 — Dev Crew v2 (1.5 дні)

Etap 4 — Slash-команди (0.5 дня)

Загалом: 4 дні активної роботи.


Migration legacy проектів (15 проектів у MEMORY.md)

Не примусово. Кожен існуючий проект отримує SPARC bootstrap при першому PM-Agent run:

  1. Якщо немає sparc/ папки → PM-Agent генерує 01-specification.md з index.md
  2. Frontmatter оновлюється: sparc_phase: bootstrap
  3. Сергій ревью'є / редагує / переводить у sparc_phase: S
  4. Далі — звичайний flow через slash-команди або Dev Crew v2

Активні проекти у пріоритеті: ad-analytics-hub підпроекти (5 шт), med-detective підпроекти (4 шт), interactive-banners (2-3 шт), pediatric-news, biogaia-story.


Що НЕ робимо у цьому апгрейді


Ризики

Ризик Mitigation
PM-Agent v0.4 ламає wiki commit cycle Backup + миттєвий rollback mv pm_agent.py.bak-v0.3 pm_agent.py
Dev Crew v2 не вміє з legacy задачами Залишаємо v1 як crew_v1.py, перемикаємо CLI flag
SPARC занадто формальний для маленьких задач Додаємо --quick режим: тільки S+R+C, пропускаємо P і A
Migration 15 проектів зайня тиждень Поетапно: 1-2 проекти на день, у фоні

Запитання до Сергія перед стартом

  1. ОК на 4 дні роботи (Etap 1-4) — починаємо зараз послідовно, чи з паузами?
  2. Telegram review gate перед кожним переходом фази (як у Case Builder) — чи занадто шумно? Можна гейтити лише на S→P і R→C, проміжні авто.
  3. Який проект взяти першим для тестового SPARC-bootstrap'у? Пропоную med-detective/filtrum (новий, у pre-S стані).
  4. Запозичуємо --quick режим (S+R+C) для маленьких задач, щоб не оверкіл — згоден?

Артефакти цього плану

Після ОК Сергія: