Luigit
repositories / pi-ext

pi-ext

bugabingas pi extensions

owned by admin

extensions/handoff/src/debug.ts

Raw
import { defineDebug } from "./pi-ext-debug.ts";

type HandoffDebugSchema = {
	events: readonly ["handoff.start", "handoff.outcome", "session.shutdown"];
	spans: readonly ["generate"];
	fields: {
		mode: readonly ["json", "print", "rpc", "tui"];
		messageCount: "number";
		status: readonly [
			"generated",
			"aborted",
			"failed",
			"edited",
			"cancelled",
			"created",
			"rejected",
		];
		reason: readonly ["mode", "model", "goal", "empty"];
	};
};

export const {
	dbg,
	span,
	closeDebug,
}: ReturnType<typeof defineDebug<HandoffDebugSchema>> = defineDebug({
	events: ["handoff.start", "handoff.outcome", "session.shutdown"],
	spans: ["generate"],
	fields: {
		mode: ["json", "print", "rpc", "tui"],
		messageCount: "number",
		status: [
			"generated",
			"aborted",
			"failed",
			"edited",
			"cancelled",
			"created",
			"rejected",
		],
		reason: ["mode", "model", "goal", "empty"],
	},
} as const);