cueline 0.3.1 → 0.4.0
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/.claude-plugin/plugin.json +1 -1
- package/.codex-plugin/plugin.json +1 -1
- package/CHANGELOG.md +53 -0
- package/README.ja.md +8 -8
- package/README.ko.md +8 -8
- package/README.md +25 -8
- package/README.zh-CN.md +8 -8
- package/README.zh-TW.md +8 -8
- package/dist/src/api-controller-handoff.d.ts +1 -1
- package/dist/src/api-controller-handoff.js +60 -7
- package/dist/src/api-controller-handoff.js.map +1 -1
- package/dist/src/browser/browser-adapter.d.ts +22 -0
- package/dist/src/browser/codex-iab/chatgpt-client.js +95 -0
- package/dist/src/browser/codex-iab/chatgpt-client.js.map +1 -1
- package/dist/src/cli/main.js +29 -3
- package/dist/src/cli/main.js.map +1 -1
- package/dist/src/core/controller-loop.js +68 -4
- package/dist/src/core/controller-loop.js.map +1 -1
- package/dist/src/core/run-status.d.ts +1 -1
- package/dist/src/core/run-status.js +55 -13
- package/dist/src/core/run-status.js.map +1 -1
- package/dist/src/core/state-machine.d.ts +1 -0
- package/dist/src/core/state-machine.js +6 -0
- package/dist/src/core/state-machine.js.map +1 -1
- package/dist/src/core/submitted-turn-recovery.d.ts +4 -0
- package/dist/src/core/submitted-turn-recovery.js +27 -0
- package/dist/src/core/submitted-turn-recovery.js.map +1 -0
- package/dist/src/diagnostics/run-doctor.js +9 -1
- package/dist/src/diagnostics/run-doctor.js.map +1 -1
- package/dist/src/mcp/server.d.ts +10 -0
- package/dist/src/mcp/server.js +520 -0
- package/dist/src/mcp/server.js.map +1 -0
- package/dist/src/version.d.ts +1 -1
- package/dist/src/version.js +1 -1
- package/docs/state-and-recovery.md +4 -1
- package/package.json +1 -1
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "cueline",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.4.0",
|
|
4
4
|
"description": "Use a ChatGPT web conversation as the text controller for durable local advice or explicitly claimed work executed by the current Codex.",
|
|
5
5
|
"author": {
|
|
6
6
|
"name": "CueLine contributors"
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "cueline",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.4.0",
|
|
4
4
|
"description": "Use a ChatGPT web conversation as the text controller for durable local advice or explicitly claimed work executed by the current Codex.",
|
|
5
5
|
"author": {
|
|
6
6
|
"name": "CueLine contributors"
|
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,58 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 0.4.0 - 2026-07-18
|
|
4
|
+
|
|
5
|
+
### Added
|
|
6
|
+
|
|
7
|
+
- `cueline mcp serve`: a Model Context Protocol (MCP) stdio server exposing
|
|
8
|
+
CueLine's durable-run surface as seven tools — `cueline_start_run`,
|
|
9
|
+
`cueline_continue_run`, `cueline_run_status`, `cueline_run_doctor`,
|
|
10
|
+
`cueline_claim_caller_job`, `cueline_start_caller_job`, and
|
|
11
|
+
`cueline_list_runs` — so MCP clients (Claude Code, Codex, Gemini CLI, and
|
|
12
|
+
any other MCP host) can drive runs without shelling out to the CLI. The
|
|
13
|
+
JSON-RPC 2.0 transport is hand-rolled; CueLine keeps zero runtime npm
|
|
14
|
+
dependencies. Tool results return the same bounded evidence as the
|
|
15
|
+
programmatic API, never raw transcripts. Process execution still requires
|
|
16
|
+
explicit `allowProcessExecution: true` in the same call — the MCP layer
|
|
17
|
+
never defaults it on — and caller work keeps the existing stable
|
|
18
|
+
`callerId`, claim-ID, and fencing-token contract.
|
|
19
|
+
|
|
20
|
+
### Verification
|
|
21
|
+
|
|
22
|
+
- MCP integration tests covering the initialize handshake, tools listing,
|
|
23
|
+
per-tool happy paths, malformed JSON-RPC rejection, the
|
|
24
|
+
`allowProcessExecution` refusal case, and graceful shutdown; a live stdio
|
|
25
|
+
smoke of `cueline mcp serve`; TypeScript typecheck; and 552/552 tests.
|
|
26
|
+
|
|
27
|
+
## 0.3.2 - 2026-07-18
|
|
28
|
+
|
|
29
|
+
### Fixed
|
|
30
|
+
|
|
31
|
+
- Recover wedged `submitted` controller turns after a restart. When durable
|
|
32
|
+
state records a submission as `submitted` but a fresh hydrated observation
|
|
33
|
+
of the exact conversation shows the user-message count unchanged from the
|
|
34
|
+
pre-send baseline, the round's user message absent, and the controller not
|
|
35
|
+
answering, CueLine now reclassifies the submission as definitely not sent,
|
|
36
|
+
abandons the old request, and creates exactly one retry recording
|
|
37
|
+
`retryOfRequestId` — never a duplicate send, never two pending turns.
|
|
38
|
+
- Never classify from an unhydrated conversation read: reopening a
|
|
39
|
+
conversation briefly reports zero messages before hydration completes, and
|
|
40
|
+
recovery now waits past that window and keeps refusing while observation
|
|
41
|
+
is ambiguous (count increased, count unknown, controller answering).
|
|
42
|
+
- Scope stale reconciliation data to its own round in `run status` output so
|
|
43
|
+
an old round's not-sent recovery can no longer masquerade as the current
|
|
44
|
+
round's reconciliation.
|
|
45
|
+
- Surface the wedge in `run doctor` as the stable finding
|
|
46
|
+
`SUBMITTED_TURN_RECOVERY_REQUIRED` with `safeNextAction`
|
|
47
|
+
`recover_submitted_turn` instead of an indefinite observe loop.
|
|
48
|
+
|
|
49
|
+
### Verification
|
|
50
|
+
|
|
51
|
+
- Red/green regression fixture reproducing the live wedged run (submitted
|
|
52
|
+
state, unchanged baseline of 50 user messages, absent round message, idle
|
|
53
|
+
controller), five fail-closed negative cases, a reentry case proving no
|
|
54
|
+
second pending turn, TypeScript typecheck, and 543/543 tests.
|
|
55
|
+
|
|
3
56
|
## 0.3.1 - 2026-07-18
|
|
4
57
|
|
|
5
58
|
### Fixed
|
package/README.ja.md
CHANGED
|
@@ -22,12 +22,12 @@
|
|
|
22
22
|
|
|
23
23
|
CueLine は独立した実装で、**ランタイムの npm 依存はゼロ**です。Omnilane のラッパーではありません。
|
|
24
24
|
|
|
25
|
-
## 最新リリース:0.
|
|
25
|
+
## 最新リリース:0.4.0
|
|
26
26
|
|
|
27
|
-
-
|
|
28
|
-
-
|
|
27
|
+
- `cueline mcp serve` を追加:CueLine の永続 run インターフェースを 7 つのツール(`cueline_start_run`、`cueline_continue_run`、`cueline_run_status`、`cueline_run_doctor`、`cueline_claim_caller_job`、`cueline_start_caller_job`、`cueline_list_runs`)として公開する Model Context Protocol(MCP)stdio サーバーです。どの MCP ホストも CLI を介さず run を直接駆動できます。JSON-RPC 2.0 トランスポートは手書き実装で——CueLine はランタイム npm 依存ゼロを維持——ツールの結果は API と同じ有界な証拠を返し、process 実行は同一呼び出しでの明示的な `allowProcessExecution: true` を引き続き要求します。
|
|
28
|
+
- 0.3.2 の修正(ハイドレーション後の新しい観測証拠から詰まった `submitted` ターンを `retryOfRequestId` 付きのちょうど 1 回のリトライで復旧)も含みます。MCP ハンドシェイク/拒否の統合テスト、実際の stdio スモーク、552/552 テストで検証しました。
|
|
29
29
|
|
|
30
|
-
詳細は [changelog](CHANGELOG.md#
|
|
30
|
+
詳細は [changelog](CHANGELOG.md#040---2026-07-18) またはバージョン指定の [v0.4.0 release](https://github.com/Seraphim0916/cueline/releases/tag/v0.4.0) を参照してください。
|
|
31
31
|
|
|
32
32
|
## 1 回の実行は実際にどう進むか
|
|
33
33
|
|
|
@@ -68,15 +68,15 @@ ChatGPT Pro のサブスクリプションと、選択された Pro モデルは
|
|
|
68
68
|
npm レジストリからインストールします。
|
|
69
69
|
|
|
70
70
|
```bash
|
|
71
|
-
npm install -g cueline@0.
|
|
71
|
+
npm install -g cueline@0.4.0
|
|
72
72
|
cueline install
|
|
73
73
|
cueline doctor
|
|
74
74
|
```
|
|
75
75
|
|
|
76
|
-
フォールバックとして、[v0.
|
|
76
|
+
フォールバックとして、[v0.4.0 リリース](https://github.com/Seraphim0916/cueline/releases/tag/v0.4.0) のパッケージ済み tarball をインストールすることもできます。同じリリースに `.sha256` チェックサムも置いてあります。
|
|
77
77
|
|
|
78
78
|
```bash
|
|
79
|
-
npm install -g https://github.com/Seraphim0916/cueline/releases/download/v0.
|
|
79
|
+
npm install -g https://github.com/Seraphim0916/cueline/releases/download/v0.4.0/cueline-0.4.0.tgz
|
|
80
80
|
cueline install
|
|
81
81
|
cueline doctor
|
|
82
82
|
```
|
|
@@ -183,7 +183,7 @@ CLI はブラウザーを駆動しません。状態を書き込むコマンド
|
|
|
183
183
|
|
|
184
184
|
```console
|
|
185
185
|
$ cueline doctor
|
|
186
|
-
CueLine 0.
|
|
186
|
+
CueLine 0.4.0
|
|
187
187
|
status ok
|
|
188
188
|
node 22.14.0 ok
|
|
189
189
|
config /usr/local/lib/node_modules/cueline/config/routing.default.json valid
|
package/README.ko.md
CHANGED
|
@@ -22,12 +22,12 @@
|
|
|
22
22
|
|
|
23
23
|
CueLine은 독립적인 구현이며 **런타임 npm 의존성이 전혀 없습니다**. Omnilane을 감싼 래퍼가 아닙니다.
|
|
24
24
|
|
|
25
|
-
## 최신 릴리스: 0.
|
|
25
|
+
## 최신 릴리스: 0.4.0
|
|
26
26
|
|
|
27
|
-
-
|
|
28
|
-
-
|
|
27
|
+
- `cueline mcp serve` 추가: CueLine의 영속 run 인터페이스를 일곱 개의 도구(`cueline_start_run`, `cueline_continue_run`, `cueline_run_status`, `cueline_run_doctor`, `cueline_claim_caller_job`, `cueline_start_caller_job`, `cueline_list_runs`)로 노출하는 Model Context Protocol(MCP) stdio 서버입니다. 어떤 MCP 호스트든 CLI를 거치지 않고 run을 직접 구동할 수 있습니다. JSON-RPC 2.0 전송은 직접 구현했으며 — CueLine은 런타임 npm 의존성 제로를 유지합니다 — 도구 결과는 API와 동일한 제한된 증거를 반환하고, process 실행은 여전히 같은 호출에서 명시적인 `allowProcessExecution: true`를 요구합니다.
|
|
28
|
+
- 0.3.2의 수정(하이드레이션 후 새 관측 증거로 교착된 `submitted` 턴을 `retryOfRequestId`가 기록된 정확히 한 번의 재시도로 복구)도 포함합니다. MCP 핸드셰이크/거부 통합 테스트, 실제 stdio 스모크, 552/552 테스트로 검증했습니다.
|
|
29
29
|
|
|
30
|
-
전체 내용은 [changelog](CHANGELOG.md#
|
|
30
|
+
전체 내용은 [changelog](CHANGELOG.md#040---2026-07-18) 또는 버전이 지정된 [v0.4.0 release](https://github.com/Seraphim0916/cueline/releases/tag/v0.4.0)에서 확인할 수 있습니다.
|
|
31
31
|
|
|
32
32
|
## 실행 한 번은 실제로 이렇게 흘러갑니다
|
|
33
33
|
|
|
@@ -68,15 +68,15 @@ ChatGPT Pro 구독과 선택된 Pro 모델은 서로 다른 것입니다. 계정
|
|
|
68
68
|
npm 레지스트리에서 설치합니다:
|
|
69
69
|
|
|
70
70
|
```bash
|
|
71
|
-
npm install -g cueline@0.
|
|
71
|
+
npm install -g cueline@0.4.0
|
|
72
72
|
cueline install
|
|
73
73
|
cueline doctor
|
|
74
74
|
```
|
|
75
75
|
|
|
76
|
-
대안으로, [v0.
|
|
76
|
+
대안으로, [v0.4.0 릴리스](https://github.com/Seraphim0916/cueline/releases/tag/v0.4.0)의 패키지 tarball을 설치할 수도 있습니다. 같은 릴리스에 `.sha256` 체크섬도 함께 있습니다.
|
|
77
77
|
|
|
78
78
|
```bash
|
|
79
|
-
npm install -g https://github.com/Seraphim0916/cueline/releases/download/v0.
|
|
79
|
+
npm install -g https://github.com/Seraphim0916/cueline/releases/download/v0.4.0/cueline-0.4.0.tgz
|
|
80
80
|
cueline install
|
|
81
81
|
cueline doctor
|
|
82
82
|
```
|
|
@@ -183,7 +183,7 @@ CLI는 브라우저를 구동하지 않습니다. 상태를 쓰는 명령 전에
|
|
|
183
183
|
|
|
184
184
|
```console
|
|
185
185
|
$ cueline doctor
|
|
186
|
-
CueLine 0.
|
|
186
|
+
CueLine 0.4.0
|
|
187
187
|
status ok
|
|
188
188
|
node 22.14.0 ok
|
|
189
189
|
config /usr/local/lib/node_modules/cueline/config/routing.default.json valid
|
package/README.md
CHANGED
|
@@ -22,12 +22,12 @@ The web page never touches your machine and has no local tools. It only emits on
|
|
|
22
22
|
|
|
23
23
|
CueLine is a standalone implementation with **no runtime npm dependencies**. It is not a wrapper around Omnilane.
|
|
24
24
|
|
|
25
|
-
## Latest release: 0.
|
|
25
|
+
## Latest release: 0.4.0
|
|
26
26
|
|
|
27
|
-
-
|
|
28
|
-
-
|
|
27
|
+
- Added `cueline mcp serve`: a Model Context Protocol (MCP) stdio server exposing CueLine's durable-run surface as seven tools (`cueline_start_run`, `cueline_continue_run`, `cueline_run_status`, `cueline_run_doctor`, `cueline_claim_caller_job`, `cueline_start_caller_job`, `cueline_list_runs`), so any MCP host can drive runs without shelling out to the CLI. The JSON-RPC 2.0 transport is hand-rolled — CueLine still has zero runtime npm dependencies — results return the same bounded evidence as the API, and process execution still requires explicit `allowProcessExecution: true` in the same call.
|
|
28
|
+
- Includes the 0.3.2 fix that recovers wedged `submitted` controller turns from fresh hydrated evidence with exactly one `retryOfRequestId` retry. Verified with MCP handshake/refusal integration tests, a live stdio smoke, and 552/552 tests.
|
|
29
29
|
|
|
30
|
-
Read the complete [changelog](CHANGELOG.md#
|
|
30
|
+
Read the complete [changelog](CHANGELOG.md#040---2026-07-18) or the versioned [v0.4.0 release](https://github.com/Seraphim0916/cueline/releases/tag/v0.4.0).
|
|
31
31
|
|
|
32
32
|
## How a run actually goes
|
|
33
33
|
|
|
@@ -70,21 +70,38 @@ You need Node.js 22+, Codex with its built-in Browser, and — for the bundled d
|
|
|
70
70
|
Install from the npm registry:
|
|
71
71
|
|
|
72
72
|
```bash
|
|
73
|
-
npm install -g cueline@0.
|
|
73
|
+
npm install -g cueline@0.4.0
|
|
74
74
|
cueline install
|
|
75
75
|
cueline doctor
|
|
76
76
|
```
|
|
77
77
|
|
|
78
|
-
As a fallback, install the packaged tarball from the [v0.
|
|
78
|
+
As a fallback, install the packaged tarball from the [v0.4.0 release](https://github.com/Seraphim0916/cueline/releases/tag/v0.4.0), which also carries its `.sha256` checksum:
|
|
79
79
|
|
|
80
80
|
```bash
|
|
81
|
-
npm install -g https://github.com/Seraphim0916/cueline/releases/download/v0.
|
|
81
|
+
npm install -g https://github.com/Seraphim0916/cueline/releases/download/v0.4.0/cueline-0.4.0.tgz
|
|
82
82
|
cueline install
|
|
83
83
|
cueline doctor
|
|
84
84
|
```
|
|
85
85
|
|
|
86
86
|
`cueline install` creates one symlink, the bundled skill at `$CODEX_HOME/skills/cueline` (`~/.codex/skills/cueline` by default). It refuses to replace a path it does not own, and running it twice is a no-op. `cueline uninstall` removes that link and nothing else; a foreign path in its place is preserved, not deleted.
|
|
87
87
|
|
|
88
|
+
### MCP server
|
|
89
|
+
|
|
90
|
+
Configure an MCP client to launch CueLine over newline-delimited stdio:
|
|
91
|
+
|
|
92
|
+
```json
|
|
93
|
+
{
|
|
94
|
+
"mcpServers": {
|
|
95
|
+
"cueline": {
|
|
96
|
+
"command": "cueline",
|
|
97
|
+
"args": ["mcp", "serve"]
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
```
|
|
102
|
+
|
|
103
|
+
The zero-runtime-dependency server implements MCP `2025-11-25` and exposes start, continue, sanitized status/doctor/list, and fenced caller claim/start tools. It never returns raw transcripts. Process execution remains off unless that exact tool call sets both `executor: "process"` and `allowProcessExecution: true`; the first caller tool call binds that stdio session to one stable explicit `callerId`, followed by the exact claim ID and fencing token. Browser-advancing calls require the server host to expose CueLine's built-in Browser binding; a plain subprocess without it returns `IAB_BROWSER_MISSING`, while durable start/status/doctor/list and caller fencing remain available. Only JSON-safe API options cross the protocol; Browser, environment, clock, and abort bindings remain host-injected.
|
|
104
|
+
|
|
88
105
|
### Install from source
|
|
89
106
|
|
|
90
107
|
```bash
|
|
@@ -194,7 +211,7 @@ The CLI does not drive the browser. Run `cueline help` for every positional argu
|
|
|
194
211
|
|
|
195
212
|
```console
|
|
196
213
|
$ cueline doctor
|
|
197
|
-
CueLine 0.
|
|
214
|
+
CueLine 0.4.0
|
|
198
215
|
status ok
|
|
199
216
|
node 22.14.0 ok
|
|
200
217
|
config /usr/local/lib/node_modules/cueline/config/routing.default.json valid
|
package/README.zh-CN.md
CHANGED
|
@@ -22,12 +22,12 @@
|
|
|
22
22
|
|
|
23
23
|
CueLine 是独立实现,**没有任何运行时 npm 依赖**,也不是 Omnilane 的包装层。
|
|
24
24
|
|
|
25
|
-
## 最新版本:0.
|
|
25
|
+
## 最新版本:0.4.0
|
|
26
26
|
|
|
27
|
-
-
|
|
28
|
-
-
|
|
27
|
+
- 新增 `cueline mcp serve`:Model Context Protocol(MCP)stdio 服务器,把 CueLine 的持久 run 接口以七个工具对外(`cueline_start_run`、`cueline_continue_run`、`cueline_run_status`、`cueline_run_doctor`、`cueline_claim_caller_job`、`cueline_start_caller_job`、`cueline_list_runs`),任何 MCP 宿主都能直接驱动 run,不必再包一层 CLI。JSON-RPC 2.0 传输为手写实现——CueLine 仍保持零运行时 npm 依赖——工具返回与 API 相同的有界证据,process 执行仍要求同一次调用显式带 `allowProcessExecution: true`。
|
|
28
|
+
- 包含 0.3.2 的修复:以水合后的全新观察证据恢复卡死的 `submitted` 控制器回合,恰好一次带 `retryOfRequestId` 的重试。以 MCP 握手/拒收集成测试、真实 stdio 冒烟测试,加上 552/552 测试验证。
|
|
29
29
|
|
|
30
|
-
完整内容请查看 [changelog](CHANGELOG.md#
|
|
30
|
+
完整内容请查看 [changelog](CHANGELOG.md#040---2026-07-18) 或版本化的 [v0.4.0 release](https://github.com/Seraphim0916/cueline/releases/tag/v0.4.0)。
|
|
31
31
|
|
|
32
32
|
## 一次运行实际是怎么走的
|
|
33
33
|
|
|
@@ -68,15 +68,15 @@ ChatGPT Pro 订阅套餐与“选定的 Pro 模型”是两回事。账号或个
|
|
|
68
68
|
从 npm registry 安装:
|
|
69
69
|
|
|
70
70
|
```bash
|
|
71
|
-
npm install -g cueline@0.
|
|
71
|
+
npm install -g cueline@0.4.0
|
|
72
72
|
cueline install
|
|
73
73
|
cueline doctor
|
|
74
74
|
```
|
|
75
75
|
|
|
76
|
-
作为后备,也可以安装 [v0.
|
|
76
|
+
作为后备,也可以安装 [v0.4.0 release](https://github.com/Seraphim0916/cueline/releases/tag/v0.4.0) 上的打包 tarball,该 release 同时附带它的 `.sha256` 校验值:
|
|
77
77
|
|
|
78
78
|
```bash
|
|
79
|
-
npm install -g https://github.com/Seraphim0916/cueline/releases/download/v0.
|
|
79
|
+
npm install -g https://github.com/Seraphim0916/cueline/releases/download/v0.4.0/cueline-0.4.0.tgz
|
|
80
80
|
cueline install
|
|
81
81
|
cueline doctor
|
|
82
82
|
```
|
|
@@ -185,7 +185,7 @@ CLI 不驱动浏览器。执行写入状态的命令前,先用 `cueline help`
|
|
|
185
185
|
|
|
186
186
|
```console
|
|
187
187
|
$ cueline doctor
|
|
188
|
-
CueLine 0.
|
|
188
|
+
CueLine 0.4.0
|
|
189
189
|
status ok
|
|
190
190
|
node 22.14.0 ok
|
|
191
191
|
config /usr/local/lib/node_modules/cueline/config/routing.default.json valid
|
package/README.zh-TW.md
CHANGED
|
@@ -22,12 +22,12 @@
|
|
|
22
22
|
|
|
23
23
|
CueLine 是獨立實作,**沒有任何 runtime npm 相依套件**,也不是 Omnilane 的包裝層。
|
|
24
24
|
|
|
25
|
-
## 最新版本:0.
|
|
25
|
+
## 最新版本:0.4.0
|
|
26
26
|
|
|
27
|
-
-
|
|
28
|
-
-
|
|
27
|
+
- 新增 `cueline mcp serve`:Model Context Protocol(MCP)stdio 伺服器,把 CueLine 的持久 run 介面以七個工具對外(`cueline_start_run`、`cueline_continue_run`、`cueline_run_status`、`cueline_run_doctor`、`cueline_claim_caller_job`、`cueline_start_caller_job`、`cueline_list_runs`),任何 MCP 宿主都能直接驅動 run,不必再包 CLI。JSON-RPC 2.0 傳輸為手刻——CueLine 仍維持零執行期 npm 依賴——工具回傳與 API 相同的有界證據,process 執行仍要求同一次呼叫明確帶 `allowProcessExecution: true`。
|
|
28
|
+
- 內含 0.3.2 的修復:以水合後的全新觀察證據復原卡死的 `submitted` 控制器回合,恰一次帶 `retryOfRequestId` 的重試。以 MCP 握手/拒收整合測試、真實 stdio 冒煙測試,加上 552/552 測試驗證。
|
|
29
29
|
|
|
30
|
-
完整內容請看 [changelog](CHANGELOG.md#
|
|
30
|
+
完整內容請看 [changelog](CHANGELOG.md#040---2026-07-18) 或版本化的 [v0.4.0 release](https://github.com/Seraphim0916/cueline/releases/tag/v0.4.0)。
|
|
31
31
|
|
|
32
32
|
## 一次執行實際上怎麼跑
|
|
33
33
|
|
|
@@ -68,15 +68,15 @@ ChatGPT Pro 訂閱方案與「選定的 Pro 模型」是兩回事。帳號或個
|
|
|
68
68
|
從 npm registry 安裝:
|
|
69
69
|
|
|
70
70
|
```bash
|
|
71
|
-
npm install -g cueline@0.
|
|
71
|
+
npm install -g cueline@0.4.0
|
|
72
72
|
cueline install
|
|
73
73
|
cueline doctor
|
|
74
74
|
```
|
|
75
75
|
|
|
76
|
-
作為備援,也可以安裝 [v0.
|
|
76
|
+
作為備援,也可以安裝 [v0.4.0 release](https://github.com/Seraphim0916/cueline/releases/tag/v0.4.0) 上的打包 tarball,該 release 同時附上它的 `.sha256` 校驗碼:
|
|
77
77
|
|
|
78
78
|
```bash
|
|
79
|
-
npm install -g https://github.com/Seraphim0916/cueline/releases/download/v0.
|
|
79
|
+
npm install -g https://github.com/Seraphim0916/cueline/releases/download/v0.4.0/cueline-0.4.0.tgz
|
|
80
80
|
cueline install
|
|
81
81
|
cueline doctor
|
|
82
82
|
```
|
|
@@ -194,7 +194,7 @@ CLI 不驅動瀏覽器。執行寫入狀態的命令前,先用 `cueline help`
|
|
|
194
194
|
|
|
195
195
|
```console
|
|
196
196
|
$ cueline doctor
|
|
197
|
-
CueLine 0.
|
|
197
|
+
CueLine 0.4.0
|
|
198
198
|
status ok
|
|
199
199
|
node 22.14.0 ok
|
|
200
200
|
config /usr/local/lib/node_modules/cueline/config/routing.default.json valid
|
|
@@ -3,7 +3,7 @@ export declare function confirmManualControllerSubmission(runId: string, options
|
|
|
3
3
|
requestId: string;
|
|
4
4
|
conversationUrl?: string;
|
|
5
5
|
}): Promise<ManualControllerSubmissionConfirmation>;
|
|
6
|
-
export declare function confirmControllerTurnNotSent(runId: string, options: Pick<CueLineRuntimeOptions, "home" | "environment" | "now"> & {
|
|
6
|
+
export declare function confirmControllerTurnNotSent(runId: string, options: Pick<CueLineRuntimeOptions, "home" | "environment" | "now" | "browser"> & {
|
|
7
7
|
requestId: string;
|
|
8
8
|
conversationUrl?: string;
|
|
9
9
|
}): Promise<ControllerNotSentConfirmation>;
|
|
@@ -8,6 +8,7 @@ import { JobStatusStore } from "./jobs/status.js";
|
|
|
8
8
|
import { defaultCueLineHome } from "./state/paths.js";
|
|
9
9
|
import { readRuntimeLease, retireDeadRuntimeLease, RuntimeLease, } from "./state/runtime-lease.js";
|
|
10
10
|
import { readAuthoritativeRunEvents } from "./state/store.js";
|
|
11
|
+
import { isDefinitelyNotSentObservation, isSubmittedTurnRecoveryCandidate, } from "./core/submitted-turn-recovery.js";
|
|
11
12
|
export async function confirmManualControllerSubmission(runId, options) {
|
|
12
13
|
const environment = options.environment ?? runtimeEnvironment();
|
|
13
14
|
const home = options.home ?? defaultCueLineHome(environment);
|
|
@@ -148,10 +149,19 @@ export async function confirmControllerTurnNotSent(runId, options) {
|
|
|
148
149
|
if ((state.pendingControllerTurns ?? []).length !== 1) {
|
|
149
150
|
throw new CueLineError("OTHER_CONTROLLER_TURNS_PENDING", "Operator-confirmed not-sent recovery requires exactly one pending controller turn.");
|
|
150
151
|
}
|
|
151
|
-
|
|
152
|
+
const exactAmbiguousFailure = turn.submissionState !== "possibly_sent" ||
|
|
152
153
|
state.lastFailure?.code !== "CONTROLLER_SUBMISSION_AMBIGUOUS" ||
|
|
153
|
-
state.lastFailure.requestId !== turn.requestId
|
|
154
|
-
|
|
154
|
+
state.lastFailure.requestId !== turn.requestId
|
|
155
|
+
? false
|
|
156
|
+
: true;
|
|
157
|
+
const suppliedConversationUrl = options.conversationUrl;
|
|
158
|
+
const knownConversationUrl = state.conversationUrl ?? turn.conversationUrl;
|
|
159
|
+
const candidateConversationUrl = knownConversationUrl ?? suppliedConversationUrl;
|
|
160
|
+
const evidenceGatedSubmittedTurn = options.browser !== undefined &&
|
|
161
|
+
candidateConversationUrl !== undefined &&
|
|
162
|
+
isSubmittedTurnRecoveryCandidate(turn, candidateConversationUrl);
|
|
163
|
+
if (!exactAmbiguousFailure && !evidenceGatedSubmittedTurn) {
|
|
164
|
+
throw new CueLineError("CONTROLLER_NOT_SENT_STATE_INVALID", "Not-sent recovery requires either the exact ambiguous submission failure or a fresh evidence-gated submitted turn.");
|
|
155
165
|
}
|
|
156
166
|
if (turn.retryOfRequestId !== undefined && turn.retryOfRequestId !== null) {
|
|
157
167
|
throw new CueLineError("CONTROLLER_NOT_SENT_RETRY_EXHAUSTED", "The pending turn is already the one authorized not-sent retry; refusing another retry.");
|
|
@@ -159,8 +169,6 @@ export async function confirmControllerTurnNotSent(runId, options) {
|
|
|
159
169
|
if (turn.manualSendConfirmed) {
|
|
160
170
|
throw new CueLineError("CONTROLLER_RECONCILIATION_CONFIRMATION_CONFLICT", "The turn is already operator-confirmed as sent; it cannot also be confirmed not sent.");
|
|
161
171
|
}
|
|
162
|
-
const suppliedConversationUrl = options.conversationUrl;
|
|
163
|
-
const knownConversationUrl = state.conversationUrl ?? turn.conversationUrl;
|
|
164
172
|
if (knownConversationUrl === null && suppliedConversationUrl === undefined) {
|
|
165
173
|
throw new CueLineError("CONTROLLER_RECONCILIATION_URL_REQUIRED", "Operator-confirmed not-sent recovery requires the exact ChatGPT conversation URL.");
|
|
166
174
|
}
|
|
@@ -202,6 +210,31 @@ export async function confirmControllerTurnNotSent(runId, options) {
|
|
|
202
210
|
throw new CueLineError("CONTROLLER_RECONCILIATION_SUPERSEDED", "A command for this request or the same/newer controller round was already accepted.");
|
|
203
211
|
}
|
|
204
212
|
}
|
|
213
|
+
let submittedEvidence;
|
|
214
|
+
if (evidenceGatedSubmittedTurn) {
|
|
215
|
+
const browser = options.browser;
|
|
216
|
+
if (browser.observeSubmittedTurn === undefined) {
|
|
217
|
+
throw new CueLineError("CONTROLLER_NOT_SENT_EVIDENCE_REQUIRED", "The normally submitted turn requires a fresh read-only Browser observation before it can be confirmed not sent.");
|
|
218
|
+
}
|
|
219
|
+
const observation = await browser.observeSubmittedTurn({
|
|
220
|
+
runId,
|
|
221
|
+
round: turn.round,
|
|
222
|
+
requestId: turn.requestId,
|
|
223
|
+
prompt: turn.prompt,
|
|
224
|
+
baselineUserMessageCount: turn.baselineUserMessageCount,
|
|
225
|
+
...(turn.baselineAssistantMessageCount === null
|
|
226
|
+
? {}
|
|
227
|
+
: { baselineAssistantMessageCount: turn.baselineAssistantMessageCount }),
|
|
228
|
+
...(turn.composerPromptState === "attachment_ready"
|
|
229
|
+
? { attachmentPromptExpected: true }
|
|
230
|
+
: {}),
|
|
231
|
+
});
|
|
232
|
+
if (observation.status !== "definitely_not_sent" ||
|
|
233
|
+
!isDefinitelyNotSentObservation(turn, conversationUrl, observation.evidence)) {
|
|
234
|
+
throw new CueLineError("CONTROLLER_NOT_SENT_EVIDENCE_INSUFFICIENT", "The fresh conversation observation did not prove baseline-equal, request-absent, Pro-idle not-sent evidence.");
|
|
235
|
+
}
|
|
236
|
+
submittedEvidence = observation.evidence;
|
|
237
|
+
}
|
|
205
238
|
const derivedBaselineUserMessageCount = turn.baselineUserMessageCount ??
|
|
206
239
|
events.filter((event) => {
|
|
207
240
|
if (event.type !== "controller_turn_submitted")
|
|
@@ -221,7 +254,17 @@ export async function confirmControllerTurnNotSent(runId, options) {
|
|
|
221
254
|
conversation_url: conversationUrl,
|
|
222
255
|
selected_model_label: turn.selectedModelLabel,
|
|
223
256
|
baseline_user_message_count: derivedBaselineUserMessageCount,
|
|
224
|
-
|
|
257
|
+
...(submittedEvidence === undefined
|
|
258
|
+
? { operator_confirmation: true }
|
|
259
|
+
: {
|
|
260
|
+
observed_user_message_count: submittedEvidence.observedUserMessageCount,
|
|
261
|
+
request_message_found: false,
|
|
262
|
+
is_answering: false,
|
|
263
|
+
page_hydrated: true,
|
|
264
|
+
submission_state: "definitely_not_sent",
|
|
265
|
+
confirmation_source: "fresh_read_only_observation",
|
|
266
|
+
operator_confirmation: true,
|
|
267
|
+
}),
|
|
225
268
|
});
|
|
226
269
|
}
|
|
227
270
|
if ((store.state.pendingControllerTurns ?? []).some((candidate) => candidate.requestId === turn.requestId)) {
|
|
@@ -234,7 +277,17 @@ export async function confirmControllerTurnNotSent(runId, options) {
|
|
|
234
277
|
conversation_url: conversationUrl,
|
|
235
278
|
selected_model_label: turn.selectedModelLabel,
|
|
236
279
|
baseline_user_message_count: derivedBaselineUserMessageCount,
|
|
237
|
-
|
|
280
|
+
...(submittedEvidence === undefined
|
|
281
|
+
? { operator_confirmation: true }
|
|
282
|
+
: {
|
|
283
|
+
observed_user_message_count: submittedEvidence.observedUserMessageCount,
|
|
284
|
+
request_message_found: false,
|
|
285
|
+
is_answering: false,
|
|
286
|
+
page_hydrated: true,
|
|
287
|
+
submission_state: "definitely_not_sent",
|
|
288
|
+
confirmation_source: "fresh_read_only_observation",
|
|
289
|
+
operator_confirmation: true,
|
|
290
|
+
}),
|
|
238
291
|
});
|
|
239
292
|
}
|
|
240
293
|
await store.snapshot();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api-controller-handoff.js","sourceRoot":"","sources":["../../src/api-controller-handoff.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"api-controller-handoff.js","sourceRoot":"","sources":["../../src/api-controller-handoff.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,6 +6,7 @@ export interface BrowserTurnInput {
|
|
|
6
6
|
repairAttempt?: number;
|
|
7
7
|
manualSendConfirmed?: boolean;
|
|
8
8
|
attachmentPromptExpected?: boolean;
|
|
9
|
+
baselineUserMessageCount?: number;
|
|
9
10
|
baselineAssistantMessageCount?: number;
|
|
10
11
|
notSentRecovery?: {
|
|
11
12
|
abandonedRequestId: string;
|
|
@@ -21,6 +22,25 @@ export interface ControllerTurn {
|
|
|
21
22
|
title?: string;
|
|
22
23
|
model?: ControllerModelEvidence;
|
|
23
24
|
}
|
|
25
|
+
export interface BrowserSubmittedTurnEvidence {
|
|
26
|
+
conversationUrl: string;
|
|
27
|
+
selectedModelLabel: string | null;
|
|
28
|
+
hydrated: boolean;
|
|
29
|
+
baselineUserMessageCount: number;
|
|
30
|
+
observedUserMessageCount: number | null;
|
|
31
|
+
requestMessageFound: boolean | null;
|
|
32
|
+
isAnswering: boolean | null;
|
|
33
|
+
}
|
|
34
|
+
export type BrowserSubmittedTurnObservation = {
|
|
35
|
+
status: "response";
|
|
36
|
+
turn: ControllerTurn;
|
|
37
|
+
} | {
|
|
38
|
+
status: "pending";
|
|
39
|
+
evidence?: BrowserSubmittedTurnEvidence;
|
|
40
|
+
} | {
|
|
41
|
+
status: "definitely_not_sent";
|
|
42
|
+
evidence: BrowserSubmittedTurnEvidence;
|
|
43
|
+
};
|
|
24
44
|
export interface ControllerModelEvidence {
|
|
25
45
|
provider: "chatgpt";
|
|
26
46
|
selectedLabel: string;
|
|
@@ -82,6 +102,8 @@ export interface BrowserAdapter {
|
|
|
82
102
|
submitTurn?(input: BrowserTurnInput, hooks?: BrowserTurnHooks): Promise<void>;
|
|
83
103
|
/** Observe the exact submitted turn once; undefined means Pro is not finished yet. */
|
|
84
104
|
observeTurn?(input: BrowserTurnInput): Promise<ControllerTurn | undefined>;
|
|
105
|
+
/** Observe a normally submitted turn without sending, including durable not-sent evidence. */
|
|
106
|
+
observeSubmittedTurn?(input: BrowserTurnInput): Promise<BrowserSubmittedTurnObservation>;
|
|
85
107
|
sendTurn(input: BrowserTurnInput, hooks?: BrowserTurnHooks): Promise<ControllerTurn>;
|
|
86
108
|
recoverTurn?(input: BrowserTurnInput): Promise<ControllerTurn>;
|
|
87
109
|
/** Archive one exact completed controller conversation. Implementations must never retry the archive click. */
|