文件
skills/cc-switch-dev-workflow/references/knowledge-base/platform/stack-policy.md
2026-03-26 00:27:17 -07:00

2.8 KiB
原始文件 Blame 文件历史

Platform Policy: Stack Whitelist

Purpose

定义 v1 默认技术栈白名单、禁用项和例外审批接口,避免让 agent 在项目主链路上随机选型。

When to Use

  • 新项目立项时
  • 老项目需要补一套统一技术栈约束时
  • agent 要新增框架、语言或关键基础设施时

Inputs

  • 项目类型
  • 产品形态
  • 现有遗留约束
  • 性能与交付要求

Outputs

  • 允许的主链路技术栈
  • 禁用项
  • 例外审批流程

Primary Agent/Model

GPT-5.4 Pro xhigh

Secondary Agent/Model

Claude Opus 4.6

Required Skills

  • ralphy-initializing
  • spec-reviewing

Steps

  1. 先判断项目是 Next.js 全栈 还是 Hono + React SSR/TanStack
  2. 在允许的轨道内固定 UI、数据层、鉴权、样式和 ORM 方案。
  3. 把选型写进 CLAUDE.md、Spec 和脚手架说明。
  4. 如需偏离白名单,先走 ADR 和审批,再更新模板与执行说明。

Exit Criteria

  • 项目主链路的语言、框架、数据访问、鉴权和样式方案均已固定
  • 例外项已被 ADR 化,并同步到模板和执行说明

Failure Recovery

  • 如果 agent 引入未批准语言或框架,停止实现并回退到白名单决策
  • 如果项目同时混用多套主路由/状态/ORM 方案,立即收敛为单一路线

Default Whitelist

  • 语言:TypeScript
  • UIReact
  • 样式:Tailwind CSS
  • 组件:shadcn/ui
  • 鉴权:Better Auth
  • 数据获取:TanStack Query
  • 路由:TanStack RouterNext.js App Router,按轨道二选一
  • 服务层:HonoNext.js route handlers / server actions,按轨道二选一
  • ORMDrizzle
  • 数据库:PostgreSQL

Default Track Preference

  • 默认优先:Hono + React SSR/TanStack
  • 条件允许时可选:Next.js 全栈

Hard Bans On The Application Main Path

  • 禁止 Python 作为产品应用主链路语言
  • 禁止 PHP 作为产品应用主链路语言
  • 禁止无类型的 JavaScript-only 作为默认实现路线
  • 禁止未经 ADR 批准的第二套路由、鉴权、ORM 或样式体系并存

Allowed Exceptions

  • 既有遗留系统必须兼容,且短期无法迁移
  • 明确的第三方平台限制只支持某一特定方案
  • 已被性能分析证明主链路栈无法满足约束
  • 一次性离线工具、迁移脚本或数据清洗脚本

Exception Interface

  • 谁批准:项目 owner + 技术负责人
  • 需要补什么ADR、CLAUDE.md 更新、相关 Spec 更新
  • 要同步哪里playbook 说明、模板默认值、handoff 约束
  • 何时失效:例外只对当前项目或当前子系统生效,不自动扩散为默认规则