From d2fcf385e8552854e67434ef0e0ee3467b7a0e0d Mon Sep 17 00:00:00 2001 From: _Kerman Date: Thu, 23 Jul 2026 19:27:37 +0800 Subject: [PATCH] test: cold-load persisted session metadata --- .../tests/coordinator-contract.ts | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/packages/session-persistence/session-persistence/tests/coordinator-contract.ts b/packages/session-persistence/session-persistence/tests/coordinator-contract.ts index a4d6b16072..857e3e5a91 100644 --- a/packages/session-persistence/session-persistence/tests/coordinator-contract.ts +++ b/packages/session-persistence/session-persistence/tests/coordinator-contract.ts @@ -140,9 +140,13 @@ export function runCoordinatorContract(name: string, makeFixture: () => Promise< const fix = await makeFixture() const { ctx, fiber } = await freshCtx(fix) try { - const session = ctx.sessions.create(SessionId('forked-child'), { meta: { cwd: WORK, seedLength: 3 } }) + let session!: Session + const sessionFiber = await ctx.plugin(Object.assign((inner: Context) => { + session = inner.sessions.create(SessionId('forked-child'), { meta: { cwd: WORK, seedLength: 3 } }) + }, { inject: ['sessions'] })) send(session, oneTurnLog()) await ctx.sessions.flush(session) + await sessionFiber.dispose() const loaded = await ctx.sessionPersistence.load(SessionId('forked-child')) expect(loaded.meta.seedLength).toBe(3) @@ -159,11 +163,15 @@ export function runCoordinatorContract(name: string, makeFixture: () => Promise< const fix = await makeFixture() const { ctx, fiber } = await freshCtx(fix) try { - const session = ctx.sessions.create(SessionId('delegated-child'), { - meta: { cwd: WORK, parentSession: SessionId('root'), delegationDepth: 2 }, - }) + let session!: Session + const sessionFiber = await ctx.plugin(Object.assign((inner: Context) => { + session = inner.sessions.create(SessionId('delegated-child'), { + meta: { cwd: WORK, parentSession: SessionId('root'), delegationDepth: 2 }, + }) + }, { inject: ['sessions'] })) send(session, oneTurnLog()) await ctx.parallel('session/flush', session) + await sessionFiber.dispose() const loaded = await ctx.sessionPersistence.load(SessionId('delegated-child')) expect(loaded.meta.delegationDepth).toBe(2)