Oria Management Diagnostic · 2026-07-09

团队项目管理与产品管理现状深度分析

基于 PM Git 仓库、Linear、GitLab 代码仓库与 Merge Request 元数据完成。报告重点不是评价个人产出,而是判断当前管理系统是否能稳定回答:做什么、为什么做、谁负责、做到哪、为什么改变、什么时候上线、上线后真实版本是什么。

一页结论

Oria 目前的状态不是“没有项目管理”,也不是“文档不够多”。更准确的判断是:团队已经具备很强的需求生产能力研发执行吞吐,但管理系统还没有形成足够强的上下文保真机制。PM repo、Linear、GitLab 都在运转,却没有被一个稳定的身份索引、状态账本、决策账本和发布账本串起来。

这会导致一个隐蔽但昂贵的问题:每个局部看起来都合理,PRD 很细、Linear 有状态、MR 合并很快、代码也在发版;但跨过一个节点后,原始目标、范围取舍、冻结后变更、验收口径、上线版本和遗留项就开始丢失。项目越快,漂移越快。

563
PM 仓库 docs/ 下文件数,文档资产很丰富
782
全 refs 90 天 code commit 中的无锚大变更,占大变更 78.6%
198 / 459
GitLab 807 个 MR 中无锚大变更 MR
0
PM repo 中真实 release.md / systems/*/latest.md 记录
2 / 63
代码中的 ORI-* 能在 PM repo 直接反查到
核心判断:当前最大风险不是单点需求写得不够细,而是上下文在“需求入口 → PRD → 拆票 → cycle → 开发 → review → release → 复盘”每个节点都没有强制回写。现在能看到两类漂移:一类是代码有 ORI-* 但 PM repo 反查不到,另一类更严重,是大变更连 ORI-*、Linear URL、PM 文档链接都没有。结果是 PM 看板、PRD、Linear issue、MR、tag、线上版本可能各自正确,但不能合成一个可审计的产品事实。

数据源与可信度

来源已采集内容限制可信判断
PM Git repo/Users/admin/workspace/oria/pm 文件结构、文档内容、meta、git log 180 天能证明文档架构与沉淀情况;不能单独证明 Linear 当前状态和线上真实版本
Linear通过 Linear 插件读取 Oriaxyz team 的 projects、issues、labels、cycles、statuses,并与 PM Git / code Git 的 ORI-* 交叉比对状态切片以插件返回的当前快照为准;长描述有截断,但足够判断容器、状态和链接模式
Git code repo本地 34 个代码 repo 当前 checkout 的 git history、tag、Linear ID;另以全 refs 口径扫描 31 个唯一 code repo 的 4,409 个 commit;GitLab group oria 807 个 MR本地 checkout 与远端 refs 口径不同,报告中分别标注;GitLab MR 窗口按 created_at 覆盖 2026-04-10 至 2026-07-09

更新说明:本版纳入 Linear 直接数据、全量 commit/MR 反推和 PM repo 架构审计,将重点从“工具是否接入”调整为“跨工具上下文是否保真”。

应然模型:不是三套工具,而是一条事实链

PM 仓库的制度文档已经定义了清晰分工:GitLab 是正式产品文档主库,Linear 是需求/缺陷/迭代/优先级协作平台,飞书 Wiki 是跨角色共享入口。需求生命周期从 idea、triage、backlog、prd_draft、prd_review、prd_frozen、in_delivery 到 released/cancelled/archived,并要求生命周期变化记录到 meta.yaml.status_history

这套设计方向是对的,但还少了一层“操作系统”能力:每个需求必须有稳定身份,每次状态变化必须有原因,每次范围变化必须有变更记录,每个 MR 必须回指需求和决策,每次上线必须落到系统版本账本。否则 Git、Linear、GitLab 只是三个各自正确的局部系统,不会自动生成一个可信的整体事实。

账本应该回答的问题当前主要断点
身份账本这个需求在 PM repo、Linear、MR、release 中分别是谁?ORI-* 没有成为 PM repo 与代码提交的共同主索引
状态账本现在处于哪个阶段,谁负责,为什么进入下一阶段?stagelifecycle 并存,status_history 覆盖不足
决策账本评审时决定了什么,谁同意了什么,哪些不做?meetings/changes/ 没有成为常规产物
发布账本实际上线了什么版本,包含哪些 issue/MR,遗留和回滚是什么?代码 tag 存在,但 PM repo 没有系统 latest/release 回写

上下文漂移地图

下面不是流程图,而是上下文最容易失真的位置。Oria 现在的问题不是某一个节点坏掉,而是每个节点都只把自己需要的上下文带到下一站,没有强制把“为什么、改了什么、验收了什么、上线了什么”回写成共同事实。

节点当前证据漂移方式后果
Portfolio / RoadmapLinear projects 已覆盖多语言、流程系统、风控、内控内审、Onchain、AI 测试等;ROADMAP.md 仍停留在早期 Web/App 叙事项目容器在 Linear 更新,战略叙事和取舍理由没有同步更新团队知道“现在在做什么”,但不稳定知道“为什么现在做、哪些被推迟、代价是什么”
需求入口Linear Triage 当前只看到 1 个 issue;同时存在 trashed/canceled legacy project 和项目级 issue想法可能直接变成 project/backlog,或者被取消后只留下状态,没有保留充分的输入、拒绝理由和复用边界后续新需求容易重复讨论,历史否决无法成为组织记忆
PRD / 方案PM repo 有 246 个 Markdown、158 个 HTML,验收 出现很多;但 domain 需求 meetings/changes/release.md 为 0方案正文很细,但评审结论、冻结后变更、验收结果没有变成独立对象PRD 会被持续改写,读者难以判断“原方案、评审后方案、上线方案”的差异
拆票 / CycleCycle 7 issue count 从 26 增至 38,scope 从 33 增至 45;Week Plan 被建成 issue计划本身被对象化了,但 scope 变化的业务原因、代价和替换关系没有自动回写周期完成率可以看见,周期承诺如何变化却不够透明
开发交接代码 90 天 commit subject 展开后出现 63 个不同 ORI-*,PM docs 候选文件只能反查到 2 个研发执行链路围绕 Linear ID 运转,产品知识链路没有使用同一主键从代码能找到任务号,但不一定能回到完整需求、变更和验收口径
MR / Review2026-04-10 至 2026-07-09 抓取 807 个 GitLab MR:782 merged、25 closed;349 个有任一锚点,458 个无锚;459 个大变更 MR 中 198 个无锚MR 的身份在 branch/title/description/notes/commit 中都不稳定;不少大 MR 描述很细,但缺需求来源和验收口径执行效率高,但需求偏差、验收口径和跨服务影响不容易在 review 节点被拦住
质量 / 验收GitLab group 项目层面 0 个要求 pipeline 成功才可合并,0 个要求 discussions resolved;PM repo 中测试报告记录极少质量信息停在个人自测、CI marker 或局部对话,没有成为项目状态的一部分“可以合并”和“可以上线”之间缺少明确门槛
Release / 复盘代码仓有 110 个 tag、15 个仓有 release-like tag;PM repo 真实 release.mddocs/systems/*/latest.md 为 0技术版本存在,产品版本事实没有接住;Linear Released 也没有自动生成 release ledger上线后无法稳定回答版本范围、遗留项、回滚口径和用户可见变化

