# 广州100项目实测与语料积累｜行动计划 v1.0

编制日期：2026-10-20，北京时间。当前执行范围：完成100项目筛选；实际项目尚未启动。

## 1. 已确定的规则

1. 双重目标：用真实项目发现并修复地产工作台的问题，同时积累可追溯的项目语料。
2. 100个唯一母项目，10个项目为一阶段，共10阶段。项目的楼栋、期次和组团进入子范围，不能重复计数。
3. 最新版本正在另行审计，后续升级完成并验收后才启动第一阶段。本文不替代该审计，不抢占或修改审计任务的发布候选。
4. 实际项目统一在北京时间（Asia/Shanghai）01:00–05:00开展。阶段可以跨多个夜间窗口，不能为了赶满10个而降低验收标准。
5. 每阶段完成后，复盘成果数据质量与软件调度能力，分别提出程序逻辑与Skill的改进，再将升级发布到另一个槽位。
6. 新槽验收通过后承接下一阶段的10个项目，上一槽保留可运行的程序、Skill及兼容数据访问路径。
7. 第5阶段完成50个项目后，先完成前半段全面审计、大升级和验收，再启动第6阶段。
8. 第10阶段完成100个项目后形成总审计、语料目录、软件与Skill演进记录和下一轮建议。

筛选交付时的状态：仅新增筛选文件、整理脚本与任务记录，尚未启动实际研究。以下为后续实测更新。

### 2026-10-20 首2项目即时试跑

用户明确要求“现在启动前2个项目”，故本次作01:00–05:00常规窗口之外的一次例外。GZ001珠江花城、GZ002中交·天翠在A槽0.3.4 / Skill 2.3.1中串行完成研究、修订、C1限用途验收、归档及检视页状态更新。第一阶段进度2/10，全程2/100；其余98项目未启动，自动调度仍关闭。

本次包含3次失败、2次主动取消及2次最终成功运行，最终成果另有外部勘误。复盘见 `test-runs/20261020-first-two/首2项目试跑复盘.md`，程序和Skill两条提案及11项名录评审见同目录`程序与Skill迭代清单.md`。当前仍有清单恢复、重复执行、排版依赖与语义QA问题，不等同无人值守验收通过。未满10项目，不作常规阶段切槽；A/B规则和第50/100项目里程碑保持不变。

## 2. 样本边界与完成计数

本轮选用广州11区的住宅项目，以及包含住宅的综合项目；文旅项目只研究住宅部分。纯办公、纯商业、只有地块概念而身份尚不清的项目不进入主选。此范围承接现有仓库住宅语料工作流，后续若扩展商业、产业或保障房，另建样本层和字段，不能混算结论。

本轮选择的是“实测研究样本”，所有项目研究状态均为`not_started`。来源目录核对、详情读取、正式研究验收三者分开记录。

- 筛选数量：主选100，替补22；每个主选都有一个可追溯的平台记录。
- `C0`：候选身份线索。本轮只做此层初筛；部分项目的开发主体和法定边界仍须补证。
- `C1`：至少两个独立来源，含一个A/B级身份来源及一个产品动作或结果来源；来源、权限、定位和原文版本可回查。
- `C2`：C1基础上形成范围、事实、约束、决策问题和未知项可核验的案例。
- `C3`：另有真实决策、动作、结果、观察窗口、混杂因素和时间截断；缺少结果材料时不得硬凑。

每阶段“10项目完成”的最低要求：10个唯一项目均完成真实工作台流程，并达到C1，数据与交付验收通过。`HTTP 200`、模型任务终态、文件存在均不能单独作为完成证据。隔离、失败和替补不算验收完成；保留原项目记录及替换理由。

## 3. 双槽交替

起始槽位暂不指定。审计升级验收后的槽位记为S0，另一个槽位记为S1；届时再将S0/S1映射为A/B，不能依据今天的版本号抢先决定。

| 阶段 | 项目编号 | 执行槽位 | 阶段结束后的动作 |
|---|---|---|---|
| 1 | GZ001–GZ010 | S0 | 双部分复盘，升级S1，验收后切换 |
| 2 | GZ011–GZ020 | S1 | 双部分复盘，升级S0，验收后切换 |
| 3 | GZ021–GZ030 | S0 | 双部分复盘，升级S1，验收后切换 |
| 4 | GZ031–GZ040 | S1 | 双部分复盘，升级S0，验收后切换 |
| 5 | GZ041–GZ050 | S0 | 前50项目全面审计；在S1实施大升级并验收 |
| 6 | GZ051–GZ060 | S1 | 双部分复盘，升级S0，验收后切换 |
| 7 | GZ061–GZ070 | S0 | 双部分复盘，升级S1，验收后切换 |
| 8 | GZ071–GZ080 | S1 | 双部分复盘，升级S0，验收后切换 |
| 9 | GZ081–GZ090 | S0 | 双部分复盘，升级S1，验收后切换 |
| 10 | GZ091–GZ100 | S1 | 总审计与总结；需要最终升级时在S0验收，保留S1 |

