Skip to main content

Project Profiles

Asset
ADP-PLN-FEAT-DOC-0034
Feature
project-profiles
领域
plane-core
作用域
application-level
文档状态
draft
产品生命周期
active
文档 Owner
DOC
事实源
canonical-docs
工程 Owner
PLN
Development Ready
not-ready
更新
2026/10/14

FEATURE DEVELOPMENT PACKAGE

工程就绪状态

工程 Owner:PLN · 仓库:PLN

BLOCKED
development · not ready
  • 原子需求与验收
  • 设计与工程合同
  • 代码与仓库定位
  • 里程碑与工作包
  • 验证计划
  • 无阻断决策
verification · not ready
  • Development Ready 已通过
  • 验收标准已覆盖
  • 正式测试已登记
  • Fixture 与环境已定义
  • 测试规格已物化到正式测试
release · not ready
  • Verification Ready 已通过
  • 实现修订可定位
  • 发布证据已登记
  • 兼容与迁移已定义
  • Runbook 与回滚已定义
查看阻断项(5)
  • Development Ready 缺少:原子需求与验收
  • Development Ready 缺少:设计与工程合同
  • Development Ready 缺少:代码与仓库定位
  • Development Ready 缺少:里程碑与工作包
  • Development Ready 缺少:验证计划

功能目标​

让 Project Admin 在创建或维护 Project 时选择轻量 Project Profile,用于初始化模板、项目级导航和聚合工作台,使不同类型项目以符合其生产语境的方式组织工作;Profile 不改变 Plane 的基础 Project 边界、权限、Automation truth 或发布 gate。

功能结论​

主题当前结论
用户Workspace Admin/Member 创建 Project 时选择;Project Admin 或 Workspace Admin 可在 Project Settings 修改。
入口Project 创建弹窗、Project General Settings、Project 左侧导航与 Project 根路径默认入口。
可见结果general 使用 Plane 默认入口;game 显示游戏生产入口组、Game 工作台、模板状态和受控快捷入口。
当前系统保证Profile 只决定信息架构、模板建议和聚合视图;Project、Work Item、Module、Cycle、Page、View、Release 和 Automation 各自 truth owner 不变。
明确不做不把 Profile 当作执行授权、scheduler 真源、权限放行、业务状态推进、TEST/PROD 部署或 release gate。
权威 owner本页拥有 Project Profile 合同;各底层对象和 Automation/Release/Gate 由其原 Feature 拥有。

Profile 模型​

第一版新增 Project 字段:

字段语义
project_profileProject 的轻量画像。允许值:general、game、platform、library、ops;默认 general。
project_profile_template_version已应用的 Profile 模板版本;0 表示未应用专属模板。

第一版只有 game 提供专属模板和导航。platform、library、ops 可被保存和展示,但在专属合同补齐前使用 general 导航,不推断额外行为。

Game Profile 合同​

game 表示该 Project 已经是立项后的游戏研发项目。立项前的新游戏创意池不属于某个 game Project,应由 Workspace/Portfolio 层或单独孵化 Project 管理。Game Project 内收敛的是当前游戏的迭代候选、策划规格、任务拆分、验证、资源、构建、QA、发行和反馈回流。

Game 左侧导航​

Game Project 左侧导航分两组:

游戏生产
- 工作台
- 迭代候选池
- 策划规格
- 任务拆分
- 玩法验证
- 配置表 / 数值
- UI / 视觉验收
- 美术资源
- 构建与提测
- QA 验收
- 发行门
- 玩家反馈

Plane 基础
- 工作项
- 周期
- 模块
- Milestones
- Views
- Pages
- Intake
- Releases
- Docs

Game Project 根路径默认进入“工作台”。如果用户显式设置了可用的默认 tab,则优先尊重用户偏好。

Game 模板​

创建 project_profile=game 的 Project 时,可以应用 Game v1 模板。模板必须幂等,使用稳定 external_source / external_id 或同 Project normalized name 复用已有对象,不重复创建。

模板默认开启的 Project 功能:Cycles、Modules、Views、Pages、Intake、Milestones、Releases、Work Item Types。

默认模块:核心玩法、系统功能、关卡内容、UI/UX、配置表与数值、美术资源、音频资源、构建发布、QA 验收、运营反馈。

默认角色标签:role:pm、role:design、role:unity-frontend、role:art、role:backend、role:qa。

Epic 专用类型删除;普通 Issue、Task、Bug 使用当前活动目录。Iteration Candidate、Spec、Feature、Gameplay Validation、Data Config、Art Asset、QA Evidence、Release、Feedback 等细分语义由 lane、module、label 或 property 表达,不创建额外类型。

Work Item Type 的默认值、active relation、assignment 非空和历史归一等不变量继续由 工作项类型 拥有;Game 模板不得绕过这些规则。

12 个 Game 入口语义​

