65 lines
2.0 KiB
YAML
65 lines
2.0 KiB
YAML
|
|
# OpenSpec-lite: 项目级规格(轻量版)
|
|||
|
|
# 目的:用“可机读约束”引导 AI 在不改动现有代码的情况下复用资源。
|
|||
|
|
|
|||
|
|
project:
|
|||
|
|
name: admin-plus-template
|
|||
|
|
intent: "公司内部模板库/基础库(轻量化,优先文档约束)"
|
|||
|
|
stack:
|
|||
|
|
framework: "Vue 3"
|
|||
|
|
build: "Vue CLI 5"
|
|||
|
|
language: "TypeScript"
|
|||
|
|
state: "Pinia"
|
|||
|
|
router: "Vue Router"
|
|||
|
|
ui: "Element Plus"
|
|||
|
|
|
|||
|
|
constraints:
|
|||
|
|
no_code_changes_by_default: true
|
|||
|
|
prefer_docs_over_refactor: true
|
|||
|
|
extraction_style:
|
|||
|
|
- "copy-module" # 优先整目录搬运再裁剪
|
|||
|
|
- "copy-snippet" # 仅在模块过大或依赖不清晰时使用
|
|||
|
|
|
|||
|
|
required_output_sections:
|
|||
|
|
- "changed_files" # 变更文件清单
|
|||
|
|
- "extracted_modules" # 抽取模块清单(来源->目标)
|
|||
|
|
- "dependency_closure" # 依赖闭包(imports/运行时/类型/alias)
|
|||
|
|
- "acceptance_commands" # 验收命令
|
|||
|
|
- "risks" # 风险说明
|
|||
|
|
|
|||
|
|
forbidden_by_default:
|
|||
|
|
- "changing runtime behavior in production" # 禁止默认更改生产行为
|
|||
|
|
- "introducing new global side effects" # 禁止新增全局副作用
|
|||
|
|
- "deep-importing internal paths of modules" # 禁止消费者深层路径引用
|
|||
|
|
|
|||
|
|
acceptance:
|
|||
|
|
minimum_commands:
|
|||
|
|
- "pnpm run serve"
|
|||
|
|
recommended_commands:
|
|||
|
|
- "pnpm run lint"
|
|||
|
|
- "pnpm run test:unit"
|
|||
|
|
- "pnpm run build"
|
|||
|
|
|
|||
|
|
repository:
|
|||
|
|
entrypoints:
|
|||
|
|
- "src/main.ts"
|
|||
|
|
- "library/index.ts"
|
|||
|
|
- "src/router/index.ts"
|
|||
|
|
- "src/store/index.ts"
|
|||
|
|
- "src/i18n/index.ts"
|
|||
|
|
- "mock/index.js"
|
|||
|
|
|
|||
|
|
module_roots:
|
|||
|
|
ui_components_dir: "library/components"
|
|||
|
|
layouts_dir: "library/layouts"
|
|||
|
|
plugins_dir: "library/plugins"
|
|||
|
|
styles_dir: "library/styles"
|
|||
|
|
store_modules_dir: "src/store/modules"
|
|||
|
|
api_dir: "src/api"
|
|||
|
|
utils_dir: "src/utils"
|
|||
|
|
config_dir: "src/config"
|
|||
|
|
icons_dir: "src/icon"
|
|||
|
|
|
|||
|
|
notes:
|
|||
|
|
- "配置读取来自 src/config/index.js(被 vue.config.js require)"
|
|||
|
|
- "library/index.ts 存在插件自动全量加载;抽取时需显式列出依赖闭包"
|