Gros Frumos
f0a69ed1d3
kin: auto-commit after pipeline
2026-03-17 18:31:33 +02:00
Gros Frumos
40e1001cea
kin: KIN-INFRA-010 Исправить link_type vs type: frontend отправляет неверное поле в API
2026-03-17 18:25:20 +02:00
Gros Frumos
b973b9219a
kin: KIN-OBS-028 Перенести import re в блок stdlib-импортов в runner.py
2026-03-17 18:25:16 +02:00
Gros Frumos
eab9e951ab
kin: auto-commit after pipeline
2026-03-17 17:26:31 +02:00
Gros Frumos
79a0e524a7
kin: auto-commit after pipeline
2026-03-17 16:50:44 +02:00
Gros Frumos
da8110b2ea
kin: KIN-OBS-020 Cleanup: import errno + двойной os.getpid() в agents/runner.py
2026-03-17 16:37:09 +02:00
Gros Frumos
12d95b2e13
kin: auto-commit after pipeline
2026-03-17 16:02:47 +02:00
Gros Frumos
6eea439c16
kin: KIN-ARCH-008 Конфигурируемая test_command на уровне проекта
2026-03-17 16:01:40 +02:00
Gros Frumos
18160de45e
kin: auto-commit after pipeline
2026-03-17 15:59:43 +02:00
Gros Frumos
6c2da26b6c
kin: auto-commit after pipeline
2026-03-17 15:40:31 +02:00
Gros Frumos
f805aff86b
kin: KIN-ARCH-010 Дедупликация задач в task_decomposer при повторном запуске
2026-03-17 15:29:19 +02:00
Gros Frumos
b6f40a6ace
kin: auto-commit after pipeline
2026-03-17 14:03:53 +02:00
Gros Frumos
0ccd451b4b
kin: KIN-091 Улучшения из исследования рынка: (1) Revise button с feedback loop, (2) auto-test before review — агент сам прогоняет тесты и фиксит до review, (3) spec-driven workflow для новых проектов — constitution → spec → plan → tasks, (4) git worktrees для параллельных агентов без конфликтов, (5) auto-trigger pipeline при создании задачи с label auto
2026-03-16 22:35:31 +02:00
Gros Frumos
4a65d90218
kin: KIN-089 При попытке добавить креды прод сервера для проекта corelock вылетает 500 Internal Server Error
2026-03-16 20:39:17 +02:00
Gros Frumos
e80e50ba0c
kin: KIN-UI-005 Написать тесты для chat endpoints
2026-03-16 20:17:39 +02:00
Gros Frumos
a58578bb9d
kin: KIN-BIZ-006 Проверить промпт sysadmin.md на поддержку сценария env_scan
2026-03-16 19:26:51 +02:00
Gros Frumos
bfc8f1c0bb
kin: KIN-083 Healthcheck claude CLI auth: перед запуском pipeline проверять что claude залогинен (быстрый claude -p 'ok' --output-format json, проверить is_error и 'Not logged in'). Если не залогинен — не запускать pipeline, а показать ошибку 'Claude CLI requires login' в GUI с инструкцией.
2026-03-16 15:48:09 +02:00
Gros Frumos
ff69d24acc
kin: KIN-UI-002 Исправить падающие тесты миграции (регрессия KIN-ARCH-003) в core/db.py
2026-03-16 10:04:01 +02:00
Gros Frumos
7630736860
kin: KIN-ARCH-006 Добавить autocommit_enabled и obsidian_vault_path в базовый SCHEMA
2026-03-16 09:57:14 +02:00
Gros Frumos
ba04e7ad84
kin: KIN-ARCH-001 Добавить серверную валидацию ssh_host для operations-проектов
2026-03-16 09:44:31 +02:00
Gros Frumos
af554e15fa
kin: KIN-ARCH-004 Добавить подсказку в форму о требовании ~/.ssh/config для ProxyJump
2026-03-16 09:43:26 +02:00
Gros Frumos
4188384f1b
kin: KIN-059 Workflow new_project с выбором команды. При создании нового проекта через GUI или CLI директор описывает проект свободным текстом и выбирает галочками какие этапы research нужны: ☐ Business analyst (бизнес-модель, аудитория, монетизация) ☐ Market researcher (конкуренты, ниша, отзывы, сильные/слабые стороны) ☐ Legal researcher (юрисдикция, лицензии, KYC/AML, GDPR) ☐ Tech researcher (API, ограничения, стоимость, альтернативы) ☐ UX designer (анализ UX конкурентов, user journey, wireframes) ☐ Marketer (стратегия продвижения, SEO, conversion-паттерны) ☐ Architect (blueprint на основе одобренных research'ей) — всегда последний Architect включается автоматически если выбран хотя бы один researcher. Каждый выбранный этап — отдельная задача на review. Директор одобряет, отклоняет, или просит доисследовать (Revise). Следующий этап только после approve предыдущего. GUI: форма 'New Project' с описанием + чекбоксы ролей + кнопка 'Start Research'. CLI: kin new-project 'описание' --roles 'business,market,tech,architect'
2026-03-16 09:30:00 +02:00
Gros Frumos
d9172fc17c
kin: KIN-016 Агенты должны уметь говорить 'не могу'. Если агент не может выполнить задачу (нет доступа, не понимает, выходит за компетенцию) — он должен вернуть status: blocked с причиной, а не пытаться угадывать. PM при получении blocked от агента — эскалирует к человеку через GUI (уведомление) и Telegram (когда будет).
2026-03-16 09:13:34 +02:00
Gros Frumos
d50bd703ae
kin: KIN-049 Кнопка Deploy на странице задачи после approve. Для каждого проекта настраивается deploy-команда (git push, scp, ssh restart). В Settings проекта.
2026-03-16 08:21:13 +02:00
Gros Frumos
a0b0976d8d
kin: KIN-021 Аудит-лог для --dangerously-skip-permissions в auto mode
2026-03-16 07:13:32 +02:00
Gros Frumos
ae21e48b65
kin: KIN-048 Post-pipeline hook: автокоммит после успешного завершения задачи. git add -A && git commit -m 'kin: TASK_ID TITLE'. Срабатывает автоматически как rebuild-frontend.
2026-03-16 06:59:46 +02:00
Gros Frumos
8a6f280cbd
day 1: Kin from zero to production - agents, GUI, autopilot, 352 tests
2026-03-15 23:22:49 +02:00
Gros Frumos
4a27bf0693
feat(KIN-012): UI auto/review mode toggle, autopilot indicator, persist project mode in DB
...
- TaskDetail: hide Approve/Reject buttons in auto mode, show "Автопилот активен" badge
- TaskDetail: execution_mode persisted per-task via PATCH /api/tasks/{id}
- TaskDetail: loadMode reads DB value, falls back to localStorage per project
- TaskDetail: back navigation preserves status filter via ?back_status query param
- ProjectView: toggleMode now persists to DB via PATCH /api/projects/{id}
- ProjectView: loadMode reads project.execution_mode from DB first
- ProjectView: task list shows 🔓 badge for auto-mode tasks
- ProjectView: status filter synced to URL query param ?status=
- api.ts: add patchProject(), execution_mode field on Project interface
- core/db.py, core/models.py: execution_mode columns + migration for projects & tasks
- web/api.py: PATCH /api/projects/{id} and PATCH /api/tasks/{id} support execution_mode
- tests: 256 tests pass, new test_auto_mode.py with 60+ auto mode tests
- frontend: vitest config added for component tests
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-15 20:02:01 +02:00
Gros Frumos
d311c2fb66
feat: add post-pipeline hooks (KIN-003)
...
- core/hooks.py: HookRunner с CRUD, run_hooks(), _execute_hook(), логированием
- core/db.py: новые таблицы hooks и hook_logs в схеме
- agents/runner.py: вызов run_hooks() после завершения pipeline
- tests/test_hooks.py: 23 теста (CRUD, fnmatch-матчинг, выполнение, таймаут)
Хуки запускаются синхронно после update_task(status="review").
Ошибка хука логируется, не блокирует пайплайн.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-15 18:31:00 +02:00
johnfrum1234
c129cf9d95
Fix output truncation bug, add language support for agent responses
...
Bug 1 — Output truncation:
_run_claude() was replacing raw stdout with parsed sub-field which
could be a dict (not string). run_agent() then saved dict.__repr__
to DB instead of full JSON. Fixed: _run_claude() always returns
string output; run_agent() ensures string before DB write.
Added tests: full_output_saved_to_db, dict_output_saved_as_json_string.
Bug 2 — Language support:
Added projects.language column (TEXT DEFAULT 'ru').
Auto-migration for existing DBs (ALTER TABLE ADD COLUMN).
context_builder passes language in project context.
format_prompt() appends "## Language\nALWAYS respond in {language}"
at the end of every prompt.
CLI: kin project add --language ru (default: ru).
Tests: language in prompt for ru/en, project creation, context.
112 tests, all passing. ~/.kin/kin.db migrated (vdol: language=ru).
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-15 14:39:33 +02:00
johnfrum1234
d7491705d9
Add core/db.py — SQLite schema with all 9 tables from DESIGN.md 3.5
...
Tables: projects, tasks, decisions, agent_logs, modules, pipelines,
project_links, support_tickets, support_bot_config.
WAL mode, foreign keys enabled, idempotent init.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-15 13:12:54 +02:00