Commit Graph

64 Commits

Author SHA1 Message Date
Hermes
2b761aa0bc feat: встроенные агенты opencode (analyst, dev) через go:embed, распаковка по умолчанию в ./agents рядом с бинарём
All checks were successful
CI / test (push) Successful in 38s
CI / build-and-package (amd64, darwin) (push) Successful in 34s
CI / build-and-package (amd64, linux) (push) Successful in 33s
CI / build-and-package (amd64, windows) (push) Successful in 35s
CI / build-and-package (arm64, darwin) (push) Successful in 35s
CI / build-and-package (arm64, linux) (push) Successful in 34s
2026-08-15 15:41:26 +05:00
Hermes
9e7c95e1d8 feat: opencode.config_dir — каталог с агентами (OPENCODE_CONFIG_DIR)
All checks were successful
CI / test (push) Successful in 43s
CI / build-and-package (amd64, darwin) (push) Successful in 40s
CI / build-and-package (amd64, linux) (push) Successful in 39s
CI / build-and-package (amd64, windows) (push) Successful in 41s
CI / build-and-package (arm64, darwin) (push) Successful in 42s
CI / build-and-package (arm64, linux) (push) Successful in 41s
2026-08-15 14:59:10 +05:00
Hermes
87fae9b82c fix: дефолтные пути — ./worktrees и ./ratatoskr.db (независимо от ОС)
All checks were successful
CI / test (push) Successful in 40s
CI / build-and-package (amd64, darwin) (push) Successful in 39s
CI / build-and-package (amd64, linux) (push) Successful in 40s
CI / build-and-package (amd64, windows) (push) Successful in 40s
CI / build-and-package (arm64, darwin) (push) Successful in 42s
CI / build-and-package (arm64, linux) (push) Successful in 45s
2026-08-15 11:26:34 +05:00
Hermes
35fcffe035 config: удалён GiteaCfg (GITEA_URL/GITEA_TOKEN) — нигде не использовался, хранение в локальной SQLite
All checks were successful
build-test / build (push) Successful in 33s
2026-08-15 10:07:54 +05:00
Hermes
c72b41b2c5 app: composition root (A1-A4), Run(ctx), handleIncoming (вариант A), фикс config.Load(""), GetActiveTaskByChatID, main.go обновлён
All checks were successful
build-test / build (push) Successful in 35s
2026-08-15 09:51:03 +05:00
Hermes
4641090398 worker: добавлен пакет worker (W1-W5, poll-цикл, runTask, промпт, тесты) + SetMaxOpenConns(1) для SQLITE_BUSY
All checks were successful
build-test / build (push) Successful in 42s
2026-08-15 09:14:34 +05:00
Hermes
dfe374dd55 internal/analyst: Decider через opencode (A1–A4)
All checks were successful
build-test / build (push) Successful in 1m15s
- Analyst struct: строит Go-template промпт из history+draft
- opencode.Runner.Run (agent=analyst) → ExtractVerdict → ExtractJSON
- Валидация phase/полей → core.Decision
- A1 DecodeFail, A2 RunError, A3 Validation, A4 NotReady
- MockRunner в тестах (11 тестов, зелёные)
- core.runDecide оборачивает ошибки аналитика в D1 ErrDecideFailed
- allow ready→collecting (фикс для правки готового черновика)
2026-08-15 00:32:49 +05:00
Hermes
2957bf0d63 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 (правка черновика)
2026-08-15 00:27:16 +05:00
Hermes
089e196dbc internal/storage: SQLite-БД для задач и трассировок (таски + статус-машина, трассы с группировкой по task_id)
All checks were successful
build-test / build (push) Successful in 30s
2026-08-14 23:38:57 +05:00
Hermes
cc180d7517 internal/chat/telegram: long-poll Channel (sendMessage, getUpdates, Options→HTML, apiURL заменяем для тестов)
All checks were successful
build-test / build (push) Successful in 38s
2026-08-14 23:02:58 +05:00
Hermes
238f00ba36 internal/config: загрузка YAML+env (подстановка ${VAR:-default}, defaults, env override, Validate)
All checks were successful
build-test / build (push) Successful in 1m23s
2026-08-14 22:59:23 +05:00
Hermes
c9d69594cc internal/chat: мультиканальный Router (UserID-сессии, routing, pending Ask/ответ) + Channel интерфейс
All checks were successful
build-test / build (push) Successful in 41s
2026-08-14 20:33:04 +05:00
Hermes
4ebafc48d0 internal/opencode: runner (idle/hard timeout, process-group kill, resume-fallback) + verdict/json parsing
All checks were successful
build-test / build (push) Successful in 1m21s
2026-08-14 13:29:05 +05:00
Hermes
53cf901707 ratatoskr-go: стартовый каркас (Go-бинарь, CI, structure)
All checks were successful
build-test / build (push) Successful in 47s
2026-08-14 08:53:57 +05:00