从代码倒推的漂移

这部分按用户真实执行链路反向看:不是从 PM repo 问“哪些需求在做”,而是从代码 commit 和 GitLab MR 倒推管理系统是否能承接真实交付。反向追踪分两层:第一层看“带 ORI-* 的代码能否回到 PM/Linear”;第二层看“没有任何 ORI-*、Linear URL、PM 文档链接的大变更有多少”。后一层是本次补充后更关键的发现。

原先只追 ORI-* 会漏掉最危险的一类事实:代码已经发生了重大产品/系统变化,但它没有进入任何可追溯身份。也就是说,不只是“有 Linear ID 但 PM 断链”,还有“大变更绕过 Linear/PM 身份系统”。

4,409
全 refs 90 天 code commits,覆盖 31 个唯一 code repo
951
带任一管理锚点的 commit,占 21.6%
782
无锚大变更 commits,占大变更 78.6%
2 / 63
ORI-* 的代码事项能在 PM docs 反查

两类漂移必须分开看

漂移类型量化证据含义
有 ORI,但 PM 断链代码 90 天 commit subject 展开出 63 个不同 ORI-*,PM docs 候选文件只命中 2 个;329 / 335 次 commit mention 无法从 PM 反查Linear 记录和研发执行存在,但产品上下文、变更和发布事实没有回到 PM repo
无 ORI / 无 Linear / 无 PM 锚点全 refs 4,409 commits 中只有 951 个带任一管理锚点;995 个大变更中 782 个无锚这类变化甚至不能从管理系统知道“应该去哪里查”,只能事后从 git log 和 diff 反推
MR 层无锚807 个 GitLab MR 中 458 个无锚;459 个大变更 MR 中 198 个无锚review 节点没有稳定承接需求来源、验收口径和发布影响
反向追踪指标结果解释
PM docs 候选文件命中2 / 63只有 ORI-178ORI-291 能从 PM docs 候选文件中反查到;其余 61 个没有 ORI 锚点
受影响 commit mention329 / 335绝大多数带任务号的代码提交无法用任务号回到 PM 上下文
PM release/latest 命中0已交付事项无法通过 PM repo 找到上线范围、遗留项和系统最新状态
高频样本 Linear 状态前 10 个高频 ORI 精确查询均存在,且均为 ReleasedLinear 不是主要缺失点;缺的是 Linear Released 与 PM 产品上下文、发布账本之间的回写

