File size: 471 Bytes
4e23b01 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | import { z } from 'zod';
import type { ServiceContract } from '../types.js';
export const sessionActivityStateSchema = z.object({
busy: z.boolean(),
mainTurnActive: z.boolean(),
pendingInteraction: z.enum(['none', 'approval', 'question']),
lastTurnReason: z.enum(['completed', 'cancelled', 'failed']).optional(),
});
export const sessionActivityViewContract = {
state: { input: z.tuple([]), output: sessionActivityStateSchema },
} satisfies ServiceContract;
|