# pbl_scense_ext PBL 覆盖层前端扩展模块(scense / scense_game 之上的 pbl_scense_ext 覆盖层与页面注册,M9)。 ## 生成产物与入库边界 - `wwwroot/pbl_overlay/*.ui`(12 个覆盖层页面壳)是**构建产物,不入库**:仓库根 `.gitignore` 以条目 `wwwroot/pbl_overlay/` 排除该目录,由 `apps/pbls/build.sh` 第 9 步调用 `python3 scripts/gen_overlay_pages.py` 重新生成 (module-development-spec「CRUD-Generated wwwroot Directories Must Not Be Git-Tracked」)。 - 入库的交付物是**生成器与事实源**:`scripts/gen_overlay_pages.py`(生成器)、 `wwwroot/i18n/{zh,en}/msg.txt`(界面文案事实源)、`wwwroot/overlay/*.js|*.css` (覆盖层实现)、`scripts/load_path.py`(RBAC 路径登记)。 - 一致性自检(两条都必须成立): ```bash git check-ignore -v wwwroot/pbl_overlay/home.ui # 命中 .gitignore 的 wwwroot/pbl_overlay/ git ls-files wwwroot/pbl_overlay # 空输出(无任何跟踪文件) ``` - 新增/删除页面壳:改 `gen_overlay_pages.py` 的 `PAGES` 注册表 + `wwwroot/overlay/pbl_overlay_core.js` 的 `PAGES` + `scripts/load_path.py` 的 `OVERLAY_PAGES` 三处同源,再跑 `python3 scripts/gen_overlay_pages.py --check`(rc=0 才算通过)。