6.3 KiB

data-model

Overview

本 feature 不引入业务数据库实体变更。data-model.md 用于描述本轮协作整理涉及的文档实体、页面样例实体、权限边界实体与 evidence 实体,作为 tasks 拆分、实施回写和验收对照的语义模型。

Entities

1. Frontend Collaboration Entry

Description

  • 前端仓中的入口说明文件,用于约束代理如何引用正式 spec 工件,以及何时留在前端仓、何时回到 water-docs

Instances in scope

  • ../water-frontend/AGENTS.md
  • ../water-frontend/CLAUDE.md

Fields

  • repoScope: 适用仓库范围
  • sourceOfTruth: 正式工件来源声明
  • featurePathRule: spec / plan / tasks 相对路径引用规则
  • docsPathRule: ../water-docs/docs/ 的正式文档定位规则
  • executionBoundary: frontend 执行任务 vs water-docs 执行任务边界
  • templateGuideEntry: 模板规则文件入口
  • templateIndexEntry: 样例索引文件入口
  • validationRule: 最小验证要求

Validation rules

  • 必须显式声明 water-docs 为正式 Speckit 单一来源。
  • 必须包含 ../water-docs/specs/<feature>/../water-docs/docs/ 的稳定相对路径规则。
  • 不得要求在 water-frontend 新建第二套 .specify/

2. Template Guide

Description

  • 前端页面模板化规则文件,用于定义页面分类、语义角色、命名规则、模板元模型、权限边界与选型规则。

Instance in scope

  • ../water-frontend/FRONTEND_PAGE_TEMPLATE_GUIDE.md

Fields

  • templateCategories: 模板分类清单
  • semanticRoles: 页面语义角色定义
  • namingRules: 命名与目录约定
  • metaModels: 高频模板元模型
  • permissionBoundaries: 权限边界定义
  • generationChecklist: 页面生成输入清单
  • selectionRules: 模板选型决策规则
  • motherboardSelection: 母板页选择步骤

Validation rules

  • 必须覆盖 spec 中要求的主要模板类别。
  • 必须提供必备区块、推荐组件、推荐变量名、推荐 API 命名、推荐权限接入点。
  • 必须区分普通业务表单、列表列可见配置、BPM 字段权限边界。
  • 必须被前端入口文件统一引用。

3. Template Index Entry

Description

  • 将真实 src/views 页面映射到模板类型的索引条目,是“规则层”与“实际样例层”的桥接对象。

Instance in scope

  • ../water-frontend/FRONTEND_PAGE_TEMPLATE_INDEX.md

Fields

  • templateType: 模板类型
  • domain: 业务域
  • pageName: 代表页面名称
  • pagePath: 页面路径
  • companionComponents: 配套组件 / 子块
  • classificationEvidence: 判定依据
  • motherboardPriority: P0 / P1 / P2
  • primaryTemplate: 主模板
  • secondaryTemplates: 辅模板列表
  • reuseAdvice: 复用建议

Validation rules

  • 每个高频模板至少有一个可追溯代表页。
  • P0 条目应优先对应结构最稳定、复用价值最高的页面。
  • 索引必须支持“一页多模板参考”的表达方式。
  • 索引只做样例映射,不扩写新的权限或架构结论。

4. Permission Source

Description

  • 登录后进入前端状态管理的权限相关数据集合。

Evidence sources

  • ../water-frontend/src/store/modules/user.ts
  • ../water-frontend/src/store/modules/permission.ts
  • ../water-frontend/src/permission.ts

Fields

  • roles: 角色集合
  • permissions: 按钮 / 操作权限集合
  • menus: 动态菜单与路由数据
  • cacheLocation: 前端缓存位置
  • routeGeneration: 动态路由生成入口

Relationships

  • Frontend Collaboration EntryTemplate Guide 用于权限边界说明。
  • 被页面按钮与路由生成逻辑消费。

5. Field-level Permission Capability

Description

  • 用于区分当前前端不同层次字段 / 列级控制能力边界的对象集合。

Subtypes

  • ColumnVisibilityConfiguration
  • BpmFieldPermission
  • GenericBusinessFormFieldPermission

5.1 ColumnVisibilityConfiguration

  • scene: 列表列显示、打印、顺序、宽度
  • storageMode: 后端持久化,必要时可回退到本地存储
  • apiEntry: ../water-frontend/src/api/system/userFormConfig.ts
  • consumerEntry: ../water-frontend/src/components/ColumnSetting/hooks/useColumnSettingStorage.ts
  • appliesTo: 列表页列级控制

5.2 BpmFieldPermission

  • scene: BPM 流程表单字段可编辑 / 只读 / 隐藏
  • scope: 仅 BPM 场景有效
  • consumerEntry: ../water-frontend/src/views/bpm/processInstance/create/ProcessDefinitionDetail.vue
  • appliesTo: 流程发起 / 审批 / 详情页中的流程表单

5.3 GenericBusinessFormFieldPermission

  • scene: 普通业务表单字段级控制
  • currentState: 未发现可直接复用的全局通用框架
  • warning: 不得把局部页面显隐逻辑误写为平台级字段权限能力

Validation rules

  • 交付文本不得把三个子类型混写成一个概念。
  • 未证实的普通业务字段权限不得被表述为现成能力。

6. Verification Artifact

Description

  • 固定 baseline、验证结果与最终 verdict 的 evidence 实体。

Instances in scope

  • specs/011-frontend-speckit-alignment/baseline.md
  • specs/011-frontend-speckit-alignment/docs-validation.md
  • specs/011-frontend-speckit-alignment/final-verdict.md

Fields

  • validationDimensions: 五个必检维度
  • commandSet: 最小验证命令集合
  • governanceDecision: 是否更新项目进度与任务清单的结论
  • storyVerdicts: US1 / US2 / US3 的验收结果

Validation rules

  • 必须覆盖 relative-path readability、entry-rule consistency、independent-guide discoverability、sample-category mappability、permission-conclusion traceability 五个维度。
  • 必须记录为何本轮 01_Project_Progress.md03_Task_Checklist.md 保持不变。

Relationships

  • Frontend Collaboration Entry 引用 Template GuideTemplate Index Entry
  • Template Guide 约束 Template Index Entry 的分类规则与母板页选择步骤。
  • Template Index EntryRepresentative Sample 形式回扣真实页面。
  • Permission SourceField-level Permission Capability 共同构成权限边界说明的证据基础。
  • Verification Artifact 负责验证以上实体在最终交付中的一致性、可发现性与可追溯性。