internal/core: ядро-машина состояний (ProcessTurn поверх storage) + история задач в БД
All checks were successful
build-test / build (push) Successful in 1m11s

- status = единственный источник истины (collecting/ready как фазы диалога)
- команды /start /cancel /skip /retry N /status N /continue N
- Decider интерфейс (аналитик→opencode, мок для тестов)
- task_history таблица для промпта аналитика
- allow ready→collecting (правка черновика)
This commit is contained in:
Hermes
2026-08-15 00:27:16 +05:00
parent 089e196dbc
commit 2957bf0d63
8 changed files with 866 additions and 1 deletions

23
internal/core/errors.go Normal file
View File

@@ -0,0 +1,23 @@
package core
import (
"errors"
)
// Классы ошибок: D1D5
var (
// D1 — сбой вызова аналитика
ErrDecideFailed = errors.New("D1: decide failed")
// D2 — таймаут аналитика
ErrDecideTimeout = errors.New("D2: decide timeout")
// D3 — превышен лимит ходов
ErrMaxTurns = errors.New("D3: max turns reached")
// D4 — превышен лимит правок
ErrMaxConfirmCycles = errors.New("D4: max confirm cycles reached")
// D5 — нераспознанная команда (reply, не ошибка)
ErrCommandUnknown = errors.New("D5: unknown command")
)