1- # 🧩 SysAid to Azure DevOps Bug Sync
1+ # SysAid to Azure DevOps Bug Sync
22
33This project synchronizes SysAid support tickets (Service Requests) into Azure DevOps (ADO) as ** Bugs** , complete with:
44
@@ -10,7 +10,7 @@ This project synchronizes SysAid support tickets (Service Requests) into Azure D
1010
1111---
1212
13- ## 📁 Project Structure
13+ ## Project Structure
1414
1515```
1616sysaid_to_ado/
@@ -27,7 +27,7 @@ sysaid_to_ado/
2727
2828---
2929
30- ## 🔐 Security & HIPAA Compliance
30+ ## Security & HIPAA Compliance
3131
3232- Redacts fields using regex and SpaCy NER before syncing to ADO
3333- Logs each detection/redaction to 'logs/sync.log'
@@ -40,7 +40,7 @@ sysaid_to_ado/
4040
4141---
4242
43- ## 🔄 Sync Logic
43+ ## Sync Logic
4444
4545### On each run:
46461 . Fetch ** new or updated** SysAid tickets since last run
@@ -55,7 +55,7 @@ sysaid_to_ado/
5555
5656---
5757
58- ## 🔧 Setup Instructions
58+ ## Setup Instructions
5959
6060### 1. Install Requirements
6161
@@ -78,7 +78,7 @@ SYSAID_API_TOKEN=your-sysaid-token
7878SYSAID_BASE_URL=https://yourcompany.sysaidit.com
7979```
8080
81- > 🔒 Keep this file out of version control.
81+ > Keep this file out of version control.
8282
8383### 3. Run the Sync
8484
@@ -95,7 +95,7 @@ Created: 3, Updated: 2, Failed: 0
9595
9696---
9797
98- ## 🧪 Sample Ticket Input
98+ ## Sample Ticket Input
9999
100100Example of a SysAid ticket passed to ADO:
101101
@@ -113,7 +113,7 @@ Example of a SysAid ticket passed to ADO:
113113
114114---
115115
116- ## 📎 Parent Linking (Optional)
116+ ## Parent Linking (Optional)
117117
118118If 'ticket[ "parent_id"] ' is provided:
119119- Bug will be linked to that work item
@@ -122,26 +122,26 @@ If 'ticket["parent_id"]' is provided:
122122
123123---
124124
125- ## 📜 Logs and Auditing
125+ ## Logs and Auditing
126126
127127- 'logs/sync.log' contains full run trace
128128- Every detection, failure, and update is logged
129129- Run identity is captured via 'get_current_user_identity()'
130130
131131---
132132
133- ## 🛡 Best Practices Followed
133+ ## Best Practices Followed
134134
135- - ✅ Secrets kept in '.env' or config.py
136- - ✅ Redaction applied before API submission
137- - ✅ Updates only occur when needed
138- - ✅ JSON Patch structure for ADO
139- - ✅ Graceful exception handling
140- - ✅ Configurable log file via 'utils.setup_logger()'
135+ - Secrets kept in '.env' or config.py
136+ - Redaction applied before API submission
137+ - Updates only occur when needed
138+ - JSON Patch structure for ADO
139+ - Graceful exception handling
140+ - Configurable log file via 'utils.setup_logger()'
141141
142142---
143143
144- ## 🤝 Contributions
144+ ## Contributions
145145
146146You're welcome to extend this to:
147147
@@ -152,7 +152,7 @@ You're welcome to extend this to:
152152
153153---
154154
155- ## 📅 Created April 2025
155+ ## Created April 2025
156156
157157Maintained by: ** Hans Esquivel**
158158License: MIT (or internal)
0 commit comments