@x-otto/service 0.0.1-alpha.3 → 0.1.0-alpha.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -23,15 +23,31 @@ a standalone persistence storage service (persistenced).
23
23
  | Route Prefix | Endpoint | Description |
24
24
  |----------|------|------|
25
25
  | `/api/health` | `GET /` | Health check |
26
+ | `/api/authority` | `GET /` | Authority descriptor (instanceId / workspaceDir / capabilities) |
26
27
  | `/api/chat` | `POST /query` / `GET /messages` / `POST /interrupt` / `DELETE /clear` | Session conversation |
27
- | `/api/sessions` | `GET/POST /` / `GET /current` / `GET /:id/messages` / `POST /:id/resume` (501) / `GET /:id/trace` / `GET /:id/export` / `GET/PUT/DELETE /:id/model` | Session CRUD |
28
+ | `/api/sessions` | `GET/POST /` / `GET /current` / `GET /:id/messages` / `POST /:id/resume` (501) / `GET /:id/trace` / `GET/PUT /:id/model` / `DELETE /:id/model` (501) | Session CRUD |
28
29
  | `/api/sessions` (subdomain) | `POST /verify-path` / `POST /browse-directory` / `GET /files` (workspace) + time-travel endpoints | workspace + timetravel |
29
30
  | `/api/storage` | `GET /:namespace` / `GET/PUT/DELETE /:namespace/:id` | RemotePersistence wire protocol server |
30
- | `/api/setting` | `GET/PUT /` (PUT 501) / `GET /providers` / `GET /models` / `POST /verify-model` / `POST /mode\|autonomy\|thinking` (501) | Settings management |
31
+ | `/api/setting` | `GET/PUT /` / `GET /providers` / `GET /models` / `POST /verify-model` / `POST /mode` / `POST /thinking` / `POST /autonomy` (501) | Settings management |
31
32
  | `/api/devtools` | `GET /status` / `GET /breakpoints` | Devtools worker bridge |
32
33
  | `/api/debugger` | Breakpoint CRUD / pause / resume / inject / state | Debugger API |
33
34
  | `/api/logs` | `GET /history` / `GET /stream` (SSE) | Log query and streaming |
34
35
  | `/api/catalog` | Exposes extension/sigil catalog to the frontend | Plugin catalog |
36
+ | `/api/jobs` | Background job list / artifact diff | Job workbench (RFC-351) |
37
+ | `/api/plugin-feedback` | Plugin feedback submission | Plugin feedback |
38
+
39
+ > Route table authoritative source: `src/create-app.ts` (main app) and `src/persistenced-app.ts` (persistenced). Keep this table in sync with the `app.route(...)` registrations there.
40
+
41
+ ### persistenced routes (separate process, `startPersistenced`)
42
+
43
+ | Route Prefix | Endpoint | Description |
44
+ |----------|------|------|
45
+ | `GET /health` | — | Health + uptime + namespaces |
46
+ | `/api/storage` | document CRUD | RemotePersistence wire protocol server |
47
+ | `/api/events` | SSE push (change_log polling) | Cross-process change notification |
48
+ | `/api/sync` | `push` / `pull` batch sync | Namespace batch sync |
49
+ | `/api/schedules` | schedule lease CRUD | RemoteScheduleStore lease (RFC-161) |
50
+
35
51
 
36
52
  ## WebSocket
37
53
 
package/dist/index.d.ts CHANGED
@@ -1,12 +1,12 @@
1
1
  import { Context, Hono } from "hono";
2
2
  import { TypedEventEmitter } from "@x-otto/shared";
3
- import { ProjectorState, SessionEvent, createProjectorState } from "@x-otto/session-contract";
4
- import { Devtools, PauseResumePayload } from "@x-otto/devtools";
3
+ import { ProjectCtx, ProjectorState, SessionEvent, createProjectorState } from "@x-otto/session-contract";
5
4
  import { AgentSessionEvent, GrillAnswer, TraceEvent } from "@x-otto/agent";
6
5
  import { IncomingMessage, Server } from "node:http";
7
6
  import { StorageHost } from "@x-otto/persistence";
8
7
  import { AgentSession, ServiceHostPort } from "@x-otto/coding";
9
8
  import { Socket } from "node:net";
9
+ import { Devtools, PauseResumePayload } from "@x-otto/devtools";
10
10
 
11
11
  //#region src/message-serializer.d.ts