高频代码 ORI 反查样本

ORI代码信号Linear 状态样本PM repo 反查结果管理含义
ORI-29328 次 commit mention,集中在 core-service,Portfolio PnL APIReleasedPM Markdown / meta 未命中已发布后端能力在 PM repo 无产品版本落点
ORI-11620 次,跨 adm-bff / admin-web,运营后台邮箱登录Released,Linear 描述含 GitLab PRD 链接代码 ID 在 PM repo 未命中Linear 有文档链接,但 PM repo 无法用 ORI 反查该需求
ORI-26520 次,跨 oria-web / user-service / bff,PIN/PasskeyReleased未命中跨端/跨服务安全体验变更没有进入 PM 状态账本
ORI-8417 次,跨 5 个 repo,H5/Web 首页重塑Released未命中高影响前台体验变更缺少统一发布说明
ORI-11016 次,跨 bff / kyc-service-go / oria-web / gateway-goReleased未命中KYC 这类合规链路更需要决策/验收留痕
ORI-11116 次,与 ORI-110 共同出现在 KYC shorthand commit 中Released未命中成对需求在代码中联动交付,但 PM repo 不能按任一 ID 反查上下文
ORI-29510 次,跨 7 个 repo,repo 上下文治理Released未命中连“上下文治理”本身也没有回到 PM repo,说明问题是系统性的
反向结论:一部分代码提交没有丢任务号,Linear 也能查到高频任务状态;但任务号没有回到 PM 产品事实。另一部分更糟:重大 commit/MR 根本没有任务号或文档锚点。PM repo 当前既无法作为已交付能力的反向索引,也无法发现“无身份的大变更”,这就是上下文丢失的主要量化证据。

无锚大变更:最近 UI/UX 调整不是个案

本轮补充的关键修正是:不能只扫 UI/UX 关键词,也不能只扫 ORI-*。全量 commit/MR 分析按文件路径、扩展名、变更规模、跨模块范围和 churn 识别产品/系统影响。结果显示,无锚大变更不是偶发,而是当前交付系统的默认风险。

995
全 refs commit 大变更数
782
无锚大变更 commit,78.6%
459
GitLab 大变更 MR
198
无锚大变更 MR,43.1%

最近 UI/UX 调整的精确证据

