agim-cli 1.2.143 → 1.2.144
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 +85 -0
- package/dist/cli-ui/tui/app.d.ts +1 -0
- package/dist/cli-ui/tui/app.d.ts.map +1 -1
- package/dist/cli-ui/tui/app.js +24 -9
- package/dist/cli-ui/tui/app.js.map +1 -1
- package/dist/cli-ui/tui/markdown.d.ts.map +1 -1
- package/dist/cli-ui/tui/markdown.js +12 -3
- package/dist/cli-ui/tui/markdown.js.map +1 -1
- package/dist/cli.js +23 -3
- package/dist/cli.js.map +1 -1
- package/dist/core/access-token.d.ts.map +1 -1
- package/dist/core/access-token.js +4 -2
- package/dist/core/access-token.js.map +1 -1
- package/dist/web/server.d.ts +23 -0
- package/dist/web/server.d.ts.map +1 -1
- package/dist/web/server.js +103 -20
- package/dist/web/server.js.map +1 -1
- package/package.json +3 -2
package/CHANGELOG.md
CHANGED
|
@@ -4,6 +4,91 @@ All notable changes to this project will be documented in this file.
|
|
|
4
4
|
|
|
5
5
|
## [Unreleased]
|
|
6
6
|
|
|
7
|
+
## [1.2.144] - 2026-06-05
|
|
8
|
+
|
|
9
|
+
### Security (CR 修复:反代鉴权绕过 + role=user 权限收窄)
|
|
10
|
+
|
|
11
|
+
由 codex 完成的深度 CR 在 viewer-paste 报告中定位了两个 P0 安全问题,
|
|
12
|
+
本版本接管收尾、跑齐验证、build、release。
|
|
13
|
+
|
|
14
|
+
#### P0-1 — 反代场景下 loopback 绕过鉴权 + 自动 admin
|
|
15
|
+
|
|
16
|
+
**根因**:`checkAuth()` / `isRequestAdmin()` 之前只看 `isLoopbackPeer(req)`
|
|
17
|
+
(remoteAddress 是否 127.0.0.1 / ::1)。反代到本机的请求 socket 来源全部
|
|
18
|
+
是 loopback,于是**外部任何人通过反代访问都直接绕过 token、自动 admin**。
|
|
19
|
+
|
|
20
|
+
**修复**:新增 `isTrustedLoopbackPeer()` 三层检查:
|
|
21
|
+
1. `isLoopbackPeer(req)`(原有)
|
|
22
|
+
2. `IMHUB_TRUST_LOOPBACK !== off`(新增 env kill switch)
|
|
23
|
+
3. **`!hasForwardedPeerHeaders(req)`** — 任一 `Forwarded` / `X-Forwarded-*`
|
|
24
|
+
/ `X-Real-IP` / `CF-Connecting-IP` header 出现 → 视为反代后流量,
|
|
25
|
+
走正常 token 路径
|
|
26
|
+
|
|
27
|
+
实测验证(反代场景):
|
|
28
|
+
```
|
|
29
|
+
curl -H "X-Forwarded-For: 1.2.3.4" 127.0.0.1:3000/api/config
|
|
30
|
+
→ 401 unauthorized(原先 200)
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
#### P0-2 — role=user token 越权(mobile QR 入口)
|
|
34
|
+
|
|
35
|
+
**根因**:v1.2.129 加的 mobile-QR 流程发的 `role=user` token 当时认为
|
|
36
|
+
"低权限只能聊天",但**大量后台 `/api/*` endpoints 在路由层只检查 token
|
|
37
|
+
有效**、未检查 role。所以扫码登录的"user"实际能:
|
|
38
|
+
- 创建 / 取消 / 运行 jobs(`/api/jobs*`)
|
|
39
|
+
- 列出 / 取消 / snooze reminders(`/api/reminders*`)
|
|
40
|
+
- 查 / 删 memos(`/api/memos*`)
|
|
41
|
+
- 读 env(masked,但仍泄露 provider 列表)
|
|
42
|
+
- 枚举 memory users、导出 memory(`/api/memory/*`)
|
|
43
|
+
- 看 / 改 workspace 文件(`/api/workspace-files*`)
|
|
44
|
+
- 看 SSE event stream(`/events`)
|
|
45
|
+
- 处理 approvals(`/api/approvals*`)
|
|
46
|
+
- 看 consolidate status
|
|
47
|
+
|
|
48
|
+
**修复**:给上述全部 endpoints 加 `requireAdmin(req, res)` 守门。`role=user`
|
|
49
|
+
token 只能用预期的几个用户面 endpoint(chat / memory consolidate trigger)。
|
|
50
|
+
admin 操作回到 admin token 专属。
|
|
51
|
+
|
|
52
|
+
#### P2 — uncaughtException 不再静默吞掉
|
|
53
|
+
|
|
54
|
+
**根因**:cli.ts 的 `uncaughtException` handler 之前只 log 不退,导致
|
|
55
|
+
进程留在不一致状态(SQLite half-flushed、approval 卡死等)。
|
|
56
|
+
|
|
57
|
+
**修复**:`uncaughtException` → 触发 `gracefulShutdown('uncaughtException', 1)`
|
|
58
|
+
走 25s hard-deadline 通路,关闭所有 adapter、flush DB、`process.exit(1)`。
|
|
59
|
+
systemd `Restart=always` 会自动拉起来。
|
|
60
|
+
|
|
61
|
+
#### 诊断改进
|
|
62
|
+
|
|
63
|
+
- `web.auth_mode` boot log 新增 `trustLoopback: bool` 字段,operator 一眼
|
|
64
|
+
看到当前模式
|
|
65
|
+
- `__webAuthForTesting` export — 把 `isTrustedLoopbackPeer` + `isRequestAdmin`
|
|
66
|
+
+ `setTokenModule` 露给 unit test 用,新增 5 case 覆盖反代 / kill switch /
|
|
67
|
+
user token 越权防御
|
|
68
|
+
|
|
69
|
+
### Code quality
|
|
70
|
+
|
|
71
|
+
- npm run typecheck:双 tsc 全绿(之前 plan-mode.test.ts / agent-loop-schema
|
|
72
|
+
/ native-stage-report 都有 ts 错)
|
|
73
|
+
- npm run lint:0 errors(warnings/infos 留作 backlog;之前 9 errors)
|
|
74
|
+
- 关键测试套件 40/40 绿(web-auth-guards × 5、a2a × 8、call-agent v1.2.139
|
|
75
|
+
× 9、llm-secrets-vendor × 10、native-stage-report × 8)
|
|
76
|
+
|
|
77
|
+
### 没在范围
|
|
78
|
+
|
|
79
|
+
- P2-2(readBody 413 后 req.destroy)— 留到下一版
|
|
80
|
+
- lint warnings(290)/ infos(77)— 历史包袱不在本轮 scope
|
|
81
|
+
|
|
82
|
+
### 文件
|
|
83
|
+
|
|
84
|
+
- `src/web/server.ts` — `hasForwardedPeerHeaders` / `isTrustedLoopbackPeer` /
|
|
85
|
+
`__webAuthForTesting` 导出 + ~12 个 endpoint 加 `requireAdmin`
|
|
86
|
+
- `src/cli.ts` — `uncaughtException` 走 fatal-shutdown
|
|
87
|
+
- `src/core/access-token.ts` — 文档注释更新
|
|
88
|
+
- `package.json` — devDep 加 `bun: ^1.3.14`(让 npm test 能跑)
|
|
89
|
+
- `test/unit/web-auth-guards.test.ts` — 5 case 新增
|
|
90
|
+
- `AGENTS.md` — 文档同步
|
|
91
|
+
|
|
7
92
|
## [1.2.143] - 2026-06-04
|
|
8
93
|
|
|
9
94
|
### Fixed (codex 0.137 适配 + binary cache 自愈)
|
package/dist/cli-ui/tui/app.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"app.d.ts","sourceRoot":"","sources":["../../../src/cli-ui/tui/app.tsx"],"names":[],"mappings":"AAqCA,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,GAAG,WAAW,GAAG,QAAQ,CAAA;IACrC,OAAO,EAAE,MAAM,CAAA;IACf,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB;
|
|
1
|
+
{"version":3,"file":"app.d.ts","sourceRoot":"","sources":["../../../src/cli-ui/tui/app.tsx"],"names":[],"mappings":"AAqCA,MAAM,WAAW,WAAW;IAC1B,EAAE,CAAC,EAAE,MAAM,CAAA;IACX,IAAI,EAAE,MAAM,GAAG,WAAW,GAAG,QAAQ,CAAA;IACrC,OAAO,EAAE,MAAM,CAAA;IACf,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB;AA+DD,UAAU,QAAQ;IAChB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,uDAAuD;IACvD,OAAO,CAAC,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,WAAW,EAAE,CAAA;KAAE,CAAA;IACjE;uDACmD;IACnD,SAAS,EAAE,MAAM,CAAA;CAClB;AA0CD,wBAAgB,MAAM,CAAC,EAAE,YAAY,EAAE,OAAO,EAAE,SAAS,EAAE,EAAE,QAAQ,GAAG,GAAG,CAAC,OAAO,CAohBlF"}
|
package/dist/cli-ui/tui/app.js
CHANGED
|
@@ -31,6 +31,17 @@ import { logger as rootLogger } from '../../core/logger.js';
|
|
|
31
31
|
import { Markdown } from './markdown.js';
|
|
32
32
|
import { saveSession } from './sessions.js';
|
|
33
33
|
const log = rootLogger.child({ component: 'tui' });
|
|
34
|
+
let messageSeq = 0;
|
|
35
|
+
function nextMessageId() {
|
|
36
|
+
messageSeq += 1;
|
|
37
|
+
return `tui-msg-${Date.now().toString(36)}-${messageSeq.toString(36)}`;
|
|
38
|
+
}
|
|
39
|
+
function withMessageId(message) {
|
|
40
|
+
return message.id ? message : { ...message, id: nextMessageId() };
|
|
41
|
+
}
|
|
42
|
+
function withMessageIds(messages) {
|
|
43
|
+
return messages.map(withMessageId);
|
|
44
|
+
}
|
|
34
45
|
const SLASH_COMMANDS = [
|
|
35
46
|
{ name: '/agents', description: '列出已注册的 agent' },
|
|
36
47
|
{ name: '/agent', description: '切换 agent — 例:/agent codex', takesArg: true },
|
|
@@ -82,16 +93,16 @@ const ChatHistory = React.memo(function ChatHistory({ messages, agent, chatWidth
|
|
|
82
93
|
if (messages.length === 0) {
|
|
83
94
|
return (_jsx(Box, { paddingX: 1, marginTop: 1, children: _jsx(Text, { dimColor: true, children: "(\u7A7A) \u8F93\u5165\u6D88\u606F\u5F00\u59CB\u5BF9\u8BDD \u00B7 / \u5524\u51FA\u547D\u4EE4 \u00B7 ! \u884C\u5185 shell \u00B7 @ \u5F15\u7528\u6587\u4EF6 \u00B7 Ctrl-P \u547D\u4EE4\u9762\u677F" }) }));
|
|
84
95
|
}
|
|
85
|
-
return (_jsx(Box, { flexDirection: "column", paddingX: 1, marginTop: 1, children: messages.map((m
|
|
96
|
+
return (_jsx(Box, { flexDirection: "column", paddingX: 1, marginTop: 1, children: messages.map((m) => (_jsxs(Box, { flexDirection: "column", marginBottom: 1, width: chatWidth, children: [_jsxs(Text, { children: [m.role === 'user' && _jsx(Text, { color: "cyan", bold: true, children: "\u4F60 " }), m.role === 'assistant' && _jsxs(Text, { color: "magenta", bold: true, children: [m.agentName || agent || 'agent', " "] }), m.role === 'system' && _jsx(Text, { color: "yellow", bold: true, children: "\u7CFB\u7EDF " }), m.pending && _jsx(Text, { dimColor: true, children: "\u00B7 \u751F\u6210\u4E2D\u2026\uFF08Esc \u53D6\u6D88\uFF09" })] }), m.role === 'assistant' && !m.pending
|
|
86
97
|
? _jsx(Markdown, { source: m.content })
|
|
87
|
-
: _jsx(Text, { children: m.content || (m.pending ? '…' : '') }), m.role === 'assistant' && !m.pending && m.elapsedMs !== undefined && (_jsxs(Text, { dimColor: true, children: ["\u25A0 ", m.agentName || agent, " \u00B7 ", (m.elapsedMs / 1000).toFixed(1), "s"] }))] },
|
|
98
|
+
: _jsx(Text, { children: m.content || (m.pending ? '…' : '') }), m.role === 'assistant' && !m.pending && m.elapsedMs !== undefined && (_jsxs(Text, { dimColor: true, children: ["\u25A0 ", m.agentName || agent, " \u00B7 ", (m.elapsedMs / 1000).toFixed(1), "s"] }))] }, m.id))) }));
|
|
88
99
|
});
|
|
89
100
|
export function TuiApp({ initialAgent, resumed, sessionId }) {
|
|
90
101
|
const { exit } = useApp();
|
|
91
102
|
const { stdout } = useStdout();
|
|
92
103
|
const { setRawMode } = useStdin();
|
|
93
104
|
const [agent, setAgent] = useState(resumed?.agent ?? initialAgent);
|
|
94
|
-
const [messages, setMessages] = useState(resumed?.messages ?? []);
|
|
105
|
+
const [messages, setMessages] = useState(() => withMessageIds(resumed?.messages ?? []));
|
|
95
106
|
const [input, setInput] = useState('');
|
|
96
107
|
const [busy, setBusy] = useState(false);
|
|
97
108
|
const [error, setError] = useState(null);
|
|
@@ -135,7 +146,11 @@ export function TuiApp({ initialAgent, resumed, sessionId }) {
|
|
|
135
146
|
.filter((f) => f.rel.toLowerCase().includes(q))
|
|
136
147
|
.slice(0, 15);
|
|
137
148
|
}, [filePopupOpen, fileTokenMatch]);
|
|
138
|
-
|
|
149
|
+
const popupResetKey = `${filteredSlash.length}:${filteredFiles.length}`;
|
|
150
|
+
useEffect(() => {
|
|
151
|
+
if (popupResetKey)
|
|
152
|
+
setPopupIndex(0);
|
|
153
|
+
}, [popupResetKey]);
|
|
139
154
|
// ── Command palette (ctrl+p) ──────────────────────────────────────
|
|
140
155
|
const filteredPalette = useMemo(() => {
|
|
141
156
|
if (!palette.open)
|
|
@@ -256,10 +271,10 @@ export function TuiApp({ initialAgent, resumed, sessionId }) {
|
|
|
256
271
|
}, [sessionId]);
|
|
257
272
|
// ── helpers ───────────────────────────────────────────────────────
|
|
258
273
|
const pushSystem = useCallback((content) => {
|
|
259
|
-
setMessages((m) => [...m, { role: 'system', content }]);
|
|
274
|
+
setMessages((m) => [...m, withMessageId({ role: 'system', content })]);
|
|
260
275
|
}, []);
|
|
261
276
|
async function runBash(cmd) {
|
|
262
|
-
setMessages((m) => [...m, { role: 'user', content: '!' + cmd }]);
|
|
277
|
+
setMessages((m) => [...m, withMessageId({ role: 'user', content: '!' + cmd })]);
|
|
263
278
|
const startMs = Date.now();
|
|
264
279
|
pushSystem(`▶ shell: ${cmd}`);
|
|
265
280
|
await new Promise((resolve) => {
|
|
@@ -368,7 +383,7 @@ export function TuiApp({ initialAgent, resumed, sessionId }) {
|
|
|
368
383
|
for await (const chunk of adapter.sendPrompt(`tui-${process.pid}-compact`, prompt, [], { signal: ac.signal })) {
|
|
369
384
|
summary += chunk;
|
|
370
385
|
}
|
|
371
|
-
setMessages([{ role: 'system', content: '【对话已折叠,以下是摘要】\n\n' + summary.trim() }]);
|
|
386
|
+
setMessages([withMessageId({ role: 'system', content: '【对话已折叠,以下是摘要】\n\n' + summary.trim() })]);
|
|
372
387
|
}
|
|
373
388
|
catch (err) {
|
|
374
389
|
setError('折叠失败: ' + (err instanceof Error ? err.message : String(err)));
|
|
@@ -436,8 +451,8 @@ export function TuiApp({ initialAgent, resumed, sessionId }) {
|
|
|
436
451
|
}));
|
|
437
452
|
setMessages((m) => [
|
|
438
453
|
...m,
|
|
439
|
-
{ role: 'user', content: text },
|
|
440
|
-
{ role: 'assistant', content: '', pending: true, agentName: agent },
|
|
454
|
+
withMessageId({ role: 'user', content: text }),
|
|
455
|
+
withMessageId({ role: 'assistant', content: '', pending: true, agentName: agent }),
|
|
441
456
|
]);
|
|
442
457
|
const ac = new AbortController();
|
|
443
458
|
abortRef.current = ac;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"app.js","sourceRoot":"","sources":["../../../src/cli-ui/tui/app.tsx"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"app.js","sourceRoot":"","sources":["../../../src/cli-ui/tui/app.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"markdown.d.ts","sourceRoot":"","sources":["../../../src/cli-ui/tui/markdown.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"markdown.d.ts","sourceRoot":"","sources":["../../../src/cli-ui/tui/markdown.tsx"],"names":[],"mappings":"AA2MA,0DAA0D;AAC1D,wBAAgB,QAAQ,CAAC,EAAE,MAAM,EAAE,EAAE;IAAE,MAAM,EAAE,MAAM,CAAA;CAAE,GAAG,GAAG,CAAC,OAAO,CAYpE"}
|
|
@@ -56,6 +56,10 @@ function spanColor(kind) {
|
|
|
56
56
|
return 'yellow';
|
|
57
57
|
return undefined;
|
|
58
58
|
}
|
|
59
|
+
function tokenKey(tok, prefix) {
|
|
60
|
+
const raw = tok.raw ?? tok.text ?? '';
|
|
61
|
+
return `${prefix}-${tok.type}-${raw.length}-${raw.slice(0, 64)}`;
|
|
62
|
+
}
|
|
59
63
|
function renderInline(tokens, keyPrefix) {
|
|
60
64
|
if (!tokens)
|
|
61
65
|
return [];
|
|
@@ -102,10 +106,15 @@ function renderBlock(tok, key) {
|
|
|
102
106
|
case 'code': {
|
|
103
107
|
const lang = tok.lang || '';
|
|
104
108
|
const spans = highlightCode(tok.text ?? '', lang);
|
|
105
|
-
|
|
109
|
+
let offset = 0;
|
|
110
|
+
return (_jsxs(Box, { flexDirection: "column", marginBottom: 1, borderStyle: "round", borderColor: "gray", paddingX: 1, children: [lang && _jsx(Text, { dimColor: true, children: lang }), _jsx(Text, { children: spans.map((s) => {
|
|
111
|
+
const start = offset;
|
|
112
|
+
offset += s.text.length;
|
|
113
|
+
return _jsx(Text, { color: spanColor(s.kind), children: s.text }, `${s.kind ?? 'plain'}-${start}-${s.text.length}`);
|
|
114
|
+
}) })] }, key));
|
|
106
115
|
}
|
|
107
116
|
case 'blockquote':
|
|
108
|
-
return (_jsx(Box, { marginBottom: 1, flexDirection: "column", children: (tok.tokens ?? []).map((inner, i) => (_jsxs(Box, { children: [_jsx(Text, { dimColor: true, children: "\u2502 " }), _jsx(Text, { dimColor: true, children: renderInline(inner.tokens, `${key}-${i}`) })] },
|
|
117
|
+
return (_jsx(Box, { marginBottom: 1, flexDirection: "column", children: (tok.tokens ?? []).map((inner, i) => (_jsxs(Box, { children: [_jsx(Text, { dimColor: true, children: "\u2502 " }), _jsx(Text, { dimColor: true, children: renderInline(inner.tokens, `${key}-${i}`) })] }, tokenKey(inner, key)))) }, key));
|
|
109
118
|
case 'list': {
|
|
110
119
|
const ordered = !!tok.ordered;
|
|
111
120
|
const items = (tok.items ?? []);
|
|
@@ -113,7 +122,7 @@ function renderBlock(tok, key) {
|
|
|
113
122
|
const marker = ordered ? `${i + 1}. ` : '• ';
|
|
114
123
|
// list_item tokens have nested tokens; flatten to inline text.
|
|
115
124
|
const itemTokens = item.tokens ?? [];
|
|
116
|
-
return (_jsxs(Box, { children: [_jsx(Text, { dimColor: true, children: marker }), _jsx(Text, { children: renderInline(itemTokens, `${key}-${i}`) })] },
|
|
125
|
+
return (_jsxs(Box, { children: [_jsx(Text, { dimColor: true, children: marker }), _jsx(Text, { children: renderInline(itemTokens, `${key}-${i}`) })] }, tokenKey(item, key)));
|
|
117
126
|
}) }, key));
|
|
118
127
|
}
|
|
119
128
|
case 'hr':
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"markdown.js","sourceRoot":"","sources":["../../../src/cli-ui/tui/markdown.tsx"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"markdown.js","sourceRoot":"","sources":["../../../src/cli-ui/tui/markdown.tsx"],"names":[],"mappings":"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"}
|
package/dist/cli.js
CHANGED
|
@@ -112,6 +112,17 @@ program
|
|
|
112
112
|
// to a warning so the rest of gracefulShutdown can finish cleanly.
|
|
113
113
|
// We intentionally do not call process.exit — let the natural
|
|
114
114
|
// shutdown path complete.
|
|
115
|
+
let requestFatalShutdown = null;
|
|
116
|
+
let fatalExitScheduled = false;
|
|
117
|
+
const scheduleFatalExit = () => {
|
|
118
|
+
if (fatalExitScheduled)
|
|
119
|
+
return;
|
|
120
|
+
fatalExitScheduled = true;
|
|
121
|
+
process.exitCode = 1;
|
|
122
|
+
const tm = setTimeout(() => process.exit(1), 250);
|
|
123
|
+
if (typeof tm.unref === 'function')
|
|
124
|
+
tm.unref();
|
|
125
|
+
};
|
|
115
126
|
process.on('unhandledRejection', (reason) => {
|
|
116
127
|
const err = reason instanceof Error
|
|
117
128
|
? { name: reason.name, message: reason.message, stack: reason.stack }
|
|
@@ -122,7 +133,13 @@ program
|
|
|
122
133
|
rootLogger.error({
|
|
123
134
|
event: 'process.uncaught_exception',
|
|
124
135
|
err: { name: err.name, message: err.message, stack: err.stack },
|
|
125
|
-
}, 'uncaughtException
|
|
136
|
+
}, 'uncaughtException; shutting down with exit code 1');
|
|
137
|
+
if (requestFatalShutdown) {
|
|
138
|
+
requestFatalShutdown();
|
|
139
|
+
}
|
|
140
|
+
else {
|
|
141
|
+
scheduleFatalExit();
|
|
142
|
+
}
|
|
126
143
|
});
|
|
127
144
|
// R14 — pre-flight self-check. Two failure modes the operator
|
|
128
145
|
// hit before this guard existed:
|
|
@@ -1028,6 +1045,7 @@ program
|
|
|
1028
1045
|
// to recover from a half-flushed state. The handler is idempotent against
|
|
1029
1046
|
// duplicate signals.
|
|
1030
1047
|
let shuttingDown = false;
|
|
1048
|
+
let shutdownExitCode = 0;
|
|
1031
1049
|
// R14 — hard deadline. If anything in the teardown chain hangs (DB
|
|
1032
1050
|
// checkpoint, stuck child wait, sidecar TCP keepalive), we still
|
|
1033
1051
|
// force-exit within 25s so a follow-up `systemctl restart` finds
|
|
@@ -1035,7 +1053,8 @@ program
|
|
|
1035
1053
|
// 5s buffer so the process exits on our terms (exit code 1)
|
|
1036
1054
|
// before systemd escalates to SIGKILL.
|
|
1037
1055
|
const HARD_SHUTDOWN_MS = 25_000;
|
|
1038
|
-
const gracefulShutdown = async (signal) => {
|
|
1056
|
+
const gracefulShutdown = async (signal, exitCode = 0) => {
|
|
1057
|
+
shutdownExitCode = Math.max(shutdownExitCode, exitCode);
|
|
1039
1058
|
if (shuttingDown)
|
|
1040
1059
|
return;
|
|
1041
1060
|
shuttingDown = true;
|
|
@@ -1186,8 +1205,9 @@ program
|
|
|
1186
1205
|
}
|
|
1187
1206
|
catch { /* missing / unreadable is fine */ }
|
|
1188
1207
|
clearTimeout(hardKill);
|
|
1189
|
-
process.exit(
|
|
1208
|
+
process.exit(shutdownExitCode);
|
|
1190
1209
|
};
|
|
1210
|
+
requestFatalShutdown = () => { void gracefulShutdown('uncaughtException', 1); };
|
|
1191
1211
|
process.on('SIGINT', () => { void gracefulShutdown('SIGINT'); });
|
|
1192
1212
|
process.on('SIGTERM', () => { void gracefulShutdown('SIGTERM'); });
|
|
1193
1213
|
// Wait forever
|