Files
MailUI4Agents/biome.jsonc
JianFeeeee 429149e118 chore(format): 撤销误入提交的整体重排,并关闭本仓库的格式化器
# 发生了什么

pi-lens 内置「安全格式化」:它会自动安装 biome 并对**编辑过的文件**跑
`biome format --write`。本机原先没有任何 biome 配置,于是 biome 用它自己的
默认值 —— tab 缩进 + 双引号 —— 把文件整体重写。

我在 19a3161 那次提交里用了 `git add -A`,把这批与功能无关的重排一起扫了进去:
约 7000 行改动散落在 20 个文件上,使那次提交无法审查,还掩盖了
server/internal/handler/permission.go 的一处删行(实为文件末尾空行,无代码丢失)。

# 为什么是「关掉」而不是「配置成我们的风格」

试过把缩进/引号/lineWidth 全部对齐本仓库习惯(biome.json + space/2/single/
lineWidth 120):`biome format --write` 仍然改动 17 个文件。原因是本仓库从未按
biome 的规则排版过 —— 注释按语义换行、数组与调用按可读性手工折行,
这些无法由格式化器还原。也就是说只要格式化器开着,每次编辑都会产生与内容无关的
大面积 diff,把真正的改动埋掉。

因此 biome.jsonc 里 formatter 与 linter 都关闭:本仓库的静态检查由
tsc / go vet / tree-sitter / ast-grep 与各自测试套件承担,不引入会改动无关行的
自动修复。

(pi-lens 这一版把 format 服务的 enabled 硬编码为 true,没有配置开关,
所以只能在仓库侧用 biome 配置让它不动文件;已验证 `biome format --write`
对这些文件零改动。)

# 本提交内容

把 19a3161 里除「有意改动」外的 20 个文件还原到重排前的样子。
19a3161 中真正有意的改动是 deploy/install.sh 的扩展注册与
plugins/pi-mail-bridge/extension/index.ts 新文件,两者原样保留。

验证:Go 全量、三桥插件(320/362/409)、前端 196 全绿;
`biome format --write` 对还原后的文件零改动。
2026-09-11 12:03:51 +08:00

38 lines
1.6 KiB
JSON
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.

{
// 本仓库**不使用** biome 的格式化器,只借它做诊断(且由 pi-lens 统一调度)。
//
// # 为什么显式关闭
//
// pi-lens 内置「安全格式化」,会对编辑过的文件跑
// `biome format --write`(沿 biome 标准向上查找配置)。本机没有任何
// biome 配置时biome 用它自己的默认值:**tab 缩进 + 双引号**。
//
// 本仓库的手工排版与那套默认不兼容:注释按语义换行、数组与调用按可读性
// 手工折行,长注释常超过 100 列。实测把缩进/引号/lineWidth 全部对齐到本仓库
// 习惯之后,`biome format --write` 仍然改动 17 个文件 —— 也就是说只要格式化器
// 开着,每次编辑都会产生与内容无关的大面积 diff把真正的改动埋掉。
//
// 曾经发生过:一次 `git add -A` 把约 7000 行纯重排扫进了功能提交
// 19a3161使那次提交无法审查 —— 还掩盖了一处 Go 文件的删行。
//
// # 因此
//
// - formatter 关闭:保持本仓库既有排版,不再产生重排噪声
// - linter 关闭:`biome lint --write` 会做自动修复,同样会改到与本次改动
// 无关的行;本仓库的静态检查由 pi-lens 的其它 runnertsc / tree-sitter /
// ast-grep / go vet与各自的测试套件承担
//
// 新文件仍应遵守本仓库的既有风格2 空格缩进、单引号)。
"vcs": {
"enabled": true,
"clientKind": "git",
"useIgnoreFile": true
},
"formatter": {
"enabled": false
},
"linter": {
"enabled": false
}
}