Files

1.8 KiB

ADDED Requirements

Requirement: Turbo pipeline configuration

The project SHALL define a turbo.json at the repository root that configures build, dev, lint, test, format, and typecheck pipelines with appropriate caching and dependency ordering.

Scenario: Build pipeline with caching

  • WHEN turbo run build is executed twice without source changes
  • THEN the second run uses cached outputs and completes with "FULL TURBO" status

Scenario: Topological build ordering

  • WHEN turbo run build is executed
  • THEN packages (shared configs, types) build before apps that depend on them

Scenario: Parallel execution

  • WHEN turbo run lint is executed
  • THEN server and admin linting run in parallel where dependency graph allows

Requirement: Unified root scripts

The root package.json SHALL provide top-level scripts (dev, build, lint, format, test, typecheck) that delegate to Turborepo or workspace-level commands.

Scenario: Dev mode starts all apps

  • WHEN npm run dev is executed at root
  • THEN both server (NestJS on port 3003) and admin (Vite on port 3002) start in dev mode

Scenario: Build produces all outputs

  • WHEN npm run build is executed at root
  • THEN server dist/ and admin dist/ are produced

Requirement: Independent workspace scripts

Each workspace SHALL retain the ability to run its own scripts independently (e.g., npm run test inside apps/server/).

Scenario: Server tests run independently

  • WHEN npm run test is executed inside apps/server/
  • THEN the NestJS Jest test suite runs and reports results

Scenario: Admin dev runs independently

  • WHEN npm run dev is executed inside apps/admin/
  • THEN the Vite dev server starts on port 3002 with API proxy configured