blockmine 1.21.0 → 1.22.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 (433) hide show
  1. package/.claude/agents/README.md +469 -0
  2. package/.claude/agents/auth-route-debugger.md +118 -0
  3. package/.claude/agents/auth-route-tester.md +93 -0
  4. package/.claude/agents/auto-error-resolver.md +97 -0
  5. package/.claude/agents/build-optimizer.md +236 -0
  6. package/.claude/agents/code-architecture-reviewer.md +83 -0
  7. package/.claude/agents/code-refactor-master.md +94 -0
  8. package/.claude/agents/cost-optimizer.md +134 -0
  9. package/.claude/agents/deployment-orchestrator.md +113 -0
  10. package/.claude/agents/documentation-architect.md +82 -0
  11. package/.claude/agents/frontend-error-fixer.md +77 -0
  12. package/.claude/agents/iac-code-generator.md +71 -0
  13. package/.claude/agents/incident-responder.md +346 -0
  14. package/.claude/agents/infrastructure-architect.md +31 -0
  15. package/.claude/agents/kubernetes-specialist.md +56 -0
  16. package/.claude/agents/migration-planner.md +181 -0
  17. package/.claude/agents/network-architect.md +196 -0
  18. package/.claude/agents/plan-reviewer.md +52 -0
  19. package/.claude/agents/refactor-planner.md +63 -0
  20. package/.claude/agents/security-scanner.md +102 -0
  21. package/.claude/agents/web-research-specialist.md +78 -0
  22. package/.claude/commands/cost-analysis.md +315 -0
  23. package/.claude/commands/dev-docs-update.md +55 -0
  24. package/.claude/commands/dev-docs.md +51 -0
  25. package/.claude/commands/incident-debug.md +247 -0
  26. package/.claude/commands/infra-plan.md +81 -0
  27. package/.claude/commands/migration-plan.md +478 -0
  28. package/.claude/commands/route-research-for-testing.md +37 -0
  29. package/.claude/commands/security-review.md +66 -0
  30. package/.claude/hooks/CONFIG.md +448 -0
  31. package/.claude/hooks/README.md +163 -0
  32. package/.claude/hooks/SKILL_ACTIVATION_COMPLETE.md +226 -0
  33. package/.claude/hooks/WINDOWS_HOOKS_README.md +151 -0
  34. package/.claude/hooks/add-skill-activation-banners.ts +132 -0
  35. package/.claude/hooks/comprehensive-skill-test.ts +1315 -0
  36. package/.claude/hooks/error-handling-reminder.sh +12 -0
  37. package/.claude/hooks/error-handling-reminder.ts +222 -0
  38. package/.claude/hooks/k8s-manifest-validator.sh +56 -0
  39. package/.claude/hooks/package-lock.json +556 -0
  40. package/.claude/hooks/package.json +16 -0
  41. package/.claude/hooks/post-tool-use-tracker.ps1 +174 -0
  42. package/.claude/hooks/post-tool-use-tracker.sh +183 -0
  43. package/.claude/hooks/security-policy-check.sh +247 -0
  44. package/.claude/hooks/skill-activation-prompt.ps1 +10 -0
  45. package/.claude/hooks/skill-activation-prompt.sh +10 -0
  46. package/.claude/hooks/skill-activation-prompt.ts +141 -0
  47. package/.claude/hooks/stop-build-check-enhanced.sh +130 -0
  48. package/.claude/hooks/terraform-validator.sh +53 -0
  49. package/.claude/hooks/test-input.json +7 -0
  50. package/.claude/hooks/test-skill-activation.ts +427 -0
  51. package/.claude/hooks/trigger-build-resolver.sh +79 -0
  52. package/.claude/hooks/tsc-check.sh +173 -0
  53. package/.claude/hooks/tsconfig.json +19 -0
  54. package/.claude/settings.json +55 -0
  55. package/.claude/settings.local.json +27 -14
  56. package/.claude/skills/README.md +507 -0
  57. package/.claude/skills/api-engineering/SKILL.md +63 -0
  58. package/.claude/skills/api-engineering/resources/api-versioning.md +88 -0
  59. package/.claude/skills/api-engineering/resources/graphql-patterns.md +106 -0
  60. package/.claude/skills/api-engineering/resources/rate-limiting.md +118 -0
  61. package/.claude/skills/api-engineering/resources/rest-api-design.md +105 -0
  62. package/.claude/skills/backend-dev-guidelines/SKILL.md +306 -0
  63. package/.claude/skills/backend-dev-guidelines/resources/architecture-overview.md +451 -0
  64. package/.claude/skills/backend-dev-guidelines/resources/async-and-errors.md +307 -0
  65. package/.claude/skills/backend-dev-guidelines/resources/complete-examples.md +638 -0
  66. package/.claude/skills/backend-dev-guidelines/resources/configuration.md +275 -0
  67. package/.claude/skills/backend-dev-guidelines/resources/database-patterns.md +224 -0
  68. package/.claude/skills/backend-dev-guidelines/resources/middleware-guide.md +213 -0
  69. package/.claude/skills/backend-dev-guidelines/resources/routing-and-controllers.md +756 -0
  70. package/.claude/skills/backend-dev-guidelines/resources/sentry-and-monitoring.md +336 -0
  71. package/.claude/skills/backend-dev-guidelines/resources/services-and-repositories.md +789 -0
  72. package/.claude/skills/backend-dev-guidelines/resources/testing-guide.md +235 -0
  73. package/.claude/skills/backend-dev-guidelines/resources/validation-patterns.md +754 -0
  74. package/.claude/skills/budget-and-cost-management/SKILL.md +850 -0
  75. package/.claude/skills/build-engineering/SKILL.md +431 -0
  76. package/.claude/skills/build-engineering/resources/artifact-repositories.md +72 -0
  77. package/.claude/skills/build-engineering/resources/build-caching.md +96 -0
  78. package/.claude/skills/build-engineering/resources/build-pipelines.md +105 -0
  79. package/.claude/skills/build-engineering/resources/build-security.md +95 -0
  80. package/.claude/skills/build-engineering/resources/build-systems.md +389 -0
  81. package/.claude/skills/build-engineering/resources/compilation-optimization.md +201 -0
  82. package/.claude/skills/build-engineering/resources/dependency-management.md +73 -0
  83. package/.claude/skills/build-engineering/resources/monorepo-builds.md +110 -0
  84. package/.claude/skills/build-engineering/resources/performance-optimization.md +113 -0
  85. package/.claude/skills/build-engineering/resources/reproducible-builds.md +82 -0
  86. package/.claude/skills/cloud-engineering/SKILL.md +675 -0
  87. package/.claude/skills/cloud-engineering/resources/aws-patterns.md +742 -0
  88. package/.claude/skills/cloud-engineering/resources/azure-patterns.md +714 -0
  89. package/.claude/skills/cloud-engineering/resources/cleared-cloud-environments.md +987 -0
  90. package/.claude/skills/cloud-engineering/resources/cloud-cost-optimization.md +757 -0
  91. package/.claude/skills/cloud-engineering/resources/cloud-networking.md +1058 -0
  92. package/.claude/skills/cloud-engineering/resources/cloud-security-tools.md +1530 -0
  93. package/.claude/skills/cloud-engineering/resources/cloud-security.md +990 -0
  94. package/.claude/skills/cloud-engineering/resources/gcp-patterns.md +758 -0
  95. package/.claude/skills/cloud-engineering/resources/migration-strategies.md +820 -0
  96. package/.claude/skills/cloud-engineering/resources/multi-cloud-strategies.md +670 -0
  97. package/.claude/skills/cloud-engineering/resources/oci-patterns.md +1198 -0
  98. package/.claude/skills/cloud-engineering/resources/serverless-patterns.md +795 -0
  99. package/.claude/skills/cloud-engineering/resources/well-architected-frameworks.md +966 -0
  100. package/.claude/skills/cybersecurity/SKILL.md +409 -0
  101. package/.claude/skills/cybersecurity/resources/security-architecture.md +266 -0
  102. package/.claude/skills/database-engineering/SKILL.md +61 -0
  103. package/.claude/skills/database-engineering/resources/backup-and-recovery.md +72 -0
  104. package/.claude/skills/database-engineering/resources/database-replication.md +63 -0
  105. package/.claude/skills/database-engineering/resources/postgresql-fundamentals.md +70 -0
  106. package/.claude/skills/database-engineering/resources/query-optimization.md +68 -0
  107. package/.claude/skills/devsecops/SKILL.md +374 -0
  108. package/.claude/skills/devsecops/resources/ci-cd-security.md +204 -0
  109. package/.claude/skills/devsecops/resources/compliance-automation.md +530 -0
  110. package/.claude/skills/devsecops/resources/compliance-frameworks.md +2322 -0
  111. package/.claude/skills/devsecops/resources/container-security.md +915 -0
  112. package/.claude/skills/devsecops/resources/cspm-integration.md +1440 -0
  113. package/.claude/skills/devsecops/resources/policy-enforcement.md +619 -0
  114. package/.claude/skills/devsecops/resources/secrets-management.md +755 -0
  115. package/.claude/skills/devsecops/resources/security-monitoring.md +146 -0
  116. package/.claude/skills/devsecops/resources/security-scanning.md +887 -0
  117. package/.claude/skills/devsecops/resources/security-testing.md +203 -0
  118. package/.claude/skills/devsecops/resources/supply-chain-security.md +518 -0
  119. package/.claude/skills/devsecops/resources/vulnerability-management.md +481 -0
  120. package/.claude/skills/devsecops/resources/zero-trust-architecture.md +177 -0
  121. package/.claude/skills/documentation-as-code/SKILL.md +323 -0
  122. package/.claude/skills/documentation-as-code/resources/api-documentation.md +90 -0
  123. package/.claude/skills/documentation-as-code/resources/changelog-management.md +79 -0
  124. package/.claude/skills/documentation-as-code/resources/diagram-generation.md +44 -0
  125. package/.claude/skills/documentation-as-code/resources/docs-as-code-workflow.md +99 -0
  126. package/.claude/skills/documentation-as-code/resources/documentation-automation.md +68 -0
  127. package/.claude/skills/documentation-as-code/resources/documentation-sites.md +79 -0
  128. package/.claude/skills/documentation-as-code/resources/markdown-best-practices.md +162 -0
  129. package/.claude/skills/documentation-as-code/resources/openapi-specification.md +77 -0
  130. package/.claude/skills/documentation-as-code/resources/readme-engineering.md +60 -0
  131. package/.claude/skills/documentation-as-code/resources/technical-writing-guide.md +202 -0
  132. package/.claude/skills/engineering-management/SKILL.md +356 -0
  133. package/.claude/skills/engineering-management/resources/career-ladders.md +609 -0
  134. package/.claude/skills/engineering-management/resources/hiring-and-assessment.md +555 -0
  135. package/.claude/skills/engineering-management/resources/one-on-one-guides.md +609 -0
  136. package/.claude/skills/engineering-management/resources/resource-planning.md +557 -0
  137. package/.claude/skills/engineering-management/resources/team-organization-patterns.md +491 -0
  138. package/.claude/skills/engineering-management/resources/technical-interviews.md +474 -0
  139. package/.claude/skills/engineering-operations-management/SKILL.md +817 -0
  140. package/.claude/skills/error-tracking/SKILL.md +379 -0
  141. package/.claude/skills/frontend-dev-guidelines/SKILL.md +403 -0
  142. package/.claude/skills/frontend-dev-guidelines/resources/common-patterns.md +331 -0
  143. package/.claude/skills/frontend-dev-guidelines/resources/complete-examples.md +872 -0
  144. package/.claude/skills/frontend-dev-guidelines/resources/component-patterns.md +502 -0
  145. package/.claude/skills/frontend-dev-guidelines/resources/data-fetching.md +767 -0
  146. package/.claude/skills/frontend-dev-guidelines/resources/file-organization.md +502 -0
  147. package/.claude/skills/frontend-dev-guidelines/resources/loading-and-error-states.md +501 -0
  148. package/.claude/skills/frontend-dev-guidelines/resources/performance.md +406 -0
  149. package/.claude/skills/frontend-dev-guidelines/resources/routing-guide.md +364 -0
  150. package/.claude/skills/frontend-dev-guidelines/resources/styling-guide.md +428 -0
  151. package/.claude/skills/frontend-dev-guidelines/resources/typescript-standards.md +418 -0
  152. package/.claude/skills/general-it-engineering/SKILL.md +393 -0
  153. package/.claude/skills/general-it-engineering/resources/asset-management.md +712 -0
  154. package/.claude/skills/general-it-engineering/resources/automation-orchestration.md +817 -0
  155. package/.claude/skills/general-it-engineering/resources/business-continuity.md +786 -0
  156. package/.claude/skills/general-it-engineering/resources/change-management.md +715 -0
  157. package/.claude/skills/general-it-engineering/resources/enterprise-monitoring.md +729 -0
  158. package/.claude/skills/general-it-engineering/resources/help-desk-operations.md +738 -0
  159. package/.claude/skills/general-it-engineering/resources/incident-service-management.md +834 -0
  160. package/.claude/skills/general-it-engineering/resources/it-governance.md +753 -0
  161. package/.claude/skills/general-it-engineering/resources/itil-framework.md +503 -0
  162. package/.claude/skills/general-it-engineering/resources/service-management.md +669 -0
  163. package/.claude/skills/infrastructure-architecture/SKILL.md +328 -0
  164. package/.claude/skills/infrastructure-architecture/resources/architecture-decision-records.md +505 -0
  165. package/.claude/skills/infrastructure-architecture/resources/architecture-patterns.md +528 -0
  166. package/.claude/skills/infrastructure-architecture/resources/capacity-planning.md +453 -0
  167. package/.claude/skills/infrastructure-architecture/resources/cleared-environment-architecture.md +773 -0
  168. package/.claude/skills/infrastructure-architecture/resources/cost-architecture.md +499 -0
  169. package/.claude/skills/infrastructure-architecture/resources/data-architecture.md +501 -0
  170. package/.claude/skills/infrastructure-architecture/resources/disaster-recovery.md +535 -0
  171. package/.claude/skills/infrastructure-architecture/resources/migration-architecture.md +512 -0
  172. package/.claude/skills/infrastructure-architecture/resources/multi-region-design.md +608 -0
  173. package/.claude/skills/infrastructure-architecture/resources/reference-architectures.md +562 -0
  174. package/.claude/skills/infrastructure-architecture/resources/security-architecture.md +538 -0
  175. package/.claude/skills/infrastructure-architecture/resources/system-design-principles.md +489 -0
  176. package/.claude/skills/infrastructure-architecture/resources/workload-classification.md +1000 -0
  177. package/.claude/skills/infrastructure-strategy/SKILL.md +924 -0
  178. package/.claude/skills/network-engineering/SKILL.md +385 -0
  179. package/.claude/skills/network-engineering/resources/dns-management.md +738 -0
  180. package/.claude/skills/network-engineering/resources/load-balancing.md +820 -0
  181. package/.claude/skills/network-engineering/resources/network-architecture.md +546 -0
  182. package/.claude/skills/network-engineering/resources/network-security.md +921 -0
  183. package/.claude/skills/network-engineering/resources/network-troubleshooting.md +749 -0
  184. package/.claude/skills/network-engineering/resources/routing-switching.md +373 -0
  185. package/.claude/skills/network-engineering/resources/sdn-networking.md +695 -0
  186. package/.claude/skills/network-engineering/resources/service-mesh-networking.md +777 -0
  187. package/.claude/skills/network-engineering/resources/tcp-ip-protocols.md +444 -0
  188. package/.claude/skills/network-engineering/resources/vpn-connectivity.md +672 -0
  189. package/.claude/skills/observability-engineering/SKILL.md +101 -0
  190. package/.claude/skills/observability-engineering/resources/apm-tools.md +97 -0
  191. package/.claude/skills/observability-engineering/resources/correlation-strategies.md +87 -0
  192. package/.claude/skills/observability-engineering/resources/distributed-tracing.md +98 -0
  193. package/.claude/skills/observability-engineering/resources/logs-aggregation.md +118 -0
  194. package/.claude/skills/observability-engineering/resources/observability-cost-optimization.md +141 -0
  195. package/.claude/skills/observability-engineering/resources/opentelemetry.md +110 -0
  196. package/.claude/skills/platform-engineering/SKILL.md +555 -0
  197. package/.claude/skills/platform-engineering/resources/architecture-overview.md +600 -0
  198. package/.claude/skills/platform-engineering/resources/container-orchestration.md +916 -0
  199. package/.claude/skills/platform-engineering/resources/cost-optimization.md +634 -0
  200. package/.claude/skills/platform-engineering/resources/developer-platforms.md +670 -0
  201. package/.claude/skills/platform-engineering/resources/gitops-automation.md +650 -0
  202. package/.claude/skills/platform-engineering/resources/infrastructure-as-code.md +778 -0
  203. package/.claude/skills/platform-engineering/resources/infrastructure-standards.md +708 -0
  204. package/.claude/skills/platform-engineering/resources/multi-tenancy.md +602 -0
  205. package/.claude/skills/platform-engineering/resources/platform-security.md +711 -0
  206. package/.claude/skills/platform-engineering/resources/resource-management.md +592 -0
  207. package/.claude/skills/platform-engineering/resources/service-mesh.md +628 -0
  208. package/.claude/skills/release-engineering/SKILL.md +393 -0
  209. package/.claude/skills/release-engineering/resources/artifact-management.md +108 -0
  210. package/.claude/skills/release-engineering/resources/build-optimization.md +84 -0
  211. package/.claude/skills/release-engineering/resources/ci-cd-pipelines.md +411 -0
  212. package/.claude/skills/release-engineering/resources/deployment-strategies.md +197 -0
  213. package/.claude/skills/release-engineering/resources/pipeline-security.md +62 -0
  214. package/.claude/skills/release-engineering/resources/progressive-delivery.md +83 -0
  215. package/.claude/skills/release-engineering/resources/release-automation.md +68 -0
  216. package/.claude/skills/release-engineering/resources/release-orchestration.md +77 -0
  217. package/.claude/skills/release-engineering/resources/rollback-strategies.md +66 -0
  218. package/.claude/skills/release-engineering/resources/versioning-strategies.md +59 -0
  219. package/.claude/skills/route-tester/SKILL.md +392 -0
  220. package/.claude/skills/skill-developer/ADVANCED.md +197 -0
  221. package/.claude/skills/skill-developer/HOOK_MECHANISMS.md +306 -0
  222. package/.claude/skills/skill-developer/PATTERNS_LIBRARY.md +152 -0
  223. package/.claude/skills/skill-developer/SKILL.md +430 -0
  224. package/.claude/skills/skill-developer/SKILL_RULES_REFERENCE.md +315 -0
  225. package/.claude/skills/skill-developer/TRIGGER_TYPES.md +305 -0
  226. package/.claude/skills/skill-developer/TROUBLESHOOTING.md +514 -0
  227. package/.claude/skills/skill-rules.json +2940 -0
  228. package/.claude/skills/sre/SKILL.md +464 -0
  229. package/.claude/skills/sre/resources/alerting-best-practices.md +282 -0
  230. package/.claude/skills/sre/resources/capacity-planning.md +226 -0
  231. package/.claude/skills/sre/resources/chaos-engineering.md +193 -0
  232. package/.claude/skills/sre/resources/disaster-recovery.md +232 -0
  233. package/.claude/skills/sre/resources/incident-management.md +436 -0
  234. package/.claude/skills/sre/resources/observability-stack.md +240 -0
  235. package/.claude/skills/sre/resources/on-call-runbooks.md +167 -0
  236. package/.claude/skills/sre/resources/performance-optimization.md +108 -0
  237. package/.claude/skills/sre/resources/reliability-patterns.md +183 -0
  238. package/.claude/skills/sre/resources/slo-sli-sla.md +464 -0
  239. package/.claude/skills/sre/resources/toil-reduction.md +145 -0
  240. package/.claude/skills/systems-engineering/SKILL.md +648 -0
  241. package/.claude/skills/systems-engineering/resources/automation-patterns.md +771 -0
  242. package/.claude/skills/systems-engineering/resources/configuration-management.md +998 -0
  243. package/.claude/skills/systems-engineering/resources/linux-administration.md +672 -0
  244. package/.claude/skills/systems-engineering/resources/networking-fundamentals.md +982 -0
  245. package/.claude/skills/systems-engineering/resources/performance-tuning.md +871 -0
  246. package/.claude/skills/systems-engineering/resources/powershell-scripting.md +482 -0
  247. package/.claude/skills/systems-engineering/resources/security-hardening.md +739 -0
  248. package/.claude/skills/systems-engineering/resources/shell-scripting.md +915 -0
  249. package/.claude/skills/systems-engineering/resources/storage-management.md +628 -0
  250. package/.claude/skills/systems-engineering/resources/system-monitoring.md +787 -0
  251. package/.claude/skills/systems-engineering/resources/troubleshooting-guide.md +753 -0
  252. package/.claude/skills/systems-engineering/resources/windows-administration.md +738 -0
  253. package/.claude/skills/technical-leadership/SKILL.md +728 -0
  254. package/CHANGELOG.md +90 -54
  255. package/README.md +94 -0
  256. package/backend/docs/SECRETS_DOCUMENTATION.md +327 -0
  257. package/backend/jest.config.js +59 -0
  258. package/backend/package-lock.json +6129 -0
  259. package/backend/package.json +16 -4
  260. package/backend/prisma/migrations/20251026104609_add_websocket_api/migration.sql +33 -0
  261. package/backend/prisma/schema.prisma +33 -0
  262. package/backend/src/__tests__/core/DependencyService.test.js +336 -0
  263. package/backend/src/__tests__/core/UserService.test.js +875 -0
  264. package/backend/src/__tests__/repositories/BaseRepository.test.js +146 -0
  265. package/backend/src/__tests__/repositories/BotRepository.test.js +118 -0
  266. package/backend/src/__tests__/repositories/CommandRepository.test.js +132 -0
  267. package/backend/src/__tests__/repositories/EventGraphRepository.test.js +93 -0
  268. package/backend/src/__tests__/repositories/GroupRepository.test.js +155 -0
  269. package/backend/src/__tests__/repositories/PermissionRepository.test.js +130 -0
  270. package/backend/src/__tests__/repositories/PluginRepository.test.js +107 -0
  271. package/backend/src/__tests__/repositories/ServerRepository.test.js +80 -0
  272. package/backend/src/__tests__/repositories/UserRepository.test.js +128 -0
  273. package/backend/src/__tests__/secretsFilter.test.js +425 -0
  274. package/backend/src/__tests__/services/BotLifecycleService.test.js +411 -0
  275. package/backend/src/__tests__/services/BotProcessManager.test.js +285 -0
  276. package/backend/src/__tests__/services/CacheManager.test.js +125 -0
  277. package/backend/src/__tests__/services/CommandExecutionService.test.js +460 -0
  278. package/backend/src/__tests__/services/ResourceMonitorService.test.js +207 -0
  279. package/backend/src/__tests__/services/TelemetryService.test.js +291 -0
  280. package/backend/src/__tests__/setup.js +25 -0
  281. package/backend/src/api/routes/apiKeys.js +181 -0
  282. package/backend/src/api/routes/bots.js +49 -7
  283. package/backend/src/api/routes/plugins.js +2 -1
  284. package/backend/src/api/routes/system.js +174 -0
  285. package/backend/src/container.js +82 -0
  286. package/backend/src/core/BotManager.js +142 -871
  287. package/backend/src/core/BotManager.old.js +1093 -0
  288. package/backend/src/core/BotProcess.js +1092 -858
  289. package/backend/src/core/EventGraphManager.js +280 -198
  290. package/backend/src/core/GraphExecutionEngine.js +321 -325
  291. package/backend/src/core/MessageQueue.js +27 -6
  292. package/backend/src/core/NodeRegistry.js +37 -1134
  293. package/backend/src/core/PluginManager.js +62 -12
  294. package/backend/src/core/PrismaService.js +32 -0
  295. package/backend/src/core/UserService.js +3 -3
  296. package/backend/src/core/__tests__/PrismaService.test.js +24 -0
  297. package/backend/src/core/commands/README.md +305 -0
  298. package/backend/src/core/commands/dev.js +13 -7
  299. package/backend/src/core/commands/ping.js +10 -4
  300. package/backend/src/core/commands/whois.js +63 -0
  301. package/backend/src/core/config/validation.js +27 -0
  302. package/backend/src/core/constants/graphTypes.js +21 -0
  303. package/backend/src/core/node-registries/actions.js +132 -0
  304. package/backend/src/core/node-registries/arrays.js +137 -0
  305. package/backend/src/core/node-registries/bot.js +23 -0
  306. package/backend/src/core/node-registries/data.js +290 -0
  307. package/backend/src/core/node-registries/debug.js +26 -0
  308. package/backend/src/core/node-registries/events.js +187 -0
  309. package/backend/src/core/node-registries/flow.js +139 -0
  310. package/backend/src/core/node-registries/logic.js +45 -0
  311. package/backend/src/core/node-registries/math.js +42 -0
  312. package/backend/src/core/node-registries/objects.js +98 -0
  313. package/backend/src/core/node-registries/strings.js +153 -0
  314. package/backend/src/core/node-registries/time.js +113 -0
  315. package/backend/src/core/node-registries/users.js +79 -0
  316. package/backend/src/core/nodes/{action_bot_look_at.js → actions/bot_look_at.js} +36 -36
  317. package/backend/src/core/nodes/{action_bot_set_variable.js → actions/bot_set_variable.js} +32 -32
  318. package/backend/src/core/nodes/{action_send_log.js → actions/send_log.js} +28 -23
  319. package/backend/src/core/nodes/{action_send_message.js → actions/send_message.js} +32 -32
  320. package/backend/src/core/nodes/actions/send_websocket_response.js +33 -0
  321. package/backend/src/core/nodes/arrays/get_next.js +35 -0
  322. package/backend/src/core/nodes/{data_cast.js → data/cast.js} +8 -0
  323. package/backend/src/core/nodes/data/datetime_literal.js +27 -0
  324. package/backend/src/core/nodes/data/entity_info.js +69 -0
  325. package/backend/src/core/nodes/data/get_nearby_entities.js +32 -0
  326. package/backend/src/core/nodes/data/get_nearby_players.js +64 -0
  327. package/backend/src/core/nodes/{data_get_user_field.js → data/get_user_field.js} +1 -1
  328. package/backend/src/core/nodes/data/type_check.js +53 -0
  329. package/backend/src/core/nodes/{debug_log.js → debug/log.js} +16 -16
  330. package/backend/src/core/nodes/{flow_branch.js → flow/branch.js} +15 -15
  331. package/backend/src/core/nodes/{flow_break.js → flow/break.js} +14 -14
  332. package/backend/src/core/nodes/flow/delay.js +43 -0
  333. package/backend/src/core/nodes/{flow_for_each.js → flow/for_each.js} +39 -39
  334. package/backend/src/core/nodes/{flow_sequence.js → flow/sequence.js} +16 -16
  335. package/backend/src/core/nodes/{flow_switch.js → flow/switch.js} +47 -47
  336. package/backend/src/core/nodes/{flow_while.js → flow/while.js} +1 -1
  337. package/backend/src/core/nodes/logic/__tests__/compare.test.js +83 -0
  338. package/backend/src/core/nodes/math/__tests__/operation.test.js +65 -0
  339. package/backend/src/core/nodes/strings/__tests__/concat.test.js +89 -0
  340. package/backend/src/core/nodes/time/__tests__/now.test.js +24 -0
  341. package/backend/src/core/nodes/time/add.js +33 -0
  342. package/backend/src/core/nodes/time/compare.js +35 -0
  343. package/backend/src/core/nodes/time/diff.js +29 -0
  344. package/backend/src/core/nodes/time/format.js +32 -0
  345. package/backend/src/core/nodes/time/now.js +18 -0
  346. package/backend/src/core/nodes/{user_check_blacklist.js → users/check_blacklist.js} +37 -37
  347. package/backend/src/core/nodes/{user_get_groups.js → users/get_groups.js} +36 -36
  348. package/backend/src/core/nodes/{user_get_permissions.js → users/get_permissions.js} +36 -36
  349. package/backend/src/core/nodes/{user_set_blacklist.js → users/set_blacklist.js} +37 -37
  350. package/backend/src/core/services/BotLifecycleService.js +596 -0
  351. package/backend/src/core/services/BotProcessManager.js +163 -0
  352. package/backend/src/core/services/CacheManager.js +111 -0
  353. package/backend/src/core/services/CommandExecutionService.js +351 -0
  354. package/backend/src/core/services/ResourceMonitorService.js +90 -0
  355. package/backend/src/core/services/TelemetryService.js +124 -0
  356. package/backend/src/core/services/ValidationService.js +132 -0
  357. package/backend/src/core/services/__tests__/ValidationService.test.js +148 -0
  358. package/backend/src/core/services.js +20 -5
  359. package/backend/src/core/system/CommandContext.js +84 -0
  360. package/backend/src/core/system/Transport.js +78 -0
  361. package/backend/src/core/utils/__tests__/jsonParser.test.js +44 -0
  362. package/backend/src/core/utils/jsonParser.js +18 -0
  363. package/backend/src/core/utils/secretsFilter.js +262 -0
  364. package/backend/src/core/utils/variableParser.js +89 -0
  365. package/backend/src/core/validation/__tests__/nodeSchemas.test.js +175 -0
  366. package/backend/src/core/validation/nodeSchemas.js +112 -0
  367. package/backend/src/lib/prisma.js +2 -4
  368. package/backend/src/real-time/botApi/handlers/commandHandlers.js +28 -0
  369. package/backend/src/real-time/botApi/handlers/graphHandlers.js +99 -0
  370. package/backend/src/real-time/botApi/handlers/graphWebSocketHandlers.js +147 -0
  371. package/backend/src/real-time/botApi/handlers/index.js +43 -0
  372. package/backend/src/real-time/botApi/handlers/messageHandlers.js +66 -0
  373. package/backend/src/real-time/botApi/handlers/statusHandlers.js +17 -0
  374. package/backend/src/real-time/botApi/handlers/userHandlers.js +141 -0
  375. package/backend/src/real-time/botApi/index.js +40 -0
  376. package/backend/src/real-time/botApi/middleware.js +79 -0
  377. package/backend/src/real-time/botApi/utils.js +54 -0
  378. package/backend/src/real-time/socketHandler.js +6 -2
  379. package/backend/src/repositories/BaseRepository.js +43 -0
  380. package/backend/src/repositories/BotRepository.js +42 -0
  381. package/backend/src/repositories/CommandRepository.js +53 -0
  382. package/backend/src/repositories/EventGraphRepository.js +40 -0
  383. package/backend/src/repositories/GroupRepository.js +69 -0
  384. package/backend/src/repositories/PermissionRepository.js +48 -0
  385. package/backend/src/repositories/PluginRepository.js +42 -0
  386. package/backend/src/repositories/ServerRepository.js +27 -0
  387. package/backend/src/repositories/UserRepository.js +48 -0
  388. package/backend/src/server.js +3 -0
  389. package/backend/src/test-refactor.js +85 -0
  390. package/frontend/dist/assets/index-CfTo92bP.css +1 -0
  391. package/frontend/dist/assets/index-CiFD5X9Z.js +8344 -0
  392. package/frontend/dist/index.html +2 -2
  393. package/frontend/package.json +0 -5
  394. package/package.json +2 -1
  395. package/frontend/dist/assets/index-B9GedHEa.js +0 -8352
  396. package/frontend/dist/assets/index-zLiy9MDx.css +0 -1
  397. package/nul +0 -0
  398. /package/backend/src/core/nodes/{action_http_request.js → actions/http_request.js} +0 -0
  399. /package/backend/src/core/nodes/{array_add_element.js → arrays/add_element.js} +0 -0
  400. /package/backend/src/core/nodes/{array_contains.js → arrays/contains.js} +0 -0
  401. /package/backend/src/core/nodes/{array_find_index.js → arrays/find_index.js} +0 -0
  402. /package/backend/src/core/nodes/{array_get_by_index.js → arrays/get_by_index.js} +0 -0
  403. /package/backend/src/core/nodes/{array_get_random_element.js → arrays/get_random_element.js} +0 -0
  404. /package/backend/src/core/nodes/{array_remove_by_index.js → arrays/remove_by_index.js} +0 -0
  405. /package/backend/src/core/nodes/{bot_get_position.js → bot/get_position.js} +0 -0
  406. /package/backend/src/core/nodes/{data_array_literal.js → data/array_literal.js} +0 -0
  407. /package/backend/src/core/nodes/{data_boolean_literal.js → data/boolean_literal.js} +0 -0
  408. /package/backend/src/core/nodes/{data_get_argument.js → data/get_argument.js} +0 -0
  409. /package/backend/src/core/nodes/{data_get_bot_look.js → data/get_bot_look.js} +0 -0
  410. /package/backend/src/core/nodes/{data_get_entity_field.js → data/get_entity_field.js} +0 -0
  411. /package/backend/src/core/nodes/{data_get_server_players.js → data/get_server_players.js} +0 -0
  412. /package/backend/src/core/nodes/{data_get_variable.js → data/get_variable.js} +0 -0
  413. /package/backend/src/core/nodes/{data_length.js → data/length.js} +0 -0
  414. /package/backend/src/core/nodes/{data_make_object.js → data/make_object.js} +0 -0
  415. /package/backend/src/core/nodes/{data_number_literal.js → data/number_literal.js} +0 -0
  416. /package/backend/src/core/nodes/{data_string_literal.js → data/string_literal.js} +0 -0
  417. /package/backend/src/core/nodes/{logic_compare.js → logic/compare.js} +0 -0
  418. /package/backend/src/core/nodes/{logic_operation.js → logic/operation.js} +0 -0
  419. /package/backend/src/core/nodes/{math_operation.js → math/operation.js} +0 -0
  420. /package/backend/src/core/nodes/{math_random_number.js → math/random_number.js} +0 -0
  421. /package/backend/src/core/nodes/{object_create.js → objects/create.js} +0 -0
  422. /package/backend/src/core/nodes/{object_delete.js → objects/delete.js} +0 -0
  423. /package/backend/src/core/nodes/{object_get.js → objects/get.js} +0 -0
  424. /package/backend/src/core/nodes/{object_has_key.js → objects/has_key.js} +0 -0
  425. /package/backend/src/core/nodes/{object_set.js → objects/set.js} +0 -0
  426. /package/backend/src/core/nodes/{string_concat.js → strings/concat.js} +0 -0
  427. /package/backend/src/core/nodes/{string_contains.js → strings/contains.js} +0 -0
  428. /package/backend/src/core/nodes/{string_ends_with.js → strings/ends_with.js} +0 -0
  429. /package/backend/src/core/nodes/{string_equals.js → strings/equals.js} +0 -0
  430. /package/backend/src/core/nodes/{string_length.js → strings/length.js} +0 -0
  431. /package/backend/src/core/nodes/{string_matches.js → strings/matches.js} +0 -0
  432. /package/backend/src/core/nodes/{string_split.js → strings/split.js} +0 -0
  433. /package/backend/src/core/nodes/{string_starts_with.js → strings/starts_with.js} +0 -0
