docs(openspec): порядок решений в design.md (#9)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
parent
1fc27055ba
commit
eae2771525
@ -73,13 +73,13 @@ Non-goals — см. proposal.md.
|
|||||||
10. **Агент: `claimed` при восстановлении не пишется повторно.** `execute(cmd, journal_claimed=True)`; `recover` вызывает с
|
10. **Агент: `claimed` при восстановлении не пишется повторно.** `execute(cmd, journal_claimed=True)`; `recover` вызывает с
|
||||||
`False` — запись `claimed`/`started` для этого id уже есть.
|
`False` — запись `claimed`/`started` для этого id уже есть.
|
||||||
11. **Версия агента 3**, `min_agent_version` не поднимается. Тела запросов агента не меняются.
|
11. **Версия агента 3**, `min_agent_version` не поднимается. Тела запросов агента не меняются.
|
||||||
|
12. **Признак `online`.** Спека data-model меняется под код: `agent_status` отдаёт `online: false`, если `last_seen_at`
|
||||||
|
старше 5 минут (решение без обсуждения, см. ниже).
|
||||||
13. **Один процесс агента на журнал (финальное ревью, I-1).** `agent.py run` берёт исключительную блокировку
|
13. **Один процесс агента на журнал (финальное ревью, I-1).** `agent.py run` берёт исключительную блокировку
|
||||||
`<журнал>.lock` (`fcntl.flock`, `LOCK_NB`); занята — сообщение «агент уже запущен…» и код 1. Без неё два процесса
|
`<журнал>.lock` (`fcntl.flock`, `LOCK_NB`); занята — сообщение «агент уже запущен…» и код 1. Без неё два процесса
|
||||||
(например, при перезапуске через `nohup`/launchd без остановки старого) выполняли бы довыданную команду одновременно:
|
(например, при перезапуске через `nohup`/launchd без остановки старого) выполняли бы довыданную команду одновременно:
|
||||||
идемпотентность «проверь, потом сделай» от одновременного выполнения не защищает (две `ensure_issue` могут не найти
|
идемпотентность «проверь, потом сделай» от одновременного выполнения не защищает (две `ensure_issue` могут не найти
|
||||||
дубль друг друга). Агент v2 блокировки не имеет — при выкатке хаба убедиться, что процесс агента один.
|
дубль друг друга). Агент v2 блокировки не имеет — при выкатке хаба убедиться, что процесс агента один.
|
||||||
12. **Признак `online`.** Спека data-model меняется под код: `agent_status` отдаёт `online: false`, если `last_seen_at`
|
|
||||||
старше 5 минут (решение без обсуждения, см. ниже).
|
|
||||||
|
|
||||||
## Risks / Trade-offs
|
## Risks / Trade-offs
|
||||||
|
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user