Files
shop-server/docs/superpowers/specs/2026-05-19-refactoring-round2-design.md
T
2026-05-19 11:25:23 +05:00

1.1 KiB

Refactoring Round 2 — Design

2026-05-19

Phase 1: Toolchain & Configs

  1. Enable strict: true in client/tsconfig.app.json
  2. Add ESLint + Prettier to server (copy rules from client, adapt for JS)
  3. Remove dead configs: server/vitest.config.ts (duplicate of .js)
  4. Fix AGENTS.md: dev uses .env not .dev_env; add db:reset:test to server
  5. Clean .gitignore: remove .opencode/plans/ reference

Phase 2: Deduplication & Separation

  1. Move order status transition logic to shared/constants/order.js as shared data
  2. Split entities/product/api/product-api.ts into public + admin API files
  3. Consolidate review API into entities/review/
  4. Move delivery-carrier labels into shared/constants/delivery-carrier.js
  5. Add db:reset:test script to server/package.json

Phase 3: Large File Decomposition

  1. AdminProductsPage.tsx (596 lines) → features/product-form/ + table page
  2. AdminOrdersPage.tsx (398 lines) → features/order-detail/ + table page
  3. AddressesPage.tsx (318 lines) → features/address-form/ + list page
  4. ProductPage.tsx (304 lines) → extend widgets/reviews-block/