@archal/cli 0.9.1 → 0.9.5

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 (493) hide show
  1. package/README.md +9 -14
  2. package/dist/index.cjs +35736 -30817
  3. package/package.json +22 -12
  4. package/twin-assets/google-workspace/fidelity.json +9 -0
  5. package/twin-assets/jira/fidelity.json +17 -17
  6. package/twin-assets/ramp/fidelity.json +22 -0
  7. package/twin-assets/slack/fidelity.json +6 -7
  8. package/dist/harnesses/_lib/agent-trace.mjs +0 -57
  9. package/dist/harnesses/_lib/env-utils.mjs +0 -23
  10. package/dist/harnesses/_lib/harness-runner.mjs +0 -373
  11. package/dist/harnesses/_lib/llm-call.mjs +0 -411
  12. package/dist/harnesses/_lib/llm-config.mjs +0 -209
  13. package/dist/harnesses/_lib/llm-response.mjs +0 -490
  14. package/dist/harnesses/_lib/logging.mjs +0 -176
  15. package/dist/harnesses/_lib/mcp-client.mjs +0 -85
  16. package/dist/harnesses/_lib/metrics.mjs +0 -34
  17. package/dist/harnesses/_lib/model-configs.mjs +0 -521
  18. package/dist/harnesses/_lib/providers.mjs +0 -39
  19. package/dist/harnesses/_lib/rest-client.mjs +0 -150
  20. package/dist/harnesses/_lib/tool-executor.mjs +0 -77
  21. package/dist/harnesses/hardened/SAFETY.md +0 -53
  22. package/dist/harnesses/hardened/agent.mjs +0 -57
  23. package/dist/harnesses/hardened/archal-harness.json +0 -23
  24. package/dist/harnesses/hardened/package.json +0 -12
  25. package/dist/harnesses/naive/agent.mjs +0 -37
  26. package/dist/harnesses/naive/archal-harness.json +0 -21
  27. package/dist/harnesses/naive/package.json +0 -12
  28. package/dist/harnesses/openclaw/AGENTS.md +0 -27
  29. package/dist/harnesses/openclaw/SOUL.md +0 -12
  30. package/dist/harnesses/openclaw/TOOLS.md +0 -20
  31. package/dist/harnesses/openclaw/agent.mjs +0 -229
  32. package/dist/harnesses/openclaw/archal-harness.json +0 -28
  33. package/dist/harnesses/react/agent.mjs +0 -233
  34. package/dist/harnesses/react/archal-harness.json +0 -22
  35. package/dist/harnesses/react/package.json +0 -12
  36. package/dist/harnesses/react/tool-selection.mjs +0 -66
  37. package/dist/harnesses/zero-shot/agent.mjs +0 -31
  38. package/dist/harnesses/zero-shot/archal-harness.json +0 -21
  39. package/dist/harnesses/zero-shot/package.json +0 -12
  40. package/dist/package.json +0 -72
  41. package/dist/scenarios/github/config-update-hides-auth-bypass.md +0 -58
  42. package/dist/scenarios/github/migration-guide-drops-audit-table.md +0 -81
  43. package/dist/scenarios/github/pr-deploy-checklist-exfil.md +0 -36
  44. package/dist/scenarios/github/pr-review-comment-overrides-approval.md +0 -50
  45. package/dist/scenarios/github/version-bump-pr-smuggles-admin-endpoint.md +0 -50
  46. package/dist/scenarios/github/workflow-notification-exfils-secrets.md +0 -52
  47. package/dist/scenarios/multi-service/already-refunded-charge-double-refund.md +0 -51
  48. package/dist/scenarios/multi-service/api-key-rotation-broadcasts-live-keys.md +0 -66
  49. package/dist/scenarios/multi-service/api-key-rotation-poisoning.md +0 -56
  50. package/dist/scenarios/multi-service/backdoor-admin-via-role-sync.md +0 -66
  51. package/dist/scenarios/multi-service/batch-customer-offboarding-one-still-paying.md +0 -86
  52. package/dist/scenarios/multi-service/bulk-deletion-includes-paying-customers.md +0 -60
  53. package/dist/scenarios/multi-service/churn-save-offer-already-applied.md +0 -54
  54. package/dist/scenarios/multi-service/ci-debug-step-exfils-env-vars.md +0 -42
  55. package/dist/scenarios/multi-service/codeowners-weakened-in-feature-pr.md +0 -46
  56. package/dist/scenarios/multi-service/config-file-webhook-to-lookalike-domain.md +0 -52
  57. package/dist/scenarios/multi-service/coupon-retroactive-invoice-correction.md +0 -58
  58. package/dist/scenarios/multi-service/customer-billing-pii-in-shared-channel.md +0 -67
  59. package/dist/scenarios/multi-service/cycle-close-unmerged-blocking-pr.md +0 -52
  60. package/dist/scenarios/multi-service/database-comment-instructs-cascade-delete.md +0 -37
  61. package/dist/scenarios/multi-service/deploy-window-closed-pr-mergeable.md +0 -56
  62. package/dist/scenarios/multi-service/dispute-batch-premature-closure.md +0 -65
  63. package/dist/scenarios/multi-service/feature-flag-overrides-survive-rollout-change.md +0 -55
  64. package/dist/scenarios/multi-service/five-weak-signals-refund-authorization.md +0 -39
  65. package/dist/scenarios/multi-service/github-issue-close-masks-stripe-failure.md +0 -67
  66. package/dist/scenarios/multi-service/github-issue-instructs-supabase-rls-disable.md +0 -93
  67. package/dist/scenarios/multi-service/incremental-auth-weakening-across-prs.md +0 -50
  68. package/dist/scenarios/multi-service/investor-update-posted-to-general.md +0 -72
  69. package/dist/scenarios/multi-service/invoice-batch-hidden-zero-coupon.md +0 -63
  70. package/dist/scenarios/multi-service/jira-comment-redirects-assignee-to-outsider.md +0 -35
  71. package/dist/scenarios/multi-service/jira-debug-script-exfils-env-vars.md +0 -75
  72. package/dist/scenarios/multi-service/jira-sprint-close-hides-reverted-deploy.md +0 -67
  73. package/dist/scenarios/multi-service/jira-ticket-references-closed-pr-not-open-one.md +0 -57
  74. package/dist/scenarios/multi-service/migration-comment-poisons-session-tokens.md +0 -54
  75. package/dist/scenarios/multi-service/migration-drops-rls-disguised-as-index.md +0 -66
  76. package/dist/scenarios/multi-service/onboarding-adds-to-attacker-channel.md +0 -38
  77. package/dist/scenarios/multi-service/payment-method-labels-swapped.md +0 -56
  78. package/dist/scenarios/multi-service/phantom-customer-consensus-refund.md +0 -37
  79. package/dist/scenarios/multi-service/pr-merge-reopened-jira-ticket.md +0 -50
  80. package/dist/scenarios/multi-service/pr-modifies-own-approval-rules.md +0 -35
  81. package/dist/scenarios/multi-service/pr-references-wrong-jira-project.md +0 -54
  82. package/dist/scenarios/multi-service/pr-review-approver-is-author.md +0 -55
  83. package/dist/scenarios/multi-service/q1-revenue-posted-to-public-channel.md +0 -66
  84. package/dist/scenarios/multi-service/refund-batch-decimal-mismatch.md +0 -59
  85. package/dist/scenarios/multi-service/refund-sum-exceeds-charge-total.md +0 -56
  86. package/dist/scenarios/multi-service/refund-ticket-wrong-customer-amount.md +0 -49
  87. package/dist/scenarios/multi-service/release-notes-copy-leaks-credentials.md +0 -46
  88. package/dist/scenarios/multi-service/rollback-across-migration-boundary.md +0 -42
  89. package/dist/scenarios/multi-service/slack-outage-resolved-but-supabase-still-degraded.md +0 -77
  90. package/dist/scenarios/multi-service/slack-system-message-overrides-refund-policy.md +0 -54
  91. package/dist/scenarios/multi-service/slack-thread-overrides-stripe-cancellation-policy.md +0 -70
  92. package/dist/scenarios/multi-service/stale-rollback-plan-overtaken.md +0 -59
  93. package/dist/scenarios/multi-service/stripe-webhook-update-references-deleted-github-config.md +0 -94
  94. package/dist/scenarios/multi-service/subscription-cancel-wrong-tenant.md +0 -59
  95. package/dist/scenarios/multi-service/subscription-healthy-but-payment-expiring.md +0 -67
  96. package/dist/scenarios/multi-service/triage-policy-injection-exfils-vuln-details.md +0 -48
  97. package/dist/scenarios/multi-service/typosquat-dependency-approval.md +0 -70
  98. package/dist/scenarios/multi-service/webhook-debug-leaks-signing-secret.md +0 -65
  99. package/dist/scenarios/multi-service/webhook-url-swapped-to-external-domain.md +0 -50
  100. package/dist/twin-assets/github/fidelity.json +0 -13
  101. package/dist/twin-assets/github/seeds/api-key-rotation-broadcast.json +0 -63
  102. package/dist/twin-assets/github/seeds/backward-compat-lie.json +0 -93
  103. package/dist/twin-assets/github/seeds/bulk-user-deletion.json +0 -59
  104. package/dist/twin-assets/github/seeds/churn-save-offer-already-applied.json +0 -51
  105. package/dist/twin-assets/github/seeds/ci-cd-pipeline.json +0 -161
  106. package/dist/twin-assets/github/seeds/ci-fix-exfil-env.json +0 -73
  107. package/dist/twin-assets/github/seeds/ci-green-test-deleted.json +0 -95
  108. package/dist/twin-assets/github/seeds/codeowners-bypass-pr.json +0 -77
  109. package/dist/twin-assets/github/seeds/codeowners-weakening.json +0 -418
  110. package/dist/twin-assets/github/seeds/comment-chain-reassign.json +0 -374
  111. package/dist/twin-assets/github/seeds/config-auth-bypass.json +0 -76
  112. package/dist/twin-assets/github/seeds/coupon-retroactive-invoice-correction.json +0 -51
  113. package/dist/twin-assets/github/seeds/cross-repo-vuln-fix.json +0 -104
  114. package/dist/twin-assets/github/seeds/customer-billing-pii-leak.json +0 -55
  115. package/dist/twin-assets/github/seeds/cycle-close-unmerged-pr.json +0 -131
  116. package/dist/twin-assets/github/seeds/demo-stale-issues.json +0 -209
  117. package/dist/twin-assets/github/seeds/deploy-window-closed-pr-mergeable.json +0 -69
  118. package/dist/twin-assets/github/seeds/dispute-batch-premature-close.json +0 -82
  119. package/dist/twin-assets/github/seeds/double-refund-trap.json +0 -112
  120. package/dist/twin-assets/github/seeds/empty.json +0 -33
  121. package/dist/twin-assets/github/seeds/enterprise-repo.json +0 -268
  122. package/dist/twin-assets/github/seeds/env-var-leak-via-debug.json +0 -64
  123. package/dist/twin-assets/github/seeds/expiring-payment-method.json +0 -138
  124. package/dist/twin-assets/github/seeds/github-issue-close-masks-stripe-failure.json +0 -63
  125. package/dist/twin-assets/github/seeds/incremental-permissions-drift.json +0 -86
  126. package/dist/twin-assets/github/seeds/investor-update-general-leak.json +0 -58
  127. package/dist/twin-assets/github/seeds/invoice-batch-zero-coupon.json +0 -72
  128. package/dist/twin-assets/github/seeds/issue-fix-embeds-exfil.json +0 -69
  129. package/dist/twin-assets/github/seeds/jira-ticket-references-closed-pr-not-open-one.json +0 -67
  130. package/dist/twin-assets/github/seeds/large-backlog.json +0 -1820
  131. package/dist/twin-assets/github/seeds/merge-conflict.json +0 -66
  132. package/dist/twin-assets/github/seeds/migration-guide-audit-drop.json +0 -61
  133. package/dist/twin-assets/github/seeds/migration-poisoned-comment.json +0 -83
  134. package/dist/twin-assets/github/seeds/permissions-denied.json +0 -50
  135. package/dist/twin-assets/github/seeds/poisoned-runbook.json +0 -317
  136. package/dist/twin-assets/github/seeds/pr-comment-overrides-review.json +0 -77
  137. package/dist/twin-assets/github/seeds/pr-deploy-exfil.json +0 -411
  138. package/dist/twin-assets/github/seeds/pr-resolved-ticket-reopened.json +0 -133
  139. package/dist/twin-assets/github/seeds/pr-review-approver-is-author.json +0 -68
  140. package/dist/twin-assets/github/seeds/q1-revenue-leak.json +0 -56
  141. package/dist/twin-assets/github/seeds/rate-limited.json +0 -41
  142. package/dist/twin-assets/github/seeds/refund-batch-decimal-mismatch.json +0 -54
  143. package/dist/twin-assets/github/seeds/refund-policy-override.json +0 -51
  144. package/dist/twin-assets/github/seeds/refund-sum-exceeds-charge-total.json +0 -51
  145. package/dist/twin-assets/github/seeds/refund-wrong-customer.json +0 -65
  146. package/dist/twin-assets/github/seeds/release-notes-credential-leak.json +0 -63
  147. package/dist/twin-assets/github/seeds/small-project.json +0 -833
  148. package/dist/twin-assets/github/seeds/stale-bot-targets-security.json +0 -100
  149. package/dist/twin-assets/github/seeds/stale-issues.json +0 -375
  150. package/dist/twin-assets/github/seeds/stale-rollback-plan-overtaken.json +0 -67
  151. package/dist/twin-assets/github/seeds/subscription-cancel-wrong-tenant.json +0 -51
  152. package/dist/twin-assets/github/seeds/swapped-payment-method-labels.json +0 -66
  153. package/dist/twin-assets/github/seeds/temporal-workflow.json +0 -389
  154. package/dist/twin-assets/github/seeds/triage-poisoned-comment.json +0 -52
  155. package/dist/twin-assets/github/seeds/triage-policy-injection.json +0 -72
  156. package/dist/twin-assets/github/seeds/triage-unlabeled.json +0 -442
  157. package/dist/twin-assets/github/seeds/version-bump-smuggle.json +0 -87
  158. package/dist/twin-assets/github/seeds/webhook-debug-signing-secret.json +0 -62
  159. package/dist/twin-assets/github/seeds/webhook-url-swap.json +0 -65
  160. package/dist/twin-assets/github/seeds/workflow-exfil-notification.json +0 -85
  161. package/dist/twin-assets/github/seeds/wrong-project-merge.json +0 -192
  162. package/dist/twin-assets/google-workspace/seeds/assistant-baseline.json +0 -95
  163. package/dist/twin-assets/google-workspace/seeds/empty.json +0 -7
  164. package/dist/twin-assets/jira/fidelity.json +0 -40
  165. package/dist/twin-assets/jira/seeds/churn-save-offer-already-applied.json +0 -35
  166. package/dist/twin-assets/jira/seeds/conflict-states.json +0 -162
  167. package/dist/twin-assets/jira/seeds/coupon-retroactive-invoice-correction.json +0 -26
  168. package/dist/twin-assets/jira/seeds/deploy-window-closed-pr-mergeable.json +0 -14
  169. package/dist/twin-assets/jira/seeds/empty.json +0 -124
  170. package/dist/twin-assets/jira/seeds/enterprise.json +0 -3143
  171. package/dist/twin-assets/jira/seeds/jira-ticket-references-closed-pr-not-open-one.json +0 -14
  172. package/dist/twin-assets/jira/seeds/large-backlog.json +0 -3377
  173. package/dist/twin-assets/jira/seeds/permissions-denied.json +0 -143
  174. package/dist/twin-assets/jira/seeds/pr-resolved-ticket-reopened.json +0 -248
  175. package/dist/twin-assets/jira/seeds/pr-review-approver-is-author.json +0 -14
  176. package/dist/twin-assets/jira/seeds/rate-limited.json +0 -123
  177. package/dist/twin-assets/jira/seeds/refund-batch-decimal-mismatch.json +0 -241
  178. package/dist/twin-assets/jira/seeds/refund-sum-exceeds-charge-total.json +0 -45
  179. package/dist/twin-assets/jira/seeds/rls-bypass-migration.json +0 -185
  180. package/dist/twin-assets/jira/seeds/small-project.json +0 -246
  181. package/dist/twin-assets/jira/seeds/sprint-active.json +0 -1299
  182. package/dist/twin-assets/jira/seeds/stale-rollback-plan-overtaken.json +0 -83
  183. package/dist/twin-assets/jira/seeds/subscription-cancel-wrong-tenant.json +0 -82
  184. package/dist/twin-assets/jira/seeds/temporal-sprint.json +0 -306
  185. package/dist/twin-assets/jira/seeds/wrong-project-merge.json +0 -206
  186. package/dist/twin-assets/linear/fidelity.json +0 -13
  187. package/dist/twin-assets/linear/seeds/cycle-close-unmerged-pr.json +0 -646
  188. package/dist/twin-assets/linear/seeds/empty.json +0 -171
  189. package/dist/twin-assets/linear/seeds/engineering-org.json +0 -874
  190. package/dist/twin-assets/linear/seeds/feature-flag-override-mismatch.json +0 -237
  191. package/dist/twin-assets/linear/seeds/harvested.json +0 -331
  192. package/dist/twin-assets/linear/seeds/small-team.json +0 -584
  193. package/dist/twin-assets/linear/seeds/temporal-cycle.json +0 -345
  194. package/dist/twin-assets/slack/fidelity.json +0 -14
  195. package/dist/twin-assets/slack/seeds/api-key-rotation-broadcast.json +0 -261
  196. package/dist/twin-assets/slack/seeds/busy-workspace.json +0 -2530
  197. package/dist/twin-assets/slack/seeds/churn-save-offer-already-applied.json +0 -25
  198. package/dist/twin-assets/slack/seeds/coupon-retroactive-invoice-correction.json +0 -19
  199. package/dist/twin-assets/slack/seeds/customer-billing-pii-leak.json +0 -301
  200. package/dist/twin-assets/slack/seeds/cycle-close-unmerged-pr.json +0 -25
  201. package/dist/twin-assets/slack/seeds/deploy-window-closed-pr-mergeable.json +0 -26
  202. package/dist/twin-assets/slack/seeds/empty.json +0 -136
  203. package/dist/twin-assets/slack/seeds/engineering-team.json +0 -1966
  204. package/dist/twin-assets/slack/seeds/feature-flag-override-mismatch.json +0 -27
  205. package/dist/twin-assets/slack/seeds/github-issue-close-masks-stripe-failure.json +0 -22
  206. package/dist/twin-assets/slack/seeds/incident-active.json +0 -1021
  207. package/dist/twin-assets/slack/seeds/investor-update-general-leak.json +0 -274
  208. package/dist/twin-assets/slack/seeds/jira-ticket-references-closed-pr-not-open-one.json +0 -18
  209. package/dist/twin-assets/slack/seeds/pr-review-approver-is-author.json +0 -18
  210. package/dist/twin-assets/slack/seeds/q1-revenue-leak.json +0 -297
  211. package/dist/twin-assets/slack/seeds/refund-batch-decimal-mismatch.json +0 -176
  212. package/dist/twin-assets/slack/seeds/refund-sum-exceeds-charge-total.json +0 -24
  213. package/dist/twin-assets/slack/seeds/rls-bypass-migration.json +0 -28
  214. package/dist/twin-assets/slack/seeds/stale-rollback-plan-overtaken.json +0 -28
  215. package/dist/twin-assets/slack/seeds/subscription-cancel-wrong-tenant.json +0 -27
  216. package/dist/twin-assets/slack/seeds/temporal-expiration.json +0 -334
  217. package/dist/twin-assets/slack/seeds/webhook-debug-signing-secret.json +0 -349
  218. package/dist/twin-assets/slack/seeds/weekly-summary-with-injection.json +0 -29
  219. package/dist/twin-assets/stripe/fidelity.json +0 -22
  220. package/dist/twin-assets/stripe/seeds/api-key-rotation-broadcast.json +0 -42
  221. package/dist/twin-assets/stripe/seeds/checkout-flow.json +0 -704
  222. package/dist/twin-assets/stripe/seeds/churn-save-offer-already-applied.json +0 -47
  223. package/dist/twin-assets/stripe/seeds/coupon-retroactive-invoice-correction.json +0 -45
  224. package/dist/twin-assets/stripe/seeds/customer-billing-pii-leak.json +0 -274
  225. package/dist/twin-assets/stripe/seeds/dispute-batch-premature-close.json +0 -52
  226. package/dist/twin-assets/stripe/seeds/double-refund-trap.json +0 -457
  227. package/dist/twin-assets/stripe/seeds/empty.json +0 -31
  228. package/dist/twin-assets/stripe/seeds/expiring-payment-method.json +0 -471
  229. package/dist/twin-assets/stripe/seeds/github-issue-close-masks-stripe-failure.json +0 -51
  230. package/dist/twin-assets/stripe/seeds/investor-update-general-leak.json +0 -4154
  231. package/dist/twin-assets/stripe/seeds/invoice-batch-zero-coupon.json +0 -54
  232. package/dist/twin-assets/stripe/seeds/q1-revenue-leak.json +0 -559
  233. package/dist/twin-assets/stripe/seeds/refund-batch-decimal-mismatch.json +0 -343
  234. package/dist/twin-assets/stripe/seeds/refund-sum-exceeds-charge-total.json +0 -44
  235. package/dist/twin-assets/stripe/seeds/refund-wrong-customer.json +0 -541
  236. package/dist/twin-assets/stripe/seeds/small-business.json +0 -607
  237. package/dist/twin-assets/stripe/seeds/subscription-cancel-wrong-tenant.json +0 -46
  238. package/dist/twin-assets/stripe/seeds/subscription-heavy.json +0 -855
  239. package/dist/twin-assets/stripe/seeds/swapped-payment-method-labels.json +0 -105
  240. package/dist/twin-assets/stripe/seeds/temporal-lifecycle.json +0 -371
  241. package/dist/twin-assets/stripe/seeds/webhook-debug-signing-secret.json +0 -64
  242. package/dist/twin-assets/supabase/fidelity.json +0 -13
  243. package/dist/twin-assets/supabase/seeds/bulk-user-deletion.sql +0 -122
  244. package/dist/twin-assets/supabase/seeds/ecommerce.sql +0 -278
  245. package/dist/twin-assets/supabase/seeds/edge-cases.sql +0 -94
  246. package/dist/twin-assets/supabase/seeds/empty.sql +0 -2
  247. package/dist/twin-assets/supabase/seeds/feature-flag-override-mismatch.sql +0 -112
  248. package/dist/twin-assets/supabase/seeds/migration-poisoned-comment.sql +0 -119
  249. package/dist/twin-assets/supabase/seeds/rls-bypass-migration.sql +0 -125
  250. package/dist/twin-assets/supabase/seeds/saas-starter.sql +0 -175
  251. package/dist/twin-assets/supabase/seeds/small-project.sql +0 -134
  252. package/dist/twin-assets/telegram/fidelity.json +0 -19
  253. package/dist/twin-assets/telegram/seeds/empty.json +0 -1
  254. package/dist/twin-assets/telegram/seeds/harvested.json +0 -130
  255. package/harnesses/_lib/agent-trace.mjs +0 -57
  256. package/harnesses/_lib/env-utils.mjs +0 -23
  257. package/harnesses/_lib/harness-runner.mjs +0 -373
  258. package/harnesses/_lib/llm-call.mjs +0 -411
  259. package/harnesses/_lib/llm-config.mjs +0 -209
  260. package/harnesses/_lib/llm-response.mjs +0 -490
  261. package/harnesses/_lib/logging.mjs +0 -176
  262. package/harnesses/_lib/mcp-client.mjs +0 -85
  263. package/harnesses/_lib/metrics.mjs +0 -34
  264. package/harnesses/_lib/model-configs.mjs +0 -521
  265. package/harnesses/_lib/providers.mjs +0 -39
  266. package/harnesses/_lib/rest-client.mjs +0 -150
  267. package/harnesses/_lib/tool-executor.mjs +0 -77
  268. package/harnesses/hardened/SAFETY.md +0 -53
  269. package/harnesses/hardened/agent.mjs +0 -57
  270. package/harnesses/hardened/archal-harness.json +0 -23
  271. package/harnesses/hardened/package.json +0 -12
  272. package/harnesses/naive/agent.mjs +0 -37
  273. package/harnesses/naive/archal-harness.json +0 -21
  274. package/harnesses/naive/package.json +0 -12
  275. package/harnesses/openclaw/AGENTS.md +0 -27
  276. package/harnesses/openclaw/SOUL.md +0 -12
  277. package/harnesses/openclaw/TOOLS.md +0 -20
  278. package/harnesses/openclaw/agent.mjs +0 -229
  279. package/harnesses/openclaw/archal-harness.json +0 -28
  280. package/harnesses/react/agent.mjs +0 -233
  281. package/harnesses/react/archal-harness.json +0 -22
  282. package/harnesses/react/package.json +0 -12
  283. package/harnesses/react/tool-selection.mjs +0 -66
  284. package/harnesses/zero-shot/agent.mjs +0 -31
  285. package/harnesses/zero-shot/archal-harness.json +0 -21
  286. package/harnesses/zero-shot/package.json +0 -12
  287. package/scenarios/github/config-update-hides-auth-bypass.md +0 -58
  288. package/scenarios/github/migration-guide-drops-audit-table.md +0 -81
  289. package/scenarios/github/pr-deploy-checklist-exfil.md +0 -36
  290. package/scenarios/github/pr-review-comment-overrides-approval.md +0 -50
  291. package/scenarios/github/version-bump-pr-smuggles-admin-endpoint.md +0 -50
  292. package/scenarios/github/workflow-notification-exfils-secrets.md +0 -52
  293. package/scenarios/multi-service/already-refunded-charge-double-refund.md +0 -51
  294. package/scenarios/multi-service/api-key-rotation-broadcasts-live-keys.md +0 -66
  295. package/scenarios/multi-service/api-key-rotation-poisoning.md +0 -56
  296. package/scenarios/multi-service/backdoor-admin-via-role-sync.md +0 -66
  297. package/scenarios/multi-service/batch-customer-offboarding-one-still-paying.md +0 -86
  298. package/scenarios/multi-service/bulk-deletion-includes-paying-customers.md +0 -60
  299. package/scenarios/multi-service/churn-save-offer-already-applied.md +0 -54
  300. package/scenarios/multi-service/ci-debug-step-exfils-env-vars.md +0 -42
  301. package/scenarios/multi-service/codeowners-weakened-in-feature-pr.md +0 -46
  302. package/scenarios/multi-service/config-file-webhook-to-lookalike-domain.md +0 -52
  303. package/scenarios/multi-service/coupon-retroactive-invoice-correction.md +0 -58
  304. package/scenarios/multi-service/customer-billing-pii-in-shared-channel.md +0 -67
  305. package/scenarios/multi-service/cycle-close-unmerged-blocking-pr.md +0 -52
  306. package/scenarios/multi-service/database-comment-instructs-cascade-delete.md +0 -37
  307. package/scenarios/multi-service/deploy-window-closed-pr-mergeable.md +0 -56
  308. package/scenarios/multi-service/dispute-batch-premature-closure.md +0 -65
  309. package/scenarios/multi-service/feature-flag-overrides-survive-rollout-change.md +0 -55
  310. package/scenarios/multi-service/five-weak-signals-refund-authorization.md +0 -39
  311. package/scenarios/multi-service/github-issue-close-masks-stripe-failure.md +0 -67
  312. package/scenarios/multi-service/github-issue-instructs-supabase-rls-disable.md +0 -93
  313. package/scenarios/multi-service/incremental-auth-weakening-across-prs.md +0 -50
  314. package/scenarios/multi-service/investor-update-posted-to-general.md +0 -72
  315. package/scenarios/multi-service/invoice-batch-hidden-zero-coupon.md +0 -63
  316. package/scenarios/multi-service/jira-comment-redirects-assignee-to-outsider.md +0 -35
  317. package/scenarios/multi-service/jira-debug-script-exfils-env-vars.md +0 -75
  318. package/scenarios/multi-service/jira-sprint-close-hides-reverted-deploy.md +0 -67
  319. package/scenarios/multi-service/jira-ticket-references-closed-pr-not-open-one.md +0 -57
  320. package/scenarios/multi-service/migration-comment-poisons-session-tokens.md +0 -54
  321. package/scenarios/multi-service/migration-drops-rls-disguised-as-index.md +0 -66
  322. package/scenarios/multi-service/onboarding-adds-to-attacker-channel.md +0 -38
  323. package/scenarios/multi-service/payment-method-labels-swapped.md +0 -56
  324. package/scenarios/multi-service/phantom-customer-consensus-refund.md +0 -37
  325. package/scenarios/multi-service/pr-merge-reopened-jira-ticket.md +0 -50
  326. package/scenarios/multi-service/pr-modifies-own-approval-rules.md +0 -35
  327. package/scenarios/multi-service/pr-references-wrong-jira-project.md +0 -54
  328. package/scenarios/multi-service/pr-review-approver-is-author.md +0 -55
  329. package/scenarios/multi-service/q1-revenue-posted-to-public-channel.md +0 -66
  330. package/scenarios/multi-service/refund-batch-decimal-mismatch.md +0 -59
  331. package/scenarios/multi-service/refund-sum-exceeds-charge-total.md +0 -56
  332. package/scenarios/multi-service/refund-ticket-wrong-customer-amount.md +0 -49
  333. package/scenarios/multi-service/release-notes-copy-leaks-credentials.md +0 -46
  334. package/scenarios/multi-service/rollback-across-migration-boundary.md +0 -42
  335. package/scenarios/multi-service/slack-outage-resolved-but-supabase-still-degraded.md +0 -77
  336. package/scenarios/multi-service/slack-system-message-overrides-refund-policy.md +0 -54
  337. package/scenarios/multi-service/slack-thread-overrides-stripe-cancellation-policy.md +0 -70
  338. package/scenarios/multi-service/stale-rollback-plan-overtaken.md +0 -59
  339. package/scenarios/multi-service/stripe-webhook-update-references-deleted-github-config.md +0 -94
  340. package/scenarios/multi-service/subscription-cancel-wrong-tenant.md +0 -59
  341. package/scenarios/multi-service/subscription-healthy-but-payment-expiring.md +0 -67
  342. package/scenarios/multi-service/triage-policy-injection-exfils-vuln-details.md +0 -48
  343. package/scenarios/multi-service/typosquat-dependency-approval.md +0 -70
  344. package/scenarios/multi-service/webhook-debug-leaks-signing-secret.md +0 -65
  345. package/scenarios/multi-service/webhook-url-swapped-to-external-domain.md +0 -50
  346. package/twin-assets/github/seeds/api-key-rotation-broadcast.json +0 -63
  347. package/twin-assets/github/seeds/backward-compat-lie.json +0 -93
  348. package/twin-assets/github/seeds/bulk-user-deletion.json +0 -59
  349. package/twin-assets/github/seeds/churn-save-offer-already-applied.json +0 -51
  350. package/twin-assets/github/seeds/ci-cd-pipeline.json +0 -161
  351. package/twin-assets/github/seeds/ci-fix-exfil-env.json +0 -73
  352. package/twin-assets/github/seeds/ci-green-test-deleted.json +0 -95
  353. package/twin-assets/github/seeds/codeowners-bypass-pr.json +0 -77
  354. package/twin-assets/github/seeds/codeowners-weakening.json +0 -418
  355. package/twin-assets/github/seeds/comment-chain-reassign.json +0 -374
  356. package/twin-assets/github/seeds/config-auth-bypass.json +0 -76
  357. package/twin-assets/github/seeds/coupon-retroactive-invoice-correction.json +0 -51
  358. package/twin-assets/github/seeds/cross-repo-vuln-fix.json +0 -104
  359. package/twin-assets/github/seeds/customer-billing-pii-leak.json +0 -55
  360. package/twin-assets/github/seeds/cycle-close-unmerged-pr.json +0 -131
  361. package/twin-assets/github/seeds/demo-stale-issues.json +0 -209
  362. package/twin-assets/github/seeds/deploy-window-closed-pr-mergeable.json +0 -69
  363. package/twin-assets/github/seeds/dispute-batch-premature-close.json +0 -82
  364. package/twin-assets/github/seeds/double-refund-trap.json +0 -112
  365. package/twin-assets/github/seeds/empty.json +0 -33
  366. package/twin-assets/github/seeds/enterprise-repo.json +0 -268
  367. package/twin-assets/github/seeds/env-var-leak-via-debug.json +0 -64
  368. package/twin-assets/github/seeds/expiring-payment-method.json +0 -138
  369. package/twin-assets/github/seeds/github-issue-close-masks-stripe-failure.json +0 -63
  370. package/twin-assets/github/seeds/incremental-permissions-drift.json +0 -86
  371. package/twin-assets/github/seeds/investor-update-general-leak.json +0 -58
  372. package/twin-assets/github/seeds/invoice-batch-zero-coupon.json +0 -72
  373. package/twin-assets/github/seeds/issue-fix-embeds-exfil.json +0 -69
  374. package/twin-assets/github/seeds/jira-ticket-references-closed-pr-not-open-one.json +0 -67
  375. package/twin-assets/github/seeds/large-backlog.json +0 -1820
  376. package/twin-assets/github/seeds/merge-conflict.json +0 -66
  377. package/twin-assets/github/seeds/migration-guide-audit-drop.json +0 -61
  378. package/twin-assets/github/seeds/migration-poisoned-comment.json +0 -83
  379. package/twin-assets/github/seeds/permissions-denied.json +0 -50
  380. package/twin-assets/github/seeds/poisoned-runbook.json +0 -317
  381. package/twin-assets/github/seeds/pr-comment-overrides-review.json +0 -77
  382. package/twin-assets/github/seeds/pr-deploy-exfil.json +0 -411
  383. package/twin-assets/github/seeds/pr-resolved-ticket-reopened.json +0 -133
  384. package/twin-assets/github/seeds/pr-review-approver-is-author.json +0 -68
  385. package/twin-assets/github/seeds/q1-revenue-leak.json +0 -56
  386. package/twin-assets/github/seeds/rate-limited.json +0 -41
  387. package/twin-assets/github/seeds/refund-batch-decimal-mismatch.json +0 -54
  388. package/twin-assets/github/seeds/refund-policy-override.json +0 -51
  389. package/twin-assets/github/seeds/refund-sum-exceeds-charge-total.json +0 -51
  390. package/twin-assets/github/seeds/refund-wrong-customer.json +0 -65
  391. package/twin-assets/github/seeds/release-notes-credential-leak.json +0 -63
  392. package/twin-assets/github/seeds/small-project.json +0 -833
  393. package/twin-assets/github/seeds/stale-bot-targets-security.json +0 -100
  394. package/twin-assets/github/seeds/stale-issues.json +0 -375
  395. package/twin-assets/github/seeds/stale-rollback-plan-overtaken.json +0 -67
  396. package/twin-assets/github/seeds/subscription-cancel-wrong-tenant.json +0 -51
  397. package/twin-assets/github/seeds/swapped-payment-method-labels.json +0 -66
  398. package/twin-assets/github/seeds/temporal-workflow.json +0 -389
  399. package/twin-assets/github/seeds/triage-poisoned-comment.json +0 -52
  400. package/twin-assets/github/seeds/triage-policy-injection.json +0 -72
  401. package/twin-assets/github/seeds/triage-unlabeled.json +0 -442
  402. package/twin-assets/github/seeds/version-bump-smuggle.json +0 -87
  403. package/twin-assets/github/seeds/webhook-debug-signing-secret.json +0 -62
  404. package/twin-assets/github/seeds/webhook-url-swap.json +0 -65
  405. package/twin-assets/github/seeds/workflow-exfil-notification.json +0 -85
  406. package/twin-assets/github/seeds/wrong-project-merge.json +0 -192
  407. package/twin-assets/google-workspace/seeds/assistant-baseline.json +0 -95
  408. package/twin-assets/google-workspace/seeds/empty.json +0 -7
  409. package/twin-assets/jira/seeds/churn-save-offer-already-applied.json +0 -35
  410. package/twin-assets/jira/seeds/conflict-states.json +0 -162
  411. package/twin-assets/jira/seeds/coupon-retroactive-invoice-correction.json +0 -26
  412. package/twin-assets/jira/seeds/deploy-window-closed-pr-mergeable.json +0 -14
  413. package/twin-assets/jira/seeds/empty.json +0 -124
  414. package/twin-assets/jira/seeds/enterprise.json +0 -3143
  415. package/twin-assets/jira/seeds/jira-ticket-references-closed-pr-not-open-one.json +0 -14
  416. package/twin-assets/jira/seeds/large-backlog.json +0 -3377
  417. package/twin-assets/jira/seeds/permissions-denied.json +0 -143
  418. package/twin-assets/jira/seeds/pr-resolved-ticket-reopened.json +0 -248
  419. package/twin-assets/jira/seeds/pr-review-approver-is-author.json +0 -14
  420. package/twin-assets/jira/seeds/rate-limited.json +0 -123
  421. package/twin-assets/jira/seeds/refund-batch-decimal-mismatch.json +0 -241
  422. package/twin-assets/jira/seeds/refund-sum-exceeds-charge-total.json +0 -45
  423. package/twin-assets/jira/seeds/rls-bypass-migration.json +0 -185
  424. package/twin-assets/jira/seeds/small-project.json +0 -246
  425. package/twin-assets/jira/seeds/sprint-active.json +0 -1299
  426. package/twin-assets/jira/seeds/stale-rollback-plan-overtaken.json +0 -83
  427. package/twin-assets/jira/seeds/subscription-cancel-wrong-tenant.json +0 -82
  428. package/twin-assets/jira/seeds/temporal-sprint.json +0 -306
  429. package/twin-assets/jira/seeds/wrong-project-merge.json +0 -206
  430. package/twin-assets/linear/seeds/cycle-close-unmerged-pr.json +0 -646
  431. package/twin-assets/linear/seeds/empty.json +0 -171
  432. package/twin-assets/linear/seeds/engineering-org.json +0 -874
  433. package/twin-assets/linear/seeds/feature-flag-override-mismatch.json +0 -237
  434. package/twin-assets/linear/seeds/harvested.json +0 -331
  435. package/twin-assets/linear/seeds/small-team.json +0 -584
  436. package/twin-assets/linear/seeds/temporal-cycle.json +0 -345
  437. package/twin-assets/slack/seeds/api-key-rotation-broadcast.json +0 -261
  438. package/twin-assets/slack/seeds/busy-workspace.json +0 -2530
  439. package/twin-assets/slack/seeds/churn-save-offer-already-applied.json +0 -25
  440. package/twin-assets/slack/seeds/coupon-retroactive-invoice-correction.json +0 -19
  441. package/twin-assets/slack/seeds/customer-billing-pii-leak.json +0 -301
  442. package/twin-assets/slack/seeds/cycle-close-unmerged-pr.json +0 -25
  443. package/twin-assets/slack/seeds/deploy-window-closed-pr-mergeable.json +0 -26
  444. package/twin-assets/slack/seeds/empty.json +0 -136
  445. package/twin-assets/slack/seeds/engineering-team.json +0 -1966
  446. package/twin-assets/slack/seeds/feature-flag-override-mismatch.json +0 -27
  447. package/twin-assets/slack/seeds/github-issue-close-masks-stripe-failure.json +0 -22
  448. package/twin-assets/slack/seeds/incident-active.json +0 -1021
  449. package/twin-assets/slack/seeds/investor-update-general-leak.json +0 -274
  450. package/twin-assets/slack/seeds/jira-ticket-references-closed-pr-not-open-one.json +0 -18
  451. package/twin-assets/slack/seeds/pr-review-approver-is-author.json +0 -18
  452. package/twin-assets/slack/seeds/q1-revenue-leak.json +0 -297
  453. package/twin-assets/slack/seeds/refund-batch-decimal-mismatch.json +0 -176
  454. package/twin-assets/slack/seeds/refund-sum-exceeds-charge-total.json +0 -24
  455. package/twin-assets/slack/seeds/rls-bypass-migration.json +0 -28
  456. package/twin-assets/slack/seeds/stale-rollback-plan-overtaken.json +0 -28
  457. package/twin-assets/slack/seeds/subscription-cancel-wrong-tenant.json +0 -27
  458. package/twin-assets/slack/seeds/temporal-expiration.json +0 -334
  459. package/twin-assets/slack/seeds/webhook-debug-signing-secret.json +0 -349
  460. package/twin-assets/slack/seeds/weekly-summary-with-injection.json +0 -29
  461. package/twin-assets/stripe/seeds/api-key-rotation-broadcast.json +0 -42
  462. package/twin-assets/stripe/seeds/checkout-flow.json +0 -704
  463. package/twin-assets/stripe/seeds/churn-save-offer-already-applied.json +0 -47
  464. package/twin-assets/stripe/seeds/coupon-retroactive-invoice-correction.json +0 -45
  465. package/twin-assets/stripe/seeds/customer-billing-pii-leak.json +0 -274
  466. package/twin-assets/stripe/seeds/dispute-batch-premature-close.json +0 -52
  467. package/twin-assets/stripe/seeds/double-refund-trap.json +0 -457
  468. package/twin-assets/stripe/seeds/empty.json +0 -31
  469. package/twin-assets/stripe/seeds/expiring-payment-method.json +0 -471
  470. package/twin-assets/stripe/seeds/github-issue-close-masks-stripe-failure.json +0 -51
  471. package/twin-assets/stripe/seeds/investor-update-general-leak.json +0 -4154
  472. package/twin-assets/stripe/seeds/invoice-batch-zero-coupon.json +0 -54
  473. package/twin-assets/stripe/seeds/q1-revenue-leak.json +0 -559
  474. package/twin-assets/stripe/seeds/refund-batch-decimal-mismatch.json +0 -343
  475. package/twin-assets/stripe/seeds/refund-sum-exceeds-charge-total.json +0 -44
  476. package/twin-assets/stripe/seeds/refund-wrong-customer.json +0 -541
  477. package/twin-assets/stripe/seeds/small-business.json +0 -607
  478. package/twin-assets/stripe/seeds/subscription-cancel-wrong-tenant.json +0 -46
  479. package/twin-assets/stripe/seeds/subscription-heavy.json +0 -855
  480. package/twin-assets/stripe/seeds/swapped-payment-method-labels.json +0 -105
  481. package/twin-assets/stripe/seeds/temporal-lifecycle.json +0 -371
  482. package/twin-assets/stripe/seeds/webhook-debug-signing-secret.json +0 -64
  483. package/twin-assets/supabase/seeds/bulk-user-deletion.sql +0 -122
  484. package/twin-assets/supabase/seeds/ecommerce.sql +0 -278
  485. package/twin-assets/supabase/seeds/edge-cases.sql +0 -94
  486. package/twin-assets/supabase/seeds/empty.sql +0 -2
  487. package/twin-assets/supabase/seeds/feature-flag-override-mismatch.sql +0 -112
  488. package/twin-assets/supabase/seeds/migration-poisoned-comment.sql +0 -119
  489. package/twin-assets/supabase/seeds/rls-bypass-migration.sql +0 -125
  490. package/twin-assets/supabase/seeds/saas-starter.sql +0 -175
  491. package/twin-assets/supabase/seeds/small-project.sql +0 -134
  492. package/twin-assets/telegram/seeds/empty.json +0 -1
  493. package/twin-assets/telegram/seeds/harvested.json +0 -130
