diff --git a/src/reinject.ts b/src/reinject.ts index b99f54a..febd92d 100644 --- a/src/reinject.ts +++ b/src/reinject.ts @@ -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[], +): void { + state.pendingReinject = planReinject( + state, + settings, + ctx, + compactionEvent, + registeredSkills, + ); +}