直接把插件和以下内容发给AI,让他更新就可以了:
行数已变化(index.php 3492 行)。继续获取剩余的 hook/fire 调用点及其他校验数据:
-
发现新增表app_topics_del。现在读取关键区段核对删除逻辑、楼层数据与引导段:
-
核对del()的with_replies调用点及其它删除入口:
-
核对hook_registry()内部与plugins()行号:
正在更新 Hook 表(第 2.2 节):
接下来是 topic/reply 生命周期表(包含 v9.1 的删除功能变更)以及 index/search 表:
现在是 2.5 data-slot 表格行号:
接下来是数据库章节(4.3)和 API 表格(6.3):
最后全文扫描一遍剩余行号引用,确认无遗漏:
核对结果与修改摘要如下:核对结论(v9.1,
index.php3388→3492 行)1. 文档→源码(Hook 清单与行号)
- 全量 grep
hook()/fire()调用点:核心钩子仍为 80 个,无新增、无移除,全部签名一致;约 45 处行号因代码插入偏移(+1 或 +100~300)已逐一更新。 hook_registry()L660-674、hook()L675-687、fire()L688-691、plugin_route()L692、plugin_call()L554、plugin_load()L543、plugin_entry_definitions()L606、svg_icon()L1718、常量表 L9-33(24 个)均未变。
2. 源码→文档(新增内容补录,对应上游变更点)
del()签名变化:del(string $table, int $id, bool $with_replies = false);主题删除经save_topic的delete_topic动作以with_replies=true连带硬删除全部回帖。content.before_delete调用点:1 处→4 处(L2673、L2683 主题连带回帖循环、L2690、L3192reply_edit_page do=delete);topic.before_delete(L2689)触发时回帖已删,已加说明。- 新增占位表
app_topics_del(id, topic_id, reply_id, created_at)+ 2 个索引idx_topics_del_topic/idx_topics_del_reply;表数 11→12、索引 17→19。 - 楼层数据:
topic.replies钩子的回帖数组每项新增reply_floor;topic/reply.content_afterctx 新增reply_position;楼层计算函数apply_reply_floors()/reply_position_floor()/topic_floor_index()/floor_live_position()已补入 6.3 API 速查。 - 删除通知:
content_delete_notify()(L2577)发delete类型通知,已在新增的「删除行为(v9.1)」小节说明。 - 引导段、CLI 入口、
admin.tabs、登录/注册/资料/列表/详情/搜索全部 Hook 及 2.5 data-slot 表行号同步更新;头部实测行数更新(Setup.php 1586、index.js 803、PLUGIN.md 362)并标注核心版本 v9.1(app/version.php)。
3. 对照新版 PLUGIN.md
- 新版 PLUGIN.md的 data-slot 表、entries 表、Hook 语义、核心 API 清单一致,无冲突;其 cron interval 示例改用无参函数,与核心「两参调用、PHP 忽略多余实参」的实现不矛盾(以代码实测为准)。
未改动任何未变化的内容(红区规则、占位符规范、生命周期流程、Plugin.php/Cron.php 全部行号引用经核对仍然准确)。
主楼- 全量 grep