51 Commits

Author SHA1 Message Date
agent.develop
467d705576 approve: [M11b-2c-T2-b] 产出 code_files.md 文件清单(实测字节数+行号锚点,禁占位/禁自指尺寸) 2026-09-22 20:40:27 +08:00
agent.develop
779d78cec5 approve: [M9-收口D] 临时捕获件清理 + M9 证据归档落点核对(消 P-7) 2026-09-22 20:36:45 +08:00
agent.develop
eb7c242bb0 approve: 真实 DB 实测 + 三份验收证据落盘(QC #5) 2026-09-22 20:27:59 +08:00
agent.develop
13386a4e87 deliver: 交付收口(引擎代为提交) 2026-09-22 19:51:55 +08:00
agent.develop
da37362628 docs(M11b-2c-T2-a): work-log 正文重写——数据模型/契约接口/陷阱三块齐备 + 实测锚点与验证证据(纯文档,零代码改动) 2026-09-22 19:42:09 +08:00
agent.develop
4c141ac8e4 approve: [M9-收口B] 工作日志归档 + 交付一致性核验(以事实快照为唯一数据源) 2026-09-22 19:40:21 +08:00
agent.develop
68a4aa9f45 approve: [M11b-2d-B] world_sync selftest STATE_COLUMNS 提取器兼容四段式 models/*.json(消 4 FAIL) 2026-09-22 19:29:08 +08:00
agent.develop
dc9e51b6ab deliver: 交付收口(引擎代为提交) 2026-09-22 18:12:59 +08:00
agent.develop
1083c66273 deliver: 交付收口(引擎代为提交) 2026-09-22 17:37:22 +08:00
agent.develop
5e3c48d7da test(M11b-4a): 响应 QC #18 修正 AC3.3 断言口径并新增 AC3.4 如实披露,重跑全量 selftest 留证再生成(32/32 PASS FAILURES=0,真实 time.sleep(3.0) 无打桩)
- scripts/m11b4_selftest.py:365 AC3.3 断言名改为「全链路 e2e P99 ≤ SLO 1000ms」并注明真实判定依据
  (summarize_latency.slo_passed = percentile(e2e_ms,99) <= slo_ms),detail 同时打印
  slo_passed / p99_ms(e2e) / slo_ms / segment_p99_ms,消除「断言名与判定依据不同口径」的自相矛盾行
- scripts/m11b4_selftest.py:374 新增 AC3.4「全链路 e2e P99 如实披露(不作 ≤SLO 判定)」,
  未达标不判 FAIL、达标也不借其粉饰,仅保证 raw.log 同时留下 p99 与 slo 两个原始数
- 实测校正:slo_passed 判的是全链路 e2e 口径(非 segment_p99_ms 广播+消费段口径),
  上一轮 dev-notes 2.3/5.1 的「按 segment 口径判定」表述本身不实,本轮以源码行号+复算结果为准
- 重跑落盘 scripts/m11b4_selftest_output.txt + scripts/m11b4_latency_report.json
  (run_at=2026-09-22 17:29:57 +0800,samples=200,P50/P90/P99/max=0.743/0.815/0.929/0.983ms,verdict=PASS)
2026-09-22 17:30:18 +08:00
agent.develop
6532d8f714 fix(selftest): M11b-2d-B STATE_COLUMNS/EVENT_COLUMNS 提取器兼容四段式 models/*.json(三级解析 A字面量/B1运行时import/B2静态回落),补 nocov/order/count 双向契约断言,554 PASS/0 FAIL 2026-09-22 17:19:05 +08:00
agent.develop
c8af5207c8 test(M11b-4a): 重跑 M11b-4 全量 selftest 留证再生成(31/31 PASS FAILURES=0,真实 time.sleep(3.0) 无打桩)+ latency_report run_at=2026-09-22 15:28:53 +0800 samples=200 verdict=PASS 2026-09-22 15:29:58 +08:00
agent.develop
aef48931c1 deliver: 交付收口(引擎代为提交) 2026-09-22 14:50:53 +08:00
agent.develop
7f91a13e0d deliver: 交付收口(引擎代为提交) 2026-09-22 14:02:41 +08:00
agent.develop
aed40d3491 fix(m11b4-4a): SLO_TOLERANCE_MS 提为模块源码常量 + poll_since 返回键口径统一为 count + 重跑留证
- QC #17: SLO_TOLERANCE_MS=500.0 由 scripts/m11b4_selftest.py 本地定义上提为
  world_sync/pbl_runtime_polling.py 模块常量(与 FALLBACK_SLO_MS 同段),
  selftest 改为 import 引用;按三处同步补 __init__.py 导入+__all__ 与
  init.py env.SLO_TOLERANCE_MS / env.SEEN_IDS_IN_SQL 登记
- QC #15/#16: selftest AC5.2 断言改为核验 poll_since 真实返回键 rows/count
  (recovered_count 属 poll_once/run 口径),并显式断言不含 recovered_count
- 重跑全量 selftest(真实 time.sleep(3.0),无打桩):RESULT: PASS FAILURES=0,31/31;
  AC5.1 缺失名 -> [];AC1.4 -> 3000.5ms <= 3500.0ms
- 重新落盘 scripts/m11b4_selftest_output.txt 与 scripts/m11b4_latency_report.json
  (run_at=2026-09-22 13:56:47 +0800,samples=200,含 segment_p99_ms/broadcast_stats/verdict)
- skill/SKILL.md 补两条陷阱:SLO_TOLERANCE_MS 属模块源码常量禁止测试侧重定义;
  poll_since 返回键为 count

不改 M11b-1/2/3 核心逻辑(write_event_with_state / emit_post_commit_broadcast / 表结构索引)
2026-09-22 13:58:28 +08:00
agent.develop
d56f516966 docs(M11b-4): SKILL.md 新增轮询兜底与时延基准节,消除「无轮询」矛盾表述(QC #20) 2026-09-22 13:26:08 +08:00
agent.develop
b3f01f559a approve: [M5a] pbl_evidence 证据采集(依赖 M11b 硬约束) 2026-09-22 13:24:04 +08:00
agent.develop
16b6b1c544 feat(M11b-4): 3s polling fallback + e2e latency verification
- world_sync/__init__.py: 补 explain_poll_query 包级导出(三处同步注册缺项,QC #2)
- world_sync/init.py: env.explain_poll_query 登记
- scripts/m11b4_selftest.py: 修 AC5.2 断言取字段错误;报告 JSON 落盘 scripts/ 留证 + RESULT/FAILURES 收口行
- scripts/m11b4_selftest_output.txt: 重跑实跑输出 31/31 PASS
- scripts/m11b4_latency_report.json: P99 基准报告
2026-09-22 13:13:42 +08:00
agent.develop
00f64c4fe3 approve: [M9-i18n] loader 运行时 i18n 链路 + i18n RBAC 注册 2026-09-22 13:11:20 +08:00
agent.develop
099bb943f3 approve: [M9-gitignore] 生成产物入库声明与仓库事实一致性 2026-09-22 12:53:02 +08:00
agent.develop
1bfc30276a deliver: 交付收口(引擎代为提交) 2026-09-22 12:07:05 +08:00
agent.develop
bb92f520fa approve: [M11b-2c-B] 补 dev-notes-m11b2c 文档 + RBAC/路径声明 + git 收口 2026-09-22 12:06:17 +08:00
agent.develop
9a74fe5e66 approve: [M9] scense/scense_game 前端覆盖层与Play 2026-09-22 12:03:46 +08:00
agent.develop
c1bce932e2 deliver: 交付收口(引擎代为提交) 2026-09-22 11:50:57 +08:00
agent.develop
fc0ac8118a deliver: 交付收口(引擎代为提交) 2026-09-22 11:49:28 +08:00
agent.develop
b546d4bf6f deliver: 交付收口(引擎代为提交) 2026-09-21 13:33:56 +08:00
agent.develop
a4c91c869e deliver: 交付收口(引擎代为提交) 2026-09-21 13:25:24 +08:00
agent.develop
a20287a10a approve: [M11b] scense_runtime 单事务事件+状态写入与广播 2026-09-21 11:17:10 +08:00
agent.develop
27a0aa17db deliver: 交付收口(引擎代为提交) 2026-09-20 20:50:51 +08:00
agent.develop
f9a9162312 deliver: 交付收口(引擎代为提交) 2026-09-20 20:40:17 +08:00
agent.develop
ff5f881d51 deliver: 交付收口(引擎代为提交) 2026-09-20 20:29:07 +08:00
agent.develop
fc359f8dc5 deliver: 交付收口(引擎代为提交) 2026-09-20 19:55:41 +08:00
agent.develop
f9c91ee724 deliver: 交付收口(引擎代为提交) 2026-09-20 19:34:32 +08:00
agent.develop
c66868cbd3 deliver: 交付收口(引擎代为提交) 2026-09-20 19:24:09 +08:00
agent.develop
aff1f0da0c M11b-2a: resolve root-package spec compliance (rev2: tighten packaging surface, record real import evidence)
- pyproject.toml: [tool.setuptools.packages.find] where=[.] include=[world_sync*]
  namespaces=false — 把「仓库根从不作为包」固化为配置约束,杜绝双路径歧义回归。
- 承接 9f97d58(删除仓库根 157 行转发 __init__.py)。
- 实测更正:sys.path=modules/(模块父目录)场景  在删除前(01941aa 沙箱)与删除后同样 ImportError(解析到 init/ 目录),
  非本次删除引入的回归;宿主真实解析路径为 venv editable finder → pkgs 副本内层包,实测 OK。
  证据见 projects/pbls/docs/02-develop/m11b2a-1-root-package-disposition.md §4(rev2)。
2026-09-20 19:12:05 +08:00
agent.develop
95b405fd25 deliver: 交付收口(引擎代为提交) 2026-09-20 18:32:45 +08:00
agent.develop
9f97d58dba M11b-2a: resolve root-package spec compliance (drop repo-root __init__.py forwarding package)
QC #3: modules/world_sync/__init__.py made the module REPO ROOT a Python package,
violating module-development-spec (mymodule/ = repo root, mymodule/mymodule/ = package).
Host wiring verified to resolve to the INNER package, so the root forwarding table is
dead weight:
  - apps/scense/app/scense.py:50  from world_sync.init import load_world_sync
  - apps/yuanjing/app/yuanjing.py:66  __import__(f'{module}.init', ...)
Both parse world_sync/init.py with sys.path=<repo root>; neither uses the root package.

Re-verified after deletion: py_compile OK for all .py; import closure 0-broken from both
sys.path=modules/ and sys.path=modules/world_sync/ (import world_sync /
from world_sync.init import load_world_sync / 4 contract APIs; __all__ len=62 MISSING=[]).
pyproject packages.find needs no tightening: with the root package gone,
where=['.'] include=['world_sync*'] discovers exactly one package.

Unrelated pre-existing WIP scripts/validate_models_json.py (M11b-2b-A) intentionally
excluded from this commit via pathspec.
2026-09-20 18:31:16 +08:00
agent.develop
01941aa1bd deliver: 交付收口(引擎代为提交) 2026-09-20 18:20:33 +08:00
agent.develop
3f0ee54c1c deliver: 交付收口(引擎代为提交) 2026-09-20 18:20:03 +08:00
agent.develop
2ee0d74dad deliver: 交付收口(引擎代为提交) 2026-09-20 18:04:29 +08:00
agent.develop
b514c1bdd9 deliver: 交付收口(引擎代为提交) 2026-09-20 17:59:38 +08:00
agent.develop
cf9baea7e9 deliver: 交付收口(引擎代为提交) 2026-09-20 17:50:28 +08:00
agent.develop
40672e1115 deliver: 交付收口(引擎代为提交) 2026-09-20 17:16:46 +08:00
agent.develop
882a1b5cd3 deliver: 交付收口(引擎代为提交) 2026-09-20 16:39:12 +08:00
agent.develop
aca3e3117a deliver: 交付收口(引擎代为提交) 2026-09-20 16:09:34 +08:00
pipeline-agent
7da0c0c3ad fix: 回填目标机现场好代码——远端main残缺/空导致部署后模块不可用 2026-08-30 13:26:15 +08:00
agent.develop
2536712f21 approve: world_sync 模块开发(W-05 同步管理) 2026-08-29 16:35:06 +08:00
agent.develop
bc103d9309 approve: world_snapshot 模块开发(W-04 快照管理) 2026-08-29 16:22:08 +08:00
agent.develop
df80be65f6 approve: 测试执行 - world 世界管理模块 2026-08-29 12:44:26 +08:00
agent.develop
8f2410899a fix(world_sync): 补 json/build.sh(四步安装②);删除占位符假 models 文件 2026-08-28 14:51:03 +08:00