The recipe detail was reverted to modal with tabs (卡片预览/编辑),
so tests now click the 编辑 tab before checking for editor elements.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- RecipeCard: simple card with name, tags, oil names, price (matching
original .recipe-card style with hover translateY and warm shadows)
- RecipeDetailOverlay: inline panel (not modal) with editable ingredients
table, add ingredient row, total cost bar, and card preview section
matching the original detail-panel + #recipe-card-export layout
- RecipeSearch: simplified layout with search box and grid, detail panel
appears inline below grid when a card is clicked
- Updated Cypress tests to match new component structure
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- Grep pattern now matches full filenames (demo-walkthrough, visual-check)
- Updated all test files to use .oil-chip (new OilReference class name)
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- cypress.config.js: set allowCypressEnv: false
- Replace Cypress.env('ADMIN_TOKEN') with hardcoded test DB token
- CI: use fixed venv path, retry loop for server readiness
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Endpoint fixes:
- AuditLog: /api/audit-logs → /api/audit-log
- BugTracker: /api/bugs → /api/bug-reports, create → /api/bug-report
- BugTracker: fix create body (content+priority, not title/description)
- MyDiary: /api/brand-settings → /api/brand
- MyDiary: /api/me/display-name → PUT /api/me
- RecipeSearch: /api/category-modules → /api/categories
Test improvements:
- Remove blanket uncaught:exception swallow (only ignore ResizeObserver)
- Add endpoint-parity.cy.js: intercept-based test that verifies correct
API endpoints are called and wrong ones are NOT called
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- 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>