--- tags: - eventkit - discovery-questions --- # Discovery Questions โ€” Round 4 We're now deep into implementation territory. This round focuses on **UI/UX workflows**, **edge cases**, **integrations**, and **operational details**. --- ## ๐Ÿ–ฅ๏ธ UI & Workflows ### 1. Dashboard โ€” What's Most Important? What should the main dashboard show when a user logs in? Pick your top priorities: - [x] Upcoming events (next 7/14/30 days) - [x] Equipment utilisation overview - [x] Open quotes / pending approvals - [x] Overdue returns / missing equipment - [x] Revenue summary - [x] Low-stock consumable alerts - [x] Crew availability overview - [x] Recent activity feed - [ ] Other: \_\_\_ > **Answer:** Configurable dashboard per user. Multiple with simple view switching ### 2. Navigation Structure How should the main app be structured? - [ ] Sidebar navigation with module sections (Inventory, Planning, CRM, etc.) - [ ] Top navigation bar with dropdowns - [x] Sidebar + command palette (Cmd+K) for quick navigation - [ ] Other preference: \_\_\_ > **Answer:** ### 3. Bulk Operations Which bulk operations are critical for daily work? - [ ] Bulk status change (e.g. mark 50 assets as "In Service") - [ ] Bulk assign to event (select multiple assets โ†’ assign to pull list) - [ ] Bulk print labels (select assets โ†’ generate label sheet) - [ ] Bulk import (CSV upload for assets, contacts, products) - [ ] Bulk export (export filtered views to CSV/Excel) - [x] All of the above > **Answer:** --- ## ๐Ÿ“Š Reporting & Analytics ### 4. Report Output Formats How should reports be delivered? - [ ] In-app only (charts and tables on screen) - [ ] PDF export - [ ] CSV/Excel export - [ ] Scheduled email delivery (e.g. weekly utilisation report) - [x] All of the above > **Answer:** ### 5. Custom Reports Should users be able to build custom reports, or are predefined reports enough for MVP? - [ ] Predefined reports only - [x] Predefined + simple filters/grouping - [x] Full custom report builder (drag-and-drop fields, custom calculations) - [x] Predefined for MVP, custom builder later > **Answer:** --- ## ๐Ÿ”„ Integrations & Webhooks ### 6. Webhook Events Which events should trigger outbound webhooks? Pick the critical ones: - [x] Asset status changed (checked out, returned, damaged) - [x] Event status changed (confirmed, completed, cancelled) - [x] Quote approved / rejected by client - [x] Invoice paid - [x] Low stock alert - [x] Federation events (sub-hire request, asset transfer) - [x] All entity changes (CRUD on any major entity) > **Answer:** ### 7. Bank API Integration You mentioned automatic payment tracking via bank APIs. Any preferences? - [x] Open Banking APIs (PSD2 โ€” European standard) - [ ] Specific bank: \_\_\_ - [x] Generic bank statement import (CSV/MT940) - [x] Not sure yet โ€” decide later > **Answer:** --- ## ๐Ÿ“ฆ Warehouse Operations ### 8. Stocktake Process How should stocktakes work? - [x] Full stocktake โ€” scan everything, compare against expected inventory - [x] Partial/zone stocktake โ€” scan specific areas/shelves - [x] Continuous rolling stocktake โ€” scan a section each day - [x] All approaches > **Answer:** User selectable ### 9. Prep Workflow When preparing equipment for an event, should there be a formal "prep checklist"? - [x] Yes โ€” per-product checklist (e.g. "test power", "check firmware", "include accessories") - [x] No โ€” just scan to check out, the pull list is the checklist - [x] Optional checklists โ€” define per product category if wanted > **Answer:** User selectable. ### 10. Damage Reporting When equipment returns damaged, what should happen? - [x] Flag asset as damaged, create maintenance task automatically - [x] Flag + photo evidence required - [x] Flag + photo + cost estimate for client charge-back - [x] Configurable workflow per damage severity > **Answer:** User selectable. --- ## ๐ŸŒ Federation โ€” Edge Cases ### 11. Federation Downtime When a federated partner's instance is offline, what should happen to pending requests? - [x] Queue in outbox, retry automatically when partner comes back - [x] Queue + notify admin after X hours of failed retries - [x] Fail immediately with manual retry option > **Answer:** User selectable. ### 12. Federation Data Sync How much data should be visible about a partner's inventory? - [ ] Nothing โ€” they respond to availability queries in real-time - [ ] Cached summary (category counts, general availability) - [ ] Product catalogue shared (but not individual asset details) - [x] Configurable per trust level > **Answer:** --- ## โšก Performance & Infrastructure ### 13. Caching Strategy For a Kubernetes deployment, what caching layer do you prefer? - [x] Redis (already considering for background jobs โ€” reuse for caching) - [ ] In-memory only (Go's built-in caching, no external dependency) - [ ] No caching for MVP โ€” optimise later > **Answer:** Redis ### 14. Database Migrations How should schema migrations be handled? - [ ] Automatic on startup (app runs migrations before serving) - [ ] Separate migration step (run migrations explicitly before deploying new version) - [x] Both โ€” auto for dev, explicit for production > **Answer:** Both โ€” auto for dev, explicit for production --- ## ๐Ÿ“„ Documents & Branding ### 15. Document Branding For generated PDFs (quotes, invoices, pull lists), how customisable should branding be? - [x] Basic โ€” company logo + name + colours - [x] Full template customisation (header, footer, fonts, layout) - [x] HTML/CSS template engine (users provide their own templates) - [x] Basic for MVP, full templates later > **Answer:** User selectable. ### 16. Document Numbering How should quotes and invoices be numbered? - [ ] Sequential: `INV-0001`, `INV-0002` - [ ] Year-based: `INV-2026-0001` - [x] Configurable prefix + sequence per document type - [ ] Other: \_\_\_ > **Answer:** Configurable prefix + sequence per document type. --- ## ๐Ÿงช Testing & Quality ### 17. Testing Strategy For development, which testing approach do you prefer? - [ ] Unit tests + integration tests (standard) - [ ] Unit + integration + E2E browser tests (Playwright/Cypress) - [ ] Heavy emphasis on integration tests with testcontainers - [x] Whatever gets us shipping fastest with confidence > **Answer:** ### 18. Staging Environment Should there be a formal staging/preview environment? - [ ] Yes โ€” dedicated staging with sample data - [x] Yes โ€” ephemeral preview environments per PR (Kubernetes-native) - [x] No โ€” local dev + production is enough for now > **Answer:** Yes โ€” ephemeral preview environments per PR (Kubernetes-native) not with priority --- ## Related Documentation - [[00-DiscoveryQuestions]] โ€” Round 1 answers - [[01-DiscoveryQuestions]] โ€” Round 2 answers - [[02-DiscoveryQuestions]] โ€” Round 3 answers - [[07-TechnicalRequirements]] โ€” Technical decisions made