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:
@@ -2,6 +2,7 @@ import { BrowserWindow } from 'electron';
|
||||
import { gatewayManager } from '@electron/gateway/manager';
|
||||
import { providerApiService } from '@electron/service/provider-api-service';
|
||||
import { ClawHubService } from '@electron/gateway/clawhub';
|
||||
import { hostEventBus } from './event-bus';
|
||||
import type { HostApiContext } from './context';
|
||||
import type { HostApiRequest } from './route-utils';
|
||||
import { normalizeRequest } from './route-utils';
|
||||
@@ -36,18 +37,19 @@ const routeHandlers: RouteHandler[] = [
|
||||
handleSkillRoutes,
|
||||
];
|
||||
|
||||
function createContext(): HostApiContext {
|
||||
export function createHostApiContext(): HostApiContext {
|
||||
return {
|
||||
gatewayManager,
|
||||
providerApiService,
|
||||
mainWindow: BrowserWindow.getAllWindows()[0] ?? null,
|
||||
clawHubService: new ClawHubService(),
|
||||
eventBus: hostEventBus,
|
||||
};
|
||||
}
|
||||
|
||||
export async function dispatchLocalHostApi(request: HostApiRequest) {
|
||||
const normalized = normalizeRequest(request);
|
||||
const ctx = createContext();
|
||||
const ctx = createHostApiContext();
|
||||
|
||||
for (const handler of routeHandlers) {
|
||||
const result = await handler(normalized, ctx);
|
||||
|
||||
Reference in New Issue
Block a user