--- tags: - eventkit - discovery-questions --- # Discovery Questions — Round 5 We're narrowing in on the final implementation details. This round focuses on **data architecture**, **notification specifics**, **multi-tenancy edge cases**, and **operational workflows**. --- ## 🗄️ Data Architecture ### 1. Tenant Isolation (SaaS Mode) For the shared-DB multi-tenancy with RLS — should tenants be able to: - [ ] Share nothing (complete isolation, even separate schemas) - [ ] Share reference data (e.g. common product catalogues, venue databases) - [ ] Share everything except user data (federated approach within SaaS) - [x] Complete isolation via RLS — no cross-tenant data ever > **Answer:** Federate using Federation Architecture ### 2. Data Retention Policy How long should data be kept? - [ ] Indefinitely (never auto-purge) - [x] Configurable retention per entity type (e.g. events: 5 years, audit logs: 7 years) - [ ] Configurable globally (e.g. "keep everything for 10 years") - [x] Follow Austrian/EU legal requirements (varies by document type) > **Answer:** ### 3. File Versioning When a file attached to an asset is updated (e.g. new manual version): - [ ] Overwrite the old file - [x] Keep version history (v1, v2, v3) - [ ] Keep version history with diff/comparison view > **Answer:** --- ## 🔔 Notifications ### 4. Notification Preferences Should users control which notifications they receive? - [x] Yes — granular per-event-type toggle (e.g. "notify me about overdue returns but not new quotes") - [ ] Yes — but only broad categories (e.g. "inventory alerts", "CRM updates") - [ ] No — admins configure notification rules globally > **Answer:** Future feature ### 5. Email Templates Should notification emails be customisable? - [ ] Fixed templates (EventKit branding) - [ ] Tenant-branded templates (company logo, colours) - [ ] Fully customisable HTML templates per notification type - [x] Tenant-branded for MVP, full customisation later > **Answer:** --- ## 🏢 Multi-Tenancy & Operations ### 6. Tenant Onboarding For SaaS, how should new tenants be set up? - [ ] Self-service sign-up (create account → start using immediately) - [x] Self-service with admin approval before activation - [x] Manual onboarding (admin creates tenant) - [ ] Self-service for MVP, approval flow later > **Answer:** ### 7. Tenant Data Export Should tenants be able to export all their data (GDPR Article 20)? - [x] Yes — full data export in JSON/CSV at any time - [x] Yes — full export + ability to delete all data (right to be forgotten) - [ ] Admin-triggered export only > **Answer:** ### 8. Tenant Limits / Quotas Should the SaaS tier enforce limits? - [ ] No limits (fair use policy) - [x] Soft limits with warnings (e.g. "you have 10,000 assets, consider upgrading") - [ ] Hard limits per plan (e.g. free: 100 assets, pro: 10,000, enterprise: unlimited) - [x] Decide pricing tiers later > **Answer:** --- ## 📋 Operational Workflows ### 9. Return Inspection Detail When equipment returns from an event, how detailed should the inspection be? - [ ] Simple: scan asset → mark as returned → done - [ ] Standard: scan → condition check (good/damaged) → shelve - [x] Detailed: scan → per-item checklist → photos → condition update → cleaning queue → shelve - [ ] Configurable per product category > **Answer:** ### 10. Consumable Allocation How should consumables be tracked per event? - [x] Estimated at planning stage, actual recorded after event - [ ] Deducted from stock when event is confirmed - [x] Deducted when physically dispatched (scan-based) - [ ] Flexible — user chooses per consumable type > **Answer:** ### 11. Asset Reservation Rules When equipment is reserved for an event, should: - [ ] Hard reservation — cannot be booked for anything else in that window - [ ] Soft reservation — can be overridden with manager approval - [x] Configurable per event priority level > **Answer:** --- ## 🔌 API & Developer Experience ### 12. API Documentation How should the API be documented? - [x] Auto-generated from Protobuf definitions (buf.build registry) - [ ] OpenAPI/Swagger (via ConnectRPC's REST mapping) - [ ] Both Protobuf docs + OpenAPI - [x] Minimal docs for now — just the .proto files > **Answer:** ### 13. Plugin / Extension System Should EventKit support third-party plugins or extensions? - [ ] Yes — from the start (plugin API, hooks, event system) - [x] Yes — but later (design for it now, implement later) - [ ] No — keep it simple, extensibility via webhooks and API > **Answer:** ### 14. Import from Other Systems What systems might users migrate from? - [x] Spreadsheets (Excel/Google Sheets) - [x] Rentman - [x] Flex Rental Solutions - [x] Current RMS - [x] EasyJob - [x] Custom / in-house systems - [x] Don't know yet — generic CSV import is enough for now > **Answer:** All of the above, but optoinal feature for sumetimes in the future. --- ## 🎨 UI Detail ### 15. Table vs Card Views For list pages (assets, events, contacts), should there be: - [ ] Table view only (data-dense, sortable columns) - [ ] Card view only (visual, thumbnail-based) - [ ] Both — user toggles between table and card view - [x] Table default, card view for specific entities (e.g. assets with photos) > **Answer:** ### 16. Keyboard Shortcuts Beyond Cmd+K, should there be keyboard shortcuts for common actions? - [x] Yes — full keyboard navigation (like Linear) - [ ] Basic shortcuts only (Cmd+N new, Cmd+S save, etc.) - [ ] Not needed for MVP > **Answer:** --- ## Related Documentation - [[00-DiscoveryQuestions]] — Round 1 answers - [[01-DiscoveryQuestions]] — Round 2 answers - [[02-DiscoveryQuestions]] — Round 3 answers - [[03-DiscoveryQuestions]] — Round 4 answers - [[07-TechnicalRequirements]] — Technical decisions made