sync: update from private repo (9a86f49b)
This commit is contained in:
+19
-1
@@ -18,6 +18,7 @@ import { createBrowserSessionApi } from './browser-session-api.js';
|
||||
import { createSubtaskActivityRouter } from './subtask-activity-api.js';
|
||||
import { createDelegateRunsRouter } from './delegate-runs-api.js';
|
||||
import { createUsageRouter } from './usage-api.js';
|
||||
import { createLlmWorkersRouter } from './llm-workers-api.js';
|
||||
import { SessionManager } from '../engine/browser-session.js';
|
||||
import { setupNovncWebSocketProxy } from './novnc-proxy.js';
|
||||
import { mountNovncStatic, buildNovncSessionAuthorizer } from './novnc-mount.js';
|
||||
@@ -62,6 +63,7 @@ import { attachConsoleWs } from './console-ws-api.js';
|
||||
import type { GatewayMountHandle } from './gateway-mount.js';
|
||||
import { mountBridgeGateway } from './bridge-gateway-mount.js';
|
||||
import { setupA2aSubsystem } from './a2a-subsystem.js';
|
||||
import { setupChatSubsystem } from './chat/chat-subsystem.js';
|
||||
import { createServer as createHttpsServer } from 'https';
|
||||
import { X509Certificate } from 'crypto';
|
||||
import { mergeServerConfig, resolveListenPort } from '../server/config.js';
|
||||
@@ -282,6 +284,10 @@ export function createCoreServer(opts: CoreServerOptions): {
|
||||
: () => loadConfig().tools?.taskUploadMaxSizeMb ?? 50,
|
||||
// Package-request approvals install into the task's space overlay.
|
||||
getPythonPackagesConfig: () => loadConfig().pythonPackages,
|
||||
// LLM 選択 Phase 1: タスク作成/PATCH の validateLlmSelection に渡す worker 一覧。
|
||||
getLlmWorkers: opts.configManager
|
||||
? () => opts.configManager!.getConfig().provider?.workers ?? []
|
||||
: () => loadConfig().provider?.workers ?? [],
|
||||
});
|
||||
|
||||
// --- Local files API ---
|
||||
@@ -294,8 +300,20 @@ export function createCoreServer(opts: CoreServerOptions): {
|
||||
// 横断(全スペース)カレンダー: GET /api/calendar/cross
|
||||
app.use('/api/calendar', createCrossCalendarApi({ repo, authActive }));
|
||||
|
||||
// LLM ワーカー選択 API(タスクへの pin 用): GET /api/llm/workers
|
||||
// 実行ロール(auto/fast/quality)を持つワーカーのみ・秘密値非返却。
|
||||
// requireAuth は auth-subsystem.ts 側(認証有効時のみ)で配線。
|
||||
if (opts.configManager) {
|
||||
app.use('/api/llm/workers', createLlmWorkersRouter(opts.configManager));
|
||||
}
|
||||
|
||||
// --- A2A OAuth2 Authorization Server (see a2a-subsystem.ts; no-op unless a2a.enabled) ---
|
||||
setupA2aSubsystem(app, { repo, authActive });
|
||||
const { limiter: a2aLimiter } = setupA2aSubsystem(app, { repo, authActive });
|
||||
|
||||
// --- External chat connector (see chat/chat-subsystem.ts; no-op unless chat.enabled) ---
|
||||
// Reuses the A2A limiter instance above so governance counters are shared
|
||||
// per-grant across the JSON-RPC A2A path and the chat path.
|
||||
setupChatSubsystem(app, { repo, authActive, a2aLimiter });
|
||||
|
||||
// --- Subtask files API (listing MUST come before wildcard) ---
|
||||
mountSubtaskFilesApi(app, repo);
|
||||
|
||||
Reference in New Issue
Block a user