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),
|
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