oh-my-agent-commandcode 0.0.0-stage → 20.38.4
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.
- package/README.md +35 -2
- package/filter-test-output.sh +52 -0
- package/mods/oma.ts +347 -0
- package/package.json +30 -4
- package/skills/_shared/conditional/experiment-ledger.md +28 -0
- package/skills/_shared/conditional/exploration-loop.md +22 -0
- package/skills/_shared/conditional/quality-score.md +33 -0
- package/skills/_shared/core/anti-ai-prose.md +191 -0
- package/skills/_shared/core/api-contracts/README.md +28 -0
- package/skills/_shared/core/api-contracts/template.md +90 -0
- package/skills/_shared/core/clarification-protocol.md +23 -0
- package/skills/_shared/core/code-intelligence.md +46 -0
- package/skills/_shared/core/collaboration-policy.md +28 -0
- package/skills/_shared/core/common-checklist.md +28 -0
- package/skills/_shared/core/context-budget.md +22 -0
- package/skills/_shared/core/context-loading.md +34 -0
- package/skills/_shared/core/difficulty-guide.md +26 -0
- package/skills/_shared/core/execution-policy.md +31 -0
- package/skills/_shared/core/lessons-learned.md +33 -0
- package/skills/_shared/core/prompt-structure.md +18 -0
- package/skills/_shared/core/quality-principles.md +11 -0
- package/skills/_shared/core/session-metrics.md +35 -0
- package/skills/_shared/core/skill-routing.md +39 -0
- package/skills/_shared/core/test-approach.md +54 -0
- package/skills/_shared/core/vendor-detection.md +52 -0
- package/skills/_shared/runtime/memory-protocol.md +118 -0
- package/skills/_shared/runtime/result-contract.md +64 -0
- package/skills/_shared/ui-interaction-quality.md +133 -0
- package/skills/oma-academic-writing/SKILL.md +181 -0
- package/skills/oma-academic-writing/resources/abstract-guide.md +51 -0
- package/skills/oma-academic-writing/resources/academic-verb-tiers.md +42 -0
- package/skills/oma-academic-writing/resources/anti-ai-checklist.md +52 -0
- package/skills/oma-academic-writing/resources/hedging-guide.md +132 -0
- package/skills/oma-academic-writing/resources/sentence-structure-reference.md +151 -0
- package/skills/oma-architecture/SKILL.md +203 -0
- package/skills/oma-architecture/resources/api-evolution.md +41 -0
- package/skills/oma-architecture/resources/checklist.md +42 -0
- package/skills/oma-architecture/resources/execution-protocol.md +115 -0
- package/skills/oma-architecture/resources/methodology-selection.md +92 -0
- package/skills/oma-architecture/resources/migration-patterns.md +28 -0
- package/skills/oma-architecture/resources/output-templates.md +111 -0
- package/skills/oma-architecture/resources/stakeholder-synthesis.md +80 -0
- package/skills/oma-backend/SKILL.md +202 -0
- package/skills/oma-backend/resources/checklist.md +45 -0
- package/skills/oma-backend/resources/error-playbook.md +97 -0
- package/skills/oma-backend/resources/execution-protocol.md +39 -0
- package/skills/oma-backend/resources/orm-reference.md +61 -0
- package/skills/oma-backend/variants/node/api-template.ts +315 -0
- package/skills/oma-backend/variants/node/snippets.md +475 -0
- package/skills/oma-backend/variants/node/stack.yaml +21 -0
- package/skills/oma-backend/variants/node/tech-stack.md +33 -0
- package/skills/oma-backend/variants/python/api-template.py +378 -0
- package/skills/oma-backend/variants/python/snippets.md +199 -0
- package/skills/oma-backend/variants/python/stack.yaml +18 -0
- package/skills/oma-backend/variants/python/tech-stack.md +45 -0
- package/skills/oma-backend/variants/rust/api-template.rs +635 -0
- package/skills/oma-backend/variants/rust/snippets.md +471 -0
- package/skills/oma-backend/variants/rust/stack.yaml +20 -0
- package/skills/oma-backend/variants/rust/tech-stack.md +36 -0
- package/skills/oma-backend/variants/stack.schema.json +73 -0
- package/skills/oma-brainstorm/SKILL.md +166 -0
- package/skills/oma-brainstorm/resources/triz-lite.md +117 -0
- package/skills/oma-coordination/SKILL.md +171 -0
- package/skills/oma-db/SKILL.md +201 -0
- package/skills/oma-db/resources/anti-patterns.md +177 -0
- package/skills/oma-db/resources/checklist.md +67 -0
- package/skills/oma-db/resources/document-templates.md +107 -0
- package/skills/oma-db/resources/error-playbook.md +50 -0
- package/skills/oma-db/resources/examples.md +170 -0
- package/skills/oma-db/resources/execution-protocol.md +127 -0
- package/skills/oma-db/resources/iso-controls.md +98 -0
- package/skills/oma-db/resources/migration-playbook.md +93 -0
- package/skills/oma-db/resources/query-tuning.md +57 -0
- package/skills/oma-db/resources/vector-db.md +159 -0
- package/skills/oma-debug/SKILL.md +146 -0
- package/skills/oma-debug/resources/bug-report-template.md +327 -0
- package/skills/oma-debug/resources/checklist.md +31 -0
- package/skills/oma-debug/resources/common-patterns.md +734 -0
- package/skills/oma-debug/resources/debugging-checklist.md +364 -0
- package/skills/oma-debug/resources/error-playbook.md +94 -0
- package/skills/oma-debug/resources/execution-protocol.md +40 -0
- package/skills/oma-design/SKILL.md +135 -0
- package/skills/oma-design/resources/asset-strategy.md +34 -0
- package/skills/oma-design/resources/checklist.md +63 -0
- package/skills/oma-design/resources/data-grid.md +48 -0
- package/skills/oma-design/resources/design-md-spec.md +107 -0
- package/skills/oma-design/resources/design-tokens.md +53 -0
- package/skills/oma-design/resources/error-playbook.md +18 -0
- package/skills/oma-design/resources/execution-protocol.md +95 -0
- package/skills/oma-design/resources/external-design-skills.md +130 -0
- package/skills/oma-design/resources/getdesign-fetcher.md +104 -0
- package/skills/oma-design/resources/product-interface-review.md +59 -0
- package/skills/oma-design/resources/redesign-protocol.md +52 -0
- package/skills/oma-design/resources/stitch-integration.md +244 -0
- package/skills/oma-dev-workflow/SKILL.md +375 -0
- package/skills/oma-dev-workflow/resources/affected-checks.py +58 -0
- package/skills/oma-dev-workflow/resources/api-workflows.md +58 -0
- package/skills/oma-dev-workflow/resources/database-patterns.md +107 -0
- package/skills/oma-dev-workflow/resources/i18n-patterns.md +63 -0
- package/skills/oma-dev-workflow/resources/release-coordination.md +240 -0
- package/skills/oma-dev-workflow/resources/tooling-profiles.md +217 -0
- package/skills/oma-dev-workflow/resources/troubleshooting.md +78 -0
- package/skills/oma-dev-workflow/resources/validation-pipeline.md +246 -0
- package/skills/oma-docs/SKILL.md +77 -0
- package/skills/oma-docs/resources/commands.md +76 -0
- package/skills/oma-explanation/SKILL.md +212 -0
- package/skills/oma-explanation/resources/document-structure.md +115 -0
- package/skills/oma-explanation/resources/draft-format.md +199 -0
- package/skills/oma-explanation/resources/html-contract.md +102 -0
- package/skills/oma-frontend/SKILL.md +227 -0
- package/skills/oma-frontend/resources/angular-rules.md +110 -0
- package/skills/oma-frontend/resources/checklist.md +76 -0
- package/skills/oma-frontend/resources/error-playbook.md +125 -0
- package/skills/oma-frontend/resources/execution-protocol.md +46 -0
- package/skills/oma-frontend/resources/snippets.md +354 -0
- package/skills/oma-frontend/resources/specialized-visual-implementation.md +193 -0
- package/skills/oma-frontend/resources/tailwind-rules.md +83 -0
- package/skills/oma-frontend/resources/tech-stack.md +156 -0
- package/skills/oma-hwp/SKILL.md +166 -0
- package/skills/oma-hwp/config/hwp-config.yaml +35 -0
- package/skills/oma-hwp/resources/balanced-tables.ts +39 -0
- package/skills/oma-hwp/resources/execution-protocol.md +145 -0
- package/skills/oma-hwp/resources/flatten-tables.ts +101 -0
- package/skills/oma-hwp/resources/package.json +13 -0
- package/skills/oma-hwp/resources/troubleshooting.md +70 -0
- package/skills/oma-hwp/resources/tsconfig.json +10 -0
- package/skills/oma-hwp/resources/turndown-plugin-gfm.d.ts +9 -0
- package/skills/oma-image/SKILL.md +142 -0
- package/skills/oma-image/config/image-config.yaml +70 -0
- package/skills/oma-image/resources/checklist.md +18 -0
- package/skills/oma-image/resources/execution-protocol.md +117 -0
- package/skills/oma-image/resources/invocation.md +105 -0
- package/skills/oma-image/resources/prompt-tips.md +71 -0
- package/skills/oma-image/resources/vendor-matrix.md +90 -0
- package/skills/oma-market/SKILL.md +142 -0
- package/skills/oma-market/resources/checklist.md +12 -0
- package/skills/oma-market/resources/error-playbook.md +12 -0
- package/skills/oma-market/resources/execution-protocol.md +60 -0
- package/skills/oma-market/resources/frameworks/pestel.md +101 -0
- package/skills/oma-market/resources/frameworks/porters-5f.md +90 -0
- package/skills/oma-market/resources/frameworks/swot.md +61 -0
- package/skills/oma-market/resources/intent-rules.md +35 -0
- package/skills/oma-market/resources/output-laws.md +53 -0
- package/skills/oma-mobile/SKILL.md +168 -0
- package/skills/oma-mobile/resources/checklist.md +77 -0
- package/skills/oma-mobile/resources/error-playbook.md +198 -0
- package/skills/oma-mobile/resources/execution-protocol.md +47 -0
- package/skills/oma-mobile/resources/screen-template.dart +331 -0
- package/skills/oma-mobile/resources/screen-template.swift +239 -0
- package/skills/oma-mobile/resources/screen-template.tsx +179 -0
- package/skills/oma-mobile/resources/tech-stack.md +69 -0
- package/skills/oma-mobile/variants/README.md +45 -0
- package/skills/oma-mobile/variants/flutter/api-template.dart +461 -0
- package/skills/oma-mobile/variants/flutter/snippets.md +1353 -0
- package/skills/oma-mobile/variants/flutter/stack.yaml +21 -0
- package/skills/oma-mobile/variants/flutter/tech-stack.md +201 -0
- package/skills/oma-mobile/variants/kotlin-android/api-template.kt +182 -0
- package/skills/oma-mobile/variants/kotlin-android/snippets.md +871 -0
- package/skills/oma-mobile/variants/kotlin-android/stack.yaml +32 -0
- package/skills/oma-mobile/variants/kotlin-android/tech-stack.md +159 -0
- package/skills/oma-mobile/variants/react-native/api-template.ts +531 -0
- package/skills/oma-mobile/variants/react-native/snippets.md +1014 -0
- package/skills/oma-mobile/variants/react-native/stack.yaml +22 -0
- package/skills/oma-mobile/variants/react-native/tech-stack.md +192 -0
- package/skills/oma-mobile/variants/stack.schema.json +68 -0
- package/skills/oma-mobile/variants/swift-ios/api-template.swift +165 -0
- package/skills/oma-mobile/variants/swift-ios/snippets.md +1028 -0
- package/skills/oma-mobile/variants/swift-ios/stack.yaml +25 -0
- package/skills/oma-mobile/variants/swift-ios/tech-stack.md +174 -0
- package/skills/oma-observability/SKILL.md +225 -0
- package/skills/oma-observability/resources/anti-patterns.md +555 -0
- package/skills/oma-observability/resources/boundaries/cross-application.md +348 -0
- package/skills/oma-observability/resources/boundaries/multi-tenant.md +290 -0
- package/skills/oma-observability/resources/boundaries/release.md +372 -0
- package/skills/oma-observability/resources/boundaries/slo.md +225 -0
- package/skills/oma-observability/resources/checklist.md +123 -0
- package/skills/oma-observability/resources/examples.md +448 -0
- package/skills/oma-observability/resources/execution-protocol.md +166 -0
- package/skills/oma-observability/resources/incident-forensics.md +348 -0
- package/skills/oma-observability/resources/intent-rules.md +307 -0
- package/skills/oma-observability/resources/layers/L3-network.md +281 -0
- package/skills/oma-observability/resources/layers/L4-transport.md +299 -0
- package/skills/oma-observability/resources/layers/L7-application/crash-analytics.md +359 -0
- package/skills/oma-observability/resources/layers/L7-application/mobile-rum.md +278 -0
- package/skills/oma-observability/resources/layers/L7-application/waf.md +246 -0
- package/skills/oma-observability/resources/layers/L7-application/web-rum.md +350 -0
- package/skills/oma-observability/resources/layers/mesh.md +368 -0
- package/skills/oma-observability/resources/matrix.md +177 -0
- package/skills/oma-observability/resources/meta-observability.md +605 -0
- package/skills/oma-observability/resources/observability-as-code.md +666 -0
- package/skills/oma-observability/resources/signals/audit.md +310 -0
- package/skills/oma-observability/resources/signals/cost.md +303 -0
- package/skills/oma-observability/resources/signals/logs.md +263 -0
- package/skills/oma-observability/resources/signals/metrics.md +478 -0
- package/skills/oma-observability/resources/signals/privacy.md +351 -0
- package/skills/oma-observability/resources/signals/profiles.md +245 -0
- package/skills/oma-observability/resources/signals/traces.md +360 -0
- package/skills/oma-observability/resources/standards.md +214 -0
- package/skills/oma-observability/resources/transport/collector-topology.md +308 -0
- package/skills/oma-observability/resources/transport/otlp-grpc-vs-http.md +256 -0
- package/skills/oma-observability/resources/transport/sampling-recipes.md +297 -0
- package/skills/oma-observability/resources/transport/udp-statsd-mtu.md +167 -0
- package/skills/oma-observability/resources/vendor-categories.md +352 -0
- package/skills/oma-orchestration/SKILL.md +302 -0
- package/skills/oma-orchestration/config/cli-config.yaml +92 -0
- package/skills/oma-orchestration/resources/memory-schema.md +232 -0
- package/skills/oma-orchestration/resources/subagent-prompt-template.md +30 -0
- package/skills/oma-orchestration/scripts/parallel-run.sh +6 -0
- package/skills/oma-orchestration/scripts/spawn-agent.sh +5 -0
- package/skills/oma-orchestration/scripts/verify.sh +20 -0
- package/skills/oma-orchestration/templates/backend-task.md +19 -0
- package/skills/oma-orchestration/templates/debug-task.md +16 -0
- package/skills/oma-orchestration/templates/frontend-task.md +18 -0
- package/skills/oma-orchestration/templates/mobile-task.md +18 -0
- package/skills/oma-orchestration/templates/qa-task.md +16 -0
- package/skills/oma-orchestration/templates/tasks-example.yaml +15 -0
- package/skills/oma-pdf/SKILL.md +162 -0
- package/skills/oma-pdf/config/pdf-config.yaml +27 -0
- package/skills/oma-pdf/resources/execution-protocol.md +127 -0
- package/skills/oma-pm/SKILL.md +157 -0
- package/skills/oma-pm/resources/error-playbook.md +75 -0
- package/skills/oma-pm/resources/examples.md +439 -0
- package/skills/oma-pm/resources/execution-protocol.md +62 -0
- package/skills/oma-pm/resources/iso-planning.md +110 -0
- package/skills/oma-pm/resources/plan-phase-protocol.md +66 -0
- package/skills/oma-pm/resources/task-template.json +86 -0
- package/skills/oma-qa/SKILL.md +141 -0
- package/skills/oma-qa/resources/checklist.md +339 -0
- package/skills/oma-qa/resources/error-playbook.md +98 -0
- package/skills/oma-qa/resources/execution-protocol.md +169 -0
- package/skills/oma-qa/resources/iso-quality.md +82 -0
- package/skills/oma-qa/resources/verify-ship-protocol.md +116 -0
- package/skills/oma-recap/SKILL.md +245 -0
- package/skills/oma-recap/resources/output-formats.md +83 -0
- package/skills/oma-refactor/SKILL.md +184 -0
- package/skills/oma-refactor/resources/definition.md +108 -0
- package/skills/oma-refactor/resources/governance.md +33 -0
- package/skills/oma-refactor/resources/hotspots.py +44 -0
- package/skills/oma-refactor/resources/measurement.md +93 -0
- package/skills/oma-scholar/SKILL.md +276 -0
- package/skills/oma-scholar/config/scholar-config.yaml +79 -0
- package/skills/oma-scholar/resources/api-endpoints.md +174 -0
- package/skills/oma-scholar/resources/checklist.md +92 -0
- package/skills/oma-scholar/resources/execution-protocol.md +224 -0
- package/skills/oma-scholar/resources/fallback-providers.md +143 -0
- package/skills/oma-scholar/resources/setup-openalex.md +85 -0
- package/skills/oma-scholar/resources/sidecar-spec.md +341 -0
- package/skills/oma-scholar/resources/upstream-spec-cache.md +972 -0
- package/skills/oma-scm/SKILL.md +103 -0
- package/skills/oma-scm/resources/cm-operations.md +56 -0
- package/skills/oma-scm/resources/codeowners-playbook.md +45 -0
- package/skills/oma-scm/resources/conventional-commits.md +108 -0
- package/skills/oma-scm/resources/merge-risk.md +76 -0
- package/skills/oma-scm/resources/onboarding-risk-signals.md +71 -0
- package/skills/oma-search/SKILL.md +125 -0
- package/skills/oma-search/resources/checklist.md +36 -0
- package/skills/oma-search/resources/error-playbook.md +66 -0
- package/skills/oma-search/resources/examples.md +80 -0
- package/skills/oma-search/resources/execution-protocol.md +86 -0
- package/skills/oma-search/resources/intent-rules.md +47 -0
- package/skills/oma-search/resources/trust-registry.md +53 -0
- package/skills/oma-security/SKILL.md +172 -0
- package/skills/oma-security/resources/artex.md +108 -0
- package/skills/oma-security/resources/ci.md +134 -0
- package/skills/oma-security/resources/cisco-source.md +108 -0
- package/skills/oma-security/resources/deepsec-config.md +45 -0
- package/skills/oma-security/resources/deepsec-matchers.md +35 -0
- package/skills/oma-security/resources/deepsec-scanning.md +45 -0
- package/skills/oma-security/resources/deepsec-setup.md +41 -0
- package/skills/oma-security/resources/findings-contract.md +408 -0
- package/skills/oma-security/resources/mcp-scanning.md +122 -0
- package/skills/oma-security/resources/skill-scanning.md +106 -0
- package/skills/oma-security/resources/validation.md +71 -0
- package/skills/oma-skill-creation/SKILL.md +84 -0
- package/skills/oma-skill-creation/resources/prompt-evaluation.md +36 -0
- package/skills/oma-skill-creation/resources/ssl-lite-template.md +108 -0
- package/skills/oma-skill-creation/resources/validation-checklist.md +101 -0
- package/skills/oma-slide/SKILL.md +277 -0
- package/skills/oma-slide/resources/animation-patterns.md +245 -0
- package/skills/oma-slide/resources/assets/deck-stage.js +514 -0
- package/skills/oma-slide/resources/assets/viewport-base.css +257 -0
- package/skills/oma-slide/resources/canva-integration.md +203 -0
- package/skills/oma-slide/resources/checklist.md +46 -0
- package/skills/oma-slide/resources/design-doctrine.md +260 -0
- package/skills/oma-slide/resources/fixed-stage.md +232 -0
- package/skills/oma-slide/resources/generation-protocol.md +393 -0
- package/skills/oma-slide/resources/native-pptx.md +84 -0
- package/skills/oma-slide/resources/selection-index.json +461 -0
- package/skills/oma-slide/resources/style-presets.LICENSE +10 -0
- package/skills/oma-slide/resources/style-presets.md +520 -0
- package/skills/oma-tf-infra/SKILL.md +201 -0
- package/skills/oma-tf-infra/resources/checklist.md +53 -0
- package/skills/oma-tf-infra/resources/cost-optimization.md +574 -0
- package/skills/oma-tf-infra/resources/error-playbook.md +68 -0
- package/skills/oma-tf-infra/resources/examples.md +38 -0
- package/skills/oma-tf-infra/resources/execution-protocol.md +129 -0
- package/skills/oma-tf-infra/resources/iso-42001-infra.md +229 -0
- package/skills/oma-tf-infra/resources/multi-cloud-examples.md +241 -0
- package/skills/oma-tf-infra/resources/policy-testing-examples.md +332 -0
- package/skills/oma-translation/SKILL.md +229 -0
- package/skills/oma-translation/resources/anti-ai-patterns.md +104 -0
- package/skills/oma-translation/resources/lang/_template.md +73 -0
- package/skills/oma-translation/resources/lang/en.md +123 -0
- package/skills/oma-translation/resources/lang/ja.md +274 -0
- package/skills/oma-translation/resources/lang/ko.md +228 -0
- package/skills/oma-translation/resources/lang/zh.md +285 -0
- package/skills/oma-translation/resources/style-skills.md +104 -0
- package/skills/oma-translation/resources/translation-rubric.md +126 -0
- package/skills/oma-video/SKILL.md +229 -0
- package/skills/oma-video/config/video-config.yaml +60 -0
- package/skills/oma-video/resources/checklist.md +26 -0
- package/skills/oma-video/resources/execution-protocol.md +122 -0
- package/skills/oma-video/resources/existing-media.md +185 -0
- package/skills/oma-video/resources/hyperframes-authoring/README.md +44 -0
- package/skills/oma-video/resources/hyperframes-authoring/demo.md +31 -0
- package/skills/oma-video/resources/hyperframes-authoring/explainer.md +10 -0
- package/skills/oma-video/resources/hyperframes-authoring/shorts.md +10 -0
- package/skills/oma-video/resources/motion-principles.md +81 -0
- package/skills/oma-video/resources/mpt/driver.py +301 -0
- package/skills/oma-video/resources/prompt-tips.md +75 -0
- package/skills/oma-video/resources/script-schema.md +81 -0
- package/skills/oma-video/resources/sound-design.md +127 -0
- package/skills/oma-video/resources/strudel/package.json +11 -0
- package/skills/oma-video/resources/strudel/page.html +87 -0
- package/skills/oma-video/resources/strudel/render.mjs +295 -0
- package/skills/oma-video/resources/vendor-matrix.md +124 -0
- package/skills/oma-voice/SKILL.md +249 -0
- package/skills/oma-voice/config/voice-config.yaml +30 -0
- package/skills/oma-voice/resources/audio-processing.md +119 -0
- package/skills/oma-voice/resources/checklist.md +47 -0
- package/skills/oma-voice/resources/execution-protocol.md +215 -0
- package/skills/oma-voice/resources/prompt-tips.md +43 -0
- package/skills/oma-voice/resources/voice-matrix.md +51 -0
- package/skills/oma-voice/resources/voicestudio.md +87 -0
|
@@ -0,0 +1,146 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: oma-debug
|
|
3
|
+
description: Diagnose a reproducible failure, fix its cause, and verify the
|
|
4
|
+
regression. Use for crashes, incorrect behavior, and failing tests.
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Debug Agent - Bug Fixing Specialist
|
|
8
|
+
|
|
9
|
+
## Scheduling
|
|
10
|
+
|
|
11
|
+
### Goal
|
|
12
|
+
Reproduce, diagnose, minimally fix, and regression-test bugs while preserving scope discipline and documenting root cause.
|
|
13
|
+
|
|
14
|
+
### Intent signature
|
|
15
|
+
- User reports a bug, crash, traceback, exception, error message, performance issue, intermittent failure, or regression.
|
|
16
|
+
- User needs root cause analysis plus a minimal code fix and regression test.
|
|
17
|
+
|
|
18
|
+
### When to use
|
|
19
|
+
- User reports a bug with error messages
|
|
20
|
+
- Something is broken and needs fixing
|
|
21
|
+
- Performance issues or slowdowns
|
|
22
|
+
- Intermittent failures or race conditions
|
|
23
|
+
- Regression bugs
|
|
24
|
+
|
|
25
|
+
### When NOT to use
|
|
26
|
+
- Building new features -> use Frontend/Backend/Mobile agents
|
|
27
|
+
- General code review -> use QA Agent
|
|
28
|
+
|
|
29
|
+
### Expected inputs
|
|
30
|
+
- Error message, failing behavior, reproduction steps, logs, test failure, or affected code path
|
|
31
|
+
- Existing tests, stack traces, environment notes, and suspected regression boundary
|
|
32
|
+
|
|
33
|
+
### Expected outputs
|
|
34
|
+
- Root cause explanation
|
|
35
|
+
- Minimal fix scoped to the failing behavior
|
|
36
|
+
- Regression test or explicit reason it cannot be added
|
|
37
|
+
- Bug documentation under `.agents/results/bugs/` when appropriate
|
|
38
|
+
|
|
39
|
+
### Dependencies
|
|
40
|
+
- `resources/execution-protocol.md`, examples, checklist, common patterns, and debugging checklist
|
|
41
|
+
- Local codebase search and symbol/reference tools
|
|
42
|
+
- Project test, lint, typecheck, and runtime commands
|
|
43
|
+
|
|
44
|
+
### Control-flow features
|
|
45
|
+
- Branches by reproduction success, error class, suspected layer, and verification outcome
|
|
46
|
+
- Reads logs/code/tests and writes code/tests/docs
|
|
47
|
+
- Must search for similar patterns after fixing
|
|
48
|
+
|
|
49
|
+
## Structural Flow
|
|
50
|
+
|
|
51
|
+
### Entry
|
|
52
|
+
1. Capture the reported symptom and suspected scope.
|
|
53
|
+
2. Reproduce or establish the closest reliable failing signal.
|
|
54
|
+
3. Identify affected files, tests, and related patterns.
|
|
55
|
+
|
|
56
|
+
### Scenes
|
|
57
|
+
1. **PREPARE**: Gather symptoms, logs, reproduction path, and verification command.
|
|
58
|
+
2. **ACQUIRE**: Read failing code, tests, references, and similar patterns.
|
|
59
|
+
3. **REASON**: Isolate root cause and reject unsupported hypotheses.
|
|
60
|
+
4. **ACT**: Apply minimal fix and regression test.
|
|
61
|
+
5. **VERIFY**: Re-run failing and related checks.
|
|
62
|
+
6. **FINALIZE**: Document root cause, fix, test, and residual risk.
|
|
63
|
+
|
|
64
|
+
### Transitions
|
|
65
|
+
- If reproduction fails, use logs/tests to establish a weaker but explicit diagnostic signal.
|
|
66
|
+
- If the first fix fails verification, return to root-cause analysis.
|
|
67
|
+
- If similar patterns exist, inspect and patch only affected cases.
|
|
68
|
+
- If the request is actually feature work, route to the relevant implementation skill.
|
|
69
|
+
|
|
70
|
+
### Failure and recovery
|
|
71
|
+
- If environment is missing, document the blocker and provide the closest static diagnosis.
|
|
72
|
+
- If no regression test is feasible, explain why and include manual verification.
|
|
73
|
+
- If fix scope grows, stop and call out the broader design issue.
|
|
74
|
+
|
|
75
|
+
### Exit
|
|
76
|
+
- Success: bug is fixed, regression coverage exists, and checks pass.
|
|
77
|
+
- Partial success: root cause or verification blocker is explicit.
|
|
78
|
+
|
|
79
|
+
## Logical Operations
|
|
80
|
+
|
|
81
|
+
### Actions
|
|
82
|
+
| Action | SSL primitive | Evidence |
|
|
83
|
+
|--------|---------------|----------|
|
|
84
|
+
| Reproduce failure | `CALL_TOOL` | Test/runtime/log command |
|
|
85
|
+
| Search affected code | `READ` | Code, tests, symbols, references |
|
|
86
|
+
| Compare similar patterns | `COMPARE` | Pattern search |
|
|
87
|
+
| Infer root cause | `INFER` | Diagnostic reasoning |
|
|
88
|
+
| Write minimal fix | `WRITE` | Code patch |
|
|
89
|
+
| Write regression test | `WRITE` | Test patch |
|
|
90
|
+
| Verify behavior | `VALIDATE` | Tests/checks |
|
|
91
|
+
| Report result | `NOTIFY` | Root-cause summary |
|
|
92
|
+
|
|
93
|
+
### Tools and instruments
|
|
94
|
+
- Project test, lint, typecheck, runtime, and logging commands
|
|
95
|
+
- Configured code-intelligence symbol/reference/pattern search with native fallback
|
|
96
|
+
- Debugging checklist and bug report template
|
|
97
|
+
|
|
98
|
+
### Canonical workflow path
|
|
99
|
+
Use the configured code-intelligence provider to locate files and inspect symbols
|
|
100
|
+
or content. For Serena, use `find_file`, `search_for_pattern`,
|
|
101
|
+
`get_symbols_overview`, and `find_symbol`. Native search is limited to the
|
|
102
|
+
provider exclusions and non-code paths permitted by the project's search policy.
|
|
103
|
+
|
|
104
|
+
|
|
105
|
+
Then run the smallest reproduction command first, establish the causal mechanism, and follow `resources/execution-protocol.md` for the diagnosis record when an OMA workflow is active. Add the regression test and re-run the failing check plus related tests.
|
|
106
|
+
|
|
107
|
+
### Resource scope
|
|
108
|
+
| Scope | Resource target |
|
|
109
|
+
|-------|-----------------|
|
|
110
|
+
| `CODEBASE` | Failing source, tests, and related patterns |
|
|
111
|
+
| `LOCAL_FS` | Bug reports and result artifacts |
|
|
112
|
+
| `PROCESS` | Reproduction and verification commands |
|
|
113
|
+
| `MEMORY` | Hypotheses, root-cause notes, verification evidence |
|
|
114
|
+
|
|
115
|
+
### Preconditions
|
|
116
|
+
- A bug signal, symptom, or failing behavior is available.
|
|
117
|
+
- Relevant code and verification path can be inspected or the blocker is stated.
|
|
118
|
+
|
|
119
|
+
### Effects and side effects
|
|
120
|
+
- Mutates source/tests only as needed for the fix.
|
|
121
|
+
- May create bug documentation under `.agents/results/bugs/`.
|
|
122
|
+
|
|
123
|
+
### Guardrails
|
|
124
|
+
1. Reproduce first, then diagnose - never guess at fixes
|
|
125
|
+
2. Identify root cause, not just symptoms
|
|
126
|
+
3. Minimal fix: change only what's necessary
|
|
127
|
+
4. Every fix gets a regression test
|
|
128
|
+
5. Search for similar patterns elsewhere after fixing
|
|
129
|
+
6. Document in `.agents/results/bugs/`
|
|
130
|
+
|
|
131
|
+
### Code intelligence
|
|
132
|
+
Use the configured provider to locate the failing function, find callers, and search similar error patterns. Native search and scoped reads are supported fallbacks; see the shared capability contract.
|
|
133
|
+
|
|
134
|
+
## References
|
|
135
|
+
- Local code tools: `../_shared/core/code-intelligence.md` (code search/navigation)
|
|
136
|
+
|
|
137
|
+
- Execution steps (follow for the selected task): `resources/execution-protocol.md`
|
|
138
|
+
- Checklist (pre-submit self-verification): `resources/checklist.md`
|
|
139
|
+
- Error recovery: `resources/error-playbook.md`
|
|
140
|
+
- Bug report template: `resources/bug-report-template.md`
|
|
141
|
+
- Common patterns: `resources/common-patterns.md`
|
|
142
|
+
- Debugging checklist (investigation guide, used during Steps 1-2): `resources/debugging-checklist.md`
|
|
143
|
+
- Context loading: `../_shared/core/context-loading.md`
|
|
144
|
+
- Context budget: `../_shared/core/context-budget.md`
|
|
145
|
+
- Lessons learned: `../_shared/core/lessons-learned.md` (matching prior failure or requested retrospective)
|
|
146
|
+
- Observability handoff: `../oma-observability/SKILL.md` §Integrations — traces/logs by `trace_id`, 6-dim forensics
|
|
@@ -0,0 +1,327 @@
|
|
|
1
|
+
---
|
|
2
|
+
oma-docs: skip
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
# Bug Report Template
|
|
6
|
+
|
|
7
|
+
Use this template when documenting bugs in the Knowledge Base.
|
|
8
|
+
|
|
9
|
+
Save to: `.agents/results/bugs/bug-YYYYMMDD-[short-description].md`
|
|
10
|
+
|
|
11
|
+
---
|
|
12
|
+
|
|
13
|
+
# Bug: [Short Descriptive Title]
|
|
14
|
+
|
|
15
|
+
**Date Reported**: YYYY-MM-DD
|
|
16
|
+
**Date Fixed**: YYYY-MM-DD (or "In Progress")
|
|
17
|
+
**Reporter**: [User name or issue number]
|
|
18
|
+
**Assignee**: [Agent that fixed it]
|
|
19
|
+
**Severity**: CRITICAL | HIGH | MEDIUM | LOW
|
|
20
|
+
**Status**: OPEN | IN PROGRESS | FIXED | ON HOLD | WON'T FIX
|
|
21
|
+
|
|
22
|
+
---
|
|
23
|
+
|
|
24
|
+
## Problem Description
|
|
25
|
+
|
|
26
|
+
**What happened?**
|
|
27
|
+
[Clear description of the bug from user's perspective]
|
|
28
|
+
|
|
29
|
+
**What was expected?**
|
|
30
|
+
[What should have happened instead]
|
|
31
|
+
|
|
32
|
+
**Impact**:
|
|
33
|
+
- Users affected: [All | Specific role | Percentage]
|
|
34
|
+
- Business impact: [Revenue loss | User frustration | Security risk]
|
|
35
|
+
- Workaround available: [Yes/No - describe if yes]
|
|
36
|
+
|
|
37
|
+
---
|
|
38
|
+
|
|
39
|
+
## Reproduction Steps
|
|
40
|
+
|
|
41
|
+
1. Navigate to [page/route]
|
|
42
|
+
2. Click on [button/element]
|
|
43
|
+
3. Enter [data] in [field]
|
|
44
|
+
4. Observe [unexpected behavior]
|
|
45
|
+
|
|
46
|
+
**Frequency**:
|
|
47
|
+
- [ ] Every time (100%)
|
|
48
|
+
- [ ] Intermittent (specify pattern: ___%)
|
|
49
|
+
- [ ] Specific conditions only (describe: ___)
|
|
50
|
+
|
|
51
|
+
---
|
|
52
|
+
|
|
53
|
+
## Evidence
|
|
54
|
+
|
|
55
|
+
**Error Messages**:
|
|
56
|
+
```
|
|
57
|
+
[Exact error text from console/logs]
|
|
58
|
+
```
|
|
59
|
+
|
|
60
|
+
**Stack Trace**:
|
|
61
|
+
```
|
|
62
|
+
[Full stack trace if available]
|
|
63
|
+
```
|
|
64
|
+
|
|
65
|
+
**Screenshots**:
|
|
66
|
+
- Before: [description or file path]
|
|
67
|
+
- After: [description or file path]
|
|
68
|
+
- Error state: [description or file path]
|
|
69
|
+
|
|
70
|
+
**Browser Console**:
|
|
71
|
+
```javascript
|
|
72
|
+
// Relevant console errors
|
|
73
|
+
```
|
|
74
|
+
|
|
75
|
+
**Network Requests**:
|
|
76
|
+
```
|
|
77
|
+
Request URL: [URL]
|
|
78
|
+
Status Code: [200/404/500/etc]
|
|
79
|
+
Response: [relevant response data]
|
|
80
|
+
```
|
|
81
|
+
|
|
82
|
+
---
|
|
83
|
+
|
|
84
|
+
## Environment
|
|
85
|
+
|
|
86
|
+
**Frontend**:
|
|
87
|
+
- Browser: [Chrome 120 | Firefox 121 | Safari 17]
|
|
88
|
+
- OS: [Windows 11 | macOS 14 | iOS 17 | Android 14]
|
|
89
|
+
- Screen size: [Desktop | Tablet | Mobile]
|
|
90
|
+
- Browser extensions: [Any relevant extensions]
|
|
91
|
+
|
|
92
|
+
**Backend**:
|
|
93
|
+
- Environment: [Development | Staging | Production]
|
|
94
|
+
- Server version: [API version]
|
|
95
|
+
- Database: [PostgreSQL 16.1]
|
|
96
|
+
|
|
97
|
+
**Mobile** (if applicable):
|
|
98
|
+
- Device: [iPhone 15 | Samsung Galaxy S24]
|
|
99
|
+
- OS Version: [iOS 17.2 | Android 14]
|
|
100
|
+
- App Version: [1.2.3]
|
|
101
|
+
|
|
102
|
+
---
|
|
103
|
+
|
|
104
|
+
## Investigation
|
|
105
|
+
|
|
106
|
+
### Initial Analysis
|
|
107
|
+
|
|
108
|
+
**Hypothesis**:
|
|
109
|
+
[What you think is causing the bug]
|
|
110
|
+
|
|
111
|
+
**Investigation Steps Taken**:
|
|
112
|
+
1. [What was checked]
|
|
113
|
+
2. [What was ruled out]
|
|
114
|
+
3. [Key findings]
|
|
115
|
+
|
|
116
|
+
### Root Cause
|
|
117
|
+
|
|
118
|
+
**Technical Explanation**:
|
|
119
|
+
[Deep dive into why the bug occurs]
|
|
120
|
+
|
|
121
|
+
**Code Location**:
|
|
122
|
+
- File: `path/to/file.tsx`
|
|
123
|
+
- Line: 145
|
|
124
|
+
- Function: `handleSubmit()`
|
|
125
|
+
|
|
126
|
+
**Specific Issue**:
|
|
127
|
+
```typescript
|
|
128
|
+
// Problem code
|
|
129
|
+
const user = data.user.profile.name; // Crashes if profile is undefined
|
|
130
|
+
```
|
|
131
|
+
|
|
132
|
+
**Why it happens**:
|
|
133
|
+
[Explain the conditions that trigger this]
|
|
134
|
+
|
|
135
|
+
---
|
|
136
|
+
|
|
137
|
+
## Solution
|
|
138
|
+
|
|
139
|
+
### Fix Applied
|
|
140
|
+
|
|
141
|
+
**Approach**:
|
|
142
|
+
[High-level description of the fix strategy]
|
|
143
|
+
|
|
144
|
+
**Code Changes**:
|
|
145
|
+
|
|
146
|
+
```typescript
|
|
147
|
+
// File: path/to/file.tsx (line 145)
|
|
148
|
+
|
|
149
|
+
// BEFORE (buggy code)
|
|
150
|
+
const user = data.user.profile.name;
|
|
151
|
+
|
|
152
|
+
// AFTER (fixed code)
|
|
153
|
+
const user = data?.user?.profile?.name ?? 'Unknown';
|
|
154
|
+
```
|
|
155
|
+
|
|
156
|
+
**Why this works**:
|
|
157
|
+
[Explain the fix]
|
|
158
|
+
|
|
159
|
+
### Files Modified
|
|
160
|
+
|
|
161
|
+
- `src/components/UserProfile.tsx` - Added null check for profile
|
|
162
|
+
- `src/lib/api/users.ts` - Improved error handling
|
|
163
|
+
- `src/components/UserProfile.test.tsx` - Added regression test
|
|
164
|
+
|
|
165
|
+
### Migration/Deployment Notes
|
|
166
|
+
|
|
167
|
+
**Database Changes**: None | [Describe migrations needed]
|
|
168
|
+
**Configuration Changes**: None | [Describe config updates]
|
|
169
|
+
**Breaking Changes**: None | [Describe breaking changes]
|
|
170
|
+
**Rollback Plan**: [How to revert if needed]
|
|
171
|
+
|
|
172
|
+
---
|
|
173
|
+
|
|
174
|
+
## Verification
|
|
175
|
+
|
|
176
|
+
### Testing Performed
|
|
177
|
+
|
|
178
|
+
- [ ] Regression test: [file, cases, command and actual outcome]
|
|
179
|
+
- [ ] Manual reproduction: [steps, environment and actual outcome]
|
|
180
|
+
- [ ] Related areas: [scope actually checked and findings]
|
|
181
|
+
- [ ] Performance: [measurement or not checked]
|
|
182
|
+
|
|
183
|
+
### Test Results
|
|
184
|
+
|
|
185
|
+
**Unit Tests**: [command, passed/failed/skipped counts, or not run]
|
|
186
|
+
**Integration Tests**: [command and actual outcome, or not run]
|
|
187
|
+
**E2E Tests**: [command and actual outcome, or not run]
|
|
188
|
+
**Manual QA**: [browsers/devices actually checked, or not checked]
|
|
189
|
+
|
|
190
|
+
---
|
|
191
|
+
|
|
192
|
+
## Prevention
|
|
193
|
+
|
|
194
|
+
### How to Avoid Similar Bugs
|
|
195
|
+
|
|
196
|
+
1. **Always check for null/undefined** before accessing nested properties
|
|
197
|
+
2. **Use optional chaining (`?.`)** for safe property access
|
|
198
|
+
3. **Provide default values** with nullish coalescing (`??`)
|
|
199
|
+
4. **Add TypeScript strict null checks** to catch at compile time
|
|
200
|
+
5. **Write defensive code** - assume data might be missing
|
|
201
|
+
|
|
202
|
+
### Code Patterns to Follow
|
|
203
|
+
|
|
204
|
+
```typescript
|
|
205
|
+
// GOOD: Safe access with fallback
|
|
206
|
+
const name = user?.profile?.name ?? 'Anonymous';
|
|
207
|
+
|
|
208
|
+
// GOOD: Explicit null check
|
|
209
|
+
if (user?.profile) {
|
|
210
|
+
const name = user.profile.name;
|
|
211
|
+
}
|
|
212
|
+
|
|
213
|
+
// GOOD: Early return
|
|
214
|
+
if (!user?.profile) {
|
|
215
|
+
return <div>No profile available</div>;
|
|
216
|
+
}
|
|
217
|
+
|
|
218
|
+
// BAD: Unsafe nested access
|
|
219
|
+
const name = user.profile.name; // Crashes if profile undefined
|
|
220
|
+
```
|
|
221
|
+
|
|
222
|
+
### Recommended Tools
|
|
223
|
+
|
|
224
|
+
- **TypeScript** with `strictNullChecks: true`
|
|
225
|
+
- **ESLint** rule: `no-unsafe-member-access`
|
|
226
|
+
- **Unit tests** for edge cases (null, undefined, empty)
|
|
227
|
+
|
|
228
|
+
---
|
|
229
|
+
|
|
230
|
+
## Related
|
|
231
|
+
|
|
232
|
+
**Similar Bugs**:
|
|
233
|
+
- Bug #123: Similar null check issue in `CommentList`
|
|
234
|
+
- Bug #456: Related data loading pattern
|
|
235
|
+
|
|
236
|
+
**Dependent Issues**:
|
|
237
|
+
- Issue #789: Need to improve error handling across all API calls
|
|
238
|
+
|
|
239
|
+
**Documentation**:
|
|
240
|
+
- [Link to architecture decision record]
|
|
241
|
+
- [Link to API documentation]
|
|
242
|
+
|
|
243
|
+
**External References**:
|
|
244
|
+
- [Stack Overflow link if used]
|
|
245
|
+
- [GitHub issue in library if relevant]
|
|
246
|
+
|
|
247
|
+
---
|
|
248
|
+
|
|
249
|
+
## Metrics
|
|
250
|
+
|
|
251
|
+
**Time to Fix**: [2 hours | 1 day | 1 week]
|
|
252
|
+
**Lines Changed**: [+15 -5]
|
|
253
|
+
**Files Affected**: [3 files]
|
|
254
|
+
**Tests Added**: [5 new tests]
|
|
255
|
+
|
|
256
|
+
---
|
|
257
|
+
|
|
258
|
+
## Communication
|
|
259
|
+
|
|
260
|
+
**Communication**: [Only record messages actually sent within authorized scope;
|
|
261
|
+
otherwise mark not sent. Do not send email or chat solely to fill this template.]
|
|
262
|
+
|
|
263
|
+
**Changelog Entry**:
|
|
264
|
+
```markdown
|
|
265
|
+
### Fixed
|
|
266
|
+
- Fixed crash when user profile is missing ([#issue-number])
|
|
267
|
+
```
|
|
268
|
+
|
|
269
|
+
---
|
|
270
|
+
|
|
271
|
+
## Lessons Learned
|
|
272
|
+
|
|
273
|
+
**What went well**:
|
|
274
|
+
- Quick identification of root cause
|
|
275
|
+
- Proactive fix of similar patterns
|
|
276
|
+
- Comprehensive test coverage
|
|
277
|
+
|
|
278
|
+
**What could improve**:
|
|
279
|
+
- Should have caught this in code review
|
|
280
|
+
- TypeScript strict mode would have prevented this
|
|
281
|
+
- Need better null check linting rules
|
|
282
|
+
|
|
283
|
+
**Action Items**:
|
|
284
|
+
- [ ] Enable TypeScript strictNullChecks across project
|
|
285
|
+
- [ ] Add ESLint rule for unsafe member access
|
|
286
|
+
- [ ] Update code review checklist to include null checks
|
|
287
|
+
- [ ] Create coding standards doc for defensive programming
|
|
288
|
+
|
|
289
|
+
---
|
|
290
|
+
|
|
291
|
+
## Tags
|
|
292
|
+
|
|
293
|
+
`frontend` `null-check` `crash` `typescript` `user-profile` `high-priority`
|
|
294
|
+
|
|
295
|
+
---
|
|
296
|
+
|
|
297
|
+
**Sign-off**: [Your name/agent name]
|
|
298
|
+
**Reviewed by**: [PM Agent | QA Agent | Frontend Agent]
|
|
299
|
+
**Approved for deploy**: [Yes/No]
|
|
300
|
+
|
|
301
|
+
---
|
|
302
|
+
|
|
303
|
+
## Template Notes
|
|
304
|
+
|
|
305
|
+
**How to use this template**:
|
|
306
|
+
|
|
307
|
+
1. **Copy this template** when documenting a new bug
|
|
308
|
+
2. **Fill in all sections** - don't skip parts
|
|
309
|
+
3. **Be specific** - future developers need details
|
|
310
|
+
4. **Include code** - show the before/after
|
|
311
|
+
5. **Link related issues** - help connect patterns
|
|
312
|
+
6. **Update status** as work progresses
|
|
313
|
+
7. **Save to Knowledge Base** for future reference
|
|
314
|
+
|
|
315
|
+
**Sections you can skip**:
|
|
316
|
+
- Screenshots (if text description is clear)
|
|
317
|
+
- Stack trace (if no error thrown)
|
|
318
|
+
- Migration notes (if no DB/config changes)
|
|
319
|
+
- Communication, Metrics, Sign-off (org-process sections; skip when running as an autonomous agent)
|
|
320
|
+
|
|
321
|
+
**For Simple/Medium bugs**: the condensed template in
|
|
322
|
+
`debugging-checklist.md` §Documentation Template is sufficient.
|
|
323
|
+
|
|
324
|
+
**Optional sections to add**:
|
|
325
|
+
- Timeline (for long-running bugs)
|
|
326
|
+
- Cost impact (for business-critical bugs)
|
|
327
|
+
- Vendor communication (if third-party bug)
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
# Debug Agent - Self-Verification Checklist
|
|
2
|
+
|
|
3
|
+
Run through every item before submitting your fix.
|
|
4
|
+
|
|
5
|
+
## Fix Quality
|
|
6
|
+
- [ ] Root cause identified (not just symptom patched)
|
|
7
|
+
- [ ] Fix is minimal and focused (no unrelated changes)
|
|
8
|
+
- [ ] Edge cases handled (null, empty, boundary values)
|
|
9
|
+
- [ ] No new bugs introduced
|
|
10
|
+
|
|
11
|
+
## Regression Test
|
|
12
|
+
- [ ] Test written that reproduces the bug
|
|
13
|
+
- [ ] Fix reverted → test fails (confirms test actually catches the bug)
|
|
14
|
+
- [ ] Fix restored → test passes
|
|
15
|
+
- [ ] Test covers the specific triggering condition
|
|
16
|
+
- [ ] All existing tests still pass
|
|
17
|
+
|
|
18
|
+
## Similar Patterns
|
|
19
|
+
- [ ] Searched for same pattern elsewhere in codebase
|
|
20
|
+
- [ ] Reported or fixed similar occurrences
|
|
21
|
+
- [ ] Noted if systemic issue needs architectural fix
|
|
22
|
+
|
|
23
|
+
## Documentation
|
|
24
|
+
- [ ] Bug report saved to `.agents/results/bugs/` (condensed form OK for Simple/Medium; or explicit reason it was skipped)
|
|
25
|
+
- [ ] Root cause clearly explained
|
|
26
|
+
- [ ] Prevention advice included
|
|
27
|
+
- [ ] Files modified listed
|
|
28
|
+
|
|
29
|
+
## Security Check (if applicable)
|
|
30
|
+
- [ ] Fix doesn't introduce SQL injection, XSS, or auth bypass
|
|
31
|
+
- [ ] Sensitive data not exposed in error messages or logs
|