@coralai/sps-cli 0.65.77 → 0.65.79
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/dist/console/routes/projectConfig.d.ts.map +1 -1
- package/dist/console/routes/projectConfig.js +45 -0
- package/dist/console/routes/projectConfig.js.map +1 -1
- package/dist/core/agents/projectAgentConfig.d.ts +3 -1
- package/dist/core/agents/projectAgentConfig.d.ts.map +1 -1
- package/dist/core/agents/projectAgentConfig.js +6 -3
- package/dist/core/agents/projectAgentConfig.js.map +1 -1
- package/dist/core/agents/writeProjectBaseRules.d.ts +17 -0
- package/dist/core/agents/writeProjectBaseRules.d.ts.map +1 -0
- package/dist/core/agents/writeProjectBaseRules.js +41 -0
- package/dist/core/agents/writeProjectBaseRules.js.map +1 -0
- package/dist/core/agents/writeProjectPersona.d.ts +6 -0
- package/dist/core/agents/writeProjectPersona.d.ts.map +1 -1
- package/dist/core/agents/writeProjectPersona.js +10 -3
- package/dist/core/agents/writeProjectPersona.js.map +1 -1
- package/dist/infra/filesystem.d.ts +12 -0
- package/dist/infra/filesystem.d.ts.map +1 -1
- package/dist/infra/filesystem.js +24 -10
- package/dist/infra/filesystem.js.map +1 -1
- package/dist/infra/secretFile.d.ts +6 -2
- package/dist/infra/secretFile.d.ts.map +1 -1
- package/dist/infra/secretFile.js +44 -10
- package/dist/infra/secretFile.js.map +1 -1
- package/dist/providers/media/adapters.d.ts.map +1 -1
- package/dist/providers/media/adapters.js +25 -13
- package/dist/providers/media/adapters.js.map +1 -1
- package/dist/providers/media/imageExt.d.ts +30 -0
- package/dist/providers/media/imageExt.d.ts.map +1 -0
- package/dist/providers/media/imageExt.js +45 -0
- package/dist/providers/media/imageExt.js.map +1 -0
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"projectConfig.d.ts","sourceRoot":"","sources":["../../../src/console/routes/projectConfig.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AACH,OAAO,EAAE,IAAI,EAAgB,MAAM,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"projectConfig.d.ts","sourceRoot":"","sources":["../../../src/console/routes/projectConfig.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AACH,OAAO,EAAE,IAAI,EAAgB,MAAM,MAAM,CAAC;AAkB1C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kCAAkC,CAAC;AAGvE,wBAAgB,wBAAwB,CAAC,IAAI,EAAE;IAAE,QAAQ,EAAE,cAAc,CAAA;CAAE,GAAG,IAAI,CAgUjF"}
|
|
@@ -17,6 +17,7 @@ import { configureProjectAgent, } from '../../core/agents/configureProjectAgent.
|
|
|
17
17
|
import { configureProjectSkills } from '../../core/skills/configure.js';
|
|
18
18
|
import { AGENT_ROLES } from '../../core/agents/projectAgentConfig.js';
|
|
19
19
|
import { writeProjectPersona } from '../../core/agents/writeProjectPersona.js';
|
|
20
|
+
import { BASE_RULES_MAX_BYTES, writeProjectBaseRules } from '../../core/agents/writeProjectBaseRules.js';
|
|
20
21
|
import { readProjectAgent } from '../../core/agents/readProjectAgent.js';
|
|
21
22
|
import { MEDIA_CAPABILITIES, writeProjectMediaProviders, } from '../../providers/media/mediaProviders.js';
|
|
22
23
|
import { sendResult } from '../lib/resultToJson.js';
|
|
@@ -250,6 +251,50 @@ export function createProjectConfigRoute(deps) {
|
|
|
250
251
|
});
|
|
251
252
|
return c.json({ ok: true, ...wrote });
|
|
252
253
|
});
|
|
254
|
+
/**
|
|
255
|
+
* 项目**角色基座**落盘 —— `<repo>/CLAUDE.md`(第二步 C 组;Eddy 2026-08-12 拍板新开端点)。
|
|
256
|
+
*
|
|
257
|
+
* ══════════════════════════════════════════════════════════════════════
|
|
258
|
+
* 存在的理由:消费方(studio)今天**直写**这个文件,而第二步要让 studio 与 sps
|
|
259
|
+
* **可以不共享文件系统**。写入方换成 sps 之后,工作区退化成 sps 独写。
|
|
260
|
+
*
|
|
261
|
+
* 🔴 **为什么不叫 `/claude-md`**:本仓的北极星是「不与任何具体 agent 深耦合」。
|
|
262
|
+
* `CLAUDE.md` 恰好是 claude 原生读的文件名,但这一侧的语义是**项目角色基座** ——
|
|
263
|
+
* openai 路也读它(`readAgentsMd` 在 AGENTS.md 缺失/存根时回退到它)。
|
|
264
|
+
* 名字里写死 claude,换后端那天要么改契约、要么留一个骗人的名字。
|
|
265
|
+
*
|
|
266
|
+
* 🔴 **为什么不并进 `/persona`**:persona 的契约是「人设三件一次写全、不能有中间态」;
|
|
267
|
+
* 基座是**另一个变更节奏**(带调用方自己的幂等标记)。并进去之后"人设"这个词会同时
|
|
268
|
+
* 表达两个概念,将来改其中一个必然要动另一个的测试。
|
|
269
|
+
*
|
|
270
|
+
* 🔴 **整体覆盖,不是合并** —— 契约写死在这里:sps **不解析**正文、不做块替换、
|
|
271
|
+
* 不认识调用方的幂等标记。"这次要不要写"由调用方判断,正文由它拼全。
|
|
272
|
+
* (同 persona 的边界:只落盘,不解释内容。)
|
|
273
|
+
*
|
|
274
|
+
* ⚠️ 落点是 `<repo>/CLAUDE.md`,**不是** `<repo>/.claude/CLAUDE.md` —— 后者是 codegraph /
|
|
275
|
+
* memory2 各自写规则片段的地方。**两个文件,而"写 CLAUDE.md"这句话不区分它们。**
|
|
276
|
+
* ══════════════════════════════════════════════════════════════════════
|
|
277
|
+
*/
|
|
278
|
+
app.put('/:project/base-rules', async (c) => {
|
|
279
|
+
const found = await resolveProjectDir(c, c.req.param('project'));
|
|
280
|
+
if ('err' in found)
|
|
281
|
+
return found.err;
|
|
282
|
+
const body = (await c.req.json().catch(() => null));
|
|
283
|
+
const invalid = (detail) => c.json({ type: 'validation', title: 'invalid base-rules', status: 422, detail }, 422);
|
|
284
|
+
if (!body || typeof body !== 'object' || Array.isArray(body))
|
|
285
|
+
return invalid('body must be an object');
|
|
286
|
+
if (typeof body.content !== 'string' || body.content.trim() === '') {
|
|
287
|
+
return invalid('content required (non-empty string)');
|
|
288
|
+
}
|
|
289
|
+
// 🔴 明确的上限 + 明确的错。撞到 body 的 2MB 通用上限时,错误信息会指向"请求太大",
|
|
290
|
+
// 而真因是"基座正文太大" —— 那会让调用方去查网关/代理而不是查自己的模板。
|
|
291
|
+
const bytes = Buffer.byteLength(body.content, 'utf-8');
|
|
292
|
+
if (bytes > BASE_RULES_MAX_BYTES) {
|
|
293
|
+
return invalid(`content too large: ${bytes} bytes (max ${BASE_RULES_MAX_BYTES})`);
|
|
294
|
+
}
|
|
295
|
+
const wrote = writeProjectBaseRules(found.dir, body.content);
|
|
296
|
+
return c.json({ ok: true, ...wrote });
|
|
297
|
+
});
|
|
253
298
|
return app;
|
|
254
299
|
}
|
|
255
300
|
//# sourceMappingURL=projectConfig.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"projectConfig.js","sourceRoot":"","sources":["../../../src/console/routes/projectConfig.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"projectConfig.js","sourceRoot":"","sources":["../../../src/console/routes/projectConfig.ts"],"names":[],"mappings":"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"}
|
|
@@ -15,7 +15,9 @@ export declare function readProjectAgentConfig(cwd: string, role: AgentRole): Ag
|
|
|
15
15
|
* 🔴 为什么必须合并:这个文件按 role 分段(worker/chat/reviewer),整体覆盖会把
|
|
16
16
|
* 别的 role 的人设抹掉。派一次专家改 chat 段,不该让 worker 失去人设。
|
|
17
17
|
*
|
|
18
|
-
* 不含密,常规权限即可(与 settings.local.json/media-providers 不同,那些含 token)
|
|
18
|
+
* 不含密,常规权限即可(与 settings.local.json/media-providers 不同,那些含 token)——
|
|
19
|
+
* **但要原子**:这是读-改-写,半截落盘会让下一次读走进上面那条"坏 JSON 当空处理"的分支,
|
|
20
|
+
* 于是**别的 role 的人设被静默抹掉**,而那正是这个函数存在的理由。
|
|
19
21
|
*/
|
|
20
22
|
export declare function writeProjectAgentConfig(cwd: string, role: AgentRole, cfg: AgentRuntimeConfig): void;
|
|
21
23
|
/** 角色全集(delivery 层校验入参用)。 */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"projectAgentConfig.d.ts","sourceRoot":"","sources":["../../../src/core/agents/projectAgentConfig.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"projectAgentConfig.d.ts","sourceRoot":"","sources":["../../../src/core/agents/projectAgentConfig.ts"],"names":[],"mappings":"AAoBA,wEAAwE;AACxE,MAAM,WAAW,kBAAkB;IACjC,qCAAqC;IACrC,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,4DAA4D;AAC5D,MAAM,MAAM,SAAS,GAAG,QAAQ,GAAG,MAAM,GAAG,UAAU,CAAC;AAKvD;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,GAAG,kBAAkB,CAWvF;AAED;;;;;;;;;GASG;AACH,wBAAgB,uBAAuB,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,EAAE,kBAAkB,GAAG,IAAI,CAanG;AAED,6BAA6B;AAC7B,eAAO,MAAM,WAAW,EAAE,SAAS,SAAS,EAAmC,CAAC"}
|
|
@@ -14,8 +14,9 @@
|
|
|
14
14
|
* @layer core
|
|
15
15
|
* @boundedContext agents
|
|
16
16
|
*/
|
|
17
|
-
import { existsSync, mkdirSync, readFileSync
|
|
17
|
+
import { existsSync, mkdirSync, readFileSync } from 'node:fs';
|
|
18
18
|
import { dirname, join } from 'node:path';
|
|
19
|
+
import { writeFileAtomicSync } from '../../infra/filesystem.js';
|
|
19
20
|
/**
|
|
20
21
|
* 读项目级 per-agent 人设的某 role 段。缺文件/缺段/异常 → 空对象(永不抛)。
|
|
21
22
|
*/
|
|
@@ -40,7 +41,9 @@ export function readProjectAgentConfig(cwd, role) {
|
|
|
40
41
|
* 🔴 为什么必须合并:这个文件按 role 分段(worker/chat/reviewer),整体覆盖会把
|
|
41
42
|
* 别的 role 的人设抹掉。派一次专家改 chat 段,不该让 worker 失去人设。
|
|
42
43
|
*
|
|
43
|
-
* 不含密,常规权限即可(与 settings.local.json/media-providers 不同,那些含 token)
|
|
44
|
+
* 不含密,常规权限即可(与 settings.local.json/media-providers 不同,那些含 token)——
|
|
45
|
+
* **但要原子**:这是读-改-写,半截落盘会让下一次读走进上面那条"坏 JSON 当空处理"的分支,
|
|
46
|
+
* 于是**别的 role 的人设被静默抹掉**,而那正是这个函数存在的理由。
|
|
44
47
|
*/
|
|
45
48
|
export function writeProjectAgentConfig(cwd, role, cfg) {
|
|
46
49
|
const p = join(cwd, '.claude', 'agent-config.json');
|
|
@@ -57,7 +60,7 @@ export function writeProjectAgentConfig(cwd, role, cfg) {
|
|
|
57
60
|
existing = {};
|
|
58
61
|
const next = { ...existing, [role]: { ...existing[role], ...cfg } };
|
|
59
62
|
mkdirSync(dirname(p), { recursive: true });
|
|
60
|
-
|
|
63
|
+
writeFileAtomicSync(p, `${JSON.stringify(next, null, 2)}\n`);
|
|
61
64
|
}
|
|
62
65
|
/** 角色全集(delivery 层校验入参用)。 */
|
|
63
66
|
export const AGENT_ROLES = ['worker', 'chat', 'reviewer'];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"projectAgentConfig.js","sourceRoot":"","sources":["../../../src/core/agents/projectAgentConfig.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AACH,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,YAAY,EAAE,
|
|
1
|
+
{"version":3,"file":"projectAgentConfig.js","sourceRoot":"","sources":["../../../src/core/agents/projectAgentConfig.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AACH,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAC9D,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAchE;;GAEG;AACH,MAAM,UAAU,sBAAsB,CAAC,GAAW,EAAE,IAAe;IACjE,IAAI,CAAC;QACH,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,EAAE,SAAS,EAAE,mBAAmB,CAAC,CAAC;QACpD,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;YAAE,OAAO,EAAE,CAAC;QAC9B,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,EAAE,OAAO,CAAC,CAA2B,CAAC;QACzE,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC;QACpB,IAAI,CAAC,CAAC,IAAI,OAAO,CAAC,KAAK,QAAQ;YAAE,OAAO,EAAE,CAAC;QAC3C,OAAO,OAAO,CAAC,CAAC,WAAW,KAAK,QAAQ,IAAI,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IAClG,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,CAAC;IACZ,CAAC;AACH,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,uBAAuB,CAAC,GAAW,EAAE,IAAe,EAAE,GAAuB;IAC3F,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,EAAE,SAAS,EAAE,mBAAmB,CAAC,CAAC;IACpD,IAAI,QAAQ,GAA2B,EAAE,CAAC;IAC1C,IAAI,CAAC;QACH,IAAI,UAAU,CAAC,CAAC,CAAC;YAAE,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,EAAE,OAAO,CAAC,CAA2B,CAAC;IAC/F,CAAC;IAAC,MAAM,CAAC;QACP,0CAA0C;QAC1C,QAAQ,GAAG,EAAE,CAAC;IAChB,CAAC;IACD,IAAI,CAAC,QAAQ,IAAI,OAAO,QAAQ,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC;QAAE,QAAQ,GAAG,EAAE,CAAC;IACxF,MAAM,IAAI,GAA2B,EAAE,GAAG,QAAQ,EAAE,CAAC,IAAI,CAAC,EAAE,EAAE,GAAG,QAAQ,CAAC,IAAI,CAAC,EAAE,GAAG,GAAG,EAAE,EAAE,CAAC;IAC5F,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC3C,mBAAmB,CAAC,CAAC,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAC/D,CAAC;AAED,6BAA6B;AAC7B,MAAM,CAAC,MAAM,WAAW,GAAyB,CAAC,QAAQ,EAAE,MAAM,EAAE,UAAU,CAAC,CAAC"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/** 基座正文上限(256KB)。实测量级是几 KB;这个上限只为把错误挡在语义层,见路由注释。 */
|
|
2
|
+
export declare const BASE_RULES_MAX_BYTES: number;
|
|
3
|
+
export interface WriteBaseRulesResult {
|
|
4
|
+
wrote: string[];
|
|
5
|
+
bytes: number;
|
|
6
|
+
/**
|
|
7
|
+
* 内容与现有**完全相同**时为 `false`,且**这一轮不写**。
|
|
8
|
+
*
|
|
9
|
+
* 🔴 不是为了省 IO:sps 侧有 watcher 盯着项目目录,而调用方的对账是**轮询**跑的 ——
|
|
10
|
+
* 每轮无条件重写会让一次 no-op 对账去踢 watcher(以及所有下游的"文件变了"链路)。
|
|
11
|
+
* 调用方也能靠它区分「我调了」和「它真变了」。
|
|
12
|
+
*/
|
|
13
|
+
changed: boolean;
|
|
14
|
+
}
|
|
15
|
+
/** 写基座正文;内容未变则不写。返回实际写了什么,供调用方核对。 */
|
|
16
|
+
export declare function writeProjectBaseRules(cwd: string, content: string): WriteBaseRulesResult;
|
|
17
|
+
//# sourceMappingURL=writeProjectBaseRules.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"writeProjectBaseRules.d.ts","sourceRoot":"","sources":["../../../src/core/agents/writeProjectBaseRules.ts"],"names":[],"mappings":"AAoBA,oDAAoD;AACpD,eAAO,MAAM,oBAAoB,QAAa,CAAC;AAE/C,MAAM,WAAW,oBAAoB;IACnC,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd;;;;;;OAMG;IACH,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,qCAAqC;AACrC,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,oBAAoB,CAgBxF"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @module core/agents/writeProjectBaseRules
|
|
3
|
+
* @description 项目**角色基座**落盘 —— `<repo>/CLAUDE.md`(第二步 C 组)。
|
|
4
|
+
* @layer core
|
|
5
|
+
* @boundedContext agents
|
|
6
|
+
*
|
|
7
|
+
* 🔴 边界与 `writeProjectPersona` 同:**只落盘,不解释内容** ——
|
|
8
|
+
* 不解析调用方的幂等标记、不做块替换、不校验语义。**整体覆盖。**
|
|
9
|
+
*
|
|
10
|
+
* ⚠️ 落点是 `<repo>/CLAUDE.md`,**不是** `<repo>/.claude/CLAUDE.md`
|
|
11
|
+
* (后者是 codegraph / memory2 写规则片段的地方)——**两个文件**,而"写 CLAUDE.md"
|
|
12
|
+
* 这句话在两个仓之间不区分它们,错了不报错。
|
|
13
|
+
*
|
|
14
|
+
* 不含密 → 不收权限;**但要原子**(tmp→rename):失败形态是**半截基座被 agent 读到**,
|
|
15
|
+
* 而半份规则不会报错,只会让 agent 少守一半纪律。
|
|
16
|
+
*/
|
|
17
|
+
import { existsSync, readFileSync } from 'node:fs';
|
|
18
|
+
import { join } from 'node:path';
|
|
19
|
+
import { writeFileAtomicSync } from '../../infra/filesystem.js';
|
|
20
|
+
/** 基座正文上限(256KB)。实测量级是几 KB;这个上限只为把错误挡在语义层,见路由注释。 */
|
|
21
|
+
export const BASE_RULES_MAX_BYTES = 256 * 1024;
|
|
22
|
+
/** 写基座正文;内容未变则不写。返回实际写了什么,供调用方核对。 */
|
|
23
|
+
export function writeProjectBaseRules(cwd, content) {
|
|
24
|
+
const path = join(cwd, 'CLAUDE.md');
|
|
25
|
+
const next = content.endsWith('\n') ? content : `${content}\n`;
|
|
26
|
+
const bytes = Buffer.byteLength(next, 'utf-8');
|
|
27
|
+
// 读失败(不存在/坏编码)一律当"不同"→ 照写。宁可多写一次,也不要因为读不动而**跳过**写入。
|
|
28
|
+
let current;
|
|
29
|
+
try {
|
|
30
|
+
if (existsSync(path))
|
|
31
|
+
current = readFileSync(path, 'utf-8');
|
|
32
|
+
}
|
|
33
|
+
catch {
|
|
34
|
+
current = undefined;
|
|
35
|
+
}
|
|
36
|
+
if (current === next)
|
|
37
|
+
return { wrote: [], bytes, changed: false };
|
|
38
|
+
writeFileAtomicSync(path, next);
|
|
39
|
+
return { wrote: ['CLAUDE.md'], bytes, changed: true };
|
|
40
|
+
}
|
|
41
|
+
//# sourceMappingURL=writeProjectBaseRules.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"writeProjectBaseRules.js","sourceRoot":"","sources":["../../../src/core/agents/writeProjectBaseRules.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AACH,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACnD,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAEhE,oDAAoD;AACpD,MAAM,CAAC,MAAM,oBAAoB,GAAG,GAAG,GAAG,IAAI,CAAC;AAe/C,qCAAqC;AACrC,MAAM,UAAU,qBAAqB,CAAC,GAAW,EAAE,OAAe;IAChE,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC;IACpC,MAAM,IAAI,GAAG,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,IAAI,CAAC;IAC/D,MAAM,KAAK,GAAG,MAAM,CAAC,UAAU,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAE/C,oDAAoD;IACpD,IAAI,OAA2B,CAAC;IAChC,IAAI,CAAC;QACH,IAAI,UAAU,CAAC,IAAI,CAAC;YAAE,OAAO,GAAG,YAAY,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAC9D,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,GAAG,SAAS,CAAC;IACtB,CAAC;IACD,IAAI,OAAO,KAAK,IAAI;QAAE,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;IAElE,mBAAmB,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IAChC,OAAO,EAAE,KAAK,EAAE,CAAC,WAAW,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;AACxD,CAAC"}
|
|
@@ -19,6 +19,12 @@ export interface WriteProjectPersonaResult {
|
|
|
19
19
|
* 写人设三件。`outputStyle` 省略则只写 `AGENTS.md`(纯正文人设,不走 output-style 通道)。
|
|
20
20
|
*
|
|
21
21
|
* 不含密 → 常规权限(与 settings.local.json / media-providers.json 不同,那些含 token)。
|
|
22
|
+
*
|
|
23
|
+
* 🔴 **但要原子**(tmp→rename):失败形态不是泄密,是**半截文件被 worker 读到** ——
|
|
24
|
+
* 半个 output-style / 坏 JSON 的 agent-config 都会让 agent 行为怪而不报错。
|
|
25
|
+
* 判据(studio 会话,C 组迁移):**迁移不该让任何一个既有属性变差** ——
|
|
26
|
+
* studio 侧这三个文件原本就是 tmp→rename,直接迁过来会把"原子"这个属性掉在路上,
|
|
27
|
+
* 而掉了之后**没有任何东西会报错**。
|
|
22
28
|
*/
|
|
23
29
|
export declare function writeProjectPersona(cwd: string, opts: WriteProjectPersonaOpts): WriteProjectPersonaResult;
|
|
24
30
|
//# sourceMappingURL=writeProjectPersona.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"writeProjectPersona.d.ts","sourceRoot":"","sources":["../../../src/core/agents/writeProjectPersona.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"writeProjectPersona.d.ts","sourceRoot":"","sources":["../../../src/core/agents/writeProjectPersona.ts"],"names":[],"mappings":"AAoBA,OAAO,EAAE,KAAK,SAAS,EAA2B,MAAM,yBAAyB,CAAC;AAElF,MAAM,WAAW,uBAAuB;IACtC,0BAA0B;IAC1B,YAAY,EAAE,MAAM,CAAC;IACrB,kCAAkC;IAClC,IAAI,EAAE,SAAS,CAAC;IAChB,mDAAmD;IACnD,WAAW,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;CACjD;AAED,MAAM,WAAW,yBAAyB;IACxC,+BAA+B;IAC/B,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,mBAAmB,CACjC,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,uBAAuB,GAC5B,yBAAyB,CAwB3B"}
|
|
@@ -15,26 +15,33 @@
|
|
|
15
15
|
* 🔴 边界(架构原则①):**只落盘,不解释内容** —— 不校验语义、不注入模板、不做 diff。
|
|
16
16
|
* 正文里写什么是消费方的产品决策;sps 只保证写对位置、写全三件。
|
|
17
17
|
*/
|
|
18
|
-
import { mkdirSync
|
|
18
|
+
import { mkdirSync } from 'node:fs';
|
|
19
19
|
import { dirname, join } from 'node:path';
|
|
20
|
+
import { writeFileAtomicSync } from '../../infra/filesystem.js';
|
|
20
21
|
import { writeProjectAgentConfig } from './projectAgentConfig.js';
|
|
21
22
|
/**
|
|
22
23
|
* 写人设三件。`outputStyle` 省略则只写 `AGENTS.md`(纯正文人设,不走 output-style 通道)。
|
|
23
24
|
*
|
|
24
25
|
* 不含密 → 常规权限(与 settings.local.json / media-providers.json 不同,那些含 token)。
|
|
26
|
+
*
|
|
27
|
+
* 🔴 **但要原子**(tmp→rename):失败形态不是泄密,是**半截文件被 worker 读到** ——
|
|
28
|
+
* 半个 output-style / 坏 JSON 的 agent-config 都会让 agent 行为怪而不报错。
|
|
29
|
+
* 判据(studio 会话,C 组迁移):**迁移不该让任何一个既有属性变差** ——
|
|
30
|
+
* studio 侧这三个文件原本就是 tmp→rename,直接迁过来会把"原子"这个属性掉在路上,
|
|
31
|
+
* 而掉了之后**没有任何东西会报错**。
|
|
25
32
|
*/
|
|
26
33
|
export function writeProjectPersona(cwd, opts) {
|
|
27
34
|
const wrote = [];
|
|
28
35
|
const agentsMd = join(cwd, 'AGENTS.md');
|
|
29
36
|
mkdirSync(dirname(agentsMd), { recursive: true });
|
|
30
|
-
|
|
37
|
+
writeFileAtomicSync(agentsMd, opts.instructions.endsWith('\n') ? opts.instructions : `${opts.instructions}\n`);
|
|
31
38
|
wrote.push('AGENTS.md');
|
|
32
39
|
if (!opts.outputStyle)
|
|
33
40
|
return { wrote };
|
|
34
41
|
// name 的字符集由 delivery 层校验(它会变成文件名);这里只负责拼路径与写。
|
|
35
42
|
const stylePath = join(cwd, '.claude', 'output-styles', `${opts.outputStyle.name}.md`);
|
|
36
43
|
mkdirSync(dirname(stylePath), { recursive: true });
|
|
37
|
-
|
|
44
|
+
writeFileAtomicSync(stylePath, opts.outputStyle.content.endsWith('\n') ? opts.outputStyle.content : `${opts.outputStyle.content}\n`);
|
|
38
45
|
wrote.push(`.claude/output-styles/${opts.outputStyle.name}.md`);
|
|
39
46
|
// 按 role 段合并 —— 不整体覆盖,否则会抹掉别的 role 的人设。
|
|
40
47
|
writeProjectAgentConfig(cwd, opts.role, { outputStyle: opts.outputStyle.name });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"writeProjectPersona.js","sourceRoot":"","sources":["../../../src/core/agents/writeProjectPersona.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AACH,OAAO,EAAE,SAAS,EAAE,
|
|
1
|
+
{"version":3,"file":"writeProjectPersona.js","sourceRoot":"","sources":["../../../src/core/agents/writeProjectPersona.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AACH,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AACpC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,EAAkB,uBAAuB,EAAE,MAAM,yBAAyB,CAAC;AAiBlF;;;;;;;;;;GAUG;AACH,MAAM,UAAU,mBAAmB,CACjC,GAAW,EACX,IAA6B;IAE7B,MAAM,KAAK,GAAa,EAAE,CAAC;IAE3B,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC;IACxC,SAAS,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAClD,mBAAmB,CAAC,QAAQ,EAAE,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,YAAY,IAAI,CAAC,CAAC;IAC/G,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAExB,IAAI,CAAC,IAAI,CAAC,WAAW;QAAE,OAAO,EAAE,KAAK,EAAE,CAAC;IAExC,+CAA+C;IAC/C,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,SAAS,EAAE,eAAe,EAAE,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,KAAK,CAAC,CAAC;IACvF,SAAS,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACnD,mBAAmB,CACjB,SAAS,EACT,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,WAAW,CAAC,OAAO,IAAI,CACrG,CAAC;IACF,KAAK,CAAC,IAAI,CAAC,yBAAyB,IAAI,CAAC,WAAW,CAAC,IAAI,KAAK,CAAC,CAAC;IAEhE,wCAAwC;IACxC,uBAAuB,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,WAAW,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC,CAAC;IAChF,KAAK,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAC;IAExC,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC;AACvD,CAAC"}
|
|
@@ -34,6 +34,18 @@ export interface FileSystem {
|
|
|
34
34
|
* 并发写者各写各的中间文件,rename 覆盖时互不干扰 —— 结果一定是某一方的完整内容。
|
|
35
35
|
*/
|
|
36
36
|
export declare function uniqueTmpPath(path: string): string;
|
|
37
|
+
/**
|
|
38
|
+
* 原子写(函数式入口):同目录唯一临时名 → `rename`。
|
|
39
|
+
*
|
|
40
|
+
* 抽成函数是因为**有两类调用方**:走注入 `FileSystem` 的 service 层(用下面的方法),
|
|
41
|
+
* 和 `core/agents/*` 这类同步纯函数模块(没有可注入的 fs)。
|
|
42
|
+
* 🔴 抽出来而不是让后者各写一遍三行 —— 本仓已经有三种原子写各有其位
|
|
43
|
+
* (普通 / 含密 `infra/secretFile` / 资产 `providers/art/atomicWrite`),**不该再多出第四种**。
|
|
44
|
+
*
|
|
45
|
+
* ⚠️ 不带 `mode`:含密文件**不要用它**(tmp 会以 umask 默认权限存在到 rename 那一刻)——
|
|
46
|
+
* 那条走 `infra/secretFile.writeSecretFile`。
|
|
47
|
+
*/
|
|
48
|
+
export declare function writeFileAtomicSync(path: string, content: string): void;
|
|
37
49
|
export declare class NodeFileSystem implements FileSystem {
|
|
38
50
|
exists(path: string): boolean;
|
|
39
51
|
stat(path: string): FileStat | null;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"filesystem.d.ts","sourceRoot":"","sources":["../../src/infra/filesystem.ts"],"names":[],"mappings":"AA2BA,MAAM,WAAW,QAAQ;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,OAAO,CAAC;IACrB,MAAM,EAAE,OAAO,CAAC;CACjB;AAED,MAAM,WAAW,QAAQ;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,OAAO,CAAC;IACrB,MAAM,EAAE,OAAO,CAAC;CACjB;AAED,MAAM,WAAW,UAAU;IACzB,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;IAC9B,IAAI,CAAC,IAAI,EAAE,MAAM,GAAG,QAAQ,GAAG,IAAI,CAAC;IACpC,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAAC;IAC/B,+CAA+C;IAC/C,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACrD,+BAA+B;IAC/B,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/C,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,QAAQ,EAAE,CAAC;IAClC,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE;QAAE,SAAS,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,IAAI,CAAC;IAC1D,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,gBAAgB;IAChB,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE;QAAE,SAAS,CAAC,EAAE,OAAO,CAAC;QAAC,KAAK,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,IAAI,CAAC;IACxE,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,IAAI,CAAC;CACxC;AAID;;;GAGG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAElD;AAED,qBAAa,cAAe,YAAW,UAAU;IAC/C,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAI7B,IAAI,CAAC,IAAI,EAAE,MAAM,GAAG,QAAQ,GAAG,IAAI;IAcnC,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM;IAI9B,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI;
|
|
1
|
+
{"version":3,"file":"filesystem.d.ts","sourceRoot":"","sources":["../../src/infra/filesystem.ts"],"names":[],"mappings":"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"}
|
package/dist/infra/filesystem.js
CHANGED
|
@@ -21,6 +21,28 @@ import { dirname } from 'node:path';
|
|
|
21
21
|
export function uniqueTmpPath(path) {
|
|
22
22
|
return `${path}.${process.pid}.${randomUUID().slice(0, 8)}.tmp`;
|
|
23
23
|
}
|
|
24
|
+
/**
|
|
25
|
+
* 原子写(函数式入口):同目录唯一临时名 → `rename`。
|
|
26
|
+
*
|
|
27
|
+
* 抽成函数是因为**有两类调用方**:走注入 `FileSystem` 的 service 层(用下面的方法),
|
|
28
|
+
* 和 `core/agents/*` 这类同步纯函数模块(没有可注入的 fs)。
|
|
29
|
+
* 🔴 抽出来而不是让后者各写一遍三行 —— 本仓已经有三种原子写各有其位
|
|
30
|
+
* (普通 / 含密 `infra/secretFile` / 资产 `providers/art/atomicWrite`),**不该再多出第四种**。
|
|
31
|
+
*
|
|
32
|
+
* ⚠️ 不带 `mode`:含密文件**不要用它**(tmp 会以 umask 默认权限存在到 rename 那一刻)——
|
|
33
|
+
* 那条走 `infra/secretFile.writeSecretFile`。
|
|
34
|
+
*/
|
|
35
|
+
export function writeFileAtomicSync(path, content) {
|
|
36
|
+
// 🔴 临时名必须唯一。固定的 `${path}.tmp` 会让并发写者共用同一个中间文件:
|
|
37
|
+
// A 写一半 → B 覆盖 → A rename,落地的是**撕裂内容**,而不是任一方的完整快照。
|
|
38
|
+
// 注:rename 覆盖是原子的,足以防住**进程崩溃**;要抗断电还需 fsync(代价更高,按需再加)。
|
|
39
|
+
const tmp = uniqueTmpPath(path);
|
|
40
|
+
const dir = dirname(path);
|
|
41
|
+
if (!existsSync(dir))
|
|
42
|
+
mkdirSync(dir, { recursive: true });
|
|
43
|
+
writeFileSync(tmp, content);
|
|
44
|
+
renameSync(tmp, path);
|
|
45
|
+
}
|
|
24
46
|
export class NodeFileSystem {
|
|
25
47
|
exists(path) {
|
|
26
48
|
return existsSync(path);
|
|
@@ -43,16 +65,8 @@ export class NodeFileSystem {
|
|
|
43
65
|
return readFileSync(path, 'utf-8');
|
|
44
66
|
}
|
|
45
67
|
writeFileAtomic(path, content) {
|
|
46
|
-
//
|
|
47
|
-
|
|
48
|
-
// 这个函数有 10+ 个调用方(项目 conf、daemon state.json…)在信任"原子"这个承诺。
|
|
49
|
-
// 注:rename 覆盖是原子的,足以防住**进程崩溃**;要抗断电还需 fsync(代价更高,按需再加)。
|
|
50
|
-
const tmp = uniqueTmpPath(path);
|
|
51
|
-
const dir = dirname(path);
|
|
52
|
-
if (!existsSync(dir))
|
|
53
|
-
mkdirSync(dir, { recursive: true });
|
|
54
|
-
writeFileSync(tmp, content);
|
|
55
|
-
renameSync(tmp, path);
|
|
68
|
+
// 实现见 `writeFileAtomicSync`(同一份;这个方法有 10+ 个调用方在信任"原子"这个承诺)。
|
|
69
|
+
writeFileAtomicSync(path, content);
|
|
56
70
|
}
|
|
57
71
|
writeFile(path, content) {
|
|
58
72
|
const dir = dirname(path);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"filesystem.js","sourceRoot":"","sources":["../../src/infra/filesystem.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AACH,OAAO,EAEL,UAAU,EACV,SAAS,EACT,WAAW,EACX,YAAY,EACZ,UAAU,EACV,MAAM,EACN,QAAQ,EACR,UAAU,EACV,aAAa,GACd,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AA+BpC,iEAAiE;AAEjE;;;GAGG;AACH,MAAM,UAAU,aAAa,CAAC,IAAY;IACxC,OAAO,GAAG,IAAI,IAAI,OAAO,CAAC,GAAG,IAAI,UAAU,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC;AAClE,CAAC;AAED,MAAM,OAAO,cAAc;IACzB,MAAM,CAAC,IAAY;QACjB,OAAO,UAAU,CAAC,IAAI,CAAC,CAAC;IAC1B,CAAC;IAED,IAAI,CAAC,IAAY;QACf,IAAI,CAAC;YACH,MAAM,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;YACzB,OAAO;gBACL,IAAI,EAAE,CAAC,CAAC,IAAI;gBACZ,OAAO,EAAE,CAAC,CAAC,OAAO;gBAClB,WAAW,EAAE,CAAC,CAAC,WAAW,EAAE;gBAC5B,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE;aACnB,CAAC;QACJ,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAED,QAAQ,CAAC,IAAY;QACnB,OAAO,YAAY,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IACrC,CAAC;IAED,eAAe,CAAC,IAAY,EAAE,OAAe;QAC3C,
|
|
1
|
+
{"version":3,"file":"filesystem.js","sourceRoot":"","sources":["../../src/infra/filesystem.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AACH,OAAO,EAEL,UAAU,EACV,SAAS,EACT,WAAW,EACX,YAAY,EACZ,UAAU,EACV,MAAM,EACN,QAAQ,EACR,UAAU,EACV,aAAa,GACd,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AA+BpC,iEAAiE;AAEjE;;;GAGG;AACH,MAAM,UAAU,aAAa,CAAC,IAAY;IACxC,OAAO,GAAG,IAAI,IAAI,OAAO,CAAC,GAAG,IAAI,UAAU,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC;AAClE,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,mBAAmB,CAAC,IAAY,EAAE,OAAe;IAC/D,gDAAgD;IAChD,oDAAoD;IACpD,wDAAwD;IACxD,MAAM,GAAG,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC;IAChC,MAAM,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC1B,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC;QAAE,SAAS,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC1D,aAAa,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;IAC5B,UAAU,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;AACxB,CAAC;AAED,MAAM,OAAO,cAAc;IACzB,MAAM,CAAC,IAAY;QACjB,OAAO,UAAU,CAAC,IAAI,CAAC,CAAC;IAC1B,CAAC;IAED,IAAI,CAAC,IAAY;QACf,IAAI,CAAC;YACH,MAAM,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;YACzB,OAAO;gBACL,IAAI,EAAE,CAAC,CAAC,IAAI;gBACZ,OAAO,EAAE,CAAC,CAAC,OAAO;gBAClB,WAAW,EAAE,CAAC,CAAC,WAAW,EAAE;gBAC5B,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE;aACnB,CAAC;QACJ,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAED,QAAQ,CAAC,IAAY;QACnB,OAAO,YAAY,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IACrC,CAAC;IAED,eAAe,CAAC,IAAY,EAAE,OAAe;QAC3C,4DAA4D;QAC5D,mBAAmB,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IACrC,CAAC;IAED,SAAS,CAAC,IAAY,EAAE,OAAe;QACrC,MAAM,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;QAC1B,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC;YAAE,SAAS,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAC1D,aAAa,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAC/B,CAAC;IAED,OAAO,CAAC,IAAY;QAClB,MAAM,OAAO,GAAG,WAAW,CAAC,IAAI,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;QAC3D,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,CAAS,EAAE,EAAE,CAAC,CAAC;YACjC,IAAI,EAAE,CAAC,CAAC,IAAI;YACZ,WAAW,EAAE,CAAC,CAAC,WAAW,EAAE;YAC5B,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE;SACnB,CAAC,CAAC,CAAC;IACN,CAAC;IAED,KAAK,CAAC,IAAY,EAAE,OAAgC,EAAE;QACpD,SAAS,CAAC,IAAI,EAAE,EAAE,SAAS,EAAE,IAAI,CAAC,SAAS,IAAI,KAAK,EAAE,CAAC,CAAC;IAC1D,CAAC;IAED,MAAM,CAAC,IAAY;QACjB,UAAU,CAAC,IAAI,CAAC,CAAC;IACnB,CAAC;IAED,EAAE,CAAC,IAAY,EAAE,OAAiD,EAAE;QAClE,MAAM,CAAC,IAAI,EAAE,EAAE,SAAS,EAAE,IAAI,CAAC,SAAS,IAAI,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,IAAI,KAAK,EAAE,CAAC,CAAC;IACnF,CAAC;IAED,MAAM,CAAC,IAAY,EAAE,EAAU;QAC7B,UAAU,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;IACvB,CAAC;CACF;AAWD;;;;GAIG;AACH,MAAM,OAAO,kBAAkB;IACrB,IAAI,CAAc;IAClB,OAAO,GAAG,CAAC,CAAC;IACH,KAAK,CAAe;IAErC;;;OAGG;IACH,YAAY,OAAiC,EAAE;QAC7C,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;QAC9C,IAAI,CAAC,IAAI,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,CAAC,KAAK,EAAE,EAAE,QAAQ,EAAE,IAAI,GAAG,EAAE,EAAE,CAAC;IAC1E,CAAC;IAEO,IAAI;QACV,wCAAwC;QACxC,IAAI,CAAC,OAAO,IAAI,CAAC,CAAC;QAClB,OAAO,IAAI,CAAC,KAAK,EAAE,GAAG,CAAC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,GAAG,KAAK,CAAC;IACtD,CAAC;IAEO,IAAI,CAAC,IAAY,EAAE,UAAmB;QAC5C,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAC9C,IAAI,IAAI,GAAgB,IAAI,CAAC,IAAI,CAAC;QAClC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACtC,IAAI,IAAI,CAAC,IAAI,KAAK,KAAK,IAAI,CAAC,IAAI,CAAC,QAAQ;gBAAE,OAAO,IAAI,CAAC;YACvD,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAE,CAAC;YACvB,IAAI,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YACpC,IAAI,CAAC,KAAK,EAAE,CAAC;gBACX,IAAI,CAAC,UAAU;oBAAE,OAAO,IAAI,CAAC;gBAC7B,IAAI,CAAC,KAAK,KAAK,CAAC,MAAM,GAAG,CAAC;oBAAE,OAAO,IAAI,CAAC;gBACxC,KAAK,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,QAAQ,EAAE,IAAI,GAAG,EAAE,EAAE,CAAC;gBACnE,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;YACjC,CAAC;YACD,IAAI,GAAG,KAAK,CAAC;QACf,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;OAGG;IACK,UAAU,CAChB,IAAY,EACZ,UAAU,GAAG,KAAK;QAElB,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAC9C,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,IAAI,CAAC;QACpC,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAE,CAAC;QACtC,MAAM,WAAW,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QACvC,IAAI,IAAI,GAAgB,IAAI,CAAC,IAAI,CAAC;QAClC,KAAK,MAAM,CAAC,IAAI,WAAW,EAAE,CAAC;YAC5B,IAAI,CAAC,IAAI,CAAC,QAAQ;gBAAE,IAAI,CAAC,QAAQ,GAAG,IAAI,GAAG,EAAE,CAAC;YAC9C,IAAI,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YAChC,IAAI,CAAC,IAAI,EAAE,CAAC;gBACV,IAAI,CAAC,UAAU;oBAAE,OAAO,IAAI,CAAC;gBAC7B,IAAI,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,QAAQ,EAAE,IAAI,GAAG,EAAE,EAAE,CAAC;gBAClE,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;YAC7B,CAAC;YACD,IAAI,IAAI,CAAC,IAAI,KAAK,KAAK;gBAAE,OAAO,IAAI,CAAC;YACrC,IAAI,GAAG,IAAI,CAAC;QACd,CAAC;QACD,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;IAChC,CAAC;IAED,MAAM,CAAC,IAAY;QACjB,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,KAAK,IAAI,CAAC;IACzC,CAAC;IAED,IAAI,CAAC,IAAY;QACf,MAAM,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QACjC,IAAI,CAAC,CAAC;YAAE,OAAO,IAAI,CAAC;QACpB,OAAO;YACL,IAAI,EAAE,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,MAAM,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACtD,OAAO,EAAE,CAAC,CAAC,OAAO;YAClB,WAAW,EAAE,CAAC,CAAC,IAAI,KAAK,KAAK;YAC7B,MAAM,EAAE,CAAC,CAAC,IAAI,KAAK,MAAM;SAC1B,CAAC;IACJ,CAAC;IAED,QAAQ,CAAC,IAAY;QACnB,MAAM,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QACjC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,KAAK,MAAM,IAAI,CAAC,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;YACvD,MAAM,IAAI,KAAK,CAAC,yBAAyB,IAAI,EAAE,CAAC,CAAC;QACnD,CAAC;QACD,OAAO,CAAC,CAAC,OAAO,CAAC;IACnB,CAAC;IAED,eAAe,CAAC,IAAY,EAAE,OAAe;QAC3C,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAChC,CAAC;IAED,SAAS,CAAC,IAAY,EAAE,OAAe;QACrC,MAAM,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QACzC,IAAI,CAAC,IAAI;YAAE,MAAM,IAAI,KAAK,CAAC,iBAAiB,IAAI,EAAE,CAAC,CAAC;QACpD,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ;YAAE,IAAI,CAAC,MAAM,CAAC,QAAQ,GAAG,IAAI,GAAG,EAAE,CAAC;QAC5D,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;IACvF,CAAC;IAED,OAAO,CAAC,IAAY;QAClB,MAAM,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QACjC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;YAC1C,MAAM,IAAI,KAAK,CAAC,4BAA4B,IAAI,EAAE,CAAC,CAAC;QACtD,CAAC;QACD,OAAO,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YACnD,IAAI;YACJ,WAAW,EAAE,CAAC,CAAC,IAAI,KAAK,KAAK;YAC7B,MAAM,EAAE,CAAC,CAAC,IAAI,KAAK,MAAM;SAC1B,CAAC,CAAC,CAAC;IACN,CAAC;IAED,KAAK,CAAC,IAAY,EAAE,OAAgC,EAAE;QACpD,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAC9C,IAAI,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;QACrB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACtC,IAAI,CAAC,IAAI,CAAC,QAAQ;gBAAE,IAAI,CAAC,QAAQ,GAAG,IAAI,GAAG,EAAE,CAAC;YAC9C,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAE,CAAC;YACvB,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YACtC,IAAI,KAAK,EAAE,CAAC;gBACV,IAAI,KAAK,CAAC,IAAI,KAAK,KAAK;oBAAE,MAAM,IAAI,KAAK,CAAC,yBAAyB,IAAI,EAAE,CAAC,CAAC;gBAC3E,IAAI,GAAG,KAAK,CAAC;gBACb,SAAS;YACX,CAAC;YACD,IAAI,CAAC,IAAI,CAAC,SAAS,IAAI,CAAC,KAAK,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC9C,MAAM,IAAI,KAAK,CAAC,kCAAkC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YACnF,CAAC;YACD,MAAM,KAAK,GAAgB,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,QAAQ,EAAE,IAAI,GAAG,EAAE,EAAE,CAAC;YACtF,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;YAC/B,IAAI,GAAG,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAED,MAAM,CAAC,IAAY;QACjB,MAAM,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QACnC,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;YAC3E,MAAM,IAAI,KAAK,CAAC,yBAAyB,IAAI,EAAE,CAAC,CAAC;QACnD,CAAC;QACD,MAAM,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAE,CAAC;QAC/C,IAAI,CAAC,CAAC,IAAI,KAAK,MAAM;YAAE,MAAM,IAAI,KAAK,CAAC,mBAAmB,IAAI,EAAE,CAAC,CAAC;QAClE,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACzC,CAAC;IAED,EAAE,CAAC,IAAY,EAAE,OAAiD,EAAE;QAClE,MAAM,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QACnC,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;YAC3E,IAAI,IAAI,CAAC,KAAK;gBAAE,OAAO;YACvB,MAAM,IAAI,KAAK,CAAC,0BAA0B,IAAI,EAAE,CAAC,CAAC;QACpD,CAAC;QACD,MAAM,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAE,CAAC;QAC/C,IAAI,CAAC,CAAC,IAAI,KAAK,KAAK,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;YACxC,MAAM,IAAI,KAAK,CAAC,gCAAgC,IAAI,EAAE,CAAC,CAAC;QAC1D,CAAC;QACD,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACzC,CAAC;IAED,MAAM,CAAC,IAAY,EAAE,EAAU;QAC7B,MAAM,GAAG,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QAClC,IAAI,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,QAAQ,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;YACvE,MAAM,IAAI,KAAK,CAAC,6BAA6B,IAAI,EAAE,CAAC,CAAC;QACvD,CAAC;QACD,MAAM,CAAC,GAAG,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAE,CAAC;QAC7C,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACrC,IAAI,CAAC,YAAY,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;IAC3B,CAAC;IAEO,YAAY,CAAC,IAAY,EAAE,KAAkB;QACnD,MAAM,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QACzC,IAAI,CAAC,IAAI;YAAE,MAAM,IAAI,KAAK,CAAC,iBAAiB,IAAI,EAAE,CAAC,CAAC;QACpD,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ;YAAE,IAAI,CAAC,MAAM,CAAC,QAAQ,GAAG,IAAI,GAAG,EAAE,CAAC;QAC5D,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IAC7C,CAAC;CACF"}
|
|
@@ -1,8 +1,12 @@
|
|
|
1
1
|
/** 含密文件的目标权限:仅属主可读写。 */
|
|
2
2
|
export declare const SECRET_MODE = 384;
|
|
3
3
|
/**
|
|
4
|
-
* 写一个含密文件:建目录 →
|
|
5
|
-
*
|
|
4
|
+
* 写一个含密文件:建目录 → 写 tmp(0600)→ **rename** → **chmod**。
|
|
5
|
+
*
|
|
6
|
+
* `chmod` 在 rename 之后是**要害**(见模块头):rename 继承 tmp 的位,顺序反了会被覆盖且不报错。
|
|
7
|
+
* ⚠️ tmp 本身就以 `SECRET_MODE` 创建 —— 所以正常路径上 chmod 是第二道保险;
|
|
8
|
+
* 但它不是冗余:**将来任何人改动 tmp 的建法(复用已有 tmp、换成别的 helper),
|
|
9
|
+
* chmod 就是唯一还站着的那道**。这也是为什么顺序要写进注释而不只是写进代码。
|
|
6
10
|
*/
|
|
7
11
|
export declare function writeSecretFile(path: string, data: string): void;
|
|
8
12
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"secretFile.d.ts","sourceRoot":"","sources":["../../src/infra/secretFile.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"secretFile.d.ts","sourceRoot":"","sources":["../../src/infra/secretFile.ts"],"names":[],"mappings":"AAmCA,wBAAwB;AACxB,eAAO,MAAM,WAAW,MAAQ,CAAC;AAEjC;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAiBhE;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CASnD"}
|
package/dist/infra/secretFile.js
CHANGED
|
@@ -1,31 +1,65 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* @module infra/secretFile
|
|
3
|
-
* @description
|
|
3
|
+
* @description 含密文件的写入:**原子(tmp→rename)+ 权限收敛(0600)**。叶子模块,无项目内依赖。
|
|
4
4
|
*
|
|
5
|
-
* 🔴
|
|
6
|
-
*
|
|
7
|
-
*
|
|
5
|
+
* 🔴 两件事都要,而且**顺序不能反** —— 它们各自来自一次真实事故,分别在两个仓:
|
|
6
|
+
* ```
|
|
7
|
+
* 权限 `writeFileSync(p, data, { mode })` 的 mode **只在文件被创建时生效**,
|
|
8
|
+
* 已存在的文件权限原样不动 ⇒ 存量会永远停在 644。必须写完再 chmod。
|
|
9
|
+
* (来源:sps 多租户就绪审计 A9 —— 实测这些文件落 644/664,同机任何用户可读。)
|
|
10
|
+
* 原子 直接 writeFileSync 到最终名,崩在写一半就留下**半截的最终名文件** ——
|
|
11
|
+
* 而它是 JSON 配置:worker 读到坏 JSON,且因为是 0600 的敏感文件,
|
|
12
|
+
* 排查时最不容易被翻出来。
|
|
13
|
+
* (来源:coral-studio 侧同类文件的写法;它原子,但踩了下面那条。)
|
|
14
|
+
* 顺序 🔴 **`renameSync` 继承的是 tmp 的权限位** ⇒ `chmod` 必须在 `rename` **之后**。
|
|
15
|
+
* 放前面会被 rename 覆盖掉,**而且不报错**。(coral-studio 的事故原文:0600 被冲成 644。)
|
|
16
|
+
* ```
|
|
17
|
+
* ⇒ 合起来的正确顺序:**写 tmp(mode 0600)→ rename → chmod**。
|
|
18
|
+
* 两边原先各修了对方的坑,这里是合并后的那份 —— 迁移不该让任何一个既有属性变差。
|
|
8
19
|
*
|
|
9
20
|
* 覆盖的文件(都明文含 apiKey / token):
|
|
10
21
|
* ~/.coral/providers.json · agent-providers.json · media-providers.json
|
|
11
22
|
* <项目>/.sps/agent-providers.json · <项目>/.claude/settings.local.json
|
|
12
23
|
*
|
|
13
|
-
*
|
|
14
|
-
*
|
|
24
|
+
* ⚠️ **临时名复用 `infra/filesystem.uniqueTmpPath`**(唯一真源;它的注释解释了为什么不能用固定
|
|
25
|
+
* `${path}.tmp`:并发写者共用中间文件会落地**撕裂内容**)。
|
|
26
|
+
* 🔴 **但没有直接用 `NodeFileSystem.writeFileAtomic`** —— 它的 `writeFileSync(tmp, content)` **不带 mode**,
|
|
27
|
+
* tmp 会以 umask 默认权限(通常 644)存在到 rename 那一刻。对普通配置无所谓,
|
|
28
|
+
* 对**含 token 的文件**那是一个真实的可读窗口(同机任何用户)。含密这条必须自己建 tmp。
|
|
15
29
|
*
|
|
16
30
|
* @layer infra
|
|
17
31
|
*/
|
|
18
|
-
import { chmodSync, existsSync, mkdirSync, statSync, writeFileSync } from 'node:fs';
|
|
32
|
+
import { chmodSync, existsSync, mkdirSync, renameSync, statSync, unlinkSync, writeFileSync } from 'node:fs';
|
|
19
33
|
import { dirname } from 'node:path';
|
|
34
|
+
import { uniqueTmpPath } from './filesystem.js';
|
|
20
35
|
/** 含密文件的目标权限:仅属主可读写。 */
|
|
21
36
|
export const SECRET_MODE = 0o600;
|
|
22
37
|
/**
|
|
23
|
-
* 写一个含密文件:建目录 →
|
|
24
|
-
*
|
|
38
|
+
* 写一个含密文件:建目录 → 写 tmp(0600)→ **rename** → **chmod**。
|
|
39
|
+
*
|
|
40
|
+
* `chmod` 在 rename 之后是**要害**(见模块头):rename 继承 tmp 的位,顺序反了会被覆盖且不报错。
|
|
41
|
+
* ⚠️ tmp 本身就以 `SECRET_MODE` 创建 —— 所以正常路径上 chmod 是第二道保险;
|
|
42
|
+
* 但它不是冗余:**将来任何人改动 tmp 的建法(复用已有 tmp、换成别的 helper),
|
|
43
|
+
* chmod 就是唯一还站着的那道**。这也是为什么顺序要写进注释而不只是写进代码。
|
|
25
44
|
*/
|
|
26
45
|
export function writeSecretFile(path, data) {
|
|
27
46
|
mkdirSync(dirname(path), { recursive: true });
|
|
28
|
-
|
|
47
|
+
const tmp = uniqueTmpPath(path);
|
|
48
|
+
try {
|
|
49
|
+
writeFileSync(tmp, data, { mode: SECRET_MODE });
|
|
50
|
+
renameSync(tmp, path);
|
|
51
|
+
}
|
|
52
|
+
catch (e) {
|
|
53
|
+
// 尽力删掉 tmp;删不掉也不抛 —— tmp 名带 pid+随机后缀且以 .tmp 结尾,不会被任何读者当成正式文件;
|
|
54
|
+
// 为清理失败而覆盖真正的写入错误,会让调用方看到错误的原因。
|
|
55
|
+
try {
|
|
56
|
+
unlinkSync(tmp);
|
|
57
|
+
}
|
|
58
|
+
catch {
|
|
59
|
+
/* 残留无害 */
|
|
60
|
+
}
|
|
61
|
+
throw e;
|
|
62
|
+
}
|
|
29
63
|
hardenSecretFile(path);
|
|
30
64
|
}
|
|
31
65
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"secretFile.js","sourceRoot":"","sources":["../../src/infra/secretFile.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"secretFile.js","sourceRoot":"","sources":["../../src/infra/secretFile.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,SAAS,EAAE,UAAU,EAAE,QAAQ,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAC5G,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAEhD,wBAAwB;AACxB,MAAM,CAAC,MAAM,WAAW,GAAG,KAAK,CAAC;AAEjC;;;;;;;GAOG;AACH,MAAM,UAAU,eAAe,CAAC,IAAY,EAAE,IAAY;IACxD,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC9C,MAAM,GAAG,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC;IAChC,IAAI,CAAC;QACH,aAAa,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC,CAAC;QAChD,UAAU,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;IACxB,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,8DAA8D;QAC9D,gCAAgC;QAChC,IAAI,CAAC;YACH,UAAU,CAAC,GAAG,CAAC,CAAC;QAClB,CAAC;QAAC,MAAM,CAAC;YACP,UAAU;QACZ,CAAC;QACD,MAAM,CAAC,CAAC;IACV,CAAC;IACD,gBAAgB,CAAC,IAAI,CAAC,CAAC;AACzB,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,gBAAgB,CAAC,IAAY;IAC3C,IAAI,CAAC;QACH,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC;YAAE,OAAO;QAC9B,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,IAAI,GAAG,KAAK,CAAC;QACzC,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC;YAAE,OAAO,CAAC,WAAW;QAC7C,SAAS,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;IAC/B,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,OAAO,CAAC,IAAI,CAAC,oBAAoB,IAAI,YAAY,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IACjG,CAAC;AACH,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"adapters.d.ts","sourceRoot":"","sources":["../../../src/providers/media/adapters.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"adapters.d.ts","sourceRoot":"","sources":["../../../src/providers/media/adapters.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAGzD,kBAAkB;AAClB,MAAM,WAAW,OAAO;IACtB,uCAAuC;IACvC,MAAM,EAAE,MAAM,CAAC;IACf,6BAA6B;IAC7B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,2CAA2C;IAC3C,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,sDAAsD;IACtD,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,+CAA+C;AAC/C,MAAM,WAAW,SAAS;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,MAAM,CAAC;CACb;AAED,MAAM,MAAM,YAAY,GAAG,CAAC,QAAQ,EAAE,aAAa,EAAE,IAAI,EAAE,OAAO,KAAK,OAAO,CAAC,SAAS,CAAC,CAAC;AAygB1F,eAAO,MAAM,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,CAWjD,CAAC"}
|
|
@@ -10,6 +10,7 @@ import { Agent, imageGenerationTool, run } from '@openai/agents';
|
|
|
10
10
|
import { doubaoSynthesize } from '../../core/tts/DoubaoTts.js';
|
|
11
11
|
import { useLocalTracing } from '../../core/agents/localTracing.js';
|
|
12
12
|
import { buildCodexModel, buildRelayResponsesModel } from '../llm/codexModel.js';
|
|
13
|
+
import { sniffImageExt } from './imageExt.js';
|
|
13
14
|
// ─── doubao —— 语音 TTS(复用 DoubaoTts,prompt = 要合成的文本,model = speaker)──────
|
|
14
15
|
const doubaoVoice = async (p, o) => {
|
|
15
16
|
const extra = (p.extra ?? {});
|
|
@@ -156,11 +157,11 @@ const volcengine = async (p, o) => {
|
|
|
156
157
|
throw new Error(`火山引擎错误:${j.error.message ?? JSON.stringify(j.error)}`);
|
|
157
158
|
const item = j.data?.[0];
|
|
158
159
|
if (item?.b64_json)
|
|
159
|
-
return
|
|
160
|
+
return withSniffedExt(Buffer.from(item.b64_json, 'base64'));
|
|
160
161
|
if (item?.url) {
|
|
161
162
|
if (item.url.startsWith('data:'))
|
|
162
|
-
return
|
|
163
|
-
return
|
|
163
|
+
return withSniffedExt(Buffer.from(item.url.split(',')[1] ?? '', 'base64'));
|
|
164
|
+
return withSniffedExt(await download(item.url, 60_000));
|
|
164
165
|
}
|
|
165
166
|
throw new Error(`火山引擎响应无图像:${text.slice(0, 200)}`);
|
|
166
167
|
};
|
|
@@ -232,7 +233,7 @@ const minimax = async (p, o) => {
|
|
|
232
233
|
const imgUrl = j.data?.image_urls?.[0];
|
|
233
234
|
if (!imgUrl)
|
|
234
235
|
throw new Error(`minimax 响应无 image_urls:${text.slice(0, 200)}`);
|
|
235
|
-
return
|
|
236
|
+
return withSniffedExt(await download(imgUrl, 60_000));
|
|
236
237
|
};
|
|
237
238
|
// ─── tripo —— 图生3D(异步 job:上传/引用输入图→建任务→轮询→取 GLB→下载)────────
|
|
238
239
|
function tripoBase(baseUrl) {
|
|
@@ -336,7 +337,7 @@ const tripo = async (p, o) => {
|
|
|
336
337
|
const url = out.generated_image ?? out.image ?? out.url;
|
|
337
338
|
if (!url)
|
|
338
339
|
throw new Error(`Tripo 图生图无输出图:${JSON.stringify(out).slice(0, 200)}`);
|
|
339
|
-
return
|
|
340
|
+
return withSniffedExt(await download(url));
|
|
340
341
|
}
|
|
341
342
|
const model = o.model || p.models[0];
|
|
342
343
|
const taskId = await tripoCreate(base, p.apiKey, 'image-to-model', {
|
|
@@ -399,7 +400,7 @@ async function agentImageGenerate(model, o, tag) {
|
|
|
399
400
|
const isImg = raw?.name === 'image_generation_call' || raw?.name === 'image_generation' || raw?.type === 'image_generation_call' || raw?.type === 'hosted_tool_call';
|
|
400
401
|
const b64 = raw?.output ?? raw?.result;
|
|
401
402
|
if (isImg && typeof b64 === 'string' && b64.length > 200)
|
|
402
|
-
return
|
|
403
|
+
return withSniffedExt(Buffer.from(b64, 'base64'));
|
|
403
404
|
}
|
|
404
405
|
if (attempt < 3)
|
|
405
406
|
await new Promise((res) => setTimeout(res, 2000));
|
|
@@ -449,8 +450,8 @@ const openrouter = async (p, o) => {
|
|
|
449
450
|
if (!imgUrl)
|
|
450
451
|
throw new Error(`openrouter 响应无图像(模型是否支持出图?):${text.slice(0, 200)}`);
|
|
451
452
|
if (imgUrl.startsWith('data:'))
|
|
452
|
-
return
|
|
453
|
-
return
|
|
453
|
+
return withSniffedExt(Buffer.from(imgUrl.split(',')[1] ?? '', 'base64'));
|
|
454
|
+
return withSniffedExt(await download(imgUrl, 60_000));
|
|
454
455
|
};
|
|
455
456
|
// ─── agnes —— 标准 OpenAI images/generations ────────────────────────────────
|
|
456
457
|
function agnesUrl(baseUrl) {
|
|
@@ -505,11 +506,11 @@ function openaiImagesShape(label, extraBody = () => ({})) {
|
|
|
505
506
|
throw new Error(`${label} 错误:${j.error.message ?? JSON.stringify(j.error)}`);
|
|
506
507
|
const item = j.data?.[0];
|
|
507
508
|
if (item?.b64_json)
|
|
508
|
-
return
|
|
509
|
+
return withSniffedExt(Buffer.from(item.b64_json, 'base64'));
|
|
509
510
|
if (item?.url) {
|
|
510
511
|
if (item.url.startsWith('data:'))
|
|
511
|
-
return
|
|
512
|
-
return
|
|
512
|
+
return withSniffedExt(Buffer.from(item.url.split(',')[1] ?? '', 'base64'));
|
|
513
|
+
return withSniffedExt(await download(item.url, 60_000));
|
|
513
514
|
}
|
|
514
515
|
throw new Error(`${label} 响应无图像:${text.slice(0, 200)}`);
|
|
515
516
|
};
|
|
@@ -568,7 +569,7 @@ const bailian = async (p, o) => {
|
|
|
568
569
|
const url = j.output?.choices?.[0]?.message?.content?.find((c) => c.image)?.image;
|
|
569
570
|
if (!url)
|
|
570
571
|
throw new Error(`百炼无图 URL:${text.slice(0, 200)}`);
|
|
571
|
-
return
|
|
572
|
+
return withSniffedExt(await download(url, 60_000));
|
|
572
573
|
}
|
|
573
574
|
// 异步族:wanx* → text2image/image-synthesis(prompt);wan2.x → image-generation/generation(messages)。
|
|
574
575
|
const oldWanx = /^wanx/.test(model);
|
|
@@ -602,13 +603,24 @@ const bailian = async (p, o) => {
|
|
|
602
603
|
const url = pollJ.output?.results?.[0]?.url ?? pollJ.output?.choices?.[0]?.message?.content?.find((c) => c.image)?.image;
|
|
603
604
|
if (!url)
|
|
604
605
|
throw new Error('百炼成功但无图 URL');
|
|
605
|
-
return
|
|
606
|
+
return withSniffedExt(await download(url, 60_000));
|
|
606
607
|
}
|
|
607
608
|
if (status === 'FAILED')
|
|
608
609
|
throw new Error(`百炼生成失败:${pollJ.output?.message ?? ''}`);
|
|
609
610
|
}
|
|
610
611
|
throw new Error('百炼任务轮询超时(120s)');
|
|
611
612
|
};
|
|
613
|
+
/**
|
|
614
|
+
* 图像适配器的统一出口:**ext 按真实字节认**(#19e),不按适配器声明。
|
|
615
|
+
*
|
|
616
|
+
* 🔴 只影响**命名**,不碰内容:`generateAsset` 在**没给 `outPath`** 时用 ext 拼文件名
|
|
617
|
+
* (`generate_asset` MCP 那条路),给了 `outPath` 就以调用方为准 —— 美术链靠后者,
|
|
618
|
+
* `artGen:438` 那条「图恒为 `<id>.png`」的 atlas 推导依赖它,**不许在这里"顺手纠正"**。
|
|
619
|
+
* ⚠️ 认不出时回退 `png` = 今天的行为(见 `sniffImageExt`:拿不准时保守)。
|
|
620
|
+
*/
|
|
621
|
+
function withSniffedExt(bytes) {
|
|
622
|
+
return { bytes, ext: sniffImageExt(bytes) };
|
|
623
|
+
}
|
|
612
624
|
export const ADAPTERS = {
|
|
613
625
|
doubao: doubaoVoice,
|
|
614
626
|
volcengine,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"adapters.js","sourceRoot":"","sources":["../../../src/providers/media/adapters.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"adapters.js","sourceRoot":"","sources":["../../../src/providers/media/adapters.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @module providers/media/imageExt
|
|
3
|
+
* @description 按**真实字节**认图像格式(#19e)—— 适配器声明的 ext 不可信。
|
|
4
|
+
* @layer provider
|
|
5
|
+
* @boundedContext media
|
|
6
|
+
*
|
|
7
|
+
* ══════════════════════════════════════════════════════════════════════════
|
|
8
|
+
* 🔴 为什么需要它:`openaiImagesShape`(coral / agnes 共用)等图像适配器**无条件返回
|
|
9
|
+
* `ext:'png'`** —— 它连自己拿到的是 JPEG 都不知道。1.11b 真跑实测:同一个网关,
|
|
10
|
+
* doubao 返回 **JPEG**、agnes 返回 **PNG**(#19d)。
|
|
11
|
+
*
|
|
12
|
+
* 影响面**只在命名**:`generateAsset` 给了 `outPath` 时 ext 被忽略(美术链走这条,不受影响);
|
|
13
|
+
* **不给 `outPath` 时用 ext 命名** ⇒ `generate_asset` MCP 那条路今天就在产出
|
|
14
|
+
* **「名叫 `.png` 的 JPEG」**。
|
|
15
|
+
*
|
|
16
|
+
* 🔴 两条约束(Eddy 2026-08-12):
|
|
17
|
+
* ① **按真实字节判,不按 adapter 声明判** —— 上游给什么格式是它说了算,我们只能测。
|
|
18
|
+
* ② **拿不准时保守**:识别不出**不硬套**,回退到调用点原本的取值并留一次 warn ——
|
|
19
|
+
* 宁可保持今天的行为,也不要产出一个更自信的错答案。
|
|
20
|
+
*
|
|
21
|
+
* ⚠️ 与 `#19d`(`artGen.ensureAssetPng`)是**两件事,别混**:
|
|
22
|
+
* ```
|
|
23
|
+
* #19d 治**内容** —— 成品 <id>.png 里必须真的是 PNG(转码)
|
|
24
|
+
* #19e 治**命名** —— 没人指定文件名时,后缀要跟真实字节一致(不转码)
|
|
25
|
+
* ```
|
|
26
|
+
* ══════════════════════════════════════════════════════════════════════════
|
|
27
|
+
*/
|
|
28
|
+
/** 魔数 → 扩展名。只认图像;音频/视频/3D 的 ext 由各自协议已知,不走这里。 */
|
|
29
|
+
export declare function sniffImageExt(bytes: Buffer, fallback?: string): string;
|
|
30
|
+
//# sourceMappingURL=imageExt.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"imageExt.d.ts","sourceRoot":"","sources":["../../../src/providers/media/imageExt.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AAEH,iDAAiD;AACjD,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,SAAQ,GAAG,MAAM,CAarE"}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @module providers/media/imageExt
|
|
3
|
+
* @description 按**真实字节**认图像格式(#19e)—— 适配器声明的 ext 不可信。
|
|
4
|
+
* @layer provider
|
|
5
|
+
* @boundedContext media
|
|
6
|
+
*
|
|
7
|
+
* ══════════════════════════════════════════════════════════════════════════
|
|
8
|
+
* 🔴 为什么需要它:`openaiImagesShape`(coral / agnes 共用)等图像适配器**无条件返回
|
|
9
|
+
* `ext:'png'`** —— 它连自己拿到的是 JPEG 都不知道。1.11b 真跑实测:同一个网关,
|
|
10
|
+
* doubao 返回 **JPEG**、agnes 返回 **PNG**(#19d)。
|
|
11
|
+
*
|
|
12
|
+
* 影响面**只在命名**:`generateAsset` 给了 `outPath` 时 ext 被忽略(美术链走这条,不受影响);
|
|
13
|
+
* **不给 `outPath` 时用 ext 命名** ⇒ `generate_asset` MCP 那条路今天就在产出
|
|
14
|
+
* **「名叫 `.png` 的 JPEG」**。
|
|
15
|
+
*
|
|
16
|
+
* 🔴 两条约束(Eddy 2026-08-12):
|
|
17
|
+
* ① **按真实字节判,不按 adapter 声明判** —— 上游给什么格式是它说了算,我们只能测。
|
|
18
|
+
* ② **拿不准时保守**:识别不出**不硬套**,回退到调用点原本的取值并留一次 warn ——
|
|
19
|
+
* 宁可保持今天的行为,也不要产出一个更自信的错答案。
|
|
20
|
+
*
|
|
21
|
+
* ⚠️ 与 `#19d`(`artGen.ensureAssetPng`)是**两件事,别混**:
|
|
22
|
+
* ```
|
|
23
|
+
* #19d 治**内容** —— 成品 <id>.png 里必须真的是 PNG(转码)
|
|
24
|
+
* #19e 治**命名** —— 没人指定文件名时,后缀要跟真实字节一致(不转码)
|
|
25
|
+
* ```
|
|
26
|
+
* ══════════════════════════════════════════════════════════════════════════
|
|
27
|
+
*/
|
|
28
|
+
/** 魔数 → 扩展名。只认图像;音频/视频/3D 的 ext 由各自协议已知,不走这里。 */
|
|
29
|
+
export function sniffImageExt(bytes, fallback = 'png') {
|
|
30
|
+
const b = bytes;
|
|
31
|
+
if (b.length >= 8 && b[0] === 0x89 && b[1] === 0x50 && b[2] === 0x4e && b[3] === 0x47)
|
|
32
|
+
return 'png';
|
|
33
|
+
if (b.length >= 3 && b[0] === 0xff && b[1] === 0xd8 && b[2] === 0xff)
|
|
34
|
+
return 'jpg';
|
|
35
|
+
if (b.length >= 12 && b.toString('ascii', 0, 4) === 'RIFF' && b.toString('ascii', 8, 12) === 'WEBP')
|
|
36
|
+
return 'webp';
|
|
37
|
+
if (b.length >= 6 && (b.toString('ascii', 0, 6) === 'GIF87a' || b.toString('ascii', 0, 6) === 'GIF89a'))
|
|
38
|
+
return 'gif';
|
|
39
|
+
// 🔴 认不出**不猜**:回退调用点原本的取值(= 今天的行为),但留痕 ——
|
|
40
|
+
// 静默回退的话,"上游换了格式"这件事永远不会被任何人看见。
|
|
41
|
+
console.warn(`[imageExt] 认不出图像格式(前 8 字节 ${b.subarray(0, 8).toString('hex')},${b.length}B)——` +
|
|
42
|
+
`按 ${fallback} 命名。若产物打不开,先怀疑这里。`);
|
|
43
|
+
return fallback;
|
|
44
|
+
}
|
|
45
|
+
//# sourceMappingURL=imageExt.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"imageExt.js","sourceRoot":"","sources":["../../../src/providers/media/imageExt.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AAEH,iDAAiD;AACjD,MAAM,UAAU,aAAa,CAAC,KAAa,EAAE,QAAQ,GAAG,KAAK;IAC3D,MAAM,CAAC,GAAG,KAAK,CAAC;IAChB,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,IAAI;QAAE,OAAO,KAAK,CAAC;IACpG,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,IAAI;QAAE,OAAO,KAAK,CAAC;IACnF,IAAI,CAAC,CAAC,MAAM,IAAI,EAAE,IAAI,CAAC,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC,KAAK,MAAM,IAAI,CAAC,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC,EAAE,EAAE,CAAC,KAAK,MAAM;QAAE,OAAO,MAAM,CAAC;IACnH,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC,KAAK,QAAQ,IAAI,CAAC,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC,KAAK,QAAQ,CAAC;QAAE,OAAO,KAAK,CAAC;IACtH,0CAA0C;IAC1C,mCAAmC;IACnC,OAAO,CAAC,IAAI,CACV,6BAA6B,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,MAAM;QAC7E,KAAK,QAAQ,mBAAmB,CACnC,CAAC;IACF,OAAO,QAAQ,CAAC;AAClB,CAAC"}
|