12
12
  interface SerializedToolCall {
@@ -60,67 +60,6 @@ type WebSocketMessage = {
60
60
  data: SessionEvent & {
61
61
  seq?: number;
62
62
  };
63
- } | {
64
- type: 'Chat.nestedToolCall';
65
- data: {
66
- sessionId: string;
67
- id: string;
68
- name: string;
69
- arguments: Record<string, unknown>;
70
- };
71
- } | {
72
- type: 'Chat.nestedToolResult';
73
- data: {
74
- sessionId: string;
75
- id: string;
76
- isError: boolean;
77
- };
78
- } | {
79
- type: 'Chat.planContent';
80
- data: {
81
- sessionId: string;
82
- content: string;
83
- };
84
- } | {
85
- type: 'Chat.subagentStart';
86
- data: {
87
- sessionId: string;
88
- agentName: string;
89
- };
90
- } | {
91
- type: 'Chat.subagentComplete';
92
- data: {
93
- sessionId: string;
94
- agentName: string;
95
- };
96
- } | {
97
- type: 'Chat.parallelAgentsStart';
98
- data: {
99
- sessionId: string;
100
- count: number;
101
- };
102
- } | {
103
- type: 'Chat.parallelAgentsDone';
104
- data: {
105
- sessionId: string;
106
- };
107
- } | {
108
- type: 'Chat.taskCompleted';
109
- data: {
110
- sessionId: string;
111
- taskId: string;
112
- };
113
- } | {
114
- type: 'MCP.statusUpdate';
115
- data: {
116
- serverId: string;
117
- status: string;
118
- };
119
- } | {
120
- type: 'MCP.serversUpdate';
121
- data: {
122
- servers: unknown[];
123
- };
124
63
  } | {
125
64
  type: 'Debugger.paused';
126
65
  data: {
@@ -180,6 +119,14 @@ interface WebSocketClientMessage {
180
119
  data: Record<string, unknown>;
181
120
  }
182
121
  type WebSocketClientMessageType = 'Runtime.ping' | 'Chat.query' | 'Chat.approval' | 'Chat.askUserResponse' | 'Chat.planApprovalResponse' | 'Session.subscribe' | 'Session.unsubscribe' | 'Session.writeLease.acquire' | 'Session.writeLease.release' | 'Session.writeLease.force_acquire' | 'Debugger.resume' | 'Debugger.stepOver' | 'Debugger.stepInto' | 'Debugger.disable' | 'Debugger.setBreakpoint' | 'Debugger.setBreakpointsActive';
122
+ /**
123
+ * RFC-419 M2:键集完整性由两道防线保障,无需额外类型体操:
124
+ * ① 各 parser 用索引访问 `WebSocketClientDataByType['<type>']` 标注返回类型——映射漏某键
125
+ * 时对应 parser 的索引访问报错;
126
+ * ② dispatch default 的 `const _exhaustive: never = type` 穷尽断言——联合新增 type 漏写 case
127
+ * 时 `type` 不再收窄为 never 而报错(inbound-router.ts)。
128
+ * 显式对象类型(而非映射类型)为可读性取舍:一眼可见每个 type 的 data 形状。
129
+ */
183
130
  interface ChatQueryData {
184
131
  message: string;
185
132
  sessionId?: string;
@@ -342,6 +289,8 @@ declare class WebSocketManager extends TypedEventEmitter<WebSocketManagerEvents>
342
289
  private readonly clientIdentities;
343
290
  /** RFC-335 S4:client 断连触发点——InboundRouter 释放 write-lease。 */
344
291
  onClientDisconnected?: (clientId: string) => void;
292
+ /** RFC-419 M1:client Runtime.ping 触发点——InboundRouter 刷新 write-lease 心跳。 */
293
+ onClientPing?: (connectionId: string) => void;
345
294
  /**
346
295
  * RFC-354 R1:连接 id → 授权身份 id。未知连接回落到连接 id 本身(fail-safe:
347
296
  * 宁可退化成"仅该连接可写",也不要误放行)。
@@ -433,12 +382,12 @@ declare class DebugBridge extends TypedEventEmitter<DebugBridgeEvents> {
433
382
  * - releaseAllForClient:该 client 断连重置——唯一强清理端点。
434
383
  *
435
384
  * 实现主调点是 inbound-router:WS 显式 verb 派单 acquire/release,
436
- * ws.onclose / server-shutdown 走 releaseAllForClient。无 timer、无心跳。
437
- * 死租约终态:kill -9 / 网络断 下一 attach 收到 denied,
438
- * receive 明确报错(deny reason 含另一 clientId), a client 需
439
- * explicit `--force` override(后续 PR)或人工冻结老 client。
440
- * 这是 RFC-335 §S4 第一期在我 5 明文「不扩服务新 timer/state machine」
441
- * 的最低必要面——deny-early反馈 &amp;后面的 disconnect 释放点。
385
+ * ws.onclose / server-shutdown 走 releaseAllForClient
386
+ * RFC-381 M2 定义 + RFC-419 M1 接线:现已支持 heartbeat(sessionId,clientId) 刷新持有者
387
+ * 存活证明 + evictStale 周期驱逐死租约——WS Runtime.ping 触发 heartbeatAllForClient 刷新,
388
+ * CodingService 定时器周期调 evictStale 驱逐超 staleAfterMs 未心跳的死租约。
389
+ * 死租约终态:kill -9 / 网络断 心跳停止刷新 超时被 evictStale 驱逐,或下一 attach
390
+ * 收到 denied(deny reason 含另一 clientId),亦可 explicit `force_acquire` 人工接管。
442
391
  */
443
392
  interface WriteLeaseManager {
444
393
  /** 申请 sessionId 的唯一写权。返回结果不抛错:denied/acquired 当事儿类型。 */
@@ -447,6 +396,12 @@ interface WriteLeaseManager {
447
396
  release(sessionId: string, clientId: string): boolean;
448
397
  /** 清理某个 client 名下的所有写租约(断连清理点)。返回被释放的 sessionId 列表。 */
449
398
  releaseAllForClient(clientId: string): string[];
399
+ /**
400
+ * RFC-419 M1:刷新某 client 名下**全部持有**租约的心跳(WS ping 触发)。对称于
401
+ * `releaseAllForClient`——遍历 owners,对该 clientId 持有的每个 sessionId 刷新心跳。
402
+ * 返回被刷新的 sessionId 列表。
403
+ */
404
+ heartbeatAllForClient(clientId: string): string[];
450
405
  /** ownerOf:debug/UI 需要现处 leaseOwner。 */
451
406
  ownerOf(sessionId: string): string | undefined;
452
407
  /** canClientWrite(sessionId, clientId):Chat.query/Chat.* 的前置校验。 */
@@ -542,7 +497,9 @@ declare class CodingService {
542
497
  private readonly bridges;
543
498
  private readonly traceBridges;
544
499
  readonly router: InboundRouter;
545
- private started;
500
+ private state;
501
+ /** RFC-419 M1:周期驱逐死租约(kill -9 后停跳);start() 成功后启动,stop() 清理。 */
502
+ private evictTimer?;
546
503
  readonly bridge: DebugBridge | null;
547
504
  readonly ws: WebSocketManager;
548
505
  get httpServer(): Server;
@@ -619,7 +576,7 @@ declare class EventBridge {
619
576
  //#endregion
620
577
  //#region src/session-event-wire.d.ts
621
578
  /** 投影 + 脱敏 + 包装为 WS `Session.event`。projector 为调用方持有的 per-session 累加器。 */
622
- declare function encodeSessionEvent(event: AgentSessionEvent, projector: ProjectorState): WebSocketMessage[];
579
+ declare function encodeSessionEvent(event: AgentSessionEvent, projector: ProjectorState, ctx?: ProjectCtx): WebSocketMessage[];
623
580
  //#endregion
624
581
  //#region src/persistenced-app.d.ts
625
582
  interface PersistencedOptions {
@@ -641,13 +598,14 @@ declare const PERSISTENCED_DEFAULT_PORT = 3001;
641
598
  /**
642
599
  * 启动 persistenced 独立服务。
643
600
  *
644
- * 返回 { app, server, host: StorageHost } 供测试注入/优雅退出。
601
+ * 返回 { app, server, host: StorageHost, url, stop } 供测试注入/优雅退出。
645
602
  */
646
603
  declare function startPersistenced(options: PersistencedOptions): Promise<{
647
604
  app: Hono;
648
605
  server: Server;
649
606
  host: StorageHost;
650
607
  url: string;
608
+ stop: () => Promise<void>;
651
609
  }>;
652
610
  //#endregion
653
611
  //#region src/event-bus.d.ts
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","names":[],"sources":["../src/message-serializer.ts","../src/types.ts","../src/session-event-log.ts","../src/websocket-manager.ts","../src/debug-bridge.ts","../src/write-lease-manager.ts","../src/inbound-router.ts","../src/coding-service.ts","../src/event-bridge.ts","../src/session-event-wire.ts","../src/persistenced-app.ts","../src/event-bus.ts"],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","names":[],"sources":["../src/message-serializer.ts","../src/types.ts","../src/session-event-log.ts","../src/websocket-manager.ts","../src/debug-bridge.ts","../src/write-lease-manager.ts","../src/inbound-router.ts","../src/coding-service.ts","../src/event-bridge.ts","../src/session-event-wire.ts","../src/persistenced-app.ts","../src/event-bus.ts"],"mappings":"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"}