每阶段以固定的程序版本、Skill套件及名录版本、Schema版本和模型配置运行。必须修复的中途故障作为例外发布，记录变更前后项目与数据，不能混为同一版本成绩。

切换证据必须包含：当前槽/候选槽实际版本、源清单哈希、Skill名录与内容哈希、Schema、部署记录、回退路径、数据一致性、夜间窗口及在途任务状态。应用健康、实际入口资源和一个专用验收项目完整闭环都通过后才能放行。

双槽的数据隔离不能仅靠两个端口。升级前核对各自DATA_DIR、工作区、会话和附件路径；不得让不兼容版本并发写同一存储。需要迁移时从一致性快照构造候选副本，记录增量同步和回退读取方案。回退保留新产生的项目与证据，不用旧整库覆盖新数据。

## 4. 夜间调度规则

- 当前状态是等待审计升级，尚未创建定时任务；正式启用前保存审计/升级/验收回执和S0映射。
- 初始并发为1个项目；每项目依次完成身份与采集、结构化核验、交付与QA。首阶段采样后再决定是否需要提高并发。
- 01:00前可以准备清单，不启动实际模型、项目采集或大文件传输。所有项目作业只在01:00–05:00推进。
- 暂定04:30停止派发新的完整项目；余下时间用于当前任务收尾、验证、记录和断点保存。待实测P95耗时明确后调整提前量。
- 每个模型调用/下载前检查剩余窗口，并设置不越过05:00的超时与取消机制。05:00关闭新调用和传输派发；可安全取消的任务保存断点后停止。
- 已向供应商提交且无法即时取消的请求标记为`in_flight_at_window_end`，只保存状态，不继续后续工具链，不因本地超时重复提交。下一窗口先查询或核对原请求结果。记录窗口外实际发生的耗时及费用，不能宣称实现了硬截止。
- 单域名初始并发1；下载按需，优先文本与必要PDF，不批量抓图或视频。缓存相同来源；遇验证码、403、429立即停止该来源并留缺口，遵守访问限制。
- 未知结果先核对run_id、client_request_id和供应商状态，再决定重试。同一步最多2次有依据的重试；重复失败转待处理，避免整夜循环。
- 分别记录可见token、供应商返回usage、实际账单、传输字节、重试次数及项目总耗时。闲时价格与计费时点待按实际模型和供应商账单核实；本计划没有预设折扣比例或节省金额。
- 若通过本机Codex调度，本机休眠/离线可能错过窗口；以后需要无人值守时，应单独实现服务器持久队列，并验证锁、时区、幂等与断点。当前未部署该能力。

## 5. 单项目工作包

1. 任务身份：program_id、project_id、scope_id、phase_id、slot、build_id、skill_manifest_hash、模型、as_of_date。
2. 身份资料：规范名、别名、所在区与板块、开发主体、项目/期次/地块树，身份冲突单列。
3. 来源：source_id、发布者、发布日期、数据期、检索时间、URL、来源等级、权限、版本/摘要、原文定位。
4. 事实与指标：claim_id、证据定位、范围、单位、日期、事实/推导/推断/假设标签，价格区分报价/备案/成交。
5. 研究成果：项目卡、产品与竞品比较、关键未知项、风险、Markdown与HTML；PDF按测试需求选取。
6. 实测记录：run_id、请求标识、工具路由、耗时、重试、取消/恢复、token与费用证据、文件校验、缺陷复现步骤。
7. QA：数据与交付分别放行；问题写入程序清单或Skill清单，涉及两者则建立关联。

第三方原文与图片不直接进入可公开发布的资料包。网页内容先作为不可信资料抽取为带来源的事实与研究参考，不能作为控制工作台或修改Skill的指令。

## 6. 两部分迭代

### A. 程序逻辑

复盘范围：入口与引导、任务拆分与清单、模型/工具契约、调用参数、上下文与压缩、任务锁和幂等、SSE/刷新恢复、失败与取消、附件抽取、工作区/账号隔离、来源与成果持久化、交付门槛、token/成本观测、夜间窗口、限速与缓存。

