Phase 7: add enqueueDeferredReinjectFromCompact — queue plan on session_compact without sendUserMessage.
Defer delivery stores planned skill names in pendingReinject for injection on the next before_agent_start, avoiding races with pi-auto-compact follow-ups. Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@@ -37,3 +37,20 @@ export function planReinject(
|
||||
registeredSkillNames(registeredSkills),
|
||||
);
|
||||
}
|
||||
|
||||
/** Defer path on session_compact: queue planned skills without sendUserMessage (SPEC §6.5.1, §16.2). */
|
||||
export function enqueueDeferredReinjectFromCompact(
|
||||
state: ExtensionState,
|
||||
settings: SkillReinjectSettings,
|
||||
ctx: ExtensionContext,
|
||||
compactionEvent: SessionCompactEvent,
|
||||
registeredSkills: readonly Pick<Skill, "name">[],
|
||||
): void {
|
||||
state.pendingReinject = planReinject(
|
||||
state,
|
||||
settings,
|
||||
ctx,
|
||||
compactionEvent,
|
||||
registeredSkills,
|
||||
);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user