[ { "file": "client/harmony/entry/src/main/ets/common/BackgroundPicker.ets", "pat": "if \\(!shouldRetryWithActual\\(usedBytes\\)\\) \\{\n\\s*break;", "repl": "if (true) {\n break;", "test": "prep", "why": "永远只压第一档(不看真实字节数)", "retired": "重锚后见 jobs2.json / jobs-all.json 的 `!overLimit` 那条(已跑已红)" }, { "file": "client/harmony/entry/src/main/ets/common/BackgroundPicker.ets", "pat": "if \\(packed === null \\|\\| shouldRetryWithActual\\(usedBytes\\)\\)", "repl": "if (packed === null)", "test": "prep", "why": "两档都超限时不拒绝(把超限图直传成 413)", "retired": "重锚后见 jobs2.json 的 `packed === null || overLimit`(已跑已红)" }, { "file": "client/harmony/entry/src/main/ets/common/BackgroundPicker.ets", "pat": "await packer\\.release\\(\\);", "repl": "packer.release();", "test": "prep", "why": "ImagePacker.release 不 await" }, { "file": "client/harmony/entry/src/main/ets/common/BackgroundPicker.ets", "pat": "await head\\.release\\(\\);", "repl": "head.release();", "test": "prep", "why": "head.release 不 await" }, { "file": "client/harmony/entry/src/main/ets/api/ApiClient.ets", "pat": "name: 'file',", "repl": "name: 'image',", "test": "prep", "why": "multipart 字段名不是 file", "retired": "同一条在 jobs-one.json 里有切片后的精确锚点(已跑已红)" }, { "file": "client/harmony/entry/src/main/ets/api/ApiClient.ets", "pat": "data: data", "repl": "data: ''", "test": "prep", "why": "内存字节没放进 data(改走 filePath 那条不存在的路)" }, { "file": "client/harmony/entry/src/main/ets/common/BackgroundPicker.ets", "pat": "desiredSize: \\{ width: size\\.width, height: size\\.height \\}", "repl": "desiredSize: { width: info.size.width, height: info.size.height }", "test": "prep", "why": "不按目标尺寸解码(4K 图整图解码,低端机爆内存)" } ]