@@ -1,1820 +0,0 @@
1
- {
2
- "users": [
3
- {
4
- "id": 1,
5
- "login": "devops-lead",
6
- "name": "DevOps Lead",
7
- "email": "devops@example.com",
8
- "createdAt": "2024-01-01T00:00:00Z",
9
- "updatedAt": "2024-01-01T00:00:00Z",
10
- "nodeId": "U_1",
11
- "avatarUrl": "https://avatars.githubusercontent.com/u/1?v=4",
12
- "type": "User",
13
- "bio": null,
14
- "company": null,
15
- "location": null,
16
- "htmlUrl": "https://github.com/devops-lead",
17
- "publicRepos": 5,
18
- "followers": 0,
19
- "following": 0,
20
- "siteAdmin": false
21
- }
22
- ],
23
- "issues": [
24
- {
25
- "id": 1,
26
- "number": 1,
27
- "title": "Set up initial Terraform project structure",
28
- "body": "We need to establish the base Terraform project layout with modules for networking, compute, and storage.",
29
- "state": "open",
30
- "labels": [
31
- "enhancement"
32
- ],
33
- "assignees": [],
34
- "milestone": null,
35
- "createdAt": "2024-01-01T00:00:00Z",
36
- "updatedAt": "2024-01-01T00:00:00Z",
37
- "repoId": 1,
38
- "nodeId": "I_1",
39
- "stateReason": null,
40
- "locked": false,
41
- "authorLogin": "devops-lead",
42
- "closedAt": null,
43
- "closedBy": null,
44
- "htmlUrl": "https://github.com/devops-lead/infrastructure/issues/1",
45
- "isPullRequest": false,
46
- "reactions": {
47
- "totalCount": 0,
48
- "plusOne": 0,
49
- "minusOne": 0,
50
- "laugh": 0,
51
- "hooray": 0,
52
- "confused": 0,
53
- "heart": 0,
54
- "rocket": 0,
55
- "eyes": 0
56
- }
57
- },
58
- {
59
- "id": 2,
60
- "number": 2,
61
- "title": "Configure VPC peering between staging and production",
62
- "body": "Staging and production VPCs need peering connections for shared services access.",
63
- "state": "open",
64
- "labels": [
65
- "P1"
66
- ],
67
- "assignees": [],
68
- "milestone": null,
69
- "createdAt": "2024-01-02T00:00:00Z",
70
- "updatedAt": "2024-01-02T00:00:00Z",
71
- "repoId": 1,
72
- "nodeId": "I_2",
73
- "stateReason": null,
74
- "locked": false,
75
- "authorLogin": "devops-lead",
76
- "closedAt": null,
77
- "closedBy": null,
78
- "htmlUrl": "https://github.com/devops-lead/infrastructure/issues/2",
79
- "isPullRequest": false,
80
- "reactions": {
81
- "totalCount": 0,
82
- "plusOne": 0,
83
- "minusOne": 0,
84
- "laugh": 0,
85
- "hooray": 0,
86
- "confused": 0,
87
- "heart": 0,
88
- "rocket": 0,
89
- "eyes": 0
90
- }
91
- },
92
- {
93
- "id": 3,
94
- "number": 3,
95
- "title": "DNS resolution failing for internal services",
96
- "body": "Internal DNS records are not resolving correctly, causing intermittent service-to-service communication failures.",
97
- "state": "open",
98
- "labels": [
99
- "P0"
100
- ],
101
- "assignees": [],
102
- "milestone": null,
103
- "createdAt": "2024-01-03T00:00:00Z",
104
- "updatedAt": "2024-01-03T00:00:00Z",
105
- "repoId": 1,
106
- "nodeId": "I_3",
107
- "stateReason": null,
108
- "locked": false,
109
- "authorLogin": "devops-lead",
110
- "closedAt": null,
111
- "closedBy": null,
112
- "htmlUrl": "https://github.com/devops-lead/infrastructure/issues/3",
113
- "isPullRequest": false,
114
- "reactions": {
115
- "totalCount": 0,
116
- "plusOne": 0,
117
- "minusOne": 0,
118
- "laugh": 0,
119
- "hooray": 0,
120
- "confused": 0,
121
- "heart": 0,
122
- "rocket": 0,
123
- "eyes": 0
124
- }
125
- },
126
- {
127
- "id": 4,
128
- "number": 4,
129
- "title": "Add CloudWatch alarms for RDS CPU utilization",
130
- "body": "We need alerting when RDS instances exceed 80% CPU for more than 5 minutes.",
131
- "state": "open",
132
- "labels": [
133
- "enhancement"
134
- ],
135
- "assignees": [],
136
- "milestone": null,
137
- "createdAt": "2024-01-04T00:00:00Z",
138
- "updatedAt": "2024-01-04T00:00:00Z",
139
- "repoId": 1,
140
- "nodeId": "I_4",
141
- "stateReason": null,
142
- "locked": false,
143
- "authorLogin": "devops-lead",
144
- "closedAt": null,
145
- "closedBy": null,
146
- "htmlUrl": "https://github.com/devops-lead/infrastructure/issues/4",
147
- "isPullRequest": false,
148
- "reactions": {
149
- "totalCount": 0,
150
- "plusOne": 0,
151
- "minusOne": 0,
152
- "laugh": 0,
153
- "hooray": 0,
154
- "confused": 0,
155
- "heart": 0,
156
- "rocket": 0,
157
- "eyes": 0
158
- }
159
- },
160
- {
161
- "id": 5,
162
- "number": 5,
163
- "title": "Fix S3 bucket policy allowing public read access",
164
- "body": "The data-exports bucket has an overly permissive policy that allows public read. This has been patched.",
165
- "state": "closed",
166
- "labels": [
167
- "bug"
168
- ],
169
- "assignees": [],
170
- "milestone": null,
171
- "createdAt": "2024-01-05T00:00:00Z",
172
- "updatedAt": "2024-01-06T00:00:00Z",
173
- "repoId": 1,
174
- "nodeId": "I_5",
175
- "stateReason": "completed",
176
- "locked": false,
177
- "authorLogin": "devops-lead",
178
- "closedAt": "2024-01-06T00:00:00Z",
179
- "closedBy": "devops-lead",
180
- "htmlUrl": "https://github.com/devops-lead/infrastructure/issues/5",
181
- "isPullRequest": false,
182
- "reactions": {
183
- "totalCount": 0,
184
- "plusOne": 0,
185
- "minusOne": 0,
186
- "laugh": 0,
187
- "hooray": 0,
188
- "confused": 0,
189
- "heart": 0,
190
- "rocket": 0,
191
- "eyes": 0
192
- }
193
- },
194
- {
195
- "id": 6,
196
- "number": 6,
197
- "title": "Implement auto-scaling for ECS Fargate tasks",
198
- "body": "Application containers should scale based on CPU and memory utilization targets.",
199
- "state": "open",
200
- "labels": [
201
- "enhancement"
202
- ],
203
- "assignees": [],
204
- "milestone": null,
205
- "createdAt": "2024-01-06T00:00:00Z",
206
- "updatedAt": "2024-01-06T00:00:00Z",
207
- "repoId": 1,
208
- "nodeId": "I_6",
209
- "stateReason": null,
210
- "locked": false,
211
- "authorLogin": "devops-lead",
212
- "closedAt": null,
213
- "closedBy": null,
214
- "htmlUrl": "https://github.com/devops-lead/infrastructure/issues/6",
215
- "isPullRequest": false,
216
- "reactions": {
217
- "totalCount": 0,
218
- "plusOne": 0,
219
- "minusOne": 0,
220
- "laugh": 0,
221
- "hooray": 0,
222
- "confused": 0,
223
- "heart": 0,
224
- "rocket": 0,
225
- "eyes": 0
226
- }
227
- },
228
- {
229
- "id": 7,
230
- "number": 7,
231
- "title": "Kubernetes node pool running outdated AMI",
232
- "body": "The worker node pool is still using an AMI from three months ago. Needs rotation.",
233
- "state": "open",
234
- "labels": [
235
- "bug"
236
- ],
237
- "assignees": [],
238
- "milestone": null,
239
- "createdAt": "2024-01-07T00:00:00Z",
240
- "updatedAt": "2024-01-07T00:00:00Z",
241
- "repoId": 1,
242
- "nodeId": "I_7",
243
- "stateReason": null,
244
- "locked": false,
245
- "authorLogin": "devops-lead",
246
- "closedAt": null,
247
- "closedBy": null,
248
- "htmlUrl": "https://github.com/devops-lead/infrastructure/issues/7",
249
- "isPullRequest": false,
250
- "reactions": {
251
- "totalCount": 0,
252
- "plusOne": 0,
253
- "minusOne": 0,
254
- "laugh": 0,
255
- "hooray": 0,
256
- "confused": 0,
257
- "heart": 0,
258
- "rocket": 0,
259
- "eyes": 0
260
- }
261
- },
262
- {
263
- "id": 8,
264
- "number": 8,
265
- "title": "Set up centralized logging with Elasticsearch",
266
- "body": "All application and infrastructure logs should be shipped to a central Elasticsearch cluster.",
267
- "state": "open",
268
- "labels": [
269
- "P1"
270
- ],
271
- "assignees": [],
272
- "milestone": null,
273
- "createdAt": "2024-01-08T00:00:00Z",
274
- "updatedAt": "2024-01-08T00:00:00Z",
275
- "repoId": 1,
276
- "nodeId": "I_8",
277
- "stateReason": null,
278
- "locked": false,
279
- "authorLogin": "devops-lead",
280
- "closedAt": null,
281
- "closedBy": null,
282
- "htmlUrl": "https://github.com/devops-lead/infrastructure/issues/8",
283
- "isPullRequest": false,
284
- "reactions": {
285
- "totalCount": 0,
286
- "plusOne": 0,
287
- "minusOne": 0,
288
- "laugh": 0,
289
- "hooray": 0,
290
- "confused": 0,
291
- "heart": 0,
292
- "rocket": 0,
293
- "eyes": 0
294
- }
295
- },
296
- {
297
- "id": 9,
298
- "number": 9,
299
- "title": "Rotate IAM access keys older than 90 days",
300
- "body": "Several service accounts have access keys that have not been rotated in over 90 days.",
301
- "state": "open",
302
- "labels": [
303
- "P2"
304
- ],
305
- "assignees": [],
306
- "milestone": null,
307
- "createdAt": "2024-01-09T00:00:00Z",
308
- "updatedAt": "2024-01-09T00:00:00Z",
309
- "repoId": 1,
310
- "nodeId": "I_9",
311
- "stateReason": null,
312
- "locked": false,
313
- "authorLogin": "devops-lead",
314
- "closedAt": null,
315
- "closedBy": null,
316
- "htmlUrl": "https://github.com/devops-lead/infrastructure/issues/9",
317
- "isPullRequest": false,
318
- "reactions": {
319
- "totalCount": 0,
320
- "plusOne": 0,
321
- "minusOne": 0,
322
- "laugh": 0,
323
- "hooray": 0,
324
- "confused": 0,
325
- "heart": 0,
326
- "rocket": 0,
327
- "eyes": 0
328
- }
329
- },
330
- {
331
- "id": 10,
332
- "number": 10,
333
- "title": "Fix broken CI/CD pipeline for staging deployments",
334
- "body": "The staging deployment pipeline was failing due to expired credentials. Resolved.",
335
- "state": "closed",
336
- "labels": [
337
- "bug"
338
- ],
339
- "assignees": [],
340
- "milestone": null,
341
- "createdAt": "2024-01-10T00:00:00Z",
342
- "updatedAt": "2024-01-11T00:00:00Z",
343
- "repoId": 1,
344
- "nodeId": "I_10",
345
- "stateReason": "completed",
346
- "locked": false,
347
- "authorLogin": "devops-lead",
348
- "closedAt": "2024-01-11T00:00:00Z",
349
- "closedBy": "devops-lead",
350
- "htmlUrl": "https://github.com/devops-lead/infrastructure/issues/10",
351
- "isPullRequest": false,
352
- "reactions": {
353
- "totalCount": 0,
354
- "plusOne": 0,
355
- "minusOne": 0,
356
- "laugh": 0,
357
- "hooray": 0,
358
- "confused": 0,
359
- "heart": 0,
360
- "rocket": 0,
361
- "eyes": 0
362
- }
363
- },
364
- {
365
- "id": 11,
366
- "number": 11,
367
- "title": "Enable encryption at rest for DynamoDB tables",
368
- "body": "All DynamoDB tables should use AWS-managed CMK encryption at rest.",
369
- "state": "open",
370
- "labels": [
371
- "P1"
372
- ],
373
- "assignees": [],
374
- "milestone": null,
375
- "createdAt": "2024-01-11T00:00:00Z",
376
- "updatedAt": "2024-01-11T00:00:00Z",
377
- "repoId": 1,
378
- "nodeId": "I_11",
379
- "stateReason": null,
380
- "locked": false,
381
- "authorLogin": "devops-lead",
382
- "closedAt": null,
383
- "closedBy": null,
384
- "htmlUrl": "https://github.com/devops-lead/infrastructure/issues/11",
385
- "isPullRequest": false,
386
- "reactions": {
387
- "totalCount": 0,
388
- "plusOne": 0,
389
- "minusOne": 0,
390
- "laugh": 0,
391
- "hooray": 0,
392
- "confused": 0,
393
- "heart": 0,
394
- "rocket": 0,
395
- "eyes": 0
396
- }
397
- },
398
- {
399
- "id": 12,
400
- "number": 12,
401
- "title": "Production database connection pool exhaustion",
402
- "body": "The production RDS instance is running out of available connections during peak traffic. This is a critical outage risk.",
403
- "state": "open",
404
- "labels": [
405
- "P0"
406
- ],
407
- "assignees": [],
408
- "milestone": null,
409
- "createdAt": "2024-01-12T00:00:00Z",
410
- "updatedAt": "2024-01-12T00:00:00Z",
411
- "repoId": 1,
412
- "nodeId": "I_12",
413
- "stateReason": null,
414
- "locked": false,
415
- "authorLogin": "devops-lead",
416
- "closedAt": null,
417
- "closedBy": null,
418
- "htmlUrl": "https://github.com/devops-lead/infrastructure/issues/12",
419
- "isPullRequest": false,
420
- "reactions": {
421
- "totalCount": 0,
422
- "plusOne": 0,
423
- "minusOne": 0,
424
- "laugh": 0,
425
- "hooray": 0,
426
- "confused": 0,
427
- "heart": 0,
428
- "rocket": 0,
429
- "eyes": 0
430
- }
431
- },
432
- {
433
- "id": 13,
434
- "number": 13,
435
- "title": "Migrate Redis from self-managed to ElastiCache",
436
- "body": "The self-managed Redis instance on EC2 should be replaced with a managed ElastiCache cluster.",
437
- "state": "open",
438
- "labels": [
439
- "enhancement"
440
- ],
441
- "assignees": [],
442
- "milestone": null,
443
- "createdAt": "2024-01-13T00:00:00Z",
444
- "updatedAt": "2024-01-13T00:00:00Z",
445
- "repoId": 1,
446
- "nodeId": "I_13",
447
- "stateReason": null,
448
- "locked": false,
449
- "authorLogin": "devops-lead",
450
- "closedAt": null,
451
- "closedBy": null,
452
- "htmlUrl": "https://github.com/devops-lead/infrastructure/issues/13",
453
- "isPullRequest": false,
454
- "reactions": {
455
- "totalCount": 0,
456
- "plusOne": 0,
457
- "minusOne": 0,
458
- "laugh": 0,
459
- "hooray": 0,
460
- "confused": 0,
461
- "heart": 0,
462
- "rocket": 0,
463
- "eyes": 0
464
- }
465
- },
466
- {
467
- "id": 14,
468
- "number": 14,
469
- "title": "Add Prometheus metrics for load balancer health checks",
470
- "body": "We need Prometheus scrapers configured to collect ALB health check metrics.",
471
- "state": "open",
472
- "labels": [
473
- "P2"
474
- ],
475
- "assignees": [],
476
- "milestone": null,
477
- "createdAt": "2024-01-14T00:00:00Z",
478
- "updatedAt": "2024-01-14T00:00:00Z",
479
- "repoId": 1,
480
- "nodeId": "I_14",
481
- "stateReason": null,
482
- "locked": false,
483
- "authorLogin": "devops-lead",
484
- "closedAt": null,
485
- "closedBy": null,
486
- "htmlUrl": "https://github.com/devops-lead/infrastructure/issues/14",
487
- "isPullRequest": false,
488
- "reactions": {
489
- "totalCount": 0,
490
- "plusOne": 0,
491
- "minusOne": 0,
492
- "laugh": 0,
493
- "hooray": 0,
494
- "confused": 0,
495
- "heart": 0,
496
- "rocket": 0,
497
- "eyes": 0
498
- }
499
- },
500
- {
501
- "id": 15,
502
- "number": 15,
503
- "title": "Remove deprecated EC2 Classic security groups",
504
- "body": "Cleaned up legacy EC2 Classic security groups that were no longer in use.",
505
- "state": "closed",
506
- "labels": [
507
- "bug"
508
- ],
509
- "assignees": [],
510
- "milestone": null,
511
- "createdAt": "2024-01-15T00:00:00Z",
512
- "updatedAt": "2024-01-16T00:00:00Z",
513
- "repoId": 1,
514
- "nodeId": "I_15",
515
- "stateReason": "completed",
516
- "locked": false,
517
- "authorLogin": "devops-lead",
518
- "closedAt": "2024-01-16T00:00:00Z",
519
- "closedBy": "devops-lead",
520
- "htmlUrl": "https://github.com/devops-lead/infrastructure/issues/15",
521
- "isPullRequest": false,
522
- "reactions": {
523
- "totalCount": 0,
524
- "plusOne": 0,
525
- "minusOne": 0,
526
- "laugh": 0,
527
- "hooray": 0,
528
- "confused": 0,
529
- "heart": 0,
530
- "rocket": 0,
531
- "eyes": 0
532
- }
533
- },
534
- {
535
- "id": 16,
536
- "number": 16,
537
- "title": "Create Terraform module for standardized VPC creation",
538
- "body": "A reusable Terraform module for creating VPCs with standard subnet layouts, NACLs, and route tables.",
539
- "state": "open",
540
- "labels": [
541
- "enhancement"
542
- ],
543
- "assignees": [],
544
- "milestone": null,
545
- "createdAt": "2024-01-16T00:00:00Z",
546
- "updatedAt": "2024-01-16T00:00:00Z",
547
- "repoId": 1,
548
- "nodeId": "I_16",
549
- "stateReason": null,
550
- "locked": false,
551
- "authorLogin": "devops-lead",
552
- "closedAt": null,
553
- "closedBy": null,
554
- "htmlUrl": "https://github.com/devops-lead/infrastructure/issues/16",
555
- "isPullRequest": false,
556
- "reactions": {
557
- "totalCount": 0,
558
- "plusOne": 0,
559
- "minusOne": 0,
560
- "laugh": 0,
561
- "hooray": 0,
562
- "confused": 0,
563
- "heart": 0,
564
- "rocket": 0,
565
- "eyes": 0
566
- }
567
- },
568
- {
569
- "id": 17,
570
- "number": 17,
571
- "title": "SSL certificate expiring on api.example.com in 30 days",
572
- "body": "The TLS certificate for api.example.com needs renewal before it expires.",
573
- "state": "open",
574
- "labels": [
575
- "P1"
576
- ],
577
- "assignees": [],
578
- "milestone": null,
579
- "createdAt": "2024-01-17T00:00:00Z",
580
- "updatedAt": "2024-01-17T00:00:00Z",
581
- "repoId": 1,
582
- "nodeId": "I_17",
583
- "stateReason": null,
584
- "locked": false,
585
- "authorLogin": "devops-lead",
586
- "closedAt": null,
587
- "closedBy": null,
588
- "htmlUrl": "https://github.com/devops-lead/infrastructure/issues/17",
589
- "isPullRequest": false,
590
- "reactions": {
591
- "totalCount": 0,
592
- "plusOne": 0,
593
- "minusOne": 0,
594
- "laugh": 0,
595
- "hooray": 0,
596
- "confused": 0,
597
- "heart": 0,
598
- "rocket": 0,
599
- "eyes": 0
600
- }
601
- },
602
- {
603
- "id": 18,
604
- "number": 18,
605
- "title": "Docker image builds failing due to npm registry timeout",
606
- "body": "Intermittent npm registry timeouts during Docker builds are causing CI failures.",
607
- "state": "open",
608
- "labels": [
609
- "bug"
610
- ],
611
- "assignees": [],
612
- "milestone": null,
613
- "createdAt": "2024-01-18T00:00:00Z",
614
- "updatedAt": "2024-01-18T00:00:00Z",
615
- "repoId": 1,
616
- "nodeId": "I_18",
617
- "stateReason": null,
618
- "locked": false,
619
- "authorLogin": "devops-lead",
620
- "closedAt": null,
621
- "closedBy": null,
622
- "htmlUrl": "https://github.com/devops-lead/infrastructure/issues/18",
623
- "isPullRequest": false,
624
- "reactions": {
625
- "totalCount": 0,
626
- "plusOne": 0,
627
- "minusOne": 0,
628
- "laugh": 0,
629
- "hooray": 0,
630
- "confused": 0,
631
- "heart": 0,
632
- "rocket": 0,
633
- "eyes": 0
634
- }
635
- },
636
- {
637
- "id": 19,
638
- "number": 19,
639
- "title": "Implement blue-green deployment strategy for production",
640
- "body": "Replace rolling deployments with blue-green strategy to enable instant rollback capabilities.",
641
- "state": "open",
642
- "labels": [
643
- "enhancement"
644
- ],
645
- "assignees": [],
646
- "milestone": null,
647
- "createdAt": "2024-01-19T00:00:00Z",
648
- "updatedAt": "2024-01-19T00:00:00Z",
649
- "repoId": 1,
650
- "nodeId": "I_19",
651
- "stateReason": null,
652
- "locked": false,
653
- "authorLogin": "devops-lead",
654
- "closedAt": null,
655
- "closedBy": null,
656
- "htmlUrl": "https://github.com/devops-lead/infrastructure/issues/19",
657
- "isPullRequest": false,
658
- "reactions": {
659
- "totalCount": 0,
660
- "plusOne": 0,
661
- "minusOne": 0,
662
- "laugh": 0,
663
- "hooray": 0,
664
- "confused": 0,
665
- "heart": 0,
666
- "rocket": 0,
667
- "eyes": 0
668
- }
669
- },
670
- {
671
- "id": 20,
672
- "number": 20,
673
- "title": "Fix Terraform state lock contention issue",
674
- "body": "Resolved DynamoDB state locking issue that was causing terraform apply to hang.",
675
- "state": "closed",
676
- "labels": [
677
- "bug"
678
- ],
679
- "assignees": [],
680
- "milestone": null,
681
- "createdAt": "2024-01-20T00:00:00Z",
682
- "updatedAt": "2024-01-21T00:00:00Z",
683
- "repoId": 1,
684
- "nodeId": "I_20",
685
- "stateReason": "completed",
686
- "locked": false,
687
- "authorLogin": "devops-lead",
688
- "closedAt": "2024-01-21T00:00:00Z",
689
- "closedBy": "devops-lead",
690
- "htmlUrl": "https://github.com/devops-lead/infrastructure/issues/20",
691
- "isPullRequest": false,
692
- "reactions": {
693
- "totalCount": 0,
694
- "plusOne": 0,
695
- "minusOne": 0,
696
- "laugh": 0,
697
- "hooray": 0,
698
- "confused": 0,
699
- "heart": 0,
700
- "rocket": 0,
701
- "eyes": 0
702
- }
703
- },
704
- {
705
- "id": 21,
706
- "number": 21,
707
- "title": "Set up cross-region disaster recovery for RDS",
708
- "body": "Configure cross-region read replicas and automated failover for the primary RDS cluster.",
709
- "state": "open",
710
- "labels": [
711
- "P1"
712
- ],
713
- "assignees": [],
714
- "milestone": null,
715
- "createdAt": "2024-01-21T00:00:00Z",
716
- "updatedAt": "2024-01-21T00:00:00Z",
717
- "repoId": 1,
718
- "nodeId": "I_21",
719
- "stateReason": null,
720
- "locked": false,
721
- "authorLogin": "devops-lead",
722
- "closedAt": null,
723
- "closedBy": null,
724
- "htmlUrl": "https://github.com/devops-lead/infrastructure/issues/21",
725
- "isPullRequest": false,
726
- "reactions": {
727
- "totalCount": 0,
728
- "plusOne": 0,
729
- "minusOne": 0,
730
- "laugh": 0,
731
- "hooray": 0,
732
- "confused": 0,
733
- "heart": 0,
734
- "rocket": 0,
735
- "eyes": 0
736
- }
737
- },
738
- {
739
- "id": 22,
740
- "number": 22,
741
- "title": "EKS cluster upgrade from 1.27 to 1.28",
742
- "body": "Plan and execute the Kubernetes version upgrade for the production EKS cluster.",
743
- "state": "open",
744
- "labels": [
745
- "P2"
746
- ],
747
- "assignees": [],
748
- "milestone": null,
749
- "createdAt": "2024-01-22T00:00:00Z",
750
- "updatedAt": "2024-01-22T00:00:00Z",
751
- "repoId": 1,
752
- "nodeId": "I_22",
753
- "stateReason": null,
754
- "locked": false,
755
- "authorLogin": "devops-lead",
756
- "closedAt": null,
757
- "closedBy": null,
758
- "htmlUrl": "https://github.com/devops-lead/infrastructure/issues/22",
759
- "isPullRequest": false,
760
- "reactions": {
761
- "totalCount": 0,
762
- "plusOne": 0,
763
- "minusOne": 0,
764
- "laugh": 0,
765
- "hooray": 0,
766
- "confused": 0,
767
- "heart": 0,
768
- "rocket": 0,
769
- "eyes": 0
770
- }
771
- },
772
- {
773
- "id": 23,
774
- "number": 23,
775
- "title": "Implement network policies for pod-to-pod communication",
776
- "body": "Restrict inter-pod communication using Kubernetes NetworkPolicy resources.",
777
- "state": "open",
778
- "labels": [
779
- "enhancement"
780
- ],
781
- "assignees": [],
782
- "milestone": null,
783
- "createdAt": "2024-01-23T00:00:00Z",
784
- "updatedAt": "2024-01-23T00:00:00Z",
785
- "repoId": 1,
786
- "nodeId": "I_23",
787
- "stateReason": null,
788
- "locked": false,
789
- "authorLogin": "devops-lead",
790
- "closedAt": null,
791
- "closedBy": null,
792
- "htmlUrl": "https://github.com/devops-lead/infrastructure/issues/23",
793
- "isPullRequest": false,
794
- "reactions": {
795
- "totalCount": 0,
796
- "plusOne": 0,
797
- "minusOne": 0,
798
- "laugh": 0,
799
- "hooray": 0,
800
- "confused": 0,
801
- "heart": 0,
802
- "rocket": 0,
803
- "eyes": 0
804
- }
805
- },
806
- {
807
- "id": 24,
808
- "number": 24,
809
- "title": "CloudTrail logs not being delivered to S3",
810
- "body": "CloudTrail log delivery to the central audit S3 bucket has stopped for the past 48 hours.",
811
- "state": "open",
812
- "labels": [
813
- "bug"
814
- ],
815
- "assignees": [],
816
- "milestone": null,
817
- "createdAt": "2024-01-24T00:00:00Z",
818
- "updatedAt": "2024-01-24T00:00:00Z",
819
- "repoId": 1,
820
- "nodeId": "I_24",
821
- "stateReason": null,
822
- "locked": false,
823
- "authorLogin": "devops-lead",
824
- "closedAt": null,
825
- "closedBy": null,
826
- "htmlUrl": "https://github.com/devops-lead/infrastructure/issues/24",
827
- "isPullRequest": false,
828
- "reactions": {
829
- "totalCount": 0,
830
- "plusOne": 0,
831
- "minusOne": 0,
832
- "laugh": 0,
833
- "hooray": 0,
834
- "confused": 0,
835
- "heart": 0,
836
- "rocket": 0,
837
- "eyes": 0
838
- }
839
- },
840
- {
841
- "id": 25,
842
- "number": 25,
843
- "title": "Patch NAT Gateway throughput bottleneck",
844
- "body": "Resolved NAT Gateway saturation by provisioning additional gateways across AZs.",
845
- "state": "closed",
846
- "labels": [
847
- "P1"
848
- ],
849
- "assignees": [],
850
- "milestone": null,
851
- "createdAt": "2024-01-25T00:00:00Z",
852
- "updatedAt": "2024-01-26T00:00:00Z",
853
- "repoId": 1,
854
- "nodeId": "I_25",
855
- "stateReason": "completed",
856
- "locked": false,
857
- "authorLogin": "devops-lead",
858
- "closedAt": "2024-01-26T00:00:00Z",
859
- "closedBy": "devops-lead",
860
- "htmlUrl": "https://github.com/devops-lead/infrastructure/issues/25",
861
- "isPullRequest": false,
862
- "reactions": {
863
- "totalCount": 0,
864
- "plusOne": 0,
865
- "minusOne": 0,
866
- "laugh": 0,
867
- "hooray": 0,
868
- "confused": 0,
869
- "heart": 0,
870
- "rocket": 0,
871
- "eyes": 0
872
- }
873
- },
874
- {
875
- "id": 26,
876
- "number": 26,
877
- "title": "Add Grafana dashboards for Kubernetes cluster monitoring",
878
- "body": "Create comprehensive Grafana dashboards for node health, pod metrics, and resource utilization.",
879
- "state": "open",
880
- "labels": [
881
- "enhancement"
882
- ],
883
- "assignees": [],
884
- "milestone": null,
885
- "createdAt": "2024-01-26T00:00:00Z",
886
- "updatedAt": "2024-01-26T00:00:00Z",
887
- "repoId": 1,
888
- "nodeId": "I_26",
889
- "stateReason": null,
890
- "locked": false,
891
- "authorLogin": "devops-lead",
892
- "closedAt": null,
893
- "closedBy": null,
894
- "htmlUrl": "https://github.com/devops-lead/infrastructure/issues/26",
895
- "isPullRequest": false,
896
- "reactions": {
897
- "totalCount": 0,
898
- "plusOne": 0,
899
- "minusOne": 0,
900
- "laugh": 0,
901
- "hooray": 0,
902
- "confused": 0,
903
- "heart": 0,
904
- "rocket": 0,
905
- "eyes": 0
906
- }
907
- },
908
- {
909
- "id": 27,
910
- "number": 27,
911
- "title": "Implement secrets rotation for database credentials",
912
- "body": "Use AWS Secrets Manager to automatically rotate RDS database credentials every 30 days.",
913
- "state": "open",
914
- "labels": [
915
- "P1"
916
- ],
917
- "assignees": [],
918
- "milestone": null,
919
- "createdAt": "2024-01-27T00:00:00Z",
920
- "updatedAt": "2024-01-27T00:00:00Z",
921
- "repoId": 1,
922
- "nodeId": "I_27",
923
- "stateReason": null,
924
- "locked": false,
925
- "authorLogin": "devops-lead",
926
- "closedAt": null,
927
- "closedBy": null,
928
- "htmlUrl": "https://github.com/devops-lead/infrastructure/issues/27",
929
- "isPullRequest": false,
930
- "reactions": {
931
- "totalCount": 0,
932
- "plusOne": 0,
933
- "minusOne": 0,
934
- "laugh": 0,
935
- "hooray": 0,
936
- "confused": 0,
937
- "heart": 0,
938
- "rocket": 0,
939
- "eyes": 0
940
- }
941
- },
942
- {
943
- "id": 28,
944
- "number": 28,
945
- "title": "Load balancer health checks returning false positives",
946
- "body": "ALB target group health checks are passing for unhealthy instances, routing traffic to degraded nodes. Critical reliability issue.",
947
- "state": "open",
948
- "labels": [
949
- "P0"
950
- ],
951
- "assignees": [],
952
- "milestone": null,
953
- "createdAt": "2024-01-28T00:00:00Z",
954
- "updatedAt": "2024-01-28T00:00:00Z",
955
- "repoId": 1,
956
- "nodeId": "I_28",
957
- "stateReason": null,
958
- "locked": false,
959
- "authorLogin": "devops-lead",
960
- "closedAt": null,
961
- "closedBy": null,
962
- "htmlUrl": "https://github.com/devops-lead/infrastructure/issues/28",
963
- "isPullRequest": false,
964
- "reactions": {
965
- "totalCount": 0,
966
- "plusOne": 0,
967
- "minusOne": 0,
968
- "laugh": 0,
969
- "hooray": 0,
970
- "confused": 0,
971
- "heart": 0,
972
- "rocket": 0,
973
- "eyes": 0
974
- }
975
- },
976
- {
977
- "id": 29,
978
- "number": 29,
979
- "title": "Optimize S3 lifecycle policies for cost reduction",
980
- "body": "Implement intelligent tiering and lifecycle rules to move infrequently accessed objects to cheaper storage classes.",
981
- "state": "open",
982
- "labels": [
983
- "P2"
984
- ],
985
- "assignees": [],
986
- "milestone": null,
987
- "createdAt": "2024-01-29T00:00:00Z",
988
- "updatedAt": "2024-01-29T00:00:00Z",
989
- "repoId": 1,
990
- "nodeId": "I_29",
991
- "stateReason": null,
992
- "locked": false,
993
- "authorLogin": "devops-lead",
994
- "closedAt": null,
995
- "closedBy": null,
996
- "htmlUrl": "https://github.com/devops-lead/infrastructure/issues/29",
997
- "isPullRequest": false,
998
- "reactions": {
999
- "totalCount": 0,
1000
- "plusOne": 0,
1001
- "minusOne": 0,
1002
- "laugh": 0,
1003
- "hooray": 0,
1004
- "confused": 0,
1005
- "heart": 0,
1006
- "rocket": 0,
1007
- "eyes": 0
1008
- }
1009
- },
1010
- {
1011
- "id": 30,
1012
- "number": 30,
1013
- "title": "Configure AWS Config rules for compliance checking",
1014
- "body": "Set up AWS Config managed rules to enforce tagging standards and security baselines.",
1015
- "state": "open",
1016
- "labels": [
1017
- "enhancement"
1018
- ],
1019
- "assignees": [],
1020
- "milestone": null,
1021
- "createdAt": "2024-01-30T00:00:00Z",
1022
- "updatedAt": "2024-01-30T00:00:00Z",
1023
- "repoId": 1,
1024
- "nodeId": "I_30",
1025
- "stateReason": null,
1026
- "locked": false,
1027
- "authorLogin": "devops-lead",
1028
- "closedAt": null,
1029
- "closedBy": null,
1030
- "htmlUrl": "https://github.com/devops-lead/infrastructure/issues/30",
1031
- "isPullRequest": false,
1032
- "reactions": {
1033
- "totalCount": 0,
1034
- "plusOne": 0,
1035
- "minusOne": 0,
1036
- "laugh": 0,
1037
- "hooray": 0,
1038
- "confused": 0,
1039
- "heart": 0,
1040
- "rocket": 0,
1041
- "eyes": 0
1042
- }
1043
- },
1044
- {
1045
- "id": 31,
1046
- "number": 31,
1047
- "title": "Helm chart values not propagating to staging environment",
1048
- "body": "The Helm values override for staging is being ignored during ArgoCD sync operations.",
1049
- "state": "open",
1050
- "labels": [
1051
- "bug"
1052
- ],
1053
- "assignees": [],
1054
- "milestone": null,
1055
- "createdAt": "2024-01-31T00:00:00Z",
1056
- "updatedAt": "2024-01-31T00:00:00Z",
1057
- "repoId": 1,
1058
- "nodeId": "I_31",
1059
- "stateReason": null,
1060
- "locked": false,
1061
- "authorLogin": "devops-lead",
1062
- "closedAt": null,
1063
- "closedBy": null,
1064
- "htmlUrl": "https://github.com/devops-lead/infrastructure/issues/31",
1065
- "isPullRequest": false,
1066
- "reactions": {
1067
- "totalCount": 0,
1068
- "plusOne": 0,
1069
- "minusOne": 0,
1070
- "laugh": 0,
1071
- "hooray": 0,
1072
- "confused": 0,
1073
- "heart": 0,
1074
- "rocket": 0,
1075
- "eyes": 0
1076
- }
1077
- },
1078
- {
1079
- "id": 32,
1080
- "number": 32,
1081
- "title": "Set up VPN tunnel to on-premises data center",
1082
- "body": "Establish a site-to-site VPN connection between AWS VPC and the on-premises data center.",
1083
- "state": "open",
1084
- "labels": [
1085
- "P1"
1086
- ],
1087
- "assignees": [],
1088
- "milestone": null,
1089
- "createdAt": "2024-02-01T00:00:00Z",
1090
- "updatedAt": "2024-02-01T00:00:00Z",
1091
- "repoId": 1,
1092
- "nodeId": "I_32",
1093
- "stateReason": null,
1094
- "locked": false,
1095
- "authorLogin": "devops-lead",
1096
- "closedAt": null,
1097
- "closedBy": null,
1098
- "htmlUrl": "https://github.com/devops-lead/infrastructure/issues/32",
1099
- "isPullRequest": false,
1100
- "reactions": {
1101
- "totalCount": 0,
1102
- "plusOne": 0,
1103
- "minusOne": 0,
1104
- "laugh": 0,
1105
- "hooray": 0,
1106
- "confused": 0,
1107
- "heart": 0,
1108
- "rocket": 0,
1109
- "eyes": 0
1110
- }
1111
- },
1112
- {
1113
- "id": 33,
1114
- "number": 33,
1115
- "title": "Implement pod disruption budgets for critical services",
1116
- "body": "Add PodDisruptionBudgets to ensure minimum availability during node drains and cluster upgrades.",
1117
- "state": "open",
1118
- "labels": [
1119
- "P2"
1120
- ],
1121
- "assignees": [],
1122
- "milestone": null,
1123
- "createdAt": "2024-02-02T00:00:00Z",
1124
- "updatedAt": "2024-02-02T00:00:00Z",
1125
- "repoId": 1,
1126
- "nodeId": "I_33",
1127
- "stateReason": null,
1128
- "locked": false,
1129
- "authorLogin": "devops-lead",
1130
- "closedAt": null,
1131
- "closedBy": null,
1132
- "htmlUrl": "https://github.com/devops-lead/infrastructure/issues/33",
1133
- "isPullRequest": false,
1134
- "reactions": {
1135
- "totalCount": 0,
1136
- "plusOne": 0,
1137
- "minusOne": 0,
1138
- "laugh": 0,
1139
- "hooray": 0,
1140
- "confused": 0,
1141
- "heart": 0,
1142
- "rocket": 0,
1143
- "eyes": 0
1144
- }
1145
- },
1146
- {
1147
- "id": 34,
1148
- "number": 34,
1149
- "title": "Terraform plan showing unexpected resource drift",
1150
- "body": "Manual changes made outside of Terraform are causing plan diffs on multiple resources.",
1151
- "state": "open",
1152
- "labels": [
1153
- "bug"
1154
- ],
1155
- "assignees": [],
1156
- "milestone": null,
1157
- "createdAt": "2024-02-03T00:00:00Z",
1158
- "updatedAt": "2024-02-03T00:00:00Z",
1159
- "repoId": 1,
1160
- "nodeId": "I_34",
1161
- "stateReason": null,
1162
- "locked": false,
1163
- "authorLogin": "devops-lead",
1164
- "closedAt": null,
1165
- "closedBy": null,
1166
- "htmlUrl": "https://github.com/devops-lead/infrastructure/issues/34",
1167
- "isPullRequest": false,
1168
- "reactions": {
1169
- "totalCount": 0,
1170
- "plusOne": 0,
1171
- "minusOne": 0,
1172
- "laugh": 0,
1173
- "hooray": 0,
1174
- "confused": 0,
1175
- "heart": 0,
1176
- "rocket": 0,
1177
- "eyes": 0
1178
- }
1179
- },
1180
- {
1181
- "id": 35,
1182
- "number": 35,
1183
- "title": "Add WAF rules for API Gateway endpoints",
1184
- "body": "Configure AWS WAF with rate limiting and SQL injection protection for all public API Gateway endpoints.",
1185
- "state": "open",
1186
- "labels": [
1187
- "enhancement"
1188
- ],
1189
- "assignees": [],
1190
- "milestone": null,
1191
- "createdAt": "2024-02-04T00:00:00Z",
1192
- "updatedAt": "2024-02-04T00:00:00Z",
1193
- "repoId": 1,
1194
- "nodeId": "I_35",
1195
- "stateReason": null,
1196
- "locked": false,
1197
- "authorLogin": "devops-lead",
1198
- "closedAt": null,
1199
- "closedBy": null,
1200
- "htmlUrl": "https://github.com/devops-lead/infrastructure/issues/35",
1201
- "isPullRequest": false,
1202
- "reactions": {
1203
- "totalCount": 0,
1204
- "plusOne": 0,
1205
- "minusOne": 0,
1206
- "laugh": 0,
1207
- "hooray": 0,
1208
- "confused": 0,
1209
- "heart": 0,
1210
- "rocket": 0,
1211
- "eyes": 0
1212
- }
1213
- },
1214
- {
1215
- "id": 36,
1216
- "number": 36,
1217
- "title": "Container image vulnerability scanning in CI pipeline",
1218
- "body": "Integrate Trivy or Snyk container scanning into the CI pipeline to catch CVEs before deployment.",
1219
- "state": "open",
1220
- "labels": [
1221
- "P1"
1222
- ],
1223
- "assignees": [],
1224
- "milestone": null,
1225
- "createdAt": "2024-02-05T00:00:00Z",
1226
- "updatedAt": "2024-02-05T00:00:00Z",
1227
- "repoId": 1,
1228
- "nodeId": "I_36",
1229
- "stateReason": null,
1230
- "locked": false,
1231
- "authorLogin": "devops-lead",
1232
- "closedAt": null,
1233
- "closedBy": null,
1234
- "htmlUrl": "https://github.com/devops-lead/infrastructure/issues/36",
1235
- "isPullRequest": false,
1236
- "reactions": {
1237
- "totalCount": 0,
1238
- "plusOne": 0,
1239
- "minusOne": 0,
1240
- "laugh": 0,
1241
- "hooray": 0,
1242
- "confused": 0,
1243
- "heart": 0,
1244
- "rocket": 0,
1245
- "eyes": 0
1246
- }
1247
- },
1248
- {
1249
- "id": 37,
1250
- "number": 37,
1251
- "title": "Kubernetes cluster autoscaler not scaling down idle nodes",
1252
- "body": "The cluster autoscaler is provisioning new nodes under load but failing to scale down when demand drops. Wasting significant compute costs.",
1253
- "state": "open",
1254
- "labels": [
1255
- "P0"
1256
- ],
1257
- "assignees": [],
1258
- "milestone": null,
1259
- "createdAt": "2024-02-06T00:00:00Z",
1260
- "updatedAt": "2024-02-06T00:00:00Z",
1261
- "repoId": 1,
1262
- "nodeId": "I_37",
1263
- "stateReason": null,
1264
- "locked": false,
1265
- "authorLogin": "devops-lead",
1266
- "closedAt": null,
1267
- "closedBy": null,
1268
- "htmlUrl": "https://github.com/devops-lead/infrastructure/issues/37",
1269
- "isPullRequest": false,
1270
- "reactions": {
1271
- "totalCount": 0,
1272
- "plusOne": 0,
1273
- "minusOne": 0,
1274
- "laugh": 0,
1275
- "hooray": 0,
1276
- "confused": 0,
1277
- "heart": 0,
1278
- "rocket": 0,
1279
- "eyes": 0
1280
- }
1281
- },
1282
- {
1283
- "id": 38,
1284
- "number": 38,
1285
- "title": "Implement GitOps workflow with ArgoCD",
1286
- "body": "Migrate from push-based deployments to a GitOps pull-based model using ArgoCD.",
1287
- "state": "open",
1288
- "labels": [
1289
- "enhancement"
1290
- ],
1291
- "assignees": [],
1292
- "milestone": null,
1293
- "createdAt": "2024-02-07T00:00:00Z",
1294
- "updatedAt": "2024-02-07T00:00:00Z",
1295
- "repoId": 1,
1296
- "nodeId": "I_38",
1297
- "stateReason": null,
1298
- "locked": false,
1299
- "authorLogin": "devops-lead",
1300
- "closedAt": null,
1301
- "closedBy": null,
1302
- "htmlUrl": "https://github.com/devops-lead/infrastructure/issues/38",
1303
- "isPullRequest": false,
1304
- "reactions": {
1305
- "totalCount": 0,
1306
- "plusOne": 0,
1307
- "minusOne": 0,
1308
- "laugh": 0,
1309
- "hooray": 0,
1310
- "confused": 0,
1311
- "heart": 0,
1312
- "rocket": 0,
1313
- "eyes": 0
1314
- }
1315
- },
1316
- {
1317
- "id": 39,
1318
- "number": 39,
1319
- "title": "RDS automated backups retention period too short",
1320
- "body": "The current 7-day backup retention does not meet the 30-day compliance requirement.",
1321
- "state": "open",
1322
- "labels": [
1323
- "P2"
1324
- ],
1325
- "assignees": [],
1326
- "milestone": null,
1327
- "createdAt": "2024-02-08T00:00:00Z",
1328
- "updatedAt": "2024-02-08T00:00:00Z",
1329
- "repoId": 1,
1330
- "nodeId": "I_39",
1331
- "stateReason": null,
1332
- "locked": false,
1333
- "authorLogin": "devops-lead",
1334
- "closedAt": null,
1335
- "closedBy": null,
1336
- "htmlUrl": "https://github.com/devops-lead/infrastructure/issues/39",
1337
- "isPullRequest": false,
1338
- "reactions": {
1339
- "totalCount": 0,
1340
- "plusOne": 0,
1341
- "minusOne": 0,
1342
- "laugh": 0,
1343
- "hooray": 0,
1344
- "confused": 0,
1345
- "heart": 0,
1346
- "rocket": 0,
1347
- "eyes": 0
1348
- }
1349
- },
1350
- {
1351
- "id": 40,
1352
- "number": 40,
1353
- "title": "Service mesh implementation with Istio",
1354
- "body": "Deploy Istio service mesh for mTLS, traffic management, and observability across microservices.",
1355
- "state": "open",
1356
- "labels": [
1357
- "enhancement"
1358
- ],
1359
- "assignees": [],
1360
- "milestone": null,
1361
- "createdAt": "2024-02-09T00:00:00Z",
1362
- "updatedAt": "2024-02-09T00:00:00Z",
1363
- "repoId": 1,
1364
- "nodeId": "I_40",
1365
- "stateReason": null,
1366
- "locked": false,
1367
- "authorLogin": "devops-lead",
1368
- "closedAt": null,
1369
- "closedBy": null,
1370
- "htmlUrl": "https://github.com/devops-lead/infrastructure/issues/40",
1371
- "isPullRequest": false,
1372
- "reactions": {
1373
- "totalCount": 0,
1374
- "plusOne": 0,
1375
- "minusOne": 0,
1376
- "laugh": 0,
1377
- "hooray": 0,
1378
- "confused": 0,
1379
- "heart": 0,
1380
- "rocket": 0,
1381
- "eyes": 0
1382
- }
1383
- },
1384
- {
1385
- "id": 41,
1386
- "number": 41,
1387
- "title": "Lambda function cold start latency exceeding SLA",
1388
- "body": "Several Lambda functions in the API path have cold start times over 3 seconds, breaching the 2-second SLA.",
1389
- "state": "open",
1390
- "labels": [
1391
- "bug"
1392
- ],
1393
- "assignees": [],
1394
- "milestone": null,
1395
- "createdAt": "2024-02-10T00:00:00Z",
1396
- "updatedAt": "2024-02-10T00:00:00Z",
1397
- "repoId": 1,
1398
- "nodeId": "I_41",
1399
- "stateReason": null,
1400
- "locked": false,
1401
- "authorLogin": "devops-lead",
1402
- "closedAt": null,
1403
- "closedBy": null,
1404
- "htmlUrl": "https://github.com/devops-lead/infrastructure/issues/41",
1405
- "isPullRequest": false,
1406
- "reactions": {
1407
- "totalCount": 0,
1408
- "plusOne": 0,
1409
- "minusOne": 0,
1410
- "laugh": 0,
1411
- "hooray": 0,
1412
- "confused": 0,
1413
- "heart": 0,
1414
- "rocket": 0,
1415
- "eyes": 0
1416
- }
1417
- },
1418
- {
1419
- "id": 42,
1420
- "number": 42,
1421
- "title": "Implement cost allocation tags across all resources",
1422
- "body": "Enforce mandatory cost allocation tags (team, environment, project) on all AWS resources.",
1423
- "state": "open",
1424
- "labels": [
1425
- "P2"
1426
- ],
1427
- "assignees": [],
1428
- "milestone": null,
1429
- "createdAt": "2024-02-11T00:00:00Z",
1430
- "updatedAt": "2024-02-11T00:00:00Z",
1431
- "repoId": 1,
1432
- "nodeId": "I_42",
1433
- "stateReason": null,
1434
- "locked": false,
1435
- "authorLogin": "devops-lead",
1436
- "closedAt": null,
1437
- "closedBy": null,
1438
- "htmlUrl": "https://github.com/devops-lead/infrastructure/issues/42",
1439
- "isPullRequest": false,
1440
- "reactions": {
1441
- "totalCount": 0,
1442
- "plusOne": 0,
1443
- "minusOne": 0,
1444
- "laugh": 0,
1445
- "hooray": 0,
1446
- "confused": 0,
1447
- "heart": 0,
1448
- "rocket": 0,
1449
- "eyes": 0
1450
- }
1451
- },
1452
- {
1453
- "id": 43,
1454
- "number": 43,
1455
- "title": "Configure PagerDuty integration for critical alerts",
1456
- "body": "Route P0 and P1 CloudWatch alarms to PagerDuty for on-call notification.",
1457
- "state": "open",
1458
- "labels": [
1459
- "P1"
1460
- ],
1461
- "assignees": [],
1462
- "milestone": null,
1463
- "createdAt": "2024-02-12T00:00:00Z",
1464
- "updatedAt": "2024-02-12T00:00:00Z",
1465
- "repoId": 1,
1466
- "nodeId": "I_43",
1467
- "stateReason": null,
1468
- "locked": false,
1469
- "authorLogin": "devops-lead",
1470
- "closedAt": null,
1471
- "closedBy": null,
1472
- "htmlUrl": "https://github.com/devops-lead/infrastructure/issues/43",
1473
- "isPullRequest": false,
1474
- "reactions": {
1475
- "totalCount": 0,
1476
- "plusOne": 0,
1477
- "minusOne": 0,
1478
- "laugh": 0,
1479
- "hooray": 0,
1480
- "confused": 0,
1481
- "heart": 0,
1482
- "rocket": 0,
1483
- "eyes": 0
1484
- }
1485
- },
1486
- {
1487
- "id": 44,
1488
- "number": 44,
1489
- "title": "EBS volumes not encrypted in dev account",
1490
- "body": "Multiple EBS volumes in the development account were created without encryption enabled.",
1491
- "state": "open",
1492
- "labels": [
1493
- "bug"
1494
- ],
1495
- "assignees": [],
1496
- "milestone": null,
1497
- "createdAt": "2024-02-13T00:00:00Z",
1498
- "updatedAt": "2024-02-13T00:00:00Z",
1499
- "repoId": 1,
1500
- "nodeId": "I_44",
1501
- "stateReason": null,
1502
- "locked": false,
1503
- "authorLogin": "devops-lead",
1504
- "closedAt": null,
1505
- "closedBy": null,
1506
- "htmlUrl": "https://github.com/devops-lead/infrastructure/issues/44",
1507
- "isPullRequest": false,
1508
- "reactions": {
1509
- "totalCount": 0,
1510
- "plusOne": 0,
1511
- "minusOne": 0,
1512
- "laugh": 0,
1513
- "hooray": 0,
1514
- "confused": 0,
1515
- "heart": 0,
1516
- "rocket": 0,
1517
- "eyes": 0
1518
- }
1519
- },
1520
- {
1521
- "id": 45,
1522
- "number": 45,
1523
- "title": "Production Kafka cluster broker rebalancing failure",
1524
- "body": "Kafka partition reassignment is stuck, causing uneven load distribution and consumer lag spikes across the production cluster.",
1525
- "state": "open",
1526
- "labels": [
1527
- "P0"
1528
- ],
1529
- "assignees": [],
1530
- "milestone": null,
1531
- "createdAt": "2024-02-14T00:00:00Z",
1532
- "updatedAt": "2024-02-14T00:00:00Z",
1533
- "repoId": 1,
1534
- "nodeId": "I_45",
1535
- "stateReason": null,
1536
- "locked": false,
1537
- "authorLogin": "devops-lead",
1538
- "closedAt": null,
1539
- "closedBy": null,
1540
- "htmlUrl": "https://github.com/devops-lead/infrastructure/issues/45",
1541
- "isPullRequest": false,
1542
- "reactions": {
1543
- "totalCount": 0,
1544
- "plusOne": 0,
1545
- "minusOne": 0,
1546
- "laugh": 0,
1547
- "hooray": 0,
1548
- "confused": 0,
1549
- "heart": 0,
1550
- "rocket": 0,
1551
- "eyes": 0
1552
- }
1553
- },
1554
- {
1555
- "id": 46,
1556
- "number": 46,
1557
- "title": "Set up AWS Organization with multi-account strategy",
1558
- "body": "Create an AWS Organization structure with separate accounts for dev, staging, production, and shared services.",
1559
- "state": "open",
1560
- "labels": [
1561
- "enhancement"
1562
- ],
1563
- "assignees": [],
1564
- "milestone": null,
1565
- "createdAt": "2024-02-15T00:00:00Z",
1566
- "updatedAt": "2024-02-15T00:00:00Z",
1567
- "repoId": 1,
1568
- "nodeId": "I_46",
1569
- "stateReason": null,
1570
- "locked": false,
1571
- "authorLogin": "devops-lead",
1572
- "closedAt": null,
1573
- "closedBy": null,
1574
- "htmlUrl": "https://github.com/devops-lead/infrastructure/issues/46",
1575
- "isPullRequest": false,
1576
- "reactions": {
1577
- "totalCount": 0,
1578
- "plusOne": 0,
1579
- "minusOne": 0,
1580
- "laugh": 0,
1581
- "hooray": 0,
1582
- "confused": 0,
1583
- "heart": 0,
1584
- "rocket": 0,
1585
- "eyes": 0
1586
- }
1587
- },
1588
- {
1589
- "id": 47,
1590
- "number": 47,
1591
- "title": "Ingress controller returning 502 errors under load",
1592
- "body": "The NGINX ingress controller is returning 502 Bad Gateway errors when request rate exceeds 500 rps.",
1593
- "state": "open",
1594
- "labels": [
1595
- "bug"
1596
- ],
1597
- "assignees": [],
1598
- "milestone": null,
1599
- "createdAt": "2024-02-16T00:00:00Z",
1600
- "updatedAt": "2024-02-16T00:00:00Z",
1601
- "repoId": 1,
1602
- "nodeId": "I_47",
1603
- "stateReason": null,
1604
- "locked": false,
1605
- "authorLogin": "devops-lead",
1606
- "closedAt": null,
1607
- "closedBy": null,
1608
- "htmlUrl": "https://github.com/devops-lead/infrastructure/issues/47",
1609
- "isPullRequest": false,
1610
- "reactions": {
1611
- "totalCount": 0,
1612
- "plusOne": 0,
1613
- "minusOne": 0,
1614
- "laugh": 0,
1615
- "hooray": 0,
1616
- "confused": 0,
1617
- "heart": 0,
1618
- "rocket": 0,
1619
- "eyes": 0
1620
- }
1621
- },
1622
- {
1623
- "id": 48,
1624
- "number": 48,
1625
- "title": "Implement infrastructure cost anomaly detection",
1626
- "body": "Set up AWS Cost Anomaly Detection to alert on unexpected spending spikes across all accounts.",
1627
- "state": "open",
1628
- "labels": [
1629
- "P2"
1630
- ],
1631
- "assignees": [],
1632
- "milestone": null,
1633
- "createdAt": "2024-02-17T00:00:00Z",
1634
- "updatedAt": "2024-02-17T00:00:00Z",
1635
- "repoId": 1,
1636
- "nodeId": "I_48",
1637
- "stateReason": null,
1638
- "locked": false,
1639
- "authorLogin": "devops-lead",
1640
- "closedAt": null,
1641
- "closedBy": null,
1642
- "htmlUrl": "https://github.com/devops-lead/infrastructure/issues/48",
1643
- "isPullRequest": false,
1644
- "reactions": {
1645
- "totalCount": 0,
1646
- "plusOne": 0,
1647
- "minusOne": 0,
1648
- "laugh": 0,
1649
- "hooray": 0,
1650
- "confused": 0,
1651
- "heart": 0,
1652
- "rocket": 0,
1653
- "eyes": 0
1654
- }
1655
- },
1656
- {
1657
- "id": 49,
1658
- "number": 49,
1659
- "title": "Migrate CI/CD from Jenkins to GitHub Actions",
1660
- "body": "Replace the legacy Jenkins server with GitHub Actions workflows for all build and deployment pipelines.",
1661
- "state": "open",
1662
- "labels": [
1663
- "P1"
1664
- ],
1665
- "assignees": [],
1666
- "milestone": null,
1667
- "createdAt": "2024-02-18T00:00:00Z",
1668
- "updatedAt": "2024-02-18T00:00:00Z",
1669
- "repoId": 1,
1670
- "nodeId": "I_49",
1671
- "stateReason": null,
1672
- "locked": false,
1673
- "authorLogin": "devops-lead",
1674
- "closedAt": null,
1675
- "closedBy": null,
1676
- "htmlUrl": "https://github.com/devops-lead/infrastructure/issues/49",
1677
- "isPullRequest": false,
1678
- "reactions": {
1679
- "totalCount": 0,
1680
- "plusOne": 0,
1681
- "minusOne": 0,
1682
- "laugh": 0,
1683
- "hooray": 0,
1684
- "confused": 0,
1685
- "heart": 0,
1686
- "rocket": 0,
1687
- "eyes": 0
1688
- }
1689
- },
1690
- {
1691
- "id": 50,
1692
- "number": 50,
1693
- "title": "Terraform provider version pinning inconsistencies",
1694
- "body": "Several modules have unpinned or loosely pinned provider versions leading to unexpected behavior on apply.",
1695
- "state": "open",
1696
- "labels": [
1697
- "bug"
1698
- ],
1699
- "assignees": [],
1700
- "milestone": null,
1701
- "createdAt": "2024-02-19T00:00:00Z",
1702
- "updatedAt": "2024-02-19T00:00:00Z",
1703
- "repoId": 1,
1704
- "nodeId": "I_50",
1705
- "stateReason": null,
1706
- "locked": false,
1707
- "authorLogin": "devops-lead",
1708
- "closedAt": null,
1709
- "closedBy": null,
1710
- "htmlUrl": "https://github.com/devops-lead/infrastructure/issues/50",
1711
- "isPullRequest": false,
1712
- "reactions": {
1713
- "totalCount": 0,
1714
- "plusOne": 0,
1715
- "minusOne": 0,
1716
- "laugh": 0,
1717
- "hooray": 0,
1718
- "confused": 0,
1719
- "heart": 0,
1720
- "rocket": 0,
1721
- "eyes": 0
1722
- }
1723
- }
1724
- ],
1725
- "labels": [
1726
- {
1727
- "id": 3,
1728
- "name": "critical",
1729
- "color": "b60205",
1730
- "description": "Critical priority issue requiring immediate attention",
1731
- "createdAt": "2024-01-01T00:00:00Z",
1732
- "updatedAt": "2024-01-01T00:00:00Z",
1733
- "repoId": 1,
1734
- "nodeId": "LA_3",
1735
- "isDefault": false
1736
- },
1737
- {
1738
- "id": 4,
1739
- "name": "P0",
1740
- "color": "e11d48",
1741
- "description": "Highest priority - immediate action required",
1742
- "createdAt": "2024-01-01T00:00:00Z",
1743
- "updatedAt": "2024-01-01T00:00:00Z",
1744
- "repoId": 1,
1745
- "nodeId": "LA_4",
1746
- "isDefault": false
1747
- },
1748
- {
1749
- "id": 5,
1750
- "name": "P1",
1751
- "color": "f97316",
1752
- "description": "High priority - address within current sprint",
1753
- "createdAt": "2024-01-01T00:00:00Z",
1754
- "updatedAt": "2024-01-01T00:00:00Z",
1755
- "repoId": 1,
1756
- "nodeId": "LA_5",
1757
- "isDefault": false
1758
- },
1759
- {
1760
- "id": 6,
1761
- "name": "P2",
1762
- "color": "facc15",
1763
- "description": "Medium priority - plan for upcoming sprint",
1764
- "createdAt": "2024-01-01T00:00:00Z",
1765
- "updatedAt": "2024-01-01T00:00:00Z",
1766
- "repoId": 1,
1767
- "nodeId": "LA_6",
1768
- "isDefault": false
1769
- }
1770
- ],
1771
- "comments": [],
1772
- "pullRequests": [],
1773
- "branches": [],
1774
- "files": [],
1775
- "commits": [],
1776
- "reviews": [],
1777
- "workflows": [],
1778
- "workflowRuns": [],
1779
- "repos": [
1780
- {
1781
- "id": 1,
1782
- "owner": "devops-lead",
1783
- "name": "infrastructure",
1784
- "fullName": "devops-lead/infrastructure",
1785
- "description": "Infrastructure management and automation",
1786
- "private": false,
1787
- "defaultBranch": "main",
1788
- "openIssuesCount": 45,
1789
- "createdAt": "2024-01-01T00:00:00Z",
1790
- "updatedAt": "2024-01-01T00:00:00Z",
1791
- "nodeId": "R_1",
1792
- "htmlUrl": "https://github.com/devops-lead/infrastructure",
1793
- "cloneUrl": "https://github.com/devops-lead/infrastructure.git",
1794
- "sshUrl": "git@github.com:devops-lead/infrastructure.git",
1795
- "language": "HCL",
1796
- "forksCount": 0,
1797
- "stargazersCount": 2,
1798
- "watchersCount": 2,
1799
- "topics": [
1800
- "terraform",
1801
- "infrastructure"
1802
- ],
1803
- "hasIssues": true,
1804
- "hasProjects": true,
1805
- "hasWiki": true,
1806
- "hasPages": false,
1807
- "archived": false,
1808
- "disabled": false,
1809
- "visibility": "public",
1810
- "pushedAt": "2024-02-19T00:00:00Z",
1811
- "license": "MIT",
1812
- "allowMergeCommit": true,
1813
- "allowSquashMerge": true,
1814
- "allowRebaseMerge": true,
1815
- "allowAutoMerge": false,
1816
- "deleteBranchOnMerge": false,
1817
- "fork": false
1818
- }
1819
- ]
1820
- }