feat(suppliers): database schema, migration, seed script and queries (#195) #201

Merged
yuris merged 5 commits from feat/phase-1-supplier-schema into main 2026-10-03 23:44:15 +00:00
Owner

Summary

Implements Phase 1 of Supplier Management (resolves #195):

  • Add suppliers table in apps/management/lib/db/schema.ts
  • Migration 0017_add_suppliers.sql
  • Idempotent seed script apps/management/scripts/seed-suppliers.ts with 15 verified workshop suppliers
  • Query helpers in apps/management/lib/suppliers/queries.ts
  • Comprehensive tests in apps/management/lib/suppliers/queries.test.ts

Verification

  • pnpm verify:management passed with 0 errors
  • 30 test files passed (561 tests)
### Summary Implements Phase 1 of Supplier Management (resolves #195): - Add `suppliers` table in `apps/management/lib/db/schema.ts` - Migration `0017_add_suppliers.sql` - Idempotent seed script `apps/management/scripts/seed-suppliers.ts` with 15 verified workshop suppliers - Query helpers in `apps/management/lib/suppliers/queries.ts` - Comprehensive tests in `apps/management/lib/suppliers/queries.test.ts` ### Verification - `pnpm verify:management` passed with 0 errors - 30 test files passed (561 tests)
feat(suppliers): database schema, migration, seed script and queries (#195)
All checks were successful
Checks / test @garage/catalog (pull_request) Successful in 1m15s
Checks / test garage (pull_request) Successful in 1m26s
Checks / test garage-store (pull_request) Successful in 1m18s
Checks / typecheck apps/management (pull_request) Successful in 1m35s
Checks / lint (biome) (pull_request) Successful in 11s
Checks / typecheck apps/store (pull_request) Successful in 1m20s
79016fff35
fix(suppliers): address code review findings for seed portability and query normalization
Some checks failed
Checks / typecheck apps/store (pull_request) Has been cancelled
Checks / test @garage/catalog (pull_request) Successful in 1m14s
Checks / test garage (pull_request) Successful in 1m25s
Checks / test garage-store (pull_request) Successful in 1m17s
Checks / typecheck apps/management (pull_request) Successful in 1m35s
Checks / lint (biome) (pull_request) Successful in 11s
eb90c80934
fix(suppliers): match purchases by both name and code and avoid double counting
Some checks failed
Checks / test @garage/catalog (pull_request) Successful in 1m13s
Checks / test garage (pull_request) Successful in 1m26s
Checks / typecheck apps/store (pull_request) Has been cancelled
Checks / lint (biome) (pull_request) Has been cancelled
Checks / typecheck apps/management (pull_request) Has been cancelled
Checks / test garage-store (pull_request) Has been cancelled
fe1653e98e
fix(suppliers): support prefix-agnostic matching for suppliers like CV. SJWS
Some checks failed
Checks / test @garage/catalog (pull_request) Successful in 1m14s
Checks / typecheck apps/store (pull_request) Has been cancelled
Checks / lint (biome) (pull_request) Has been cancelled
Checks / typecheck apps/management (pull_request) Has been cancelled
Checks / test garage-store (pull_request) Has been cancelled
Checks / test garage (pull_request) Successful in 1m25s
bc977efddd
fix(suppliers): normalize prefix punctuation on both sides of catalog matching
All checks were successful
Checks / test @garage/catalog (pull_request) Successful in 1m13s
Checks / test garage (pull_request) Successful in 1m26s
Checks / test garage-store (pull_request) Successful in 1m17s
Checks / typecheck apps/management (pull_request) Successful in 1m37s
Checks / lint (biome) (pull_request) Successful in 12s
Checks / typecheck apps/store (pull_request) Successful in 1m19s
7014b171b8
yuris merged commit 7dc860cfd7 into main 2026-10-03 23:44:15 +00:00
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
yuris/garage!201
No description provided.