对象事实锚点情况管理含义
oria-web!1812026-07-08 merged,标题 feat(web): mobile UI rework across account, grow, holdings & funding;source branch fix/mobile-style-tweaks,target dev;79 files,+3,766 / -1,780MR title、description、source branch、commit messages 均无 ORI-*、Linear URL、PM docs 链接、closing refs 或 release/decision docreview 能看到实现范围,但无法直接看到需求来源、设计决策、验收口径、上线说明
oria-web commit 1f769006同一变更进入 origin/dev;覆盖 account/KYC/security、signup、bills、deposit、funding、grow、holdings、overview、withdraw、mobile nav、BottomSheet、ResponsiveDialog、MiddleTruncate 等commit body 为空,无任何管理锚点如果不从 git diff 反查,PM/Linear 无法知道这些流程在同一次移动端 UI 调整中被一起改过
ORI-299Linear 中存在 oria UI/UX 整体重构 epic,2026-06-26 创建,2026-07-07 Released;描述覆盖 21 页,子票 ORI-300ORI-304ORI-307 多数 ReleasedORI-299 无 documents / attachments;ORI-299/300/301/302/303/304/307 在 PM Markdown/YAML 中无命中;oria-web!1811f769006 没有反链到 ORI-299Linear 有高层薄记录,但 PM repo 没有需求对象,代码/MR 也没有稳定回链;这不是“完全没有 Linear”,而是三套系统没有闭环

不是 UI 专属问题

证据类型规模为什么应进入管理系统
oria-web!181 / 1f769006前端 UI/体验79 files / 5,546 churn多条核心用户流程的移动端交互和组件抽象重做
oria-web!128前端产品体验87 files / 7,177 churnH5 styles、amount precision、page titles,涉及 wallet、transactions、grow、holdings
admin-web!36后台 UI/操作台67 files / 14,992 churn删除 demo/verify,涉及 KYC、login、withdraw、yield 操作面
yield-service-go!22后端业务规则101 files / 12,779 churnfundraising、subscribe、deploy、recall、settle 生命周期调整,直接影响理财产品交付事实
oria_kmp commit ee2beb16移动端909 files / 107,915 churn界面文本国际化与钱包功能同时进入,风险远超普通 fix
tokenized-web!11前端/钱包集成131 files / 5,898 churnPrivy embedded wallet 与 apps/packages/deploy/docs 多模块变更,需要发布与验收口径
修正后的判断:最近 UI/UX 调整在 Linear 里有 ORI-299 这个 epic,但 PM repo 没有相应产品事实,关键 MR/commit 也没有回链。更广泛地看,前端、后端、移动端、agent/tools 都存在无锚大变更。问题不是“漏了一个 UI ticket”,而是代码事实没有被强制纳入需求、变更、验收和发布账本。

PM 仓库现状

241
PM repo 近 180 天 commit
5
PM repo 近 180 天贡献者
42 / 57
meta.yaml 缺少 lifecycle

架构合理性判断

PM repo 的目标架构是合理的:它不应该简单按 Linear 状态搬目录,而应该按业务领域和业务动作组织需求,用 meta.yaml.lifecycle 表达状态;需求目录回答“为什么做、做什么、范围和变更是什么”,docs/systems/{system} 回答“当前线上是什么、哪个版本包含哪些需求”。这套设计比传统 todo/doing/done 文档目录更适合长期维护,也更适合金融产品的审计和回溯。

实际问题不在“架构方向错”,而在“架构承诺没有被执行成约束”。现在 PM repo 同时扮演长期知识库、需求规格库、项目状态镜像、发布事实账本、原型资产库和研究资料库,但没有把 canonical / generated / archive / reference 分清楚。读者看到的是大量文档,而不是一个能回答“当前事实是什么”的产品管理系统。

