@oatelauser/crosschat 1.5.7 → 1.5.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/CHANGELOG.md +26 -0
- package/README.md +25 -9
- package/dist/claude/registry.js +3 -0
- package/dist/claude/registry.js.map +1 -1
- package/dist/cli.js +39 -19
- package/dist/cli.js.map +1 -1
- package/dist/commands/clean.js +33 -8
- package/dist/commands/clean.js.map +1 -1
- package/dist/commands/send.js +29 -15
- package/dist/commands/send.js.map +1 -1
- package/dist/commands/serve.js +4 -3
- package/dist/commands/serve.js.map +1 -1
- package/dist/commands/status.js +201 -14
- package/dist/commands/status.js.map +1 -1
- package/dist/commands/uninstall.js +19 -8
- package/dist/commands/uninstall.js.map +1 -1
- package/dist/conversation-summary.js +19 -12
- package/dist/conversation-summary.js.map +1 -1
- package/dist/conversations.js +177 -4
- package/dist/conversations.js.map +1 -1
- package/dist/envelope.js +6 -3
- package/dist/envelope.js.map +1 -1
- package/dist/federation.js +10 -5
- package/dist/federation.js.map +1 -1
- package/dist/log-rotate.js +20 -0
- package/dist/log-rotate.js.map +1 -0
- package/dist/outbox.js +6 -6
- package/dist/outbox.js.map +1 -1
- package/dist/rate-limit.js +32 -37
- package/dist/rate-limit.js.map +1 -1
- package/dist/send-log.js +6 -43
- package/dist/send-log.js.map +1 -1
- package/dist/serve/registry.js +2 -2
- package/dist/serve/via-tcp.js +10 -5
- package/dist/serve/via-tcp.js.map +1 -1
- package/dist/state-root.js +23 -0
- package/dist/state-root.js.map +1 -0
- package/dist/watchdog.js +2 -2
- package/dist/watchdog.js.map +1 -1
- package/package.json +1 -1
- package/skills/crosschat/SKILL.md +8 -9
package/CHANGELOG.md
CHANGED
|
@@ -4,6 +4,32 @@
|
|
|
4
4
|
|
|
5
5
|
## [Unreleased]
|
|
6
6
|
|
|
7
|
+
### G0:status 三段式与长引用退场
|
|
8
|
+
|
|
9
|
+
- **裸跑 status = 三段式摘要**:本机会话(计数 + 滞留子句(仅有滞留时)+ 最近 5 会话混排带侧标)/ tcp(每星一行:可达·机器数·客户端态 + 机器封顶 5)/ ssh(对话计数 + 最近 5 段或"无");任何旗标在场 = 明细视图逐字节不变
|
|
10
|
+
- **新旗标 `--stars`**:tcp 星内明细分组(可达 + 守护态 + 全量机器表,含离线星);--json 加 stars 分组新键、旧键全保
|
|
11
|
+
- **`--conversations` ref 列换柄列(cN)**;send 输出 reply-ref 行退役,delivered 行尾 `· 续话 cN`(--json 的 replyRef 完整保留)——**人眼可见处零 30+ 字符 base64**
|
|
12
|
+
- 传输分类器统一:存档 ref 解码为权威(ssh/tcp/单机),send-log 痕迹仅兜底
|
|
13
|
+
- F1 抑制语义修正:**显式选段永不沉默**(--codex 遇 daemon 挂从整屏空串改为显示 unavailable 横幅)
|
|
14
|
+
- 顺手修正:会话行侧标空格分隔;单次发送成本实测累计 -60%(输出侧 -28 token)
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
### 014:状态目录统一与生命周期(全平台一个院子)
|
|
18
|
+
|
|
19
|
+
- **状态目录全平台统一 `~/.crosschat`**(与 tcp 组件同根,不再看 LOCALAPPDATA)——旧院(win `%LOCALAPPDATA%\crosschat`、unix `~/crosschat` 无点)废弃,仅 uninstall 清扫;**升级即换新家,旧数据不迁移**(升级前 `status` 确认发件箱无滞留)
|
|
20
|
+
- **限流蒸发**:删 rate/ 计数目录——限流改读 send-log 尾窗推算(与审计的双重记账消除);drain 重投不再计入窗口
|
|
21
|
+
- **日志轮转**:send-log 与 broker/node 守护日志 >5MB 转 .old 留一份(原 sendLog 截断逻辑删除,历史整份保留)
|
|
22
|
+
- **clean 扩**:默认顺带回收 30 天静默会话分片(--force 全清)
|
|
23
|
+
- 每个生成文件从此都有死期或封顶:自动层(滞留信/限流/旧柄/轮转)、手动层(clean)、终局层(uninstall)
|
|
24
|
+
|
|
25
|
+
### F2:会话短柄(抄不错工程)
|
|
26
|
+
|
|
27
|
+
- **reply-hint 从 100+ 字符 mc2_ ref 换成 2 字符本地短柄** `--conversation c3`——LLM 手抄长 ref 单字符出错这一现场实证的最脆弱环节从根消灭;信封固定开销累计 **-79%**(420→~90 字符)
|
|
28
|
+
- 短柄注册表**寄生会话分片零新文件**:nonce 键同线程同柄、全机 max+1 分配、CAS 撞号顶替、每分片 8 柄 LRU、柄随轮次自新;过期/撞号报错教 `--to` 兜底
|
|
29
|
+
- `--conversation` 双形态:`c<N>` 与 `mc1_/mc2_` 永续兼容;hint 生成消费同机同版本(零版本偏差)
|
|
30
|
+
- skill:照抄两字符柄,"逐字比对"纪律对回信作废
|
|
31
|
+
|
|
32
|
+
|
|
7
33
|
## [1.5.7] - 2026-10-13
|
|
8
34
|
|
|
9
35
|
### 修复
|
package/README.md
CHANGED
|
@@ -55,7 +55,7 @@ crosschat install-skills
|
|
|
55
55
|
|
|
56
56
|
三条安装命令照常执行——装在 WSL 里、agent 也装在 WSL 里(同一侧)即可,源码安装同样适用。例外只有两条:
|
|
57
57
|
|
|
58
|
-
-
|
|
58
|
+
- **两侧独立**:状态目录全平台统一 `~/.crosschat`(Windows 侧同名点目录),两侧互不相通,管道/socket 不过系统边界
|
|
59
59
|
- **agent 同侧**:WSL 内用 unix 版 claude / codex CLI(Node ≥ 22 同侧装)
|
|
60
60
|
|
|
61
61
|
<details><summary>claude 安装受阻时(受限网络)</summary>
|
|
@@ -81,7 +81,7 @@ mac:unix 实现共享,理论可达、未实测。
|
|
|
81
81
|
🤖 worker 收到 📨 来自另一会话的消息:
|
|
82
82
|
<cross-session-message from-name="codex/01a…" turn="1">
|
|
83
83
|
给我回复你好的消息
|
|
84
|
-
回复请运行: crosschat send --conversation
|
|
84
|
+
回复请运行: crosschat send --conversation c3 --body "<你的回复>"
|
|
85
85
|
🤖 worker[worker -> boss] 你好
|
|
86
86
|
🤖 boss 收到 📨 你好(turn 2)
|
|
87
87
|
```
|
|
@@ -97,7 +97,7 @@ worker 零配置、没学过任何协议——信封说怎么回就怎么回。
|
|
|
97
97
|
🤖 beta2 收到 📨 来自另一会话的消息:
|
|
98
98
|
<cross-session-message from-name="codex/boss@win" turn="1">
|
|
99
99
|
你好 beta2,这是跨机问候
|
|
100
|
-
回复请运行: crosschat send --conversation
|
|
100
|
+
回复请运行: crosschat send --conversation c3 --body "<你的回复>"
|
|
101
101
|
🤖 beta2[beta2 -> boss] 收到!跨机闭环成立
|
|
102
102
|
🤖 boss 收到 📨 收到!跨机闭环成立(turn 2,自动经 ssh 回到 win)
|
|
103
103
|
```
|
|
@@ -113,7 +113,7 @@ worker 零配置、没学过任何协议——信封说怎么回就怎么回。
|
|
|
113
113
|
🤖 worker2 收到 📨 来自另一会话的消息:
|
|
114
114
|
<cross-session-message from-name="boss" turn="1">
|
|
115
115
|
…跑一次构建并回报结果…
|
|
116
|
-
回复请运行: crosschat send --conversation
|
|
116
|
+
回复请运行: crosschat send --conversation c3 --body "<你的回复>"
|
|
117
117
|
🤖 worker2[worker2 -> boss] 构建完成,产物清单见下一条
|
|
118
118
|
🤖 boss 收到 📨 构建完成,产物清单见下一条(turn 2,自动经 broker 跨机回来)
|
|
119
119
|
```
|
|
@@ -137,11 +137,11 @@ ssh 配置方向一句话:**每台机写自己的 `~/.ssh/config`,内容是"
|
|
|
137
137
|
|
|
138
138
|
```
|
|
139
139
|
crosschat send --to <名字> --body "<正文>" # 新消息(名字含空格加引号;未命名 codex 线程可用 id8 或完整 id 寻址,status 可见)
|
|
140
|
-
crosschat send --conversation <ref
|
|
140
|
+
crosschat send --conversation <ref|c柄> --body "<正文>" # 回复(照抄信封里的命令或 delivered 行尾的 cN)
|
|
141
141
|
crosschat send --via ssh:<对端hostname> --to <名/id8> --body "…" # 跨机发送(见 📡 通信方式)
|
|
142
142
|
crosschat send --via tcp:<机器名/mid8> --to <名> --body "…" [--file <路径>] # 跨机 tcp 直发 + 文件通道(见转发器手册)
|
|
143
143
|
echo … | crosschat send --to <名字> # 正文走 stdin
|
|
144
|
-
crosschat status [--json] [--conversations] [--claude|--codex] [--name <子串>] [--all] #
|
|
144
|
+
crosschat status [--json] [--conversations] [--stars] [--claude|--codex] [--name <子串>] [--all] # 裸跑三段式摘要;旗标在场=明细视图(--via tcp|ssh 配 --conversations 按传输滤)
|
|
145
145
|
crosschat doctor # 一键环境体检(有 ❌ 时退出码 1)
|
|
146
146
|
crosschat serve [--name/--port/--gen-key/--list/--remove/--connect/--detach/--stop] # tcp 转发器:broker(--name 星名)/节点/钥匙管理(见转发器手册)
|
|
147
147
|
crosschat clean [--force] # 清 tcp 收件/断点残留(默认懒删除规则;--force 全清)
|
|
@@ -152,9 +152,25 @@ crosschat codex [任意 codex 参数…] # crosschat 增强启
|
|
|
152
152
|
crosschat -v | --version | help # 版本 / 帮助
|
|
153
153
|
```
|
|
154
154
|
|
|
155
|
-
|
|
155
|
+
`status` 裸跑为三段式摘要(任何过滤旗标/json 在场则回到明细视图):
|
|
156
156
|
|
|
157
|
-
|
|
157
|
+
```
|
|
158
|
+
本机会话: claude 2 · codex 3 · 滞留 1(看门狗运行中)
|
|
159
|
+
claude worker 3 分钟前
|
|
160
|
+
codex 调试线程 2 小时前
|
|
161
|
+
(全量: --claude|--codex|--name)
|
|
162
|
+
tcp: 共 1 星
|
|
163
|
+
cloud ✓ 可达,3 机器在线 · 客户端 online
|
|
164
|
+
hub(a1b2c3d4)、host-b(9f8e7d6c)
|
|
165
|
+
(星内明细: --stars)
|
|
166
|
+
ssh: 共 2 段对话
|
|
167
|
+
worker2@host-b turn 5 3 分钟前
|
|
168
|
+
(明细: --conversations --via ssh)
|
|
169
|
+
```
|
|
170
|
+
|
|
171
|
+
发送输出三种状态:`delivered`(已投递)/ `queued`(已交对端 codex 队列待消费,轮末处理——**对方回信到来即证明已处理**,勿发消息追问)/ `parked`(对方忙,已入发件箱,看门狗自动重投;输出含队列深度与 mailbox 镜像路径)/ 错误码(见排障)。人眼输出行尾附 `· 续话 cN`——本地会话短柄,`crosschat send --conversation cN` 即接续。`status --conversations` 的末条状态是**本机发送账本视角**(对端回信不产生本机账目),`queued` 为终态。
|
|
172
|
+
|
|
173
|
+
`status --conversations` 另看对话总览:每对端点的最近方向、相对时间、轮次、末条状态、滞留数与行尾续话柄(与 `--json` 组合输出同结构数组)。
|
|
158
174
|
|
|
159
175
|
## 🧯 错误码排障
|
|
160
176
|
|
|
@@ -175,7 +191,7 @@ crosschat -v | --version | help # 版本 / 帮助
|
|
|
175
191
|
| `CODEX_APPROVAL_REQUIRED` | 对方在等审批——工具永不代答,去对方窗口处理 |
|
|
176
192
|
| `CLAUDE_PIPE_*` / `CODEX_*UNCERTAIN` | 状态不明——**勿盲目重发**,先 `status` 核实 |
|
|
177
193
|
|
|
178
|
-
**发送审计**:每次发送的最终结果(delivered/queued/parked/failed、时间、对端、发送方显示名 fromName
|
|
194
|
+
**发送审计**:每次发送的最终结果(delivered/queued/parked/failed、时间、对端、发送方显示名 fromName、回执)追加记录在 `~/.crosschat/send-log.jsonl`(全平台同路径;超 5MB 轮转成 `.old`);codex 投递附 rollout 回执(消息已确认落入对方会话历史 = `receipt: confirmed`)。命令超时转后台后结果同样在案,事后可查。
|
|
179
195
|
|
|
180
196
|
边界与限制(16KiB / 限流 / 发件箱 / 信任边界 / daemon 依赖)→ [使用手册](docs/usage.md)
|
|
181
197
|
|
package/dist/claude/registry.js
CHANGED
|
@@ -29,6 +29,9 @@ function parseEntry(text) {
|
|
|
29
29
|
status: typeof value.status === 'string' ? value.status : 'unknown',
|
|
30
30
|
cwd: typeof value.cwd === 'string' ? value.cwd : undefined,
|
|
31
31
|
messagingSocketPath: value.messagingSocketPath,
|
|
32
|
+
// G0 三段式摘要的最近会话排序源;旧文件缺字段 → undefined(排序退回 0)。
|
|
33
|
+
...(typeof value.updatedAt === 'number' && Number.isFinite(value.updatedAt) ? { updatedAt: value.updatedAt } : {}),
|
|
34
|
+
...(typeof value.startedAt === 'number' && Number.isFinite(value.startedAt) ? { startedAt: value.startedAt } : {}),
|
|
32
35
|
};
|
|
33
36
|
}
|
|
34
37
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/claude/registry.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACpD,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,EAAE,cAAc,EAAE,MAAM,kCAAkC,CAAC;AAElE,yFAAyF;AACzF,MAAM,cAAc,GAAG,IAAI,GAAG,CAAC,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/claude/registry.ts"],"names":[],"mappings":"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"}
|
package/dist/cli.js
CHANGED
|
@@ -13,9 +13,9 @@ import { runInstallSkills } from './commands/install-skills.js';
|
|
|
13
13
|
import { runDoctor } from './commands/doctor.js';
|
|
14
14
|
import { runClaudeWrapper } from './commands/claude-wrapper.js';
|
|
15
15
|
import { runCodexWrapper } from './commands/codex-wrapper.js';
|
|
16
|
-
import { defaultRateDir } from './rate-limit.js';
|
|
17
16
|
import { defaultOutboxDir, drain } from './outbox.js';
|
|
18
|
-
import {
|
|
17
|
+
import { legacyStateRoots, stateRoot } from './state-root.js';
|
|
18
|
+
import { runWatchdog, spawnWatchdog as ensureWatchdog, watchdogStatus } from './watchdog.js';
|
|
19
19
|
import { appendSendLog, confirmInRollout, defaultSendLogFile, readSendLogTail } from './send-log.js';
|
|
20
20
|
import { defaultConversationsFile } from './conversations.js';
|
|
21
21
|
import { defaultSshExec } from './federation.js';
|
|
@@ -70,6 +70,11 @@ commands:
|
|
|
70
70
|
sessions on a remote machine (same
|
|
71
71
|
filters; ssh peers: ssh <host>
|
|
72
72
|
crosschat status)
|
|
73
|
+
--stars tcp star detail: per-star
|
|
74
|
+
reachability, daemon state, full machine
|
|
75
|
+
table (bare run shows the three-section
|
|
76
|
+
summary; any filter flag falls back to
|
|
77
|
+
the detail view)
|
|
73
78
|
--all also list unnamed sessions
|
|
74
79
|
(hidden by default in the main view)
|
|
75
80
|
doctor environment health check (exits 1 on any ❌)
|
|
@@ -102,13 +107,16 @@ commands:
|
|
|
102
107
|
install-skills [--dir <root>]
|
|
103
108
|
install the agent skill into <root>/.claude and
|
|
104
109
|
<root>/.codex (default root: home directory)
|
|
105
|
-
clean [--force] clean tcp file-channel leftovers (inbox/parts)
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
110
|
+
clean [--force] clean tcp file-channel leftovers (inbox/parts)
|
|
111
|
+
and 30-day-stale conversation shards: default =
|
|
112
|
+
lazy rules (items older than 5 days, or inbox
|
|
113
|
+
over 512MiB oldest-first; shards untouched for
|
|
114
|
+
30 days); --force deletes everything without
|
|
115
|
+
confirmation
|
|
116
|
+
uninstall [--yes] remove crosschat data: ~/.crosschat (state
|
|
117
|
+
included), pre-014 legacy state dirs, and both
|
|
118
|
+
agent skills (refuses while "crosschat serve"
|
|
119
|
+
runs; asks y/n unless --yes)
|
|
112
120
|
claude [any native args] start the real claude CLI with inbound peer
|
|
113
121
|
messaging enabled; any native claude args
|
|
114
122
|
(e.g. -c, --model <m>, --help) pass through
|
|
@@ -176,15 +184,17 @@ export function parseSendArgs(argv) {
|
|
|
176
184
|
return args;
|
|
177
185
|
}
|
|
178
186
|
/**
|
|
179
|
-
* status accepts --json/--conversations/--claude/--codex/--name <v>/--via <v>/--all
|
|
187
|
+
* status accepts --json/--conversations/--stars/--claude/--codex/--name <v>/--via <v>/--all
|
|
180
188
|
* (flags at most once). Validation: --claude/--codex are mutually exclusive and
|
|
181
189
|
* main-view only; bare --via (tcp|ssh) only combines with --conversations;
|
|
182
|
-
* --via tcp:<机器> (E1) only combines with the main view (remote enumeration)
|
|
190
|
+
* --via tcp:<机器> (E1) only combines with the main view (remote enumeration);
|
|
191
|
+
* --stars (G0) only combines with --json (its own grouped view).
|
|
183
192
|
* `filters` is absent when no filter flag was given.
|
|
184
193
|
*/
|
|
185
194
|
export function parseStatusArgs(argv) {
|
|
186
195
|
let json = false;
|
|
187
196
|
let conversations = false;
|
|
197
|
+
let stars = false;
|
|
188
198
|
let section;
|
|
189
199
|
let name;
|
|
190
200
|
let via;
|
|
@@ -198,6 +208,8 @@ export function parseStatusArgs(argv) {
|
|
|
198
208
|
json = true;
|
|
199
209
|
else if (token === '--conversations' && !conversations)
|
|
200
210
|
conversations = true;
|
|
211
|
+
else if (token === '--stars' && !stars)
|
|
212
|
+
stars = true;
|
|
201
213
|
else if (token === '--claude' && section === undefined)
|
|
202
214
|
section = 'claude';
|
|
203
215
|
else if (token === '--codex' && section === undefined)
|
|
@@ -225,7 +237,7 @@ export function parseStatusArgs(argv) {
|
|
|
225
237
|
throw new MultichatError('USAGE', 'status: --via 只接受 tcp、ssh 或 tcp:<机器>');
|
|
226
238
|
}
|
|
227
239
|
else {
|
|
228
|
-
throw new MultichatError('USAGE', `status takes only --json/--conversations/--claude/--codex/--name/--via/--all; got: ${argv.join(' ')}`);
|
|
240
|
+
throw new MultichatError('USAGE', `status takes only --json/--conversations/--stars/--claude/--codex/--name/--via/--all; got: ${argv.join(' ')}`);
|
|
229
241
|
}
|
|
230
242
|
}
|
|
231
243
|
if (section !== undefined && conversations) {
|
|
@@ -240,10 +252,14 @@ export function parseStatusArgs(argv) {
|
|
|
240
252
|
if (viaTarget !== undefined && conversations) {
|
|
241
253
|
throw new MultichatError('USAGE', 'status: --via tcp:<机器> 是主视图远程枚举,不与 --conversations 组合');
|
|
242
254
|
}
|
|
255
|
+
if (stars && (conversations || section !== undefined || name !== undefined || via !== undefined || viaTarget !== undefined || all)) {
|
|
256
|
+
throw new MultichatError('USAGE', 'status: --stars 是独立视图,仅可与 --json 组合');
|
|
257
|
+
}
|
|
243
258
|
const any = section !== undefined || name !== undefined || via !== undefined || all;
|
|
244
259
|
return {
|
|
245
260
|
json,
|
|
246
261
|
conversations,
|
|
262
|
+
...(stars ? { stars: true } : {}),
|
|
247
263
|
...(any
|
|
248
264
|
? {
|
|
249
265
|
filters: {
|
|
@@ -381,7 +397,7 @@ function realSendDeps(stdinText) {
|
|
|
381
397
|
listCodexThreads: () => listCodexThreads(),
|
|
382
398
|
deliverClaude: (target, content) => deliverToClaudeSession(target, content),
|
|
383
399
|
deliverCodex: (threadId, content) => deliverToCodexThread(threadId, content),
|
|
384
|
-
|
|
400
|
+
sendLogFile: defaultSendLogFile(),
|
|
385
401
|
outboxDir: defaultOutboxDir(),
|
|
386
402
|
now: () => Date.now(),
|
|
387
403
|
spawnWatchdog: () => ensureWatchdog(defaultOutboxDir()),
|
|
@@ -425,12 +441,14 @@ function realStatusDeps() {
|
|
|
425
441
|
sendLogTail: () => readSendLogTail(defaultSendLogFile()),
|
|
426
442
|
// E1:status --via tcp:<机器> 的远程枚举腿(未入网时 runViaTcpStatus 自带教学)。
|
|
427
443
|
fetchRemoteStatus: (via) => runViaTcpStatus(via, { env: process.env, tcpBaseDir: join(homedir(), '.crosschat'), machineId: () => machineId() }),
|
|
444
|
+
// G0 三段式摘要的滞留子句:发件箱看门狗心跳。
|
|
445
|
+
watchdogRunning: () => watchdogStatus(defaultOutboxDir()).running,
|
|
428
446
|
};
|
|
429
447
|
}
|
|
430
448
|
function drainAtEntry() {
|
|
431
449
|
return drainOutboxAtEntry({
|
|
432
450
|
outboxDir: defaultOutboxDir(),
|
|
433
|
-
|
|
451
|
+
sendLogFile: defaultSendLogFile(),
|
|
434
452
|
deliverCodex: (threadId, content, busyTimeoutMs) => deliverToCodexThread(threadId, content, { busyTimeoutMs }),
|
|
435
453
|
err: (line) => process.stderr.write(`${line}\n`),
|
|
436
454
|
});
|
|
@@ -452,7 +470,7 @@ function printFailure(err) {
|
|
|
452
470
|
export async function drainOutboxAtEntry(deps) {
|
|
453
471
|
let results;
|
|
454
472
|
try {
|
|
455
|
-
results = await drain(deps.outboxDir, (threadId, content, busyTimeoutMs) => deps.deliverCodex(threadId, content, busyTimeoutMs), {
|
|
473
|
+
results = await drain(deps.outboxDir, (threadId, content, busyTimeoutMs) => deps.deliverCodex(threadId, content, busyTimeoutMs), { sendLogFile: deps.sendLogFile });
|
|
456
474
|
}
|
|
457
475
|
catch {
|
|
458
476
|
return; // opportunistic: the real command still runs
|
|
@@ -483,7 +501,7 @@ async function main(argv) {
|
|
|
483
501
|
// loop when spawned with --watch. Not in usage on purpose.
|
|
484
502
|
if (command === '__drain') {
|
|
485
503
|
if (rest.includes('--watch')) {
|
|
486
|
-
await runWatchdog(defaultOutboxDir(),
|
|
504
|
+
await runWatchdog(defaultOutboxDir(), defaultSendLogFile(), {
|
|
487
505
|
deliverCodex: (threadId, content, busyTimeoutMs) => deliverToCodexThread(threadId, content, { busyTimeoutMs }),
|
|
488
506
|
err: (line) => process.stderr.write(`${line}\n`),
|
|
489
507
|
});
|
|
@@ -518,9 +536,9 @@ async function main(argv) {
|
|
|
518
536
|
return 0;
|
|
519
537
|
}
|
|
520
538
|
try {
|
|
521
|
-
const { json, conversations, filters, viaTarget } = parseStatusArgs(rest);
|
|
539
|
+
const { json, conversations, stars, filters, viaTarget } = parseStatusArgs(rest);
|
|
522
540
|
await drainAtEntry();
|
|
523
|
-
const output = await runStatus(realStatusDeps(), json, conversations, filters, viaTarget);
|
|
541
|
+
const output = await runStatus(realStatusDeps(), json, conversations, filters, viaTarget, stars);
|
|
524
542
|
process.stdout.write(`${output}\n`);
|
|
525
543
|
return 0;
|
|
526
544
|
}
|
|
@@ -578,6 +596,7 @@ async function main(argv) {
|
|
|
578
596
|
try {
|
|
579
597
|
return runClean(parseCleanArgs(rest), {
|
|
580
598
|
tcpDir: join(homedir(), '.crosschat', 'tcp'),
|
|
599
|
+
conversationsDir: join(stateRoot(), 'conversations'),
|
|
581
600
|
now: () => Date.now(),
|
|
582
601
|
stdout: (line) => process.stdout.write(`${line}\n`),
|
|
583
602
|
});
|
|
@@ -595,7 +614,8 @@ async function main(argv) {
|
|
|
595
614
|
const home = homedir();
|
|
596
615
|
return await runUninstall(parseUninstallArgs(rest), {
|
|
597
616
|
crosschatHome: join(home, '.crosschat'),
|
|
598
|
-
stateRoot:
|
|
617
|
+
stateRoot: stateRoot(),
|
|
618
|
+
legacyStateRoots: legacyStateRoots(),
|
|
599
619
|
skillDirs: [join(home, '.claude', 'skills', 'crosschat'), join(home, '.codex', 'skills', 'crosschat')],
|
|
600
620
|
now: () => Date.now(),
|
|
601
621
|
stdout: (line) => process.stdout.write(`${line}\n`),
|
package/dist/cli.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACjE,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,OAAO,MAAM,cAAc,CAAC;AACnC,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAChD,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,OAAO,EAAgC,MAAM,oBAAoB,CAAC;AAC3E,OAAO,EAAE,SAAS,EAAuC,MAAM,sBAAsB,CAAC;AACtF,OAAO,EAAE,gBAAgB,EAA0B,MAAM,8BAA8B,CAAC;AACxF,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAChE,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,EAAE,gBAAgB,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACtD,OAAO,EAAE,gBAAgB,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC9D,OAAO,EAAE,WAAW,EAAE,aAAa,IAAI,cAAc,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAC7F,OAAO,EAAE,aAAa,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AACrG,OAAO,EAAE,wBAAwB,EAAE,MAAM,oBAAoB,CAAC;AAC9D,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AACjD,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AACrD,OAAO,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AAClE,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AACxE,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAC1D,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAkB,MAAM,qBAAqB,CAAC;AAC9E,OAAO,EAAE,QAAQ,EAAkB,MAAM,qBAAqB,CAAC;AAC/D,OAAO,EAAE,YAAY,EAAsB,MAAM,yBAAyB,CAAC;AAC3E,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACrE,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEjD,MAAM,OAAO,GACX,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,GAAG,CAAC,iBAAiB,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,CAG7E,CAAC,OAAO,CAAC;AAEV,MAAM,KAAK,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2CA+C6B,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA6DtD,CAAC;AAEF,uTAAuT;AACvT,MAAM,UAAU,aAAa,CAAC,IAAuB;IACnD,MAAM,IAAI,GAAa,EAAE,CAAC;IAC1B,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC,CAAC,MAAM,EAAE,gBAAgB,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,eAAe,EAAE,YAAY,CAAC,CAAC,CAAC;IAC9H,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACrC,MAAM,KAAK,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;QACtB,IAAI,KAAK,KAAK,SAAS,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;YACnD,MAAM,IAAI,cAAc,CAAC,OAAO,EAAE,8BAA8B,KAAK,IAAI,EAAE,EAAE,CAAC,CAAC;QACjF,CAAC;QACD,MAAM,EAAE,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QAC9B,MAAM,IAAI,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;QACjD,MAAM,MAAM,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QACxD,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;YACtB,IAAI,MAAM,KAAK,SAAS;gBAAE,MAAM,IAAI,cAAc,CAAC,OAAO,EAAE,6BAA6B,CAAC,CAAC;YAC3F,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;YACjB,SAAS;QACX,CAAC;QACD,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC;YAAE,MAAM,IAAI,cAAc,CAAC,OAAO,EAAE,yBAAyB,IAAI,EAAE,CAAC,CAAC;QAC7F,MAAM,KAAK,GAAG,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;QACxD,IAAI,KAAK,KAAK,SAAS;YAAE,MAAM,IAAI,cAAc,CAAC,OAAO,EAAE,SAAS,IAAI,mBAAmB,CAAC,CAAC;QAC7F,IAAI,IAAI,KAAK,MAAM;YAAE,IAAI,CAAC,EAAE,GAAG,KAAK,CAAC;aAChC,IAAI,IAAI,KAAK,gBAAgB;YAAE,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;aACzD,IAAI,IAAI,KAAK,OAAO;YAAE,IAAI,CAAC,GAAG,GAAG,KAAK,CAAC;aACvC,IAAI,IAAI,KAAK,QAAQ;YAAE,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;aAC5C,IAAI,IAAI,KAAK,UAAU;YAAE,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;aAC7C,IAAI,IAAI,KAAK,eAAe;YAAE,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;aACrD,IAAI,IAAI,KAAK,YAAY;YAAE,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;;YAChD,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;IAC5B,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,eAAe,CAAC,IAAuB;IASrD,IAAI,IAAI,GAAG,KAAK,CAAC;IACjB,IAAI,aAAa,GAAG,KAAK,CAAC;IAC1B,IAAI,KAAK,GAAG,KAAK,CAAC;IAClB,IAAI,OAAuC,CAAC;IAC5C,IAAI,IAAwB,CAAC;IAC7B,IAAI,GAA8B,CAAC;IACnC,IAAI,SAA6B,CAAC;IAClC,IAAI,GAAG,GAAG,KAAK,CAAC;IAChB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACrC,MAAM,KAAK,GAAG,IAAI,CAAC,CAAC,CAAE,CAAC;QACvB,MAAM,EAAE,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QAC9B,MAAM,MAAM,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QACxD,IAAI,KAAK,KAAK,QAAQ,IAAI,CAAC,IAAI;YAAE,IAAI,GAAG,IAAI,CAAC;aACxC,IAAI,KAAK,KAAK,iBAAiB,IAAI,CAAC,aAAa;YAAE,aAAa,GAAG,IAAI,CAAC;aACxE,IAAI,KAAK,KAAK,SAAS,IAAI,CAAC,KAAK;YAAE,KAAK,GAAG,IAAI,CAAC;aAChD,IAAI,KAAK,KAAK,UAAU,IAAI,OAAO,KAAK,SAAS;YAAE,OAAO,GAAG,QAAQ,CAAC;aACtE,IAAI,KAAK,KAAK,SAAS,IAAI,OAAO,KAAK,SAAS;YAAE,OAAO,GAAG,OAAO,CAAC;aACpE,IAAI,KAAK,KAAK,OAAO,IAAI,CAAC,GAAG;YAAE,GAAG,GAAG,IAAI,CAAC;aAC1C,IAAI,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;YAC3D,MAAM,KAAK,GAAG,MAAM,IAAI,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;YAClC,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,EAAE;gBAAE,MAAM,IAAI,cAAc,CAAC,OAAO,EAAE,iCAAiC,CAAC,CAAC;YAC9G,IAAI,GAAG,KAAK,CAAC;QACf,CAAC;aAAM,IAAI,KAAK,KAAK,OAAO,IAAI,KAAK,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC3D,MAAM,KAAK,GAAG,MAAM,IAAI,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;YAClC,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,EAAE;gBAAE,MAAM,IAAI,cAAc,CAAC,OAAO,EAAE,6DAA6D,CAAC,CAAC;YAC1I,IAAI,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC;gBAAE,SAAS,GAAG,KAAK,CAAC;iBAC3C,IAAI,KAAK,KAAK,KAAK,IAAI,KAAK,KAAK,KAAK;gBAAE,GAAG,GAAG,KAAK,CAAC;iBACpD,IAAI,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;gBAClC,MAAM,IAAI,cAAc,CAAC,OAAO,EAAE,8EAA8E,CAAC,CAAC;YACpH,CAAC;;gBAAM,MAAM,IAAI,cAAc,CAAC,OAAO,EAAE,sCAAsC,CAAC,CAAC;QACnF,CAAC;aAAM,CAAC;YACN,MAAM,IAAI,cAAc,CACtB,OAAO,EACP,8FAA8F,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAC/G,CAAC;QACJ,CAAC;IACH,CAAC;IACD,IAAI,OAAO,KAAK,SAAS,IAAI,aAAa,EAAE,CAAC;QAC3C,MAAM,IAAI,cAAc,CAAC,OAAO,EAAE,kDAAkD,CAAC,CAAC;IACxF,CAAC;IACD,IAAI,GAAG,KAAK,SAAS,IAAI,CAAC,aAAa,EAAE,CAAC;QACxC,MAAM,IAAI,cAAc,CAAC,OAAO,EAAE,qCAAqC,CAAC,CAAC;IAC3E,CAAC;IACD,IAAI,SAAS,KAAK,SAAS,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;QACjD,MAAM,IAAI,cAAc,CAAC,OAAO,EAAE,iDAAiD,CAAC,CAAC;IACvF,CAAC;IACD,IAAI,SAAS,KAAK,SAAS,IAAI,aAAa,EAAE,CAAC;QAC7C,MAAM,IAAI,cAAc,CAAC,OAAO,EAAE,uDAAuD,CAAC,CAAC;IAC7F,CAAC;IACD,IAAI,KAAK,IAAI,CAAC,aAAa,IAAI,OAAO,KAAK,SAAS,IAAI,IAAI,KAAK,SAAS,IAAI,GAAG,KAAK,SAAS,IAAI,SAAS,KAAK,SAAS,IAAI,GAAG,CAAC,EAAE,CAAC;QACnI,MAAM,IAAI,cAAc,CAAC,OAAO,EAAE,qCAAqC,CAAC,CAAC;IAC3E,CAAC;IACD,MAAM,GAAG,GAAG,OAAO,KAAK,SAAS,IAAI,IAAI,KAAK,SAAS,IAAI,GAAG,KAAK,SAAS,IAAI,GAAG,CAAC;IACpF,OAAO;QACL,IAAI;QACJ,aAAa;QACb,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACjC,GAAG,CAAC,GAAG;YACL,CAAC,CAAC;gBACE,OAAO,EAAE;oBACP,GAAG,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBAC7C,GAAG,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBACvC,GAAG,CAAC,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBACrC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;iBAC9B;aACF;YACH,CAAC,CAAC,EAAE,CAAC;QACP,GAAG,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAClD,CAAC;AACJ,CAAC;AAED,uEAAuE;AACvE,MAAM,UAAU,sBAAsB,CAAC,IAAuB;IAC5D,MAAM,IAAI,GAAsB,EAAE,CAAC;IACnC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACrC,MAAM,KAAK,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;QACtB,IAAI,KAAK,KAAK,SAAS,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;YACnD,MAAM,IAAI,cAAc,CAAC,OAAO,EAAE,wCAAwC,KAAK,IAAI,EAAE,EAAE,CAAC,CAAC;QAC3F,CAAC;QACD,MAAM,EAAE,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QAC9B,MAAM,IAAI,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;QACjD,MAAM,MAAM,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QACxD,IAAI,IAAI,KAAK,OAAO;YAAE,MAAM,IAAI,cAAc,CAAC,OAAO,EAAE,mCAAmC,IAAI,EAAE,CAAC,CAAC;QACnG,MAAM,KAAK,GAAG,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;QACxD,IAAI,KAAK,KAAK,SAAS;YAAE,MAAM,IAAI,cAAc,CAAC,OAAO,EAAE,wCAAwC,CAAC,CAAC;QACrG,IAAI,CAAC,GAAG,GAAG,KAAK,CAAC;IACnB,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,cAAc,CAAC,IAAuB;IACpD,MAAM,IAAI,GAAc,EAAE,CAAC;IAC3B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACrC,MAAM,KAAK,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;QACtB,IAAI,KAAK,KAAK,SAAS,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;YACnD,MAAM,IAAI,cAAc,CAAC,OAAO,EAAE,+BAA+B,KAAK,IAAI,EAAE,EAAE,CAAC,CAAC;QAClF,CAAC;QACD,MAAM,EAAE,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QAC9B,MAAM,IAAI,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;QACjD,MAAM,MAAM,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QACxD,MAAM,SAAS,GAAG,GAAuB,EAAE;YACzC,IAAI,MAAM,KAAK,SAAS;gBAAE,OAAO,MAAM,CAAC;YACxC,MAAM,IAAI,GAAG,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;YACzB,IAAI,IAAI,KAAK,SAAS,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;gBACjD,CAAC,EAAE,CAAC;gBACJ,OAAO,IAAI,CAAC;YACd,CAAC;YACD,OAAO,SAAS,CAAC;QACnB,CAAC,CAAC;QACF,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;YACtB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACnB,CAAC;aAAM,IAAI,IAAI,KAAK,UAAU,EAAE,CAAC;YAC/B,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;QACrB,CAAC;aAAM,IAAI,IAAI,KAAK,WAAW,EAAE,CAAC;YAChC,IAAI,CAAC,OAAO,GAAG,SAAS,EAAE,IAAI,EAAE,CAAC;QACnC,CAAC;aAAM,IAAI,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,UAAU,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;YACzE,MAAM,KAAK,GAAG,SAAS,EAAE,CAAC;YAC1B,IAAI,KAAK,KAAK,SAAS;gBAAE,MAAM,IAAI,cAAc,CAAC,OAAO,EAAE,UAAU,IAAI,mBAAmB,CAAC,CAAC;YAC9F,IAAI,IAAI,KAAK,QAAQ;gBAAE,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;iBACvC,IAAI,IAAI,KAAK,QAAQ;gBAAE,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;;gBAC5C,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;QAC3B,CAAC;aAAM,IAAI,IAAI,KAAK,WAAW,EAAE,CAAC;YAChC,IAAI,CAAC,SAAS,GAAG,SAAS,EAAE,IAAI,GAAG,CAAC;QACtC,CAAC;aAAM,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC7B,MAAM,KAAK,GAAG,SAAS,EAAE,CAAC;YAC1B,IAAI,KAAK,KAAK,SAAS;gBAAE,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC;iBAC7C,IAAI,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,MAAM;gBAAE,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;;gBACpE,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC,CAAC,kBAAkB;QACpD,CAAC;aAAM,CAAC;YACN,MAAM,IAAI,cAAc,CAAC,OAAO,EAAE,0BAA0B,IAAI,EAAE,CAAC,CAAC;QACtE,CAAC;IACH,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,+DAA+D;AAC/D,MAAM,UAAU,cAAc,CAAC,IAAuB;IACpD,MAAM,IAAI,GAAc,EAAE,CAAC;IAC3B,KAAK,MAAM,KAAK,IAAI,IAAI,EAAE,CAAC;QACzB,IAAI,KAAK,KAAK,SAAS;YAAE,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;;YACtC,MAAM,IAAI,cAAc,CAAC,OAAO,EAAE,0BAA0B,KAAK,EAAE,CAAC,CAAC;IAC5E,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,IAAuB;IACxD,MAAM,IAAI,GAAkB,EAAE,CAAC;IAC/B,KAAK,MAAM,KAAK,IAAI,IAAI,EAAE,CAAC;QACzB,IAAI,KAAK,KAAK,OAAO;YAAE,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC;;YAClC,MAAM,IAAI,cAAc,CAAC,OAAO,EAAE,8BAA8B,KAAK,EAAE,CAAC,CAAC;IAChF,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,aAAa;IAAmC,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;IACnF,IAAI,KAAK,CAAC,KAAK;QAAE,OAAO,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IACnD,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,MAAM,MAAM,GAAa,EAAE,CAAC;QAC5B,KAAK,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,KAAa,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;QACxD,KAAK,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,SAAS,CAAC,CAAC,CAAC;QACpF,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IAC5B,CAAC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,YAAY,CAAC,SAA6B;IACjD,OAAO;QACL,GAAG,EAAE,OAAO,CAAC,GAAG;QAChB,SAAS;QACT,kBAAkB,EAAE,GAAG,EAAE,CAAC,kBAAkB,EAAE;QAC9C,gBAAgB,EAAE,GAAG,EAAE,CAAC,gBAAgB,EAAE;QAC1C,aAAa,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,EAAE,CAAC,sBAAsB,CAAC,MAAM,EAAE,OAAO,CAAC;QAC3E,YAAY,EAAE,CAAC,QAAQ,EAAE,OAAO,EAAE,EAAE,CAAC,oBAAoB,CAAC,QAAQ,EAAE,OAAO,CAAC;QAC5E,WAAW,EAAE,kBAAkB,EAAE;QACjC,SAAS,EAAE,gBAAgB,EAAE;QAC7B,GAAG,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE;QACrB,aAAa,EAAE,GAAG,EAAE,CAAC,cAAc,CAAC,gBAAgB,EAAE,CAAC;QACvD,SAAS,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,aAAa,CAAC,kBAAkB,EAAE,EAAE,KAAK,CAAC;QAChE,cAAc,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE,CAAC,gBAAgB,CAAC,YAAY,EAAE,EAAE,QAAQ,EAAE,MAAM,CAAC;QACxF,qBAAqB,EAAE,wBAAwB,EAAE;QACjD,mEAAmE;QACnE,OAAO,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,EAAE,CAAC,cAAc,CAAC,IAAI,EAAE,KAAK,EAAE,SAAS,CAAC;QAC3E,4CAA4C;QAC5C,aAAa,EAAE,GAAG,EAAE;YAClB,IAAI,CAAC;gBACH,OAAO,YAAY,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,CAAC,CAAC;YACjE,CAAC;YAAC,MAAM,CAAC;gBACP,OAAO,SAAS,CAAC;YACnB,CAAC;QACH,CAAC;QACD,UAAU,EAAE,IAAI,CAAC,OAAO,EAAE,EAAE,YAAY,CAAC;QACzC,mFAAmF;QACnF,SAAS,EAAE,GAAG,EAAE,CAAC,SAAS,EAAE;KAC7B,CAAC;AACJ,CAAC;AAED,SAAS,cAAc;IACrB,OAAO;QACL,kBAAkB,EAAE,GAAG,EAAE,CAAC,kBAAkB,EAAE;QAC9C,gBAAgB,EAAE,GAAG,EAAE,CAAC,gBAAgB,EAAE;QAC1C,gEAAgE;QAChE,eAAe,EAAE,GAAG,EAAE,CAAC,eAAe,CAAC,YAAY,EAAE,CAAC;QACtD,iBAAiB,EAAE,GAAG,EAAE,CAAC,qBAAqB,EAAE;QAChD,2EAA2E;QAC3E,uEAAuE;QACvE,cAAc,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE,CACnC,gBAAgB,CAAC,YAAY,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC;QAChF,8DAA8D;QAC9D,MAAM,EAAE,IAAI,CAAC,OAAO,EAAE,EAAE,YAAY,EAAE,KAAK,CAAC;QAC5C,oEAAoE;QACpE,4CAA4C;QAC5C,MAAM,EAAE,UAAU,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,YAAY,EAAE,KAAK,EAAE,WAAW,CAAC,CAAC;YACnE,CAAC,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,cAAc,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,YAAY,CAAC,EAAE,KAAK,CAAC;YACjE,CAAC,CAAC,SAAS;QACb,iDAAiD;QACjD,WAAW,EAAE,GAAG,EAAE,CAAC,eAAe,CAAC,kBAAkB,EAAE,CAAC;QACxD,8DAA8D;QAC9D,iBAAiB,EAAE,CAAC,GAAG,EAAE,EAAE,CACzB,eAAe,CAAC,GAAG,EAAE,EAAE,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE,UAAU,EAAE,IAAI,CAAC,OAAO,EAAE,EAAE,YAAY,CAAC,EAAE,SAAS,EAAE,GAAG,EAAE,CAAC,SAAS,EAAE,EAAE,CAAC;QACrH,0BAA0B;QAC1B,eAAe,EAAE,GAAG,EAAE,CAAC,cAAc,CAAC,gBAAgB,EAAE,CAAC,CAAC,OAAO;KAClE,CAAC;AACJ,CAAC;AAED,SAAS,YAAY;IACnB,OAAO,kBAAkB,CAAC;QACxB,SAAS,EAAE,gBAAgB,EAAE;QAC7B,WAAW,EAAE,kBAAkB,EAAE;QACjC,YAAY,EAAE,CAAC,QAAQ,EAAE,OAAO,EAAE,aAAa,EAAE,EAAE,CACjD,oBAAoB,CAAC,QAAQ,EAAE,OAAO,EAAE,EAAE,aAAa,EAAE,CAAC;QAC5D,GAAG,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,IAAI,IAAI,CAAC;KACjD,CAAC,CAAC;AACL,CAAC;AAED,SAAS,YAAY,CAAC,GAAY;IAChC,MAAM,EAAE,GACN,GAAG,YAAY,cAAc;QAC3B,CAAC,CAAC,GAAG;QACL,CAAC,CAAC,IAAI,cAAc,CAAC,UAAU,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC;IACvG,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,cAAc,EAAE,CAAC,IAAI,KAAK,EAAE,CAAC,OAAO,IAAI,CAAC,CAAC;IAC/D,OAAO,CAAC,CAAC;AACX,CAAC;AAUD;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,kBAAkB,CAAC,IAAoB;IAC3D,IAAI,OAAO,CAAC;IACZ,IAAI,CAAC;QACH,OAAO,GAAG,MAAM,KAAK,CACnB,IAAI,CAAC,SAAS,EACd,CAAC,QAAQ,EAAE,OAAO,EAAE,aAAa,EAAE,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,QAAQ,EAAE,OAAO,EAAE,aAAa,CAAC,EACzF,EAAE,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE,CAClC,CAAC;IACJ,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,CAAC,6CAA6C;IACvD,CAAC;IACD,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC7B,IAAI,MAAM,CAAC,SAAS,GAAG,CAAC;YAAE,IAAI,CAAC,GAAG,CAAC,cAAc,MAAM,CAAC,SAAS,OAAO,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;QACzF,IAAI,MAAM,CAAC,OAAO,GAAG,CAAC,EAAE,CAAC;YACvB,IAAI,CAAC,GAAG,CAAC,cAAc,MAAM,CAAC,QAAQ,YAAY,MAAM,CAAC,OAAO,QAAQ,CAAC,CAAC;QAC5E,CAAC;IACH,CAAC;AACH,CAAC;AAED,KAAK,UAAU,IAAI,CAAC,IAAc;IAChC,MAAM,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC;IAChC,IAAI,OAAO,KAAK,SAAS,IAAI,OAAO,KAAK,EAAE,EAAE,CAAC;QAC5C,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC5B,OAAO,CAAC,CAAC;IACX,CAAC;IACD,IAAI,OAAO,KAAK,WAAW,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;QAChD,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,OAAO,IAAI,CAAC,CAAC;QACrC,OAAO,CAAC,CAAC;IACX,CAAC;IACD,IAAI,OAAO,KAAK,MAAM,IAAI,OAAO,KAAK,QAAQ,EAAE,CAAC;QAC/C,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC5B,OAAO,CAAC,CAAC;IACX,CAAC;IACD,2EAA2E;IAC3E,2DAA2D;IAC3D,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;QAC1B,IAAI,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;YAC7B,MAAM,WAAW,CAAC,gBAAgB,EAAE,EAAE,kBAAkB,EAAE,EAAE;gBAC1D,YAAY,EAAE,CAAC,QAAQ,EAAE,OAAO,EAAE,aAAa,EAAE,EAAE,CACjD,oBAAoB,CAAC,QAAQ,EAAE,OAAO,EAAE,EAAE,aAAa,EAAE,CAAC;gBAC5D,GAAG,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,IAAI,IAAI,CAAC;aACjD,CAAC,CAAC;QACL,CAAC;aAAM,CAAC;YACN,MAAM,YAAY,EAAE,CAAC;QACvB,CAAC;QACD,OAAO,CAAC,CAAC;IACX,CAAC;IACD,IAAI,OAAO,KAAK,MAAM,EAAE,CAAC;QACvB,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC5B,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YAC5B,OAAO,CAAC,CAAC;QACX,CAAC;QACD,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC;YACjC,MAAM,YAAY,EAAE,CAAC;YACrB,yEAAyE;YACzE,4EAA4E;YAC5E,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,aAAa,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;YACjF,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,IAAI,EAAE,YAAY,CAAC,SAAS,CAAC,CAAC,CAAC;YAC5D,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,MAAM,IAAI,CAAC,CAAC;YACpC,OAAO,CAAC,CAAC;QACX,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,YAAY,CAAC,GAAG,CAAC,CAAC;QAC3B,CAAC;IACH,CAAC;IACD,IAAI,OAAO,KAAK,QAAQ,EAAE,CAAC;QACzB,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC5B,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YAC5B,OAAO,CAAC,CAAC;QACX,CAAC;QACD,IAAI,CAAC;YACH,MAAM,EAAE,IAAI,EAAE,aAAa,EAAE,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,GAAG,eAAe,CAAC,IAAI,CAAC,CAAC;YACjF,MAAM,YAAY,EAAE,CAAC;YACrB,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,cAAc,EAAE,EAAE,IAAI,EAAE,aAAa,EAAE,OAAO,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;YACjG,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,MAAM,IAAI,CAAC,CAAC;YACpC,OAAO,CAAC,CAAC;QACX,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,YAAY,CAAC,GAAG,CAAC,CAAC;QAC3B,CAAC;IACH,CAAC;IACD,IAAI,OAAO,KAAK,QAAQ,EAAE,CAAC;QACzB,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC5B,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YAC5B,OAAO,CAAC,CAAC;QACX,CAAC;QACD,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACpB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,mDAAmD,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YAC9F,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YAC5B,OAAO,CAAC,CAAC;QACX,CAAC;QACD,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;QAC3B,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC,MAAM,IAAI,CAAC,CAAC;QAC3C,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC/B,CAAC;IACD,IAAI,OAAO,KAAK,gBAAgB,EAAE,CAAC;QACjC,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC5B,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YAC5B,OAAO,CAAC,CAAC;QACX,CAAC;QACD,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,sBAAsB,CAAC,IAAI,CAAC,CAAC;YAC1C,KAAK,MAAM,IAAI,IAAI,gBAAgB,CAAC,IAAI,CAAC;gBAAE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,cAAc,IAAI,IAAI,CAAC,CAAC;YACxF,OAAO,CAAC,CAAC;QACX,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,YAAY,CAAC,GAAG,CAAC,CAAC;QAC3B,CAAC;IACH,CAAC;IACD,IAAI,OAAO,KAAK,OAAO,EAAE,CAAC;QACxB,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC5B,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YAC5B,OAAO,CAAC,CAAC;QACX,CAAC;QACD,IAAI,CAAC;YACH,6CAA6C;YAC7C,OAAO,MAAM,QAAQ,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,EAAE,GAAG,aAAa,EAAE,EAAE,YAAY,EAAE,CAAC,SAAkB,EAAE,EAAE,CAAC,YAAY,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;QACrI,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,YAAY,CAAC,GAAG,CAAC,CAAC;QAC3B,CAAC;IACH,CAAC;IACD,IAAI,OAAO,KAAK,OAAO,EAAE,CAAC;QACxB,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC5B,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YAC5B,OAAO,CAAC,CAAC;QACX,CAAC;QACD,IAAI,CAAC;YACH,OAAO,QAAQ,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE;gBACpC,MAAM,EAAE,IAAI,CAAC,OAAO,EAAE,EAAE,YAAY,EAAE,KAAK,CAAC;gBAC5C,gBAAgB,EAAE,IAAI,CAAC,SAAS,EAAE,EAAE,eAAe,CAAC;gBACpD,GAAG,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE;gBACrB,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,IAAI,IAAI,CAAC;aACpD,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,YAAY,CAAC,GAAG,CAAC,CAAC;QAC3B,CAAC;IACH,CAAC;IACD,IAAI,OAAO,KAAK,WAAW,EAAE,CAAC;QAC5B,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC5B,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YAC5B,OAAO,CAAC,CAAC;QACX,CAAC;QACD,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,OAAO,EAAE,CAAC;YACvB,OAAO,MAAM,YAAY,CAAC,kBAAkB,CAAC,IAAI,CAAC,EAAE;gBAClD,aAAa,EAAE,IAAI,CAAC,IAAI,EAAE,YAAY,CAAC;gBACvC,SAAS,EAAE,SAAS,EAAE;gBACtB,gBAAgB,EAAE,gBAAgB,EAAE;gBACpC,SAAS,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,WAAW,CAAC,EAAE,IAAI,CAAC,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAC;gBACtG,GAAG,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE;gBACrB,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,IAAI,IAAI,CAAC;gBACnD,OAAO,EAAE,GAAG,EAAE,CACZ,IAAI,OAAO,CAAU,CAAC,OAAO,EAAE,EAAE;oBAC/B,MAAM,EAAE,GAAG,eAAe,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;oBAC7E,EAAE,CAAC,QAAQ,CAAC,aAAa,EAAE,CAAC,MAAM,EAAE,EAAE;wBACpC,EAAE,CAAC,KAAK,EAAE,CAAC;wBACX,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,KAAK,GAAG,CAAC,CAAC;oBAC/C,CAAC,CAAC,CAAC;gBACL,CAAC,CAAC;aACL,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,YAAY,CAAC,GAAG,CAAC,CAAC;QAC3B,CAAC;IACH,CAAC;IACD,IAAI,OAAO,KAAK,QAAQ,EAAE,CAAC;QACzB,uEAAuE;QACvE,IAAI,CAAC;YACH,OAAO,MAAM,gBAAgB,CAAC,IAAI,CAAC,CAAC;QACtC,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,YAAY,CAAC,GAAG,CAAC,CAAC;QAC3B,CAAC;IACH,CAAC;IACD,IAAI,OAAO,KAAK,OAAO,EAAE,CAAC;QACxB,sEAAsE;QACtE,IAAI,CAAC;YACH,OAAO,MAAM,eAAe,CAAC,IAAI,CAAC,CAAC;QACrC,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,YAAY,CAAC,GAAG,CAAC,CAAC;QAC3B,CAAC;IACH,CAAC;IACD,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,sCAAsC,OAAO,MAAM,CAAC,CAAC;IAC1E,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IAC5B,OAAO,CAAC,CAAC;AACX,CAAC;AAED,SAAS,WAAW;IAClB,IAAI,CAAC;QACH,OAAO,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,KAAK,YAAY,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;IAC9F,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED,IAAI,WAAW,EAAE,EAAE,CAAC;IAClB,KAAK,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE;QAC7C,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC;IAC1B,CAAC,CAAC,CAAC;AACL,CAAC"}
|
package/dist/commands/clean.js
CHANGED
|
@@ -1,11 +1,14 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* `crosschat clean`(票B B3):清 tcp 文件通道残留。默认=懒删除同款规则
|
|
3
|
-
* (inbox/parts 落盘 >5 天删;inbox 总量 >512MiB
|
|
4
|
-
* inbox+parts
|
|
3
|
+
* (inbox/parts 落盘 >5 天删;inbox 总量 >512MiB 从最旧删起)+ 顺带回收
|
|
4
|
+
* 30 天未更新的 conversations 分片(014);--force 全清 inbox+parts+全部分片
|
|
5
|
+
* (跳过确认,含未过期未读,用户自担)。两模式都打印清理明细。
|
|
5
6
|
*/
|
|
6
7
|
import { existsSync, readdirSync, rmSync, statSync } from 'node:fs';
|
|
7
8
|
import { join } from 'node:path';
|
|
8
9
|
import { FILE_STALE_MS, INBOX_MAX_BYTES } from '../serve/file-channel.js';
|
|
10
|
+
/** 014:conversations 分片回收阈值——30 天未更新即死对,懒规则顺带回收。 */
|
|
11
|
+
export const SHARD_STALE_MS = 30 * 24 * 3_600_000;
|
|
9
12
|
function listEntries(dir) {
|
|
10
13
|
if (!existsSync(dir))
|
|
11
14
|
return [];
|
|
@@ -22,6 +25,10 @@ function listEntries(dir) {
|
|
|
22
25
|
}
|
|
23
26
|
return out;
|
|
24
27
|
}
|
|
28
|
+
/** conversations 分片(与 loadAllPairs 同款 *.json 过滤;tmp 残留不碰)。 */
|
|
29
|
+
function listShards(dir) {
|
|
30
|
+
return listEntries(dir).filter((e) => e.file.endsWith('.json'));
|
|
31
|
+
}
|
|
25
32
|
function mb(bytes) {
|
|
26
33
|
return (bytes / (1024 * 1024)).toFixed(1);
|
|
27
34
|
}
|
|
@@ -29,16 +36,19 @@ function mb(bytes) {
|
|
|
29
36
|
export function runClean(args, deps) {
|
|
30
37
|
const staleMs = deps.staleMs ?? FILE_STALE_MS;
|
|
31
38
|
const maxInboxBytes = deps.maxInboxBytes ?? INBOX_MAX_BYTES;
|
|
39
|
+
const shardStaleMs = deps.shardStaleMs ?? SHARD_STALE_MS;
|
|
32
40
|
const inbox = listEntries(join(deps.tcpDir, 'inbox'));
|
|
33
41
|
const parts = listEntries(join(deps.tcpDir, 'parts'));
|
|
42
|
+
const shards = listShards(deps.conversationsDir);
|
|
34
43
|
const all = [...inbox, ...parts];
|
|
35
44
|
if (args.force === true) {
|
|
36
|
-
if (all.length === 0) {
|
|
37
|
-
deps.stdout('无需清理:inbox 与 parts
|
|
45
|
+
if (all.length === 0 && shards.length === 0) {
|
|
46
|
+
deps.stdout('无需清理:inbox 与 parts 均为空,也无 conversations 分片');
|
|
38
47
|
return 0;
|
|
39
48
|
}
|
|
40
49
|
const totalBytes = all.reduce((sum, e) => sum + e.size, 0);
|
|
41
|
-
deps.stdout(`强制清理:将删除全部收件与断点文件(${all.length} 项,共 ${mb(totalBytes)} MB)`
|
|
50
|
+
deps.stdout(`强制清理:将删除全部收件与断点文件(${all.length} 项,共 ${mb(totalBytes)} MB)` +
|
|
51
|
+
`及全部 conversations 分片(${shards.length} 片)`);
|
|
42
52
|
let freed = 0;
|
|
43
53
|
for (const e of all) {
|
|
44
54
|
try {
|
|
@@ -50,10 +60,20 @@ export function runClean(args, deps) {
|
|
|
50
60
|
deps.stdout(`删除失败 ${e.file}`);
|
|
51
61
|
}
|
|
52
62
|
}
|
|
53
|
-
|
|
63
|
+
for (const e of shards) {
|
|
64
|
+
try {
|
|
65
|
+
rmSync(e.file, { force: true });
|
|
66
|
+
deps.stdout(`已删 ${e.file}(conversations 分片)`);
|
|
67
|
+
}
|
|
68
|
+
catch {
|
|
69
|
+
deps.stdout(`删除失败 ${e.file}`);
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
deps.stdout(`清理完成:删除 ${all.length} 项,释放 ${mb(freed)} MB;回收 conversations 分片 ${shards.length} 片`);
|
|
54
73
|
return 0;
|
|
55
74
|
}
|
|
56
75
|
const cutoff = deps.now() - staleMs;
|
|
76
|
+
const shardCutoff = deps.now() - shardStaleMs;
|
|
57
77
|
const victims = [];
|
|
58
78
|
for (const e of [...inbox, ...parts]) {
|
|
59
79
|
if (e.mtime < cutoff)
|
|
@@ -70,8 +90,13 @@ export function runClean(args, deps) {
|
|
|
70
90
|
total -= e.size;
|
|
71
91
|
victims.push({ e, why: '超总量从最旧删起' });
|
|
72
92
|
}
|
|
93
|
+
for (const e of shards) {
|
|
94
|
+
if (e.mtime < shardCutoff)
|
|
95
|
+
victims.push({ e, why: '分片 30 天未更新' });
|
|
96
|
+
}
|
|
97
|
+
const shardVictims = victims.filter((v) => v.why === '分片 30 天未更新').length;
|
|
73
98
|
if (victims.length === 0) {
|
|
74
|
-
deps.stdout(`无需清理:inbox ${inbox.length} 项 / parts ${parts.length}
|
|
99
|
+
deps.stdout(`无需清理:inbox ${inbox.length} 项 / parts ${parts.length} 项 / conversations 分片 ${shards.length} 片均在保留规则内`);
|
|
75
100
|
return 0;
|
|
76
101
|
}
|
|
77
102
|
let freed = 0;
|
|
@@ -85,7 +110,7 @@ export function runClean(args, deps) {
|
|
|
85
110
|
deps.stdout(`删除失败 ${e.file}`);
|
|
86
111
|
}
|
|
87
112
|
}
|
|
88
|
-
deps.stdout(`清理完成:删除 ${victims.length} 项,释放 ${mb(freed)} MB
|
|
113
|
+
deps.stdout(`清理完成:删除 ${victims.length} 项,释放 ${mb(freed)} MB;回收 conversations 分片 ${shardVictims} 片`);
|
|
89
114
|
return 0;
|
|
90
115
|
}
|
|
91
116
|
//# sourceMappingURL=clean.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"clean.js","sourceRoot":"","sources":["../../src/commands/clean.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"clean.js","sourceRoot":"","sources":["../../src/commands/clean.ts"],"names":[],"mappings":"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"}
|