/** * Loader fixture that publishes the semantic-checkpoint session before CLI dispatch. * @module semantic-checkpoint-agent */ import type { Context } from 'cordis' import type { SessionId } from '@deepseek-ai/dsh-session' /** Fixture plugin name. */ export const name = 'semantic-checkpoint-agent' /** Services that must exist before the fixture resumes its agent. */ export const inject = ['agents', 'agentLoop', 'sessionPersistence'] /** * Resume the seeded session and bind its exact handle to this fixture's lifetime. * @param ctx - settled agent and persistence services from the Loader tree. * @returns after the resumed agent is published. */ export async function apply(ctx: Context): Promise { const handle = await ctx.agents.resume({ resumeSessionId: 'semantic-checkpoint-unknown-outcome' as SessionId, agentOptions: { provider: 'deepseek', model: 'deepseek-v4-flash' }, }) ctx.effect(() => () => handle.dispose(), 'semantic-checkpoint-agent.handle') }