@coralai/sps-cli 0.66.3 → 0.66.4
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.
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"artCapabilities.d.ts","sourceRoot":"","sources":["../../../src/core/tools/artCapabilities.ts"],"names":[],"mappings":"AAgBA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"artCapabilities.d.ts","sourceRoot":"","sources":["../../../src/core/tools/artCapabilities.ts"],"names":[],"mappings":"AAgBA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AA8DhD,wBAAgB,eAAe,IAAI,UAAU,EAAE,CAa9C"}
|
|
@@ -15,6 +15,27 @@
|
|
|
15
15
|
import { z } from 'zod';
|
|
16
16
|
import * as ops from '../art/ops.js';
|
|
17
17
|
const builtIn = { kind: 'built-in' };
|
|
18
|
+
/**
|
|
19
|
+
* 把回执里的绝对路径换回**项目相对**路径。
|
|
20
|
+
*
|
|
21
|
+
* 🔴 **进出必须对称**:入口把相对拼成绝对,出口就得换回来。不换的话
|
|
22
|
+
* `${card:N.out}` 解析出绝对路径,下游能力再拼一次项目根 ⇒
|
|
23
|
+
* `<root>/<root>/assets/x.png`。**卡片之间的引用从此不可用**,
|
|
24
|
+
* 而且失败信息指向"文件不存在",真因在两步之前。
|
|
25
|
+
* 🔴 只作用于**能力层**,HTTP 路由直接调 `ops`、契约不变 —— 那条路的调用方
|
|
26
|
+
* 本来就拿绝对路径。
|
|
27
|
+
* ⚠️ 顺带止住了往 UI 泄服务器路径(回执面板里那一长串 /home/sps/…)。
|
|
28
|
+
*/
|
|
29
|
+
function relativize(v, root) {
|
|
30
|
+
if (typeof v === 'string')
|
|
31
|
+
return v.startsWith(`${root}/`) ? v.slice(root.length + 1) : v;
|
|
32
|
+
if (Array.isArray(v))
|
|
33
|
+
return v.map((x) => relativize(x, root));
|
|
34
|
+
if (v && typeof v === 'object') {
|
|
35
|
+
return Object.fromEntries(Object.entries(v).map(([k, x]) => [k, relativize(x, root)]));
|
|
36
|
+
}
|
|
37
|
+
return v;
|
|
38
|
+
}
|
|
18
39
|
/** `in`/`out` 是**相对项目根**的路径;能力自己拼绝对路径,卡片给不了绝对路径。 */
|
|
19
40
|
const rel = z.string().min(1);
|
|
20
41
|
function op(id, summary, inputSchema, produces, fn) {
|
|
@@ -28,13 +49,22 @@ function op(id, summary, inputSchema, produces, fn) {
|
|
|
28
49
|
async run(input, ctx) {
|
|
29
50
|
const parsed = inputSchema.parse(input);
|
|
30
51
|
// 🔴 相对 → 绝对在**这里**拼:卡片只给逻辑路径,落点权是 sps 的。
|
|
31
|
-
const abs = (v) =>
|
|
52
|
+
const abs = (v) => {
|
|
53
|
+
if (typeof v !== 'string')
|
|
54
|
+
return v;
|
|
55
|
+
// 🔴 绝对路径**当场拒**:拼上去只会得到一个没人写过的路径,
|
|
56
|
+
// 失败时表现为"文件不存在",而真因是"这里不该给绝对路径"。
|
|
57
|
+
if (v.startsWith('/')) {
|
|
58
|
+
throw Object.assign(new Error(`路径必须相对项目根,收到绝对路径:${v}`), { code: 'PATH_MUST_BE_RELATIVE' });
|
|
59
|
+
}
|
|
60
|
+
return `${ctx.projectDir}/${v}`;
|
|
61
|
+
};
|
|
32
62
|
const body = { ...parsed };
|
|
33
63
|
for (const k of ['in', 'out', 'outDir', 'assetsDir', 'manifest']) {
|
|
34
64
|
if (body[k] !== undefined)
|
|
35
65
|
body[k] = Array.isArray(body[k]) ? body[k].map(abs) : abs(body[k]);
|
|
36
66
|
}
|
|
37
|
-
return await fn(body);
|
|
67
|
+
return relativize(await fn(body), ctx.projectDir);
|
|
38
68
|
},
|
|
39
69
|
};
|
|
40
70
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"artCapabilities.js","sourceRoot":"","sources":["../../../src/core/tools/artCapabilities.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AACH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,GAAG,MAAM,eAAe,CAAC;AAGrC,MAAM,OAAO,GAAG,EAAE,IAAI,EAAE,UAAU,EAAW,CAAC;AAE9C,oDAAoD;AACpD,MAAM,GAAG,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;AAE9B,SAAS,EAAE,CACT,EAAU,EACV,OAAe,EACf,WAAyB,EACzB,QAAkB,EAClB,EAAoE;IAEpE,OAAO;QACL,EAAE;QACF,IAAI,EAAE,MAAM;QACZ,WAAW;QACX,QAAQ;QACR,MAAM,EAAE,OAAO;QACf,OAAO;QACP,KAAK,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG;YAClB,MAAM,MAAM,GAAG,WAAW,CAAC,KAAK,CAAC,KAAK,CAA4B,CAAC;YACnE,0CAA0C;YAC1C,MAAM,GAAG,GAAG,CAAC,CAAU,EAAE,EAAE,
|
|
1
|
+
{"version":3,"file":"artCapabilities.js","sourceRoot":"","sources":["../../../src/core/tools/artCapabilities.ts"],"names":[],"mappings":"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"}
|