架构层设计目标实际状态风险
业务域需求层docs/domains/{domain}/{action}/{requirement} 固定归属,状态写 meta14 个 domain 需求已创建,但很多只有 brief/prd/prototype,缺少 meetings/changes/release 子对象需求能被写出来,但进入交付后的决策和变更没有对象化
旧协作层triage/backlog/spec 交付完成前不迁移,完成后拉 last version 快照spec 261 个文件、backlog 102 个、triage 25 个,仍是主要资产区;旧 spec/README.md 仍保留“进入 Todo 后从 backlog 移到 spec”的口径旧目录位置仍在表达状态,新旧生命周期口径并存
系统状态层docs/systems/{system}/latest.md 与 releases 维护线上事实docs/systems 只有 README,真实 latest/release 记录为 0PM repo 无法回答“线上现在是什么版本、包含哪些需求”
元数据层meta 作为 Linear、系统、生命周期、发布归属的索引57 个 meta 中只有 15 个 lifecycle,13 个 status_history,13 个 linear,2 个 linear_id;13 个有 target_release 字段但非空值为 0;system 命名存在 app/web/admin-consoleapp-client/web-clientweb-app/admin 等多套口径仓库无法被稳定机器读取,也无法自动校验漂移
生成/参考资料层研究、原型、生成报告为辅助材料,不替代当前事实HTML 原型、研究报告、superpowers spec、正式 PRD 混在 docs 主树新成员和 agent 难以判断哪个文件是权威正文,哪个只是过程材料

文档资产分布

docs/spec
261
docs/backlog
102
docs/domains
81
docs/triage
25

仓库经历过一次从旧目录 triage/backlog/spec 到新目录 domains 的治理迁移。迁移方向清楚,但新旧并存造成了两套口径:旧目录以位置表达阶段,新目录以 meta.yaml.lifecycle 表达阶段。实际执行中,两套都没有完全闭环。

STATUS.md 和旧目录 README 仍在延续路径即状态的管理方式,而新架构要求路径表达业务归属、状态写入 meta。两者同时存在时,团队很容易在“我要找当前需求状态”与“我要找业务域知识”之间来回切换,agent 也很难判断哪个文件是事实源、哪个只是历史视图。

domains 目录采用情况

指标结果含义
meta.yaml 的需求目录14新目录体系已经开始使用
brief.md12 / 14需求入口材料基本具备
prd.md11 / 14PRD 生产能力较强
pages.md2 / 14页面/状态清单没有成为稳定中间层
meetings/changes/release.md0 / 14评审、变更、发布闭环未沉淀

PM 仓库暴露的管理问题

Linear 链路现状

PM 协作规范把 Linear 定义为需求、缺陷、迭代、优先级的唯一协作平台;直接读取 Linear 后可以确认:Linear 已经是团队真实协作中心之一。它承载项目组合、cycle、issue 状态流、标签和一部分 GitLab 文档链接。问题不在于是否使用 Linear,而在于 Linear 的真实协作状态没有被 PM Git 与 GitLab release 体系稳定接住。

25
Linear projects 返回数量(含 trashed / legacy 容器)
7
Linear workspace labels:Feature / Improvement / Bug / Infra / Epic / praxis / Week Plan
Cycle 8
当前 cycle:2026-07-07 16:00 UTC → 2026-07-14 16:00 UTC,22 issues / scope 24
21 / 38
上一 cycle issue 完成数;scope 从 33 增至 45
26
PM Markdown/YAML 出现的不同 ORI-*
63
代码 90 天 commit subject 展开后的不同 ORI-*
61
代码出现但 PM docs 候选文件未命中的 ORI-*

Linear 直接观察

