feat: unified station mode (POS + Repairs + Lessons) #14

Merged
ryan merged 3 commits from feature/station-mode into main 2026-04-06 11:31:25 +00:00
Owner

Summary

  • /station route replaces /pos with permission-gated tab bar (POS | Repairs | Lessons)
  • Shared lock screen, PIN auth, activity tracking, auto-lock across all tabs
  • POS tab embeds existing POSRegister in embedded mode
  • Repairs desk: status bar, queue panel, ticket detail, stepped intake form (customer → item → problem/estimate → review)
  • Repairs tech workbench: focused single-ticket view with work, parts, photos, notes sections
  • Lessons desk: today's overview (all instructors, check-in), weekly schedule with open slots
  • Lessons instructor: my sessions today, week calendar, attendance/notes/grading
  • Permission-based routing: repairs.edit → desk view, view-only → tech workbench; lessons.edit → desk, view-only → instructor
  • /pos redirects to /station, sidebar updated

Test plan

  • PIN login → lands on first permitted tab
  • Front desk sees all enabled tabs, technician sees only Repairs, instructor sees only Lessons
  • POS tab works as before (embedded mode)
  • Repairs: queue → select ticket → detail with status/notes/photos/line items
  • Repairs: New Intake → stepped form → ticket created
  • Repairs tech: assigned tickets → workbench → advance status, add parts/notes/photos
  • Lessons desk: today's sessions across all instructors, check-in buttons
  • Lessons desk: schedule view with instructor filter and open slots
  • Lessons instructor: my sessions, week calendar, attendance marking
  • Auto-lock works across all tabs
  • /pos redirects to /station

🤖 Generated with Claude Code

## Summary - `/station` route replaces `/pos` with permission-gated tab bar (POS | Repairs | Lessons) - Shared lock screen, PIN auth, activity tracking, auto-lock across all tabs - POS tab embeds existing POSRegister in embedded mode - **Repairs desk**: status bar, queue panel, ticket detail, stepped intake form (customer → item → problem/estimate → review) - **Repairs tech workbench**: focused single-ticket view with work, parts, photos, notes sections - **Lessons desk**: today's overview (all instructors, check-in), weekly schedule with open slots - **Lessons instructor**: my sessions today, week calendar, attendance/notes/grading - Permission-based routing: `repairs.edit` → desk view, view-only → tech workbench; `lessons.edit` → desk, view-only → instructor - `/pos` redirects to `/station`, sidebar updated ## Test plan - [ ] PIN login → lands on first permitted tab - [ ] Front desk sees all enabled tabs, technician sees only Repairs, instructor sees only Lessons - [ ] POS tab works as before (embedded mode) - [ ] Repairs: queue → select ticket → detail with status/notes/photos/line items - [ ] Repairs: New Intake → stepped form → ticket created - [ ] Repairs tech: assigned tickets → workbench → advance status, add parts/notes/photos - [ ] Lessons desk: today's sessions across all instructors, check-in buttons - [ ] Lessons desk: schedule view with instructor filter and open slots - [ ] Lessons instructor: my sessions, week calendar, attendance marking - [ ] Auto-lock works across all tabs - [ ] `/pos` redirects to `/station` 🤖 Generated with [Claude Code](https://claude.com/claude-code)
ryan added 3 commits 2026-04-06 11:28:35 +00:00
Phase 1: Station shell
- /station route replaces /pos (with redirect)
- Shared lock screen, activity tracking, auto-lock timer
- Permission-gated tab bar (POS | Repairs | Lessons)
- POSRegister embedded mode (skip lock/timer/topbar)
- Sidebar navigates to /station

Phase 2: Repairs station — front desk
- Status bar with count badges per status group, clickable filters
- Ticket queue panel with search and status filtering
- Ticket detail panel with status progress, notes, photos, line items
- Full stepped intake form: customer → item → problem/estimate → review
- Service template quick-add for line items

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- Focused single-ticket workbench with sections: Work, Parts, Photos, Notes
- Template quick-add for line items
- Auto-filters to assigned tickets for the logged-in technician
- Ticket selector when multiple assigned
- Permission routing: repairs.edit → desk view, view-only → tech workbench

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
feat: lessons station + technician workbench + polish
All checks were successful
CI / ci (pull_request) Successful in 26s
CI / e2e (pull_request) Successful in 1m8s
3b0daeae0c
Phase 3: Technician workbench
- Focused single-ticket view with Work, Parts, Photos, Notes sections
- Template quick-add for line items, inline add/delete
- Ticket selector for multiple assigned tickets

Phase 4: Lessons desk view
- Today overview: all instructors' sessions, group by time/instructor
- Quick check-in (attended/missed/cancelled) buttons
- Highlights upcoming and overdue sessions
- Schedule view: weekly grid with instructor filter, open slots

Phase 5: Lessons instructor view
- My Sessions (today) + Week calendar sub-views
- Session detail with attendance, notes, plan items
- Week calendar with session blocks, click to open detail dialog

Phase 6: Polish
- Permission-based routing: desk vs tech/instructor views
- Build and lint clean

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
ryan merged commit 5f4a12b9c4 into main 2026-04-06 11:31:25 +00:00
Sign in to join this conversation.
No Reviewers
No Label
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: ryan/lunarfront-app#14