Files
cms-website/eslint.config.js
T
浅念 21ef37232d test(evidence): 阶段2真实WXR冒烟通过
真实 hesupipe WXR(5,490,399B,SHA-256 与 Plan 1 基线一致)跑 wxr:probe 全链:
计数 18 项对照全过(rows 1047 / terms 451 / unsupported 75 细分一致 / failed 0 /
item 总数 1122);heapUsed max 62.2MiB < 100MiB(setInterval(100ms) 双 max 口径,
全程 167ms 仅 2 样本如实注明);parseMs 含流 IO 等待口径注明。
nicename 锚点核对:在表 taxonomy 706/706 全命中(nicename≡slug,违例 0);
category/post_tag 共 807 引用因 wp:term 表缺该 taxonomy 不可解析——阶段 3 需按
(domain, nicename) 自建缺失 term,不能假设 term 表完备。
eslint.config.js:scripts/*.mjs 显式 node 全局(no-undef 误报)。

Co-Authored-By: Claude Code <noreply@anthropic.com>
2026-10-21 13:25:09 +08:00

48 lines
1.8 KiB
JavaScript
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
// eslint 9 flat config(Task 14):最小保守集——JS/TS recommended + 少量明显增益规则。
// 原则:不做风格警察;现有代码若对某规则大面积误报则降级该规则,而非批量改代码。
import eslint from '@eslint/js'
import tseslint from 'typescript-eslint'
export default tseslint.config(
// 依赖与构建产物不参与 lint
{ ignores: ['**/node_modules/**', '**/dist/**', 'coverage/**', '.artifacts/**'] },
eslint.configs.recommended,
...tseslint.configs.recommended,
{
rules: {
// 未用变量报错,但允许下划线前缀显式豁免(测试/签名对齐常见)
'@typescript-eslint/no-unused-vars': [
'error',
{ argsIgnorePattern: '^_', varsIgnorePattern: '^_', caughtErrorsIgnorePattern: '^_' },
],
},
},
{
// 测试代码放宽 no-explicit-any:夹具行插入用 `as any` 表达"部分列 + 任意宽松形状"、
// catch (e: any) 取 postgres.js 错误细节,均为有意为之(49 处违例集中于此)。
// 生产代码(src/)保持该规则严格。
files: ['tests/**/*.ts', '**/test/**/*.ts'],
rules: {
'@typescript-eslint/no-explicit-any': 'off',
},
},
{
// Node 直跑的 .mjs 工具脚本(如 scripts/smoke-real-wxr.mjs):no-undef 对 TS 文件
// 由 TS 接管而关闭,但 .mjs 仍生效且无 node 全局——此处显式声明 node 全局,
// 否则 process/setInterval 等误报 no-undef。
files: ['scripts/**/*.mjs'],
languageOptions: {
globals: {
process: 'readonly',
setInterval: 'readonly',
clearInterval: 'readonly',
setTimeout: 'readonly',
clearTimeout: 'readonly',
console: 'readonly',
performance: 'readonly',
Buffer: 'readonly',
},
},
},
)