mirror of
https://bitbucket.org/siakitem/my-pi.git
synced 2026-10-26 18:55:22 +00:00
- 组合包拥有、可随时重建的配置、日志与缓存统一放在 <agentDir>/my-pi/:permission-system/(policy.jsonc、hard-guards.jsonc、 logs/)、rtk-optimizer/config.json、tool-search/(config.json、 catalog-v1.json)与 system-prompt-cover.md。hashline.json、lsp.json 由外部扩展读取固定路径,是唯一例外。 - 新增 config/bundle-manifest.json 与 scripts/rebuild-bundle-config.mjs: 先校验全部来源与目标,在临时目录构建完整树,再整体删除旧 my-pi/ (符号链接只删链接)并原子替换,不备份。install.sh / update.sh 每次 运行都调用它;扩展自身不再播种或迁移配置。 - update.sh 删除 pi update 失败后的 git clean 恢复逻辑:Pi 1.3.0 会在 下一次 pi update 时依据中断标记自行恢复。同时删除 Tool Search settings.json 快照迁移与封面部署脚本。 - Tool Search 改为读取 my-pi/tool-search/config.json(源为 config/tool-search.json,须与 BUNDLE_TOOL_SEARCH_DEFAULTS 一致), 不再读写 settings.json 的 toolSearch 段,移除 bundleDefaultsVersion。 - 默认权限策略开启 debugLog。 - 旧位置的残留文件不迁移、不清理;AGENTS.md / README 同步新约束。 Generated with [Devin](https://devin.ai) Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
31 lines
870 B
TypeScript
31 lines
870 B
TypeScript
import { join } from "node:path";
|
|
import { describe, expect, it } from "vitest";
|
|
|
|
import {
|
|
getGlobalConfigPath,
|
|
getGlobalLogsDir,
|
|
getLegacyGlobalPolicyPath,
|
|
} from "#src/config-paths";
|
|
|
|
describe("config-paths", () => {
|
|
const agentDir = "/home/user/.pi/agent";
|
|
|
|
it("places the global policy at my-pi/permission-system/policy.jsonc under the agent dir", () => {
|
|
expect(getGlobalConfigPath(agentDir)).toBe(
|
|
join(agentDir, "my-pi", "permission-system", "policy.jsonc"),
|
|
);
|
|
});
|
|
|
|
it("places logs next to the global config dir", () => {
|
|
expect(getGlobalLogsDir(agentDir)).toBe(
|
|
join(agentDir, "my-pi", "permission-system", "logs"),
|
|
);
|
|
});
|
|
|
|
it("keeps the legacy global policy path for migration detection", () => {
|
|
expect(getLegacyGlobalPolicyPath(agentDir)).toBe(
|
|
join(agentDir, "pi-permissions.jsonc"),
|
|
);
|
|
});
|
|
});
|