diff --git a/openspec/changes/dsh-prestep/design.md b/openspec/changes/dsh-prestep/design.md index 16ac30e..4a22710 100644 --- a/openspec/changes/dsh-prestep/design.md +++ b/openspec/changes/dsh-prestep/design.md @@ -13,9 +13,11 @@ CC-хуки harness-check/role-hint — SessionStart; в DSH аналог — и ## Механика -Обе инъекции — раз за сессию, с маркером `` -и тем же механизмом видимости, что у bootstrap (`isBootstrapVisible` -переименован в общий `isInjectionVisible(agent, messages, marker)`). +Каждая инъекция — по содержимому и маркеру (per-text dedupe); повторная +инъекция с другим текстом возможна — см. D-11. Маркер +`` и тот же механизм видимости, что у +bootstrap (`isBootstrapVisible` переименован в общий +`isInjectionVisible(agent, messages, marker)`). Порядок в pre-step: другие инъекции → harness-check → role-hint (обе неблокирующие; reject/abort — пропуск; сабагенты — пропуск, как bootstrap). diff --git a/openspec/changes/dsh-prestep/specs/session-prestep/spec.md b/openspec/changes/dsh-prestep/specs/session-prestep/spec.md index 27c88e1..56bbdfe 100644 --- a/openspec/changes/dsh-prestep/specs/session-prestep/spec.md +++ b/openspec/changes/dsh-prestep/specs/session-prestep/spec.md @@ -33,7 +33,7 @@ superpowers` в `CLAUDE.md` (строка заголовка второго ур перечислять отсутствующие в этом порядке. Текст инъекции MUST быть: `[dsh-harness] Проект не подключён к обвязке: -нет: <список отсутствующего через `; `>. Предложи владельцу настройку: +нет: <список отсутствующего через '; '>. Предложи владельцу настройку: openspec init --tools agents, codegraph init и секцию «OpenSpec и superpowers» в CLAUDE.md.` В тексте MUST NOT быть Claude Code-артефактов: ни путей `~/.claude`, ни `adopt-project.sh`, ни `.claude/code-paths` (D-9).