cueline 0.1.7 → 0.2.1
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 +56 -0
- package/README.ja.md +77 -43
- package/README.ko.md +77 -43
- package/README.md +52 -70
- package/README.zh-CN.md +77 -43
- package/README.zh-TW.md +67 -41
- package/dist/src/api-contracts.d.ts +9 -0
- package/dist/src/api-controller-handoff.d.ts +5 -1
- package/dist/src/api-controller-handoff.js +148 -0
- package/dist/src/api-controller-handoff.js.map +1 -1
- package/dist/src/api.d.ts +9 -1
- package/dist/src/api.js +15 -2
- package/dist/src/api.js.map +1 -1
- package/dist/src/browser/browser-adapter.d.ts +26 -0
- package/dist/src/browser/codex-iab/bootstrap.d.ts +1 -0
- package/dist/src/browser/codex-iab/bootstrap.js +1 -0
- package/dist/src/browser/codex-iab/bootstrap.js.map +1 -1
- package/dist/src/browser/codex-iab/chatgpt-client.js +113 -21
- package/dist/src/browser/codex-iab/chatgpt-client.js.map +1 -1
- package/dist/src/cli/health-commands.js +74 -0
- package/dist/src/cli/health-commands.js.map +1 -1
- package/dist/src/cli/main.js +31 -10
- package/dist/src/cli/main.js.map +1 -1
- package/dist/src/cli/observation-commands.js +112 -1
- package/dist/src/cli/observation-commands.js.map +1 -1
- package/dist/src/cli/run-status-view.d.ts +8 -0
- package/dist/src/cli/run-status-view.js +9 -0
- package/dist/src/cli/run-status-view.js.map +1 -1
- package/dist/src/core/controller-evidence.d.ts +9 -0
- package/dist/src/core/controller-evidence.js +21 -0
- package/dist/src/core/controller-evidence.js.map +1 -0
- package/dist/src/core/controller-loop.d.ts +2 -1
- package/dist/src/core/controller-loop.js +83 -10
- package/dist/src/core/controller-loop.js.map +1 -1
- package/dist/src/core/controller-turn.d.ts +9 -1
- package/dist/src/core/controller-turn.js +98 -4
- package/dist/src/core/controller-turn.js.map +1 -1
- package/dist/src/core/controller-types.d.ts +2 -0
- package/dist/src/core/run-status.d.ts +9 -1
- package/dist/src/core/run-status.js +26 -0
- package/dist/src/core/run-status.js.map +1 -1
- package/dist/src/core/state-machine.d.ts +19 -1
- package/dist/src/core/state-machine.js +132 -1
- package/dist/src/core/state-machine.js.map +1 -1
- package/dist/src/observation/run-diff.d.ts +39 -0
- package/dist/src/observation/run-diff.js +67 -0
- package/dist/src/observation/run-diff.js.map +1 -0
- package/dist/src/observation/run-graph.d.ts +17 -0
- package/dist/src/observation/run-graph.js +77 -0
- package/dist/src/observation/run-graph.js.map +1 -0
- package/dist/src/observation/run-status-at.d.ts +41 -0
- package/dist/src/observation/run-status-at.js +65 -0
- package/dist/src/observation/run-status-at.js.map +1 -0
- package/dist/src/observation/run-timeline.js +2 -1
- package/dist/src/observation/run-timeline.js.map +1 -1
- package/dist/src/protocol/types.d.ts +4 -0
- package/dist/src/router/explain.d.ts +28 -0
- package/dist/src/router/explain.js +86 -0
- package/dist/src/router/explain.js.map +1 -0
- package/dist/src/router/resolver.d.ts +2 -1
- package/dist/src/router/resolver.js +3 -3
- package/dist/src/router/resolver.js.map +1 -1
- package/dist/src/version.d.ts +1 -1
- package/dist/src/version.js +1 -1
- package/docs/assets/README.md +3 -1
- package/docs/assets/cueline-architecture-en.svg +63 -0
- package/docs/assets/cueline-architecture-ja.svg +63 -0
- package/docs/assets/cueline-architecture-ko.svg +63 -0
- package/docs/assets/cueline-architecture-zh-CN.svg +63 -0
- package/docs/assets/cueline-architecture-zh-TW.svg +63 -0
- package/docs/assets/cueline-states-en.svg +50 -0
- package/docs/assets/cueline-states-ja.svg +48 -0
- package/docs/assets/cueline-states-ko.svg +48 -0
- package/docs/assets/cueline-states-zh-CN.svg +48 -0
- package/docs/assets/cueline-states-zh-TW.svg +48 -0
- package/docs/controller-protocol.md +6 -0
- package/docs/multi-model-routing.md +256 -0
- package/docs/runner-contract.md +3 -0
- package/docs/state-and-recovery.md +30 -0
- package/package.json +1 -1
package/README.zh-TW.md
CHANGED
|
@@ -5,6 +5,9 @@
|
|
|
5
5
|
|
|
6
6
|
<p align="center">
|
|
7
7
|
<a href="https://github.com/Seraphim0916/cueline/actions/workflows/ci.yml"><img alt="ci" src="https://github.com/Seraphim0916/cueline/actions/workflows/ci.yml/badge.svg"></a>
|
|
8
|
+
<a href="https://www.npmjs.com/package/cueline"><img alt="npm" src="https://img.shields.io/npm/v/cueline"></a>
|
|
9
|
+
<a href="package.json"><img alt="node" src="https://img.shields.io/node/v/cueline"></a>
|
|
10
|
+
<a href="LICENSE"><img alt="license" src="https://img.shields.io/npm/l/cueline"></a>
|
|
8
11
|
</p>
|
|
9
12
|
|
|
10
13
|
<p align="center">
|
|
@@ -15,16 +18,19 @@
|
|
|
15
18
|
|
|
16
19
|
那個網頁碰不到你的機器,也沒有本機工具。它每一輪只吐出文字控制指令。CueLine 預設把 caller 工作保存成待辦:`advise` 是協調式交接;`work` 則必須先建立持久 claim 並正式 start,才能開始修改。只有雙重明確授權 `process` executor 時,才會啟動已註冊的本機工作行程。
|
|
17
20
|
|
|
18
|
-
CueLine
|
|
21
|
+
<img alt="CueLine 架構:ChatGPT 網頁對話每輪發出一道文字指令,CueLine 驗證並記錄,目前的 Codex 執行獲准的本機工作。" src="docs/assets/cueline-architecture-zh-TW.svg" width="100%">
|
|
19
22
|
|
|
20
|
-
|
|
23
|
+
CueLine 是獨立實作,**沒有任何 runtime npm 相依套件**,也不是 Omnilane 的包裝層。
|
|
21
24
|
|
|
25
|
+
## 最新版本:0.2.0
|
|
26
|
+
|
|
27
|
+
- 新增四個唯讀可觀測性指令,並強化「確認未送出」的提交恢復;輸出維持 fail-closed 去敏感資訊,路由解釋也只發生在程序啟動前。
|
|
22
28
|
- 新增安全的 run 清單、doctor、watch、timeline、handoff、完整性驗證、協定 lint、瀏覽器診斷與 inspect 證據分頁。
|
|
23
29
|
- 強化分頁/按鈕證據、指令與路由上限、原子 job 狀態、私有持久資料、workdir 身分、runtime/取消紀錄,以及 CLI 去敏感資訊。
|
|
24
30
|
- 新增選用的 `complete` 後精確對話封存:點擊前有持久 fence,Pro 又開始回答或換頁就拒絕,進入含糊狀態後絕不重點。
|
|
25
|
-
- 完成
|
|
31
|
+
- 完成 479/479 測試與一次可丟棄的真實 ChatGPT Web Pro 驗收;主控自然完成、只封存一次,原本使用者對話完全未動。
|
|
26
32
|
|
|
27
|
-
完整內容請看 [changelog](CHANGELOG.md#
|
|
33
|
+
完整內容請看 [changelog](CHANGELOG.md#020---2026-07-16) 或版本化的 [v0.2.0 release](https://github.com/Seraphim0916/cueline/releases/tag/v0.2.0)。
|
|
28
34
|
|
|
29
35
|
## 一次執行實際上怎麼跑
|
|
30
36
|
|
|
@@ -32,6 +38,8 @@ CueLine 是獨立實作,**沒有任何 runtime npm 相依套件**,也不是
|
|
|
32
38
|
|
|
33
39
|
每一輪:CueLine 先把自己「即將問什麼」寫進紀錄,送出一份觀測(observation)到對話裡,之後再讀回**恰好一個** `<CueLineControl>` 封包。主控端從五個動作裡挑一個——`dispatch`、`wait`、`inspect`、`complete`、`blocked`——封包以外的任何文字都不會被執行。指令若寫錯 run、寫錯輪次,或工作定義有問題,會被退回去做有次數上限的修正,而不是靠猜。迴圈會在單次可靠送出後以 `awaiting_controller` 暫停,也會停在 caller 交接、`complete`、`blocked` 或輪數用完(預設 12 輪)。
|
|
34
40
|
|
|
41
|
+
主控指令另有 fail-closed 資源上限:每個封包 131,072 字元、每次 dispatch 最多 64 個工作、每次 wait 或 inspect 最多 256 個明確 job ID。這些檢查發生在註冊工作或啟動行程之前。
|
|
42
|
+
|
|
35
43
|
非預設的 `maxRounds` 會在建立 run 時固定,並跨所有無 owner 的暫停累計主控總輪數。之後續跑通常省略它、沿用持久值;若傳入不同數字,CueLine 會拒絕,不會偷偷重設或放寬預算。
|
|
36
44
|
|
|
37
45
|
`startCueLineRun` 與 `runCueLine` 都預設使用 `caller` executor。使用內建瀏覽器時,CueLine 只送一次、保存精確對話 URL,然後回傳 `awaiting_controller` 並釋放 runtime lease,不會讓單一工具呼叫卡著等 Pro 思考。之後的 `continueCueLineRun` 只做一次唯讀觀測;若仍未完成,就再次回傳 `awaiting_controller`,絕不重送。`advise` 派工回傳 `awaiting_caller`,沒有副作用 claim,需協調單一 session。`work` 派工回傳 `awaiting_caller_work`,在目前 Codex 呼叫 `claimCueLineCallerJob` 與 `startCueLineCallerJob` 前,絕對尚未開始本機修改。claim 綁定 run、job、task hash、絕對 workdir、canonical 目錄身分、caller identity 與 fencing token;本機工作只能使用它回傳的 `resolvedWorkdir`。已開始的工作不會自動重試,claim 逾期則成為 `ambiguous`。Pro 只提出與審查文字指令,沒有親自使用本機工具。
|
|
@@ -42,6 +50,12 @@ Process 模式必須同時指定 `executor: "process"` 與 `allowProcessExecutio
|
|
|
42
50
|
|
|
43
51
|
這是允許清單(allow-list),不是沙箱。已註冊的工作行程擁有跟 CueLine 行程本身相同的權限;`advise` 對應 Codex 的唯讀沙箱、`work` 對應 `workspace-write`,但你註冊了什麼,就等於你授權了什麼。
|
|
44
52
|
|
|
53
|
+
## 執行狀態
|
|
54
|
+
|
|
55
|
+
<img alt="CueLine 執行狀態:ready、awaiting_controller、awaiting_caller、awaiting_caller_work、complete、blocked、cancelled,以及每個狀態的意義。" src="docs/assets/cueline-states-zh-TW.svg" width="100%">
|
|
56
|
+
|
|
57
|
+
`cueline run status <run-id> --json` 回報持久狀態與 `safeNextAction`;`cueline run doctor <run-id> --json` 把同一份快照轉成穩定的 finding 代碼與一個安全的下一步。任何含糊情境——可能已送出的點擊、逾期的已啟動 claim、人工附件送出——CueLine 都會停下來要求明確 reconcile,而不是重送。完整恢復契約見 [state and recovery](docs/state-and-recovery.md)。
|
|
58
|
+
|
|
45
59
|
## 主控端必須是 Pro 模型
|
|
46
60
|
|
|
47
61
|
除非輸入框的模型選單顯示 `Pro`,否則 CueLine 拒絕送出。對話若停在別的模型,CueLine 會先把輸入框切成 `Pro`——這是它唯一被允許做的模型切換。在一次已驗證的實機執行中,它把 Instant 切成 Pro,回應回來的是 `gpt-5-6-pro`。
|
|
@@ -57,15 +71,15 @@ ChatGPT Pro 訂閱方案與「選定的 Pro 模型」是兩回事。帳號或個
|
|
|
57
71
|
從 npm registry 安裝:
|
|
58
72
|
|
|
59
73
|
```bash
|
|
60
|
-
npm install -g cueline@0.
|
|
74
|
+
npm install -g cueline@0.2.0
|
|
61
75
|
cueline install
|
|
62
76
|
cueline doctor
|
|
63
77
|
```
|
|
64
78
|
|
|
65
|
-
作為備援,也可以安裝 [v0.
|
|
79
|
+
作為備援,也可以安裝 [v0.2.0 release](https://github.com/Seraphim0916/cueline/releases/tag/v0.2.0) 上的打包 tarball,該 release 同時附上它的 `.sha256` 校驗碼:
|
|
66
80
|
|
|
67
81
|
```bash
|
|
68
|
-
npm install -g https://github.com/Seraphim0916/cueline/releases/download/v0.
|
|
82
|
+
npm install -g https://github.com/Seraphim0916/cueline/releases/download/v0.2.0/cueline-0.2.0.tgz
|
|
69
83
|
cueline install
|
|
70
84
|
cueline doctor
|
|
71
85
|
```
|
|
@@ -88,7 +102,7 @@ cueline doctor
|
|
|
88
102
|
接著,在 Codex 裡:
|
|
89
103
|
|
|
90
104
|
1. 用 Codex 的內建瀏覽器開啟 `https://chatgpt.com` 並登入。
|
|
91
|
-
2.
|
|
105
|
+
2. 讓你要當主控的那個對話保持選取狀態——該頁面就是主控端。若沒有已選取的分頁、且同時有多個相符的 ChatGPT 分頁,CueLine 會回傳 `IAB_CHATGPT_TAB_AMBIGUOUS`,而不是擅自挑第一個。它的輸入框必須停在 `Pro` 模型;若不是,CueLine 會替你選成 `Pro`,否則就拒絕送出。
|
|
92
106
|
3. 請 Codex 用 CueLine 處理這件事:*「用 CueLine,讓那個開著的 ChatGPT Pro 對話來指揮這項任務。」*
|
|
93
107
|
4. 留著回傳的 `runId`。中斷的執行要續跑,就靠它。
|
|
94
108
|
|
|
@@ -165,20 +179,25 @@ if (result.status === "complete") {
|
|
|
165
179
|
|
|
166
180
|
`verifyCueLineRun(runId)` 是唯讀完整性檢查,會核對建立 marker、event replay 與 authority fence、選用 snapshot、runtime lease 和 job status 證據;只回傳穩定 finding,不回傳持久 run 內容。
|
|
167
181
|
|
|
182
|
+
`confirmManualControllerSubmission(runId, …)` 與 `confirmControllerTurnNotSent(runId, …)` 是兩種 reconcile 確認的程式介面。兩者都只追加事件、可重複執行(冪等),也都不驅動瀏覽器、不重送任何東西。
|
|
183
|
+
|
|
168
184
|
在 Codex 的 runtime 裡,import `cueline api path` 印出的那個絕對路徑模組——那就是你安裝的那份套件建置出來的 API。
|
|
169
185
|
|
|
170
186
|
`startCueLineRun` 只建立持久 run 並回傳 `ready`;`runCueLine` 會建立並推進到持久 controller 觀測暫停、caller 交接或終態。續跑前先執行 `cueline run status <run-id> --json`。單一正常送出、非人工、具精確 URL、無 job/pending command/取消的 stale caller observer 可被 fencing 後唯讀恢復;其他 stale 狀態仍須正式接管。`caller_work_pending`、`caller_work_claimed`、`caller_work_running` 分別只允許 `claim_caller_work`、`start_caller_work`、`continue_caller_work`,主控的 `dispatch` 本身不代表本機工作已開始。CLI 的 `run status` 只輸出交接所需 metadata,不包含 task 內文、caller 身分、task hash、workdir 或 runtime owner ID;完成正式 claim 後,API 才會把精確 task 與 workdir 交給獲授權的 caller。
|
|
171
187
|
|
|
172
188
|
## CLI
|
|
173
189
|
|
|
174
|
-
CLI
|
|
190
|
+
CLI 不驅動瀏覽器。執行寫入狀態的命令前,先用 `cueline help` 核對完整參數。
|
|
175
191
|
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
192
|
+
| 分組 | 命令 | 效果 |
|
|
193
|
+
| --- | --- | --- |
|
|
194
|
+
| 檢視 | `doctor` · `routing` · `routing explain` · `jobs` · `runs` · `run status` · `run status-at` · `run diff` · `run doctor` · `run watch` · `run timeline` · `run graph` · `run verify` · `run handoff` · `protocol lint` · `api path` · `config path` | 唯讀 |
|
|
195
|
+
| 安裝 | `install` · `uninstall` | 只建立或移除套件擁有的 skill 連結 |
|
|
196
|
+
| 恢復 | `run reconcile` · `run takeover` · `run reconcile-runtime` · `run cancel` / `run stop` · `job cancel` | 追加稽核證據或修改持久 run/job 狀態 |
|
|
179
197
|
|
|
198
|
+
```console
|
|
180
199
|
$ cueline doctor
|
|
181
|
-
CueLine 0.
|
|
200
|
+
CueLine 0.2.0
|
|
182
201
|
status ok
|
|
183
202
|
node 22.14.0 ok
|
|
184
203
|
config /usr/local/lib/node_modules/cueline/config/routing.default.json valid
|
|
@@ -187,52 +206,45 @@ caller_ready yes
|
|
|
187
206
|
caller_lanes 1
|
|
188
207
|
process_available_lanes 1
|
|
189
208
|
|
|
190
|
-
$ cueline doctor --json
|
|
191
|
-
{"version":"0.1.7","status":"ok","node":{"version":"22.14.0","ok":true,"requirement":">=22"},...}
|
|
192
|
-
|
|
193
|
-
$ cueline api path
|
|
194
|
-
/usr/local/lib/node_modules/cueline/dist/src/api.js
|
|
195
|
-
|
|
196
209
|
$ cueline routing
|
|
197
210
|
default codex-default available
|
|
198
211
|
|
|
199
|
-
$ cueline routing --json
|
|
200
|
-
{"version":"0.1.7","availableLanes":1,"lanes":[{"name":"default","status":"available","selectedRunnerId":"codex-default"}],...}
|
|
201
|
-
|
|
202
|
-
$ cueline jobs
|
|
203
|
-
No jobs.
|
|
204
|
-
|
|
205
|
-
$ cueline runs
|
|
206
|
-
No runs.
|
|
207
|
-
|
|
208
212
|
$ cueline run status run_... --json
|
|
209
213
|
{"status":"running","executor":"caller","phase":"caller_jobs_pending","runtime":{"ownership":"missing"},...}
|
|
210
214
|
|
|
211
|
-
$ cueline run
|
|
212
|
-
{"
|
|
215
|
+
$ cueline run doctor run_... --json
|
|
216
|
+
{"outcome":"action_required","phase":"caller_jobs_pending","nextAction":"execute_caller_jobs",...}
|
|
213
217
|
|
|
214
|
-
$ cueline run
|
|
215
|
-
|
|
218
|
+
$ cueline run reconcile run_... --request-id msg_... --manual-send-confirmed --conversation-url https://chatgpt.com/c/...
|
|
219
|
+
run_...\tmsg_...\tconfirmed
|
|
216
220
|
|
|
217
221
|
$ cueline run cancel run_...
|
|
218
222
|
run_... requested affected_jobs=0
|
|
219
|
-
|
|
220
|
-
$ cueline config path
|
|
221
|
-
/usr/local/lib/node_modules/cueline/config/routing.default.json
|
|
222
|
-
|
|
223
|
-
$ cueline uninstall
|
|
224
|
-
CueLine skill removed: /Users/you/.codex/skills/cueline
|
|
225
223
|
```
|
|
226
224
|
|
|
227
225
|
Node 版本太舊、或沒有任何已啟用的 caller 通道時,`cueline doctor` 會以非零狀態結束。`process_available_lanes` 可以是 0 而不影響 caller 模式;只有明確選用 process executor 前才需要用 `cueline routing` 檢查 process 可用性。`cueline api path` 印出的就是 skill 會 import 的模組,所以用打包安裝時完全不需要 clone 原始碼。`cueline help` 會列出每個命令的精確語法,包括 `--json` 與人工 reconcile 的必要確認參數。
|
|
228
226
|
|
|
227
|
+
0.2.0 新增的四個可觀測性命令全部嚴格唯讀:`run status-at` 依單一精確事件序號重建去敏感的 run 狀態——「那個當下 CueLine 知道什麼」;`run diff` 逐欄比較兩份去敏感的 run 摘要,絕不含原始 prompt 或輸出;`run graph` 把去敏感的 timeline 條目畫成有界的 Mermaid 控制流程圖;`routing explain` 則在任何行程啟動前解釋通道選擇、可用性與淘汰原因,不洩漏 runner 參數(見 [multi-model routing](docs/multi-model-routing.md))。
|
|
228
|
+
|
|
229
|
+
實驗性的診斷命令各有專屬文件:
|
|
230
|
+
|
|
231
|
+
| 命令 | 用途 | 文件 |
|
|
232
|
+
| --- | --- | --- |
|
|
233
|
+
| `run doctor` | 把 run 快照轉成穩定 finding 代碼、有界證據與一個安全下一步,不寫入任何狀態 | [run-doctor](docs/experiments/run-doctor.md) |
|
|
234
|
+
| `run watch` | 以持久事件序號為游標,做有界、不佔 lease 的觀察 | [run-watch](docs/experiments/run-watch.md) |
|
|
235
|
+
| `protocol lint` | 離線驗證 Pro 封包,一次回報所有已知的契約修正 | [protocol-lint](docs/experiments/protocol-lint.md) |
|
|
236
|
+
| `run handoff` | 產出帶精確身分與絕對路徑的安全重啟包 | [run-handoff](docs/experiments/run-handoff.md) |
|
|
237
|
+
| `run timeline` | 去敏感、游標分頁的稽核視圖,不含原始事件內容 | [run-timeline](docs/experiments/run-timeline.md) |
|
|
238
|
+
|
|
229
239
|
只有 `run status` 明確顯示 stale owner 時才能用 `run takeover`。新鮮的 active heartbeat 會被拒絕;命令回傳 `next: continue` 或 `next: reconcile_runtime`,請照該值行動,不要自行猜測。
|
|
230
240
|
|
|
231
241
|
## 設定
|
|
232
242
|
|
|
233
243
|
`CUELINE_CONFIG` 用來指定路由設定檔;`CUELINE_HOME` 用來搬動本機狀態(預設 `~/.cueline`)。
|
|
234
244
|
|
|
235
|
-
Caller 模式不會啟動路由行程。只有同時選擇 `executor: "process"` 與 `allowProcessExecution: true` 時,內建的 `default` 通道才會以 `codex-default` 執行隔離的 `codex exec --ignore-user-config`;`advise` 用 `read-only`、`work` 用 `workspace-write
|
|
245
|
+
Caller 模式不會啟動路由行程。只有同時選擇 `executor: "process"` 與 `allowProcessExecution: true` 時,內建的 `default` 通道才會以 `codex-default` 執行隔離的 `codex exec --ignore-user-config`;`advise` 用 `read-only`、`work` 用 `workspace-write`。要註冊不同的 process worker,複製 [`config/routing.default.json`](config/routing.default.json)、加入你的候選項,再把 `CUELINE_CONFIG` 指過去。
|
|
246
|
+
|
|
247
|
+
要註冊多個對應不同模型的候選項,以及 advise 專用 wrapper 的範例,見 [multi-model routing](docs/multi-model-routing.md)。
|
|
236
248
|
|
|
237
249
|
狀態放在 `CUELINE_HOME` 底下:
|
|
238
250
|
|
|
@@ -250,6 +262,10 @@ jobs/<job-id>.json 每個工作的執行證據
|
|
|
250
262
|
|
|
251
263
|
續跑只會接回完全相同的對話網址。ChatGPT 把長文字自動轉成附件時,CueLine 會辨識 `attachment_ready`,且最多只點一次;模糊點擊一律記為 `possibly_sent`,絕不補點或重送。只有實際可見、啟用且可操作的 Stop 按鈕才表示 Pro 仍在回答;隱藏殘留按鈕不會擋住完成回覆。若操作者手動送出附件,用 `cueline run reconcile RUN_ID --request-id REQUEST_ID --manual-send-confirmed` 寫入正式確認;之後仍須通過完全相同的 conversation、Pro 證據與 protocol/run/round/request identity 才能唯讀接回。
|
|
252
264
|
|
|
265
|
+
相反方向的確認則處理「點擊確定沒送達」的情境:操作者親自檢視那個精確對話、確認訊息不存在後,用 `cueline run reconcile ... --not-sent-confirmed --conversation-url URL` 以只追加的方式放棄舊的 request 身分,並授權恰好一次同 prompt 重試(使用新的確定性 request ID)。兩個旗標互斥;若被放棄的訊息或其回應事後仍然出現,CueLine 會凍結該 run 交人工裁決,絕不接受或重送。
|
|
266
|
+
|
|
267
|
+
Pro 回答時絕不要打斷它,也不要用 `Answer now`、`Respond now`、`Stop` 或任何等效的加速控制。Pro 沒有本機工具,也不預設知道 repository 佈局或本機路徑。Caller 證據必須包含精確的代碼/錯誤識別字、相關程式碼摘錄與絕對本機路徑,並明確詢問 Pro 是否還需要更多本機證據。
|
|
268
|
+
|
|
253
269
|
送給主控的工作證據優先採用成功且非空的 stdout,全體共用 12,000 字元上限;完整 stdout/stderr 仍保留在本機 job status。若 Pro 接受 `inspect(job_ids)`,下一輪會先替指定 job 保留證據預算,再處理無關工作。
|
|
254
270
|
|
|
255
271
|
## 驗證
|
|
@@ -267,13 +283,23 @@ npm pack --dry-run
|
|
|
267
283
|
|
|
268
284
|
## 0.1 的限制
|
|
269
285
|
|
|
270
|
-
只支援文字控制命令。一次執行只對應一個對話。選成 `Pro` 是 CueLine 唯一會做的模型切換。支援 ChatGPT 自動把長文字轉成附件,但不支援主動上傳檔案、圖片、Deep Research、Projects 或 Apps。Caller `work` 必須經過明確 claim/start,長工作需 heartbeat;process 執行則要雙重明確授權。任何模糊送出或已啟動工作都不會被自動重試。
|
|
286
|
+
只支援文字控制命令。一次執行只對應一個對話。選成 `Pro` 是 CueLine 唯一會做的模型切換。支援 ChatGPT 自動把長文字轉成附件,但不支援主動上傳檔案、圖片、Deep Research、Projects 或 Apps。Caller `work` 必須經過明確 claim/start,長工作需 heartbeat;process 執行則要雙重明確授權。任何模糊送出或已啟動工作都不會被自動重試。macOS 是主要桌面目標、Linux 是 CI 目標;Windows 未驗證。adapter 依賴目前的 ChatGPT 網頁 UI,UI 改版會被明確浮現,絕不變成捏造的答案。
|
|
271
287
|
|
|
272
288
|
完整矩陣見 [compatibility](docs/compatibility.md)。
|
|
273
289
|
|
|
274
290
|
## 文件
|
|
275
291
|
|
|
276
|
-
|
|
292
|
+
| 文件 | 內容 |
|
|
293
|
+
| --- | --- |
|
|
294
|
+
| [architecture](docs/architecture.md) | 各元件如何組合、信任邊界在哪裡 |
|
|
295
|
+
| [controller protocol](docs/controller-protocol.md) | `<CueLineControl>` 封包、五個動作與修正規則 |
|
|
296
|
+
| [runner contract](docs/runner-contract.md) | 已註冊的 process worker 必須做與不得做的事 |
|
|
297
|
+
| [state and recovery](docs/state-and-recovery.md) | 持久狀態佈局、ownership 與每一條恢復路徑 |
|
|
298
|
+
| [multi-model routing](docs/multi-model-routing.md) | 如何註冊額外的 process worker,以及主控端實際看得到什麼 |
|
|
299
|
+
| [compatibility](docs/compatibility.md) | 支援的平台、runtime 與 UI 假設 |
|
|
300
|
+
| [provenance](docs/provenance.md) | 設計從哪裡來、它不是什麼 |
|
|
301
|
+
|
|
302
|
+
(以上皆為英文)
|
|
277
303
|
|
|
278
304
|
## 開發
|
|
279
305
|
|
|
@@ -14,6 +14,8 @@ export interface CueLineRuntimeOptions {
|
|
|
14
14
|
environment?: NodeJS.ProcessEnv;
|
|
15
15
|
defaultTimeoutMs?: number;
|
|
16
16
|
maxRounds?: number;
|
|
17
|
+
/** Maximum raw characters from one job evidence field exposed to the controller. */
|
|
18
|
+
maxJobEvidenceChars?: number;
|
|
17
19
|
maxRepairAttempts?: number;
|
|
18
20
|
now?: () => Date;
|
|
19
21
|
signal?: AbortSignal;
|
|
@@ -87,6 +89,13 @@ export interface ManualControllerSubmissionConfirmation {
|
|
|
87
89
|
conversationUrl: string;
|
|
88
90
|
outcome: "confirmed" | "already_confirmed";
|
|
89
91
|
}
|
|
92
|
+
export interface ControllerNotSentConfirmation {
|
|
93
|
+
runId: string;
|
|
94
|
+
requestId: string;
|
|
95
|
+
conversationUrl: string;
|
|
96
|
+
promptHash: string;
|
|
97
|
+
outcome: "confirmed" | "already_confirmed";
|
|
98
|
+
}
|
|
90
99
|
export interface CueLineCallerJobResultInput {
|
|
91
100
|
status: JobResultStatus;
|
|
92
101
|
stdout?: string;
|
|
@@ -1,6 +1,10 @@
|
|
|
1
|
-
import type { CueLineCallerJobSubmissionOptions, CueLineCallerJobResultInput, CueLineCallerJobSubmissionResult, CueLineRuntimeOptions, ManualControllerSubmissionConfirmation } from "./api-contracts.js";
|
|
1
|
+
import type { CueLineCallerJobSubmissionOptions, CueLineCallerJobResultInput, CueLineCallerJobSubmissionResult, ControllerNotSentConfirmation, CueLineRuntimeOptions, ManualControllerSubmissionConfirmation } from "./api-contracts.js";
|
|
2
2
|
export declare function confirmManualControllerSubmission(runId: string, options: Pick<CueLineRuntimeOptions, "home" | "environment" | "now"> & {
|
|
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"> & {
|
|
7
|
+
requestId: string;
|
|
8
|
+
conversationUrl?: string;
|
|
9
|
+
}): Promise<ControllerNotSentConfirmation>;
|
|
6
10
|
export declare function submitCueLineCallerJobResult(runId: string, jobId: string, input: CueLineCallerJobResultInput, options?: CueLineCallerJobSubmissionOptions): Promise<CueLineCallerJobSubmissionResult>;
|
|
@@ -102,6 +102,154 @@ export async function confirmManualControllerSubmission(runId, options) {
|
|
|
102
102
|
await lease.release();
|
|
103
103
|
}
|
|
104
104
|
}
|
|
105
|
+
export async function confirmControllerTurnNotSent(runId, options) {
|
|
106
|
+
const environment = options.environment ?? runtimeEnvironment();
|
|
107
|
+
const home = options.home ?? defaultCueLineHome(environment);
|
|
108
|
+
await loadPersistedRunStore(home, runId);
|
|
109
|
+
const runtime = await readRuntimeLease(home, runId, {
|
|
110
|
+
...(options.now === undefined ? {} : { now: options.now }),
|
|
111
|
+
});
|
|
112
|
+
const retiredOwner = (runtime.ownership === "active" || runtime.ownership === "stale") &&
|
|
113
|
+
runtime.ownerId !== undefined &&
|
|
114
|
+
(await retireDeadRuntimeLease(home, runId, runtime.ownerId))
|
|
115
|
+
? { ownerId: runtime.ownerId, ownership: runtime.ownership }
|
|
116
|
+
: undefined;
|
|
117
|
+
const lease = await RuntimeLease.claim({
|
|
118
|
+
home,
|
|
119
|
+
runId,
|
|
120
|
+
...(options.now === undefined ? {} : { now: options.now }),
|
|
121
|
+
});
|
|
122
|
+
try {
|
|
123
|
+
const store = await loadPersistedRunStore(home, runId);
|
|
124
|
+
store.bindRuntimeOwner(lease.ownerId);
|
|
125
|
+
if (retiredOwner !== undefined) {
|
|
126
|
+
await store.append("runtime_dead_owner_retired", {
|
|
127
|
+
owner_id: retiredOwner.ownerId,
|
|
128
|
+
previous_ownership: retiredOwner.ownership,
|
|
129
|
+
});
|
|
130
|
+
}
|
|
131
|
+
const state = store.state;
|
|
132
|
+
const existingRecovery = state.notSentRecovery?.abandonedRequestId === options.requestId
|
|
133
|
+
? state.notSentRecovery
|
|
134
|
+
: null;
|
|
135
|
+
const turn = (state.pendingControllerTurns ?? []).find((candidate) => candidate.requestId === options.requestId);
|
|
136
|
+
if (turn === undefined) {
|
|
137
|
+
if (existingRecovery !== null) {
|
|
138
|
+
return {
|
|
139
|
+
runId,
|
|
140
|
+
requestId: options.requestId,
|
|
141
|
+
conversationUrl: existingRecovery.conversationUrl,
|
|
142
|
+
promptHash: existingRecovery.promptHash,
|
|
143
|
+
outcome: "already_confirmed",
|
|
144
|
+
};
|
|
145
|
+
}
|
|
146
|
+
throw new CueLineError("CONTROLLER_RECONCILIATION_REQUEST_NOT_FOUND", `Pending controller request '${options.requestId}' was not found.`);
|
|
147
|
+
}
|
|
148
|
+
if ((state.pendingControllerTurns ?? []).length !== 1) {
|
|
149
|
+
throw new CueLineError("OTHER_CONTROLLER_TURNS_PENDING", "Operator-confirmed not-sent recovery requires exactly one pending controller turn.");
|
|
150
|
+
}
|
|
151
|
+
if (turn.submissionState !== "possibly_sent" ||
|
|
152
|
+
state.lastFailure?.code !== "CONTROLLER_SUBMISSION_AMBIGUOUS" ||
|
|
153
|
+
state.lastFailure.requestId !== turn.requestId) {
|
|
154
|
+
throw new CueLineError("CONTROLLER_NOT_SENT_STATE_INVALID", "Operator-confirmed not-sent recovery is available only for the exact ambiguous submission failure.");
|
|
155
|
+
}
|
|
156
|
+
if (turn.retryOfRequestId !== undefined && turn.retryOfRequestId !== null) {
|
|
157
|
+
throw new CueLineError("CONTROLLER_NOT_SENT_RETRY_EXHAUSTED", "The pending turn is already the one authorized not-sent retry; refusing another retry.");
|
|
158
|
+
}
|
|
159
|
+
if (turn.manualSendConfirmed) {
|
|
160
|
+
throw new CueLineError("CONTROLLER_RECONCILIATION_CONFIRMATION_CONFLICT", "The turn is already operator-confirmed as sent; it cannot also be confirmed not sent.");
|
|
161
|
+
}
|
|
162
|
+
const suppliedConversationUrl = options.conversationUrl;
|
|
163
|
+
const knownConversationUrl = state.conversationUrl ?? turn.conversationUrl;
|
|
164
|
+
if (knownConversationUrl === null && suppliedConversationUrl === undefined) {
|
|
165
|
+
throw new CueLineError("CONTROLLER_RECONCILIATION_URL_REQUIRED", "Operator-confirmed not-sent recovery requires the exact ChatGPT conversation URL.");
|
|
166
|
+
}
|
|
167
|
+
if (suppliedConversationUrl !== undefined &&
|
|
168
|
+
knownConversationUrl !== null &&
|
|
169
|
+
!sameChatGptConversationUrl(suppliedConversationUrl, knownConversationUrl)) {
|
|
170
|
+
throw new CueLineError("CONTROLLER_RECONCILIATION_CONVERSATION_MISMATCH", "The operator-confirmed URL does not match the run's exact ChatGPT conversation.");
|
|
171
|
+
}
|
|
172
|
+
const conversationUrl = knownConversationUrl ?? suppliedConversationUrl;
|
|
173
|
+
if (!isExactChatGptConversationUrl(conversationUrl)) {
|
|
174
|
+
throw new CueLineError("CONTROLLER_RECONCILIATION_CONVERSATION_MISMATCH", "Operator-confirmed not-sent recovery requires an exact ChatGPT conversation URL.");
|
|
175
|
+
}
|
|
176
|
+
if (turn.selectedModelLabel === null || !/^Pro(?:\s|$)/i.test(turn.selectedModelLabel)) {
|
|
177
|
+
throw new CueLineError("CONTROLLER_RECONCILIATION_MODEL_UNVERIFIED", "The pending turn lacks exact Pro composer model evidence.");
|
|
178
|
+
}
|
|
179
|
+
if (!/^[0-9a-f]{64}$/.test(turn.promptHash)) {
|
|
180
|
+
throw new CueLineError("CONTROLLER_RECONCILIATION_PROMPT_HASH_INVALID", "The pending turn lacks a valid prompt hash.");
|
|
181
|
+
}
|
|
182
|
+
const events = await readAuthoritativeRunEvents(home, runId);
|
|
183
|
+
for (const event of events) {
|
|
184
|
+
const payload = typeof event.payload === "object" &&
|
|
185
|
+
event.payload !== null &&
|
|
186
|
+
!Array.isArray(event.payload)
|
|
187
|
+
? event.payload
|
|
188
|
+
: {};
|
|
189
|
+
if (event.type === "controller_response_received" &&
|
|
190
|
+
payload.request_id === options.requestId) {
|
|
191
|
+
throw new CueLineError("CONTROLLER_RECONCILIATION_SUPERSEDED", "A controller response for this request was already received; refusing not-sent recovery.");
|
|
192
|
+
}
|
|
193
|
+
if (event.type !== "controller_command_accepted")
|
|
194
|
+
continue;
|
|
195
|
+
const command = typeof payload.command === "object" &&
|
|
196
|
+
payload.command !== null &&
|
|
197
|
+
!Array.isArray(payload.command)
|
|
198
|
+
? payload.command
|
|
199
|
+
: {};
|
|
200
|
+
if (command.request_id === options.requestId ||
|
|
201
|
+
(typeof command.round === "number" && command.round >= turn.round)) {
|
|
202
|
+
throw new CueLineError("CONTROLLER_RECONCILIATION_SUPERSEDED", "A command for this request or the same/newer controller round was already accepted.");
|
|
203
|
+
}
|
|
204
|
+
}
|
|
205
|
+
const derivedBaselineUserMessageCount = turn.baselineUserMessageCount ??
|
|
206
|
+
events.filter((event) => {
|
|
207
|
+
if (event.type !== "controller_turn_submitted")
|
|
208
|
+
return false;
|
|
209
|
+
const payload = typeof event.payload === "object" &&
|
|
210
|
+
event.payload !== null &&
|
|
211
|
+
!Array.isArray(event.payload)
|
|
212
|
+
? event.payload
|
|
213
|
+
: {};
|
|
214
|
+
return typeof payload.round === "number" && payload.round < turn.round;
|
|
215
|
+
}).length;
|
|
216
|
+
if (existingRecovery === null) {
|
|
217
|
+
await store.append("controller_turn_not_sent_confirmed", {
|
|
218
|
+
round: turn.round,
|
|
219
|
+
request_id: turn.requestId,
|
|
220
|
+
prompt_hash: turn.promptHash,
|
|
221
|
+
conversation_url: conversationUrl,
|
|
222
|
+
selected_model_label: turn.selectedModelLabel,
|
|
223
|
+
baseline_user_message_count: derivedBaselineUserMessageCount,
|
|
224
|
+
operator_confirmation: true,
|
|
225
|
+
});
|
|
226
|
+
}
|
|
227
|
+
if ((store.state.pendingControllerTurns ?? []).some((candidate) => candidate.requestId === turn.requestId)) {
|
|
228
|
+
await store.append("controller_turn_abandoned", {
|
|
229
|
+
round: turn.round,
|
|
230
|
+
request_id: turn.requestId,
|
|
231
|
+
reason: "operator_confirmed_not_sent",
|
|
232
|
+
round_not_consumed: true,
|
|
233
|
+
prompt_hash: turn.promptHash,
|
|
234
|
+
conversation_url: conversationUrl,
|
|
235
|
+
selected_model_label: turn.selectedModelLabel,
|
|
236
|
+
baseline_user_message_count: derivedBaselineUserMessageCount,
|
|
237
|
+
operator_confirmation: true,
|
|
238
|
+
});
|
|
239
|
+
}
|
|
240
|
+
await store.snapshot();
|
|
241
|
+
return {
|
|
242
|
+
runId,
|
|
243
|
+
requestId: turn.requestId,
|
|
244
|
+
conversationUrl,
|
|
245
|
+
promptHash: turn.promptHash,
|
|
246
|
+
outcome: existingRecovery === null ? "confirmed" : "already_confirmed",
|
|
247
|
+
};
|
|
248
|
+
}
|
|
249
|
+
finally {
|
|
250
|
+
await lease.release();
|
|
251
|
+
}
|
|
252
|
+
}
|
|
105
253
|
function assertCallerJobResultInput(input) {
|
|
106
254
|
if (typeof input !== "object" || input === null || Array.isArray(input)) {
|
|
107
255
|
throw new CueLineError("CALLER_JOB_RESULT_INVALID", "Caller job result must be an object.");
|
|
@@ -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":"AASA,OAAO,EAAE,6BAA6B,EAAE,MAAM,sBAAsB,CAAC;AACrE,OAAO,EAAE,8BAA8B,EAAE,MAAM,2BAA2B,CAAC;AAC3E,OAAO,EACL,6BAA6B,EAC7B,0BAA0B,GAC3B,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAChD,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AACvD,OAAO,EAAE,cAAc,EAAkB,MAAM,kBAAkB,CAAC;AAClE,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AACtD,OAAO,EACL,gBAAgB,EAChB,sBAAsB,EACtB,YAAY,GACb,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,0BAA0B,EAAE,MAAM,kBAAkB,CAAC;AAE9D,MAAM,CAAC,KAAK,UAAU,iCAAiC,CACrD,KAAa,EACb,OAGC;IAED,MAAM,WAAW,GAAG,OAAO,CAAC,WAAW,IAAI,kBAAkB,EAAE,CAAC;IAChE,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,IAAI,kBAAkB,CAAC,WAAW,CAAC,CAAC;IAC7D,MAAM,qBAAqB,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IACzC,MAAM,OAAO,GAAG,MAAM,gBAAgB,CAAC,IAAI,EAAE,KAAK,EAAE;QAClD,GAAG,CAAC,OAAO,CAAC,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE,CAAC;KAC3D,CAAC,CAAC;IACH,MAAM,YAAY,GAChB,CAAC,OAAO,CAAC,SAAS,KAAK,QAAQ,IAAI,OAAO,CAAC,SAAS,KAAK,OAAO,CAAC;QACjE,OAAO,CAAC,OAAO,KAAK,SAAS;QAC7B,CAAC,MAAM,sBAAsB,CAAC,IAAI,EAAE,KAAK,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;QAC1D,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,SAAS,EAAE,OAAO,CAAC,SAAS,EAAE;QAC5D,CAAC,CAAC,SAAS,CAAC;IAChB,MAAM,KAAK,GAAG,MAAM,YAAY,CAAC,KAAK,CAAC;QACrC,IAAI;QACJ,KAAK;QACL,GAAG,CAAC,OAAO,CAAC,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE,CAAC;KAC3D,CAAC,CAAC;IACH,IAAI,CAAC;QACH,MAAM,KAAK,GAAG,MAAM,qBAAqB,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QACvD,KAAK,CAAC,gBAAgB,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QACtC,IAAI,YAAY,KAAK,SAAS,EAAE,CAAC;YAC/B,MAAM,KAAK,CAAC,MAAM,CAAC,4BAA4B,EAAE;gBAC/C,QAAQ,EAAE,YAAY,CAAC,OAAO;gBAC9B,kBAAkB,EAAE,YAAY,CAAC,SAAS;aAC3C,CAAC,CAAC;QACL,CAAC;QACD,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC;QAC1B,MAAM,IAAI,GACR,CAAC,KAAK,CAAC,sBAAsB,IAAI,EAAE,CAAC,CAAC,IAAI,CACvC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,SAAS,KAAK,OAAO,CAAC,SAAS,CACzD;YACD,CAAC,KAAK,CAAC,wBAAwB,IAAI,EAAE,CAAC,CAAC,IAAI,CACzC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,SAAS,KAAK,OAAO,CAAC,SAAS,CACzD,CAAC;QACJ,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,MAAM,IAAI,YAAY,CACpB,6CAA6C,EAC7C,uBAAuB,OAAO,CAAC,SAAS,0DAA0D,KAAK,IAAI,CAC5G,CAAC;QACJ,CAAC;QACD,MAAM,uBAAuB,GAC3B,OAAO,CAAC,eAAe,IAAI,IAAI,CAAC,eAAe,IAAI,KAAK,CAAC,eAAe,CAAC;QAC3E,IAAI,CAAC,6BAA6B,CAAC,uBAAuB,CAAC,EAAE,CAAC;YAC5D,MAAM,IAAI,YAAY,CACpB,wCAAwC,EACxC,6EAA6E,CAC9E,CAAC;QACJ,CAAC;QACD,IACE,KAAK,CAAC,eAAe,KAAK,IAAI;YAC9B,CAAC,0BAA0B,CAAC,uBAAuB,EAAE,KAAK,CAAC,eAAe,CAAC,EAC3E,CAAC;YACD,MAAM,IAAI,YAAY,CACpB,iDAAiD,EACjD,4FAA4F,CAC7F,CAAC;QACJ,CAAC;QACD,IACE,IAAI,CAAC,eAAe,KAAK,IAAI;YAC7B,CAAC,0BAA0B,CAAC,uBAAuB,EAAE,IAAI,CAAC,eAAe,CAAC,EAC1E,CAAC;YACD,MAAM,IAAI,YAAY,CACpB,iDAAiD,EACjD,8GAA8G,CAC/G,CAAC;QACJ,CAAC;QACD,MAAM,eAAe,GACnB,KAAK,CAAC,eAAe,IAAI,IAAI,CAAC,eAAe,IAAI,uBAAuB,CAAC;QAC3E,MAAM,MAAM,GAAG,MAAM,0BAA0B,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QAC7D,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;YAC3B,IAAI,KAAK,CAAC,IAAI,KAAK,6BAA6B;gBAAE,SAAS;YAC3D,MAAM,OAAO,GACX,OAAO,KAAK,CAAC,OAAO,KAAK,QAAQ;gBACjC,KAAK,CAAC,OAAO,KAAK,IAAI;gBACtB,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC;gBAC3B,CAAC,CAAE,KAAK,CAAC,OAAmC;gBAC5C,CAAC,CAAC,EAAE,CAAC;YACT,MAAM,OAAO,GACX,OAAO,OAAO,CAAC,OAAO,KAAK,QAAQ;gBACnC,OAAO,CAAC,OAAO,KAAK,IAAI;gBACxB,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC;gBAC7B,CAAC,CAAE,OAAO,CAAC,OAAmC;gBAC9C,CAAC,CAAC,EAAE,CAAC;YACT,MAAM,iBAAiB,GAAG,OAAO,CAAC,UAAU,CAAC;YAC7C,MAAM,aAAa,GAAG,OAAO,CAAC,KAAK,CAAC;YACpC,IACE,iBAAiB,KAAK,OAAO,CAAC,SAAS;gBACvC,CAAC,OAAO,aAAa,KAAK,QAAQ,IAAI,aAAa,IAAI,IAAI,CAAC,KAAK,CAAC,EAClE,CAAC;gBACD,MAAM,IAAI,YAAY,CACpB,sCAAsC,EACtC,wHAAwH,CACzH,CAAC;YACJ,CAAC;QACH,CAAC;QACD,IAAI,KAAK,CAAC,eAAe,KAAK,IAAI,EAAE,CAAC;YACnC,MAAM,KAAK,CAAC,MAAM,CAAC,+BAA+B,EAAE;gBAClD,UAAU,EAAE,IAAI,CAAC,SAAS;gBAC1B,gBAAgB,EAAE,eAAe;gBACjC,qBAAqB,EAAE,IAAI;aAC5B,CAAC,CAAC;QACL,CAAC;QACD,IAAI,IAAI,CAAC,mBAAmB,EAAE,CAAC;YAC7B,OAAO;gBACL,KAAK;gBACL,SAAS,EAAE,IAAI,CAAC,SAAS;gBACzB,eAAe;gBACf,OAAO,EAAE,mBAAmB;aAC7B,CAAC;QACJ,CAAC;QACD,MAAM,KAAK,CAAC,MAAM,CAAC,6CAA6C,EAAE;YAChE,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,UAAU,EAAE,IAAI,CAAC,SAAS;YAC1B,gBAAgB,EAAE,eAAe;YACjC,qBAAqB,EAAE,IAAI;SAC5B,CAAC,CAAC;QACH,MAAM,KAAK,CAAC,QAAQ,EAAE,CAAC;QACvB,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE,eAAe,EAAE,OAAO,EAAE,WAAW,EAAE,CAAC;IACrF,CAAC;YAAS,CAAC;QACT,MAAM,KAAK,CAAC,OAAO,EAAE,CAAC;IACxB,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,4BAA4B,CAChD,KAAa,EACb,OAGC;IAED,MAAM,WAAW,GAAG,OAAO,CAAC,WAAW,IAAI,kBAAkB,EAAE,CAAC;IAChE,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,IAAI,kBAAkB,CAAC,WAAW,CAAC,CAAC;IAC7D,MAAM,qBAAqB,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IACzC,MAAM,OAAO,GAAG,MAAM,gBAAgB,CAAC,IAAI,EAAE,KAAK,EAAE;QAClD,GAAG,CAAC,OAAO,CAAC,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE,CAAC;KAC3D,CAAC,CAAC;IACH,MAAM,YAAY,GAChB,CAAC,OAAO,CAAC,SAAS,KAAK,QAAQ,IAAI,OAAO,CAAC,SAAS,KAAK,OAAO,CAAC;QACjE,OAAO,CAAC,OAAO,KAAK,SAAS;QAC7B,CAAC,MAAM,sBAAsB,CAAC,IAAI,EAAE,KAAK,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;QAC1D,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,SAAS,EAAE,OAAO,CAAC,SAAS,EAAE;QAC5D,CAAC,CAAC,SAAS,CAAC;IAChB,MAAM,KAAK,GAAG,MAAM,YAAY,CAAC,KAAK,CAAC;QACrC,IAAI;QACJ,KAAK;QACL,GAAG,CAAC,OAAO,CAAC,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE,CAAC;KAC3D,CAAC,CAAC;IACH,IAAI,CAAC;QACH,MAAM,KAAK,GAAG,MAAM,qBAAqB,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QACvD,KAAK,CAAC,gBAAgB,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QACtC,IAAI,YAAY,KAAK,SAAS,EAAE,CAAC;YAC/B,MAAM,KAAK,CAAC,MAAM,CAAC,4BAA4B,EAAE;gBAC/C,QAAQ,EAAE,YAAY,CAAC,OAAO;gBAC9B,kBAAkB,EAAE,YAAY,CAAC,SAAS;aAC3C,CAAC,CAAC;QACL,CAAC;QACD,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC;QAC1B,MAAM,gBAAgB,GACpB,KAAK,CAAC,eAAe,EAAE,kBAAkB,KAAK,OAAO,CAAC,SAAS;YAC7D,CAAC,CAAC,KAAK,CAAC,eAAe;YACvB,CAAC,CAAC,IAAI,CAAC;QACX,MAAM,IAAI,GAAG,CAAC,KAAK,CAAC,sBAAsB,IAAI,EAAE,CAAC,CAAC,IAAI,CACpD,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,SAAS,KAAK,OAAO,CAAC,SAAS,CACzD,CAAC;QACF,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;YACvB,IAAI,gBAAgB,KAAK,IAAI,EAAE,CAAC;gBAC9B,OAAO;oBACL,KAAK;oBACL,SAAS,EAAE,OAAO,CAAC,SAAS;oBAC5B,eAAe,EAAE,gBAAgB,CAAC,eAAe;oBACjD,UAAU,EAAE,gBAAgB,CAAC,UAAU;oBACvC,OAAO,EAAE,mBAAmB;iBAC7B,CAAC;YACJ,CAAC;YACD,MAAM,IAAI,YAAY,CACpB,6CAA6C,EAC7C,+BAA+B,OAAO,CAAC,SAAS,kBAAkB,CACnE,CAAC;QACJ,CAAC;QACD,IAAI,CAAC,KAAK,CAAC,sBAAsB,IAAI,EAAE,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACtD,MAAM,IAAI,YAAY,CACpB,gCAAgC,EAChC,oFAAoF,CACrF,CAAC;QACJ,CAAC;QACD,IACE,IAAI,CAAC,eAAe,KAAK,eAAe;YACxC,KAAK,CAAC,WAAW,EAAE,IAAI,KAAK,iCAAiC;YAC7D,KAAK,CAAC,WAAW,CAAC,SAAS,KAAK,IAAI,CAAC,SAAS,EAC9C,CAAC;YACD,MAAM,IAAI,YAAY,CACpB,mCAAmC,EACnC,oGAAoG,CACrG,CAAC;QACJ,CAAC;QACD,IAAI,IAAI,CAAC,gBAAgB,KAAK,SAAS,IAAI,IAAI,CAAC,gBAAgB,KAAK,IAAI,EAAE,CAAC;YAC1E,MAAM,IAAI,YAAY,CACpB,qCAAqC,EACrC,wFAAwF,CACzF,CAAC;QACJ,CAAC;QACD,IAAI,IAAI,CAAC,mBAAmB,EAAE,CAAC;YAC7B,MAAM,IAAI,YAAY,CACpB,iDAAiD,EACjD,uFAAuF,CACxF,CAAC;QACJ,CAAC;QACD,MAAM,uBAAuB,GAAG,OAAO,CAAC,eAAe,CAAC;QACxD,MAAM,oBAAoB,GAAG,KAAK,CAAC,eAAe,IAAI,IAAI,CAAC,eAAe,CAAC;QAC3E,IAAI,oBAAoB,KAAK,IAAI,IAAI,uBAAuB,KAAK,SAAS,EAAE,CAAC;YAC3E,MAAM,IAAI,YAAY,CACpB,wCAAwC,EACxC,mFAAmF,CACpF,CAAC;QACJ,CAAC;QACD,IACE,uBAAuB,KAAK,SAAS;YACrC,oBAAoB,KAAK,IAAI;YAC7B,CAAC,0BAA0B,CAAC,uBAAuB,EAAE,oBAAoB,CAAC,EAC1E,CAAC;YACD,MAAM,IAAI,YAAY,CACpB,iDAAiD,EACjD,iFAAiF,CAClF,CAAC;QACJ,CAAC;QACD,MAAM,eAAe,GAAG,oBAAoB,IAAI,uBAAwB,CAAC;QACzE,IAAI,CAAC,6BAA6B,CAAC,eAAe,CAAC,EAAE,CAAC;YACpD,MAAM,IAAI,YAAY,CACpB,iDAAiD,EACjD,kFAAkF,CACnF,CAAC;QACJ,CAAC;QACD,IAAI,IAAI,CAAC,kBAAkB,KAAK,IAAI,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,EAAE,CAAC;YACvF,MAAM,IAAI,YAAY,CACpB,4CAA4C,EAC5C,2DAA2D,CAC5D,CAAC;QACJ,CAAC;QACD,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC;YAC5C,MAAM,IAAI,YAAY,CACpB,+CAA+C,EAC/C,6CAA6C,CAC9C,CAAC;QACJ,CAAC;QACD,MAAM,MAAM,GAAG,MAAM,0BAA0B,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QAC7D,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;YAC3B,MAAM,OAAO,GACX,OAAO,KAAK,CAAC,OAAO,KAAK,QAAQ;gBACjC,KAAK,CAAC,OAAO,KAAK,IAAI;gBACtB,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC;gBAC3B,CAAC,CAAE,KAAK,CAAC,OAAmC;gBAC5C,CAAC,CAAC,EAAE,CAAC;YACT,IACE,KAAK,CAAC,IAAI,KAAK,8BAA8B;gBAC7C,OAAO,CAAC,UAAU,KAAK,OAAO,CAAC,SAAS,EACxC,CAAC;gBACD,MAAM,IAAI,YAAY,CACpB,sCAAsC,EACtC,0FAA0F,CAC3F,CAAC;YACJ,CAAC;YACD,IAAI,KAAK,CAAC,IAAI,KAAK,6BAA6B;gBAAE,SAAS;YAC3D,MAAM,OAAO,GACX,OAAO,OAAO,CAAC,OAAO,KAAK,QAAQ;gBACnC,OAAO,CAAC,OAAO,KAAK,IAAI;gBACxB,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC;gBAC7B,CAAC,CAAE,OAAO,CAAC,OAAmC;gBAC9C,CAAC,CAAC,EAAE,CAAC;YACT,IACE,OAAO,CAAC,UAAU,KAAK,OAAO,CAAC,SAAS;gBACxC,CAAC,OAAO,OAAO,CAAC,KAAK,KAAK,QAAQ,IAAI,OAAO,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,EAClE,CAAC;gBACD,MAAM,IAAI,YAAY,CACpB,sCAAsC,EACtC,qFAAqF,CACtF,CAAC;YACJ,CAAC;QACH,CAAC;QACD,MAAM,+BAA+B,GACnC,IAAI,CAAC,wBAAwB;YAC7B,MAAM,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE;gBACtB,IAAI,KAAK,CAAC,IAAI,KAAK,2BAA2B;oBAAE,OAAO,KAAK,CAAC;gBAC7D,MAAM,OAAO,GACX,OAAO,KAAK,CAAC,OAAO,KAAK,QAAQ;oBACjC,KAAK,CAAC,OAAO,KAAK,IAAI;oBACtB,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC;oBAC3B,CAAC,CAAE,KAAK,CAAC,OAAmC;oBAC5C,CAAC,CAAC,EAAE,CAAC;gBACT,OAAO,OAAO,OAAO,CAAC,KAAK,KAAK,QAAQ,IAAI,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;YACzE,CAAC,CAAC,CAAC,MAAM,CAAC;QACZ,IAAI,gBAAgB,KAAK,IAAI,EAAE,CAAC;YAC9B,MAAM,KAAK,CAAC,MAAM,CAAC,oCAAoC,EAAE;gBACvD,KAAK,EAAE,IAAI,CAAC,KAAK;gBACjB,UAAU,EAAE,IAAI,CAAC,SAAS;gBAC1B,WAAW,EAAE,IAAI,CAAC,UAAU;gBAC5B,gBAAgB,EAAE,eAAe;gBACjC,oBAAoB,EAAE,IAAI,CAAC,kBAAkB;gBAC7C,2BAA2B,EAAE,+BAA+B;gBAC5D,qBAAqB,EAAE,IAAI;aAC5B,CAAC,CAAC;QACL,CAAC;QACD,IACE,CAAC,KAAK,CAAC,KAAK,CAAC,sBAAsB,IAAI,EAAE,CAAC,CAAC,IAAI,CAC7C,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,SAAS,KAAK,IAAI,CAAC,SAAS,CACtD,EACD,CAAC;YACD,MAAM,KAAK,CAAC,MAAM,CAAC,2BAA2B,EAAE;gBAC9C,KAAK,EAAE,IAAI,CAAC,KAAK;gBACjB,UAAU,EAAE,IAAI,CAAC,SAAS;gBAC1B,MAAM,EAAE,6BAA6B;gBACrC,kBAAkB,EAAE,IAAI;gBACxB,WAAW,EAAE,IAAI,CAAC,UAAU;gBAC5B,gBAAgB,EAAE,eAAe;gBACjC,oBAAoB,EAAE,IAAI,CAAC,kBAAkB;gBAC7C,2BAA2B,EAAE,+BAA+B;gBAC5D,qBAAqB,EAAE,IAAI;aAC5B,CAAC,CAAC;QACL,CAAC;QACD,MAAM,KAAK,CAAC,QAAQ,EAAE,CAAC;QACvB,OAAO;YACL,KAAK;YACL,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,eAAe;YACf,UAAU,EAAE,IAAI,CAAC,UAAU;YAC3B,OAAO,EAAE,gBAAgB,KAAK,IAAI,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,mBAAmB;SACvE,CAAC;IACJ,CAAC;YAAS,CAAC;QACT,MAAM,KAAK,CAAC,OAAO,EAAE,CAAC;IACxB,CAAC;AACH,CAAC;AAED,SAAS,0BAA0B,CACjC,KAAc;IAEd,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACxE,MAAM,IAAI,YAAY,CAAC,2BAA2B,EAAE,sCAAsC,CAAC,CAAC;IAC9F,CAAC;IACD,MAAM,KAAK,GAAG,KAAgC,CAAC;IAC/C,MAAM,gBAAgB,GAAG,IAAI,GAAG,CAAC;QAC/B,WAAW;QACX,QAAQ;QACR,WAAW;QACX,WAAW;QACX,WAAW;KACZ,CAAC,CAAC;IACH,IAAI,OAAO,KAAK,CAAC,MAAM,KAAK,QAAQ,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC;QAC5E,MAAM,IAAI,YAAY,CACpB,2BAA2B,EAC3B,kCAAkC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAC3D,CAAC;IACJ,CAAC;IACD,KAAK,MAAM,KAAK,IAAI;QAClB,QAAQ;QACR,QAAQ;QACR,QAAQ;QACR,OAAO;QACP,WAAW;QACX,YAAY;KACJ,EAAE,CAAC;QACX,IAAI,KAAK,CAAC,KAAK,CAAC,KAAK,SAAS,IAAI,OAAO,KAAK,CAAC,KAAK,CAAC,KAAK,QAAQ,EAAE,CAAC;YACnE,MAAM,IAAI,YAAY,CACpB,2BAA2B,EAC3B,4BAA4B,KAAK,mCAAmC,CACrE,CAAC;QACJ,CAAC;IACH,CAAC;IACD,KAAK,MAAM,KAAK,IAAI,CAAC,WAAW,EAAE,YAAY,CAAU,EAAE,CAAC;QACzD,IAAI,OAAO,KAAK,CAAC,KAAK,CAAC,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;YACnF,MAAM,IAAI,YAAY,CACpB,2BAA2B,EAC3B,4BAA4B,KAAK,8BAA8B,CAChE,CAAC;QACJ,CAAC;IACH,CAAC;IACD,IACE,OAAO,KAAK,CAAC,SAAS,KAAK,QAAQ;QACnC,OAAO,KAAK,CAAC,UAAU,KAAK,QAAQ;QACpC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,EAC1D,CAAC;QACD,MAAM,IAAI,YAAY,CACpB,2BAA2B,EAC3B,wDAAwD,CACzD,CAAC;IACJ,CAAC;IACD,IACE,KAAK,CAAC,QAAQ,KAAK,SAAS;QAC5B,KAAK,CAAC,QAAQ,KAAK,IAAI;QACvB,CAAC,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,QAAQ,CAAC,EACrC,CAAC;QACD,MAAM,IAAI,YAAY,CACpB,2BAA2B,EAC3B,0EAA0E,CAC3E,CAAC;IACJ,CAAC;AACH,CAAC;AAED,SAAS,gCAAgC,CACvC,KAAkC,EAClC,UAAgB;IAEhB,IAAI,iBAAyB,CAAC;IAC9B,IAAI,CAAC;QACH,iBAAiB,GAAG,UAAU,CAAC,WAAW,EAAE,CAAC;IAC/C,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,IAAI,YAAY,CACpB,2BAA2B,EAC3B,+DAA+D,EAC/D,EAAE,KAAK,EAAE,KAAK,EAAE,CACjB,CAAC;IACJ,CAAC;IACD,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS,IAAI,iBAAiB,CAAC;IACvD,MAAM,UAAU,GAAG,KAAK,CAAC,UAAU,IAAI,iBAAiB,CAAC;IACzD,IAAI,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,CAAC;QACnD,MAAM,IAAI,YAAY,CACpB,2BAA2B,EAC3B,wDAAwD,CACzD,CAAC;IACJ,CAAC;IACD,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,CAAC;AACnC,CAAC;AAED,SAAS,sBAAsB,CAC7B,MAA8D,EAC9D,KAAa,EACb,KAAkC;IAElC,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,IAAI,KAAK,CAAC,IAAI,KAAK,uCAAuC;YAAE,SAAS;QACrE,MAAM,OAAO,GACX,OAAO,KAAK,CAAC,OAAO,KAAK,QAAQ;YACjC,KAAK,CAAC,OAAO,KAAK,IAAI;YACtB,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC;YAC3B,CAAC,CAAE,KAAK,CAAC,OAAmC;YAC5C,CAAC,CAAC,EAAE,CAAC;QACT,IACE,OAAO,CAAC,MAAM,KAAK,KAAK;YACxB,OAAO,CAAC,QAAQ,KAAK,KAAK,CAAC,OAAO;YAClC,OAAO,CAAC,SAAS,KAAK,KAAK,CAAC,QAAQ;YACpC,OAAO,CAAC,aAAa,KAAK,KAAK,CAAC,YAAY;YAC5C,OAAO,OAAO,CAAC,MAAM,KAAK,QAAQ,EAClC,CAAC;YACD,OAAO,OAAO,CAAC,MAAM,CAAC;QACxB,CAAC;IACH,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,4BAA4B,CAChD,KAAa,EACb,KAAa,EACb,KAAkC,EAClC,OAAO,GAAsC,EAAE;IAE/C,MAAM,WAAW,GAAG,OAAO,CAAC,WAAW,IAAI,kBAAkB,EAAE,CAAC;IAChE,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,IAAI,kBAAkB,CAAC,WAAW,CAAC,CAAC;IAC7D,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC;IAC9C,0BAA0B,CAAC,KAAK,CAAC,CAAC;IAClC,MAAM,qBAAqB,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IACzC,MAAM,OAAO,GAAG,MAAM,gBAAgB,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC;IAC7D,MAAM,YAAY,GAChB,CAAC,OAAO,CAAC,SAAS,KAAK,QAAQ,IAAI,OAAO,CAAC,SAAS,KAAK,OAAO,CAAC;QACjE,OAAO,CAAC,OAAO,KAAK,SAAS;QAC7B,CAAC,MAAM,sBAAsB,CAAC,IAAI,EAAE,KAAK,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;QAC1D,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,SAAS,EAAE,OAAO,CAAC,SAAS,EAAE;QAC5D,CAAC,CAAC,SAAS,CAAC;IAChB,MAAM,KAAK,GAAG,MAAM,YAAY,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC;IAC7D,IAAI,CAAC;QACH,MAAM,KAAK,GAAG,MAAM,qBAAqB,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QACvD,KAAK,CAAC,gBAAgB,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QACtC,IAAI,YAAY,KAAK,SAAS,EAAE,CAAC;YAC/B,MAAM,KAAK,CAAC,MAAM,CAAC,4BAA4B,EAAE;gBAC/C,QAAQ,EAAE,YAAY,CAAC,OAAO;gBAC9B,kBAAkB,EAAE,YAAY,CAAC,SAAS;aAC3C,CAAC,CAAC;QACL,CAAC;QACD,IAAI,KAAK,CAAC,KAAK,CAAC,QAAQ,KAAK,QAAQ,EAAE,CAAC;YACtC,MAAM,IAAI,YAAY,CACpB,0BAA0B,EAC1B,QAAQ,KAAK,+DAA+D,CAC7E,CAAC;QACJ,CAAC;QACD,MAAM,GAAG,GAAG,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACpC,IAAI,CAAC,GAAG,EAAE,CAAC;YACT,MAAM,IAAI,YAAY,CAAC,eAAe,EAAE,WAAW,KAAK,oBAAoB,KAAK,IAAI,CAAC,CAAC;QACzF,CAAC;QACD,MAAM,eAAe,GACnB,GAAG,CAAC,IAAI,CAAC,IAAI,KAAK,MAAM,IAAI,KAAK,CAAC,MAAM,KAAK,WAAW;YACtD,CAAC,CAAC,WAAW;YACb,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC;QACnB,MAAM,WAAW,GAAG,IAAI,cAAc,CAAC,IAAI,CAAC,CAAC;QAC7C,IAAI,QAAQ,GAAG,MAAM,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC7C,IAAI,QAAQ,EAAE,MAAM,KAAK,SAAS,IAAI,QAAQ,EAAE,MAAM,KAAK,SAAS,EAAE,CAAC;YACrE,QAAQ,GAAG,SAAS,CAAC;QACvB,CAAC;QACD,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;YAC3B,IAAI,QAAQ,CAAC,KAAK,KAAK,KAAK,IAAI,QAAQ,CAAC,MAAM,KAAK,GAAG,CAAC,MAAM,EAAE,CAAC;gBAC/D,MAAM,IAAI,YAAY,CACpB,4BAA4B,EAC5B,oCAAoC,KAAK,uCAAuC,CACjF,CAAC;YACJ,CAAC;QACH,CAAC;QACD,MAAM,MAAM,GAAG,MAAM,0BAA0B,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QAC7D,IAAI,gBAAkC,CAAC;QACvC,IAAI,GAAG,CAAC,IAAI,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;YAC7B,IAAI,OAAO,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;gBAChC,MAAM,IAAI,YAAY,CACpB,4BAA4B,EAC5B,2BAA2B,KAAK,0CAA0C,CAC3E,CAAC;YACJ,CAAC;YACD,MAAM,YAAY,GAAG,sBAAsB,CAAC,MAAM,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;YAC1E,MAAM,qBAAqB,GACzB,QAAQ,KAAK,SAAS,IAAI,YAAY,KAAK,SAAS,IAAI,YAAY,KAAK,QAAQ,CAAC,MAAM,CAAC;YAC3F,IACE,YAAY,KAAK,SAAS;gBAC1B,YAAY,KAAK,CAAC,QAAQ,EAAE,MAAM,IAAI,eAAe,CAAC,EACtD,CAAC;gBACD,MAAM,IAAI,YAAY,CACpB,4BAA4B,EAC5B,kCAAkC,KAAK,iCAAiC,YAAY,IAAI,CACzF,CAAC;YACJ,CAAC;YACD,gBAAgB,GAAG,GAAG,EAAE,CAAC;YACzB,MAAM,UAAU,GAAG,MAAM,6BAA6B,CACpD,KAAK,EACL,GAAG,EACH,OAAO,CAAC,KAAK,EACb,IAAI,EACJ,gBAAgB,EAChB,EAAE,qBAAqB,EAAE,CAC1B,CAAC;YACF,IAAI,UAAU,CAAC,eAAe,EAAE,CAAC;gBAC/B,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,kBAAkB,EAAE,CAAC;YACvD,CAAC;QACH,CAAC;aAAM,IAAI,OAAO,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;YACvC,MAAM,IAAI,YAAY,CACpB,8BAA8B,EAC9B,eAAe,KAAK,wCAAwC,CAC7D,CAAC;QACJ,CAAC;aAAM,IAAI,GAAG,CAAC,MAAM,KAAK,SAAS,IAAI,GAAG,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;YAChE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,kBAAkB,EAAE,CAAC;QACvD,CAAC;QACD,MAAM,gBAAgB,GACpB,QAAQ,KAAK,SAAS;YACpB,CAAC,CAAC,gCAAgC,CAAC,KAAK,EAAE,gBAAgB,IAAI,GAAG,EAAE,CAAC;YACpE,CAAC,CAAC,SAAS,CAAC;QAChB,IAAI,GAAG,CAAC,IAAI,CAAC,IAAI,KAAK,MAAM,IAAI,OAAO,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;YAC5D,MAAM,YAAY,GAAG,sBAAsB,CAAC,MAAM,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;YAC1E,IAAI,YAAY,KAAK,SAAS,EAAE,CAAC;gBAC/B,MAAM,KAAK,CAAC,MAAM,CAAC,uCAAuC,EAAE;oBAC1D,MAAM,EAAE,KAAK;oBACb,MAAM,EAAE,QAAQ,EAAE,MAAM,IAAI,eAAe;oBAC3C,QAAQ,EAAE,OAAO,CAAC,KAAK,CAAC,OAAO;oBAC/B,SAAS,EAAE,OAAO,CAAC,KAAK,CAAC,QAAQ;oBACjC,aAAa,EAAE,OAAO,CAAC,KAAK,CAAC,YAAY;iBAC1C,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QACD,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;YAC3B,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,IAAI,EAAE,CAAC;YAClC,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,IAAI,EAAE,CAAC;YAClC,MAAM,MAAM,GACV,KAAK,CAAC,MAAM;gBACZ,CAAC,MAAM,KAAK,EAAE;oBACZ,CAAC,CAAC,MAAM;oBACR,CAAC,CAAC,MAAM,KAAK,EAAE;wBACb,CAAC,CAAC,MAAM;wBACR,CAAC,CAAC,GAAG,MAAM,GAAG,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,GAAG,MAAM,EAAE,CAAC,CAAC;YAClE,MAAM,EAAE,SAAS,EAAE,UAAU,EAAE,GAAG,gBAAiB,CAAC;YACpD,MAAM,MAAM,GAAG;gBACb,MAAM,EAAE,eAAe;gBACvB,QAAQ,EAAE,KAAK,CAAC,QAAQ,IAAI,CAAC,KAAK,CAAC,MAAM,KAAK,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;gBACrE,MAAM;gBACN,MAAM;gBACN,MAAM;gBACN,WAAW,EAAE,MAAM,CAAC,MAAM,KAAK,CAAC;gBAChC,QAAQ,EAAE,KAAK,CAAC,MAAM,KAAK,WAAW;gBACtC,SAAS,EAAE,KAAK,CAAC,MAAM,KAAK,WAAW;gBACvC,oBAAoB,EAAE,GAAG,CAAC,IAAI,CAAC,IAAI,KAAK,MAAM,IAAI,KAAK,CAAC,MAAM,KAAK,WAAW;gBAC9E,SAAS,EAAE,KAAc;gBACzB,SAAS;gBACT,UAAU;aACX,CAAC;YACF,QAAQ,GAAG;gBACT,KAAK;gBACL,KAAK;gBACL,MAAM,EAAE,GAAG,CAAC,MAAM;gBAClB,IAAI,EAAE,GAAG,CAAC,IAAI,CAAC,IAAI;gBACnB,IAAI,EAAE,GAAG,CAAC,IAAI,CAAC,IAAI;gBACnB,SAAS,EAAE,YAAY;gBACvB,MAAM,EAAE,eAAe;gBACvB,SAAS;gBACT,UAAU;gBACV,MAAM;gBACN,GAAG,CAAC,KAAK,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,CAAC;aACzC,CAAC;YACtB,MAAM,WAAW,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QACpC,CAAC;QACD,MAAM,eAAe,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE;YAC5C,IAAI,KAAK,CAAC,IAAI,KAAK,6BAA6B;gBAAE,OAAO,KAAK,CAAC;YAC/D,MAAM,OAAO,GACX,OAAO,KAAK,CAAC,OAAO,KAAK,QAAQ;gBACjC,KAAK,CAAC,OAAO,KAAK,IAAI;gBACtB,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC;gBAC3B,CAAC,CAAE,KAAK,CAAC,OAAmC;gBAC5C,CAAC,CAAC,EAAE,CAAC;YACT,OAAO,OAAO,CAAC,MAAM,KAAK,KAAK,CAAC;QAClC,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,eAAe,EAAE,CAAC;YACrB,MAAM,KAAK,CAAC,MAAM,CAAC,6BAA6B,EAAE;gBAChD,MAAM,EAAE,KAAK;gBACb,MAAM,EAAE,QAAQ,CAAC,MAAM;aACxB,CAAC,CAAC;YACH,IAAI,GAAG,CAAC,IAAI,CAAC,IAAI,KAAK,MAAM,IAAI,OAAO,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;gBAC5D,MAAM,KAAK,CAAC,MAAM,CAAC,8BAA8B,EAAE;oBACjD,MAAM,EAAE,KAAK;oBACb,MAAM,EAAE,QAAQ,CAAC,MAAM;oBACvB,QAAQ,EAAE,OAAO,CAAC,KAAK,CAAC,OAAO;oBAC/B,SAAS,EAAE,OAAO,CAAC,KAAK,CAAC,QAAQ;oBACjC,aAAa,EAAE,OAAO,CAAC,KAAK,CAAC,YAAY;iBAC1C,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QACD,MAAM,KAAK,CAAC,MAAM,CAAC,YAAY,EAAE;YAC/B,MAAM,EAAE,KAAK;YACb,MAAM,EAAE,QAAQ,CAAC,MAAM;YACvB,GAAG,8BAA8B,CAAC,QAAQ,CAAC;SAC5C,CAAC,CAAC;QACH,MAAM,KAAK,CAAC,QAAQ,EAAE,CAAC;QACvB,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,WAAW,EAAE,CAAC;IAChD,CAAC;YAAS,CAAC;QACT,MAAM,KAAK,CAAC,OAAO,EAAE,CAAC;IACxB,CAAC;AACH,CAAC"}
|
package/dist/src/api.d.ts
CHANGED
|
@@ -13,7 +13,7 @@ export declare function routingConfigPath(environment?: NodeJS.ProcessEnv, expli
|
|
|
13
13
|
export declare function startCueLineRun(options: StartCueLineRunOptions): Promise<CueLineResult>;
|
|
14
14
|
export declare function runCueLine(options: StartCueLineRunOptions): Promise<CueLineResult>;
|
|
15
15
|
export declare function continueCueLineRun(options: ContinueCueLineRunOptions): Promise<CueLineResult>;
|
|
16
|
-
export { confirmManualControllerSubmission, submitCueLineCallerJobResult, } from "./api-controller-handoff.js";
|
|
16
|
+
export { confirmManualControllerSubmission, confirmControllerTurnNotSent, submitCueLineCallerJobResult, } from "./api-controller-handoff.js";
|
|
17
17
|
export { claimCueLineCallerJob, heartbeatCueLineCallerJob, releaseCueLineCallerJob, startCueLineCallerJob, };
|
|
18
18
|
export { cancelCueLineJob, cancelCueLineRun, listCueLineRuns, loadCueLineRunState, loadCueLineRunStatus, reconcileCueLineRuntime, takeoverCueLineRuntime, } from "./api-runtime-lifecycle.js";
|
|
19
19
|
export { diagnoseCueLineRun, diagnoseCueLineRunStatus, } from "./diagnostics/run-doctor.js";
|
|
@@ -21,14 +21,22 @@ export { verifyCueLineRun };
|
|
|
21
21
|
export { createCodexIabAdapter, probeCodexIab };
|
|
22
22
|
export { waitForCueLineRunChange } from "./observation/run-watch.js";
|
|
23
23
|
export { lintControllerCommandText } from "./protocol/lint-command.js";
|
|
24
|
+
export { explainRoutingConfig } from "./router/explain.js";
|
|
24
25
|
export { buildCueLineRunHandoff, createCueLineRunHandoff, renderCueLineRunHandoffMarkdown, } from "./observation/run-handoff.js";
|
|
25
26
|
export { buildCueLineRunTimeline, loadCueLineRunTimeline, } from "./observation/run-timeline.js";
|
|
27
|
+
export { loadCueLineRunStatusAt } from "./observation/run-status-at.js";
|
|
28
|
+
export { compareCueLineRuns } from "./observation/run-diff.js";
|
|
29
|
+
export { buildCueLineRunGraph, loadCueLineRunGraph, } from "./observation/run-graph.js";
|
|
26
30
|
export { CUELINE_VERSION } from "./version.js";
|
|
27
31
|
export type { ContinueCueLineRunOptions, CueLineCallerJobResultInput, CueLineCallerJobSubmissionOptions, CueLineCallerJobSubmissionResult, CueLineCallerWorkClaimOptions, CueLineCallerWorkClaimProof, CueLineCallerWorkClaimResult, CueLineCallerWorkMutationOptions, CueLineCallerWorkMutationResult, CueLineJobCancellationResult, CueLineRunListEntry, CueLineRunCancellationResult, CueLineRunVerificationFinding, CueLineRunVerificationOutcome, CueLineRunVerificationReport, CueLineRuntimeOptions, CueLineRuntimeReconciliationResult, CueLineRuntimeTakeoverResult, ManualControllerSubmissionConfirmation, StartCueLineRunOptions, } from "./api-contracts.js";
|
|
28
32
|
export type { CueLineDiagnosticSeverity, CueLineRunDiagnosis, CueLineRunDiagnosticFinding, CueLineRunDiagnosticOutcome, } from "./diagnostics/run-doctor.js";
|
|
29
33
|
export type { CueLineRunWatchOptions, CueLineRunWatchResult, } from "./observation/run-watch.js";
|
|
30
34
|
export type { CueLineProtocolLintIssue, CueLineProtocolLintOptions, CueLineProtocolLintResult, CueLineProtocolLintRouting, CueLineProtocolLintSeverity, } from "./protocol/lint-command.js";
|
|
35
|
+
export type { RoutingCandidateExplanation, RoutingCandidateReasonCode, RoutingExplanation, RoutingLaneExplanation, } from "./router/explain.js";
|
|
31
36
|
export type { CueLineRunHandoffBuildOptions, CueLineRunHandoffContent, CueLineRunHandoffOptions, CueLineRunHandoffPacket, } from "./observation/run-handoff.js";
|
|
32
37
|
export type { CueLineRunTimeline, CueLineRunTimelineEntry, CueLineRunTimelineOptions, CueLineTimelineCategory, } from "./observation/run-timeline.js";
|
|
38
|
+
export type { CueLineRunStatusAt, CueLineRunStatusAtOptions, } from "./observation/run-status-at.js";
|
|
39
|
+
export type { CueLineRunDiff, CueLineRunDiffChange, CueLineRunDiffOptions, CueLineRunDiffProjection, } from "./observation/run-diff.js";
|
|
40
|
+
export type { CueLineRunGraph, CueLineRunGraphOptions, } from "./observation/run-graph.js";
|
|
33
41
|
export type { CodexIabBrowserSource, CodexIabPageProbe, CodexIabProbeOptions, CodexIabProbeResult, CodexIabProbeStatus, CodexIabTabSource, } from "./browser/codex-iab/probe.js";
|
|
34
42
|
export type { BrowserAdapter, CueLineResult, CueLineRunState, CueLineRunStatusSummary, RoutingConfig, };
|
package/dist/src/api.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import path from "node:path";
|
|
2
2
|
import { fileURLToPath } from "node:url";
|
|
3
|
-
import { confirmManualControllerSubmission } from "./api-controller-handoff.js";
|
|
3
|
+
import { confirmControllerTurnNotSent, confirmManualControllerSubmission, } from "./api-controller-handoff.js";
|
|
4
4
|
import { verifyCueLineRun } from "./api-run-verification.js";
|
|
5
5
|
import { claimCueLineCallerJob, heartbeatCueLineCallerJob, reconcileExpiredCallerWorkClaims, releaseCueLineCallerJob, startCueLineCallerJob, } from "./api-caller-work.js";
|
|
6
6
|
import { isTerminalRun, reconcileCueLineRuntime, terminalResult, } from "./api-runtime-lifecycle.js";
|
|
@@ -137,6 +137,9 @@ export async function startCueLineRun(options) {
|
|
|
137
137
|
? {}
|
|
138
138
|
: { allowProcessExecution: options.allowProcessExecution }),
|
|
139
139
|
...(options.maxRounds === undefined ? {} : { maxRounds: options.maxRounds }),
|
|
140
|
+
...(options.maxJobEvidenceChars === undefined
|
|
141
|
+
? {}
|
|
142
|
+
: { maxJobEvidenceChars: options.maxJobEvidenceChars }),
|
|
140
143
|
...(options.archiveControllerConversationOnComplete === undefined
|
|
141
144
|
? {}
|
|
142
145
|
: {
|
|
@@ -165,6 +168,9 @@ export async function runCueLine(options) {
|
|
|
165
168
|
}),
|
|
166
169
|
returnAfterControllerSubmission: (options.executor ?? "caller") === "caller",
|
|
167
170
|
...(options.maxRounds === undefined ? {} : { maxRounds: options.maxRounds }),
|
|
171
|
+
...(options.maxJobEvidenceChars === undefined
|
|
172
|
+
? {}
|
|
173
|
+
: { maxJobEvidenceChars: options.maxJobEvidenceChars }),
|
|
168
174
|
...(options.maxRepairAttempts === undefined
|
|
169
175
|
? {}
|
|
170
176
|
: { maxRepairAttempts: options.maxRepairAttempts }),
|
|
@@ -321,6 +327,9 @@ export async function continueCueLineRun(options) {
|
|
|
321
327
|
? {}
|
|
322
328
|
: { abandonOtherPendingTurns: options.abandonOtherPendingTurns }),
|
|
323
329
|
...(options.maxRounds === undefined ? {} : { maxRounds: options.maxRounds }),
|
|
330
|
+
...(options.maxJobEvidenceChars === undefined
|
|
331
|
+
? {}
|
|
332
|
+
: { maxJobEvidenceChars: options.maxJobEvidenceChars }),
|
|
324
333
|
...(options.maxRepairAttempts === undefined
|
|
325
334
|
? {}
|
|
326
335
|
: { maxRepairAttempts: options.maxRepairAttempts }),
|
|
@@ -338,7 +347,7 @@ export async function continueCueLineRun(options) {
|
|
|
338
347
|
: { laneConcurrency: options.laneConcurrency }),
|
|
339
348
|
});
|
|
340
349
|
}
|
|
341
|
-
export { confirmManualControllerSubmission, submitCueLineCallerJobResult, } from "./api-controller-handoff.js";
|
|
350
|
+
export { confirmManualControllerSubmission, confirmControllerTurnNotSent, submitCueLineCallerJobResult, } from "./api-controller-handoff.js";
|
|
342
351
|
export { claimCueLineCallerJob, heartbeatCueLineCallerJob, releaseCueLineCallerJob, startCueLineCallerJob, };
|
|
343
352
|
export { cancelCueLineJob, cancelCueLineRun, listCueLineRuns, loadCueLineRunState, loadCueLineRunStatus, reconcileCueLineRuntime, takeoverCueLineRuntime, } from "./api-runtime-lifecycle.js";
|
|
344
353
|
export { diagnoseCueLineRun, diagnoseCueLineRunStatus, } from "./diagnostics/run-doctor.js";
|
|
@@ -346,7 +355,11 @@ export { verifyCueLineRun };
|
|
|
346
355
|
export { createCodexIabAdapter, probeCodexIab };
|
|
347
356
|
export { waitForCueLineRunChange } from "./observation/run-watch.js";
|
|
348
357
|
export { lintControllerCommandText } from "./protocol/lint-command.js";
|
|
358
|
+
export { explainRoutingConfig } from "./router/explain.js";
|
|
349
359
|
export { buildCueLineRunHandoff, createCueLineRunHandoff, renderCueLineRunHandoffMarkdown, } from "./observation/run-handoff.js";
|
|
350
360
|
export { buildCueLineRunTimeline, loadCueLineRunTimeline, } from "./observation/run-timeline.js";
|
|
361
|
+
export { loadCueLineRunStatusAt } from "./observation/run-status-at.js";
|
|
362
|
+
export { compareCueLineRuns } from "./observation/run-diff.js";
|
|
363
|
+
export { buildCueLineRunGraph, loadCueLineRunGraph, } from "./observation/run-graph.js";
|
|
351
364
|
export { CUELINE_VERSION } from "./version.js";
|
|
352
365
|
//# sourceMappingURL=api.js.map
|