@@ -0,0 +1,753 @@
1
+ # IT Governance
2
+
3
+ COBIT framework, IT policies, compliance, risk management, audits, and governance structures for managing IT effectively and securely.
4
+
5
+ ## Table of Contents
6
+
7
+ - [IT Governance Overview](#it-governance-overview)
8
+ - [COBIT Framework](#cobit-framework)
9
+ - [IT Policies](#it-policies)
10
+ - [Compliance Management](#compliance-management)
11
+ - [Risk Management](#risk-management)
12
+ - [IT Audits](#it-audits)
13
+ - [Best Practices](#best-practices)
14
+
15
+ ## IT Governance Overview
16
+
17
+ ### Purpose
18
+
19
+ IT Governance ensures:
20
+ - Alignment of IT with business goals
21
+ - Value delivery from IT investments
22
+ - Risk management
23
+ - Resource optimization
24
+ - Performance measurement
25
+
26
+ ### Key Principles
27
+
28
+ ```
29
+ 1. Meeting Stakeholder Needs
30
+ - Focus on stakeholder benefits
31
+ - Balance competing interests
32
+ - Deliver value
33
+
34
+ 2. Covering End-to-End
35
+ - Governance and management
36
+ - IT and business integration
37
+ - Functions and processes
38
+
39
+ 3. Applying Single Framework
40
+ - Consistent approach
41
+ - Unified language
42
+ - Reduced complexity
43
+
44
+ 4. Enabling Holistic Approach
45
+ - People, processes, technology
46
+ - Internal and external factors
47
+ - All organizational levels
48
+
49
+ 5. Separating Governance from Management
50
+ - Governance: Direction, monitoring
51
+ - Management: Execution, delivery
52
+ ```
53
+
54
+ ## COBIT Framework
55
+
56
+ ### COBIT 2019 Overview
57
+
58
+ ```
59
+ COBIT (Control Objectives for Information and Related Technologies)
60
+
61
+ Purpose: Governance and management framework for enterprise IT
62
+
63
+ Components:
64
+ ├── Governance Objectives (5)
65
+ │ ├── EDM01: Ensured Governance Framework Setting
66
+ │ ├── EDM02: Ensured Benefits Delivery
67
+ │ ├── EDM03: Ensured Risk Optimization
68
+ │ ├── EDM04: Ensured Resource Optimization
69
+ │ └── EDM05: Ensured Stakeholder Engagement
70
+
71
+ └── Management Objectives (35)
72
+ ├── Align, Plan, and Organize (APO) - 14
73
+ ├── Build, Acquire, and Implement (BAI) - 11
74
+ ├── Deliver, Service, and Support (DSS) - 6
75
+ └── Monitor, Evaluate, and Assess (MEA) - 4
76
+ ```
77
+
78
+ ### Key COBIT Objectives
79
+
80
+ **EDM01: Governance Framework:**
81
+ ```yaml
82
+ Purpose: Maintain effective governance
83
+
84
+ Activities:
85
+ - Define governance structure
86
+ - Establish decision rights
87
+ - Assign accountability
88
+ - Monitor governance effectiveness
89
+
90
+ Outputs:
91
+ - Governance charter
92
+ - Roles and responsibilities
93
+ - Escalation procedures
94
+ - Governance metrics
95
+ ```
96
+
97
+ **EDM03: Risk Optimization:**
98
+ ```yaml
99
+ Purpose: Ensure IT risk is acceptable
100
+
101
+ Activities:
102
+ - Risk appetite definition
103
+ - Risk assessment
104
+ - Risk treatment
105
+ - Risk monitoring
106
+
107
+ Outputs:
108
+ - Risk register
109
+ - Risk treatment plans
110
+ - Risk reports
111
+ - Risk dashboard
112
+ ```
113
+
114
+ **APO01: IT Strategy:**
115
+ ```yaml
116
+ Purpose: Align IT strategy with business strategy
117
+
118
+ Activities:
119
+ - Strategic planning
120
+ - Portfolio management
121
+ - Investment decisions
122
+ - Value realization
123
+
124
+ Outputs:
125
+ - IT strategic plan
126
+ - Project portfolio
127
+ - Investment decisions
128
+ - Value metrics
129
+ ```
130
+
131
+ **DSS05: Security Services:**
132
+ ```yaml
133
+ Purpose: Protect information assets
134
+
135
+ Activities:
136
+ - Security strategy
137
+ - Identity and access management
138
+ - Security monitoring
139
+ - Incident response
140
+
141
+ Outputs:
142
+ - Security policies
143
+ - Access controls
144
+ - Security alerts
145
+ - Incident reports
146
+ ```
147
+
148
+ ## IT Policies
149
+
150
+ ### Policy Hierarchy
151
+
152
+ ```
153
+ ┌─────────────────────────────────────┐
154
+ │ IT Policy Framework │
155
+ ├─────────────────────────────────────┤
156
+ │ │
157
+ │ Policies (What) │
158
+ │ ├── High-level principles │
159
+ │ ├── Mandatory requirements │
160
+ │ └── Board-approved │
161
+ │ │
162
+ │ Standards (How - Specific) │
163
+ │ ├── Technical specifications │
164
+ │ ├── Approved tools and platforms │
165
+ │ └── Measurable requirements │
166
+ │ │
167
+ │ Procedures (Step-by-Step) │
168
+ │ ├── Detailed instructions │
169
+ │ ├── Workflow diagrams │
170
+ │ └── Operational guidance │
171
+ │ │
172
+ │ Guidelines (Recommendations) │
173
+ │ ├── Best practices │
174
+ │ ├── Suggested approaches │
175
+ │ └── Optional guidance │
176
+ │ │
177
+ └─────────────────────────────────────┘
178
+ ```
179
+
180
+ ### Essential IT Policies
181
+
182
+ **1. Acceptable Use Policy (AUP):**
183
+ ```yaml
184
+ Purpose: Define appropriate use of IT resources
185
+
186
+ Key Elements:
187
+ Permitted Uses:
188
+ - Business-related activities
189
+ - Reasonable personal use
190
+ - Professional communication
191
+
192
+ Prohibited Uses:
193
+ - Illegal activities
194
+ - Harassment or discrimination
195
+ - Unauthorized access
196
+ - Malware distribution
197
+ - Excessive personal use
198
+
199
+ Responsibilities:
200
+ - Protect credentials
201
+ - Report security incidents
202
+ - Use approved software only
203
+ - Comply with licenses
204
+
205
+ Consequences:
206
+ - Warning (first offense)
207
+ - Suspension (repeat offense)
208
+ - Termination (serious violation)
209
+ - Legal action (illegal activity)
210
+
211
+ Review Frequency: Annual
212
+ ```
213
+
214
+ **2. Information Security Policy:**
215
+ ```yaml
216
+ Purpose: Protect confidentiality, integrity, availability of information
217
+
218
+ Key Elements:
219
+ Data Classification:
220
+ - Public: No restrictions
221
+ - Internal: Internal use only
222
+ - Confidential: Limited access
223
+ - Restricted: Highest protection
224
+
225
+ Access Control:
226
+ - Least privilege principle
227
+ - Role-based access control
228
+ - Regular access reviews
229
+ - Multi-factor authentication
230
+
231
+ Data Protection:
232
+ - Encryption requirements
233
+ - Backup procedures
234
+ - Data retention
235
+ - Secure disposal
236
+
237
+ Incident Response:
238
+ - Reporting procedures
239
+ - Investigation process
240
+ - Containment measures
241
+ - Recovery steps
242
+ ```
243
+
244
+ **3. Password Policy:**
245
+ ```yaml
246
+ Purpose: Ensure strong authentication
247
+
248
+ Requirements:
249
+ Complexity:
250
+ - Minimum 12 characters
251
+ - Upper and lowercase
252
+ - Numbers and special characters
253
+ - No dictionary words
254
+
255
+ Management:
256
+ - Unique per account
257
+ - No password reuse (last 10)
258
+ - Change if compromised
259
+ - Use password manager
260
+
261
+ Protection:
262
+ - Never share passwords
263
+ - Don't write passwords down
264
+ - No password in emails
265
+ - Secure password storage
266
+
267
+ Multi-Factor Authentication:
268
+ - Required for:
269
+ * Remote access
270
+ * Admin accounts
271
+ * Financial systems
272
+ * Customer data access
273
+ ```
274
+
275
+ **4. Change Management Policy:**
276
+ ```yaml
277
+ Purpose: Control changes to IT environment
278
+
279
+ Requirements:
280
+ All Changes Must:
281
+ - Have business justification
282
+ - Be documented (RFC)
283
+ - Undergo risk assessment
284
+ - Be approved by CAB
285
+ - Have rollback plan
286
+ - Be tested before production
287
+
288
+ Emergency Changes:
289
+ - Expedited approval process
290
+ - Post-implementation review
291
+ - Documentation catch-up
292
+
293
+ Standard Changes:
294
+ - Pre-approved procedures
295
+ - Low risk
296
+ - Automation encouraged
297
+ ```
298
+
299
+ **5. Data Retention Policy:**
300
+ ```yaml
301
+ Purpose: Define how long data is kept
302
+
303
+ Retention Periods:
304
+
305
+ Financial Records:
306
+ - Invoices: 7 years
307
+ - Tax records: 7 years
308
+ - Payroll: 7 years
309
+
310
+ Employee Records:
311
+ - Active employees: Duration + 7 years
312
+ - Terminated: 7 years after termination
313
+
314
+ Customer Data:
315
+ - Active customers: Duration of relationship
316
+ - Inactive: 3 years
317
+ - After deletion: Backup retention period
318
+
319
+ Email:
320
+ - General: 3 years
321
+ - Executive: 7 years
322
+ - Legal hold: Indefinite (until released)
323
+
324
+ Backups:
325
+ - Daily: 7 days
326
+ - Weekly: 4 weeks
327
+ - Monthly: 12 months
328
+ - Yearly: 7 years
329
+ ```
330
+
331
+ ### Policy Management
332
+
333
+ ```yaml
334
+ Policy Lifecycle:
335
+
336
+ 1. Develop:
337
+ - Identify need
338
+ - Draft policy
339
+ - Stakeholder input
340
+ - Legal review
341
+
342
+ 2. Approve:
343
+ - Management review
344
+ - Board approval (if required)
345
+ - Sign-off
346
+
347
+ 3. Publish:
348
+ - Policy repository
349
+ - Communication plan
350
+ - Training materials
351
+ - Awareness campaign
352
+
353
+ 4. Implement:
354
+ - Roll-out plan
355
+ - Technical controls
356
+ - Monitoring
357
+ - Compliance checks
358
+
359
+ 5. Review:
360
+ - Annual review
361
+ - Update as needed
362
+ - Version control
363
+ - Change tracking
364
+
365
+ 6. Retire:
366
+ - Superseded by new policy
367
+ - Archive old version
368
+ - Communicate changes
369
+ ```
370
+
371
+ ## Compliance Management
372
+
373
+ ### Common Compliance Frameworks
374
+
375
+ **SOX (Sarbanes-Oxley):**
376
+ ```yaml
377
+ Applies To: Public companies
378
+ Focus: Financial reporting controls
379
+ IT Requirements:
380
+ - Access controls
381
+ - Change management
382
+ - Audit trails
383
+ - Data integrity
384
+ - Segregation of duties
385
+ ```
386
+
387
+ **HIPAA (Health Insurance Portability and Accountability Act):**
388
+ ```yaml
389
+ Applies To: Healthcare organizations
390
+ Focus: Protected Health Information (PHI)
391
+ IT Requirements:
392
+ - Encryption
393
+ - Access controls
394
+ - Audit logs
395
+ - Breach notification
396
+ - Risk assessments
397
+ ```
398
+
399
+ **PCI DSS (Payment Card Industry Data Security Standard):**
400
+ ```yaml
401
+ Applies To: Organizations handling credit cards
402
+ Focus: Cardholder data protection
403
+ IT Requirements:
404
+ - Firewalls
405
+ - Encryption
406
+ - Access controls
407
+ - Monitoring
408
+ - Vulnerability management
409
+ - Regular testing
410
+ ```
411
+
412
+ **GDPR (General Data Protection Regulation):**
413
+ ```yaml
414
+ Applies To: Organizations handling EU citizen data
415
+ Focus: Personal data protection and privacy
416
+ IT Requirements:
417
+ - Data protection by design
418
+ - Consent management
419
+ - Right to erasure
420
+ - Data portability
421
+ - Breach notification (72 hours)
422
+ - Privacy impact assessments
423
+ ```
424
+
425
+ ### Compliance Management Program
426
+
427
+ ```yaml
428
+ Compliance Program Structure:
429
+
430
+ 1. Identify Requirements:
431
+ - Applicable regulations
432
+ - Industry standards
433
+ - Contractual obligations
434
+ - Internal policies
435
+
436
+ 2. Gap Analysis:
437
+ - Current state assessment
438
+ - Compare to requirements
439
+ - Identify gaps
440
+ - Prioritize remediation
441
+
442
+ 3. Implement Controls:
443
+ - Technical controls (firewalls, encryption)
444
+ - Administrative controls (policies, procedures)
445
+ - Physical controls (access, cameras)
446
+
447
+ 4. Monitor Compliance:
448
+ - Automated compliance checks
449
+ - Manual reviews
450
+ - Audit trails
451
+ - Exception reports
452
+
453
+ 5. Report:
454
+ - Compliance dashboard
455
+ - Management reports
456
+ - Board updates
457
+ - Regulatory filings
458
+
459
+ 6. Continuous Improvement:
460
+ - Learn from audits
461
+ - Update controls
462
+ - Adapt to changes
463
+ - Industry best practices
464
+ ```
465
+
466
+ ## Risk Management
467
+
468
+ ### Risk Management Process
469
+
470
+ ```
471
+ ┌────────────────────────────────────┐
472
+ │ 1. Risk Identification │
473
+ │ - What could go wrong? │
474
+ │ - Threat modeling │
475
+ │ - Vulnerability assessment │
476
+ └─────────┬──────────────────────────┘
477
+
478
+ ┌────────────────────────────────────┐
479
+ │ 2. Risk Analysis │
480
+ │ - Likelihood assessment │
481
+ │ - Impact assessment │
482
+ │ - Risk rating │
483
+ └─────────┬──────────────────────────┘
484
+
485
+ ┌────────────────────────────────────┐
486
+ │ 3. Risk Evaluation │
487
+ │ - Compare to risk appetite │
488
+ │ - Prioritize risks │
489
+ │ - Determine treatment │
490
+ └─────────┬──────────────────────────┘
491
+
492
+ ┌────────────────────────────────────┐
493
+ │ 4. Risk Treatment │
494
+ │ - Mitigate (reduce) │
495
+ │ - Transfer (insurance) │
496
+ │ - Accept (tolerate) │
497
+ │ - Avoid (eliminate) │
498
+ └─────────┬──────────────────────────┘
499
+
500
+ ┌────────────────────────────────────┐
501
+ │ 5. Risk Monitoring │
502
+ │ - Track risk levels │
503
+ │ - Review controls │
504
+ │ - Report to management │
505
+ └────────────────────────────────────┘
506
+ ```
507
+
508
+ ### Risk Register
509
+
510
+ ```yaml
511
+ Risk Register Example:
512
+
513
+ Risk ID: RISK-001
514
+ Title: Data Breach via Phishing Attack
515
+
516
+ Description:
517
+ Employees may fall victim to phishing emails, leading to
518
+ credential compromise and unauthorized access to customer data.
519
+
520
+ Category: Security
521
+ Owner: CISO
522
+
523
+ Assessment:
524
+ Likelihood: High (frequent phishing attempts)
525
+ Impact: Critical (customer data breach)
526
+ Inherent Risk: Critical
527
+ Residual Risk: Medium (after controls)
528
+
529
+ Treatment: Mitigate
530
+
531
+ Controls:
532
+ 1. Security awareness training (quarterly)
533
+ 2. Email filtering (anti-phishing tools)
534
+ 3. Multi-factor authentication (MFA required)
535
+ 4. Privileged access management
536
+ 5. Data loss prevention (DLP)
537
+
538
+ Control Effectiveness:
539
+ - Training completion: 95%
540
+ - Phishing test pass rate: 88%
541
+ - MFA adoption: 100%
542
+ - DLP policy violations: 3/month (low)
543
+
544
+ Monitoring:
545
+ - Monthly phishing simulations
546
+ - Quarterly training assessments
547
+ - Daily security alerts
548
+ - Annual penetration test
549
+
550
+ Status: Active
551
+ Last Review: 2024-10-15
552
+ Next Review: 2025-01-15
553
+ ```
554
+
555
+ ## IT Audits
556
+
557
+ ### Types of Audits
558
+
559
+ **Internal Audit:**
560
+ ```yaml
561
+ Conducted By: Internal audit team
562
+ Frequency: Annual or as needed
563
+ Scope: Specific IT processes or controls
564
+ Purpose: Assess compliance, identify improvements
565
+ Result: Internal report with recommendations
566
+ ```
567
+
568
+ **External Audit:**
569
+ ```yaml
570
+ Conducted By: Third-party auditor
571
+ Frequency: Annual (regulatory) or as required
572
+ Scope: Comprehensive or specific (e.g., SOX)
573
+ Purpose: Independent assessment, compliance certification
574
+ Result: Audit report, opinion, certification
575
+ ```
576
+
577
+ **Regulatory Audit:**
578
+ ```yaml
579
+ Conducted By: Regulatory body
580
+ Frequency: As mandated or triggered
581
+ Scope: Specific regulatory requirements
582
+ Purpose: Verify compliance
583
+ Result: Findings, potential penalties
584
+ ```
585
+
586
+ ### Audit Process
587
+
588
+ ```yaml
589
+ IT Audit Process:
590
+
591
+ 1. Planning (2-4 weeks):
592
+ - Define scope
593
+ - Identify key controls
594
+ - Request documentation
595
+ - Schedule interviews
596
+ - Prepare audit plan
597
+
598
+ 2. Fieldwork (4-8 weeks):
599
+ - Review documentation
600
+ - Interview personnel
601
+ - Test controls
602
+ - Sample transactions
603
+ - Document findings
604
+
605
+ 3. Reporting (2-3 weeks):
606
+ - Draft audit report
607
+ - Management review
608
+ - Remediation discussion
609
+ - Finalize report
610
+ - Present to board
611
+
612
+ 4. Follow-up (Ongoing):
613
+ - Track remediation
614
+ - Verify fixes
615
+ - Monitor improvements
616
+ - Report status
617
+ ```
618
+
619
+ ### Common Audit Findings
620
+
621
+ ```yaml
622
+ Access Control Issues:
623
+ - Excessive permissions
624
+ - Shared accounts
625
+ - Terminated users not removed
626
+ - No access reviews
627
+ - Weak passwords
628
+
629
+ Change Management Issues:
630
+ - Unauthorized changes
631
+ - Inadequate testing
632
+ - Missing approvals
633
+ - No rollback plans
634
+ - Poor documentation
635
+
636
+ Security Issues:
637
+ - Unpatched systems
638
+ - Missing encryption
639
+ - Inadequate logging
640
+ - No vulnerability scanning
641
+ - Weak configurations
642
+
643
+ Backup and Recovery Issues:
644
+ - Backups not tested
645
+ - No offsite backups
646
+ - Missing DR plan
647
+ - Inadequate retention
648
+ - No restore testing
649
+ ```
650
+
651
+ ## Best Practices
652
+
653
+ ### 1. Governance Structure
654
+
655
+ ```yaml
656
+ IT Governance Structure:
657
+
658
+ Board of Directors
659
+
660
+ IT Steering Committee
661
+ - CEO
662
+ - CIO
663
+ - CFO
664
+ - Business Unit Heads
665
+ - IT Leadership
666
+
667
+ IT Governance Board
668
+ - CIO (Chair)
669
+ - IT Directors
670
+ - Enterprise Architect
671
+ - Security Officer
672
+
673
+ Working Groups
674
+ - Security
675
+ - Architecture
676
+ - Change Advisory Board
677
+ - Project Portfolio
678
+ ```
679
+
680
+ ### 2. Metrics and KPIs
681
+
682
+ ```yaml
683
+ Governance Metrics:
684
+
685
+ Strategic Alignment:
686
+ - IT spending as % of revenue
687
+ - Projects aligned with strategy (%)
688
+ - Business satisfaction score
689
+
690
+ Value Delivery:
691
+ - ROI on IT projects
692
+ - Time to market
693
+ - Cost savings achieved
694
+
695
+ Risk Management:
696
+ - Open security vulnerabilities
697
+ - Audit findings (count)
698
+ - Incidents due to non-compliance
699
+
700
+ Resource Optimization:
701
+ - Asset utilization rate
702
+ - License compliance %
703
+ - Cloud cost optimization
704
+
705
+ Performance:
706
+ - System availability
707
+ - Change success rate
708
+ - Project on-time delivery %
709
+ ```
710
+
711
+ ### 3. Policy Awareness
712
+
713
+ ```yaml
714
+ Policy Awareness Program:
715
+
716
+ New Employee Onboarding:
717
+ - Policy overview
718
+ - Acknowledgment form
719
+ - Quiz on key policies
720
+
721
+ Annual Training:
722
+ - Refresher on policies
723
+ - Updates to policies
724
+ - Compliance scenarios
725
+ - Assessment
726
+
727
+ Communication:
728
+ - Policy portal (intranet)
729
+ - Email notifications
730
+ - Posters and reminders
731
+ - Lunch and learns
732
+
733
+ Enforcement:
734
+ - Monitor compliance
735
+ - Investigate violations
736
+ - Consistent consequences
737
+ - Appeal process
738
+ ```
739
+
740
+ ### 4. Continuous Improvement
741
+
742
+ Learn from audits, incidents, and industry changes.
743
+
744
+ ### 5. Documentation
745
+
746
+ Maintain comprehensive, up-to-date documentation of all governance activities.
747
+
748
+ ---
749
+
750
+ **Related Resources:**
751
+ - [itil-framework.md](itil-framework.md) - IT governance practices
752
+ - [asset-management.md](asset-management.md) - IT asset governance
753
+ - [change-management.md](change-management.md) - Change governance