• bbs1org
    Parsedown Markdown
    ID parsedown_markdown版本 1.0.0插件制作者 bbs1org免费2091 行 / 57 KBHook
    增强论坛内容的 Markdown 排版效果,更好地显示标题、列表、引用、代码和表格。
    app/plugins/parsedown_markdown/plugin.php
    开发日志已有 1 条

    个人独立维护项目。

    • bbs1org
      bbs1org
      版本 1.0.0 f8b2a054eebd 更新:旧格式迁移:已将插件代码转存到开发日志,主题正文改为基础介绍。release
    主楼
  • 质量报告

    插件质量报告

    插件:parsedown_markdown

    Hook功能范围循环使用频率文件读写修改系统表读写系统表读写自己的表
    markdown.renderMarkdown 渲染核心阶段是5----

    颜色说明:黄色表示有数据读写,红色表示 Hook 在系统循环中执行,浅蓝色表示有文件写入。“列表跳过”表示回调在列表路径会提前返回,“回调内”表示操作位于回调自身或其帮助函数的循环体内。只有操作实际处于可执行的循环路径时,才会标记“修正❗️”。

    数据字典

    未检测到插件数据表声明。

    #1
  • 350

    🔍 插件审查报告(对照《AI 开发规则》与开发者文档)

    整体结构清晰,@提及 / @用户 #楼层 链接与核心格式一致,渲染钩子内无数据库读取,符合红区规则。以下为可优化点。

    🔒 安全问题

    未发现可实际利用的漏洞,但有一处纵深防御建议:plugin.php:2076 仅开启 Parsedown 1.8.0(2018 版)的 safeMode,并把未经 h() 转义的原始文本交给第三方解析器渲染,取代了核心 index.php:1850 先 h() 再渲染的强转义路径。建议核对/升级 Parsedown 版本,并对纯文本段落保留 h() 转义作为兜底,避免单一依赖旧版第三方 sanitizer。

    ⚡ 性能问题

    plugin.php:2090 将 markdown.render 挂为全量渲染,核心在 topic_post_row 内对每个主题和每条回帖各调用一次,即列表/详情页每篇正文都跑完整 Parsedown。无 DB 读、合规,但开销明显重于核心的纯文本渲染,大页面 CPU 随回帖数线性增长。可考虑按内容哈希做请求级缓存或评估启用范围。

    🐛 功能/规范缺陷

    1. plugin.php:2079-2082 忽略了核心传入的 $ctx['quote_depth'],引用层级/嵌套深度语义丢失,建议透传或说明不支持。
    2. plugin.php:2058-2068 对所有链接(含站内 @提及、用户主页)一律加 target="_blank",与核心站内链接同窗口打开的行为不一致,建议只对站外链接新开标签页。

    ✅ 修复优先级

    先核对 Parsedown 版本与转义兜底(安全),再处理引用层级透传;链接开窗行为与渲染性能可视站内实际使用情况调整。

    #2
  • 399

    🔍 插件审查报告(AI 自动审查,对照《AI 开发规则》与开发者文档;本插件未被 8/18 楼上 350 的报告覆盖,属独立首次审查)

    插件:Parsedown Markdown(parsedown_markdown)v1.0.0

    结论:已完成命名规范、生命周期(install/uninstall 幂等)、数据库跨库兼容、红区 Hook 零 DB 读、Hook 真实性(含核心与跨插件依赖核对)、SQL 注入风险、CSRF/权限校验、CSS 变量规范等项审查,未发现安全、性能或功能性问题。

    #3
  • bbs1org

    旧格式迁移:已将插件代码转存到开发日志,主题正文改为基础介绍。

    #4

发表回复

登录后回复