@cloudstreamsoftware/claude-tools 1.0.0 → 1.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (189) hide show
  1. package/README.md +152 -37
  2. package/agents/INDEX.md +183 -0
  3. package/agents/architect.md +247 -0
  4. package/agents/build-error-resolver.md +555 -0
  5. package/agents/catalyst-deployer.md +132 -0
  6. package/agents/code-reviewer.md +121 -0
  7. package/agents/compliance-auditor.md +148 -0
  8. package/agents/creator-architect.md +395 -0
  9. package/agents/deluge-reviewer.md +98 -0
  10. package/agents/doc-updater.md +471 -0
  11. package/agents/e2e-runner.md +711 -0
  12. package/agents/planner.md +122 -0
  13. package/agents/refactor-cleaner.md +309 -0
  14. package/agents/security-reviewer.md +582 -0
  15. package/agents/tdd-guide.md +302 -0
  16. package/config/versions.json +63 -0
  17. package/dist/hooks/hooks.json +209 -0
  18. package/dist/index.js +47 -0
  19. package/dist/lib/asset-value.js +609 -0
  20. package/dist/lib/client-manager.js +300 -0
  21. package/dist/lib/command-matcher.js +242 -0
  22. package/dist/lib/cross-session-patterns.js +754 -0
  23. package/dist/lib/intent-classifier.js +1075 -0
  24. package/dist/lib/package-manager.js +374 -0
  25. package/dist/lib/recommendation-engine.js +597 -0
  26. package/dist/lib/session-memory.js +489 -0
  27. package/dist/lib/skill-effectiveness.js +486 -0
  28. package/dist/lib/skill-matcher.js +595 -0
  29. package/dist/lib/tutorial-metrics.js +242 -0
  30. package/dist/lib/tutorial-progress.js +209 -0
  31. package/dist/lib/tutorial-renderer.js +431 -0
  32. package/dist/lib/utils.js +380 -0
  33. package/dist/lib/verify-formatter.js +143 -0
  34. package/dist/lib/workflow-state.js +249 -0
  35. package/hooks/hooks.json +209 -0
  36. package/package.json +5 -1
  37. package/scripts/aggregate-sessions.js +290 -0
  38. package/scripts/branch-name-validator.js +291 -0
  39. package/scripts/build.js +101 -0
  40. package/scripts/commands/client-switch.js +231 -0
  41. package/scripts/deprecate-skill.js +610 -0
  42. package/scripts/diagnose.js +324 -0
  43. package/scripts/doc-freshness.js +168 -0
  44. package/scripts/generate-weekly-digest.js +393 -0
  45. package/scripts/health-check.js +270 -0
  46. package/scripts/hooks/credential-check.js +101 -0
  47. package/scripts/hooks/evaluate-session.js +81 -0
  48. package/scripts/hooks/pre-compact.js +66 -0
  49. package/scripts/hooks/prompt-analyzer.js +276 -0
  50. package/scripts/hooks/prompt-router.js +422 -0
  51. package/scripts/hooks/quality-gate-enforcer.js +371 -0
  52. package/scripts/hooks/session-end.js +156 -0
  53. package/scripts/hooks/session-start.js +195 -0
  54. package/scripts/hooks/skill-injector.js +333 -0
  55. package/scripts/hooks/suggest-compact.js +58 -0
  56. package/scripts/lib/asset-value.js +609 -0
  57. package/scripts/lib/client-manager.js +300 -0
  58. package/scripts/lib/command-matcher.js +242 -0
  59. package/scripts/lib/cross-session-patterns.js +754 -0
  60. package/scripts/lib/intent-classifier.js +1075 -0
  61. package/scripts/lib/package-manager.js +374 -0
  62. package/scripts/lib/recommendation-engine.js +597 -0
  63. package/scripts/lib/session-memory.js +489 -0
  64. package/scripts/lib/skill-effectiveness.js +486 -0
  65. package/scripts/lib/skill-matcher.js +595 -0
  66. package/scripts/lib/tutorial-metrics.js +242 -0
  67. package/scripts/lib/tutorial-progress.js +209 -0
  68. package/scripts/lib/tutorial-renderer.js +431 -0
  69. package/scripts/lib/utils.js +380 -0
  70. package/scripts/lib/verify-formatter.js +143 -0
  71. package/scripts/lib/workflow-state.js +249 -0
  72. package/scripts/onboard.js +363 -0
  73. package/scripts/quarterly-report.js +692 -0
  74. package/scripts/setup-package-manager.js +204 -0
  75. package/scripts/sync-upstream.js +391 -0
  76. package/scripts/test.js +108 -0
  77. package/scripts/tutorial-runner.js +351 -0
  78. package/scripts/validate-all.js +201 -0
  79. package/scripts/verifiers/agents.js +245 -0
  80. package/scripts/verifiers/config.js +186 -0
  81. package/scripts/verifiers/environment.js +123 -0
  82. package/scripts/verifiers/hooks.js +188 -0
  83. package/scripts/verifiers/index.js +38 -0
  84. package/scripts/verifiers/persistence.js +140 -0
  85. package/scripts/verifiers/plugin.js +215 -0
  86. package/scripts/verifiers/skills.js +209 -0
  87. package/scripts/verify-setup.js +164 -0
  88. package/skills/INDEX.md +157 -0
  89. package/skills/backend-patterns/SKILL.md +586 -0
  90. package/skills/backend-patterns/catalyst-patterns.md +128 -0
  91. package/skills/bigquery-patterns/SKILL.md +27 -0
  92. package/skills/bigquery-patterns/performance-optimization.md +518 -0
  93. package/skills/bigquery-patterns/query-patterns.md +372 -0
  94. package/skills/bigquery-patterns/schema-design.md +78 -0
  95. package/skills/cloudstream-project-template/SKILL.md +20 -0
  96. package/skills/cloudstream-project-template/structure.md +65 -0
  97. package/skills/coding-standards/SKILL.md +524 -0
  98. package/skills/coding-standards/deluge-standards.md +83 -0
  99. package/skills/compliance-patterns/SKILL.md +28 -0
  100. package/skills/compliance-patterns/hipaa/audit-requirements.md +251 -0
  101. package/skills/compliance-patterns/hipaa/baa-process.md +298 -0
  102. package/skills/compliance-patterns/hipaa/data-archival-strategy.md +387 -0
  103. package/skills/compliance-patterns/hipaa/phi-handling.md +52 -0
  104. package/skills/compliance-patterns/pci-dss/saq-a-requirements.md +307 -0
  105. package/skills/compliance-patterns/pci-dss/tokenization-patterns.md +382 -0
  106. package/skills/compliance-patterns/pci-dss/zoho-checkout-patterns.md +56 -0
  107. package/skills/compliance-patterns/soc2/access-controls.md +344 -0
  108. package/skills/compliance-patterns/soc2/audit-logging.md +458 -0
  109. package/skills/compliance-patterns/soc2/change-management.md +403 -0
  110. package/skills/compliance-patterns/soc2/deluge-execution-logging.md +407 -0
  111. package/skills/consultancy-workflows/SKILL.md +19 -0
  112. package/skills/consultancy-workflows/client-isolation.md +21 -0
  113. package/skills/consultancy-workflows/documentation-automation.md +454 -0
  114. package/skills/consultancy-workflows/handoff-procedures.md +257 -0
  115. package/skills/consultancy-workflows/knowledge-capture.md +513 -0
  116. package/skills/consultancy-workflows/time-tracking.md +26 -0
  117. package/skills/continuous-learning/SKILL.md +84 -0
  118. package/skills/continuous-learning/config.json +18 -0
  119. package/skills/continuous-learning/evaluate-session.sh +60 -0
  120. package/skills/continuous-learning-v2/SKILL.md +126 -0
  121. package/skills/continuous-learning-v2/config.json +61 -0
  122. package/skills/frontend-patterns/SKILL.md +635 -0
  123. package/skills/frontend-patterns/zoho-widget-patterns.md +103 -0
  124. package/skills/gcp-data-engineering/SKILL.md +36 -0
  125. package/skills/gcp-data-engineering/bigquery/performance-optimization.md +337 -0
  126. package/skills/gcp-data-engineering/dataflow/error-handling.md +496 -0
  127. package/skills/gcp-data-engineering/dataflow/pipeline-patterns.md +444 -0
  128. package/skills/gcp-data-engineering/dbt/model-organization.md +63 -0
  129. package/skills/gcp-data-engineering/dbt/testing-patterns.md +503 -0
  130. package/skills/gcp-data-engineering/medallion-architecture/bronze-layer.md +60 -0
  131. package/skills/gcp-data-engineering/medallion-architecture/gold-layer.md +311 -0
  132. package/skills/gcp-data-engineering/medallion-architecture/layer-transitions.md +517 -0
  133. package/skills/gcp-data-engineering/medallion-architecture/silver-layer.md +305 -0
  134. package/skills/gcp-data-engineering/zoho-to-gcp/data-extraction.md +543 -0
  135. package/skills/gcp-data-engineering/zoho-to-gcp/real-time-vs-batch.md +337 -0
  136. package/skills/security-review/SKILL.md +498 -0
  137. package/skills/security-review/compliance-checklist.md +53 -0
  138. package/skills/strategic-compact/SKILL.md +67 -0
  139. package/skills/tdd-workflow/SKILL.md +413 -0
  140. package/skills/tdd-workflow/zoho-testing.md +124 -0
  141. package/skills/tutorial/SKILL.md +249 -0
  142. package/skills/tutorial/docs/ACCESSIBILITY.md +169 -0
  143. package/skills/tutorial/lessons/00-philosophy-and-workflow.md +198 -0
  144. package/skills/tutorial/lessons/01-basics.md +81 -0
  145. package/skills/tutorial/lessons/02-training.md +86 -0
  146. package/skills/tutorial/lessons/03-commands.md +109 -0
  147. package/skills/tutorial/lessons/04-workflows.md +115 -0
  148. package/skills/tutorial/lessons/05-compliance.md +116 -0
  149. package/skills/tutorial/lessons/06-zoho.md +121 -0
  150. package/skills/tutorial/lessons/07-hooks-system.md +277 -0
  151. package/skills/tutorial/lessons/08-mcp-servers.md +316 -0
  152. package/skills/tutorial/lessons/09-client-management.md +215 -0
  153. package/skills/tutorial/lessons/10-testing-e2e.md +260 -0
  154. package/skills/tutorial/lessons/11-skills-deep-dive.md +272 -0
  155. package/skills/tutorial/lessons/12-rules-system.md +326 -0
  156. package/skills/tutorial/lessons/13-golden-standard-graduation.md +213 -0
  157. package/skills/tutorial/lessons/14-fork-setup-and-sync.md +312 -0
  158. package/skills/tutorial/lessons/15-living-examples-system.md +221 -0
  159. package/skills/tutorial/tracks/accelerated/README.md +134 -0
  160. package/skills/tutorial/tracks/accelerated/assessment/checkpoint-1.md +161 -0
  161. package/skills/tutorial/tracks/accelerated/assessment/checkpoint-2.md +175 -0
  162. package/skills/tutorial/tracks/accelerated/day-1-core-concepts.md +234 -0
  163. package/skills/tutorial/tracks/accelerated/day-2-essential-commands.md +270 -0
  164. package/skills/tutorial/tracks/accelerated/day-3-workflow-mastery.md +305 -0
  165. package/skills/tutorial/tracks/accelerated/day-4-compliance-zoho.md +304 -0
  166. package/skills/tutorial/tracks/accelerated/day-5-hooks-skills.md +344 -0
  167. package/skills/tutorial/tracks/accelerated/day-6-client-testing.md +386 -0
  168. package/skills/tutorial/tracks/accelerated/day-7-graduation.md +369 -0
  169. package/skills/zoho-patterns/CHANGELOG.md +108 -0
  170. package/skills/zoho-patterns/SKILL.md +446 -0
  171. package/skills/zoho-patterns/analytics/dashboard-patterns.md +352 -0
  172. package/skills/zoho-patterns/analytics/zoho-to-bigquery-pipeline.md +427 -0
  173. package/skills/zoho-patterns/catalyst/appsail-deployment.md +349 -0
  174. package/skills/zoho-patterns/catalyst/context-close-patterns.md +354 -0
  175. package/skills/zoho-patterns/catalyst/cron-batch-processing.md +374 -0
  176. package/skills/zoho-patterns/catalyst/function-patterns.md +439 -0
  177. package/skills/zoho-patterns/creator/form-design.md +304 -0
  178. package/skills/zoho-patterns/creator/publish-api-patterns.md +313 -0
  179. package/skills/zoho-patterns/creator/widget-integration.md +306 -0
  180. package/skills/zoho-patterns/creator/workflow-automation.md +253 -0
  181. package/skills/zoho-patterns/deluge/api-patterns.md +468 -0
  182. package/skills/zoho-patterns/deluge/batch-processing.md +403 -0
  183. package/skills/zoho-patterns/deluge/cross-app-integration.md +356 -0
  184. package/skills/zoho-patterns/deluge/error-handling.md +423 -0
  185. package/skills/zoho-patterns/deluge/syntax-reference.md +65 -0
  186. package/skills/zoho-patterns/integration/cors-proxy-architecture.md +426 -0
  187. package/skills/zoho-patterns/integration/crm-books-native-sync.md +277 -0
  188. package/skills/zoho-patterns/integration/oauth-token-management.md +461 -0
  189. package/skills/zoho-patterns/integration/zoho-flow-patterns.md +334 -0
