Commit Graph

9 Commits

Author SHA1 Message Date
Johngreen
dc43ff5f93 data: import 304 spifox machines from digital twin DB (이천공장 실설비)
All checks were successful
Deploy to Production / deploy (push) Successful in 46s
2026-02-10 23:32:05 +09:00
Johngreen
62e54ae2ef feat: replace spifox seed data with real factory data from business plan
All checks were successful
Deploy to Production / deploy (push) Successful in 48s
- Replace semiconductor equipment with actual press forming equipment (14 machines)
- Add real equipment: cup presses, finish presses, dryer, washer, heat treatment,
  vision inspectors, conveyor, AMR across 6 area groups
- Add real die parts: cut pin, cut die, forming die with count-based lifecycles
- Add press daily inspection + heat treatment inspection + case dimension inspection templates
- Fix seed.py to pass area/criticality when creating machines
- Add backfill migration to populate area/criticality for existing DB records
- Change spifox industry_type from semiconductor to press_forming
2026-02-10 22:45:53 +09:00
Johngreen
febdbdc4f0 feat: add equipment area grouping, criticality, and batch inspection
All checks were successful
Deploy to Production / deploy (push) Successful in 1m7s
- Add area and criticality fields to Machine model with DB migration
- Add batch inspection endpoint (POST /inspections/batch) for area-wide inspection creation
- Rewrite MachineList with area grouping, criticality badges, and batch inspect button
- Update machine create/edit forms with area and criticality fields
- Update seed data with area/criticality values for all tenants
2026-02-10 22:38:55 +09:00
Johngreen
00a17c0b86 feat: complete 5 GAP requirements — auto counters, inspection alarms, machine specs, responsive CSS
All checks were successful
Deploy to Production / deploy (push) Successful in 1m8s
- GAP 2+4: auto_time/date counter auto-computation with manual update blocking
- GAP 3: auto-generate alarms on inspection completion for failed items
- GAP 1: machine spec fields (manufacturer, location, capacity, power, description)
- GAP 5: enhanced mobile responsive CSS (768px/480px breakpoints)
- Alembic migration for new columns, seed data enriched with specs and date-type parts
2026-02-10 15:45:51 +09:00
Johngreen
ca29e5b809 feat: Phase 7 — enriched seed data and E2E integration tests
All checks were successful
Deploy to Production / deploy (push) Successful in 49s
- Seed: 9 machines, 24 parts with counters, 6 inspection templates (per tenant)
- Realistic industry data: semiconductor (SpiFox), manufacturing (Enkid), chemical (Alpet)
- E2E tests: full lifecycle flow, tenant isolation, spec-based pass/fail validation
- 70/70 tests passing

Co-Authored-By: Claude Opus 4 <noreply@anthropic.com>
2026-02-10 14:49:20 +09:00
Johngreen
ee691be3ce chore: update seed credentials (admin@vexplor.com) and reset DB for re-seed
All checks were successful
Deploy to Production / deploy (push) Successful in 47s
2026-02-10 12:56:23 +09:00
Johngreen
eb3dd0a4ab fix(ci): reset stale DB volume, skip create_all in prod, handle alembic stamp fallback
All checks were successful
Deploy to Production / deploy (push) Successful in 47s
2026-02-10 12:46:49 +09:00
Johngreen
782dc225bf feat(ci): auto-run alembic migrations and seed on container start
All checks were successful
Deploy to Production / deploy (push) Successful in 44s
- Add entrypoint.sh (migrate → seed → uvicorn)
- Add python-dotenv to requirements.txt
- Backend container uses entrypoint instead of direct uvicorn

Co-Authored-By: Claude Opus 4 <noreply@anthropic.com>
2026-02-10 12:36:01 +09:00
Johngreen
ab2a3e35b2 feat: Phase 0-2 complete — auth, machines, equipment parts with full CRUD
Multi-tenant factory inspection system (SpiFox, Enkid, Alpet):
- FastAPI backend with JWT auth, PostgreSQL (asyncpg)
- Next.js 16 frontend with App Router, SWR data fetching
- Machines CRUD with equipment parts management
- Part lifecycle tracking (hours/count/date) with counters
- Partial unique index for soft-delete support
- 24 pytest tests passing, E2E verified

Co-Authored-By: Claude Opus 4 <noreply@anthropic.com>
2026-02-10 12:05:22 +09:00