diff --git a/.agents/skills/unidesk-cicd/SKILL.md b/.agents/skills/unidesk-cicd/SKILL.md index f195a513..84c38a25 100644 --- a/.agents/skills/unidesk-cicd/SKILL.md +++ b/.agents/skills/unidesk-cicd/SKILL.md @@ -73,6 +73,9 @@ bun scripts/cli.ts hwlab nodes control-plane legacy-cicd --help ## P0 边界 +- PK01 的 CI/CD 默认只允许只读诊断: + - 普通 PR merge、自动滚动、环境恢复或跨服务交付不构成 PK01 变更授权; + - 只有用户在当前请求中明确要求修改 PK01,才允许提交或推广会改变 PK01 版本、配置、Secret 绑定、边缘路由、容器或运行面状态的 source 变更。 - PaC migrated consumer 的唯一正式 CI/CD 触发是目标 source branch 的 GitHub PR merge。合并后由 GitHub webhook -> Gitea controlled mirror + immutable snapshot ref -> Gitea webhook -> PaC -> Tekton -> GitOps/Argo -> runtime 自动滚动;不得要求主代理、子代理或操作者再执行 apply、closeout、trigger、sync、flush 或补跑。 - PaC consumer 首次引导必须满足以下约束: - 默认使用 `pipelines-as-code bootstrap --dry-run|--confirm`,不再人工串联 Gitea bootstrap 与 PaC apply; diff --git a/.agents/skills/unidesk-nginx/SKILL.md b/.agents/skills/unidesk-nginx/SKILL.md index 437fe0df..87ef18de 100644 --- a/.agents/skills/unidesk-nginx/SKILL.md +++ b/.agents/skills/unidesk-nginx/SKILL.md @@ -47,6 +47,9 @@ bun scripts/cli.ts platform-infra nginx status --target PK01 ## 不可越过的边界 +- PK01 Nginx 默认只允许只读诊断: + - 只有用户在当前请求中明确要求修改 PK01,才允许变更版本、owning YAML、Compose、容器、systemd、路由、端口、Secret 绑定或运行状态; + - 泛化的修复、恢复、部署和排障请求不构成 PK01 变更授权。 - 通用镜像只在 NC01 构建;Master server 和 PK01 不执行镜像构建。 - PK01 正式部署只走 `platform-infra nginx apply`,不使用 Demo Compose 代替。 - target、监听端口、上游、资源、日志上限和 API key 来源只写 owning YAML。 diff --git a/.agents/skills/unidesk-ops/SKILL.md b/.agents/skills/unidesk-ops/SKILL.md index 36170b46..fcd73d16 100644 --- a/.agents/skills/unidesk-ops/SKILL.md +++ b/.agents/skills/unidesk-ops/SKILL.md @@ -76,6 +76,9 @@ D601 若需要让 `sub2api-egress-proxy` 绕开 pod overlay,可在 YAML 中显 ## P0 边界 +- PK01 默认只允许只读诊断: + - 只有用户在当前请求中明确要求修改 PK01,才允许改变服务版本、YAML/Compose/systemd、数据库配置、容器、网络、Secret 绑定或其他运行面状态; + - “修复”“恢复”“部署”“清理”或跨系统故障处理不自动扩大为 PK01 mutation 授权。 - backend-core 运行面恢复 healthy 后,除非用户明确要求,不主动 rebuild/restart/替换 backend-core。 - Master server 不作为通用构建机;Docker/Rust/Go/前端高 CPU 构建必须走批准的 CI/运行面。 - GC 默认 plan 只读,真实删除必须显式 `run --confirm` 并遵循 allowlist/retention。 diff --git a/.agents/skills/unidesk-sub2api/SKILL.md b/.agents/skills/unidesk-sub2api/SKILL.md index 0ecfd9cd..3e0d09e4 100644 --- a/.agents/skills/unidesk-sub2api/SKILL.md +++ b/.agents/skills/unidesk-sub2api/SKILL.md @@ -26,6 +26,10 @@ bun scripts/cli.ts platform-infra sub2api image-prepull --target PK01 --confirm ## 边界 +- PK01 默认只允许只读诊断: + - 只有用户在当前请求中明确要求修改 PK01,才允许变更镜像版本、YAML、Compose、容器、环境变量、Caddy/FRP、账号池、Secret 绑定或其他配置/运行面状态; + - “修复”“恢复”“部署”或排查 Sub2API/Artificer 不自动构成 PK01 变更授权; + - 发现根因位于 PK01 时,先保留只读证据并请求明确授权。 - YAML 是 source of truth;target、public exposure、Secret sourceRef、Codex pool 和 sentinel 配置都从 YAML 进入 CLI。 - Secret 只输出对象名、key 名、presence、fingerprint 或 redacted prefix;禁止打印完整 token/key。 - 默认 active target 以 YAML `defaults.targetId` 和 target role 为准;当前 `api.pikapython.com` 对应 PK01 host-Docker target。 diff --git a/.agents/skills/unidesk-subagent/SKILL.md b/.agents/skills/unidesk-subagent/SKILL.md index 2ac87be5..a42fb70d 100644 --- a/.agents/skills/unidesk-subagent/SKILL.md +++ b/.agents/skills/unidesk-subagent/SKILL.md @@ -9,6 +9,9 @@ description: UniDesk 主代理调度子代理的必读技能。用户提到子 ## 高频规则 +- 涉及 PK01 的派单默认只允许只读调查: + - 只有用户在当前请求中明确要求修改 PK01,子 issue、MDTODO 或代理 prompt 才能授权修改其版本、配置、Secret 绑定、边缘路由、容器或运行面; + - 泛化的修复、恢复、部署和排障目标不构成 PK01 变更授权。 - 主代理与子代理必须按用户明确目标控制实现范围: - 未经用户明确要求,禁止新增或扩展通用合同、租约、安全机制、围栏及其配套门禁; - 既有权限、Secret 脱敏、不可逆操作和损害预防边界继续生效,本规则不授权绕过既有安全底线; diff --git a/.agents/skills/unidesk-ymalops/SKILL.md b/.agents/skills/unidesk-ymalops/SKILL.md index 3eb57210..689b5281 100644 --- a/.agents/skills/unidesk-ymalops/SKILL.md +++ b/.agents/skills/unidesk-ymalops/SKILL.md @@ -22,6 +22,9 @@ description: UniDesk YAML-first 运维正规化技能。用户提到 ymal-first/ ## Guardrails +- PK01 配置默认只允许只读盘点: + - 只有用户在当前请求中明确要求修改 PK01,才允许通过 YAML-first 正规化、故障恢复或跨服务配置收敛改变其版本、owning YAML、public exposure、Secret 绑定、Compose/容器/systemd 或运行面状态; + - 只读盘点不构成 PK01 变更授权。 - 先执行 `git status --short --branch` 和 `git pull --ff-only origin master`;保留并绕开无关并行修改。 - 源码、配置、部署类正规化默认在独立 `.worktree/` 中做;轻量 skill/docs/reference 收敛可按项目规则直接在主 worktree 做。 - YAML 是 source of truth。不得新增隐藏代码默认值、schema 数值硬限制、合同测试或测试硬编码策略。