chore(清理): 删除死代码与过期文件——7个无引用DTO+图片工作台整棵子树(16文件)+冗余副本+一次性脚本+可再生审计快照
每项删除前均做过全仓库引用核对(含 tests/、两个前端、Python 侧):
- Java 7 个 DTO:BrandTaskRunRequest、LegacyBrandTaskCreateVo、Ziniao{SwitchShopRequest,CurrentShopVo,LoginUrlVo,SwitchShopVo}、
AppearancePatentParsedGroupManifestDto —— 全仓库仅命中声明行本身
- frontend-vue 整棵 src/pages/image/(16 文件):9a487ae9 起首页一级入口已删("图片已并入视频页"),
该子树完全自闭环;同步移除 /image 路由与 ImageVideoPage 的图片入口
- frontend-vue 两个孤儿组件 AiModuleSwitch/AiWorkflowShell:无引用,且位于 src/shared/components
而非 unplugin-vue-components 默认扫描的 src/components,不存在自动注册
- backend/tool/devices.py + .device_id:app_client/tool/devices.py 的冗余副本(活的是 app_client 那份),
app.py 只注册 version_bp,无任何引用
- admin-frontend-vue 的一次性 Playwright 调试脚本 rescan.tmp.mjs / diag-role-price.mjs
- backend-java/scripts/*_report.json ×4:可由 n1_scan.py 等重跑的审计快照
- frontend-vue/DESIGN.md:Last refreshed 2026-06-09,仍是 MPA 时代内容
- backend/requirement.txt:pip freeze 63 条裁剪为实际 import 的 5 条;run.sh 硬依赖该文件存在,故保留文件本身
验证:mvn compile 通过、vue-tsc --noEmit 通过、残留引用 grep 零命中。
注:仓库既有的 4 个失败测试类(FlywayMigration*DocTest、MigrationInventoryTest、HttpClientTimeoutEffectiveTest)
经 stash 对照实验确认与本次改动无关(相同 Failures/Errors 计数)。
This commit is contained in:
File diff suppressed because it is too large
Load Diff
@@ -1,317 +0,0 @@
|
||||
{
|
||||
"scanned_files": 640,
|
||||
"modules": [
|
||||
"admin",
|
||||
"appearancepatent",
|
||||
"auth",
|
||||
"brand",
|
||||
"collectdata",
|
||||
"convert",
|
||||
"debug",
|
||||
"dedupe",
|
||||
"deletebrand",
|
||||
"digitalhuman",
|
||||
"file",
|
||||
"filetemplate",
|
||||
"imagehistory",
|
||||
"imagevideo",
|
||||
"invalidasin",
|
||||
"patroldelete",
|
||||
"permission",
|
||||
"pricetrack",
|
||||
"productcategory",
|
||||
"productrisk",
|
||||
"publish",
|
||||
"queryasin",
|
||||
"shopdatacrawl",
|
||||
"shopkey",
|
||||
"shopmatch",
|
||||
"similarasin",
|
||||
"split",
|
||||
"task",
|
||||
"withdraw",
|
||||
"ziniao"
|
||||
],
|
||||
"findings": [
|
||||
{
|
||||
"file": "deletebrand\\service\\DeleteBrandStaleTaskService.java",
|
||||
"line": 209,
|
||||
"statement": "FileTaskEntity refreshed = fileTaskMapper.selectById(task.getId());",
|
||||
"loop_type": "for",
|
||||
"impact": "HIGH",
|
||||
"module": "deletebrand"
|
||||
},
|
||||
{
|
||||
"file": "pricetrack\\service\\PriceTrackTaskService.java",
|
||||
"line": 354,
|
||||
"statement": "FileResultEntity lockedResult = fileResultMapper.selectById(fr.getId());",
|
||||
"loop_type": "for",
|
||||
"impact": "HIGH",
|
||||
"module": "pricetrack"
|
||||
},
|
||||
{
|
||||
"file": "productrisk\\service\\ProductRiskTaskService.java",
|
||||
"line": 339,
|
||||
"statement": "FileResultEntity lockedResult = fileResultMapper.selectById(fr.getId());",
|
||||
"loop_type": "for",
|
||||
"impact": "HIGH",
|
||||
"module": "productrisk"
|
||||
},
|
||||
{
|
||||
"file": "task\\service\\TaskFileJobService.java",
|
||||
"line": 282,
|
||||
"statement": "publishDispatchEvent(taskFileJobMapper.selectById(job.getId()));",
|
||||
"loop_type": "for",
|
||||
"impact": "HIGH",
|
||||
"module": "task"
|
||||
},
|
||||
{
|
||||
"file": "task\\service\\TaskFileJobService.java",
|
||||
"line": 303,
|
||||
"statement": "TaskFileJobEntity exhausted = taskFileJobMapper.selectById(job.getId());",
|
||||
"loop_type": "for",
|
||||
"impact": "HIGH",
|
||||
"module": "task"
|
||||
},
|
||||
{
|
||||
"file": "task\\service\\TaskFileJobService.java",
|
||||
"line": 315,
|
||||
"statement": "publishDispatchEvent(taskFileJobMapper.selectById(job.getId()));",
|
||||
"loop_type": "for",
|
||||
"impact": "HIGH",
|
||||
"module": "task"
|
||||
},
|
||||
{
|
||||
"file": "appearancepatent\\service\\AppearancePatentTaskService.java",
|
||||
"line": 1094,
|
||||
"statement": "TaskChunkEntity chunk = taskChunkMapper.selectOne(new LambdaQueryWrapper<TaskChunkEntity>()",
|
||||
"loop_type": "for",
|
||||
"impact": "LOW",
|
||||
"module": "appearancepatent"
|
||||
},
|
||||
{
|
||||
"file": "appearancepatent\\service\\AppearancePatentTaskService.java",
|
||||
"line": 2112,
|
||||
"statement": "List<TaskChunkEntity> page = taskChunkMapper.selectList(query);",
|
||||
"loop_type": "while",
|
||||
"impact": "LOW",
|
||||
"module": "appearancepatent"
|
||||
},
|
||||
{
|
||||
"file": "dedupe\\service\\DedupeTotalDataService.java",
|
||||
"line": 279,
|
||||
"statement": "List<DedupeTotalDataEntity> rows = dedupeTotalDataMapper.selectList(",
|
||||
"loop_type": "while",
|
||||
"impact": "LOW",
|
||||
"module": "dedupe"
|
||||
},
|
||||
{
|
||||
"file": "deletebrand\\service\\DeleteBrandRunService.java",
|
||||
"line": 1234,
|
||||
"statement": "tasks.addAll(fileTaskMapper.selectList(new LambdaQueryWrapper<FileTaskEntity>()",
|
||||
"loop_type": "for",
|
||||
"impact": "LOW",
|
||||
"module": "deletebrand"
|
||||
},
|
||||
{
|
||||
"file": "deletebrand\\service\\DeleteBrandRunService.java",
|
||||
"line": 1252,
|
||||
"statement": "rows.addAll(fileResultMapper.selectList(historyResultQuery()",
|
||||
"loop_type": "for",
|
||||
"impact": "LOW",
|
||||
"module": "deletebrand"
|
||||
},
|
||||
{
|
||||
"file": "deletebrand\\service\\DeleteBrandRunService.java",
|
||||
"line": 1268,
|
||||
"statement": "List<FileResultEntity> rows = fileResultMapper.selectList(historyResultQuery()",
|
||||
"loop_type": "for",
|
||||
"impact": "LOW",
|
||||
"module": "deletebrand"
|
||||
},
|
||||
{
|
||||
"file": "patroldelete\\service\\PatrolDeleteTaskService.java",
|
||||
"line": 638,
|
||||
"statement": "List<FileTaskEntity> tasks = fileTaskMapper.selectList(new LambdaQueryWrapper<FileTaskEntity>()",
|
||||
"loop_type": "for",
|
||||
"impact": "LOW",
|
||||
"module": "patroldelete"
|
||||
},
|
||||
{
|
||||
"file": "permission\\service\\PermissionMenuService.java",
|
||||
"line": 676,
|
||||
"statement": "cursor = permissionMenuMapper.selectById(ancestorId);",
|
||||
"loop_type": "while",
|
||||
"impact": "LOW",
|
||||
"module": "permission"
|
||||
},
|
||||
{
|
||||
"file": "pricetrack\\service\\PriceTrackTaskService.java",
|
||||
"line": 153,
|
||||
"statement": "tasks.addAll(fileTaskMapper.selectList(new LambdaQueryWrapper<FileTaskEntity>()",
|
||||
"loop_type": "for",
|
||||
"impact": "LOW",
|
||||
"module": "pricetrack"
|
||||
},
|
||||
{
|
||||
"file": "pricetrack\\service\\PriceTrackTaskService.java",
|
||||
"line": 418,
|
||||
"statement": "List<FileTaskEntity> tasks = fileTaskMapper.selectList(new LambdaQueryWrapper<FileTaskEntity>()",
|
||||
"loop_type": "for",
|
||||
"impact": "LOW",
|
||||
"module": "pricetrack"
|
||||
},
|
||||
{
|
||||
"file": "productcategory\\service\\ProductCategoryService.java",
|
||||
"line": 465,
|
||||
"statement": "ProductCategoryEntity parent = productCategoryMapper.selectById(cursor.getParentId());",
|
||||
"loop_type": "while",
|
||||
"impact": "LOW",
|
||||
"module": "productcategory"
|
||||
},
|
||||
{
|
||||
"file": "productcategory\\service\\ProductCategoryService.java",
|
||||
"line": 481,
|
||||
"statement": "cursor = cursor.getParentId() == null ? null : productCategoryMapper.selectById(cursor.getParentId());",
|
||||
"loop_type": "while",
|
||||
"impact": "LOW",
|
||||
"module": "productcategory"
|
||||
},
|
||||
{
|
||||
"file": "productcategory\\service\\ProductCategoryService.java",
|
||||
"line": 518,
|
||||
"statement": "ProductCategoryEntity row = productCategoryMapper.selectById(cursor);",
|
||||
"loop_type": "while",
|
||||
"impact": "LOW",
|
||||
"module": "productcategory"
|
||||
},
|
||||
{
|
||||
"file": "productrisk\\service\\ProductRiskTaskService.java",
|
||||
"line": 144,
|
||||
"statement": "tasks.addAll(fileTaskMapper.selectList(new LambdaQueryWrapper<FileTaskEntity>()",
|
||||
"loop_type": "for",
|
||||
"impact": "LOW",
|
||||
"module": "productrisk"
|
||||
},
|
||||
{
|
||||
"file": "queryasin\\service\\QueryAsinTaskService.java",
|
||||
"line": 587,
|
||||
"statement": "List<FileTaskEntity> tasks = fileTaskMapper.selectList(new LambdaQueryWrapper<FileTaskEntity>()",
|
||||
"loop_type": "for",
|
||||
"impact": "LOW",
|
||||
"module": "queryasin"
|
||||
},
|
||||
{
|
||||
"file": "shopdatacrawl\\service\\ShopDataCrawlTaskService.java",
|
||||
"line": 1085,
|
||||
"statement": "List<FileTaskEntity> tasks = fileTaskMapper.selectList(new LambdaQueryWrapper<FileTaskEntity>()",
|
||||
"loop_type": "for",
|
||||
"impact": "LOW",
|
||||
"module": "shopdatacrawl"
|
||||
},
|
||||
{
|
||||
"file": "shopdatacrawl\\service\\ShopDataCrawlTaskService.java",
|
||||
"line": 1940,
|
||||
"statement": "FileResultEntity result = fileResultMapper.selectById(member.getResultId());",
|
||||
"loop_type": "for",
|
||||
"impact": "LOW",
|
||||
"module": "shopdatacrawl"
|
||||
},
|
||||
{
|
||||
"file": "shopdatacrawl\\service\\ShopDataCrawlTaskService.java",
|
||||
"line": 2497,
|
||||
"statement": "FileResultEntity result = fileResultMapper.selectById(member.getResultId());",
|
||||
"loop_type": "for",
|
||||
"impact": "LOW",
|
||||
"module": "shopdatacrawl"
|
||||
},
|
||||
{
|
||||
"file": "shopdatacrawl\\service\\ShopDataCrawlTaskService.java",
|
||||
"line": 2575,
|
||||
"statement": "FileTaskEntity task = fileTaskMapper.selectById(member.getTaskId());",
|
||||
"loop_type": "for",
|
||||
"impact": "LOW",
|
||||
"module": "shopdatacrawl"
|
||||
},
|
||||
{
|
||||
"file": "shopmatch\\service\\ShopMatchTaskService.java",
|
||||
"line": 179,
|
||||
"statement": "tasks.addAll(fileTaskMapper.selectList(new LambdaQueryWrapper<FileTaskEntity>()",
|
||||
"loop_type": "for",
|
||||
"impact": "LOW",
|
||||
"module": "shopmatch"
|
||||
},
|
||||
{
|
||||
"file": "similarasin\\service\\SimilarAsinTaskService.java",
|
||||
"line": 1499,
|
||||
"statement": "page = mapper.selectList(new com.baomidou.mybatisplus.core.conditions.query.QueryWrapper<TaskChunkEntity>()",
|
||||
"loop_type": "while",
|
||||
"impact": "LOW",
|
||||
"module": "similarasin"
|
||||
},
|
||||
{
|
||||
"file": "similarasin\\service\\SimilarAsinTaskService.java",
|
||||
"line": 1646,
|
||||
"statement": "TaskChunkEntity chunk = taskChunkMapper.selectOne(new LambdaQueryWrapper<TaskChunkEntity>()",
|
||||
"loop_type": "for",
|
||||
"impact": "LOW",
|
||||
"module": "similarasin"
|
||||
},
|
||||
{
|
||||
"file": "similarasin\\service\\SimilarAsinTaskService.java",
|
||||
"line": 2346,
|
||||
"statement": "FileTaskEntity task = fileTaskMapper.selectById(taskId);",
|
||||
"loop_type": "for",
|
||||
"impact": "LOW",
|
||||
"module": "similarasin"
|
||||
},
|
||||
{
|
||||
"file": "similarasin\\service\\SimilarAsinTaskService.java",
|
||||
"line": 2356,
|
||||
"statement": "List<TaskChunkEntity> chunks = taskChunkMapper.selectList(new LambdaQueryWrapper<TaskChunkEntity>()",
|
||||
"loop_type": "for",
|
||||
"impact": "LOW",
|
||||
"module": "similarasin"
|
||||
},
|
||||
{
|
||||
"file": "similarasin\\service\\SimilarAsinTaskService.java",
|
||||
"line": 2379,
|
||||
"statement": "TaskScopeStateEntity state = taskScopeStateMapper.selectById(stateId);",
|
||||
"loop_type": "for",
|
||||
"impact": "LOW",
|
||||
"module": "similarasin"
|
||||
},
|
||||
{
|
||||
"file": "similarasin\\service\\SimilarAsinTaskService.java",
|
||||
"line": 4364,
|
||||
"statement": "List<TaskChunkEntity> page = taskChunkMapper.selectList(query);",
|
||||
"loop_type": "while",
|
||||
"impact": "LOW",
|
||||
"module": "similarasin"
|
||||
},
|
||||
{
|
||||
"file": "similarasin\\service\\SimilarAsinTaskService.java",
|
||||
"line": 4437,
|
||||
"statement": "List<TaskScopeStateEntity> page = taskScopeStateMapper.selectList(query);",
|
||||
"loop_type": "while",
|
||||
"impact": "LOW",
|
||||
"module": "similarasin"
|
||||
},
|
||||
{
|
||||
"file": "task\\service\\ModuleHistoryCleanupService.java",
|
||||
"line": 131,
|
||||
"statement": "List<FileTaskEntity> page = fileTaskMapper.selectList(new LambdaQueryWrapper<FileTaskEntity>()",
|
||||
"loop_type": "while",
|
||||
"impact": "LOW",
|
||||
"module": "task"
|
||||
},
|
||||
{
|
||||
"file": "task\\service\\TaskFileJobService.java",
|
||||
"line": 153,
|
||||
"statement": "TaskFileJobEntity claim = taskFileJobMapper.selectById(candidate.getId());",
|
||||
"loop_type": "for",
|
||||
"impact": "LOW",
|
||||
"module": "task"
|
||||
}
|
||||
]
|
||||
}
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user