入口语义底层对象
工作台聚合周期/里程碑、需求、Bug、阻塞、验证、构建、QA、发行准备度与模板状态。Project summary、Cycle、Module、Work Item、Release、Automation read model
迭代候选池管理立项后当前游戏的玩法、系统、关卡、数值、UI、运营反馈候选项。Work Item Type / label / module
策划规格管理 Game Design Spec、Design 契约、验收标准、风险、开放问题和评审状态。OpenSpec 需求/方案、普通 Issue 及关系、精确内容引用
任务拆分将已通过 Spec + Design 契约拆成 PM/策划/Unity/美术/后端/QA 等可执行任务并显示依赖。Parent-child Work Items、role labels
玩法验证管理玩法假设、验证方式、通过条件、证据与结论。Gameplay Validation Work Items、attachments/links
配置表 / 数值管理配置表、公式测试、一致性检查、导出和平衡调整证据。Data Config Work Items、Modules、Pages/evidence
UI / 视觉验收管理 UI 清单、视觉基准、截图证据、适配/溢出/遮挡检查。Work Items、Pages、attachments/evidence
美术资源管理美术需求、风格方向、资源清单、导入、验收和返工。Art Asset Work Items、Modules
构建与提测聚合构建、提测门禁、构建失败原因和测试包证据。Releases、Build evidence links、Work Items
QA 验收按需求聚合验收标准、测试结果、Bug 回归、冒烟、视觉、玩法、数值证据。QA Evidence Work Items、Issue relations、evidence
发行门聚合 release checklist、已知问题、Release note、TEST/PROD 证据。Project Releases、Release Work Items、external evidence
玩家反馈将玩家评论、客服、社群、埋点和运营指标回流为 Bug、候选需求或数值/UI 调整。Feedback Work Items、Intake

GameLane 内部工作流合同​

Game 入口内部功能以 GameLane 为统一抽象:每个入口是对同一 Project 内 Work Item、Module、Label、Page、Release 与 Evidence 的领域化视图,不新建脱离 Plane 的游戏项目管理系统。

通用领域模型​

模型语义关键字段
GameWorkItemContext将一个 Work Item 绑定到某个 Game 入口,并保存入口状态和领域字段。lane、workflow_state、category、source、score、lane_fields、source_issue
GameEvidenceWork Item 的结构化证据索引。证据可引用 Page、URL、artifact、build、commit、pipeline 或人工记录。evidence_type、verify_method、status、ref_type、ref_url、ref_id、commit_sha、build_identity、payload

这些模型只补充 Game 入口视图所需的领域上下文,不替代 Issue state、Issue type、Module、Page、Release、Automation run/event/result 或发布/部署 evidence 的 owner。

GameLane 通用能力​

每个入口页面至少提供:

  1. Header:入口说明、默认 Work Item Type、默认 Module、默认 role label、快捷创建。
  2. Summary:按入口状态、Issue state group、priority、category、assignee、证据完整度统计。
  3. Item list:按 state/category/source/cycle/module/assignee/role/priority/search 过滤。
  4. Quick create:创建底层 Work Item,并自动绑定入口 context、默认 type/module/label。
  5. Context update:更新入口内 workflow_state、评分、分类、来源和专属字段。
  6. Evidence panel:添加或更新结构化证据;pass/fail 结论必须有证据引用或说明。
  7. Conversion:将当前入口对象转为其它入口对象,并保留来源链路。
  8. Relation:展示上游 Spec、下游 Task、关联 Bug、Release、Feedback 或 Art Asset。

12 个入口状态与动作​

入口默认状态核心动作转换目标
工作台不直接创建对象查看周期、链路、风险、待办、模板、Automation 只读摘要打开对应入口
迭代候选池收集、评估中、已采纳、已转规格、暂缓、拒绝评分、优先级排序、采纳/暂缓/拒绝Spec、Feature、Data Config、Art Asset、Bug、Feedback
策划规格待生成 Spec、Spec 评审、待生成 Design、Design 评审、待任务拆分、已拆分绑定 Spec/Design Page、维护 AC/风险/开放问题、评审通过/打回、基线化Task、Gameplay Validation、Data Config、UI/Visual、QA Evidence
任务拆分待拆分、已拆分、执行中、阻塞、待验收、完成从已通过 Spec + Design 生成任务树、分配岗位、设置依赖QA Evidence、Bug、Build/Test
玩法验证待验证、验证中、通过、失败、观察、延后维护假设、方法、步骤、通过条件、结论和证据Candidate、Spec 修订、Data Config、UI/Visual、Bug
配置表 / 数值待设计、待导出、待验证、通过、失败、回归中公式/边界/一致性 checklist、平衡 before/afterGameplay Validation、QA Evidence、Bug、Spec 修订
UI / 视觉验收待设计、待实现、待截图、待验收、通过、返工绑定基准图/实现图/diff/适配检查Art Asset、Task、QA Evidence、Bug
美术资源需求中、制作中、待导入、已导入、待验收、通过、返工风格来源、规格、交付路径、导入验收UI/Visual、Task、QA Evidence
构建与提测待构建、构建中、构建失败、待提测、已提测、QA接收绑定版本/commit/产物/smoke/checklistQA Evidence、Release、Bug
QA 验收待验收、验收中、通过、失败、待回归、回归通过AC 矩阵、pass/fail evidence、Bug 回归Bug、Release、Spec 修订
发行门准备中、阻塞、可提测、TEST完成、待PROD确认、已发布release checklist、risk acceptance、evidence reportFeedback、Bug、Release known issue
玩家反馈收到、分类中、已转工作项、处理中、已验证、已关闭、不处理分类、去重、影响评估、处理结论Bug、Candidate、Data Config、UI/Visual、Art Asset、QA Evidence

