Overview
Create an Azure DevOps extension that provides additional configuration and storage capabilities for DevDesk beyond what's available in standard DevOps fields.
Required Capabilities
1. User Profile Extensions
Custom fields for Azure DevOps user profiles:
- Lightning Address - Agent's Lightning address for receiving ZapDesk tips (e.g.,
agent@getalby.com)
- NWC Connection String - Nostr Wallet Connect URI for programmatic wallet access
- Agent Availability Status - Available, Busy, Away, Offline
- Skills/Specializations - Tags for skills-based routing
2. Project Configuration
Custom properties for DevOps projects:
- Email Domain(s) - Comma-separated list of email domains that route to this project (e.g.,
cairnhomes.com, cairnhomes.ie)
- Business Hours - Operating hours with timezone (for SLA calculations)
- Default Assignee - User or team for auto-assignment
- Auto-Assignment Mode - None, Round-Robin, Load-Balanced, Skills-Based
- Escalation Contact - Manager/team for escalations
3. SLA Configuration
Store SLA policies at the organization or project level:
- SLA Tiers - Gold, Silver, Bronze (or custom)
- Response Time Targets - First response SLA per priority (Urgent: 1hr, High: 4hr, etc.)
- Resolution Time Targets - Resolution SLA per priority
- Business Hours vs 24/7 - Whether SLA counts only business hours
- SLA Conditions - Rules for which tickets get which SLA tier (by tag, requester domain, etc.)
- Breach Notifications - Who to notify on SLA breach
4. Ticket Enhancements
- Custom Ticket Types - Beyond standard DevOps work item types
- Canned Responses - Stored macro/template responses for common issues
- Ticket Categories - Hierarchical categorization (Hardware > Laptop > Screen)
- Required Fields - Enforce certain fields on ticket creation
5. Organization/Customer Data
- Customer Profiles - Extended customer metadata beyond what's in AAD
- Organization SLA Tier - Default SLA tier for an organization
- Organization Tags - For filtering and automation
- Primary Contact - Main point of contact for an org
Optional / Future Capabilities
DevDesk Navigation Tab
- Add a "DevDesk" or "Support" tab to the DevOps navigation
- Shows work items tagged with
ticket in a Zendesk-like view
- Quick filters: My Tickets, Unassigned, All Open
- Note: May implement this later, lower priority
Reporting Dashboard
- Ticket volume trends
- SLA compliance metrics
- Agent performance stats
- Customer satisfaction scores
Automation Rules
- Auto-tagging based on content
- Auto-assignment rules
- Auto-responses for specific conditions
- Escalation triggers
Technical Approach
- Build as Azure DevOps Extension (TypeScript/React)
- Use DevOps Extension Data Storage for custom fields
- Contribute to user profile, project settings, and work item form
- REST API for DevDesk to query configuration
- Consider using DevOps Extension Settings for org-wide config
References
Acceptance Criteria
Related
Overview
Create an Azure DevOps extension that provides additional configuration and storage capabilities for DevDesk beyond what's available in standard DevOps fields.
Required Capabilities
1. User Profile Extensions
Custom fields for Azure DevOps user profiles:
agent@getalby.com)2. Project Configuration
Custom properties for DevOps projects:
cairnhomes.com, cairnhomes.ie)3. SLA Configuration
Store SLA policies at the organization or project level:
4. Ticket Enhancements
5. Organization/Customer Data
Optional / Future Capabilities
DevDesk Navigation Tab
ticketin a Zendesk-like viewReporting Dashboard
Automation Rules
Technical Approach
References
Acceptance Criteria
Related