ca-grow-ops-manager/specs/daily-walkthrough.md
fullsizemalt e240ec7911 feat(phase2): Implement Phase 2 - Plant Touch Points & IPM
Added PlantTouchPoint and IPMSchedule models. Implemented touch-points and IPM controllers/routes. Updated frontend with Dashboard feed and IPM widgets.
2025-12-09 21:22:47 -08:00

370 lines
8.9 KiB
Markdown

# Daily Facility Walkthrough - Feature Spec
**Priority**: 🔴 Critical
**Team**: 777 Wolfpack
**Date**: 2025-12-09
**Status**: New Requirement
---
## 📋 Overview
**Super crucial**: A structured daily walkthrough checklist that guides staff through the entire facility first thing in the morning to ensure all systems are operational and plants are healthy.
---
## 🎯 User Story
**As a** 777 Wolfpack cultivation team member
**I want** a guided daily morning walkthrough checklist
**So that** I can systematically verify all critical systems and plant health before the day begins
---
## ✅ Daily Walkthrough Checklist
### 📐 Configuration & Settings (New)
**Admin Control**:
- Enable/Disable specific sections (Reservoirs, Irrigation, Plant Health) based on current facility needs.
- **Photo Requirements**: Configure if photos are `Required`, `Optional`, `Weekly` (Mondays), or `On Demand`.
- **Granular Roles**: Define exactly who can perform/view/manage walkthroughs.
### 1. Reservoir Checks
**Task**: Check all reservoirs (veg and flower tanks) to make sure topped off
**Requirements**:
- [ ] List all veg tanks
- [ ] List all flower tanks
- [ ] Check each tank level
- [ ] Mark as "Topped Off" or "Needs Refill"
- [ ] Photo capability for low levels
- [ ] Alert if any tank below threshold
**Data to Capture**:
- Tank ID/Name
- Current level (%)
- Status (OK / Low / Critical)
- Photo (optional)
- Timestamp
- Staff member
---
### 2. Irrigation System Check
**Task**: Full walkthrough of veg and flower (upstairs and down) to assure all drippers working and everything has water/food on schedule
**Requirements**:
- [ ] Checklist by zone (Veg Upstairs, Veg Downstairs, Flower Upstairs, Flower Downstairs)
- [ ] Verify drippers functioning in each zone
- [ ] Confirm water flow
- [ ] Confirm nutrient mix ready
- [ ] Verify feeding schedule active
- [ ] Photo of working system (for uniformity reference)
- [ ] Flag any non-working drippers
**Data to Capture**:
- Zone name
- Drippers checked count
- Drippers working count
- Drippers failed (list)
- Water flow: Yes/No
- Nutrients mixed: Yes/No
- Schedule active: Yes/No
- Photo of working system
- Issues noted
- Timestamp
---
### 3. Plant Health Spot Check
**Task**: Quick peek at all plants with spot check on pests and access to food/water
**Requirements**:
- [ ] Quick visual inspection of each zone
- [ ] Pest check (identify any visible pests)
- [ ] Water access verification
- [ ] Food/nutrient access verification
- [ ] Identify zones needing attention
- [ ] Photo of any issues
- [ ] Photo of healthy/working system for comparison
**Data to Capture**:
- Zone name
- Plant health: Good / Fair / Needs Attention
- Pests observed: Yes/No (type if yes)
- Water access: OK / Issues
- Food access: OK / Issues
- Zones flagged for attention
- Photos (issues + reference)
- Notes
- Timestamp
---
## 🏗️ Implementation Requirements
### Database Schema
#### DailyWalkthrough Model
```prisma
model DailyWalkthrough {
id String @id @default(uuid())
date DateTime @default(now())
completedBy String
user User @relation(fields: [completedBy], references: [id])
startTime DateTime
endTime DateTime?
status WalkthroughStatus @default(IN_PROGRESS)
reservoirChecks ReservoirCheck[]
irrigationChecks IrrigationCheck[]
plantHealthChecks PlantHealthCheck[]
createdAt DateTime @default(now())
updatedAt DateTime @updatedAt
}
model ReservoirCheck {
id String @id @default(uuid())
walkthroughId String
walkthrough DailyWalkthrough @relation(fields: [walkthroughId], references: [id])
tankName String
tankType TankType // VEG, FLOWER
levelPercent Int
status TankStatus // OK, LOW, CRITICAL
photoUrl String?
notes String?
createdAt DateTime @default(now())
}
model IrrigationCheck {
id String @id @default(uuid())
walkthroughId String
walkthrough DailyWalkthrough @relation(fields: [walkthroughId], references: [id])
zoneName String // "Veg Upstairs", "Veg Downstairs", etc.
drippersTotal Int
drippersWorking Int
drippersFailed String? // JSON array of failed dripper IDs
waterFlow Boolean
nutrientsMixed Boolean
scheduleActive Boolean
photoUrl String? // Photo of working system
issues String?
createdAt DateTime @default(now())
}
model PlantHealthCheck {
id String @id @default(uuid())
walkthroughId String
walkthrough DailyWalkthrough @relation(fields: [walkthroughId], references: [id])
zoneName String
healthStatus HealthStatus // GOOD, FAIR, NEEDS_ATTENTION
pestsObserved Boolean
pestType String?
waterAccess AccessStatus // OK, ISSUES
foodAccess AccessStatus // OK, ISSUES
flaggedForAttention Boolean @default(false)
issuePhotoUrl String?
referencePhotoUrl String? // Photo of healthy system
notes String?
createdAt DateTime @default(now())
}
enum WalkthroughStatus {
IN_PROGRESS
COMPLETED
INCOMPLETE
}
enum TankType {
VEG
FLOWER
}
enum TankStatus {
OK
LOW
CRITICAL
}
enum HealthStatus {
GOOD
FAIR
NEEDS_ATTENTION
}
enum AccessStatus {
OK
ISSUES
}
```
---
## 📱 Mobile UI Requirements
### Morning Walkthrough Screen
**Layout** (Mobile-First):
1. **Header**: "Daily Walkthrough - [Date]"
2. **Progress Bar**: Shows completion (e.g., "2 of 3 sections complete")
3. **Sections** (Expandable):
- ✅ Reservoir Checks (4 tanks)
- ⏳ Irrigation System (4 zones)
- ⬜ Plant Health (4 zones)
**Each Section**:
- Large, touch-friendly checkboxes
- Photo upload button (camera icon)
- Quick status buttons (OK / Issue)
- Notes field (expandable)
- "Next" button to advance
**Features**:
- **Offline support**: Can complete walkthrough without internet
- **Photo compression**: Optimize images before upload
- **Auto-save**: Save progress as you go
- **Quick mode**: Default to "OK" for speed
- **Issue mode**: Expand details when issue detected
---
## 🎨 User Experience Flow
### Morning Routine
1. Staff member clocks in
2. App prompts: "Start Daily Walkthrough?"
3. Guided checklist begins:
- **Step 1**: Reservoir Checks
- Show list of all tanks
- Tap each to mark status
- Camera button for issues
- **Step 2**: Irrigation Checks
- Show zones (Veg Up, Veg Down, Flower Up, Flower Down)
- Quick checkboxes for each item
- Photo of working system
- **Step 3**: Plant Health
- Zone-by-zone quick inspection
- Flag issues with photos
- Reference photo for uniformity
4. Review summary
5. Submit walkthrough
6. Dashboard shows completion status
---
## 🔔 Notifications & Alerts
### Critical Alerts
- Tank below 20%: Immediate alert to manager
- Multiple drippers failed: Alert head grower
- Pests observed: Alert to all cultivation staff
### Daily Summary
- Morning walkthrough completion status
- Issues flagged count
- Zones needing attention
---
## 📊 Reporting
### Daily Report
- Walkthrough completion time
- Issues found vs. resolved
- Trends (recurring issues)
### Weekly Report
- Walkthrough completion rate
- Most common issues
- Response time to issues
---
## ✅ Acceptance Criteria
- [ ] Staff can start daily walkthrough from dashboard
- [ ] All reservoir tanks listed and checkable
- [ ] All zones (4) listed for irrigation check
- [ ] All zones (4) listed for plant health check
- [ ] Photos can be taken and attached to any check
- [ ] Issues are flagged and visible on dashboard
- [ ] Walkthrough can be saved and resumed
- [ ] Completion triggers summary view
- [ ] Manager can view all walkthroughs
- [ ] Historical walkthroughs are searchable
---
## 🚀 Implementation Priority
**Phase**: Should be in **Phase 1** (Foundation) - This is core daily operations
**Estimated Effort**:
- Database schema: 2 hours
- Backend API: 3 hours
- Mobile UI: 4-5 hours
- Testing: 2 hours
- **Total**: ~12 hours (1.5-2 days)
---
## 🔗 Related Specs
- **Tasks and Scheduling**: Daily walkthrough is a recurring task
- **Batches and Rooms**: Zones map to rooms/batches
- **Compliance**: Walkthrough records are audit trail
- **Communications**: Issues trigger notifications
---
## 📝 Notes from 777 Wolfpack Team
> "Super crucial is a daily walkthrough of whole facility af first steps in am"
This is the **#1 priority** for daily operations. Everything else builds on this foundation.
**Key Insights**:
- Must be **first thing in the morning**
- Must be **systematic** (not ad-hoc)
- Must capture **photos for uniformity**
- Must **identify zones needing attention**
- Must verify **all critical systems** (water, food, drippers)
---
## ✨ Future Enhancements
- [ ] Voice notes instead of typing
- [ ] Barcode scanning for tanks/zones
- [ ] AI-assisted pest identification from photos
- [ ] Predictive alerts based on historical data
- [ ] Integration with environmental sensors