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.
world_sync 模块
世界数据同步模块:管理世界(world)数据的导入、导出、合并同步记录,并提供同步契约接口。
功能
- world_sync 表:世界同步记录(同步类型/来源/状态/结果 JSON/同步日期)
- 同步契约接口 api/world_sync.dspy:执行同步并落库
- 同步列表 CRUD 界面 + 发起同步表单
数据表
- world_sync(models/world_sync.json)
依赖
- world(world 表)、appbase(appcodes 字典 sync_type/sync_status)
挂载
from world_sync.init import load_world_sync
load_world_sync()
Description