 85bf1341f3
			
		
	
	85bf1341f3
	
	
	
		
			
			Frontend Enhancements: - Complete React TypeScript frontend with modern UI components - Distributed workflows management interface with real-time updates - Socket.IO integration for live agent status monitoring - Agent management dashboard with cluster visualization - Project management interface with metrics and task tracking - Responsive design with proper error handling and loading states Backend Infrastructure: - Distributed coordinator for multi-agent workflow orchestration - Cluster management API with comprehensive agent operations - Enhanced database models for agents and projects - Project service for filesystem-based project discovery - Performance monitoring and metrics collection - Comprehensive API documentation and error handling Documentation: - Complete distributed development guide (README_DISTRIBUTED.md) - Comprehensive development report with architecture insights - System configuration templates and deployment guides The platform now provides a complete web interface for managing the distributed AI cluster with real-time monitoring, workflow orchestration, and agent coordination capabilities. 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
		
			
				
	
	
		
			107 lines
		
	
	
		
			2.8 KiB
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
			
		
		
	
	
			107 lines
		
	
	
		
			2.8 KiB
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
| import type { Packet, RawData } from "engine.io-parser";
 | |
| import { Emitter } from "@socket.io/component-emitter";
 | |
| import type { Socket, SocketOptions } from "./socket.js";
 | |
| export declare class TransportError extends Error {
 | |
|     readonly description: any;
 | |
|     readonly context: any;
 | |
|     readonly type = "TransportError";
 | |
|     constructor(reason: string, description: any, context: any);
 | |
| }
 | |
| export interface CloseDetails {
 | |
|     description: string;
 | |
|     context?: unknown;
 | |
| }
 | |
| interface TransportReservedEvents {
 | |
|     open: () => void;
 | |
|     error: (err: TransportError) => void;
 | |
|     packet: (packet: Packet) => void;
 | |
|     close: (details?: CloseDetails) => void;
 | |
|     poll: () => void;
 | |
|     pollComplete: () => void;
 | |
|     drain: () => void;
 | |
| }
 | |
| type TransportState = "opening" | "open" | "closed" | "pausing" | "paused";
 | |
| export declare abstract class Transport extends Emitter<Record<never, never>, Record<never, never>, TransportReservedEvents> {
 | |
|     query: Record<string, string>;
 | |
|     writable: boolean;
 | |
|     protected opts: SocketOptions;
 | |
|     protected supportsBinary: boolean;
 | |
|     protected readyState: TransportState;
 | |
|     protected socket: Socket;
 | |
|     protected setTimeoutFn: typeof setTimeout;
 | |
|     /**
 | |
|      * Transport abstract constructor.
 | |
|      *
 | |
|      * @param {Object} opts - options
 | |
|      * @protected
 | |
|      */
 | |
|     constructor(opts: any);
 | |
|     /**
 | |
|      * Emits an error.
 | |
|      *
 | |
|      * @param {String} reason
 | |
|      * @param description
 | |
|      * @param context - the error context
 | |
|      * @return {Transport} for chaining
 | |
|      * @protected
 | |
|      */
 | |
|     protected onError(reason: string, description: any, context?: any): this;
 | |
|     /**
 | |
|      * Opens the transport.
 | |
|      */
 | |
|     open(): this;
 | |
|     /**
 | |
|      * Closes the transport.
 | |
|      */
 | |
|     close(): this;
 | |
|     /**
 | |
|      * Sends multiple packets.
 | |
|      *
 | |
|      * @param {Array} packets
 | |
|      */
 | |
|     send(packets: any): void;
 | |
|     /**
 | |
|      * Called upon open
 | |
|      *
 | |
|      * @protected
 | |
|      */
 | |
|     protected onOpen(): void;
 | |
|     /**
 | |
|      * Called with data.
 | |
|      *
 | |
|      * @param {String} data
 | |
|      * @protected
 | |
|      */
 | |
|     protected onData(data: RawData): void;
 | |
|     /**
 | |
|      * Called with a decoded packet.
 | |
|      *
 | |
|      * @protected
 | |
|      */
 | |
|     protected onPacket(packet: Packet): void;
 | |
|     /**
 | |
|      * Called upon close.
 | |
|      *
 | |
|      * @protected
 | |
|      */
 | |
|     protected onClose(details?: CloseDetails): void;
 | |
|     /**
 | |
|      * The name of the transport
 | |
|      */
 | |
|     abstract get name(): string;
 | |
|     /**
 | |
|      * Pauses the transport, in order not to lose packets during an upgrade.
 | |
|      *
 | |
|      * @param onPause
 | |
|      */
 | |
|     pause(onPause: () => void): void;
 | |
|     protected createUri(schema: string, query?: Record<string, unknown>): string;
 | |
|     private _hostname;
 | |
|     private _port;
 | |
|     private _query;
 | |
|     protected abstract doOpen(): any;
 | |
|     protected abstract doClose(): any;
 | |
|     protected abstract write(packets: Packet[]): any;
 | |
| }
 | |
| export {};
 |