Commit Graph

25 Commits

Author SHA1 Message Date
huangzd1997 82a782550e feat(密钥): 用户 API 密钥服务端化——V115 按账号绑定存储 + 后台密钥管理页 + 桌面端全站拦截与配置引导
- 新增 usersecret 模块:外观专利/货源查询密钥从本地 localStorage 迁移至 biz_user_api_secret(AES 加密、按 uid 绑定)
- 后台「密钥管理」页:脱敏展示、立即检测、清空;每日 04:30 分布式锁定时巡检
- 桌面端:密钥设置面板走服务端、未配齐引导 /setup-secrets、代理余量展示
- 删除专利汇令牌全链路与密钥保留时长选择器
2026-09-13 10:03:59 +08:00
huangzd1997 3b5adff2e3 task-276(验收反馈): 分页组件全站统一(jumper+按钮高亮样式)+MenusPage补分页+最低价筛选同排+视频筛选加固+移除侧边栏收起按钮+gitignore战役脚本规则 2026-09-06 02:16:47 +08:00
huangzd1997 05bda8915a feat(admin): 店铺数据重复检查撞款抽屉样式优化与导入测试按钮
Build Backend JAR / build (push) Has been cancelled
- 撞款详情抽屉:上架时间默认降序(晚到早)、去掉列头(按时间升序)小括号、加宽至 760px、
  去掉全屏遮罩(底层仍可点击)、抽屉贴到「撞款详情」区块位置而非浏览器顶部
- 修复抽屉 fixed 定位失效:.tab-panel.active 入场动画带 transform 会成为包含块,
  打开时把 drawer mask 挂到 body 下恢复视口定位
- 新增导入(新增-测试)/ 导入(删除-测试)按钮与上传弹窗,对应后端端点
  /api/admin/shop-data-crawl/duplicate-check-import(ADD=按店名替换基线记录、DELETE=移除该店记录)
- 新增 ShopDataDuplicateCheckImportService 导入服务(复用 WorkbookParser/Aggregator,与扫描共用 Redis 锁)
- 新增 3 个单测:导入替换重聚合、删除移除、无基线报错
- _preview_mock.py 加入 .gitignore(本地预览工具不入库)
2026-09-04 12:25:31 +08:00
huangzd1997 55517f996b task-120: 大页数据性能回归 + 恢复 similarasin 测试入库
性能回归(SimilarAsinTaskServicePerf500Test,8/8 绿):
- test_perf_light_200 原以墙钟毫秒比较 light 与 batch(assertTrue
  lightMs < batchMs)。两条路径都跑纯内存 stub,耗时在十几毫秒量级,
  JIT/GC/线程调度抖动远大于真实差值,本机实测 light 14ms / batch 13ms
  直接翻红。改为确定性口径:light 结果明细查询数 == 0(batch ≥ 1)、
  light 总查询数 < batch 总查询数、batch 条目携带任务明细对象而 light
  只有白名单字段;墙钟仅保留单侧上界 1s(N+1 退化会放大到秒级从而失败)。
  连续 3 次独立运行稳定通过。
- 类注释同步移除“已知 flaky,隔离重跑即接受”的说明。

恢复测试入库:
- fa5a59e(task-116) 把 similarasin 测试目录整体从 git 删除,并加了
  .gitignore 规则 *.broken/,磁盘上目录改名 similarasin.broken。
  但包声明仍是 com.nanri.aiimage.modules.similarasin.*,javac 照常编译,
  这 40 个测试文件一直在参与构建、并且是 mvn test 的门禁的一部分——
  等于脱离版本控制却仍在 gate 构建。
- 目录改回 similarasin/(现在与包声明一致),移除 *.broken/ 忽略规则,
  40 个测试文件重新入库。mvn test-compile 退出码 0。
