fullsizemalt
8b2c55c637
feat: add audit log demo data + spec kit compliance audit
...
Deploy to Production / deploy (push) Waiting to run
Test / backend-test (push) Waiting to run
Test / frontend-test (push) Waiting to run
- Added 15 audit log entries demonstrating various actions
- Created SPEC-KIT-AUDIT.md documenting feature completeness
- Actions: LOGIN, CREATE, UPDATE, DELETE, ACCESS, EXPORT, APPROVE
2025-12-12 22:21:11 -08:00
fullsizemalt
c7f8bc8cec
feat: walkthrough 'completed today' status + 3D viewer spec
...
Deploy to Production / deploy (push) Waiting to run
Test / backend-test (push) Waiting to run
Test / frontend-test (push) Waiting to run
- Added /walkthroughs/today API endpoint
- Show clear status when walkthrough is already completed
- Show 'Continue Walkthrough' for in-progress ones
- Added facility-3d-viewer.md spec
- Installed React Three Fiber dependencies
2025-12-12 22:17:10 -08:00
fullsizemalt
935ff4dace
fix: remove /api prefix from layoutApi paths (base URL already includes /api)
Deploy to Production / deploy (push) Waiting to run
Test / backend-test (push) Waiting to run
Test / frontend-test (push) Waiting to run
2025-12-12 22:01:42 -08:00
fullsizemalt
96c7a2bf75
fix: remove invalid posX, posY, notes from FacilityPosition seed
Deploy to Production / deploy (push) Waiting to run
Test / backend-test (push) Waiting to run
Test / frontend-test (push) Waiting to run
2025-12-12 21:43:10 -08:00
fullsizemalt
b0cd3bdcf9
feat: add sections with plant positions to demo facility layout
...
Deploy to Production / deploy (push) Waiting to run
Test / backend-test (push) Waiting to run
Test / frontend-test (push) Waiting to run
- 22 sections (tables/racks) across all rooms
- Each section has grid positions for plants
- Proper sizing in pixels for canvas rendering
- Veg, Flower, Mother, Dry, Cure rooms all have layout data
2025-12-12 21:41:33 -08:00
fullsizemalt
15b50a74c6
feat: global breadcrumbs + walkthrough photo upload
...
Deploy to Production / deploy (push) Waiting to run
Test / backend-test (push) Waiting to run
Test / frontend-test (push) Waiting to run
Breadcrumbs:
- Added Breadcrumbs to main Layout (appears on ALL pages)
- Dynamic route support (/batches/:id, /rooms/:id)
- Proper navigation hierarchy
Daily Walkthrough:
- Enhanced layout with progress bar
- Photo capture from camera or file upload
- Notes fields for each check
- Improved touch targets and mobile UX
Removed inline breadcrumbs from individual pages since
they now come from the global Layout.
2025-12-12 21:22:01 -08:00
fullsizemalt
9897e73de1
docs: add METRC integration specification
...
Deploy to Production / deploy (push) Waiting to run
Test / backend-test (push) Waiting to run
Test / frontend-test (push) Waiting to run
- Clarifies METRC as source of truth
- Defines data model with metrc fields
- Feature overlap matrix (supplement vs add value)
- UI integration points
- Compliance alerts workflow
- Implementation phases
2025-12-12 20:52:44 -08:00
fullsizemalt
e02fdb0c45
feat: add facility structure to demo seed (property, buildings, floors, rooms)
Deploy to Production / deploy (push) Waiting to run
Test / backend-test (push) Waiting to run
Test / frontend-test (push) Waiting to run
2025-12-12 20:45:37 -08:00
fullsizemalt
0382e8119d
fix: improve batch card display with batch code badges and room location
Deploy to Production / deploy (push) Waiting to run
Test / backend-test (push) Waiting to run
Test / frontend-test (push) Waiting to run
2025-12-12 20:44:12 -08:00
fullsizemalt
5c7a4b83c3
feat: comprehensive demo seed + paperless integration spec
...
Deploy to Production / deploy (push) Waiting to run
Test / backend-test (push) Waiting to run
Test / frontend-test (push) Waiting to run
Demo Seed (npm run seed:demo):
- 5 demo staff members
- 8 grow rooms
- 7 batches across all stages
- 292+ touch points with activity history
- 30 days of walkthrough history (with reservoir/irrigation/health checks)
- 9 SOPs and documents
- 12 supply items
- 7 tasks
- IPM schedules for active batches
- Weight logs
- 3 announcements
- 14 days time punch history
Paperless Integration Spec:
- API integration design for document archival
- Sync workflow (manual + automatic)
- Tagging conventions
- Document types
- Implementation phases
2025-12-12 20:37:28 -08:00
fullsizemalt
af3775c9b4
fix: correct document field names in demo seed
Deploy to Production / deploy (push) Waiting to run
Test / backend-test (push) Waiting to run
Test / frontend-test (push) Waiting to run
2025-12-12 20:18:44 -08:00
fullsizemalt
f02f0dfe72
fix: correct walkthrough field names in demo seed
Deploy to Production / deploy (push) Waiting to run
Test / backend-test (push) Waiting to run
Test / frontend-test (push) Waiting to run
2025-12-12 20:15:26 -08:00
fullsizemalt
981a8eded4
fix: correct touch point field names and enum values in demo seed
Deploy to Production / deploy (push) Waiting to run
Test / backend-test (push) Waiting to run
Test / frontend-test (push) Waiting to run
2025-12-12 20:12:45 -08:00
fullsizemalt
f1f766a9c7
feat: separate demo seed from base seed
...
Deploy to Production / deploy (push) Waiting to run
Test / backend-test (push) Waiting to run
Test / frontend-test (push) Waiting to run
Base seed (npm run seed):
- Just roles + admin user for clean onboarding
Demo seed (npm run seed:demo):
- Complete 2025 operation data
- 5 demo staff members
- 7 batches across all stages
- Touch points history (50+ per batch)
- 30 days walkthrough history with reservoir/irrigation/health checks
- 11 SOPs and documents
- Supply inventory
- IPM schedules
- Weight logs
- Time punch history
- Announcements
2025-12-12 20:08:05 -08:00
fullsizemalt
eb5ebc610f
feat: room cards with color-coded headers + room detail page
...
Deploy to Production / deploy (push) Waiting to run
Test / backend-test (push) Waiting to run
Test / frontend-test (push) Waiting to run
- Room cards now have colored header backgrounds per type (VEG=green, FLOWER=purple, DRY=amber, CURE=orange, etc.)
- Cards are clickable, linking to /rooms/:id
- New RoomDetailPage with gradient header, sensor metrics with sparklines, active batches list
- Backend: GET /rooms/:id endpoint returns room with batches
2025-12-12 19:33:07 -08:00
fullsizemalt
3239a8b89b
ui: redesign room cards - sensor data prominent
...
Deploy to Production / deploy (push) Waiting to run
Test / backend-test (push) Waiting to run
Test / frontend-test (push) Waiting to run
- Temp/humidity now large and center with colored icons
- Size and capacity compressed to header subtitle
- Batch count with status indicator dot
- Cleaner visual hierarchy
2025-12-12 19:13:00 -08:00
fullsizemalt
e7be23cce4
feat: add batch detail endpoint and fix drill-down navigation
...
Deploy to Production / deploy (push) Waiting to run
Test / backend-test (push) Waiting to run
Test / frontend-test (push) Waiting to run
Backend:
- Add getBatchById controller with touch points and IPM schedule
- Add GET /batches/:id route
Frontend:
- Update Batch interface to include touchPoints
- BatchDetailPage now uses real touch points from API
- Better error handling on batch load failure
2025-12-12 19:04:16 -08:00
fullsizemalt
817abb732d
refactor: consolidate Daily Walkthrough to single page
...
Deploy to Production / deploy (push) Waiting to run
Test / backend-test (push) Waiting to run
Test / frontend-test (push) Waiting to run
- All sections (reservoirs, irrigation, plant health) on one scrollable page
- Collapsible sections with progress indicators
- Compact inline check rows (no oversized tank visualizations)
- Thin level indicator bars instead of large tank graphics
- Fixed submit button at bottom
- Edit mode per row for quick adjustments
2025-12-12 18:53:08 -08:00
fullsizemalt
20e8f994a1
Deploy to Production / deploy (push) Waiting to run
Test / backend-test (push) Waiting to run
Test / frontend-test (push) Waiting to run
2025-12-12 18:38:41 -08:00
fullsizemalt
625deb2bd3
feat: dashboard metrics now clickable with navigation
...
Deploy to Production / deploy (push) Waiting to run
Test / backend-test (push) Waiting to run
Test / frontend-test (push) Waiting to run
- Active Batches → /batches
- Total Plants → /batches
- Tasks Completed → /tasks
- Tasks Pending → /tasks
- Touch Points → /touch-points
- Rooms → /rooms
- Added arrow indicator on hover
2025-12-12 17:24:07 -08:00
fullsizemalt
93a39c2f2c
feat: BatchDetailPage with rich data visualization
...
Deploy to Production / deploy (push) Waiting to run
Test / backend-test (push) Waiting to run
Test / frontend-test (push) Waiting to run
- BatchDetailPage: Lifecycle journey, SVG sparkline charts, modeled sensor data
- Metrics: Temperature, humidity, VPD, CO2, light PPFD with trends
- Touch point history with categorized icons
- Health score gauge visualization
- IPM schedule display
- BatchesPage: Clickable cards linking to detail
- Stage progress mini indicator
- Days-in-cycle badge
2025-12-12 16:55:04 -08:00
fullsizemalt
a2120170b6
fix: intentional walkthrough UI redesign
...
Deploy to Production / deploy (push) Waiting to run
Test / backend-test (push) Waiting to run
Test / frontend-test (push) Waiting to run
- DailyWalkthroughPage: Centered, compact start screen with minimal chrome
- Summary: Statistical overview with compact cards
- ReservoirChecklist: Single column centered, tighter spacing
- IrrigationChecklist: Compact status rows, inline toggles
- PlantHealthChecklist: Segmented health control, minimal layout
- Layout: Remove theme toggle from desktop sidebar (cleaner)
2025-12-12 16:49:41 -08:00
fullsizemalt
efb298e119
fix: thorough Linear design audit
...
Deploy to Production / deploy (push) Waiting to run
Test / backend-test (push) Waiting to run
Test / frontend-test (push) Waiting to run
- ThemeToggle: Single button cycle instead of 3-button bar
- UserMenu: Cleaner styling with accent avatar
- MobileNavSheet: Consistent Linear tokens
- Walkthrough checklists: Desktop two-column layout
- RoleModal: Toggle buttons instead of tiny checkboxes
- IPMScheduleModal: Toggle buttons instead of checkbox
- ScoutingModal: Toggle buttons instead of checkbox
2025-12-12 15:49:21 -08:00
fullsizemalt
b6dd904adc
feat: update Layout Designer with Linear design tokens - Use accent blue instead of emerald - Consistent neutral palette - Refined typography
Deploy to Production / deploy (push) Waiting to run
Test / backend-test (push) Waiting to run
Test / frontend-test (push) Waiting to run
2025-12-12 15:03:45 -08:00
fullsizemalt
c9b58e0aee
fix: improve walkthrough desktop layout with wider cards and grid
Deploy to Production / deploy (push) Waiting to run
Test / backend-test (push) Waiting to run
Test / frontend-test (push) Waiting to run
2025-12-12 14:51:52 -08:00
fullsizemalt
f4e6e03ac0
fix: update DevTools login to use new auth signature
Deploy to Production / deploy (push) Waiting to run
Test / backend-test (push) Waiting to run
Test / frontend-test (push) Waiting to run
2025-12-12 14:45:19 -08:00
fullsizemalt
fddd43fa4f
fix: store refreshToken on login for proper auth flow
Deploy to Production / deploy (push) Waiting to run
Test / backend-test (push) Waiting to run
Test / frontend-test (push) Waiting to run
2025-12-12 14:35:54 -08:00
fullsizemalt
71e58dd4c7
feat: Linear-inspired UI redesign with Space Grotesk headlines
...
Deploy to Production / deploy (push) Waiting to run
Test / backend-test (push) Waiting to run
Test / frontend-test (push) Waiting to run
- Complete UI refactor with charcoal/bone color palette
- Add Space Grotesk font for headlines, Inter for body
- Update all 24+ pages with new design system
- Add LinearPrimitives reusable components
- Improve dark mode support throughout
- Add subtle micro-animations and transitions
2025-12-12 14:29:47 -08:00
fullsizemalt
11e3fc9de8
chore(kiosk): update assetlinks.json with real SHA256 fingerprint
Deploy to Production / deploy (push) Waiting to run
Test / backend-test (push) Waiting to run
Test / frontend-test (push) Waiting to run
2025-12-11 23:16:52 -08:00
fullsizemalt
73958c5a5f
fix(backend): add auth middleware to walkthrough routes
Deploy to Production / deploy (push) Failing after 0s
Test / backend-test (push) Failing after 0s
Test / frontend-test (push) Failing after 1s
2025-12-11 20:29:50 -08:00
fullsizemalt
046bb9361e
feat(kiosk): add Android APK and PWA support
Deploy to Production / deploy (push) Failing after 0s
Test / backend-test (push) Failing after 0s
Test / frontend-test (push) Failing after 0s
2025-12-11 20:22:03 -08:00
fullsizemalt
f51a1072fe
feat(pwa): Add PWA support for installable kiosk app
...
Deploy to Production / deploy (push) Failing after 0s
Test / backend-test (push) Failing after 0s
Test / frontend-test (push) Failing after 0s
- Added manifest.json for 'Add to Home Screen' installation
- Added service worker for offline caching
- Added app icons (192px, 512px)
- Updated index.html with mobile meta tags
- Created spec for Escort Handoff Mode (009)
2025-12-11 16:13:50 -08:00
fullsizemalt
b35c32279c
fix(kiosk): Increase QR code size to 320px with fixed dimensions
...
Deploy to Production / deploy (push) Failing after 0s
Test / backend-test (push) Failing after 0s
Test / frontend-test (push) Failing after 0s
- Removed maxWidth constraint that caused scaling
- Set explicit height/width to prevent shrinking
2025-12-11 15:59:49 -08:00
fullsizemalt
58d76fb158
feat(visitor): Enhanced badge & kiosk UX
...
Deploy to Production / deploy (push) Failing after 0s
Test / backend-test (push) Failing after 0s
Test / frontend-test (push) Failing after 0s
- Larger QR code on kiosk success screen (280px)
- Redesigned badge page with card flip feature
- Front: Visitor info, photo, badge number, duration
- Back: QR code for security scan, checkout link
- Added photo capture to kiosk registration
- Camera access with preview
- Capture, retake, and submit photo
- Site branding on badge page (777 Wolfpack)
- Better status indicators and UI polish
2025-12-11 15:46:34 -08:00
fullsizemalt
43e65bfd4c
fix(kiosk): Filter empty optional fields before API submission
...
Deploy to Production / deploy (push) Failing after 0s
Test / backend-test (push) Failing after 0s
Test / frontend-test (push) Failing after 0s
- Prevents validation errors when email/phone/company are empty strings
- Only sends fields with actual values to backend
2025-12-11 15:31:37 -08:00
fullsizemalt
969397bae1
feat(kiosk): Require manual confirmation for badge
...
Deploy to Production / deploy (push) Failing after 0s
Test / backend-test (push) Failing after 0s
Test / frontend-test (push) Failing after 0s
- Disabled auto-timeout on success screen when a badge is issued
- Updated 'Done' button to 'I have my badge' for clearer confirmation
2025-12-11 15:00:41 -08:00
fullsizemalt
284e972376
refactor(ui): Rename 'Visitor Panopticon' to 'Visitor Management'
...
Deploy to Production / deploy (push) Failing after 0s
Test / backend-test (push) Failing after 0s
Test / frontend-test (push) Failing after 0s
- Reverted the naming change per user request to avoid the term 'Panopticon'
2025-12-11 14:58:46 -08:00
fullsizemalt
2ffc4edbcd
fix(build): Resolve TypeScript and Import errors
...
Deploy to Production / deploy (push) Failing after 0s
Test / backend-test (push) Failing after 0s
Test / frontend-test (push) Failing after 0s
- Fixed 'qrcode.react' import in VisitorKioskPage (named export)
- Added 'badgeExpiry' to VisitorLog interface in visitorsApi
- Added 'tiers' to LayoutSection interface in layoutStore
- NOTE: This fixes the build failure on nexus-vector
2025-12-11 14:50:42 -08:00
fullsizemalt
5ef61d09be
fix(api): Remove double /api prefix from visitorsApi calls
...
Deploy to Production / deploy (push) Failing after 0s
Test / backend-test (push) Failing after 0s
Test / frontend-test (push) Failing after 0s
- The axios instance already has /api base URL
- Removed redundant /api prefix from all visitor and zone endpoints
2025-12-11 14:44:08 -08:00
fullsizemalt
26c2680b64
fix(types): Add REVOKED to VisitorLog status and include revoke method in visitorsApi
Deploy to Production / deploy (push) Failing after 0s
Test / backend-test (push) Failing after 0s
Test / frontend-test (push) Failing after 0s
2025-12-11 14:20:29 -08:00
fullsizemalt
9f41d6b413
feat(visitor): Implement Admin Panopticon View
...
Deploy to Production / deploy (push) Failing after 0s
Test / backend-test (push) Failing after 0s
Test / frontend-test (push) Failing after 0s
- Renamed Management Page to Visitor Panopticon
- Added Revoke button to active visitors
- Added Revoke Modal with reason capture
- Updated status display to show REVOKED status
2025-12-11 14:16:14 -08:00
fullsizemalt
56c8e8bb8b
fix(schema): Add REVOKED to VisitorStatus enum
Deploy to Production / deploy (push) Failing after 0s
Test / backend-test (push) Failing after 0s
Test / frontend-test (push) Failing after 0s
2025-12-11 14:11:28 -08:00
fullsizemalt
668e213cd8
fix(visitor): Remove global auth from Kiosk routes
...
Deploy to Production / deploy (push) Failing after 0s
Test / backend-test (push) Failing after 0s
Test / frontend-test (push) Failing after 0s
- Removed global onRequest jwtVerify hook
- Added explicit auth check to secure routes (revoke, report)
- Kiosk check-in/out and create visitor are now public
2025-12-11 13:59:43 -08:00
fullsizemalt
15e1a8b199
feat(visitor): Implement Digital Badge System
...
Deploy to Production / deploy (push) Failing after 0s
Test / backend-test (push) Failing after 0s
Test / frontend-test (push) Failing after 0s
- Added public /badges/:id route with BadgePage component
- Updated VisitorKiosk to display QR code upon check-in
- Backend now returns visitId in check-in response
- Added qrcode.react dependency
2025-12-11 13:51:47 -08:00
fullsizemalt
0a631f462a
docs: Add Phase 15 (3D Visualization) to Roadmap
...
Deploy to Production / deploy (push) Failing after 0s
Test / backend-test (push) Failing after 0s
Test / frontend-test (push) Failing after 0s
- Added spec for 'Cool 3D Views' using react-three-fiber
- Planned features: 3D volumes, tier stacking, walking mode
2025-12-11 13:30:50 -08:00
fullsizemalt
d2c2e0aeef
feat(layout): Add Tiers input to Section Dialog
...
Deploy to Production / deploy (push) Failing after 1s
Test / backend-test (push) Failing after 1s
Test / frontend-test (push) Failing after 0s
- Added Tiers configuration to AddSectionDialog
- Updated capacity calculations
- Updates saves to include tier count
2025-12-11 13:26:59 -08:00
fullsizemalt
2edb2dd100
feat(layout): Update frontend types and API to support Tiers
...
Deploy to Production / deploy (push) Failing after 0s
Test / backend-test (push) Failing after 0s
Test / frontend-test (push) Failing after 0s
- Added 'tiers' to LayoutSection
- Added 'tier' to LayoutPosition
- Included 'sections' in saveFloorLayout payload (fixes data loss bug)
2025-12-11 13:24:56 -08:00
fullsizemalt
ed36645cc8
feat(api): Update section creation routes to support Tiers
Deploy to Production / deploy (push) Failing after 0s
Test / backend-test (push) Failing after 0s
Test / frontend-test (push) Failing after 0s
2025-12-11 13:23:32 -08:00
fullsizemalt
3a11590795
feat(layout): Add Tiers to FacilitySection and Position
...
Deploy to Production / deploy (push) Failing after 0s
Test / backend-test (push) Failing after 0s
Test / frontend-test (push) Failing after 0s
- Added 'tiers' to FacilitySection for multi-level racks
- Added 'tier' to FacilityPosition for Z-axis addressing
- Updated unique constraint for positions
2025-12-11 13:21:05 -08:00
fullsizemalt
9cabd54718
docs: Update Roadmap
...
Deploy to Production / deploy (push) Failing after 0s
Test / backend-test (push) Failing after 0s
Test / frontend-test (push) Failing after 0s
- Added Phase 14: Facility Monitoring & Security Integration
- Marked Sprint 1 (Infrastructure) as Completed
- Marked Sprint 2 (Integration) as Roadmapped/Future
2025-12-11 13:09:15 -08:00