维度观察管理含义
Projects当前可见项目包括「多语言支持」「流程系统」「风控系统」「内控内审合规」「Onchain MVP」「AI 无人测试体系」「运营&客服体系」等;也有多个 trashed / legacy 容器,如早期邀请返佣、数据分析、多端分发等Linear 已经承担 portfolio 容器,但存在历史项目、项目级 ticket、执行 issue 混杂,需要定期清理项目层级
状态模型状态包括 Triage、Backlog、Todo、In Progress、In Review、Done、Released、Canceled、Duplicate区分 DoneReleased 是正确方向;但如果没有 release ledger,Released 会退化为人工标签,而不是可审计事实
标签体系当前只有 7 个 label:Week Plan、praxis、Infra、Epic、Feature、Improvement、Bug类型标签有了,但缺少业务域、系统、风险级别、发布面、客户影响等维度,portfolio 分析主要依赖标题和人工理解
当前 CycleCycle 8 当前范围为 22 issues / scope 24,周期为 2026-07-07 16:00 UTC 到 2026-07-14 16:00 UTC已经有 cycle 节奏,但 PM Git 的 ROADMAP / STATUS 没有同步反映当前 cycle
上一 CycleCycle 7 完成 21 issues / scope 26;issue count 从 26 增到 38,scope 从 33 增到 45有明显 cycle 内扩容,说明 WIP 和临时插单需要被显式管理
状态切片可见 Triage 仅 1 个(ORI-170);In Progress 包括 ORI-232 / ORI-231 / ORI-359 / ORI-230 / ORI-335 / ORI-336 / ORI-337;In Review 包括 ORI-318 与多张财务底座票;Backlog 中含 Referral V3.1、KYC 优化、最小充值金额、全站暂停、App 版本管理、风控/流程系统拆分票Linear 状态流比 PM Git 更接近当前真实交付面
Released / CanceledReleased 中有 Referral V1、墨西哥信贷资产 V1、H5/Web 首页、KYC、Pilot 标签等;Canceled / Duplicate 中有 Referral V2、风控系统/流程系统早期项目级 issue 等Linear 对完成/取消记录较完整,但 PM Git 缺少对应 release note 和 cancellation/change 记录
计划对象Linear 中存在 Cycle 2 到 Cycle 6 的 Week Plan issue把周计划对象化是有价值的,但如果周计划和功能/缺陷 issue 混在同一层级,统计时需要明确排除或单独聚合
UI/UX epicORI-299「oria UI/UX 整体重构」存在于 Linear,2026-06-26 创建、2026-07-07 Released,描述覆盖 21 页,并拆出 ORI-300ORI-304ORI-307 等子票Linear 有高层拆票能力;但该 epic 无 documents / attachments,PM repo 无对应需求对象,关键 MR/commit 也没有回链到该 epic
观察管理含义
代码 commit/MR 中 ORI 很活跃,例如 ORI-318ORI-359ORI-295研发已经把 Linear 当作工作单号,但 PM 文档没有跟上 issue-to-requirement 映射
STATUS.md 声明“真源在 Linear”,但多数表格 Linear 列为空状态索引不能可靠回答“这个需求在 Linear 哪个 issue / project / cycle”
Linear issue 描述里有 GitLab 文档链接,例如 ORI-335 直接链接 admin dashboard 的 Brief / PRD / Pages从 Linear → PM Git 的单向链接已经开始形成,但 PM Git → Linear 的反向链接仍明显不足
一些 Linear project 由早期 issue 演进而来,旧 project 被 canceled 或 trashed团队在快速寻找正确抽象层,这是正常演化;但需要一个“promotion rule”:什么时候 issue 升级为 project,旧 issue 如何关闭,迁移后的上下文放在哪里
修正后的判断:Linear 已经可审计,也已经承载真实计划与执行;下一步不是“接入 Linear”,而是把 Linear 数据纳入固定报告/校验流水线,自动发现 PM Git 缺失 Linear ID、Released 未回写 release、Canceled 未回写取消原因、cycle 内 scope creep 等问题。

代码仓库与交付现状

37
GitLab oria group 项目
31
未归档项目
23 / 34
本地 code repo 当前 checkout 中 30 天有 commit
0
GitLab 项目开启“必须 pipeline 成功才可合并”

Commit 活动

本地当前 checkout 口径下,34 个 code repo 90 天合计 2,481 commits,30 天合计 1,360 commits。为了避免只看当前分支漏掉已经进入远端 origin/dev 的变更,本轮又用全 refs 口径扫描 31 个唯一 code repo:2026-04-10 至 2026-07-09 共 4,409 commits,其中 689 个带 ORI-*,951 个带任一管理锚点;995 个大变更里 782 个无锚。

分类commit 信号无锚风险
frontend/UI1,274 个相关 commit,354 个大变更271 个 frontend/UI 大变更无锚,占 76.6%;最近 oria-web!181 属于此类
backend/API1,795 个相关 commit,覆盖 BFF、core、yield、wallet、KYC 等多个资金、计息、KYC、结算相关大变更没有稳定回写 release/PM 上下文
agent/tools1,155 个相关 commitagent 工具会放大执行吞吐,若无 PM/Linear 锚点,会把组织知识进一步碎片化
mobile/KMP69 个相关 commitoria_kmp 出现 909 files / 107,915 churn 的 UI + 钱包功能无锚大变更