@@ -0,0 +1,403 @@
1
+ # SOC 2 Change Management
2
+
3
+ ## Overview
4
+
5
+ Zoho Creator does **NOT** have native change management capabilities. There is no built-in version control, no approval workflow for schema changes, and no automatic change tracking for form/workflow modifications. SOC 2 Trust Service Criteria CC8.1 requires that changes to infrastructure, data, software, and procedures are authorized, tested, and approved before implementation.
6
+
7
+ This document defines the custom change management process CloudStream builds for SOC 2-compliant Creator implementations.
8
+
9
+ > **WARNING**: Every change to a production Creator application must go through this process. "Quick fixes" deployed directly to production are SOC 2 audit failures -- no exceptions.
10
+
11
+ ---
12
+
13
+ ## Custom Change Management Workflow
14
+
15
+ ### Process Flow
16
+
17
+ ```
18
+ Change Identified
19
+ |
20
+ v
21
+ Change Request Form Submitted (Requester)
22
+ |
23
+ v
24
+ Initial Triage (IT Admin, < 4 hours)
25
+ |
26
+ +-- Incomplete --> Return to requester for more info
27
+ |
28
+ v
29
+ Technical Review (Developer/Reviewer)
30
+ |
31
+ +-- Rejected --> Notify requester with rationale
32
+ |
33
+ v
34
+ Testing in Dev/Staging Environment
35
+ |
36
+ v
37
+ Test Results Documented
38
+ |
39
+ v
40
+ Approval (Change Approver - NOT the developer)
41
+ |
42
+ +-- Denied --> Return for rework
43
+ |
44
+ v
45
+ Scheduled Deployment Window
46
+ |
47
+ v
48
+ Production Deployment (by authorized deployer)
49
+ |
50
+ v
51
+ Post-Implementation Verification
52
+ |
53
+ v
54
+ Change Record Closed
55
+ ```
56
+
57
+ ---
58
+
59
+ ## Change Request Form Design
60
+
61
+ ### Creator Form: Change_Requests
62
+
63
+ ```
64
+ Fields:
65
+ - CR_ID (Auto-number, format: CR-YYYY-####)
66
+ - Request_Date (DateTime, auto-populated)
67
+ - Requester (Lookup to Employees)
68
+ - Change_Type (Picklist):
69
+ - New Feature
70
+ - Enhancement
71
+ - Bug Fix
72
+ - Configuration Change
73
+ - Security Patch
74
+ - Emergency Fix
75
+ - Priority (Picklist: Low/Medium/High/Critical)
76
+ - Title (Single Line, required)
77
+ - Description (Multi Line, required)
78
+ - Business_Justification (Multi Line, required)
79
+ - Affected_Forms (Multi Select Lookup to Form_Inventory)
80
+ - Affected_Workflows (Multi Line)
81
+ - Risk_Assessment (Picklist: Low/Medium/High)
82
+ - Rollback_Plan (Multi Line, required)
83
+ - Testing_Requirements (Multi Line, required)
84
+ - Target_Date (Date)
85
+ - Status (Picklist):
86
+ - Draft
87
+ - Submitted
88
+ - In Review
89
+ - Testing
90
+ - Approved
91
+ - Scheduled
92
+ - Deployed
93
+ - Verified
94
+ - Closed
95
+ - Rejected
96
+ - Rolled Back
97
+ - Assigned_Reviewer (Lookup to Employees)
98
+ - Assigned_Approver (Lookup to Employees)
99
+ - Assigned_Deployer (Lookup to Employees)
100
+ - Review_Notes (Multi Line)
101
+ - Approval_Date (DateTime)
102
+ - Deployment_Date (DateTime)
103
+ - Verification_Date (DateTime)
104
+ - Related_Ticket (Single Line - link to support ticket/Jira)
105
+ - Client_ID (Lookup to Clients)
106
+ ```
107
+
108
+ ---
109
+
110
+ ## Approval Workflow (Requester -> Reviewer -> Approver)
111
+
112
+ ### Role Definitions
113
+
114
+ | Role | Responsibility | Cannot Also Be |
115
+ |---|---|---|
116
+ | **Requester** | Submits change request, provides justification | Approver for same change |
117
+ | **Reviewer** | Technical review, validates testing | - |
118
+ | **Approver** | Authorizes production deployment | Requester or Developer for same change |
119
+ | **Deployer** | Executes production deployment | Developer for same change (separation of duties) |
120
+
121
+ ### Approval Workflow Deluge Script
122
+
123
+ ```deluge
124
+ // On Change_Request status change
125
+ // Enforce separation of duties and routing
126
+
127
+ on workflow "CR_Status_Change" for Change_Requests
128
+
129
+ if (input.Status == "Submitted") {
130
+ // Auto-assign reviewer based on affected forms
131
+ reviewer = getReviewerForForms(input.Affected_Forms);
132
+ input.Assigned_Reviewer = reviewer;
133
+ input.Status = "In Review";
134
+
135
+ sendmail [
136
+ to: reviewer.Email,
137
+ subject: "Change Request Awaiting Review: " + input.CR_ID,
138
+ message: "Please review CR " + input.CR_ID + ": " + input.Title
139
+ ];
140
+ }
141
+
142
+ if (input.Status == "Approved") {
143
+ // Validate approver is not the requester
144
+ if (input.Assigned_Approver == input.Requester) {
145
+ alert "Approver cannot be the same person as the Requester (Separation of Duties)";
146
+ input.Status = "In Review";
147
+ return;
148
+ }
149
+
150
+ input.Approval_Date = zoho.currenttime;
151
+
152
+ // Log approval in audit trail
153
+ insert into HIPAA_Audit_Log [
154
+ Action_Type = "Change Approved",
155
+ User_Email = zoho.loginuserid,
156
+ Form_Name = "Change_Requests",
157
+ Record_ID = input.ID,
158
+ Justification = "CR " + input.CR_ID + " approved for deployment"
159
+ ];
160
+ }
161
+ ```
162
+
163
+ ---
164
+
165
+ ## Testing Requirements Before Promotion
166
+
167
+ ### Minimum Testing Checklist
168
+
169
+ | Test Type | Required For | Evidence |
170
+ |---|---|---|
171
+ | Unit testing | All code changes | Test results documented |
172
+ | Integration testing | Multi-form changes | End-to-end test results |
173
+ | Regression testing | Any workflow changes | Existing functionality verified |
174
+ | User acceptance testing | New features | Client sign-off |
175
+ | Security testing | Permission changes | Access matrix validated |
176
+ | Performance testing | Bulk data changes | Load test results |
177
+ | Rollback testing | All changes | Rollback procedure verified |
178
+
179
+ ### Test Documentation Template
180
+
181
+ ```
182
+ ## Test Results for CR-2025-0042
183
+
184
+ ### Test Environment
185
+ - Organization: dev-client-org
186
+ - Date: 2025-02-10
187
+ - Tester: developer@cloudstreamsoftware.com
188
+
189
+ ### Tests Performed
190
+ 1. [PASS] New field displays correctly for Admin role
191
+ 2. [PASS] New field hidden for Standard User role
192
+ 3. [PASS] Workflow triggers on field update
193
+ 4. [PASS] Existing approval workflow still functions
194
+ 5. [PASS] Export includes new field for authorized roles
195
+ 6. [PASS] Rollback: removing field does not corrupt existing data
196
+
197
+ ### Test Data
198
+ - Records tested: 50 (synthetic data)
199
+ - Edge cases: Empty values, max-length strings, special characters
200
+
201
+ ### Recommendation
202
+ Ready for production deployment.
203
+ ```
204
+
205
+ ---
206
+
207
+ ## Rollback Procedures
208
+
209
+ ### Pre-Deployment Rollback Preparation
210
+
211
+ Before ANY production deployment:
212
+
213
+ 1. **Document** current state of all affected forms/workflows
214
+ 2. **Export** current form configuration (screenshots + field list)
215
+ 3. **Backup** any data that will be migrated/modified
216
+ 4. **Test** the rollback procedure in staging
217
+ 5. **Define** rollback trigger criteria (what constitutes a failed deployment)
218
+
219
+ ### Rollback Decision Matrix
220
+
221
+ | Severity | Condition | Action | Timeline |
222
+ |---|---|---|---|
223
+ | Critical | Data loss or corruption | Immediate rollback | < 15 minutes |
224
+ | High | Core functionality broken | Rollback within 1 hour | < 1 hour |
225
+ | Medium | Non-critical feature broken | Assess fix-forward vs rollback | < 4 hours |
226
+ | Low | Cosmetic/minor issues | Fix-forward in next change | Next business day |
227
+
228
+ ### Rollback Documentation
229
+
230
+ ```deluge
231
+ // When rollback is executed, log it
232
+ if (input.Status == "Rolled Back") {
233
+ input.Rollback_Date = zoho.currenttime;
234
+ input.Rollback_Reason = input.Rollback_Notes;
235
+
236
+ insert into HIPAA_Audit_Log [
237
+ Action_Type = "Change Rolled Back",
238
+ User_Email = zoho.loginuserid,
239
+ Form_Name = "Change_Requests",
240
+ Record_ID = input.ID,
241
+ Justification = "Rollback: " + input.Rollback_Notes
242
+ ];
243
+
244
+ // Notify stakeholders
245
+ sendmail [
246
+ to: input.Requester.Email + "," + input.Assigned_Approver.Email,
247
+ subject: "ROLLBACK: " + input.CR_ID + " has been rolled back",
248
+ message: "Change " + input.CR_ID + " was rolled back. Reason: " + input.Rollback_Notes
249
+ ];
250
+ }
251
+ ```
252
+
253
+ ---
254
+
255
+ ## Emergency Change Process
256
+
257
+ > **WARNING**: Emergency changes still require documentation -- they just follow an accelerated timeline. "We'll document it later" is an audit failure. Document in real-time.
258
+
259
+ ### Emergency Change Criteria
260
+
261
+ An emergency change is ONLY justified when:
262
+ - Production system is DOWN and users cannot work
263
+ - Active security breach requiring immediate remediation
264
+ - Data loss is actively occurring
265
+ - Regulatory deadline will be missed
266
+
267
+ ### Emergency Change Process
268
+
269
+ | Step | Standard Process | Emergency Process |
270
+ |---|---|---|
271
+ | Request | Full form | Abbreviated (title + description + justification) |
272
+ | Review | Technical reviewer | Verbal approval from on-call lead |
273
+ | Testing | Full test suite | Smoke test only |
274
+ | Approval | Formal approver sign-off | Verbal + post-hoc written |
275
+ | Deployment | Scheduled window | Immediate |
276
+ | Documentation | Pre-deployment | Within 24 hours post-deployment |
277
+ | Post-review | Standard | Mandatory within 48 hours |
278
+
279
+ ### Emergency Change Form Fields (Minimum)
280
+
281
+ ```
282
+ - ECR_ID (Auto-number: ECR-YYYY-####)
283
+ - Title (Single Line)
284
+ - Description (Multi Line)
285
+ - Justification (Multi Line)
286
+ - Verbal_Approver (Single Line)
287
+ - Deployed_By (auto: current user)
288
+ - Deployed_At (auto: current timestamp)
289
+ - Post_Hoc_Review_Due (auto: deployed_at + 48 hours)
290
+ - Full_Documentation_Due (auto: deployed_at + 24 hours)
291
+ - Status (Picklist: Deployed/Documented/Reviewed/Closed)
292
+ ```
293
+
294
+ ---
295
+
296
+ ## Change Log Retention
297
+
298
+ ### Retention Requirements
299
+
300
+ | Record Type | Retention Period | Storage Location |
301
+ |---|---|---|
302
+ | Change Requests | Duration of SOC 2 audit period + 1 year | Creator + BigQuery archive |
303
+ | Test Results | Same as Change Request | Attached to CR record |
304
+ | Approval Evidence | Same as Change Request | CR audit trail |
305
+ | Deployment Logs | Same as Change Request | CR + system logs |
306
+ | Rollback Records | Same as Change Request | CR record |
307
+ | Emergency Changes | Same + additional scrutiny | CR with ECR flag |
308
+
309
+ ---
310
+
311
+ ## Linking Changes to Tickets/Requests
312
+
313
+ ### Required Traceability
314
+
315
+ Every change MUST link to a business justification:
316
+
317
+ ```
318
+ Support Ticket / Feature Request / Bug Report
319
+ |
320
+ +--> Change Request (CR-YYYY-####)
321
+ |
322
+ +--> Git Commits (if applicable)
323
+ |
324
+ +--> Test Results
325
+ |
326
+ +--> Deployment Record
327
+ |
328
+ +--> Verification
329
+ ```
330
+
331
+ ### Linking in Practice
332
+
333
+ ```deluge
334
+ // Validate that every CR has a related ticket
335
+ on validate "Change_Requests"
336
+
337
+ if (input.Related_Ticket == null || input.Related_Ticket == "") {
338
+ if (input.Change_Type != "Emergency Fix") {
339
+ alert "A related ticket/request number is required for all non-emergency changes.";
340
+ return false;
341
+ }
342
+ }
343
+ ```
344
+
345
+ ---
346
+
347
+ ## Post-Implementation Review
348
+
349
+ ### Review Checklist (Within 5 Business Days of Deployment)
350
+
351
+ - [ ] Deployment completed successfully (no rollback)
352
+ - [ ] All test cases pass in production
353
+ - [ ] No unexpected errors in application logs
354
+ - [ ] Performance metrics within acceptable range
355
+ - [ ] User feedback collected (if applicable)
356
+ - [ ] Access permissions correct post-change
357
+ - [ ] Audit logging captures new/modified actions
358
+ - [ ] Documentation updated (architecture, runbook, API docs)
359
+ - [ ] Change request record fully completed and closed
360
+ - [ ] Lessons learned documented (if applicable)
361
+
362
+ ### Post-Implementation Review Meeting (For Major Changes)
363
+
364
+ Attendees: Requester, Developer, Reviewer, Approver, Client Stakeholder
365
+
366
+ Agenda:
367
+ 1. Change summary and business outcome
368
+ 2. Deployment experience (smooth vs. issues)
369
+ 3. Anything that should be done differently
370
+ 4. Follow-up items identified
371
+ 5. Close the change request
372
+
373
+ ---
374
+
375
+ ## Audit Trail of All Changes
376
+
377
+ ### What Auditors Will Request
378
+
379
+ SOC 2 auditors will ask for:
380
+
381
+ 1. **Complete list** of all changes in the audit period
382
+ 2. **Sample selection** (typically 25-30 changes) for detailed review
383
+ 3. **Evidence** of approval for each sampled change
384
+ 4. **Evidence** of testing for each sampled change
385
+ 5. **Evidence** of separation of duties
386
+ 6. **Emergency change** review and post-hoc documentation
387
+ 7. **Rollback** instances and root cause analysis
388
+
389
+ ### Audit-Ready Report Query
390
+
391
+ ```deluge
392
+ // Generate change log report for audit period
393
+ auditStart = "2024-01-01";
394
+ auditEnd = "2024-12-31";
395
+
396
+ changes = zoho.creator.getRecords("app", "Change_Requests",
397
+ "(Request_Date >= \"" + auditStart + "\" && Request_Date <= \"" + auditEnd + "\")",
398
+ 1, 200);
399
+
400
+ // Export as CSV with all required fields for auditor review
401
+ ```
402
+
403
+ > **WARNING**: Run this report quarterly to ensure data is complete and no changes were missed. Do not wait until the audit to discover gaps in your change log.