feat: implement telemetry system for application usage tracking
- Added telemetry utility to capture application events and metrics. - Integrated PostHog for event tracking with distinct user identification. - Implemented telemetry initialization, event capturing, and shutdown procedures. feat: add UV environment setup for Python management - Created utilities to manage Python installation and configuration. - Implemented network optimization checks for Python installation mirrors. - Added functions to set up managed Python environments with error handling. feat: enhance host API communication with token management - Introduced host API token retrieval and management for secure requests. - Updated host API fetch functions to include token in headers. - Added support for creating event sources with authentication. test: add comprehensive tests for gateway protocol and startup helpers - Implemented unit tests for gateway protocol helpers, event dispatching, and state management. - Added tests for startup recovery strategies and process policies. - Ensured coverage for connection monitoring and restart governance logic.
This commit is contained in:
@@ -1,5 +1,25 @@
|
||||
import type { ChannelAccountCatalogGroup, ChannelConnectionStatus } from '@src/lib/channel-types';
|
||||
import { buildChannelStatusSummary, type ChannelStatusSummary } from '@electron/utils/channel-status';
|
||||
import type { GatewayLifecycleState } from './process-policy';
|
||||
|
||||
export interface GatewayDiagnosticsSnapshot {
|
||||
lastAliveAt?: number;
|
||||
lastRpcSuccessAt?: number;
|
||||
lastRpcFailureAt?: number;
|
||||
lastRpcFailureMethod?: string;
|
||||
lastHeartbeatTimeoutAt?: number;
|
||||
consecutiveHeartbeatMisses: number;
|
||||
lastSocketCloseAt?: number;
|
||||
lastSocketCloseCode?: number;
|
||||
consecutiveRpcFailures: number;
|
||||
}
|
||||
|
||||
export function createInitialGatewayDiagnostics(): GatewayDiagnosticsSnapshot {
|
||||
return {
|
||||
consecutiveHeartbeatMisses: 0,
|
||||
consecutiveRpcFailures: 0,
|
||||
};
|
||||
}
|
||||
|
||||
export interface GatewayHealthSnapshot {
|
||||
ok: boolean;
|
||||
@@ -9,6 +29,9 @@ export interface GatewayHealthSnapshot {
|
||||
port?: number | null;
|
||||
pid?: number | null;
|
||||
lastError?: string;
|
||||
lifecycleState?: GatewayLifecycleState;
|
||||
gatewayReady?: boolean;
|
||||
diagnostics?: GatewayDiagnosticsSnapshot;
|
||||
}
|
||||
|
||||
export interface GatewayDiagnosticsSummary {
|
||||
|
||||
Reference in New Issue
Block a user