MR 活动

GitLab group 近全量窗口抓取 807 个 MR,其中 782 merged、25 closed。349 个 MR 有任一管理锚点,458 个无锚;459 个大变更 MR 中 198 个无锚。锚点类型互有重叠:269 个出现 ORI-*,144 个出现 Linear URL,102 个出现 PM/docs 线索,50 个出现 closing/refs,81 个出现 release/decision doc 线索。说明 GitLab 上下文本身不是空白,但还没有成为强制协议。

项目/类型MR 数锚点率 / 无锚大变更管理信号
frontend/UI24544.5% / 78用户可见变化最密集,UI/UX、资金页、持仓、Grow、后台操作台都在这里漂移
backend/API39347.3% / 84BFF、yield、core、wallet、KYC 的规则变化需要更强发布账本
agents/tools16230.3% / 36工具链和 agent 迭代快,但进入 PM/Linear 的比例更低
oria/oria-web18045.0% / 56前端交付高频,是需求变化最敏感端;oria-web!181 是典型无锚大 MR
oria/bff11346.0% / 24BFF 承载大量需求集成与规则变更
oria/oria-agents601.7% / 18AI/agent 能力进入工程体系,但上下文锚点极薄
oria/admin-web5339.6% / 17后台能力近期在扩张,操作台变更需要验收与权限回归记录
oria/yield-service-go5335.9% / 17理财核心域仍高活跃,生命周期、计息、结算变更不能只留在 diff

代码仓库管理信号

问题诊断

P0 缺少跨工具的上下文账本

制度上是 Git 文档、Linear 状态、GitLab 交付三权分立;实际缺少统一 join key 和强制回写点。从代码倒推,最近 90 天有 335 次 commit mention 指向 63 个不同 ORI-*,但其中 61 个无法在 PM docs 候选文件中直接反查,覆盖 329 次 commit mention。进一步扩大到全 refs 4,409 个 code commit 后,只有 951 个带任一管理锚点,995 个大变更里 782 个无锚。研发执行并没有稳定围绕同一身份系统运转,需求、任务、MR、release 之间的上下文需要人脑拼接。

P0 无锚大变更绕过产品管理系统

oria-web!181 / 1f769006 在 2026-07-08 完成移动端 account、grow、holdings、funding、withdraw、KYC/security 等 UI/UX 重构,79 files / 5,546 churn,但 MR 和 commit 均无 ORI-*、Linear URL、PM docs 或 release/decision doc。Linear 中虽有 ORI-299 UI/UX 整体重构 epic,但它没有 documents/attachments,PM Markdown/YAML 也无法命中 ORI-299/300/301/302/303/304/307。这说明问题不是单个 ticket 漏写,而是大变更缺少强制入账机制。

P0 PM 仓库对象边界不清,架构承诺没有落地

PM repo 的新架构设计其实很先进:domain 目录管需求,systems 目录管线上状态,meta 管生命周期,meetings/changes/release 管过程事实。但实际仓库仍是旧路径状态、新 domain 结构、研究资料、原型、生成 spec、历史规划混合存在。读者看到的是大量文档,不是一个清晰的当前事实系统。

P0 发布事实没有成为一等对象

代码仓有 tag,Linear 有 Released 状态,但 PM repo 没有真实 release.mddocs/systems/{system}/latest.mdreleases/{version}.md。这意味着“已发布”更多是协作状态,不是可审计事实。对于资金、KYC、风控、账务类产品,缺少上线范围、验收人、遗留项、回滚口径,会直接影响复盘和风险控制。

P1 Cycle 计划在变,但变化成本没有被显式管理

Cycle 7 从 26 issues / scope 33 扩到 38 issues / scope 45,最后完成 21 issues / scope 26。插单和扩容在创业团队里正常,但必须记录“新增了什么、替换了什么、为什么值得、哪些承诺顺延”。否则 cycle 看起来只是完成率问题,本质上的 portfolio trade-off 没有被看见。

