SuperAPI AI 工具集

typo3-conformance

编程与开发

查看项目

更新于 10-15 21:10

技能介绍

用途:评估 TYPO3 扩展是否符合 TYPO3 编码规范、架构模式与最佳实践,适用于扩展质量与 TER 就绪度检查、生成评分式一致性报告,以及 v12/v13/v14 现代化评估(v14.3 LTS 为默认金标准)。仅针对扩展;站点/项目仓库(type: project + Compose)应使用 typo3-14-gold/tools/conformance 评分。

主要能力:工作流从 Step 0 读取 ext_emconf.php 与 composer.json 获取版本、类型、范围,随后执行 11 类检查:元数据(key、TYPO3 版本、type)、结构(composer.json、ext_emconf.php、Classes/、Configuration/、Resources/)、编码(strict_types、PSR-12、PHP 8.4 显式可空、PHP 8.5 float-to-int)、禁止项(不用 $GLOBALS、服务不用 GeneralUtility::makeInstance())、架构(构造器 DI、Services.yaml、PSR-14 事件含 try/catch、PSR-3 日志 LoggerAware+NullLogger、工厂回退)、后端(ES6、Modal API、CSRF、v13+ CSP)、测试(PHPUnit、Playwright E2E、覆盖率 >70%)、实践(DDEV、runTests.sh、CI/CD)、TER(发布流程、上传注释)、审计(PHPStan baseline、TCA searchFields、XLIFF、cache has()+get()、查询属性、多版本适配器)以及 v14 就绪度(无 ext_tables.php/HashService/魔法查找器、Fluid VH 严格、XLF 两空格缩进)。Step 12 在修复后重跑并记录分数变化。

使用方式:提供快速 grep 配方,例如 grep -rL 'strict_types' Classes/ --include='.php'、grep -rn '$GLOBALS' Classes/ --include='.php'、grep -rn 'GeneralUtility::makeInstance' Classes/ --include='.php'、grep -rn '->has(' Classes/ --include='.php'、[ -f ext_tables.php ] && echo "WARN: ext_tables.php deprecated (#109438)" 等。评分基础 0-100:架构 20 + 指南 20 + PHP 20 + 测试 20 + 实践 20,卓越加分最多 22,关键问题直接阻断。等级:90+ 优秀(生产/TER 就绪)、80-89 良好(小修)、70-79 可接受(发布前修复)、50-69 需改进(较大工作量)、<50 严重(阻止部署)。

限制与委托:若请求是把扩展升级到更新 TYPO3 版本,应交给 typo3-extension-upgrade 并停止,本技能只做现状审计,审计不等于升级,放宽版本约束也不等于升级。测试委托 typo3-testing,文档委托 typo3-docs,OpenSSF 委托 enterprise-readiness,发布/TER 委托 github-release。参考资料见 references/ 下架构与代码、验证、多版本、实践与后端等文档,资产模板位于 assets/Build/(PHPStan、PHP-CS-Fixer、Rector、ESLint、Stylelint、TypoScript lint)。