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
- 原子需求与验收
- 设计与工程合同
- 代码与仓库定位
- 里程碑与工作包
- 验证计划
- 无阻断决策
- Development Ready 已通过
- 验收标准已覆盖
- 正式测试已登记
- Fixture 与环境已定义
- 测试规格已物化到正式测试
- 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_profile | Project 的轻量画像。允许值: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 |
GameEvidence | Work 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 通用能力
每个入口页面至少提供:
- Header:入口说明、默认 Work Item Type、默认 Module、默认 role label、快捷创建。
- Summary:按入口状态、Issue state group、priority、category、assignee、证据完整度统计。
- Item list:按 state/category/source/cycle/module/assignee/role/priority/search 过滤。
- Quick create:创建底层 Work Item,并自动绑定入口 context、默认 type/module/label。
- Context update:更新入口内
workflow_state、评分、分类、来源和专属字段。 - Evidence panel:添加或更新结构化证据;
pass/fail结论必须有证据引用或说明。 - Conversion:将当前入口对象转为其它入口对象,并保留来源链路。
- 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/after | Gameplay Validation、QA Evidence、Bug、Spec 修订 |
| UI / 视觉验收 | 待设计、待实现、待截图、待验收、通过、返工 | 绑定基准图/实现图/diff/适配检查 | Art Asset、Task、QA Evidence、Bug |
| 美术资源 | 需求中、制作中、待导入、已导入、待验收、通过、返工 | 风格来源、规格、交付路径、导入验收 | UI/Visual、Task、QA Evidence |
| 构建与提测 | 待构建、构建中、构建失败、待提测、已提测、QA接收 | 绑定版本/commit/产物/smoke/checklist | QA Evidence、Release、Bug |
| QA 验收 | 待验收、验收中、通过、失败、待回归、回归通过 | AC 矩阵、pass/fail evidence、Bug 回归 | Bug、Release、Spec 修订 |
| 发行门 | 准备中、阻塞、可提测、TEST完成、待PROD确认、已发布 | release checklist、risk acceptance、evidence report | Feedback、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。
验收标准
- 默认 Project 为
general,现有导航和 Project API 行为不变。 - 创建
gameProject 后显示 Game 入口组并默认进入工作台。 - Game 模板重复应用不重复创建模块、标签或工作项类型。
- 非 Admin 不能应用模板或修改 Profile。
- 切离 game 不删除任何 Project 子数据。
- Game 页面不暴露 executor identity、executor list、default、selector 或 executor config。
project_profile=game不改变 Automation enablement、Issue execution、business state、Release、TEST/PROD 或 permission gate 的 truth owner。
跨层依赖
- 项目管理拥有 Project identity、基础字段与生命周期。
- Feature 开关拥有 Project 功能开关。
- 工作项类型拥有 Work Item Type 不变量。
- Modules、Cycles、Pages、Releases拥有各自数据语义。
- Automation拥有执行 truth;Profile 只可读取或链接,不拥有执行状态。
停止条件
- 无法证明 Project 与 Workspace 同 scope 时 fail closed。
- 模板应用会与现有 normalized name 产生不可判定冲突时停止并返回人工决策。
- 切换 profile 会被误用为删除、迁移或执行授权时停止。
- 任何需要 production、credential、permission、destructive migration 或 external runtime activation 的行为必须回到对应 Producer gate。