Commit Graph

6 Commits

Author SHA1 Message Date
eff4332aae fix: 保存配方后0元bug + 标签字母排序
All checks were successful
PR Preview / teardown-preview (pull_request) Has been skipped
PR Preview / test (pull_request) Successful in 5s
Test / unit-test (push) Successful in 4s
Test / build-check (push) Successful in 4s
PR Preview / deploy-preview (pull_request) Successful in 14s
Test / e2e-test (push) Successful in 50s
- 保存公共配方后reload从服务器重新获取(修复oil_name覆盖oil导致显示0元)
- 配方卡片标签按字母排序

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-10 21:34:16 +00:00
0dfef3ab16 fix: 已审核标签对viewer完全不可见
Some checks failed
PR Preview / teardown-preview (pull_request) Has been skipped
Test / unit-test (push) Successful in 4s
Test / build-check (push) Successful in 3s
PR Preview / test (pull_request) Successful in 4s
PR Preview / deploy-preview (pull_request) Successful in 16s
Test / e2e-test (push) Has been cancelled
- EDITOR_ONLY_TAGS常量从recipes store导出,统一引用
- RecipeCard: viewer不显示已审核标签
- RecipeSearch: viewer搜索不匹配已审核标签
- RecipeManager: 标签筛选栏、配方行标签对viewer隐藏
- 所有标签按字母排序(已有)

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-10 21:13:20 +00:00
0c19153156 fix: 增强存为我的调试日志和错误提示,修复空名称静默失败问题
Some checks failed
PR Preview / teardown-preview (pull_request) Has been skipped
Test / unit-test (push) Successful in 5s
Test / build-check (push) Successful in 4s
PR Preview / test (pull_request) Successful in 5s
PR Preview / deploy-preview (pull_request) Successful in 13s
Test / e2e-test (push) Failing after 1m23s
- 区分「取消」(null) 和「清空名称后确认」(空字符串) 两种情况
  前者静默返回,后者提示「请输入配方名称」
- 添加 console.log/error 方便在浏览器控制台定位问题
- 成功 toast 改为「已保存!可在「配方查询 → 我的配方」查看」提示去向
- 错误 toast 延长至 3s,并显示 status code
- saveRecipe:loadRecipes 失败不再抛出,保证保存成功后不误报失败

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-08 20:27:03 +00:00
6804835e85 Persist recipe English name translation to database
Some checks failed
Test / unit-test (push) Successful in 5s
Test / build-check (push) Successful in 4s
Test / e2e-test (push) Failing after 1m7s
PR Preview / test (pull_request) Has been skipped
PR Preview / teardown-preview (pull_request) Successful in 14s
PR Preview / deploy-preview (pull_request) Has been skipped
- Add en_name column to recipes table (migration in database.py)
- Include en_name in recipe API responses and RecipeUpdate model
- Save en_name when admin/senior_editor applies translation
- Load en_name on overlay open, so translation persists across sessions

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-07 22:08:05 +00:00
d88e202bb3 Fix critical bugs: oil prices ¥0.00, ingredient field mapping
- oils store: change Map to plain object for Vue reactivity
- recipes store: map `oil_name` from API (was only mapping `oil`/`name`)
- OilReference: fix .get() calls to bracket access
- Add price-display.cy.js regression test (3 tests)
- Add visual-check.cy.js for screenshot verification

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-06 20:35:01 +00:00
ee8ec23dc7 Refactor frontend to Vue 3 + Vite + Pinia + Cypress E2E
- Replace single-file 8441-line HTML with Vue 3 SPA
- Pinia stores: auth, oils, recipes, diary, ui
- Composables: useApi, useDialog, useSmartPaste, useOilTranslation
- 6 shared components: RecipeCard, RecipeDetailOverlay, TagPicker, etc.
- 9 page views: RecipeSearch, RecipeManager, Inventory, OilReference, etc.
- 14 Cypress E2E test specs (113 tests), all passing
- Multi-stage Dockerfile (Node build + Python runtime)
- Demo video generation scripts (TTS + subtitles + screen recording)

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-06 18:35:00 +00:00