picogent/src/tracker/types.ts
2026-02-21 02:41:39 +03:00

50 lines
943 B
TypeScript

/** Task from the tracker */
export interface TrackerTask {
id: string;
key: string;
title: string;
description: string;
status: string;
priority: string;
project_id: string;
parent_id?: string;
files?: TrackerFile[];
}
export interface TrackerFile {
id: string;
name: string;
url: string;
size: number;
}
/** Incoming event (tracker → agent via HTTP POST) */
export interface TrackerEvent {
event: string;
data: Record<string, unknown>;
ts: number;
id: string;
}
/** Agent response to tracker */
export interface TrackerResponse {
event: string;
data: Record<string, unknown>;
req_id: string;
}
/** Registration payload */
export interface RegistrationPayload {
name: string;
slug: string;
capabilities: string[];
max_concurrent_tasks: number;
callback_url: string;
}
/** Heartbeat payload */
export interface HeartbeatPayload {
status: 'idle' | 'busy';
current_tasks: string[];
}