JavaScript如何整理Claude事故时间线,避免混淆恢复通知
用Node.js读取两起Claude事故,按独立记录和更新标识整理时间线。
JavaScript处理Claude事故更新时,可以用“事故ID+更新ID”标识记录,再按created_at排序;不要把状态页的同一产品名当作事故主键。11月13日的两起恢复事件分别有独立ID,把它们合并为一条时间线结论,可能让较晚的恢复覆盖较早事故的实际影响范围。

先看容易合并错的两种异常
nn11wk485zfn标题涉及claude.ai、Claude Code和platform.claude.com,调查说明聚焦用户身份验证异常。它的最终说明明确影响claude.ai和Claude Cowork的问题已解决。34wq7gxnxvvm则记录claude.ai、Claude API及Claude Code错误升高,后续还提及连接器、Security和Managed Agents;最终更新宣布多个入口的问题已解决。这两个ID属于两起事故,而非一个事故标题的两次修改。

按事故分别整理更新,不依赖数组的原始顺序
下面代码适用于Node.js 24,使用内置fetch,无需依赖包和密钥。保存为claude-history.mjs后运行即可。代码仅请求两个公开事故端点,以更新创建时间从早到晚排列;HTTP非成功状态直接报错,不会生成“恢复正常”的假结果。
const ids = ["nn11wk485zfn", "34wq7gxnxvvm"];
for (const id of ids) {
const response = await fetch(
`https://status.claude.com/api/v2/incidents/${id}.json`
);
if (!response.ok) throw new Error(`HTTP ${response.status}: ${id}`);
const { incident } = await response.json();
const timeline = [...incident.incident_updates].sort(
(a, b) => Date.parse(a.created_at) - Date.parse(b.created_at)
);
console.log(JSON.stringify({
incidentId: incident.id,
name: incident.name,
state: incident.status,
updates: timeline.map(update => ({
key: `${incident.id}:${update.id}`,
time: update.created_at,
state: update.status,
message: update.body
}))
}));
}
结果应为两个JSON对象,每个包含自身的更新数组。最后阶段均为resolved,但各自的更新数量和正文不同。组合key用于区分不同事故中的更新;这段示例没有数据库写入或自动重试功能,也没有将公开记录解释成账户运行结果。

为何不能只拿最后一条文字做全局提示
第二起事故在Monitoring阶段说明网页、移动应用、API及Code错误回落,已有Docs和Sheets连接器恢复;当时新增连接器暂不可用,部分计划执行被跳过,若干功能仍延迟。后续Resolved改变了该事故的结论,所以应用若展示中间限制,应同时展示其历史阶段,避免把过去的描述当成当前故障。
反过来,最终恢复通知没有给出每次任务的完成清单,不能据此把跳过任务标为已补跑。组件的整体状态还可能受其他事故影响。Microsoft 365连接器另有独立事故,其进展不由上述两个ID决定。按记录身份组织信息,才能让界面提示清楚表达“哪起事故已解决”,而不是笼统承诺“Claude所有功能都恢复”。
JS数组取值返回undefined怎么办?提供默认值的方案
2026-11-14 19:53:11
怎么自定义 Chart.js Tooltip 提示框内容与样式
2026-11-14 09:38:31
js字符串"1,2,3"怎么转数字数组
2026-11-13 23:47:17
js字符串数字怎么转数字数组map(Number)
2026-11-13 23:42:07
js字符串转数组后顺序错乱原因
2026-11-13 23:20:20