P1 Review 节点主要审代码,不稳定审上下文

807 个 MR 中 458 个无锚;459 个大变更 MR 中 198 个无锚。很多 MR 描述能说明实现内容,却不提供需求来源、决策记录、验收口径和发布影响。MR 合并速度很快,说明执行效率高;但如果 MR 模板不要求需求链接、变更说明、测试证据、发布影响,review 很容易只判断代码是否能合并,而不是判断它是否仍符合产品目标。

P1 Portfolio WIP 过宽,且分类维度太薄

31 个未归档 GitLab 项目、23 个近 30 天活跃本地 code repo、多个核心服务同时高频变化。Linear label 只有 Feature / Improvement / Bug / Infra / Epic / praxis / Week Plan,缺少业务域、系统、风险级别、客户影响、发布面等维度。团队能推进很多事,但管理层很难快速看出资源被哪些业务目标占用。

P2 治理规则领先于自动化执行

文档架构、协作规范、需求层级这些规则本身质量不低,甚至已经意识到 systems/latestchangesstatus_history 的必要性。真正缺的是 schema check、link check、release check、Linear sync check、MR context check。没有自动化,规则会在高压交付下自然失效。

P2 Agent/AI 提升了吞吐,也放大了上下文债务

Linear 中已有 praxis、AI 无人测试体系、MCP Agent Service、Entity Wiki 等项目,代码侧也有 oria-agents 的高 MR 活动。AI/agent 会让需求拆分、代码生成、MR 处理更快,但也会更依赖结构化上下文。如果 PM repo 和 Linear 没有统一账本,agent 会更频繁地基于局部事实工作。

建议方案

30 天:建立上下文保真协议

60 天:重整 PM 仓库的信息架构

90 天:把管理质量变成自动门禁

最小可行改进:不需要重做整套管理工具。先强制三件事:每个需求有可用 Linear ID,每个 MR 带需求上下文包,每次 release 回写系统 latest。做到这三件事,当前高产但分散的工作流就会开始变成可审计、可复盘、可接续的管理系统。

证据索引

证据位置
PM 仓库核心规则/Users/admin/workspace/oria/pm/README.md/Users/admin/workspace/oria/pm/docs/foundation/document-architecture.md
协作流程与 Linear 字段规则/Users/admin/workspace/oria/pm/docs/foundation/collaboration-guide.md
PM 新旧架构双轨证据/Users/admin/workspace/oria/pm/docs/spec/README.md/Users/admin/workspace/oria/pm/docs/planning/STATUS.md/Users/admin/workspace/oria/pm/docs/domains/**/meta.yaml
路线图与状态镜像/Users/admin/workspace/oria/pm/docs/planning/ROADMAP.md/Users/admin/workspace/oria/pm/docs/planning/STATUS.md
新 domains 需求样本/Users/admin/workspace/oria/pm/docs/domains/**/meta.yaml
Linear 项目、issue、label、cycle 数据Codex Linear plugin:list_projectslist_issueslist_issue_labelslist_cyclessearchfetch issue:ORI-299
GitLab 项目与 MR 元数据glab api groups/oria/projectsglab api groups/oria/merge_requests;MR subagent 按 created_at 分页抓取 807 个 MR,并补 commits、changes、notes
代码到 PM 的 ORI 反向追踪34 个非 PM git repo 当前 checkout 的 90 天 git log --format=%H%x09%cI%x09%s,匹配并展开 ORI-* 后反查 pm/docs
全量 commit 无锚扫描31 个唯一 code repo 的全 refs git log,窗口 2026-04-10 至 2026-07-09;按路径、扩展名、files、churn、子系统分类识别大变更
最近 UI/UX 大变更核验/Users/admin/workspace/oria/oria-web commit 1f769006、GitLab oria/oria-web!181、Linear ORI-299、PM repo 精确搜索 ORI-299/300/301/302/303/304/307
本地代码 repo 统计/Users/admin/workspace/oria/*/.git,排除 pmdocs、本地 worktree / jam 临时目录