192 lines
8.4 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Implementation Plan: 前端 Speckit 协作对齐
**Branch**: `[011-frontend-speckit-alignment]` | **Date**: 2026-03-24 | **Spec**: [`spec.md`](./spec.md)
**Input**: Feature specification from `/specs/011-frontend-speckit-alignment/spec.md`
**Note**: This template is filled in by the `/speckit.plan` command. For this project, planning is document-first and multi-repo aware.
## Summary
本 feature 的目标是在保持 `water-docs` 为正式 Speckit 单一真源的前提下,补齐 `water-frontend` 侧的协作入口、独立模板规范与实际样例索引,使代理和实现人员可以:
- 从前端仓稳定回指 `water-docs/specs/<feature>/spec.md``plan.md``tasks.md`
- 基于统一模板规范判断页面语义、目录结构与权限接入边界
- 基于真实页面样例索引快速选择可复用的母板页
- 对权限来源、数据权限、列可见配置、BPM 字段权限与普通业务表单字段权限边界形成可追溯结论
本轮计划以文档与证据闭环为主,不新增业务代码生成器,不改造后端权限模型。
## Repository Scope
- **Formal workflow home**: `water-docs`
- **Target repos in scope**:
- `water-docs`: Yes
- `water-backend`: No
- `water-frontend`: Yes
- **Primary delivery mode**: Mixed
## Code Baseline
- **Backend baseline**: N/A
- **Frontend baseline**: `ae6593904544` / `develop`
- **Baseline capture plan**: 所有页面样例分类、权限来源与字段权限边界结论,统一锚定到 `water-frontend` 基线 `ae6593904544`;正式 evidence 则固定到 `baseline.md``docs-validation.md``final-verdict.md`
## Technical Context
**Primary Work Product**: Markdown 协作入口文件、页面模板规范文件、页面样例索引文件、feature evidence 文件
**Source of Truth Documents**:
- `specs/011-frontend-speckit-alignment/spec.md`
- `CLAUDE.md`
- `docs/design/00_Management/01_Project_Progress.md`
- `docs/design/00_Management/03_Task_Checklist.md`
- `../water-frontend/AGENTS.md`
**Reference Sources**:
- `../water-frontend/CLAUDE.md`
- `../water-frontend/FRONTEND_PAGE_TEMPLATE_GUIDE.md`
- `../water-frontend/FRONTEND_PAGE_TEMPLATE_INDEX.md`
- `../water-frontend/src/views/system/user/index.vue`
- `../water-frontend/src/views/system/user/UserForm.vue`
- `../water-frontend/src/views/custData/custCreate/components/ImportForm.vue`
- `../water-frontend/src/store/modules/user.ts`
- `../water-frontend/src/store/modules/permission.ts`
- `../water-frontend/src/permission.ts`
- `../water-frontend/src/directives/permission/hasPermi.ts`
- `../water-frontend/src/directives/permission/hasRole.ts`
- `../water-frontend/src/api/system/permission/index.ts`
- `../water-frontend/src/views/system/role/RoleDataPermissionForm.vue`
- `../water-frontend/src/views/system/menu/MenuForm.vue`
- `../water-frontend/src/api/system/userFormConfig.ts`
- `../water-frontend/src/components/ColumnSetting/hooks/useColumnSettingStorage.ts`
- `../water-frontend/src/views/bpm/processInstance/create/ProcessDefinitionDetail.vue`
**Validation Commands**:
- 文档读取与差异核对
- `git -C ../water-frontend status --short -- AGENTS.md CLAUDE.md FRONTEND_PAGE_TEMPLATE_GUIDE.md FRONTEND_PAGE_TEMPLATE_INDEX.md`
- 如后续仅文档改动:以 evidence 校验为主,不强制执行 frontend build/lint
**Target Scope**:
- `specs/011-frontend-speckit-alignment/spec.md`
- `specs/011-frontend-speckit-alignment/plan.md`
- `specs/011-frontend-speckit-alignment/research.md`
- `specs/011-frontend-speckit-alignment/data-model.md`
- `specs/011-frontend-speckit-alignment/quickstart.md`
- `specs/011-frontend-speckit-alignment/baseline.md`
- `specs/011-frontend-speckit-alignment/docs-validation.md`
- `specs/011-frontend-speckit-alignment/final-verdict.md`
- `../water-frontend/AGENTS.md`
- `../water-frontend/CLAUDE.md`
- `../water-frontend/FRONTEND_PAGE_TEMPLATE_GUIDE.md`
- `../water-frontend/FRONTEND_PAGE_TEMPLATE_INDEX.md`
**Project Type**: 文档治理仓库 + 多仓实现协作
**Constraints**:
- 不在 `water-frontend` 新建第二套 `.specify/`
- 正式 spec / plan / tasks / evidence 统一回到 `water-docs`
- 不臆造新的权限能力或业务规则
- 相对路径引用必须稳定可读
- 普通业务表单字段权限不得误写为已具备能力
- 本轮不改造后端权限模型,不开发前端页面生成器
**Scale/Scope**: 多仓但以前端文档整理为主,验证偏重 evidence 闭环
## Constitution Check
*GATE: Must pass before Phase 0 research. Re-check after Phase 1 design.*
- [x] **主文档归属已确认**:正式 spec / plan / evidence 统一落在 `water-docs/specs/011-frontend-speckit-alignment/`,不新增平行正式稿。
- [x] **多仓范围已确认**`water-docs``water-frontend` 在范围内;`water-backend` 仅作为历史研究证据,不要求代码改动。
- [x] **代码基线已确认**frontend 基线已记录为 `ae6593904544 / develop`docs 当前分支为 `011-frontend-speckit-alignment`
- [x] **Archive 使用方式合规**:本 feature 未直接以 Archive 替代正式口径,仅以现有 spec 与代码证据为准。
- [x] **一致性影响已列出**:已识别 Speckit 单一来源、模板规范入口、页面样例映射、权限边界术语等一致性影响项。
- [x] **校验与台账动作已规划**:已明确采用 `baseline.md``docs-validation.md``final-verdict.md` 做 evidence 闭环;根据 spec本轮不要求更新 `01_Project_Progress.md` / `03_Task_Checklist.md`
## Project Structure
### Feature Artifacts
```text
specs/011-frontend-speckit-alignment/
├── spec.md
├── plan.md
├── research.md
├── data-model.md
├── quickstart.md
├── contracts/
├── tasks.md
├── baseline.md
├── docs-validation.md
└── final-verdict.md
```
### Repository Touchpoints
```text
water-docs/
└── specs/011-frontend-speckit-alignment/
water-frontend/
├── AGENTS.md
├── CLAUDE.md
├── FRONTEND_PAGE_TEMPLATE_GUIDE.md
└── FRONTEND_PAGE_TEMPLATE_INDEX.md
```
**Structure Decision**:
- `water-docs/specs/011-frontend-speckit-alignment/*`:承接正式 spec、plan、research、data-model、quickstart 与验证 evidence。
- `water-frontend/AGENTS.md`:承接前端通用代理入口与 Speckit 回指规则。
- `water-frontend/CLAUDE.md`:承接 Claude Code 在前端仓的入口与执行边界。
- `water-frontend/FRONTEND_PAGE_TEMPLATE_GUIDE.md`:承接模板规则层定义。
- `water-frontend/FRONTEND_PAGE_TEMPLATE_INDEX.md`:承接实际页面样例索引层定义。
## Phase 0: Research & Alignment
### Research Inputs
- 前端仓与 docs 仓的单一事实来源边界如何保持一致
- 模板规则层与样例索引层如何分工
- 页面分类按交互结构还是业务域组织更合理
- 普通业务字段权限、列可见配置、BPM 字段权限如何避免混写
- 本轮是否需要额外 contract 文件或技术接口描述
### Deliverables
- `research.md`
- 已有 evidence 工件的范围说明
## Phase 1: Design & Contracts
### Planned Artifacts
- `data-model.md`
- `contracts/`(保留目录,本 feature 无新增外部接口契约文件)
- `quickstart.md`
- `final-verdict.md`verification-heavy feature已纳入正式产物
### Design Decisions
- 采用“`water-docs` 单一正式真源 + `water-frontend` 实施入口”的多仓协作结构。
- 采用“规则文件guide + 样例索引index”双层前端模板化设计。
- 页面分类按交互结构划分,而不是按业务域划分。
- 权限结论保持证据优先,不对普通业务字段权限做超范围推断。
- plan 阶段不新增技术接口 contract只保留 Speckit 标准目录结构。
## Validation Plan
- **Document validation**:
- 核对 `spec.md``plan.md``research.md``data-model.md``quickstart.md` 之间的口径一致性
- 核对 `AGENTS.md` / `CLAUDE.md` / `FRONTEND_PAGE_TEMPLATE_GUIDE.md` / `FRONTEND_PAGE_TEMPLATE_INDEX.md` 的引用链是否闭环
- **Backend validation**: N/A
- **Frontend validation**: N/A当前仅文档协作文件改动不触发业务代码构建验证
- **Evidence output**:
- `baseline.md`
- `docs-validation.md`
- `final-verdict.md`
## Ledger Sync Plan
- **Project progress update required**: No
- **Task checklist update required**: No
- **Evidence or verification summary update required**: Yes
## Complexity Tracking
> **Fill ONLY if Constitution Check has violations that must be justified**
当前无需要豁免的 Constitution 违规项。