Phase 15: document mid-turn defer steer and debug for compaction none
Explain idle vs mid-turn delivery with pi-auto-compact and how to use debug snapshots when last compaction shows none incorrectly. Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@@ -66,7 +66,12 @@ Pi хранит в контексте только описания skills; по
|
||||
|
||||
## Совместимость с pi-auto-compact
|
||||
|
||||
Рассчитан на совместную работу с [@capyup/pi-auto-compact](https://github.com/capyup/pi-auto-compact). При обнаружении команды `auto-compact` re-inject идёт через `defer` + `before_agent_start`, чтобы не конкурировать с follow-up pi-auto-compact (см. [SPEC.md §16](./SPEC.md#16-совместимость-с-capyuppi-auto-compact)).
|
||||
Рассчитан на совместную работу с [@capyup/pi-auto-compact](https://github.com/capyup/pi-auto-compact). При обнаружении команды `auto-compact` re-inject идёт через `defer`:
|
||||
|
||||
- **Idle** (turn boundary): очередь на `before_agent_start` — в том же turn, что follow-up pi-auto-compact, без гонки `sendUserMessage`.
|
||||
- **Mid-turn** (`!isIdle`, после tool result): немедленная доставка через `sendMessage` с `deliverAs: "steer"` — skill попадает в контекст до следующего LLM-вызова без user prompt.
|
||||
|
||||
Если `/skill-reinject` показывает `last compaction: none` после auto compact — включите `"debug": true` в `skillReinject` и смотрите notify `skill-reinject [session_compact]`: поля `compactionSource`, `sourceInferred`, `deliveryBranch`, `isIdle`.
|
||||
|
||||
**Coexistence с Pi default auto-compaction:** оба механизма могут сработать в одной сессии. При использовании pi-auto-compact можно отключить встроенный compaction Pi (`"compaction.enabled": false` в settings) или оставить оба — skill-reinject отработает после каждого **auto** compaction. Extension не отключает чужой compaction; при первом обнаружении обоих механизмов показывает одноразовый hint.
|
||||
|
||||
|
||||
Reference in New Issue
Block a user