mirror of
https://bitbucket.org/siakitem/my-pi.git
synced 2026-10-26 10:45:22 +00:00
for/while/if/case/{ }/函数体此前只按整段文本匹配,
"for d in ...; do n=$(find ...); done" 中的 find 绕过了 find* deny(真实会话复现);
x=$(grep ...)、export X=$(find ...)、! grep ... 同样绕过。
控制流语句仍整段判定,并逐条枚举条件与体内命令;do/else/case 分支容器只下降不单独成单元;
其余语句兜底额外枚举其中的 $(…)。结果只会更严,hard guard 共享同一枚举。
Generated with [Devin](https://devin.ai)
Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
1.8 KiB
1.8 KiB
上游来源(多个)
本目录由 my-pi 组合包直接维护,组合了两份独立 MIT 许可的来源。
pi-permission-system
- 官方仓库:https://github.com/gotgenes/pi-packages/tree/main/packages/pi-permission-system
- 导入快照:
ec4fdb11343dc94f7185b113e559a4cf9f8dc035 - 导入版本:
pi-permission-system-v26.2.1 - 许可证:MIT,上游
LICENSE原样保留。
pi-permission-auto-review(已整合)
- 官方仓库:https://github.com/mzwing/pi-packages/tree/main/packages/pi-permission-auto-review
- 导入快照:
8d196e4ef0884cac8326c366191dad3f585d470a - 导入版本:
@mzwing/pi-permission-auto-review@0.2.0 - 许可证:MIT,保留在
LICENSES/pi-permission-auto-review-MIT.txt。
AutoReview 源码已整合进 src/auto-review/,不再保留或加载第二个顶层扩展;其来源记录与本地集成差异见 docs/auto-review/UPSTREAM.md。
本地维护
本目录不是 submodule,不保留嵌套 .git、上游 .pi 本地状态、dist/ 或构建产物。同步任一上游时必须从其源码仓库的明确 tag/commit 移植并与本地改动对照审查,不得整体覆盖,也不得使用 npm 预编译产物作为导入源。
本地改动
- Bash 命令枚举在保留整条控制流语句为独立 command unit 的基础上递归下降:
for/while/until、if/elif/else、case分支、{ … }组合语句、函数定义与!取反命令体内的命令也按 bash pattern 逐条判定;赋值与声明值(x=$(…)、export X=$(…))、值列表、case 词与[[ … ]]测试中的$(…)替换同样枚举,而do …; done、elif/else、case分支等纯容器不再单独产生 unit。藏在循环体、取反前缀或赋值载荷里的find/grep/rm等不再绕过 deny 或 hard guard。