2026-09-01 13:45:34 +08:00
huangzd1997 fa5a59e5cd task-116: 后台管理新增/导入表单弹窗化 + 分组管理独立菜单与UI优化 + 轻量进度端点
Build Backend JAR / build (push) Has been cancelled
- 后台管理页(admin)所有面板的新增/导入表单改为弹窗操作,原有字段 ID 全部保留、提交逻辑不变;导入删除入口不再触发二次确认拦截
- 分组管理升级为独立菜单(V102 + schema initializer),移除 5 个面板内的管理分组按钮;分组列表改为蓝白主题、增加权限分组横幅
- Python 侧 group-manage 权限守卫(_ensure_backend_menu_access 补充 group-manage)
- 引入 V101(biz_task_file_job 复合索引)+ 新增 TaskProgressLight/TaskFileJob 轻量端点与进度聚合作
- 前端 progress-light / page-separated-loads / dispatch-guard 共享模块及单元测试
2026-09-01 12:54:13 +08:00
huangzd1997 19ddfb9c5a chore: 移除误入库的本地规划/进度文件 (docs/plans, check_progress.py, progress.json),gitignore 兜底
Build Backend JAR / build (push) Has been cancelled
2026-08-31 00:37:31 +08:00
huangzd1997 0f09cbec74 chore: 移除误入库的本地规划文档 docs/plans,加入 gitignore 2026-08-31 00:21:02 +08:00
super 7503e3fa8b 提交货源图片和相似ASIN优化 2026-05-24 21:59:21 +08:00
super 70e902e7ea 更新这个货源 2026-05-22 09:41:31 +08:00
koko 147b324658 chore: serve bundled assets from app directory 2026-05-02 02:12:14 +08:00
koko af4f4a9ed4 Fix patrol delete condition handling 2026-05-01 22:36:37 +08:00
koko 46e55fa623 Stop tracking generated Python bytecode
Generated __pycache__ files were already ignored in some paths but remained tracked in the repository, which caused merge noise and binary conflicts. This removes the tracked bytecode from the index and adds an explicit recursive ignore rule so future Python runs do not reintroduce them.

Constraint: Existing repository history already tracked pycache files across app, backend, and source_code

Rejected: Delete local pycache directories from disk | only repository tracking needed to be removed

Confidence: high

Scope-risk: narrow

Directive: Do not force-add __pycache__ or *.pyc files unless there is a documented runtime packaging reason

Tested: git ls-files shows no remaining paths containing __pycache__/

Not-tested: Application runtime; change only affects tracked generated artifacts and ignore rules
2026-04-28 20:57:53 +08:00
koko a92d1af4f2 Merge master into dev/koko after patrol delete fixes
The merge keeps dev/koko patrol-delete asset fallback behavior while accepting the latest master feature work. Conflicts were limited to ignore rules, local environment/config artifacts, tracked pycache binaries, and the Flask main blueprint.

Constraint: master and dev/koko both edited app/blueprints/main.py around brand and asset serving

Rejected: Drop dev/koko asset fallback logic | patrol delete and rebuilt Vite assets still need hashed asset resolution across app/new_web_source locations

Confidence: medium

Scope-risk: broad

Directive: app/.env remains a tracked local-config file in this repository; do not print or normalize secrets during conflict handling

Tested: uv run python -m py_compile blueprints\\main.py amazon\\base.py amazon\\main.py

Tested: uv run --group dev pytest tests\\test_amazon_base.py tests\\test_patrol_delete.py

Not-tested: Full backend-java/frontend-vue test suites
2026-04-28 20:55:27 +08:00
super 995e2ee65a 后端架构更新 2026-04-27 09:18:10 +08:00
koko 5d8ee8fe79 feat: update amazon driver 2026-04-25 17:59:12 +08:00
koko f9b2d2da25 feat: update driver BaseClass 2026-04-25 17:14:23 +08:00
koko f6e83352d7 Document repo structure and ignore local OMX state
Add a root README that explains the active runtime layers and onboarding path, and keep local OMX session state out of version control so developer tooling does not interfere with pulls.

Constraint: Local OMX state is developer-specific and should not block branch sync or appear in shared history
Rejected: Keep onboarding notes untracked | easy to lose and hard to share with the team
Confidence: high
Scope-risk: narrow
Reversibility: clean
Directive: Keep the README aligned with the active app/backend-java/frontend-vue execution path; revisit if the runtime architecture changes
Tested: git diff review; git status after staging
Not-tested: lint, typecheck, unit/integration tests not run (docs and ignore rules only)
2026-04-22 07:16:04 +00:00
super 236b73755c 处理后台管理系统、修复BUG、处理权限 2026-04-22 01:09:28 +08:00
super eeeed6d7b1 暂存 2026-03-30 20:54:05 +08:00
super 0aad7b3faf 提交过滤 2026-03-27 21:58:43 +08:00
super ea212c8931 提交品牌删除更新 2026-03-26 17:39:20 +08:00
super 8106a8ab7e 更新后端新增内容 2026-03-26 16:42:25 +08:00
super 7f9a6bd9cb 环境搭建配置 2026-03-21 10:00:16 +08:00
super 92d3fc965b 完成新需求 2026-03-20 14:26:34 +08:00
super 1e63ab291b 重构项目,方便开发 2026-03-19 13:15:47 +08:00