{"schema":"developer.reits.tech/real-task-ledger/v1","auditedAt":"2026-08-22T03:11:50+08:00","operatingModel":"一名人类 Owner 负责范围、取舍和最终决策；AI 可并行开发与交叉审核，但不冒充独立自然人审批席。","program":{"id":"PORTAL-RESET-2026-08","title":"Developer Portal 结构与真值重建","total":9,"accepted":2,"active":"C06","remainingIncludingActive":7,"parallelOpen":["C02","C03"],"blocked":["C05"],"currentReason":"C05 被 Auth session registry 未公开阻断；C06 已切换为不依赖该外部合同的 P0 当前 UI 证据校准。","rule":"只有代码、测试、部署和线上回读全部完成，当前刀才记为 ACCEPTED；前置刀存在真实缺口时必须保留 parallelOpen，不得伪造完成。"},"facts":{"snapshotOrganizationRepositories":46,"registeredOrganizationRepositories":29,"unregisteredOrganizationRepositories":17,"remoteRevisionMismatches":11,"sourceSplits":0,"currentScreens":85,"targetScreens":133,"acceptedScreens":0,"legacyProductRoadmapAccepted":4,"legacyProductRoadmapTotal":36,"identityRuntimeState":"CANDIDATE_OK","identityRuntimeIssue":"Auth /v1/meta 与 Portal /api/identity/runtime 当前均为 200；sessionRegistry=not_exposed，合同仍不完整，回读不可冒充正式 Identity 验收。","externalVerifier":{"status":"LOCAL_CONTRACT_VERIFIED_EXTERNAL_NOT_EVALUATED","packageCount":20,"localCheckCount":1138,"externalRequirementCount":437,"requireCount":425,"privateFinalizerCoverageCount":425,"declaredUnavailableCount":12,"declaredUnavailableKinds":{"WORKTREE":6,"RUNTIME_RECEIPT":6},"localContractState":"VERIFIED","externalProvenanceState":"NOT_EVALUATED","contractSha256":"41b77f56ac54f7aaf057942cb8563c4a625cf2e78abb7c8f0c69a1916eae09d8","effects":{"externalReads":0,"networkCalls":0,"externalWrites":0,"productionMutations":0},"executionReadiness":{"status":"AWAITING_READ_ONLY_EXTERNAL_ROOT_AUTHORIZATION","packageCommand":"npm run external-dependent-provenance:verify -- --external-root=<ABSOLUTE_CANONICAL_ROOT> --report=<ABSOLUTE_ABSENT_REPORT_PATH>","exactArgumentCount":3,"externalRootRepositoryCount":27,"externalRootRepositoryKeySetSha256":"2cacde4d5f0952bb295f86f671b32611930f671cbfee6c3953056724941c2e3e","externalRootLayout":"<absolute-canonical-root>/<repoKey>","verifierNetworkPolicy":"OFFLINE_GIT_ONLY","stagingNetworkPolicy":"OUT_OF_BAND_READ_ONLY_AUTHORIZATION_REQUIRED","reportParentRequiredMode":"0700","reportCreatedMode":"0600","reportTargetMustBeAbsent":true,"reportOutsideRepositoryAndExternalRoot":true,"authorizationReceipt":null,"externalRootReceipt":null}}},"tasks":[{"id":"C01","title":"网站结构清理与真实账本重建","outcome":"首页、导航和开发计划恢复为可读的开发者门户；旧四席流程迁入历史归档。","benefit":"任何人进入网站后 30 秒内能看懂系统、当前问题和下一步。","status":"ACCEPTED","scope":["首页","全局导航","开发计划","历史归档","机器账本"],"acceptance":["首页不再渲染 D05–D35 超长日志流","主导航固定为 12 个一级入口并由 navigation manifest 驱动","线上可读取 C01/C04 已验收、C05 阻断与当前 C06/9，且 C02/C03 parallelOpen 可见","旧证据仍可从归档访问"]},{"id":"C02","title":"仓库真值同步","outcome":"重新遍历 Gitea 组织仓并校准登记、分支、revision、owner 和部署关系。","benefit":"后续架构、UI 和 QA 不再基于过期仓库清单。","status":"ACTIVE","scope":["46 个 snapshot 仓计数","17 个未登记缺口","11 个历史 revision 漂移","0 个 source split"],"acceptance":["组织仓分页遍历留存时间戳","每仓 default branch 与 HEAD 可回读","登记缺口和漂移都有处置建议","仓库清单 API 与页面一致"]},{"id":"C03","title":"全局架构重建","outcome":"按身份、资源服务器、业务服务、数据、消息、日志、发布和恢复重画全局架构。","benefit":"开发者知道调用链、信任边界、数据 owner 和故障影响面。","status":"ACTIVE","scope":["逻辑视图","运行视图","信任边界","数据流","故障域","恢复链"],"acceptance":["所有生产服务有归属","Auth 与资源服务器链路完整","日志链可回读且指标证据边界与缺口显式","图中 CURRENT 与 TARGET 分层","EC2/media/Auth/Runner 事实带来源和采样时间","根卷容量、异地恢复和单 EC2 缺口显式保留"]},{"id":"C04","title":"项目与模块目录校准","outcome":"每个项目形成职责、入口、依赖、数据、风险、页面和完成定义。","benefit":"多人或多 AI 可以按模块接手，不需要重新考古。","status":"ACCEPTED","scope":["模块卡片","依赖关系","Owner","风险","Definition of Done"],"acceptance":["29 个作者化组织 manifest 均有归类","共享能力和重复实现可识别","模块页链接真实源码和运行证据"]},{"id":"C05","title":"生产运行态收敛","outcome":"在 Identity 兼容修复基础上，统一服务、容器、数据库、日志和发布身份视图。","benefit":"Portal 能真实反映生产健康，而不是只展示静态架构。","status":"BLOCKED","scope":["Identity 运行时合同","EC2","systemd","Docker","Loki / Grafana","release identity"],"acceptance":["/api/identity/runtime 持续返回 200 并纳入回归","Identity upstream 与 Portal adapter 分层可回读，contractStatus、blockers 和采样时间可见","session registry 未公开时页面明确 BLOCKED，acceptancePermitted 固定为 false","发布、回滚与日志入口互相可追踪"]},{"id":"C06","title":"P0 当前 UI 证据校准","outcome":"先校准 24 张核心 CURRENT 页面，再扩展到全部 85 张。","benefit":"UI 设计基于真实产品，不再靠空想。","status":"ACTIVE","scope":["Auth","BBS","Booking","OpenAPI","Admin","移动端"],"acceptance":["24 张 P0 页面有真实来源","路由、状态、动作和契约均可追踪","破图和失效链接归零"]},{"id":"C07","title":"P0 目标 UI 与交互稿","outcome":"为 24 张最高优先级缺口页交付可开发的桌面、移动和异常态设计。","benefit":"开发直接按稿实现，减少反复解释和返工。","status":"PLANNED","scope":["页面结构","组件复用","九态","响应式","关键交互","验收标注"],"acceptance":["每页有桌面和移动边界","Loading/Empty/Error/Forbidden 等状态完整","字段和动作绑定真实契约"]},{"id":"C08","title":"一人 + 多 AI 协作规则","outcome":"用任务包、分支、代码审查和 QA 证据替代不适用的四人签席流程。","benefit":"既保留交叉审核，又不让流程阻塞实际开发。","status":"PLANNED","scope":["人类决策","AI 分工","审查清单","变更边界","合并规则"],"acceptance":["每项任务只有一个人类 Owner","AI 审查明确标为 AI","高风险生产动作仍需人工确认","协作模板可直接复用"]},{"id":"C09","title":"QA、性能与最终收口","outcome":"完成核心路由、移动端、可访问性、性能、链接和部署回滚验收。","benefit":"Developer Portal 变成可持续维护的产品，而不是一次性展示页。","status":"PLANNED","scope":["路由 smoke","响应式","可访问性","性能预算","链接检查","回滚演练"],"acceptance":["核心页面和 API 全部 smoke 通过","无 P0/P1 可访问性问题","首页与账本达到性能预算","EC2 部署与回滚路径已回读"]}],"pausedOrArchived":["停止继续扩展 D05-Rxx、Bxx、F05-xx 仪式子刀；已有内容只读归档。","停止用四名独立自然人审批作为当前一人团队的开发前置条件。","停止把 Fixture、模板、断言数量或 AI 审查写成生产能力已完成。","停止一次性铺开 133 张目标 UI；先完成 24 张 P0，再按收益扩展。","停止把长期 D01–D36 产品路线与 Developer Portal 整理进度混为一张账。"]}