Game workflow API​

目标 API:

  • GET /api/workspaces/{slug}/projects/{project_id}/game/lanes/ 返回入口配置、状态、字段、转换目标和 evidence 类型。
  • GET /api/workspaces/{slug}/projects/{project_id}/game/lanes/{lane}/summary/ 返回入口统计。
  • GET /api/workspaces/{slug}/projects/{project_id}/game/lanes/{lane}/items/ 返回入口 Work Item 列表。
  • POST /api/workspaces/{slug}/projects/{project_id}/game/lanes/{lane}/items/ 快速创建入口对象。
  • PATCH /api/workspaces/{slug}/projects/{project_id}/game/contexts/{context_id}/ 更新入口 context。
  • POST /api/workspaces/{slug}/projects/{project_id}/game/contexts/{context_id}/evidence/ 添加 evidence。
  • PATCH /api/workspaces/{slug}/projects/{project_id}/game/evidence/{evidence_id}/ 更新 evidence。
  • POST /api/workspaces/{slug}/projects/{project_id}/game/contexts/{context_id}/convert/ 转换为其它入口对象并保留来源链路。
  • GET /api/workspaces/{slug}/projects/{project_id}/game/workbench/ 返回工作台聚合视图。

所有写 API 必须复用或等价遵守 Issue 创建/更新、Project member、Work Item Type、Module、Label 和 scope 校验。客户端传入任何 type/module/label/parent/cycle/evidence/context ID 都必须在服务端验证同 Workspace、同 Project、active 且可被当前 actor 使用。

权限、Automation 与 Gate 边界​

  • Profile 读写遵守 Project 管理权限;模板应用仅 Project Admin。
  • Profile 切换只改变后续展示和模板建议,不删除既有模块、标签、类型、页面、工作项或证据。
  • Game 页面展示 Issue 原生进度和委托开关;真实执行、重试及会话状态来自 Symphony runtime,不再展示或推断 Plane Run。
  • Issue 开启自动化即委托 Symphony,保留适用人工业务按钮和验收;Profile 本身不启动执行、不改变委托、不代替人类验收。
  • Release、TEST、PROD、credential、permission、destructive migration 和 important data gate 不被 Profile 放宽。

API 与数据​

目标 API:

  • Project create/update/list/detail 均 roundtrip project_profile 与 project_profile_template_version。
  • GET /api/workspaces/{slug}/projects/{project_id}/profile-template/ 返回模板完整性、缺失项和已应用版本。
  • POST /api/workspaces/{slug}/projects/{project_id}/profile-template/apply/ 幂等应用当前 profile 的模板。
  • GET /api/workspaces/{slug}/projects/{project_id}/game/summary/ 返回 Game 工作台和入口摘要;非 game Project 可返回 409 或通用空摘要,但不得写入。

所有 API 必须校验 actor、Workspace、Project 的一致性,拒绝 forged cross-workspace/project ID。

验收标准​

  1. 默认 Project 为 general,现有导航和 Project API 行为不变。
  2. 创建 game Project 后显示 Game 入口组并默认进入工作台。
  3. Game 模板重复应用不重复创建模块、标签或工作项类型。
  4. 非 Admin 不能应用模板或修改 Profile。
  5. 切离 game 不删除任何 Project 子数据。
  6. Game 页面不暴露 executor identity、executor list、default、selector 或 executor config。
  7. project_profile=game 不改变 Automation enablement、Issue execution、business state、Release、TEST/PROD 或 permission gate 的 truth owner。

跨层依赖​

停止条件​

  • 无法证明 Project 与 Workspace 同 scope 时 fail closed。
  • 模板应用会与现有 normalized name 产生不可判定冲突时停止并返回人工决策。
  • 切换 profile 会被误用为删除、迁移或执行授权时停止。
  • 任何需要 production、credential、permission、destructive migration 或 external runtime activation 的行为必须回到对应 Producer gate。