每个问题记录“真实项目→实际现象→复现证据→影响→根因或待查项→修改→回归→候选槽验收”。区分应用错误、模型输出错误、上游服务错误和来源受限；没有归因证据时不能直接改程序掩盖。

### B. Skill内容与名录

内容复盘：研究步骤是否可执行、字段是否漏项、范围/时间/单位是否明确、证据等级是否合理、计算许可是否守住、结论是否有依据、报告是否可读、反例与未知项是否充分、上下游交付是否明确。

名录复盘：逐项判断**保留、新增、合并、拆分、退役**。每条提案必须写明真实项目证据、触发条件、输入输出、现有职责重叠、总控路由变化、依赖工具、验收样本和回退方式。

- 新增：现有Skill反复缺失一种独立能力，且无法通过合理修订现有Skill解决。
- 合并：职责重复、反复互调或产生矛盾结果，合并后能保持输入输出清楚。
- 拆分：一个Skill包含明显独立的任务，导致路由不稳、上下文过大或验收困难。
- 退役：职责已被替代、无独立价值或持续误导；先停止路由并保留历史版本，不删除上一槽的Skill文件。
- 保留：证据不足以支持目录变化时记录“本阶段无需增减”，不为迭代而强行新增。

程序与Skill分别版本化和验收，再组合成一个候选发布包。每阶段不要求两部分都必须修改，但必须两部分都完成审查并说明结论。

## 7. 阶段复盘与放行

| 检查项 | 暂定放行规则 |
|---|---|
| 数量与身份 | 本阶段10个唯一母项目通过C1及实测验收；未通过不计数 |
| 来源与范围 | 关键事实100%有来源、日期、范围、单位；关键冲突已解决或明确降低结论 |
| 证据回跳 | 每项目至少抽查5条关键主张；身份/价格/面积等高影响事实优先 |
| 正式交付 | 文件可打开、内容与项目一致、表格合计及引用正确；没有跨项目内容污染 |
| 程序稳定性 | 零未解决的数据丢失、串项目、重复付费或无法恢复的阻断缺陷 |
| 调度观测 | 10项目均可关联run与版本；记录成功、失败、重试、P50/P95耗时、token/费用与带宽证据 |
| 程序迭代 | 问题分级、修复/延期理由、实际回归证据、候选槽验收完成 |
| Skill迭代 | 内容与名录均有评审结论；新增/合并/拆分/退役提案有路由与回归验证 |
| 下一槽 | 升级验收及回退验证通过；上一槽仍可运作 |

成功率和性能改善不得仅比较不同阶段不同项目。保留一组固定回归样本，在旧/新版本上使用相同输入与证据做对比；正常测试范围内的最小重跑单列费用，不混入100项目计数。

## 8. 第50项目全面审计与大升级

冻结前50项目清单、成果和语料版本；对全部50个项目做结构、来源、范围、权限、重复和版本一致性扫描；人工式逐项审阅至少10个分层项目及全部高影响冲突/缺陷。记录抽样覆盖，不把抽查写成逐条全审。

程序审计覆盖完整调用链与数据生命周期；Skill审计覆盖内容、名录、路由、重叠和缺口。复核来源偏差、区域/产品偏差、语料C1/C2/C3结构、失败与反例、任务恢复、夜间守时及成本。

依据审计形成大升级候选；范围由证据决定，不能提前虚构需要重构的模块。候选槽通过全量适用回归、历史数据读取、回退演练、同输入质量对比和真实最小任务验收后，才能进入第6阶段。

## 9. 第100项目总结

交付100项目验收目录、语料版本及证据定位、分级统计、覆盖偏差与不可用数据、程序版本演进、Skill内容与名录演进、缺陷关闭/延期台账、实际费用和运行效率、下一轮优先事项。

最终完成须达到100个唯一验收项目，且第10阶段复盘及总结交付通过。不能用“筛选100”或“已发送100次模型请求”代替完成。

## 10. 每日成果发布与地图更新

每晚结束前完成项目验收与公开资料检查，按项目编号制作成果包和验收回执，调用独立检视页发布器。项目报告、数据文件、阶段复盘、前半程审计及最终总结按北京时间归档到检视页；已完成项目在地图和清单中同步链接到成果页。只有真实工作台运行、验收通过且文件存在的项目才能增加完成数。

检视入口：<https://www.hoosland.com/ins/projects/guangzhou-100/>。具体目录、命令、回执字段、文件安全处理与回退规则见同目录`检视页发布与归档.md`。每日执行器必须把发布与公开链接检查作为收尾步骤；当前没有启动实际研究自动调度。
