opencode-skills-collection 4.0.53 → 4.0.54
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/bundled-skills/.antigravity-install-manifest.json +3 -2
- package/bundled-skills/00-andruia-consultant/SKILL.md +6 -0
- package/bundled-skills/007/SKILL.md +2 -610
- package/bundled-skills/007/references/detailed-guide.md +647 -0
- package/bundled-skills/10-andruia-skill-smith/SKILL.md +6 -0
- package/bundled-skills/20-andruia-niche-intelligence/SKILL.md +6 -0
- package/bundled-skills/2slides-ppt-generator/SKILL.md +2 -741
- package/bundled-skills/2slides-ppt-generator/references/detailed-guide.md +761 -0
- package/bundled-skills/ab-test-setup/SKILL.md +59 -27
- package/bundled-skills/ab-testing/SKILL.md +1 -1
- package/bundled-skills/acceptance-orchestrator/SKILL.md +6 -0
- package/bundled-skills/accint-commitments/SKILL.md +6 -0
- package/bundled-skills/accint-frames/SKILL.md +6 -0
- package/bundled-skills/accint-solve/SKILL.md +6 -0
- package/bundled-skills/advogado-criminal/SKILL.md +2 -912
- package/bundled-skills/advogado-criminal/references/detailed-guide.md +946 -0
- package/bundled-skills/advogado-especialista/SKILL.md +2 -1071
- package/bundled-skills/advogado-especialista/references/detailed-guide.md +1114 -0
- package/bundled-skills/agent-evaluation/SKILL.md +53 -1102
- package/bundled-skills/agent-evaluation/references/architecture-sketches.md +1112 -0
- package/bundled-skills/agent-memory/SKILL.md +6 -0
- package/bundled-skills/agent-memory-systems/SKILL.md +8 -1042
- package/bundled-skills/agent-memory-systems/references/detailed-guide.md +1088 -0
- package/bundled-skills/agent-squad/SKILL.md +1 -0
- package/bundled-skills/agent-tool-builder/SKILL.md +2 -624
- package/bundled-skills/agent-tool-builder/references/detailed-guide.md +650 -0
- package/bundled-skills/agentic-actions-auditor/SKILL.md +6 -0
- package/bundled-skills/agentmail/SKILL.md +1 -0
- package/bundled-skills/agentphone/SKILL.md +5 -1323
- package/bundled-skills/agentphone/references/detailed-guide.md +1333 -0
- package/bundled-skills/agents-v2-py/SKILL.md +23 -5
- package/bundled-skills/ai-agents-architect/SKILL.md +25 -25
- package/bundled-skills/ai-analyzer/SKILL.md +1 -0
- package/bundled-skills/ai-md/SKILL.md +25 -0
- package/bundled-skills/ai-md/references/detailed-guide.md +512 -0
- package/bundled-skills/ai-product/SKILL.md +2 -726
- package/bundled-skills/ai-product/references/detailed-guide.md +746 -0
- package/bundled-skills/ai-wrapper-product/SKILL.md +2 -641
- package/bundled-skills/ai-wrapper-product/references/detailed-guide.md +659 -0
- package/bundled-skills/airtable-automation/SKILL.md +6 -0
- package/bundled-skills/algolia-search/SKILL.md +2 -893
- package/bundled-skills/algolia-search/references/detailed-guide.md +901 -0
- package/bundled-skills/alpha-vantage/SKILL.md +1 -0
- package/bundled-skills/alternatives-pages/SKILL.md +7 -1
- package/bundled-skills/amazon-alexa/SKILL.md +2 -627
- package/bundled-skills/amazon-alexa/references/detailed-guide.md +644 -0
- package/bundled-skills/analytics/SKILL.md +1 -1
- package/bundled-skills/analytics-product/SKILL.md +57 -44
- package/bundled-skills/analytics-tracking/SKILL.md +21 -12
- package/bundled-skills/analyze-project/SKILL.md +1 -0
- package/bundled-skills/android-dev/SKILL.md +2 -490
- package/bundled-skills/android-dev/references/detailed-guide.md +506 -0
- package/bundled-skills/angular/SKILL.md +4 -783
- package/bundled-skills/angular/references/detailed-guide.md +801 -0
- package/bundled-skills/angular-best-practices/SKILL.md +4 -535
- package/bundled-skills/angular-best-practices/references/detailed-guide.md +549 -0
- package/bundled-skills/angular-state-management/SKILL.md +4 -608
- package/bundled-skills/angular-state-management/references/detailed-guide.md +618 -0
- package/bundled-skills/angular-ui-patterns/SKILL.md +2 -498
- package/bundled-skills/angular-ui-patterns/references/detailed-guide.md +513 -0
- package/bundled-skills/animejs-animation/SKILL.md +6 -0
- package/bundled-skills/anti-deception/SKILL.md +7 -1
- package/bundled-skills/antigravity-design-expert/SKILL.md +6 -0
- package/bundled-skills/antigravity-maintainer-batch-release/SKILL.md +7 -0
- package/bundled-skills/antigravity-workflows/SKILL.md +20 -3
- package/bundled-skills/antigravity-workflows/references/workflow-cards.md +78 -0
- package/bundled-skills/api-analyzer/SKILL.md +1 -1
- package/bundled-skills/api-designer/SKILL.md +1 -1
- package/bundled-skills/api-integration/SKILL.md +1 -1
- package/bundled-skills/api-onboarding/SKILL.md +1 -1
- package/bundled-skills/api-patterns/SKILL.md +19 -8
- package/bundled-skills/api-patterns/api-style.md +2 -2
- package/bundled-skills/api-patterns/auth.md +3 -2
- package/bundled-skills/api-patterns/graphql.md +1 -1
- package/bundled-skills/api-patterns/scripts/api_validator.py +9 -7
- package/bundled-skills/api-patterns/trpc.md +2 -2
- package/bundled-skills/api-patterns/versioning.md +1 -1
- package/bundled-skills/api-sdk-generator/SKILL.md +1 -1
- package/bundled-skills/api-security-best-practices/SKILL.md +179 -879
- package/bundled-skills/apify-actor-development/SKILL.md +1 -0
- package/bundled-skills/apify-actorization/SKILL.md +1 -0
- package/bundled-skills/apify-audience-analysis/SKILL.md +1 -0
- package/bundled-skills/apify-brand-reputation-monitoring/SKILL.md +1 -0
- package/bundled-skills/apify-competitor-intelligence/SKILL.md +1 -0
- package/bundled-skills/apify-content-analytics/SKILL.md +1 -0
- package/bundled-skills/apify-ecommerce/SKILL.md +1 -0
- package/bundled-skills/apify-influencer-discovery/SKILL.md +1 -0
- package/bundled-skills/apify-lead-generation/SKILL.md +1 -0
- package/bundled-skills/apify-market-research/SKILL.md +1 -0
- package/bundled-skills/apify-trend-analysis/SKILL.md +1 -0
- package/bundled-skills/apify-ultimate-scraper/SKILL.md +1 -0
- package/bundled-skills/appium-skill/SKILL.md +1 -1
- package/bundled-skills/apple-notes-search/SKILL.md +6 -0
- package/bundled-skills/application-performance-performance-optimization/SKILL.md +6 -0
- package/bundled-skills/applicationinsights-web-ts/SKILL.md +1 -1
- package/bundled-skills/ask-matt/SKILL.md +5 -0
- package/bundled-skills/ask-questions-if-underspecified/SKILL.md +1 -0
- package/bundled-skills/astropy/SKILL.md +1 -0
- package/bundled-skills/atlas-contract/SKILL.md +117 -0
- package/bundled-skills/atlas-contract/references/detailed-guide.md +572 -0
- package/bundled-skills/audio-transcriber/SKILL.md +2 -425
- package/bundled-skills/audio-transcriber/references/detailed-guide.md +430 -0
- package/bundled-skills/audit-context-building/SKILL.md +1 -0
- package/bundled-skills/auri-core/SKILL.md +5 -562
- package/bundled-skills/auri-core/references/detailed-guide.md +623 -0
- package/bundled-skills/auth-implementation-patterns/SKILL.md +14 -4
- package/bundled-skills/auth-implementation-patterns/resources/implementation-playbook.md +72 -180
- package/bundled-skills/automated-triage/SKILL.md +6 -0
- package/bundled-skills/autonomous-agent-patterns/SKILL.md +4 -741
- package/bundled-skills/autonomous-agent-patterns/references/detailed-guide.md +751 -0
- package/bundled-skills/autonomous-agents/SKILL.md +8 -1010
- package/bundled-skills/autonomous-agents/references/detailed-guide.md +1065 -0
- package/bundled-skills/awareness-stage-mapper/SKILL.md +6 -0
- package/bundled-skills/aws-agentic-ai/SKILL.md +7 -1
- package/bundled-skills/aws-cdk-development/SKILL.md +1 -1
- package/bundled-skills/aws-cost-operations/SKILL.md +1 -1
- package/bundled-skills/aws-mcp-setup/SKILL.md +1 -1
- package/bundled-skills/aws-serverless/SKILL.md +2 -1305
- package/bundled-skills/aws-serverless/references/detailed-guide.md +1340 -0
- package/bundled-skills/aws-serverless-eda/SKILL.md +1 -1
- package/bundled-skills/aws-skills/SKILL.md +6 -0
- package/bundled-skills/aws-sst-development/SKILL.md +7 -1
- package/bundled-skills/awt-e2e-testing/SKILL.md +7 -0
- package/bundled-skills/azure-functions/SKILL.md +2 -1321
- package/bundled-skills/azure-functions/references/detailed-guide.md +1356 -0
- package/bundled-skills/azure-maps-search-dotnet/SKILL.md +2 -482
- package/bundled-skills/azure-maps-search-dotnet/references/detailed-guide.md +496 -0
- package/bundled-skills/azure-search-documents-py/SKILL.md +2 -515
- package/bundled-skills/azure-search-documents-py/references/detailed-guide.md +548 -0
- package/bundled-skills/azure-storage-file-share-ts/SKILL.md +2 -481
- package/bundled-skills/azure-storage-file-share-ts/references/detailed-guide.md +500 -0
- package/bundled-skills/azure-storage-queue-ts/SKILL.md +2 -512
- package/bundled-skills/azure-storage-queue-ts/references/detailed-guide.md +530 -0
- package/bundled-skills/backend-development-feature-development/SKILL.md +6 -0
- package/bundled-skills/basecamp-automation/SKILL.md +6 -0
- package/bundled-skills/baseline-ui/SKILL.md +6 -0
- package/bundled-skills/bash-pro/SKILL.md +6 -0
- package/bundled-skills/bdi-mental-states/SKILL.md +1 -0
- package/bundled-skills/beautiful-prose/SKILL.md +1 -0
- package/bundled-skills/bill-gates/SKILL.md +2 -778
- package/bundled-skills/bill-gates/references/detailed-guide.md +784 -0
- package/bundled-skills/biopython/SKILL.md +1 -0
- package/bundled-skills/bitbucket-automation/SKILL.md +6 -0
- package/bundled-skills/blog-writing-guide/SKILL.md +6 -0
- package/bundled-skills/box-automation/SKILL.md +6 -0
- package/bundled-skills/brain-to-docs/SKILL.md +6 -0
- package/bundled-skills/brainstorming/SKILL.md +6 -0
- package/bundled-skills/brand-guidelines/SKILL.md +1 -0
- package/bundled-skills/brand-guidelines-anthropic/SKILL.md +23 -8
- package/bundled-skills/brand-guidelines-community/SKILL.md +23 -8
- package/bundled-skills/brand-perception-psychologist/SKILL.md +6 -0
- package/bundled-skills/brooks-audit/SKILL.md +1 -1
- package/bundled-skills/brooks-debt/SKILL.md +1 -1
- package/bundled-skills/brooks-harness/SKILL.md +1 -1
- package/bundled-skills/brooks-review/SKILL.md +7 -1
- package/bundled-skills/brooks-sweep/SKILL.md +1 -1
- package/bundled-skills/brooks-test/SKILL.md +1 -1
- package/bundled-skills/browser-automation/SKILL.md +18 -1044
- package/bundled-skills/browser-automation/references/detailed-guide.md +852 -0
- package/bundled-skills/bug-hunt-swarm/SKILL.md +7 -1
- package/bundled-skills/build/SKILL.md +5 -627
- package/bundled-skills/build/references/detailed-guide.md +637 -0
- package/bundled-skills/bun-development/SKILL.md +4 -678
- package/bundled-skills/bun-development/references/detailed-guide.md +691 -0
- package/bundled-skills/burpsuite-project-parser/SKILL.md +1 -0
- package/bundled-skills/c-pro/SKILL.md +6 -0
- package/bundled-skills/calendly-automation/SKILL.md +6 -0
- package/bundled-skills/cc-skill-backend-patterns/SKILL.md +2 -572
- package/bundled-skills/cc-skill-backend-patterns/references/detailed-guide.md +584 -0
- package/bundled-skills/cc-skill-coding-standards/SKILL.md +2 -510
- package/bundled-skills/cc-skill-coding-standards/references/detailed-guide.md +523 -0
- package/bundled-skills/cc-skill-continuous-learning/SKILL.md +49 -7
- package/bundled-skills/cc-skill-continuous-learning/config.json +1 -16
- package/bundled-skills/cc-skill-continuous-learning/evaluate-session.sh +56 -59
- package/bundled-skills/cc-skill-frontend-patterns/SKILL.md +2 -621
- package/bundled-skills/cc-skill-frontend-patterns/references/detailed-guide.md +633 -0
- package/bundled-skills/cc-skill-security-review/SKILL.md +4 -36
- package/bundled-skills/cc-skill-security-review/references/detailed-guide.md +40 -0
- package/bundled-skills/cc-skill-strategic-compact/SKILL.md +53 -7
- package/bundled-skills/cc-skill-strategic-compact/suggest-compact.sh +20 -51
- package/bundled-skills/changelog-updates/SKILL.md +6 -528
- package/bundled-skills/changelog-updates/references/detailed-guide.md +540 -0
- package/bundled-skills/chat-widget/SKILL.md +5 -879
- package/bundled-skills/chat-widget/references/detailed-guide.md +890 -0
- package/bundled-skills/cirq/SKILL.md +1 -0
- package/bundled-skills/citation-management/SKILL.md +3 -960
- package/bundled-skills/citation-management/references/detailed-guide.md +975 -0
- package/bundled-skills/ckw-design/SKILL.md +6 -0
- package/bundled-skills/claimable-postgres/SKILL.md +1 -1
- package/bundled-skills/clarity-gate/SKILL.md +3 -635
- package/bundled-skills/clarity-gate/references/detailed-guide.md +653 -0
- package/bundled-skills/claude-ally-health/SKILL.md +6 -0
- package/bundled-skills/claude-code-expert/SKILL.md +2 -527
- package/bundled-skills/claude-code-expert/references/detailed-guide.md +548 -0
- package/bundled-skills/claude-d3js-skill/SKILL.md +2 -798
- package/bundled-skills/claude-d3js-skill/references/detailed-guide.md +811 -0
- package/bundled-skills/claude-in-chrome-troubleshooting/SKILL.md +1 -0
- package/bundled-skills/claude-scientific-skills/SKILL.md +6 -0
- package/bundled-skills/claude-settings-audit/SKILL.md +1 -0
- package/bundled-skills/claude-speed-reader/SKILL.md +6 -0
- package/bundled-skills/claude-win11-speckit-update-skill/SKILL.md +6 -0
- package/bundled-skills/clean-code/SKILL.md +6 -0
- package/bundled-skills/clerk-auth/SKILL.md +2 -812
- package/bundled-skills/clerk-auth/references/detailed-guide.md +820 -0
- package/bundled-skills/clickup-automation/SKILL.md +6 -0
- package/bundled-skills/closed-loop-delivery/SKILL.md +6 -0
- package/bundled-skills/co-marketing/SKILL.md +1 -1
- package/bundled-skills/code-documentation-doc-generate/SKILL.md +16 -1
- package/bundled-skills/code-documentation-doc-generate/resources/implementation-playbook.md +33 -55
- package/bundled-skills/code-refactoring-context-restore/SKILL.md +40 -177
- package/bundled-skills/code-refactoring-tech-debt/SKILL.md +20 -9
- package/bundled-skills/code-simplifier/SKILL.md +1 -0
- package/bundled-skills/codebase-cleanup-tech-debt/SKILL.md +20 -9
- package/bundled-skills/cold-email/SKILL.md +6 -0
- package/bundled-skills/commit/SKILL.md +1 -0
- package/bundled-skills/community-building/SKILL.md +1 -1
- package/bundled-skills/competitor-alternatives/SKILL.md +2 -740
- package/bundled-skills/competitor-alternatives/references/detailed-guide.md +756 -0
- package/bundled-skills/competitor-profiling/SKILL.md +1 -1
- package/bundled-skills/competitor-tracking/SKILL.md +1 -1
- package/bundled-skills/comprehensive-review-full-review/SKILL.md +6 -0
- package/bundled-skills/comprehensive-review-pr-enhance/SKILL.md +1 -0
- package/bundled-skills/computer-use-agents/SKILL.md +2 -2131
- package/bundled-skills/computer-use-agents/references/detailed-guide.md +2158 -0
- package/bundled-skills/computer-vision-expert/SKILL.md +6 -0
- package/bundled-skills/conductor-setup/SKILL.md +1 -0
- package/bundled-skills/confluence-automation/SKILL.md +6 -0
- package/bundled-skills/constant-time-analysis/SKILL.md +1 -0
- package/bundled-skills/container-security-hardening/SKILL.md +4 -915
- package/bundled-skills/container-security-hardening/references/detailed-guide.md +927 -0
- package/bundled-skills/content-creator/SKILL.md +53 -23
- package/bundled-skills/content-creator/assets/content_calendar_template.md +5 -2
- package/bundled-skills/content-creator/references/brand_guidelines.md +7 -3
- package/bundled-skills/content-creator/references/content_frameworks.md +12 -7
- package/bundled-skills/content-creator/references/social_media_optimization.md +61 -317
- package/bundled-skills/content-creator/scripts/brand_voice_analyzer.py +14 -9
- package/bundled-skills/content-creator/scripts/seo_optimizer.py +31 -94
- package/bundled-skills/context-compression/SKILL.md +1 -0
- package/bundled-skills/context-degradation/SKILL.md +1 -0
- package/bundled-skills/context-fundamentals/SKILL.md +1 -0
- package/bundled-skills/context-management-context-restore/SKILL.md +40 -177
- package/bundled-skills/context-optimization/SKILL.md +1 -0
- package/bundled-skills/convex/SKILL.md +4 -766
- package/bundled-skills/convex/references/detailed-guide.md +772 -0
- package/bundled-skills/copilot-sdk/SKILL.md +4 -496
- package/bundled-skills/copilot-sdk/references/detailed-guide.md +516 -0
- package/bundled-skills/copy-editing/SKILL.md +6 -0
- package/bundled-skills/copywriting/SKILL.md +6 -0
- package/bundled-skills/copywriting-psychologist/SKILL.md +6 -0
- package/bundled-skills/create-branch/SKILL.md +1 -0
- package/bundled-skills/create-pr/SKILL.md +7 -0
- package/bundled-skills/cred-omega/SKILL.md +2 -847
- package/bundled-skills/cred-omega/references/detailed-guide.md +872 -0
- package/bundled-skills/cro/SKILL.md +1 -1
- package/bundled-skills/csharp-pro/SKILL.md +6 -0
- package/bundled-skills/cucumber-skill/SKILL.md +1 -1
- package/bundled-skills/customer-psychographic-profiler/SKILL.md +6 -0
- package/bundled-skills/customer-research/SKILL.md +1 -1
- package/bundled-skills/cv-generator/SKILL.md +4 -828
- package/bundled-skills/cv-generator/references/detailed-guide.md +845 -0
- package/bundled-skills/cypress-skill/SKILL.md +1 -1
- package/bundled-skills/daily-gift/SKILL.md +6 -0
- package/bundled-skills/debug-buttercup/SKILL.md +1 -0
- package/bundled-skills/debugger/SKILL.md +6 -0
- package/bundled-skills/debugging-code/SKILL.md +1 -1
- package/bundled-skills/deepapi/SKILL.md +4 -619
- package/bundled-skills/deepapi/references/detailed-guide.md +627 -0
- package/bundled-skills/delegating-to-agents/SKILL.md +6 -0
- package/bundled-skills/deployment-validation-config-validate/SKILL.md +4 -478
- package/bundled-skills/deployment-validation-config-validate/references/detailed-guide.md +484 -0
- package/bundled-skills/design-it/SKILL.md +6 -0
- package/bundled-skills/design-orchestration/SKILL.md +6 -0
- package/bundled-skills/design-spells/SKILL.md +6 -0
- package/bundled-skills/design-system/SKILL.md +7 -1
- package/bundled-skills/design-taste-frontend/SKILL.md +6 -0
- package/bundled-skills/design-thinking/SKILL.md +6 -0
- package/bundled-skills/design-ux/SKILL.md +7 -1
- package/bundled-skills/deterministic-design/SKILL.md +6 -0
- package/bundled-skills/developer-advocacy/SKILL.md +1 -1
- package/bundled-skills/developer-audience-context/SKILL.md +1 -1
- package/bundled-skills/developer-churn/SKILL.md +5 -625
- package/bundled-skills/developer-churn/references/detailed-guide.md +639 -0
- package/bundled-skills/developer-listening/SKILL.md +7 -1
- package/bundled-skills/developer-onboarding/SKILL.md +6 -474
- package/bundled-skills/developer-onboarding/references/detailed-guide.md +486 -0
- package/bundled-skills/developer-sandbox/SKILL.md +6 -414
- package/bundled-skills/developer-sandbox/references/detailed-guide.md +425 -0
- package/bundled-skills/developer-seo/SKILL.md +1 -1
- package/bundled-skills/developer-signup-flow/SKILL.md +1 -1
- package/bundled-skills/devrel-content/SKILL.md +1 -1
- package/bundled-skills/diagnosing-bugs/SKILL.md +5 -0
- package/bundled-skills/diary/SKILL.md +1 -0
- package/bundled-skills/differential-review/SKILL.md +1 -0
- package/bundled-skills/discord-automation/SKILL.md +6 -0
- package/bundled-skills/discord-bot-architect/SKILL.md +2 -1434
- package/bundled-skills/discord-bot-architect/references/detailed-guide.md +1465 -0
- package/bundled-skills/django-access-review/SKILL.md +1 -0
- package/bundled-skills/django-perf-review/SKILL.md +1 -0
- package/bundled-skills/doc-coauthoring/SKILL.md +6 -0
- package/bundled-skills/docs-architect/SKILL.md +6 -0
- package/bundled-skills/docs-as-marketing/SKILL.md +1 -1
- package/bundled-skills/documentation-generation-doc-generate/SKILL.md +16 -1
- package/bundled-skills/documentation-generation-doc-generate/resources/implementation-playbook.md +33 -55
- package/bundled-skills/doubt-driven-development/SKILL.md +1 -1
- package/bundled-skills/dropbox-automation/SKILL.md +6 -0
- package/bundled-skills/dwarf-expert/SKILL.md +1 -0
- package/bundled-skills/dx-optimizer/SKILL.md +6 -0
- package/bundled-skills/e2e-testing-patterns/SKILL.md +14 -4
- package/bundled-skills/e2e-testing-patterns/resources/implementation-playbook.md +22 -41
- package/bundled-skills/eas-update-insights/SKILL.md +1 -1
- package/bundled-skills/ecl-harness-engineer/SKILL.md +4 -681
- package/bundled-skills/ecl-harness-engineer/references/detailed-guide.md +691 -0
- package/bundled-skills/efficient-web-research/SKILL.md +1 -0
- package/bundled-skills/electron-development/SKILL.md +4 -820
- package/bundled-skills/electron-development/references/detailed-guide.md +828 -0
- package/bundled-skills/elixir-pro/SKILL.md +6 -0
- package/bundled-skills/elon-musk/SKILL.md +5 -1278
- package/bundled-skills/elon-musk/references/detailed-guide.md +1293 -0
- package/bundled-skills/email-sequence/SKILL.md +2 -915
- package/bundled-skills/email-sequence/references/detailed-guide.md +932 -0
- package/bundled-skills/email-systems/SKILL.md +2 -654
- package/bundled-skills/email-systems/references/detailed-guide.md +669 -0
- package/bundled-skills/emergency-card/SKILL.md +1 -0
- package/bundled-skills/emil-design-eng/SKILL.md +4 -673
- package/bundled-skills/emil-design-eng/references/detailed-guide.md +690 -0
- package/bundled-skills/emotional-arc-designer/SKILL.md +6 -0
- package/bundled-skills/enhance-prompt/SKILL.md +1 -0
- package/bundled-skills/error-debugging-error-analysis/SKILL.md +15 -0
- package/bundled-skills/error-debugging-error-analysis/resources/implementation-playbook.md +122 -1125
- package/bundled-skills/error-debugging-multi-agent-review/SKILL.md +42 -214
- package/bundled-skills/error-detective/SKILL.md +6 -0
- package/bundled-skills/error-diagnostics-error-analysis/SKILL.md +15 -0
- package/bundled-skills/error-diagnostics-error-analysis/resources/implementation-playbook.md +122 -1125
- package/bundled-skills/event-sourcing-architect/SKILL.md +6 -0
- package/bundled-skills/event-staffing-compliance/SKILL.md +6 -0
- package/bundled-skills/event-staffing-ordering/SKILL.md +6 -0
- package/bundled-skills/evolution/SKILL.md +1 -0
- package/bundled-skills/executing-plans/SKILL.md +6 -0
- package/bundled-skills/explain-like-socrates/SKILL.md +6 -0
- package/bundled-skills/expo-deployment/SKILL.md +1 -1
- package/bundled-skills/expo-examples/SKILL.md +1 -1
- package/bundled-skills/expo-module/SKILL.md +1 -1
- package/bundled-skills/expo-observe/SKILL.md +1 -1
- package/bundled-skills/expo-ui/SKILL.md +1 -1
- package/bundled-skills/expo-ui-jetpack-compose/SKILL.md +1 -0
- package/bundled-skills/expo-ui-swift-ui/SKILL.md +1 -0
- package/bundled-skills/fable-safe-prompt/SKILL.md +6 -0
- package/bundled-skills/fal-audio/SKILL.md +6 -0
- package/bundled-skills/fal-generate/SKILL.md +6 -0
- package/bundled-skills/fal-image-edit/SKILL.md +6 -0
- package/bundled-skills/fal-platform/SKILL.md +6 -0
- package/bundled-skills/fal-upscale/SKILL.md +6 -0
- package/bundled-skills/fal-workflow/SKILL.md +6 -0
- package/bundled-skills/family-health-analyzer/SKILL.md +1 -0
- package/bundled-skills/favicon/SKILL.md +1 -0
- package/bundled-skills/fda-food-safety-auditor/SKILL.md +1 -0
- package/bundled-skills/fda-medtech-compliance-auditor/SKILL.md +1 -0
- package/bundled-skills/ffuf-claude-skill/SKILL.md +6 -0
- package/bundled-skills/ffuf-web-fuzzing/SKILL.md +5 -492
- package/bundled-skills/ffuf-web-fuzzing/references/detailed-guide.md +510 -0
- package/bundled-skills/file-organizer/SKILL.md +6 -0
- package/bundled-skills/file-uploads/SKILL.md +6 -0
- package/bundled-skills/filesystem-context/SKILL.md +1 -0
- package/bundled-skills/find-bugs/SKILL.md +7 -0
- package/bundled-skills/firebase/SKILL.md +8 -651
- package/bundled-skills/firebase/references/detailed-guide.md +662 -0
- package/bundled-skills/fitness-analyzer/SKILL.md +1 -0
- package/bundled-skills/fix-review/SKILL.md +6 -0
- package/bundled-skills/fixing-metadata/SKILL.md +7 -1
- package/bundled-skills/food-database-query/SKILL.md +5 -772
- package/bundled-skills/food-database-query/references/detailed-guide.md +785 -0
- package/bundled-skills/form-cro/SKILL.md +6 -0
- package/bundled-skills/fp-async/SKILL.md +5 -716
- package/bundled-skills/fp-async/references/detailed-guide.md +726 -0
- package/bundled-skills/fp-backend/SKILL.md +5 -1313
- package/bundled-skills/fp-backend/references/detailed-guide.md +1323 -0
- package/bundled-skills/fp-data-transforms/SKILL.md +5 -1181
- package/bundled-skills/fp-data-transforms/references/detailed-guide.md +1190 -0
- package/bundled-skills/fp-either-ref/SKILL.md +1 -0
- package/bundled-skills/fp-errors/SKILL.md +5 -835
- package/bundled-skills/fp-errors/references/detailed-guide.md +846 -0
- package/bundled-skills/fp-option-ref/SKILL.md +1 -0
- package/bundled-skills/fp-pipe-ref/SKILL.md +1 -0
- package/bundled-skills/fp-pragmatic/SKILL.md +5 -500
- package/bundled-skills/fp-pragmatic/references/detailed-guide.md +510 -0
- package/bundled-skills/fp-react/SKILL.md +3 -761
- package/bundled-skills/fp-react/references/detailed-guide.md +775 -0
- package/bundled-skills/fp-refactor/SKILL.md +5 -1761
- package/bundled-skills/fp-refactor/references/detailed-guide.md +1775 -0
- package/bundled-skills/fp-taskeither-ref/SKILL.md +1 -0
- package/bundled-skills/fp-ts-errors/SKILL.md +4 -835
- package/bundled-skills/fp-ts-errors/references/detailed-guide.md +846 -0
- package/bundled-skills/fp-ts-pragmatic/SKILL.md +4 -500
- package/bundled-skills/fp-ts-pragmatic/references/detailed-guide.md +510 -0
- package/bundled-skills/fp-ts-react/SKILL.md +4 -763
- package/bundled-skills/fp-ts-react/references/detailed-guide.md +775 -0
- package/bundled-skills/fp-types-ref/SKILL.md +1 -0
- package/bundled-skills/framework-migration-legacy-modernize/SKILL.md +6 -0
- package/bundled-skills/free-tool-strategy/SKILL.md +2 -532
- package/bundled-skills/free-tool-strategy/references/detailed-guide.md +550 -0
- package/bundled-skills/freshdesk-automation/SKILL.md +6 -0
- package/bundled-skills/frontend-architecture/SKILL.md +1 -1
- package/bundled-skills/frontend-data-contracts/SKILL.md +1 -1
- package/bundled-skills/frontend-design/SKILL.md +33 -34
- package/bundled-skills/frontend-observability/SKILL.md +1 -1
- package/bundled-skills/frontend-optimistic-mutations/SKILL.md +1 -1
- package/bundled-skills/frontend-seo/SKILL.md +6 -675
- package/bundled-skills/frontend-seo/references/detailed-guide.md +688 -0
- package/bundled-skills/frontend-slides-frontend-slides/SKILL.md +7 -1
- package/bundled-skills/frontend-ui-dark-ts/SKILL.md +2 -561
- package/bundled-skills/frontend-ui-dark-ts/references/detailed-guide.md +573 -0
- package/bundled-skills/full-stack-orchestration-full-stack-feature/SKILL.md +6 -0
- package/bundled-skills/game-development/2d-games/SKILL.md +6 -0
- package/bundled-skills/game-development/mobile-games/SKILL.md +6 -0
- package/bundled-skills/game-development/vr-ar/SKILL.md +6 -0
- package/bundled-skills/gcp-cloud-run/SKILL.md +2 -1303
- package/bundled-skills/gcp-cloud-run/references/detailed-guide.md +1350 -0
- package/bundled-skills/gemini-api-dev/SKILL.md +1 -1
- package/bundled-skills/gemini-live-api-dev/SKILL.md +1 -1
- package/bundled-skills/gemini-omni-flash-api/SKILL.md +1 -1
- package/bundled-skills/geo-fundamentals/SKILL.md +6 -0
- package/bundled-skills/geoffrey-hinton/SKILL.md +5 -1235
- package/bundled-skills/geoffrey-hinton/references/detailed-guide.md +1324 -0
- package/bundled-skills/gh-review-requests/SKILL.md +1 -0
- package/bundled-skills/github-actions-advanced/SKILL.md +4 -971
- package/bundled-skills/github-actions-advanced/references/detailed-guide.md +991 -0
- package/bundled-skills/github-automation/SKILL.md +6 -0
- package/bundled-skills/github-workflow-automation/SKILL.md +4 -826
- package/bundled-skills/github-workflow-automation/references/detailed-guide.md +832 -0
- package/bundled-skills/gitlab-automation/SKILL.md +6 -0
- package/bundled-skills/gmail-automation/SKILL.md +1 -0
- package/bundled-skills/go-rod-master/SKILL.md +2 -496
- package/bundled-skills/go-rod-master/references/detailed-guide.md +508 -0
- package/bundled-skills/goal-analyzer/SKILL.md +5 -596
- package/bundled-skills/goal-analyzer/references/detailed-guide.md +602 -0
- package/bundled-skills/google-calendar-automation/SKILL.md +1 -0
- package/bundled-skills/google-docs-automation/SKILL.md +1 -0
- package/bundled-skills/google-drive-automation/SKILL.md +1 -0
- package/bundled-skills/google-sheets-automation/SKILL.md +1 -0
- package/bundled-skills/google-slides-automation/SKILL.md +1 -0
- package/bundled-skills/googlesheets-automation/SKILL.md +6 -0
- package/bundled-skills/gpt-taste/SKILL.md +6 -0
- package/bundled-skills/graphql/SKILL.md +8 -1031
- package/bundled-skills/graphql/references/detailed-guide.md +1044 -0
- package/bundled-skills/grill-me/SKILL.md +5 -0
- package/bundled-skills/grill-with-docs/SKILL.md +5 -0
- package/bundled-skills/grilling/SKILL.md +5 -0
- package/bundled-skills/growth-engine/SKILL.md +6 -0
- package/bundled-skills/handoff/SKILL.md +5 -0
- package/bundled-skills/haskell-pro/SKILL.md +6 -0
- package/bundled-skills/headline-psychologist/SKILL.md +6 -0
- package/bundled-skills/health-trend-analyzer/SKILL.md +1 -0
- package/bundled-skills/hig-components-content/SKILL.md +6 -0
- package/bundled-skills/hig-components-controls/SKILL.md +6 -0
- package/bundled-skills/hig-components-dialogs/SKILL.md +6 -0
- package/bundled-skills/hig-components-layout/SKILL.md +6 -0
- package/bundled-skills/hig-components-menus/SKILL.md +6 -0
- package/bundled-skills/hig-components-search/SKILL.md +6 -0
- package/bundled-skills/hig-components-status/SKILL.md +6 -0
- package/bundled-skills/hig-components-system/SKILL.md +6 -0
- package/bundled-skills/hig-foundations/SKILL.md +6 -0
- package/bundled-skills/hig-inputs/SKILL.md +6 -0
- package/bundled-skills/hig-patterns/SKILL.md +6 -0
- package/bundled-skills/hig-platforms/SKILL.md +6 -0
- package/bundled-skills/hig-technologies/SKILL.md +6 -0
- package/bundled-skills/high-end-visual-design/SKILL.md +6 -0
- package/bundled-skills/hosted-agents/SKILL.md +7 -0
- package/bundled-skills/hosted-agents-v2-py/SKILL.md +23 -5
- package/bundled-skills/html-injection-testing/SKILL.md +2 -453
- package/bundled-skills/html-injection-testing/references/detailed-guide.md +462 -0
- package/bundled-skills/hubspot-automation/SKILL.md +6 -0
- package/bundled-skills/hubspot-integration/SKILL.md +8 -807
- package/bundled-skills/hubspot-integration/references/detailed-guide.md +815 -0
- package/bundled-skills/hugging-face-cli/SKILL.md +7 -1
- package/bundled-skills/hugging-face-community-evals/SKILL.md +1 -1
- package/bundled-skills/hugging-face-datasets/SKILL.md +5 -430
- package/bundled-skills/hugging-face-datasets/references/detailed-guide.md +442 -0
- package/bundled-skills/hugging-face-evaluation/SKILL.md +5 -640
- package/bundled-skills/hugging-face-evaluation/references/detailed-guide.md +652 -0
- package/bundled-skills/hugging-face-jobs/SKILL.md +3 -801
- package/bundled-skills/hugging-face-jobs/references/detailed-guide.md +821 -0
- package/bundled-skills/hugging-face-model-trainer/SKILL.md +3 -681
- package/bundled-skills/hugging-face-model-trainer/references/detailed-guide.md +702 -0
- package/bundled-skills/hugging-face-paper-publisher/SKILL.md +5 -617
- package/bundled-skills/hugging-face-paper-publisher/references/detailed-guide.md +624 -0
- package/bundled-skills/hugging-face-papers/SKILL.md +1 -1
- package/bundled-skills/hugging-face-tool-builder/SKILL.md +1 -0
- package/bundled-skills/hugging-face-trackio/SKILL.md +1 -1
- package/bundled-skills/hugging-face-vision-trainer/SKILL.md +5 -534
- package/bundled-skills/hugging-face-vision-trainer/references/detailed-guide.md +549 -0
- package/bundled-skills/huggingface-best/SKILL.md +1 -1
- package/bundled-skills/huggingface-lora-space-builder/SKILL.md +1 -1
- package/bundled-skills/huggingface-spaces/SKILL.md +1 -1
- package/bundled-skills/huggingface-tool-builder/SKILL.md +1 -1
- package/bundled-skills/huggingface-zerogpu/SKILL.md +1 -1
- package/bundled-skills/hugo-to-markdown/SKILL.md +1 -1
- package/bundled-skills/hyperexecute-skill/SKILL.md +7 -1
- package/bundled-skills/iconsax-library/SKILL.md +6 -0
- package/bundled-skills/idea-refine/SKILL.md +1 -1
- package/bundled-skills/identity-mirror/SKILL.md +6 -0
- package/bundled-skills/ilya-sutskever/SKILL.md +2 -1126
- package/bundled-skills/ilya-sutskever/references/detailed-guide.md +1167 -0
- package/bundled-skills/image-generator/SKILL.md +4 -320
- package/bundled-skills/image-generator/references/detailed-guide.md +332 -0
- package/bundled-skills/implement/SKILL.md +6 -0
- package/bundled-skills/incident-responder/SKILL.md +6 -0
- package/bundled-skills/incident-response-incident-response/SKILL.md +6 -0
- package/bundled-skills/industrial-brutalist-ui/SKILL.md +6 -0
- package/bundled-skills/interactive-portfolio/SKILL.md +2 -482
- package/bundled-skills/interactive-portfolio/references/detailed-guide.md +500 -0
- package/bundled-skills/internal-comms/SKILL.md +20 -1
- package/bundled-skills/internal-comms/examples/3p-updates.md +5 -4
- package/bundled-skills/internal-comms/examples/company-newsletter.md +3 -2
- package/bundled-skills/internal-comms/examples/faq-answers.md +1 -0
- package/bundled-skills/internal-comms/examples/general-comms.md +1 -0
- package/bundled-skills/internal-comms-anthropic/SKILL.md +21 -2
- package/bundled-skills/internal-comms-anthropic/examples/3p-updates.md +5 -4
- package/bundled-skills/internal-comms-anthropic/examples/company-newsletter.md +3 -2
- package/bundled-skills/internal-comms-anthropic/examples/faq-answers.md +1 -0
- package/bundled-skills/internal-comms-anthropic/examples/general-comms.md +1 -0
- package/bundled-skills/internal-comms-community/SKILL.md +21 -2
- package/bundled-skills/internal-comms-community/examples/3p-updates.md +48 -0
- package/bundled-skills/internal-comms-community/examples/company-newsletter.md +66 -0
- package/bundled-skills/internal-comms-community/examples/faq-answers.md +31 -0
- package/bundled-skills/internal-comms-community/examples/general-comms.md +17 -0
- package/bundled-skills/ios-debugger-agent/SKILL.md +6 -0
- package/bundled-skills/issues/SKILL.md +1 -0
- package/bundled-skills/iterate-pr/SKILL.md +1 -0
- package/bundled-skills/javascript-mastery/SKILL.md +4 -625
- package/bundled-skills/javascript-mastery/references/detailed-guide.md +636 -0
- package/bundled-skills/javascript-pro/SKILL.md +6 -0
- package/bundled-skills/jest-skill/SKILL.md +1 -1
- package/bundled-skills/jira-automation/SKILL.md +6 -0
- package/bundled-skills/jobs-to-be-done-analyst/SKILL.md +6 -0
- package/bundled-skills/junit-5-skill/SKILL.md +1 -1
- package/bundled-skills/k6-load-testing/SKILL.md +2 -544
- package/bundled-skills/k6-load-testing/references/detailed-guide.md +563 -0
- package/bundled-skills/kaizen/SKILL.md +2 -711
- package/bundled-skills/kaizen/references/detailed-guide.md +720 -0
- package/bundled-skills/langfuse/SKILL.md +41 -468
- package/bundled-skills/langgraph/SKILL.md +2 -445
- package/bundled-skills/langgraph/references/detailed-guide.md +455 -0
- package/bundled-skills/laravel-expert/SKILL.md +6 -0
- package/bundled-skills/launch-strategy/SKILL.md +6 -0
- package/bundled-skills/lead-magnets/SKILL.md +6 -0
- package/bundled-skills/learn/SKILL.md +5 -0
- package/bundled-skills/legacy-modernizer/SKILL.md +6 -0
- package/bundled-skills/legal-advisor/SKILL.md +6 -0
- package/bundled-skills/leiloeiro-avaliacao/SKILL.md +2 -469
- package/bundled-skills/leiloeiro-avaliacao/references/detailed-guide.md +503 -0
- package/bundled-skills/leiloeiro-edital/SKILL.md +2 -468
- package/bundled-skills/leiloeiro-edital/references/detailed-guide.md +491 -0
- package/bundled-skills/leiloeiro-mercado/SKILL.md +2 -458
- package/bundled-skills/leiloeiro-mercado/references/detailed-guide.md +488 -0
- package/bundled-skills/leiloeiro-risco/SKILL.md +2 -457
- package/bundled-skills/leiloeiro-risco/references/detailed-guide.md +482 -0
- package/bundled-skills/lesson-generator/SKILL.md +5 -0
- package/bundled-skills/lightning-architecture-review/SKILL.md +6 -0
- package/bundled-skills/lightning-channel-factories/SKILL.md +6 -0
- package/bundled-skills/lightning-factory-explainer/SKILL.md +6 -0
- package/bundled-skills/linear-claude-skill/SKILL.md +4 -502
- package/bundled-skills/linear-claude-skill/references/detailed-guide.md +517 -0
- package/bundled-skills/linkedin-cli/SKILL.md +4 -513
- package/bundled-skills/linkedin-cli/references/detailed-guide.md +520 -0
- package/bundled-skills/lint-and-validate/SKILL.md +6 -0
- package/bundled-skills/linux-privilege-escalation/SKILL.md +2 -426
- package/bundled-skills/linux-privilege-escalation/references/detailed-guide.md +436 -0
- package/bundled-skills/linux-shell-scripting/SKILL.md +2 -473
- package/bundled-skills/linux-shell-scripting/references/detailed-guide.md +481 -0
- package/bundled-skills/llm-app-patterns/SKILL.md +16 -741
- package/bundled-skills/llm-app-patterns/references/detailed-guide.md +760 -0
- package/bundled-skills/llm-council/SKILL.md +4 -550
- package/bundled-skills/llm-council/references/detailed-guide.md +556 -0
- package/bundled-skills/llm-ops/SKILL.md +6 -0
- package/bundled-skills/local-legal-seo-audit/SKILL.md +6 -0
- package/bundled-skills/logic-diff/SKILL.md +1 -1
- package/bundled-skills/logic-explain/SKILL.md +7 -1
- package/bundled-skills/logic-fix-all/SKILL.md +1 -1
- package/bundled-skills/logic-locate/SKILL.md +1 -1
- package/bundled-skills/logic-review/SKILL.md +1 -1
- package/bundled-skills/loki-mode/SKILL.md +4 -696
- package/bundled-skills/loki-mode/references/detailed-guide.md +717 -0
- package/bundled-skills/longbridge-content/SKILL.md +1 -1
- package/bundled-skills/longbridge-fundamentals/SKILL.md +1 -1
- package/bundled-skills/longbridge-market-data/SKILL.md +1 -1
- package/bundled-skills/lookdev-auto/SKILL.md +6 -0
- package/bundled-skills/loopy/SKILL.md +1 -1
- package/bundled-skills/loss-aversion-designer/SKILL.md +6 -0
- package/bundled-skills/machine-learning-ops-ml-pipeline/SKILL.md +6 -0
- package/bundled-skills/magic-animator/SKILL.md +6 -0
- package/bundled-skills/magic-ui-generator/SKILL.md +6 -0
- package/bundled-skills/mailtrap-setting-up-sending-domain/SKILL.md +6 -0
- package/bundled-skills/makepad-animation/SKILL.md +1 -0
- package/bundled-skills/makepad-basics/SKILL.md +1 -0
- package/bundled-skills/makepad-deployment/SKILL.md +1 -0
- package/bundled-skills/makepad-dsl/SKILL.md +1 -0
- package/bundled-skills/makepad-event-action/SKILL.md +1 -0
- package/bundled-skills/makepad-font/SKILL.md +1 -0
- package/bundled-skills/makepad-layout/SKILL.md +1 -0
- package/bundled-skills/makepad-platform/SKILL.md +1 -0
- package/bundled-skills/makepad-reference/SKILL.md +1 -0
- package/bundled-skills/makepad-shaders/SKILL.md +1 -0
- package/bundled-skills/makepad-skills/SKILL.md +6 -0
- package/bundled-skills/makepad-splash/SKILL.md +1 -0
- package/bundled-skills/makepad-widgets/SKILL.md +1 -0
- package/bundled-skills/manage-skills/SKILL.md +1 -0
- package/bundled-skills/marketing-plan/SKILL.md +1 -1
- package/bundled-skills/matematico-tao/SKILL.md +2 -632
- package/bundled-skills/matematico-tao/references/detailed-guide.md +651 -0
- package/bundled-skills/matplotlib/SKILL.md +1 -0
- package/bundled-skills/maxia/SKILL.md +1 -0
- package/bundled-skills/mcp-builder/SKILL.md +46 -14
- package/bundled-skills/mcp-builder/reference/evaluation.md +69 -226
- package/bundled-skills/mcp-builder/reference/mcp_best_practices.md +8 -5
- package/bundled-skills/mcp-builder/reference/node_mcp_server.md +46 -144
- package/bundled-skills/mcp-builder/reference/python_mcp_server.md +42 -80
- package/bundled-skills/mcp-builder/scripts/connections.py +18 -11
- package/bundled-skills/mcp-builder/scripts/evaluation.py +88 -95
- package/bundled-skills/mcp-builder/scripts/example_evaluation.xml +1 -1
- package/bundled-skills/mcp-builder/scripts/requirements.txt +4 -2
- package/bundled-skills/mental-health-analyzer/SKILL.md +5 -974
- package/bundled-skills/mental-health-analyzer/references/detailed-guide.md +1014 -0
- package/bundled-skills/micro-saas-launcher/SKILL.md +2 -473
- package/bundled-skills/micro-saas-launcher/references/detailed-guide.md +491 -0
- package/bundled-skills/minecraft-bukkit-pro/SKILL.md +6 -0
- package/bundled-skills/minimalist-ui/SKILL.md +6 -0
- package/bundled-skills/moatmri/SKILL.md +6 -0
- package/bundled-skills/molykit/SKILL.md +1 -0
- package/bundled-skills/monday-automation/SKILL.md +6 -0
- package/bundled-skills/monopoly/SKILL.md +1 -0
- package/bundled-skills/monopoly/patterns/SKILL.md +1 -0
- package/bundled-skills/monopoly/scale-benchmarks/SKILL.md +1 -0
- package/bundled-skills/monopoly/security-checklist/SKILL.md +6 -0
- package/bundled-skills/monopoly/tech-matrix/SKILL.md +1 -0
- package/bundled-skills/monorepo-architect/SKILL.md +6 -0
- package/bundled-skills/monte-carlo-analyze-root-cause/SKILL.md +1 -1
- package/bundled-skills/monte-carlo-performance-diagnosis/SKILL.md +7 -1
- package/bundled-skills/monte-carlo-validation-notebook/SKILL.md +4 -601
- package/bundled-skills/monte-carlo-validation-notebook/references/detailed-guide.md +613 -0
- package/bundled-skills/moodle-external-api-development/SKILL.md +4 -517
- package/bundled-skills/moodle-external-api-development/references/detailed-guide.md +529 -0
- package/bundled-skills/multi-agent-architect/SKILL.md +1 -0
- package/bundled-skills/multi-agent-brainstorming/SKILL.md +6 -0
- package/bundled-skills/multi-agent-patterns/SKILL.md +1 -0
- package/bundled-skills/multi-platform-apps-multi-platform/SKILL.md +6 -0
- package/bundled-skills/n8n-code-javascript/SKILL.md +3 -667
- package/bundled-skills/n8n-code-javascript/references/detailed-guide.md +683 -0
- package/bundled-skills/n8n-code-python/SKILL.md +3 -664
- package/bundled-skills/n8n-code-python/references/detailed-guide.md +682 -0
- package/bundled-skills/n8n-expression-syntax/SKILL.md +5 -401
- package/bundled-skills/n8n-expression-syntax/references/detailed-guide.md +416 -0
- package/bundled-skills/n8n-mcp-tools-expert/SKILL.md +5 -485
- package/bundled-skills/n8n-mcp-tools-expert/references/detailed-guide.md +499 -0
- package/bundled-skills/n8n-node-configuration/SKILL.md +5 -775
- package/bundled-skills/n8n-node-configuration/references/detailed-guide.md +789 -0
- package/bundled-skills/n8n-validation-expert/SKILL.md +5 -679
- package/bundled-skills/n8n-validation-expert/references/detailed-guide.md +694 -0
- package/bundled-skills/n8n-workflow-patterns/SKILL.md +1 -0
- package/bundled-skills/nanobanana-ppt-skills/SKILL.md +6 -0
- package/bundled-skills/native-data-fetching/SKILL.md +2 -456
- package/bundled-skills/native-data-fetching/references/detailed-guide.md +465 -0
- package/bundled-skills/neon-ai-gateway/SKILL.md +1 -1
- package/bundled-skills/neon-functions/SKILL.md +1 -1
- package/bundled-skills/neon-object-storage/SKILL.md +1 -1
- package/bundled-skills/neon-postgres/SKILL.md +1 -1
- package/bundled-skills/neon-postgres-branches/SKILL.md +1 -1
- package/bundled-skills/neon-postgres-egress-optimizer/SKILL.md +1 -1
- package/bundled-skills/nerdzao-elite/SKILL.md +6 -0
- package/bundled-skills/nerdzao-elite-gemini-high/SKILL.md +6 -0
- package/bundled-skills/nestjs-expert/SKILL.md +2 -524
- package/bundled-skills/nestjs-expert/references/detailed-guide.md +539 -0
- package/bundled-skills/networkx/SKILL.md +1 -0
- package/bundled-skills/new-rails-project/SKILL.md +7 -0
- package/bundled-skills/newman-cicd-integration/SKILL.md +1 -1
- package/bundled-skills/nika/SKILL.md +1 -0
- package/bundled-skills/nosql-expert/SKILL.md +6 -0
- package/bundled-skills/not-a-vibe-coder/SKILL.md +7 -0
- package/bundled-skills/notion-template-business/SKILL.md +2 -505
- package/bundled-skills/notion-template-business/references/detailed-guide.md +523 -0
- package/bundled-skills/nutrition-analyzer/SKILL.md +5 -766
- package/bundled-skills/nutrition-analyzer/references/detailed-guide.md +775 -0
- package/bundled-skills/objection-preemptor/SKILL.md +6 -0
- package/bundled-skills/observability-and-instrumentation/SKILL.md +1 -1
- package/bundled-skills/observability-engineer/SKILL.md +16 -8
- package/bundled-skills/obsidian-bases/SKILL.md +4 -366
- package/bundled-skills/obsidian-bases/references/detailed-guide.md +380 -0
- package/bundled-skills/occupational-health-analyzer/SKILL.md +1 -0
- package/bundled-skills/odoo-accounting-setup/SKILL.md +1 -0
- package/bundled-skills/odoo-automated-tests/SKILL.md +1 -0
- package/bundled-skills/odoo-backup-strategy/SKILL.md +1 -0
- package/bundled-skills/odoo-docker-deployment/SKILL.md +1 -0
- package/bundled-skills/odoo-ecommerce-configurator/SKILL.md +1 -0
- package/bundled-skills/odoo-edi-connector/SKILL.md +1 -0
- package/bundled-skills/odoo-hr-payroll-setup/SKILL.md +1 -0
- package/bundled-skills/odoo-inventory-optimizer/SKILL.md +1 -0
- package/bundled-skills/odoo-l10n-compliance/SKILL.md +1 -0
- package/bundled-skills/odoo-manufacturing-advisor/SKILL.md +1 -0
- package/bundled-skills/odoo-migration-helper/SKILL.md +1 -0
- package/bundled-skills/odoo-module-developer/SKILL.md +1 -0
- package/bundled-skills/odoo-orm-expert/SKILL.md +1 -0
- package/bundled-skills/odoo-performance-tuner/SKILL.md +1 -0
- package/bundled-skills/odoo-project-timesheet/SKILL.md +1 -0
- package/bundled-skills/odoo-purchase-workflow/SKILL.md +1 -0
- package/bundled-skills/odoo-qweb-templates/SKILL.md +1 -0
- package/bundled-skills/odoo-rpc-api/SKILL.md +1 -0
- package/bundled-skills/odoo-sales-crm-expert/SKILL.md +1 -0
- package/bundled-skills/odoo-security-rules/SKILL.md +1 -0
- package/bundled-skills/odoo-shopify-integration/SKILL.md +1 -0
- package/bundled-skills/odoo-upgrade-advisor/SKILL.md +1 -0
- package/bundled-skills/odoo-woocommerce-bridge/SKILL.md +1 -0
- package/bundled-skills/odoo-xml-views-builder/SKILL.md +1 -0
- package/bundled-skills/odw/SKILL.md +6 -0
- package/bundled-skills/offers/SKILL.md +1 -1
- package/bundled-skills/onboarding/SKILL.md +1 -1
- package/bundled-skills/onboarding-psychologist/SKILL.md +6 -0
- package/bundled-skills/one-drive-automation/SKILL.md +6 -0
- package/bundled-skills/openapi-spec-generator/SKILL.md +1 -1
- package/bundled-skills/oral-health-analyzer/SKILL.md +8 -515
- package/bundled-skills/oral-health-analyzer/references/detailed-guide.md +529 -0
- package/bundled-skills/outlook-automation/SKILL.md +6 -0
- package/bundled-skills/pagespeed-enhancer/SKILL.md +4 -520
- package/bundled-skills/pagespeed-enhancer/references/detailed-guide.md +533 -0
- package/bundled-skills/paid-ads/SKILL.md +2 -541
- package/bundled-skills/paid-ads/references/detailed-guide.md +558 -0
- package/bundled-skills/parallel-search-mcp/SKILL.md +134 -0
- package/bundled-skills/payment-integration/SKILL.md +6 -0
- package/bundled-skills/paywall-upgrade-cro/SKILL.md +2 -560
- package/bundled-skills/paywall-upgrade-cro/references/detailed-guide.md +579 -0
- package/bundled-skills/performance-testing-review-multi-agent-review/SKILL.md +42 -214
- package/bundled-skills/personal-tool-builder/SKILL.md +2 -688
- package/bundled-skills/personal-tool-builder/references/detailed-guide.md +705 -0
- package/bundled-skills/phase-gated-debugging/SKILL.md +6 -0
- package/bundled-skills/photopea-embedded-editor/SKILL.md +3 -1218
- package/bundled-skills/photopea-embedded-editor/references/detailed-guide.md +1252 -0
- package/bundled-skills/php-pro/SKILL.md +6 -0
- package/bundled-skills/pi-custom-model/SKILL.md +6 -0
- package/bundled-skills/pipedrive-automation/SKILL.md +6 -0
- package/bundled-skills/pitch-psychologist/SKILL.md +6 -0
- package/bundled-skills/plaid-fintech/SKILL.md +8 -829
- package/bundled-skills/plaid-fintech/references/detailed-guide.md +837 -0
- package/bundled-skills/plotly/SKILL.md +1 -0
- package/bundled-skills/polars/SKILL.md +1 -0
- package/bundled-skills/popup-cro/SKILL.md +6 -0
- package/bundled-skills/posix-shell-pro/SKILL.md +6 -0
- package/bundled-skills/postgresql-cli/SKILL.md +1 -1
- package/bundled-skills/postman-collection-generator/SKILL.md +1 -1
- package/bundled-skills/postman-newman-automation/SKILL.md +1 -1
- package/bundled-skills/postman-openapi-converter/SKILL.md +1 -1
- package/bundled-skills/power-user-cultivation/SKILL.md +6 -572
- package/bundled-skills/power-user-cultivation/references/detailed-guide.md +585 -0
- package/bundled-skills/pr-writer/SKILL.md +1 -0
- package/bundled-skills/price-psychology-strategist/SKILL.md +6 -0
- package/bundled-skills/pricing/SKILL.md +1 -1
- package/bundled-skills/privacy-mask/SKILL.md +1 -1
- package/bundled-skills/product-decision-agent/SKILL.md +6 -0
- package/bundled-skills/product-inventor/SKILL.md +2 -627
- package/bundled-skills/product-inventor/references/detailed-guide.md +646 -0
- package/bundled-skills/product-manager/SKILL.md +6 -0
- package/bundled-skills/product-marketing/SKILL.md +1 -1
- package/bundled-skills/production-code-audit/SKILL.md +2 -264
- package/bundled-skills/production-code-audit/references/detailed-guide.md +277 -0
- package/bundled-skills/professional-proofreader/SKILL.md +6 -0
- package/bundled-skills/programmatic-seo/SKILL.md +6 -0
- package/bundled-skills/project-development/SKILL.md +1 -0
- package/bundled-skills/project-skill-audit/SKILL.md +6 -0
- package/bundled-skills/public-relations/SKILL.md +1 -1
- package/bundled-skills/pubmed-database/SKILL.md +1 -0
- package/bundled-skills/push-skill-to-github/SKILL.md +6 -0
- package/bundled-skills/pypict-skill/SKILL.md +6 -0
- package/bundled-skills/pytest-skill/SKILL.md +1 -1
- package/bundled-skills/qiskit/SKILL.md +1 -0
- package/bundled-skills/quant-analyst/SKILL.md +6 -0
- package/bundled-skills/radix-ui-design-system/SKILL.md +2 -693
- package/bundled-skills/radix-ui-design-system/references/detailed-guide.md +711 -0
- package/bundled-skills/rag-engineer/SKILL.md +6 -0
- package/bundled-skills/rclone-cli/SKILL.md +1 -1
- package/bundled-skills/react-flow-architect/SKILL.md +2 -507
- package/bundled-skills/react-flow-architect/references/detailed-guide.md +517 -0
- package/bundled-skills/react-patterns/SKILL.md +6 -0
- package/bundled-skills/read-all-adrs/SKILL.md +6 -0
- package/bundled-skills/readme/SKILL.md +4 -822
- package/bundled-skills/readme/references/detailed-guide.md +829 -0
- package/bundled-skills/redesign-existing-projects/SKILL.md +6 -0
- package/bundled-skills/redis-cli/SKILL.md +1 -1
- package/bundled-skills/referral-program/SKILL.md +2 -508
- package/bundled-skills/referral-program/references/detailed-guide.md +524 -0
- package/bundled-skills/rehabilitation-analyzer/SKILL.md +5 -629
- package/bundled-skills/rehabilitation-analyzer/references/detailed-guide.md +641 -0
- package/bundled-skills/remotion/SKILL.md +1 -0
- package/bundled-skills/research-prompt/SKILL.md +6 -0
- package/bundled-skills/resolving-merge-conflicts/SKILL.md +6 -0
- package/bundled-skills/review-and-simplify-changes/SKILL.md +7 -1
- package/bundled-skills/review-swarm/SKILL.md +7 -1
- package/bundled-skills/risk-manager/SKILL.md +6 -0
- package/bundled-skills/robius-app-architecture/SKILL.md +1 -0
- package/bundled-skills/robius-event-action/SKILL.md +1 -0
- package/bundled-skills/robius-matrix-integration/SKILL.md +1 -0
- package/bundled-skills/robius-state-management/SKILL.md +1 -0
- package/bundled-skills/robius-widget-patterns/SKILL.md +1 -0
- package/bundled-skills/robot-framework-skill/SKILL.md +1 -1
- package/bundled-skills/ruby-pro/SKILL.md +6 -0
- package/bundled-skills/saga-orchestration/SKILL.md +4 -482
- package/bundled-skills/saga-orchestration/references/detailed-guide.md +491 -0
- package/bundled-skills/sales-automator/SKILL.md +6 -0
- package/bundled-skills/salesforce-development/SKILL.md +2 -985
- package/bundled-skills/salesforce-development/references/detailed-guide.md +994 -0
- package/bundled-skills/sam-altman/SKILL.md +5 -1040
- package/bundled-skills/sam-altman/references/detailed-guide.md +1102 -0
- package/bundled-skills/scala-pro/SKILL.md +6 -0
- package/bundled-skills/scanning-tools/SKILL.md +2 -546
- package/bundled-skills/scanning-tools/references/detailed-guide.md +555 -0
- package/bundled-skills/scanpy/SKILL.md +1 -0
- package/bundled-skills/scarcity-urgency-psychologist/SKILL.md +6 -0
- package/bundled-skills/scientific-writing/SKILL.md +3 -691
- package/bundled-skills/scientific-writing/references/detailed-guide.md +702 -0
- package/bundled-skills/scikit-learn/SKILL.md +3 -462
- package/bundled-skills/scikit-learn/references/detailed-guide.md +475 -0
- package/bundled-skills/scroll-experience/SKILL.md +2 -560
- package/bundled-skills/scroll-experience/references/detailed-guide.md +578 -0
- package/bundled-skills/sdk-dx/SKILL.md +6 -517
- package/bundled-skills/sdk-dx/references/detailed-guide.md +530 -0
- package/bundled-skills/seaborn/SKILL.md +5 -661
- package/bundled-skills/seaborn/references/detailed-guide.md +677 -0
- package/bundled-skills/search-specialist/SKILL.md +6 -0
- package/bundled-skills/security/aws-compliance-checker/SKILL.md +4 -492
- package/bundled-skills/security/aws-compliance-checker/references/detailed-guide.md +502 -0
- package/bundled-skills/security-bluebook-builder/SKILL.md +7 -0
- package/bundled-skills/security-scanning-security-hardening/SKILL.md +6 -0
- package/bundled-skills/security-scanning-security-sast/SKILL.md +2 -463
- package/bundled-skills/security-scanning-security-sast/references/detailed-guide.md +476 -0
- package/bundled-skills/segment-cdp/SKILL.md +8 -822
- package/bundled-skills/segment-cdp/references/detailed-guide.md +830 -0
- package/bundled-skills/selenium-skill/SKILL.md +1 -1
- package/bundled-skills/semgrep-rule-creator/SKILL.md +1 -0
- package/bundled-skills/semgrep-rule-variant-creator/SKILL.md +1 -0
- package/bundled-skills/sendgrid-automation/SKILL.md +6 -0
- package/bundled-skills/seo-audit/SKILL.md +33 -44
- package/bundled-skills/seo-content/SKILL.md +6 -0
- package/bundled-skills/seo-content-auditor/SKILL.md +6 -0
- package/bundled-skills/seo-content-writer/SKILL.md +6 -0
- package/bundled-skills/seo-forensic-incident-response/SKILL.md +6 -0
- package/bundled-skills/seo-fundamentals/SKILL.md +6 -0
- package/bundled-skills/seo-programmatic/SKILL.md +6 -0
- package/bundled-skills/sequence-psychologist/SKILL.md +6 -0
- package/bundled-skills/server-management/SKILL.md +6 -0
- package/bundled-skills/service-mesh-expert/SKILL.md +6 -0
- package/bundled-skills/setup-help/SKILL.md +6 -0
- package/bundled-skills/sexual-health-analyzer/SKILL.md +8 -1109
- package/bundled-skills/sexual-health-analyzer/references/detailed-guide.md +1123 -0
- package/bundled-skills/sharp-coder/SKILL.md +1 -0
- package/bundled-skills/sharp-edges/SKILL.md +1 -0
- package/bundled-skills/shodan-reconnaissance/SKILL.md +2 -356
- package/bundled-skills/shodan-reconnaissance/references/detailed-guide.md +366 -0
- package/bundled-skills/shopify-apps/SKILL.md +2 -1477
- package/bundled-skills/shopify-apps/references/detailed-guide.md +1512 -0
- package/bundled-skills/short/SKILL.md +6 -0
- package/bundled-skills/signup-flow-cro/SKILL.md +6 -0
- package/bundled-skills/simplify-code/SKILL.md +6 -0
- package/bundled-skills/skill-creator/SKILL.md +2 -568
- package/bundled-skills/skill-creator/references/detailed-guide.md +581 -0
- package/bundled-skills/skill-creator-ms/SKILL.md +2 -601
- package/bundled-skills/skill-creator-ms/references/detailed-guide.md +614 -0
- package/bundled-skills/skill-improver/SKILL.md +1 -0
- package/bundled-skills/skill-router/SKILL.md +1 -0
- package/bundled-skills/skill-scanner/SKILL.md +1 -0
- package/bundled-skills/skill-security-audit/SKILL.md +87 -0
- package/bundled-skills/skill-seekers/SKILL.md +6 -0
- package/bundled-skills/skill-writer/SKILL.md +1 -0
- package/bundled-skills/skin-health-analyzer/SKILL.md +8 -696
- package/bundled-skills/skin-health-analyzer/references/detailed-guide.md +710 -0
- package/bundled-skills/slack-automation/SKILL.md +6 -0
- package/bundled-skills/slack-bot-builder/SKILL.md +2 -1372
- package/bundled-skills/slack-bot-builder/references/detailed-guide.md +1395 -0
- package/bundled-skills/sleep-analyzer/SKILL.md +5 -764
- package/bundled-skills/sleep-analyzer/references/detailed-guide.md +773 -0
- package/bundled-skills/smartui-skill/SKILL.md +1 -1
- package/bundled-skills/smtp-penetration-testing/SKILL.md +2 -346
- package/bundled-skills/smtp-penetration-testing/references/detailed-guide.md +355 -0
- package/bundled-skills/social-content/SKILL.md +2 -797
- package/bundled-skills/social-content/references/detailed-guide.md +816 -0
- package/bundled-skills/social-proof-architect/SKILL.md +6 -0
- package/bundled-skills/software-architecture/SKILL.md +6 -0
- package/bundled-skills/spec-to-code-compliance/SKILL.md +7 -0
- package/bundled-skills/speckit-updater/SKILL.md +1 -0
- package/bundled-skills/speed/SKILL.md +7 -0
- package/bundled-skills/sred-project-organizer/SKILL.md +1 -0
- package/bundled-skills/sred-work-summary/SKILL.md +1 -0
- package/bundled-skills/statsmodels/SKILL.md +3 -586
- package/bundled-skills/statsmodels/references/detailed-guide.md +600 -0
- package/bundled-skills/steve-jobs/SKILL.md +2 -564
- package/bundled-skills/steve-jobs/references/detailed-guide.md +574 -0
- package/bundled-skills/stitch-loop/SKILL.md +1 -0
- package/bundled-skills/stripe-automation/SKILL.md +6 -0
- package/bundled-skills/stripe-integration/SKILL.md +60 -79
- package/bundled-skills/styleseed-design-review/SKILL.md +1 -1
- package/bundled-skills/subagent-orchestrator/SKILL.md +1 -0
- package/bundled-skills/subject-line-psychologist/SKILL.md +6 -0
- package/bundled-skills/supabase/SKILL.md +1 -1
- package/bundled-skills/supabase-automation/SKILL.md +6 -0
- package/bundled-skills/superpowers-lab/SKILL.md +6 -0
- package/bundled-skills/supply-chain-risk-auditor/SKILL.md +7 -0
- package/bundled-skills/swiftui-expert-skill/SKILL.md +1 -1
- package/bundled-skills/sympy/SKILL.md +3 -426
- package/bundled-skills/sympy/references/detailed-guide.md +439 -0
- package/bundled-skills/systematic-debugging/CREATION-LOG.md +3 -0
- package/bundled-skills/systematic-debugging/SKILL.md +30 -34
- package/bundled-skills/systematic-debugging/condition-based-waiting.md +9 -6
- package/bundled-skills/systematic-debugging/defense-in-depth.md +13 -7
- package/bundled-skills/systematic-debugging/find-polluter.sh +77 -57
- package/bundled-skills/systematic-debugging/root-cause-tracing.md +7 -5
- package/bundled-skills/systematic-debugging/test-academic.md +3 -0
- package/bundled-skills/systematic-debugging/test-pressure-1.md +3 -0
- package/bundled-skills/systematic-debugging/test-pressure-2.md +3 -0
- package/bundled-skills/systematic-debugging/test-pressure-3.md +3 -0
- package/bundled-skills/tcm-constitution-analyzer/SKILL.md +5 -655
- package/bundled-skills/tcm-constitution-analyzer/references/detailed-guide.md +660 -0
- package/bundled-skills/tdd-workflows-tdd-cycle/SKILL.md +6 -0
- package/bundled-skills/technical-tutorials/SKILL.md +5 -483
- package/bundled-skills/technical-tutorials/references/detailed-guide.md +496 -0
- package/bundled-skills/telegram/SKILL.md +2 -541
- package/bundled-skills/telegram/references/detailed-guide.md +569 -0
- package/bundled-skills/telegram-mini-app/SKILL.md +2 -643
- package/bundled-skills/telegram-mini-app/references/detailed-guide.md +661 -0
- package/bundled-skills/temporal-python-pro/SKILL.md +6 -0
- package/bundled-skills/terraform-skill/SKILL.md +4 -417
- package/bundled-skills/terraform-skill/references/detailed-guide.md +430 -0
- package/bundled-skills/test-driven-development/SKILL.md +21 -124
- package/bundled-skills/test-driven-development/testing-anti-patterns.md +6 -6
- package/bundled-skills/test-framework-migration-skill/SKILL.md +7 -1
- package/bundled-skills/threat-modeling-expert/SKILL.md +6 -0
- package/bundled-skills/threejs-animation/SKILL.md +5 -551
- package/bundled-skills/threejs-animation/references/detailed-guide.md +566 -0
- package/bundled-skills/threejs-fundamentals/SKILL.md +5 -525
- package/bundled-skills/threejs-fundamentals/references/detailed-guide.md +535 -0
- package/bundled-skills/threejs-geometry/SKILL.md +5 -572
- package/bundled-skills/threejs-geometry/references/detailed-guide.md +587 -0
- package/bundled-skills/threejs-interaction/SKILL.md +5 -666
- package/bundled-skills/threejs-interaction/references/detailed-guide.md +679 -0
- package/bundled-skills/threejs-lighting/SKILL.md +1 -0
- package/bundled-skills/threejs-loaders/SKILL.md +5 -637
- package/bundled-skills/threejs-loaders/references/detailed-guide.md +651 -0
- package/bundled-skills/threejs-materials/SKILL.md +3 -535
- package/bundled-skills/threejs-materials/references/detailed-guide.md +560 -0
- package/bundled-skills/threejs-postprocessing/SKILL.md +5 -617
- package/bundled-skills/threejs-postprocessing/references/detailed-guide.md +630 -0
- package/bundled-skills/threejs-shaders/SKILL.md +5 -679
- package/bundled-skills/threejs-shaders/references/detailed-guide.md +695 -0
- package/bundled-skills/threejs-skills/SKILL.md +4 -683
- package/bundled-skills/threejs-skills/references/detailed-guide.md +693 -0
- package/bundled-skills/threejs-textures/SKILL.md +5 -630
- package/bundled-skills/threejs-textures/references/detailed-guide.md +649 -0
- package/bundled-skills/to-issues/SKILL.md +5 -0
- package/bundled-skills/to-prd/SKILL.md +5 -0
- package/bundled-skills/todoist-automation/SKILL.md +6 -0
- package/bundled-skills/tools-page-seo-optimizer/SKILL.md +2 -580
- package/bundled-skills/tools-page-seo-optimizer/references/detailed-guide.md +602 -0
- package/bundled-skills/top-web-vulnerabilities/SKILL.md +2 -513
- package/bundled-skills/top-web-vulnerabilities/references/detailed-guide.md +523 -0
- package/bundled-skills/train-sentence-transformers/SKILL.md +1 -1
- package/bundled-skills/transformers-js/SKILL.md +5 -669
- package/bundled-skills/transformers-js/references/detailed-guide.md +683 -0
- package/bundled-skills/travel-health-analyzer/SKILL.md +1 -0
- package/bundled-skills/trello-automation/SKILL.md +6 -0
- package/bundled-skills/trigger-dev/SKILL.md +2 -937
- package/bundled-skills/trigger-dev/references/detailed-guide.md +950 -0
- package/bundled-skills/trust-calibrator/SKILL.md +6 -0
- package/bundled-skills/tutorial-engineer/SKILL.md +6 -0
- package/bundled-skills/twilio-communications/SKILL.md +2 -1549
- package/bundled-skills/twilio-communications/references/detailed-guide.md +1574 -0
- package/bundled-skills/typescript-pro/SKILL.md +6 -0
- package/bundled-skills/ui-a11y/SKILL.md +6 -0
- package/bundled-skills/ui-component/SKILL.md +6 -0
- package/bundled-skills/ui-motion/SKILL.md +7 -1
- package/bundled-skills/ui-pattern/SKILL.md +6 -0
- package/bundled-skills/ui-review/SKILL.md +6 -0
- package/bundled-skills/ui-skills/SKILL.md +6 -0
- package/bundled-skills/ui-tokens/SKILL.md +6 -0
- package/bundled-skills/uniprot-database/SKILL.md +1 -0
- package/bundled-skills/unslop-commit/SKILL.md +1 -1
- package/bundled-skills/unslop-file/SKILL.md +1 -1
- package/bundled-skills/unslop-review/SKILL.md +1 -1
- package/bundled-skills/unsplash-integration/SKILL.md +6 -0
- package/bundled-skills/update-swiftui-apis/SKILL.md +1 -1
- package/bundled-skills/upstash-qstash/SKILL.md +2 -919
- package/bundled-skills/upstash-qstash/references/detailed-guide.md +932 -0
- package/bundled-skills/usage-based-pricing/SKILL.md +5 -395
- package/bundled-skills/usage-based-pricing/references/detailed-guide.md +407 -0
- package/bundled-skills/ux-audit/SKILL.md +6 -0
- package/bundled-skills/ux-flow/SKILL.md +6 -0
- package/bundled-skills/ux-persuasion-engineer/SKILL.md +6 -0
- package/bundled-skills/variant-analysis/SKILL.md +1 -0
- package/bundled-skills/varlock/SKILL.md +1 -0
- package/bundled-skills/varlock-claude-skill/SKILL.md +6 -0
- package/bundled-skills/vector-database-engineer/SKILL.md +6 -0
- package/bundled-skills/vercel-deployment/SKILL.md +2 -650
- package/bundled-skills/vercel-deployment/references/detailed-guide.md +660 -0
- package/bundled-skills/vexor/SKILL.md +6 -0
- package/bundled-skills/vexor-cli/SKILL.md +1 -0
- package/bundled-skills/visual-emotion-engineer/SKILL.md +6 -0
- package/bundled-skills/vizcom/SKILL.md +6 -0
- package/bundled-skills/voice-agents/SKILL.md +2 -867
- package/bundled-skills/voice-agents/references/detailed-guide.md +890 -0
- package/bundled-skills/voice-ai-development/SKILL.md +2 -583
- package/bundled-skills/voice-ai-development/references/detailed-guide.md +594 -0
- package/bundled-skills/voice-ai-engine-development/SKILL.md +2 -702
- package/bundled-skills/voice-ai-engine-development/references/detailed-guide.md +720 -0
- package/bundled-skills/warren-buffett/SKILL.md +2 -577
- package/bundled-skills/warren-buffett/references/detailed-guide.md +583 -0
- package/bundled-skills/web-performance-optimization/SKILL.md +2 -214
- package/bundled-skills/web-performance-optimization/references/detailed-guide.md +226 -0
- package/bundled-skills/web-scraper/SKILL.md +2 -728
- package/bundled-skills/web-scraper/references/detailed-guide.md +792 -0
- package/bundled-skills/webflow-automation/SKILL.md +6 -0
- package/bundled-skills/weightloss-analyzer/SKILL.md +1 -0
- package/bundled-skills/wellally-tech/SKILL.md +5 -367
- package/bundled-skills/wellally-tech/references/detailed-guide.md +379 -0
- package/bundled-skills/wiki-architect/SKILL.md +6 -0
- package/bundled-skills/wiki-changelog/SKILL.md +6 -0
- package/bundled-skills/wiki-onboarding/SKILL.md +6 -0
- package/bundled-skills/wiki-qa/SKILL.md +6 -0
- package/bundled-skills/wiki-researcher/SKILL.md +6 -0
- package/bundled-skills/windows-privilege-escalation/SKILL.md +131 -0
- package/bundled-skills/windows-privilege-escalation/references/detailed-guide.md +397 -0
- package/bundled-skills/wireshark-analysis/SKILL.md +2 -419
- package/bundled-skills/wireshark-analysis/references/detailed-guide.md +429 -0
- package/bundled-skills/wjttc-builder/SKILL.md +1 -1
- package/bundled-skills/wjttc-tester/SKILL.md +1 -1
- package/bundled-skills/wordpress/SKILL.md +2 -572
- package/bundled-skills/wordpress/references/detailed-guide.md +582 -0
- package/bundled-skills/wordpress-penetration-testing/SKILL.md +68 -0
- package/bundled-skills/wordpress-penetration-testing/references/detailed-guide.md +555 -0
- package/bundled-skills/wordpress-plugin-development/SKILL.md +2 -474
- package/bundled-skills/wordpress-plugin-development/references/detailed-guide.md +485 -0
- package/bundled-skills/wordpress-theme-development/SKILL.md +2 -479
- package/bundled-skills/wordpress-theme-development/references/detailed-guide.md +490 -0
- package/bundled-skills/wordpress-woocommerce-development/SKILL.md +2 -605
- package/bundled-skills/wordpress-woocommerce-development/references/detailed-guide.md +615 -0
- package/bundled-skills/workflow-automation/SKILL.md +2 -875
- package/bundled-skills/workflow-automation/references/detailed-guide.md +902 -0
- package/bundled-skills/writing-great-skills/SKILL.md +5 -0
- package/bundled-skills/x-article-publisher-skill/SKILL.md +6 -0
- package/bundled-skills/x402-express-wrapper/SKILL.md +1 -0
- package/bundled-skills/xss-html-injection/SKILL.md +2 -389
- package/bundled-skills/xss-html-injection/references/detailed-guide.md +399 -0
- package/bundled-skills/yann-lecun/SKILL.md +2 -1431
- package/bundled-skills/yann-lecun/references/detailed-guide.md +1484 -0
- package/bundled-skills/yann-lecun-filosofia/SKILL.md +6 -0
- package/bundled-skills/yann-lecun-tecnico/SKILL.md +2 -485
- package/bundled-skills/yann-lecun-tecnico/references/detailed-guide.md +502 -0
- package/bundled-skills/youtube-seo-optimizer/SKILL.md +4 -884
- package/bundled-skills/youtube-seo-optimizer/references/detailed-guide.md +907 -0
- package/bundled-skills/zapier-make-patterns/SKILL.md +2 -728
- package/bundled-skills/zapier-make-patterns/references/detailed-guide.md +752 -0
- package/bundled-skills/zipai-optimizer/SKILL.md +7 -0
- package/bundled-skills/zoom-automation/SKILL.md +6 -0
- package/package.json +1 -1
- package/skills_index.json +541 -383
- package/bundled-skills/docs/AUDIT.md +0 -3
- package/bundled-skills/docs/BUNDLES.md +0 -3
- package/bundled-skills/docs/CATEGORIZATION_IMPLEMENTATION.md +0 -3
- package/bundled-skills/docs/CI_DRIFT_FIX.md +0 -3
- package/bundled-skills/docs/COMMUNITY_GUIDELINES.md +0 -3
- package/bundled-skills/docs/DATE_TRACKING_IMPLEMENTATION.md +0 -3
- package/bundled-skills/docs/EXAMPLES.md +0 -3
- package/bundled-skills/docs/FAQ.md +0 -3
- package/bundled-skills/docs/GETTING_STARTED.md +0 -3
- package/bundled-skills/docs/KIRO_INTEGRATION.md +0 -3
- package/bundled-skills/docs/QUALITY_BAR.md +0 -3
- package/bundled-skills/docs/README.md +0 -51
- package/bundled-skills/docs/SECURITY_GUARDRAILS.md +0 -3
- package/bundled-skills/docs/SEC_SKILLS.md +0 -3
- package/bundled-skills/docs/SKILLS_DATE_TRACKING.md +0 -3
- package/bundled-skills/docs/SKILL_ANATOMY.md +0 -3
- package/bundled-skills/docs/SKILL_TEMPLATE.md +0 -3
- package/bundled-skills/docs/SMART_AUTO_CATEGORIZATION.md +0 -3
- package/bundled-skills/docs/SOURCES.md +0 -3
- package/bundled-skills/docs/USAGE.md +0 -3
- package/bundled-skills/docs/VISUAL_GUIDE.md +0 -3
- package/bundled-skills/docs/WORKFLOWS.md +0 -3
- package/bundled-skills/docs/contributors/community-guidelines.md +0 -4
- package/bundled-skills/docs/contributors/examples.md +0 -760
- package/bundled-skills/docs/contributors/quality-bar.md +0 -104
- package/bundled-skills/docs/contributors/security-guardrails.md +0 -70
- package/bundled-skills/docs/contributors/skill-anatomy.md +0 -637
- package/bundled-skills/docs/contributors/skill-template.md +0 -93
- package/bundled-skills/docs/integrations/jetski-cortex.md +0 -282
- package/bundled-skills/docs/integrations/jetski-gemini-loader/README.md +0 -103
- package/bundled-skills/docs/integrations/jetski-gemini-loader/loader.mjs +0 -154
- package/bundled-skills/docs/integrations/jetski-gemini-loader/package.json +0 -1
- package/bundled-skills/docs/maintainers/aas-agent-first-control-plane-preview-profile.md +0 -63
- package/bundled-skills/docs/maintainers/aas-agent-first-control-plane-v1-design.md +0 -304
- package/bundled-skills/docs/maintainers/aas-agent-first-control-plane-v1-goal.md +0 -171
- package/bundled-skills/docs/maintainers/aas-agent-first-control-plane-v1-worklog.md +0 -104
- package/bundled-skills/docs/maintainers/audit.md +0 -89
- package/bundled-skills/docs/maintainers/backups/README-2026-06-02.md +0 -687
- package/bundled-skills/docs/maintainers/categorization-implementation.md +0 -160
- package/bundled-skills/docs/maintainers/ci-drift-fix.md +0 -64
- package/bundled-skills/docs/maintainers/date-tracking-implementation.md +0 -66
- package/bundled-skills/docs/maintainers/full-repo-audit-2026-05-23.md +0 -289
- package/bundled-skills/docs/maintainers/legacy-redirect-bridge.md +0 -46
- package/bundled-skills/docs/maintainers/merge-batch.md +0 -81
- package/bundled-skills/docs/maintainers/merging-prs.md +0 -79
- package/bundled-skills/docs/maintainers/pr-autonomy.md +0 -102
- package/bundled-skills/docs/maintainers/provenance-identity-exceptions.json +0 -14
- package/bundled-skills/docs/maintainers/release-notes-7.2.0.md +0 -32
- package/bundled-skills/docs/maintainers/release-process.md +0 -124
- package/bundled-skills/docs/maintainers/repo-growth-seo.md +0 -133
- package/bundled-skills/docs/maintainers/rollback-procedure.md +0 -43
- package/bundled-skills/docs/maintainers/security-findings-triage-2026-03-15.csv +0 -34
- package/bundled-skills/docs/maintainers/security-findings-triage-2026-03-15.md +0 -60
- package/bundled-skills/docs/maintainers/security-findings-triage-2026-03-18-addendum.md +0 -22
- package/bundled-skills/docs/maintainers/security-findings-triage-2026-03-29-addendum.md +0 -48
- package/bundled-skills/docs/maintainers/security-findings-triage-2026-03-29-refresh.csv +0 -34
- package/bundled-skills/docs/maintainers/security-findings-triage-2026-03-29-refresh.md +0 -86
- package/bundled-skills/docs/maintainers/skills-date-tracking.md +0 -228
- package/bundled-skills/docs/maintainers/skills-import-2026-03-21.md +0 -81
- package/bundled-skills/docs/maintainers/skills-update-guide.md +0 -92
- package/bundled-skills/docs/maintainers/smart-auto-categorization.md +0 -218
- package/bundled-skills/docs/plugin-submissions/aas-agent-mcp-builder/README.md +0 -19
- package/bundled-skills/docs/plugin-submissions/aas-agent-mcp-builder/evaluation-cases.json +0 -74
- package/bundled-skills/docs/plugin-submissions/aas-agent-mcp-builder/evaluation-results.json +0 -86
- package/bundled-skills/docs/plugin-submissions/aas-agent-mcp-builder/submission.json +0 -41
- package/bundled-skills/docs/sources/LICENSE-MICROSOFT +0 -21
- package/bundled-skills/docs/sources/microsoft-skills-attribution.json +0 -709
- package/bundled-skills/docs/sources/sources.md +0 -179
- package/bundled-skills/docs/users/aas-core.md +0 -225
- package/bundled-skills/docs/users/agent-overload-recovery.md +0 -54
- package/bundled-skills/docs/users/agentic-awesome-skills-vs-awesome-claude-skills.md +0 -44
- package/bundled-skills/docs/users/ai-agent-skills.md +0 -48
- package/bundled-skills/docs/users/best-claude-code-skills-github.md +0 -62
- package/bundled-skills/docs/users/best-cursor-skills-github.md +0 -62
- package/bundled-skills/docs/users/bundles.md +0 -1067
- package/bundled-skills/docs/users/claude-code-skills.md +0 -89
- package/bundled-skills/docs/users/codex-cli-skills.md +0 -88
- package/bundled-skills/docs/users/cursor-skills.md +0 -56
- package/bundled-skills/docs/users/discovery-manifest.md +0 -65
- package/bundled-skills/docs/users/faq.md +0 -521
- package/bundled-skills/docs/users/gemini-cli-skills.md +0 -56
- package/bundled-skills/docs/users/getting-started.md +0 -233
- package/bundled-skills/docs/users/kiro-integration.md +0 -304
- package/bundled-skills/docs/users/local-config.md +0 -152
- package/bundled-skills/docs/users/plugins.md +0 -201
- package/bundled-skills/docs/users/security-and-antivirus.md +0 -63
- package/bundled-skills/docs/users/security-skills.md +0 -1722
- package/bundled-skills/docs/users/skills-library-overview.md +0 -87
- package/bundled-skills/docs/users/skills-vs-mcp-tools.md +0 -108
- package/bundled-skills/docs/users/specialized-plugin-roadmap.md +0 -101
- package/bundled-skills/docs/users/usage.md +0 -465
- package/bundled-skills/docs/users/visual-guide.md +0 -515
- package/bundled-skills/docs/users/walkthrough.md +0 -46
- package/bundled-skills/docs/users/windows-truncation-recovery.md +0 -135
- package/bundled-skills/docs/users/workflows.md +0 -215
- package/bundled-skills/docs/vietnamese/AAS_CORE.vi.md +0 -28
- package/bundled-skills/docs/vietnamese/BUNDLES.vi.md +0 -124
- package/bundled-skills/docs/vietnamese/CONTRIBUTING.vi.md +0 -242
- package/bundled-skills/docs/vietnamese/EXAMPLES.vi.md +0 -56
- package/bundled-skills/docs/vietnamese/FAQ.vi.md +0 -195
- package/bundled-skills/docs/vietnamese/GETTING_STARTED.vi.md +0 -123
- package/bundled-skills/docs/vietnamese/QUALITY_BAR.vi.md +0 -69
- package/bundled-skills/docs/vietnamese/README.vi.md +0 -191
- package/bundled-skills/docs/vietnamese/SECURITY.vi.md +0 -19
- package/bundled-skills/docs/vietnamese/SECURITY_GUARDRAILS.vi.md +0 -51
- package/bundled-skills/docs/vietnamese/SKILLS_README.vi.md +0 -106
- package/bundled-skills/docs/vietnamese/SKILL_ANATOMY.vi.md +0 -633
- package/bundled-skills/docs/vietnamese/SOURCES.vi.md +0 -21
- package/bundled-skills/docs/vietnamese/TRANSLATION_PLAN.vi.md +0 -65
- package/bundled-skills/docs/vietnamese/VISUAL_GUIDE.vi.md +0 -511
- package/bundled-skills/docs/walkthrough.md +0 -3
package/bundled-skills/error-diagnostics-error-analysis/resources/implementation-playbook.md
CHANGED
|
@@ -1,1143 +1,140 @@
|
|
|
1
|
-
# Error
|
|
1
|
+
# Error analysis implementation playbook
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
Use the current application, its installed dependencies and approved observability
|
|
4
|
+
sources. This is a diagnostic procedure with local examples, not an installed APM stack
|
|
5
|
+
or a production incident command system. Previous mixed-version vendor snippets have
|
|
6
|
+
been replaced by explicit integration requirements.
|
|
4
7
|
|
|
5
|
-
##
|
|
8
|
+
## Establish the symptom and its scope
|
|
6
9
|
|
|
7
|
-
|
|
10
|
+
Record timestamp/window/timezone, release revision, route or job, expected behavior,
|
|
11
|
+
observed behavior and affected population. Distinguish rate from count and partial
|
|
12
|
+
telemetry from complete request totals. Choose a severity from actual user impact,
|
|
13
|
+
not the exception class alone. Note missing data and clock skew.
|
|
8
14
|
|
|
9
|
-
|
|
15
|
+
Create a timeline linking observations to their source. An error spike after a deploy
|
|
16
|
+
is a hypothesis about causality, not proof. A timeout may come from a pool, lock, network,
|
|
17
|
+
upstream delay or cancellation. A ConcurrentModificationException can happen in one
|
|
18
|
+
thread; it does not by itself prove a cross-thread race. HashMap supports a null key,
|
|
19
|
+
so do not diagnose a null-key prohibition from an invented HashMap stack trace.
|
|
10
20
|
|
|
11
|
-
|
|
12
|
-
- **Critical**: System down, data loss, security breach, complete service unavailability
|
|
13
|
-
- **High**: Major feature broken, significant user impact, data corruption risk
|
|
14
|
-
- **Medium**: Partial feature degradation, workarounds available, performance issues
|
|
15
|
-
- **Low**: Minor bugs, cosmetic issues, edge cases with minimal impact
|
|
21
|
+
## Narrow one hypothesis
|
|
16
22
|
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
- **Configuration Errors**: Missing environment variables, invalid settings, version mismatches
|
|
23
|
-
- **Security Errors**: Authentication failures, authorization violations, injection attempts
|
|
23
|
+
1. Reproduce with the smallest synthetic input in the authorized environment.
|
|
24
|
+
2. Follow the failing call path and inspect current code, including adapters and retries.
|
|
25
|
+
3. Compare a passing input or prior known-good revision. Preserve existing dirty work.
|
|
26
|
+
4. Change one controlled variable and rerun the relevant check.
|
|
27
|
+
5. Record what the experiment rules out and what remains unknown.
|
|
24
28
|
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
- **Environmental**: Only happens in specific environments or configurations
|
|
29
|
-
- **Load-dependent**: Appears under high traffic or resource pressure
|
|
29
|
+
Five-whys can organize questions, but the fifth answer is not automatically a root
|
|
30
|
+
cause. Distinguish the technical trigger from process contributors. Prefer concrete
|
|
31
|
+
source locations and actual counts over generic claims about insufficient review.
|
|
30
32
|
|
|
31
|
-
|
|
33
|
+
## Collect useful diagnostics without collecting everything
|
|
32
34
|
|
|
33
|
-
|
|
35
|
+
Use allowlisted event fields such as time, service/revision, operation, bounded error
|
|
36
|
+
class, duration and synthetic request correlation. Request bodies, tokens, session
|
|
37
|
+
identifiers, customer IDs, payment details, local variables and full exceptions can
|
|
38
|
+
contain private data. Inspect only what is needed, with the existing access/retention
|
|
39
|
+
policy; redact before sharing. A small blacklist of header names is not sufficient.
|
|
34
40
|
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
5. **Log Pattern Analysis**: Use SIEM tools to identify error spikes and anomalous patterns
|
|
40
|
-
6. **APM Thresholds**: Alert on error rate increases, latency spikes, or throughput drops
|
|
41
|
+
For correlation, generate an ID at the trusted boundary or validate an incoming ID's
|
|
42
|
+
format/length. Do not let caller-controlled context overwrite trusted log fields.
|
|
43
|
+
Use the runtime's supported async context mechanism and test concurrent requests.
|
|
44
|
+
Structured logs do not automatically mean safe logs or correct tenant isolation.
|
|
41
45
|
|
|
42
|
-
|
|
46
|
+
## Local timing example
|
|
43
47
|
|
|
44
|
-
|
|
48
|
+
This standard-library helper measures a synchronous operation using a monotonic clock.
|
|
49
|
+
It returns only a status, duration and exception type; it does not log arguments or the
|
|
50
|
+
exception message. `record` is an application-owned sink. Test that sink independently.
|
|
51
|
+
A failing sink must not convert a successful operation into a business retry.
|
|
45
52
|
|
|
46
|
-
- **Fingerprinting**: Group errors by stack trace similarity, error type, and affected code path
|
|
47
|
-
- **Trend Analysis**: Track error frequency over time to detect regressions or emerging issues
|
|
48
|
-
- **Correlation Analysis**: Link errors to deployments, configuration changes, or external events
|
|
49
|
-
- **User Impact Scoring**: Prioritize based on number of affected users and sessions
|
|
50
|
-
- **Geographic/Temporal Patterns**: Identify region-specific or time-based error clusters
|
|
51
|
-
|
|
52
|
-
## Root Cause Analysis Techniques
|
|
53
|
-
|
|
54
|
-
### Systematic Investigation Process
|
|
55
|
-
|
|
56
|
-
Follow this structured approach for each error:
|
|
57
|
-
|
|
58
|
-
1. **Reproduce the Error**: Create minimal reproduction steps. If intermittent, identify triggering conditions
|
|
59
|
-
2. **Isolate the Failure Point**: Narrow down the exact line of code or component where failure originates
|
|
60
|
-
3. **Analyze the Call Chain**: Trace backwards from the error to understand how the system reached the failed state
|
|
61
|
-
4. **Inspect Variable State**: Examine values at the point of failure and preceding steps
|
|
62
|
-
5. **Review Recent Changes**: Check git history for recent modifications to affected code paths
|
|
63
|
-
6. **Test Hypotheses**: Form theories about the cause and validate with targeted experiments
|
|
64
|
-
|
|
65
|
-
### The Five Whys Technique
|
|
66
|
-
|
|
67
|
-
Ask "why" repeatedly to drill down to root causes:
|
|
68
|
-
|
|
69
|
-
```
|
|
70
|
-
Error: Database connection timeout after 30s
|
|
71
|
-
|
|
72
|
-
Why? The database connection pool was exhausted
|
|
73
|
-
Why? All connections were held by long-running queries
|
|
74
|
-
Why? A new feature introduced N+1 query patterns
|
|
75
|
-
Why? The ORM lazy-loading wasn't properly configured
|
|
76
|
-
Why? Code review didn't catch the performance regression
|
|
77
|
-
```
|
|
78
|
-
|
|
79
|
-
Root cause: Insufficient code review process for database query patterns.
|
|
80
|
-
|
|
81
|
-
### Distributed Systems Debugging
|
|
82
|
-
|
|
83
|
-
For errors in microservices and distributed systems:
|
|
84
|
-
|
|
85
|
-
- **Trace the Request Path**: Use correlation IDs to follow requests across service boundaries
|
|
86
|
-
- **Check Service Dependencies**: Identify which upstream/downstream services are involved
|
|
87
|
-
- **Analyze Cascading Failures**: Determine if this is a symptom of a different service's failure
|
|
88
|
-
- **Review Circuit Breaker State**: Check if protective mechanisms are triggered
|
|
89
|
-
- **Examine Message Queues**: Look for backpressure, dead letters, or processing delays
|
|
90
|
-
- **Timeline Reconstruction**: Build a timeline of events across all services using distributed tracing
|
|
91
|
-
|
|
92
|
-
## Stack Trace Analysis
|
|
93
|
-
|
|
94
|
-
### Interpreting Stack Traces
|
|
95
|
-
|
|
96
|
-
Extract maximum information from stack traces:
|
|
97
|
-
|
|
98
|
-
**Key Elements:**
|
|
99
|
-
- **Error Type**: What kind of exception/error occurred
|
|
100
|
-
- **Error Message**: Contextual information about the failure
|
|
101
|
-
- **Origin Point**: The deepest frame where the error was thrown
|
|
102
|
-
- **Call Chain**: The sequence of function calls leading to the error
|
|
103
|
-
- **Framework vs Application Code**: Distinguish between library and your code
|
|
104
|
-
- **Async Boundaries**: Identify where asynchronous operations break the trace
|
|
105
|
-
|
|
106
|
-
**Analysis Strategy:**
|
|
107
|
-
1. Start at the top of the stack (origin of error)
|
|
108
|
-
2. Identify the first frame in your application code (not framework/library)
|
|
109
|
-
3. Examine that frame's context: input parameters, local variables, state
|
|
110
|
-
4. Trace backwards through calling functions to understand how invalid state was created
|
|
111
|
-
5. Look for patterns: is this in a loop? Inside a callback? After an async operation?
|
|
112
|
-
|
|
113
|
-
### Stack Trace Enrichment
|
|
114
|
-
|
|
115
|
-
Modern error tracking tools provide enhanced stack traces:
|
|
116
|
-
|
|
117
|
-
- **Source Code Context**: View surrounding lines of code for each frame
|
|
118
|
-
- **Local Variable Values**: Inspect variable state at each frame (with Sentry's debug mode)
|
|
119
|
-
- **Breadcrumbs**: See the sequence of events leading to the error
|
|
120
|
-
- **Release Tracking**: Link errors to specific deployments and commits
|
|
121
|
-
- **Source Maps**: For minified JavaScript, map back to original source
|
|
122
|
-
- **Inline Comments**: Annotate stack frames with contextual information
|
|
123
|
-
|
|
124
|
-
### Common Stack Trace Patterns
|
|
125
|
-
|
|
126
|
-
**Pattern: Null Pointer Exception Deep in Framework Code**
|
|
127
|
-
```
|
|
128
|
-
NullPointerException
|
|
129
|
-
at java.util.HashMap.hash(HashMap.java:339)
|
|
130
|
-
at java.util.HashMap.get(HashMap.java:556)
|
|
131
|
-
at com.myapp.service.UserService.findUser(UserService.java:45)
|
|
132
|
-
```
|
|
133
|
-
Root Cause: Application passed null to framework code. Focus on UserService.java:45.
|
|
134
|
-
|
|
135
|
-
**Pattern: Timeout After Long Wait**
|
|
136
|
-
```
|
|
137
|
-
TimeoutException: Operation timed out after 30000ms
|
|
138
|
-
at okhttp3.internal.http2.Http2Stream.waitForIo
|
|
139
|
-
at com.myapp.api.PaymentClient.processPayment(PaymentClient.java:89)
|
|
140
|
-
```
|
|
141
|
-
Root Cause: External service slow/unresponsive. Need retry logic and circuit breaker.
|
|
142
|
-
|
|
143
|
-
**Pattern: Race Condition in Concurrent Code**
|
|
144
|
-
```
|
|
145
|
-
ConcurrentModificationException
|
|
146
|
-
at java.util.ArrayList$Itr.checkForComodification
|
|
147
|
-
at com.myapp.processor.BatchProcessor.process(BatchProcessor.java:112)
|
|
148
|
-
```
|
|
149
|
-
Root Cause: Collection modified while being iterated. Need thread-safe data structures or synchronization.
|
|
150
|
-
|
|
151
|
-
## Log Aggregation and Pattern Matching
|
|
152
|
-
|
|
153
|
-
### Structured Logging Implementation
|
|
154
|
-
|
|
155
|
-
Implement JSON-based structured logging for machine-readable logs:
|
|
156
|
-
|
|
157
|
-
**Standard Log Schema:**
|
|
158
|
-
```json
|
|
159
|
-
{
|
|
160
|
-
"timestamp": "2025-10-11T14:23:45.123Z",
|
|
161
|
-
"level": "ERROR",
|
|
162
|
-
"correlation_id": "req-7f3b2a1c-4d5e-6f7g-8h9i-0j1k2l3m4n5o",
|
|
163
|
-
"trace_id": "4bf92f3577b34da6a3ce929d0e0e4736",
|
|
164
|
-
"span_id": "00f067aa0ba902b7",
|
|
165
|
-
"service": "payment-service",
|
|
166
|
-
"environment": "production",
|
|
167
|
-
"host": "pod-payment-7d4f8b9c-xk2l9",
|
|
168
|
-
"version": "v2.3.1",
|
|
169
|
-
"error": {
|
|
170
|
-
"type": "PaymentProcessingException",
|
|
171
|
-
"message": "Failed to charge card: Insufficient funds",
|
|
172
|
-
"stack_trace": "...",
|
|
173
|
-
"fingerprint": "payment-insufficient-funds"
|
|
174
|
-
},
|
|
175
|
-
"user": {
|
|
176
|
-
"id": "user-12345",
|
|
177
|
-
"ip": "203.0.113.42",
|
|
178
|
-
"session_id": "sess-abc123"
|
|
179
|
-
},
|
|
180
|
-
"request": {
|
|
181
|
-
"method": "POST",
|
|
182
|
-
"path": "/api/v1/payments/charge",
|
|
183
|
-
"duration_ms": 2547,
|
|
184
|
-
"status_code": 402
|
|
185
|
-
},
|
|
186
|
-
"context": {
|
|
187
|
-
"payment_method": "credit_card",
|
|
188
|
-
"amount": 149.99,
|
|
189
|
-
"currency": "USD",
|
|
190
|
-
"merchant_id": "merchant-789"
|
|
191
|
-
}
|
|
192
|
-
}
|
|
193
|
-
```
|
|
194
|
-
|
|
195
|
-
**Key Fields to Always Include:**
|
|
196
|
-
- `timestamp`: ISO 8601 format in UTC
|
|
197
|
-
- `level`: ERROR, WARN, INFO, DEBUG, TRACE
|
|
198
|
-
- `correlation_id`: Unique ID for the entire request chain
|
|
199
|
-
- `trace_id` and `span_id`: OpenTelemetry identifiers for distributed tracing
|
|
200
|
-
- `service`: Which microservice generated this log
|
|
201
|
-
- `environment`: dev, staging, production
|
|
202
|
-
- `error.fingerprint`: Stable identifier for grouping similar errors
|
|
203
|
-
|
|
204
|
-
### Correlation ID Pattern
|
|
205
|
-
|
|
206
|
-
Implement correlation IDs to track requests across distributed systems:
|
|
207
|
-
|
|
208
|
-
**Node.js/Express Middleware:**
|
|
209
|
-
```javascript
|
|
210
|
-
const { v4: uuidv4 } = require('uuid');
|
|
211
|
-
const asyncLocalStorage = require('async-local-storage');
|
|
212
|
-
|
|
213
|
-
// Middleware to generate/propagate correlation ID
|
|
214
|
-
function correlationIdMiddleware(req, res, next) {
|
|
215
|
-
const correlationId = req.headers['x-correlation-id'] || uuidv4();
|
|
216
|
-
req.correlationId = correlationId;
|
|
217
|
-
res.setHeader('x-correlation-id', correlationId);
|
|
218
|
-
|
|
219
|
-
// Store in async context for access in nested calls
|
|
220
|
-
asyncLocalStorage.run(new Map(), () => {
|
|
221
|
-
asyncLocalStorage.set('correlationId', correlationId);
|
|
222
|
-
next();
|
|
223
|
-
});
|
|
224
|
-
}
|
|
225
|
-
|
|
226
|
-
// Propagate to downstream services
|
|
227
|
-
function makeApiCall(url, data) {
|
|
228
|
-
const correlationId = asyncLocalStorage.get('correlationId');
|
|
229
|
-
return axios.post(url, data, {
|
|
230
|
-
headers: {
|
|
231
|
-
'x-correlation-id': correlationId,
|
|
232
|
-
'x-source-service': 'api-gateway'
|
|
233
|
-
}
|
|
234
|
-
});
|
|
235
|
-
}
|
|
236
|
-
|
|
237
|
-
// Include in all log statements
|
|
238
|
-
function log(level, message, context = {}) {
|
|
239
|
-
const correlationId = asyncLocalStorage.get('correlationId');
|
|
240
|
-
console.log(JSON.stringify({
|
|
241
|
-
timestamp: new Date().toISOString(),
|
|
242
|
-
level,
|
|
243
|
-
correlation_id: correlationId,
|
|
244
|
-
message,
|
|
245
|
-
...context
|
|
246
|
-
}));
|
|
247
|
-
}
|
|
248
|
-
```
|
|
249
|
-
|
|
250
|
-
**Python/Flask Implementation:**
|
|
251
|
-
```python
|
|
252
|
-
import uuid
|
|
253
|
-
import logging
|
|
254
|
-
from flask import request, g
|
|
255
|
-
import json
|
|
256
|
-
|
|
257
|
-
class CorrelationIdFilter(logging.Filter):
|
|
258
|
-
def filter(self, record):
|
|
259
|
-
record.correlation_id = g.get('correlation_id', 'N/A')
|
|
260
|
-
return True
|
|
261
|
-
|
|
262
|
-
@app.before_request
|
|
263
|
-
def setup_correlation_id():
|
|
264
|
-
correlation_id = request.headers.get('X-Correlation-ID', str(uuid.uuid4()))
|
|
265
|
-
g.correlation_id = correlation_id
|
|
266
|
-
|
|
267
|
-
@app.after_request
|
|
268
|
-
def add_correlation_header(response):
|
|
269
|
-
response.headers['X-Correlation-ID'] = g.correlation_id
|
|
270
|
-
return response
|
|
271
|
-
|
|
272
|
-
# Structured logging with correlation ID
|
|
273
|
-
logging.basicConfig(
|
|
274
|
-
format='%(message)s',
|
|
275
|
-
level=logging.INFO
|
|
276
|
-
)
|
|
277
|
-
logger = logging.getLogger(__name__)
|
|
278
|
-
logger.addFilter(CorrelationIdFilter())
|
|
279
|
-
|
|
280
|
-
def log_structured(level, message, **context):
|
|
281
|
-
log_entry = {
|
|
282
|
-
'timestamp': datetime.utcnow().isoformat() + 'Z',
|
|
283
|
-
'level': level,
|
|
284
|
-
'correlation_id': g.correlation_id,
|
|
285
|
-
'service': 'payment-service',
|
|
286
|
-
'message': message,
|
|
287
|
-
**context
|
|
288
|
-
}
|
|
289
|
-
logger.log(getattr(logging, level), json.dumps(log_entry))
|
|
290
|
-
```
|
|
291
|
-
|
|
292
|
-
### Log Aggregation Architecture
|
|
293
|
-
|
|
294
|
-
**Centralized Logging Pipeline:**
|
|
295
|
-
1. **Application**: Outputs structured JSON logs to stdout/stderr
|
|
296
|
-
2. **Log Shipper**: Fluentd/Fluent Bit/Vector collects logs from containers
|
|
297
|
-
3. **Log Aggregator**: Elasticsearch/Loki/DataDog receives and indexes logs
|
|
298
|
-
4. **Visualization**: Kibana/Grafana/DataDog UI for querying and dashboards
|
|
299
|
-
5. **Alerting**: Trigger alerts on error patterns and thresholds
|
|
300
|
-
|
|
301
|
-
**Log Query Examples (Elasticsearch DSL):**
|
|
302
|
-
```json
|
|
303
|
-
// Find all errors for a specific correlation ID
|
|
304
|
-
{
|
|
305
|
-
"query": {
|
|
306
|
-
"bool": {
|
|
307
|
-
"must": [
|
|
308
|
-
{ "match": { "correlation_id": "req-7f3b2a1c-4d5e-6f7g" }},
|
|
309
|
-
{ "term": { "level": "ERROR" }}
|
|
310
|
-
]
|
|
311
|
-
}
|
|
312
|
-
},
|
|
313
|
-
"sort": [{ "timestamp": "asc" }]
|
|
314
|
-
}
|
|
315
|
-
|
|
316
|
-
// Find error rate spike in last hour
|
|
317
|
-
{
|
|
318
|
-
"query": {
|
|
319
|
-
"bool": {
|
|
320
|
-
"must": [
|
|
321
|
-
{ "term": { "level": "ERROR" }},
|
|
322
|
-
{ "range": { "timestamp": { "gte": "now-1h" }}}
|
|
323
|
-
]
|
|
324
|
-
}
|
|
325
|
-
},
|
|
326
|
-
"aggs": {
|
|
327
|
-
"errors_per_minute": {
|
|
328
|
-
"date_histogram": {
|
|
329
|
-
"field": "timestamp",
|
|
330
|
-
"fixed_interval": "1m"
|
|
331
|
-
}
|
|
332
|
-
}
|
|
333
|
-
}
|
|
334
|
-
}
|
|
335
|
-
|
|
336
|
-
// Group errors by fingerprint to find most common issues
|
|
337
|
-
{
|
|
338
|
-
"query": {
|
|
339
|
-
"term": { "level": "ERROR" }
|
|
340
|
-
},
|
|
341
|
-
"aggs": {
|
|
342
|
-
"error_types": {
|
|
343
|
-
"terms": {
|
|
344
|
-
"field": "error.fingerprint",
|
|
345
|
-
"size": 10
|
|
346
|
-
},
|
|
347
|
-
"aggs": {
|
|
348
|
-
"affected_users": {
|
|
349
|
-
"cardinality": { "field": "user.id" }
|
|
350
|
-
}
|
|
351
|
-
}
|
|
352
|
-
}
|
|
353
|
-
}
|
|
354
|
-
}
|
|
355
|
-
```
|
|
356
|
-
|
|
357
|
-
### Pattern Detection and Anomaly Recognition
|
|
358
|
-
|
|
359
|
-
Use log analysis to identify patterns:
|
|
360
|
-
|
|
361
|
-
- **Error Rate Spikes**: Compare current error rate to historical baseline (e.g., >3 standard deviations)
|
|
362
|
-
- **New Error Types**: Alert when previously unseen error fingerprints appear
|
|
363
|
-
- **Cascading Failures**: Detect when errors in one service trigger errors in dependent services
|
|
364
|
-
- **User Impact Patterns**: Identify which users/segments are disproportionately affected
|
|
365
|
-
- **Geographic Patterns**: Spot region-specific issues (e.g., CDN problems, data center outages)
|
|
366
|
-
- **Temporal Patterns**: Find time-based issues (e.g., batch jobs, scheduled tasks, time zone bugs)
|
|
367
|
-
|
|
368
|
-
## Debugging Workflow
|
|
369
|
-
|
|
370
|
-
### Interactive Debugging
|
|
371
|
-
|
|
372
|
-
For deterministic errors in development:
|
|
373
|
-
|
|
374
|
-
**Debugger Setup:**
|
|
375
|
-
1. Set breakpoint before the error occurs
|
|
376
|
-
2. Step through code execution line by line
|
|
377
|
-
3. Inspect variable values and object state
|
|
378
|
-
4. Evaluate expressions in the debug console
|
|
379
|
-
5. Watch for unexpected state changes
|
|
380
|
-
6. Modify variables to test hypotheses
|
|
381
|
-
|
|
382
|
-
**Modern Debugging Tools:**
|
|
383
|
-
- **VS Code Debugger**: Integrated debugging for JavaScript, Python, Go, Java, C++
|
|
384
|
-
- **Chrome DevTools**: Frontend debugging with network, performance, and memory profiling
|
|
385
|
-
- **pdb/ipdb (Python)**: Interactive debugger with post-mortem analysis
|
|
386
|
-
- **dlv (Go)**: Delve debugger for Go programs
|
|
387
|
-
- **lldb (C/C++)**: Low-level debugger with reverse debugging capabilities
|
|
388
|
-
|
|
389
|
-
### Production Debugging
|
|
390
|
-
|
|
391
|
-
For errors in production environments where debuggers aren't available:
|
|
392
|
-
|
|
393
|
-
**Safe Production Debugging Techniques:**
|
|
394
|
-
|
|
395
|
-
1. **Enhanced Logging**: Add strategic log statements around suspected failure points
|
|
396
|
-
2. **Feature Flags**: Enable verbose logging for specific users/requests
|
|
397
|
-
3. **Sampling**: Log detailed context for a percentage of requests
|
|
398
|
-
4. **APM Transaction Traces**: Use DataDog APM or New Relic to see detailed transaction flows
|
|
399
|
-
5. **Distributed Tracing**: Leverage OpenTelemetry traces to understand cross-service interactions
|
|
400
|
-
6. **Profiling**: Use continuous profilers (DataDog Profiler, Pyroscope) to identify hot spots
|
|
401
|
-
7. **Heap Dumps**: Capture memory snapshots for analysis of memory leaks
|
|
402
|
-
8. **Traffic Mirroring**: Replay production traffic in staging for safe investigation
|
|
403
|
-
|
|
404
|
-
**Remote Debugging (Use Cautiously):**
|
|
405
|
-
- Attach debugger to running process only in non-critical services
|
|
406
|
-
- Use read-only breakpoints that don't pause execution
|
|
407
|
-
- Time-box debugging sessions strictly
|
|
408
|
-
- Always have rollback plan ready
|
|
409
|
-
|
|
410
|
-
### Memory and Performance Debugging
|
|
411
|
-
|
|
412
|
-
**Memory Leak Detection:**
|
|
413
|
-
```javascript
|
|
414
|
-
// Node.js heap snapshot comparison
|
|
415
|
-
const v8 = require('v8');
|
|
416
|
-
const fs = require('fs');
|
|
417
|
-
|
|
418
|
-
function takeHeapSnapshot(filename) {
|
|
419
|
-
const snapshot = v8.writeHeapSnapshot(filename);
|
|
420
|
-
console.log(`Heap snapshot written to ${snapshot}`);
|
|
421
|
-
}
|
|
422
|
-
|
|
423
|
-
// Take snapshots at intervals
|
|
424
|
-
takeHeapSnapshot('heap-before.heapsnapshot');
|
|
425
|
-
// ... run operations that might leak ...
|
|
426
|
-
takeHeapSnapshot('heap-after.heapsnapshot');
|
|
427
|
-
|
|
428
|
-
// Analyze in Chrome DevTools Memory profiler
|
|
429
|
-
// Look for objects with increasing retained size
|
|
430
|
-
```
|
|
431
|
-
|
|
432
|
-
**Performance Profiling:**
|
|
433
|
-
```python
|
|
434
|
-
# Python profiling with cProfile
|
|
435
|
-
import cProfile
|
|
436
|
-
import pstats
|
|
437
|
-
from pstats import SortKey
|
|
438
|
-
|
|
439
|
-
def profile_function():
|
|
440
|
-
profiler = cProfile.Profile()
|
|
441
|
-
profiler.enable()
|
|
442
|
-
|
|
443
|
-
# Your code here
|
|
444
|
-
process_large_dataset()
|
|
445
|
-
|
|
446
|
-
profiler.disable()
|
|
447
|
-
|
|
448
|
-
stats = pstats.Stats(profiler)
|
|
449
|
-
stats.sort_stats(SortKey.CUMULATIVE)
|
|
450
|
-
stats.print_stats(20) # Top 20 time-consuming functions
|
|
451
|
-
```
|
|
452
|
-
|
|
453
|
-
## Error Prevention Strategies
|
|
454
|
-
|
|
455
|
-
### Input Validation and Type Safety
|
|
456
|
-
|
|
457
|
-
**Defensive Programming:**
|
|
458
|
-
```typescript
|
|
459
|
-
// TypeScript: Leverage type system for compile-time safety
|
|
460
|
-
interface PaymentRequest {
|
|
461
|
-
amount: number;
|
|
462
|
-
currency: string;
|
|
463
|
-
customerId: string;
|
|
464
|
-
paymentMethodId: string;
|
|
465
|
-
}
|
|
466
|
-
|
|
467
|
-
function processPayment(request: PaymentRequest): PaymentResult {
|
|
468
|
-
// Runtime validation for external inputs
|
|
469
|
-
if (request.amount <= 0) {
|
|
470
|
-
throw new ValidationError('Amount must be positive');
|
|
471
|
-
}
|
|
472
|
-
|
|
473
|
-
if (!['USD', 'EUR', 'GBP'].includes(request.currency)) {
|
|
474
|
-
throw new ValidationError('Unsupported currency');
|
|
475
|
-
}
|
|
476
|
-
|
|
477
|
-
// Use Zod or Yup for complex validation
|
|
478
|
-
const schema = z.object({
|
|
479
|
-
amount: z.number().positive().max(1000000),
|
|
480
|
-
currency: z.enum(['USD', 'EUR', 'GBP']),
|
|
481
|
-
customerId: z.string().uuid(),
|
|
482
|
-
paymentMethodId: z.string().min(1)
|
|
483
|
-
});
|
|
484
|
-
|
|
485
|
-
const validated = schema.parse(request);
|
|
486
|
-
|
|
487
|
-
// Now safe to process
|
|
488
|
-
return chargeCustomer(validated);
|
|
489
|
-
}
|
|
490
|
-
```
|
|
491
|
-
|
|
492
|
-
**Python Type Hints and Validation:**
|
|
493
|
-
```python
|
|
494
|
-
from typing import Optional
|
|
495
|
-
from pydantic import BaseModel, validator, Field
|
|
496
|
-
from decimal import Decimal
|
|
497
|
-
|
|
498
|
-
class PaymentRequest(BaseModel):
|
|
499
|
-
amount: Decimal = Field(..., gt=0, le=1000000)
|
|
500
|
-
currency: str
|
|
501
|
-
customer_id: str
|
|
502
|
-
payment_method_id: str
|
|
503
|
-
|
|
504
|
-
@validator('currency')
|
|
505
|
-
def validate_currency(cls, v):
|
|
506
|
-
if v not in ['USD', 'EUR', 'GBP']:
|
|
507
|
-
raise ValueError('Unsupported currency')
|
|
508
|
-
return v
|
|
509
|
-
|
|
510
|
-
@validator('customer_id', 'payment_method_id')
|
|
511
|
-
def validate_ids(cls, v):
|
|
512
|
-
if not v or len(v) < 1:
|
|
513
|
-
raise ValueError('ID cannot be empty')
|
|
514
|
-
return v
|
|
515
|
-
|
|
516
|
-
def process_payment(request: PaymentRequest) -> PaymentResult:
|
|
517
|
-
# Pydantic validates automatically on instantiation
|
|
518
|
-
# Type hints provide IDE support and static analysis
|
|
519
|
-
return charge_customer(request)
|
|
520
|
-
```
|
|
521
|
-
|
|
522
|
-
### Error Boundaries and Graceful Degradation
|
|
523
|
-
|
|
524
|
-
**React Error Boundaries:**
|
|
525
|
-
```typescript
|
|
526
|
-
import React, { Component, ErrorInfo, ReactNode } from 'react';
|
|
527
|
-
import * as Sentry from '@sentry/react';
|
|
528
|
-
|
|
529
|
-
interface Props {
|
|
530
|
-
children: ReactNode;
|
|
531
|
-
fallback?: ReactNode;
|
|
532
|
-
}
|
|
533
|
-
|
|
534
|
-
interface State {
|
|
535
|
-
hasError: boolean;
|
|
536
|
-
error?: Error;
|
|
537
|
-
}
|
|
538
|
-
|
|
539
|
-
class ErrorBoundary extends Component<Props, State> {
|
|
540
|
-
public state: State = {
|
|
541
|
-
hasError: false
|
|
542
|
-
};
|
|
543
|
-
|
|
544
|
-
public static getDerivedStateFromError(error: Error): State {
|
|
545
|
-
return { hasError: true, error };
|
|
546
|
-
}
|
|
547
|
-
|
|
548
|
-
public componentDidCatch(error: Error, errorInfo: ErrorInfo) {
|
|
549
|
-
// Log to error tracking service
|
|
550
|
-
Sentry.captureException(error, {
|
|
551
|
-
contexts: {
|
|
552
|
-
react: {
|
|
553
|
-
componentStack: errorInfo.componentStack
|
|
554
|
-
}
|
|
555
|
-
}
|
|
556
|
-
});
|
|
557
|
-
|
|
558
|
-
console.error('Uncaught error:', error, errorInfo);
|
|
559
|
-
}
|
|
560
|
-
|
|
561
|
-
public render() {
|
|
562
|
-
if (this.state.hasError) {
|
|
563
|
-
return this.props.fallback || (
|
|
564
|
-
<div role="alert">
|
|
565
|
-
<h2>Something went wrong</h2>
|
|
566
|
-
<details>
|
|
567
|
-
<summary>Error details</summary>
|
|
568
|
-
<pre>{this.state.error?.message}</pre>
|
|
569
|
-
</details>
|
|
570
|
-
</div>
|
|
571
|
-
);
|
|
572
|
-
}
|
|
573
|
-
|
|
574
|
-
return this.props.children;
|
|
575
|
-
}
|
|
576
|
-
}
|
|
577
|
-
|
|
578
|
-
export default ErrorBoundary;
|
|
579
|
-
```
|
|
580
|
-
|
|
581
|
-
**Circuit Breaker Pattern:**
|
|
582
53
|
```python
|
|
583
|
-
from datetime import datetime, timedelta
|
|
584
|
-
from enum import Enum
|
|
585
54
|
import time
|
|
586
55
|
|
|
587
|
-
|
|
588
|
-
|
|
589
|
-
|
|
590
|
-
HALF_OPEN = "half_open" # Testing if service recovered
|
|
591
|
-
|
|
592
|
-
class CircuitBreaker:
|
|
593
|
-
def __init__(self, failure_threshold=5, timeout=60, success_threshold=2):
|
|
594
|
-
self.failure_threshold = failure_threshold
|
|
595
|
-
self.timeout = timeout
|
|
596
|
-
self.success_threshold = success_threshold
|
|
597
|
-
self.failure_count = 0
|
|
598
|
-
self.success_count = 0
|
|
599
|
-
self.last_failure_time = None
|
|
600
|
-
self.state = CircuitState.CLOSED
|
|
601
|
-
|
|
602
|
-
def call(self, func, *args, **kwargs):
|
|
603
|
-
if self.state == CircuitState.OPEN:
|
|
604
|
-
if self._should_attempt_reset():
|
|
605
|
-
self.state = CircuitState.HALF_OPEN
|
|
606
|
-
else:
|
|
607
|
-
raise CircuitBreakerOpenError("Circuit breaker is OPEN")
|
|
608
|
-
|
|
609
|
-
try:
|
|
610
|
-
result = func(*args, **kwargs)
|
|
611
|
-
self._on_success()
|
|
612
|
-
return result
|
|
613
|
-
except Exception as e:
|
|
614
|
-
self._on_failure()
|
|
615
|
-
raise
|
|
616
|
-
|
|
617
|
-
def _on_success(self):
|
|
618
|
-
self.failure_count = 0
|
|
619
|
-
if self.state == CircuitState.HALF_OPEN:
|
|
620
|
-
self.success_count += 1
|
|
621
|
-
if self.success_count >= self.success_threshold:
|
|
622
|
-
self.state = CircuitState.CLOSED
|
|
623
|
-
self.success_count = 0
|
|
624
|
-
|
|
625
|
-
def _on_failure(self):
|
|
626
|
-
self.failure_count += 1
|
|
627
|
-
self.last_failure_time = datetime.now()
|
|
628
|
-
if self.failure_count >= self.failure_threshold:
|
|
629
|
-
self.state = CircuitState.OPEN
|
|
630
|
-
|
|
631
|
-
def _should_attempt_reset(self):
|
|
632
|
-
return (datetime.now() - self.last_failure_time) > timedelta(seconds=self.timeout)
|
|
633
|
-
|
|
634
|
-
# Usage
|
|
635
|
-
payment_circuit = CircuitBreaker(failure_threshold=5, timeout=60)
|
|
636
|
-
|
|
637
|
-
def process_payment_with_circuit_breaker(payment_data):
|
|
56
|
+
def observe_call(operation, record):
|
|
57
|
+
started = time.monotonic()
|
|
58
|
+
event = {"status": "ok"}
|
|
638
59
|
try:
|
|
639
|
-
|
|
640
|
-
|
|
641
|
-
|
|
642
|
-
|
|
643
|
-
|
|
644
|
-
|
|
645
|
-
```
|
|
646
|
-
|
|
647
|
-
### Retry Logic with Exponential Backoff
|
|
648
|
-
|
|
649
|
-
```typescript
|
|
650
|
-
// TypeScript retry implementation
|
|
651
|
-
interface RetryOptions {
|
|
652
|
-
maxAttempts: number;
|
|
653
|
-
baseDelayMs: number;
|
|
654
|
-
maxDelayMs: number;
|
|
655
|
-
exponentialBase: number;
|
|
656
|
-
retryableErrors?: string[];
|
|
657
|
-
}
|
|
658
|
-
|
|
659
|
-
async function retryWithBackoff<T>(
|
|
660
|
-
fn: () => Promise<T>,
|
|
661
|
-
options: RetryOptions = {
|
|
662
|
-
maxAttempts: 3,
|
|
663
|
-
baseDelayMs: 1000,
|
|
664
|
-
maxDelayMs: 30000,
|
|
665
|
-
exponentialBase: 2
|
|
666
|
-
}
|
|
667
|
-
): Promise<T> {
|
|
668
|
-
let lastError: Error;
|
|
669
|
-
|
|
670
|
-
for (let attempt = 0; attempt < options.maxAttempts; attempt++) {
|
|
671
|
-
try {
|
|
672
|
-
return await fn();
|
|
673
|
-
} catch (error) {
|
|
674
|
-
lastError = error as Error;
|
|
675
|
-
|
|
676
|
-
// Check if error is retryable
|
|
677
|
-
if (options.retryableErrors &&
|
|
678
|
-
!options.retryableErrors.includes(error.name)) {
|
|
679
|
-
throw error; // Don't retry non-retryable errors
|
|
680
|
-
}
|
|
681
|
-
|
|
682
|
-
if (attempt < options.maxAttempts - 1) {
|
|
683
|
-
const delay = Math.min(
|
|
684
|
-
options.baseDelayMs * Math.pow(options.exponentialBase, attempt),
|
|
685
|
-
options.maxDelayMs
|
|
686
|
-
);
|
|
687
|
-
|
|
688
|
-
// Add jitter to prevent thundering herd
|
|
689
|
-
const jitter = Math.random() * 0.1 * delay;
|
|
690
|
-
const actualDelay = delay + jitter;
|
|
691
|
-
|
|
692
|
-
console.log(`Attempt ${attempt + 1} failed, retrying in ${actualDelay}ms`);
|
|
693
|
-
await new Promise(resolve => setTimeout(resolve, actualDelay));
|
|
694
|
-
}
|
|
695
|
-
}
|
|
696
|
-
}
|
|
697
|
-
|
|
698
|
-
throw lastError!;
|
|
699
|
-
}
|
|
700
|
-
|
|
701
|
-
// Usage
|
|
702
|
-
const result = await retryWithBackoff(
|
|
703
|
-
() => fetch('https://api.example.com/data'),
|
|
704
|
-
{
|
|
705
|
-
maxAttempts: 3,
|
|
706
|
-
baseDelayMs: 1000,
|
|
707
|
-
maxDelayMs: 10000,
|
|
708
|
-
exponentialBase: 2,
|
|
709
|
-
retryableErrors: ['NetworkError', 'TimeoutError']
|
|
710
|
-
}
|
|
711
|
-
);
|
|
712
|
-
```
|
|
713
|
-
|
|
714
|
-
## Monitoring and Alerting Integration
|
|
715
|
-
|
|
716
|
-
### Modern Observability Stack (2025)
|
|
717
|
-
|
|
718
|
-
**Recommended Architecture:**
|
|
719
|
-
- **Metrics**: Prometheus + Grafana or DataDog
|
|
720
|
-
- **Logs**: Elasticsearch/Loki + Fluentd or DataDog Logs
|
|
721
|
-
- **Traces**: OpenTelemetry + Jaeger/Tempo or DataDog APM
|
|
722
|
-
- **Errors**: Sentry or DataDog Error Tracking
|
|
723
|
-
- **Frontend**: Sentry Browser SDK or DataDog RUM
|
|
724
|
-
- **Synthetics**: DataDog Synthetics or Checkly
|
|
725
|
-
|
|
726
|
-
### Sentry Integration
|
|
727
|
-
|
|
728
|
-
**Node.js/Express Setup:**
|
|
729
|
-
```javascript
|
|
730
|
-
const Sentry = require('@sentry/node');
|
|
731
|
-
const { ProfilingIntegration } = require('@sentry/profiling-node');
|
|
732
|
-
|
|
733
|
-
Sentry.init({
|
|
734
|
-
dsn: process.env.SENTRY_DSN,
|
|
735
|
-
environment: process.env.NODE_ENV,
|
|
736
|
-
release: process.env.GIT_COMMIT_SHA,
|
|
737
|
-
|
|
738
|
-
// Performance monitoring
|
|
739
|
-
tracesSampleRate: 0.1, // 10% of transactions
|
|
740
|
-
profilesSampleRate: 0.1,
|
|
741
|
-
|
|
742
|
-
integrations: [
|
|
743
|
-
new ProfilingIntegration(),
|
|
744
|
-
new Sentry.Integrations.Http({ tracing: true }),
|
|
745
|
-
new Sentry.Integrations.Express({ app }),
|
|
746
|
-
],
|
|
747
|
-
|
|
748
|
-
beforeSend(event, hint) {
|
|
749
|
-
// Scrub sensitive data
|
|
750
|
-
if (event.request) {
|
|
751
|
-
delete event.request.cookies;
|
|
752
|
-
delete event.request.headers?.authorization;
|
|
753
|
-
}
|
|
754
|
-
|
|
755
|
-
// Add custom context
|
|
756
|
-
event.tags = {
|
|
757
|
-
...event.tags,
|
|
758
|
-
region: process.env.AWS_REGION,
|
|
759
|
-
instance_id: process.env.INSTANCE_ID
|
|
760
|
-
};
|
|
761
|
-
|
|
762
|
-
return event;
|
|
763
|
-
}
|
|
764
|
-
});
|
|
765
|
-
|
|
766
|
-
// Express middleware
|
|
767
|
-
app.use(Sentry.Handlers.requestHandler());
|
|
768
|
-
app.use(Sentry.Handlers.tracingHandler());
|
|
769
|
-
|
|
770
|
-
// Routes here...
|
|
771
|
-
|
|
772
|
-
// Error handler (must be last)
|
|
773
|
-
app.use(Sentry.Handlers.errorHandler());
|
|
774
|
-
|
|
775
|
-
// Manual error capture with context
|
|
776
|
-
function processOrder(orderId) {
|
|
777
|
-
try {
|
|
778
|
-
const order = getOrder(orderId);
|
|
779
|
-
chargeCustomer(order);
|
|
780
|
-
} catch (error) {
|
|
781
|
-
Sentry.captureException(error, {
|
|
782
|
-
tags: {
|
|
783
|
-
operation: 'process_order',
|
|
784
|
-
order_id: orderId
|
|
785
|
-
},
|
|
786
|
-
contexts: {
|
|
787
|
-
order: {
|
|
788
|
-
id: orderId,
|
|
789
|
-
status: order?.status,
|
|
790
|
-
amount: order?.amount
|
|
791
|
-
}
|
|
792
|
-
},
|
|
793
|
-
user: {
|
|
794
|
-
id: order?.customerId
|
|
795
|
-
}
|
|
796
|
-
});
|
|
797
|
-
throw error;
|
|
798
|
-
}
|
|
799
|
-
}
|
|
800
|
-
```
|
|
801
|
-
|
|
802
|
-
### DataDog APM Integration
|
|
803
|
-
|
|
804
|
-
**Python/Flask Setup:**
|
|
805
|
-
```python
|
|
806
|
-
from ddtrace import patch_all, tracer
|
|
807
|
-
from ddtrace.contrib.flask import TraceMiddleware
|
|
808
|
-
import logging
|
|
809
|
-
|
|
810
|
-
# Auto-instrument common libraries
|
|
811
|
-
patch_all()
|
|
812
|
-
|
|
813
|
-
app = Flask(__name__)
|
|
814
|
-
|
|
815
|
-
# Initialize tracing
|
|
816
|
-
TraceMiddleware(app, tracer, service='payment-service')
|
|
817
|
-
|
|
818
|
-
# Custom span for detailed tracing
|
|
819
|
-
@app.route('/api/v1/payments/charge', methods=['POST'])
|
|
820
|
-
def charge_payment():
|
|
821
|
-
with tracer.trace('payment.charge', service='payment-service') as span:
|
|
822
|
-
payment_data = request.json
|
|
823
|
-
|
|
824
|
-
# Add custom tags
|
|
825
|
-
span.set_tag('payment.amount', payment_data['amount'])
|
|
826
|
-
span.set_tag('payment.currency', payment_data['currency'])
|
|
827
|
-
span.set_tag('customer.id', payment_data['customer_id'])
|
|
828
|
-
|
|
60
|
+
return operation()
|
|
61
|
+
except Exception as error:
|
|
62
|
+
event = {"status": "error", "error_type": type(error).__name__}
|
|
63
|
+
raise
|
|
64
|
+
finally:
|
|
65
|
+
event["duration_seconds"] = time.monotonic() - started
|
|
829
66
|
try:
|
|
830
|
-
|
|
831
|
-
|
|
832
|
-
|
|
833
|
-
|
|
834
|
-
|
|
835
|
-
|
|
836
|
-
|
|
837
|
-
|
|
838
|
-
|
|
839
|
-
|
|
840
|
-
|
|
841
|
-
|
|
842
|
-
|
|
843
|
-
|
|
844
|
-
|
|
845
|
-
|
|
846
|
-
|
|
847
|
-
|
|
848
|
-
|
|
849
|
-
|
|
850
|
-
|
|
851
|
-
|
|
852
|
-
|
|
853
|
-
|
|
854
|
-
|
|
855
|
-
|
|
856
|
-
|
|
857
|
-
|
|
858
|
-
|
|
859
|
-
|
|
860
|
-
|
|
861
|
-
|
|
862
|
-
|
|
863
|
-
|
|
864
|
-
|
|
865
|
-
|
|
866
|
-
|
|
867
|
-
|
|
868
|
-
|
|
869
|
-
|
|
870
|
-
|
|
871
|
-
|
|
872
|
-
|
|
873
|
-
|
|
874
|
-
|
|
875
|
-
|
|
876
|
-
|
|
877
|
-
|
|
878
|
-
|
|
879
|
-
|
|
880
|
-
|
|
881
|
-
|
|
882
|
-
|
|
883
|
-
|
|
884
|
-
|
|
885
|
-
|
|
886
|
-
|
|
887
|
-
|
|
888
|
-
|
|
889
|
-
|
|
890
|
-
|
|
891
|
-
|
|
892
|
-
|
|
893
|
-
|
|
894
|
-
|
|
895
|
-
|
|
896
|
-
|
|
897
|
-
|
|
898
|
-
|
|
899
|
-
|
|
900
|
-
|
|
901
|
-
|
|
902
|
-
|
|
903
|
-
|
|
904
|
-
span.SetStatus(codes.Ok, "Payment processed successfully")
|
|
905
|
-
return nil
|
|
906
|
-
}
|
|
907
|
-
|
|
908
|
-
func chargeCard(ctx context.Context, paymentReq PaymentRequest) error {
|
|
909
|
-
tracer := otel.Tracer("payment-service")
|
|
910
|
-
ctx, span := tracer.Start(ctx, "chargeCard")
|
|
911
|
-
defer span.End()
|
|
912
|
-
|
|
913
|
-
// Simulate external API call
|
|
914
|
-
result, err := paymentGateway.Charge(ctx, paymentReq)
|
|
915
|
-
if err != nil {
|
|
916
|
-
return fmt.Errorf("payment gateway error: %w", err)
|
|
917
|
-
}
|
|
918
|
-
|
|
919
|
-
span.SetAttributes(
|
|
920
|
-
attribute.String("transaction.id", result.TransactionID),
|
|
921
|
-
attribute.String("gateway.response_code", result.ResponseCode),
|
|
922
|
-
)
|
|
923
|
-
|
|
924
|
-
return nil
|
|
925
|
-
}
|
|
926
|
-
```
|
|
927
|
-
|
|
928
|
-
### Alert Configuration
|
|
929
|
-
|
|
930
|
-
**Intelligent Alerting Strategy:**
|
|
931
|
-
|
|
932
|
-
```yaml
|
|
933
|
-
# DataDog Monitor Configuration
|
|
934
|
-
monitors:
|
|
935
|
-
- name: "High Error Rate - Payment Service"
|
|
936
|
-
type: metric
|
|
937
|
-
query: "avg(last_5m):sum:trace.express.request.errors{service:payment-service} / sum:trace.express.request.hits{service:payment-service} > 0.05"
|
|
938
|
-
message: |
|
|
939
|
-
Payment service error rate is {{value}}% (threshold: 5%)
|
|
940
|
-
|
|
941
|
-
This may indicate:
|
|
942
|
-
- Payment gateway issues
|
|
943
|
-
- Database connectivity problems
|
|
944
|
-
- Invalid payment data
|
|
945
|
-
|
|
946
|
-
Runbook: https://wiki.company.com/runbooks/payment-errors
|
|
947
|
-
|
|
948
|
-
@slack-payments-oncall @pagerduty-payments
|
|
949
|
-
|
|
950
|
-
tags:
|
|
951
|
-
- service:payment-service
|
|
952
|
-
- severity:high
|
|
953
|
-
|
|
954
|
-
options:
|
|
955
|
-
notify_no_data: true
|
|
956
|
-
no_data_timeframe: 10
|
|
957
|
-
escalation_message: "Error rate still elevated after 10 minutes"
|
|
958
|
-
|
|
959
|
-
- name: "New Error Type Detected"
|
|
960
|
-
type: log
|
|
961
|
-
query: "logs(\"level:ERROR service:payment-service\").rollup(\"count\").by(\"error.fingerprint\").last(\"5m\") > 0"
|
|
962
|
-
message: |
|
|
963
|
-
New error type detected in payment service: {{error.fingerprint}}
|
|
964
|
-
|
|
965
|
-
First occurrence: {{timestamp}}
|
|
966
|
-
Affected users: {{user_count}}
|
|
967
|
-
|
|
968
|
-
@slack-engineering
|
|
969
|
-
|
|
970
|
-
options:
|
|
971
|
-
enable_logs_sample: true
|
|
972
|
-
|
|
973
|
-
- name: "Payment Service - P95 Latency High"
|
|
974
|
-
type: metric
|
|
975
|
-
query: "avg(last_10m):p95:trace.express.request.duration{service:payment-service} > 2000"
|
|
976
|
-
message: |
|
|
977
|
-
Payment service P95 latency is {{value}}ms (threshold: 2000ms)
|
|
978
|
-
|
|
979
|
-
Check:
|
|
980
|
-
- Database query performance
|
|
981
|
-
- External API response times
|
|
982
|
-
- Resource constraints (CPU/memory)
|
|
983
|
-
|
|
984
|
-
Dashboard: https://app.datadoghq.com/dashboard/payment-service
|
|
985
|
-
|
|
986
|
-
@slack-payments-team
|
|
987
|
-
```
|
|
988
|
-
|
|
989
|
-
## Production Incident Response
|
|
990
|
-
|
|
991
|
-
### Incident Response Workflow
|
|
992
|
-
|
|
993
|
-
**Phase 1: Detection and Triage (0-5 minutes)**
|
|
994
|
-
1. Acknowledge the alert/incident
|
|
995
|
-
2. Check incident severity and user impact
|
|
996
|
-
3. Assign incident commander
|
|
997
|
-
4. Create incident channel (#incident-2025-10-11-payment-errors)
|
|
998
|
-
5. Update status page if customer-facing
|
|
999
|
-
|
|
1000
|
-
**Phase 2: Investigation (5-30 minutes)**
|
|
1001
|
-
1. Gather observability data:
|
|
1002
|
-
- Error rates from Sentry/DataDog
|
|
1003
|
-
- Traces showing failed requests
|
|
1004
|
-
- Logs around the incident start time
|
|
1005
|
-
- Metrics showing resource usage, latency, throughput
|
|
1006
|
-
2. Correlate with recent changes:
|
|
1007
|
-
- Recent deployments (check CI/CD pipeline)
|
|
1008
|
-
- Configuration changes
|
|
1009
|
-
- Infrastructure changes
|
|
1010
|
-
- External dependencies status
|
|
1011
|
-
3. Form initial hypothesis about root cause
|
|
1012
|
-
4. Document findings in incident log
|
|
1013
|
-
|
|
1014
|
-
**Phase 3: Mitigation (Immediate)**
|
|
1015
|
-
1. Implement immediate fix based on hypothesis:
|
|
1016
|
-
- Rollback recent deployment
|
|
1017
|
-
- Scale up resources
|
|
1018
|
-
- Disable problematic feature (feature flag)
|
|
1019
|
-
- Failover to backup system
|
|
1020
|
-
- Apply hotfix
|
|
1021
|
-
2. Verify mitigation worked (error rate decreases)
|
|
1022
|
-
3. Monitor for 15-30 minutes to ensure stability
|
|
1023
|
-
|
|
1024
|
-
**Phase 4: Recovery and Validation**
|
|
1025
|
-
1. Verify all systems operational
|
|
1026
|
-
2. Check data consistency
|
|
1027
|
-
3. Process queued/failed requests
|
|
1028
|
-
4. Update status page: incident resolved
|
|
1029
|
-
5. Notify stakeholders
|
|
1030
|
-
|
|
1031
|
-
**Phase 5: Post-Incident Review**
|
|
1032
|
-
1. Schedule postmortem within 48 hours
|
|
1033
|
-
2. Create detailed timeline of events
|
|
1034
|
-
3. Identify root cause (may differ from initial hypothesis)
|
|
1035
|
-
4. Document contributing factors
|
|
1036
|
-
5. Create action items for:
|
|
1037
|
-
- Preventing similar incidents
|
|
1038
|
-
- Improving detection time
|
|
1039
|
-
- Improving mitigation time
|
|
1040
|
-
- Improving communication
|
|
1041
|
-
|
|
1042
|
-
### Incident Investigation Tools
|
|
1043
|
-
|
|
1044
|
-
**Query Patterns for Common Incidents:**
|
|
1045
|
-
|
|
1046
|
-
```
|
|
1047
|
-
# Find all errors for a specific time window (Elasticsearch)
|
|
1048
|
-
GET /logs-*/_search
|
|
1049
|
-
{
|
|
1050
|
-
"query": {
|
|
1051
|
-
"bool": {
|
|
1052
|
-
"must": [
|
|
1053
|
-
{ "term": { "level": "ERROR" }},
|
|
1054
|
-
{ "term": { "service": "payment-service" }},
|
|
1055
|
-
{ "range": { "timestamp": {
|
|
1056
|
-
"gte": "2025-10-11T14:00:00Z",
|
|
1057
|
-
"lte": "2025-10-11T14:30:00Z"
|
|
1058
|
-
}}}
|
|
1059
|
-
]
|
|
1060
|
-
}
|
|
1061
|
-
},
|
|
1062
|
-
"sort": [{ "timestamp": "asc" }],
|
|
1063
|
-
"size": 1000
|
|
1064
|
-
}
|
|
1065
|
-
|
|
1066
|
-
# Find correlation between errors and deployments (DataDog)
|
|
1067
|
-
# Use deployment tracking to overlay deployment markers on error graphs
|
|
1068
|
-
# Query: sum:trace.express.request.errors{service:payment-service} by {version}
|
|
1069
|
-
|
|
1070
|
-
# Identify affected users (Sentry)
|
|
1071
|
-
# Navigate to issue → User Impact tab
|
|
1072
|
-
# Shows: total users affected, new vs returning, geographic distribution
|
|
1073
|
-
|
|
1074
|
-
# Trace specific failed request (OpenTelemetry/Jaeger)
|
|
1075
|
-
# Search by trace_id or correlation_id
|
|
1076
|
-
# Visualize full request path across services
|
|
1077
|
-
# Identify which service/span failed
|
|
1078
|
-
```
|
|
1079
|
-
|
|
1080
|
-
### Communication Templates
|
|
1081
|
-
|
|
1082
|
-
**Initial Incident Notification:**
|
|
1083
|
-
```
|
|
1084
|
-
🚨 INCIDENT: Payment Processing Errors
|
|
1085
|
-
|
|
1086
|
-
Severity: High
|
|
1087
|
-
Status: Investigating
|
|
1088
|
-
Started: 2025-10-11 14:23 UTC
|
|
1089
|
-
Incident Commander: @jane.smith
|
|
1090
|
-
|
|
1091
|
-
Symptoms:
|
|
1092
|
-
- Payment processing error rate: 15% (normal: <1%)
|
|
1093
|
-
- Affected users: ~500 in last 10 minutes
|
|
1094
|
-
- Error: "Database connection timeout"
|
|
1095
|
-
|
|
1096
|
-
Actions Taken:
|
|
1097
|
-
- Investigating database connection pool
|
|
1098
|
-
- Checking recent deployments
|
|
1099
|
-
- Monitoring error rate
|
|
1100
|
-
|
|
1101
|
-
Updates: Will provide update every 15 minutes
|
|
1102
|
-
Status Page: https://status.company.com/incident/abc123
|
|
1103
|
-
```
|
|
1104
|
-
|
|
1105
|
-
**Mitigation Notification:**
|
|
1106
|
-
```
|
|
1107
|
-
✅ INCIDENT UPDATE: Mitigation Applied
|
|
1108
|
-
|
|
1109
|
-
Severity: High → Medium
|
|
1110
|
-
Status: Mitigated
|
|
1111
|
-
Duration: 27 minutes
|
|
1112
|
-
|
|
1113
|
-
Root Cause: Database connection pool exhausted due to long-running queries
|
|
1114
|
-
introduced in v2.3.1 deployment at 14:00 UTC
|
|
1115
|
-
|
|
1116
|
-
Mitigation: Rolled back to v2.3.0
|
|
1117
|
-
|
|
1118
|
-
Current Status:
|
|
1119
|
-
- Error rate: 0.5% (back to normal)
|
|
1120
|
-
- All systems operational
|
|
1121
|
-
- Processing backlog of queued payments
|
|
1122
|
-
|
|
1123
|
-
Next Steps:
|
|
1124
|
-
- Monitor for 30 minutes
|
|
1125
|
-
- Fix query performance issue
|
|
1126
|
-
- Deploy fixed version with testing
|
|
1127
|
-
- Schedule postmortem
|
|
1128
|
-
```
|
|
1129
|
-
|
|
1130
|
-
## Error Analysis Deliverables
|
|
1131
|
-
|
|
1132
|
-
For each error analysis, provide:
|
|
1133
|
-
|
|
1134
|
-
1. **Error Summary**: What happened, when, impact scope
|
|
1135
|
-
2. **Root Cause**: The fundamental reason the error occurred
|
|
1136
|
-
3. **Evidence**: Stack traces, logs, metrics supporting the diagnosis
|
|
1137
|
-
4. **Immediate Fix**: Code changes to resolve the issue
|
|
1138
|
-
5. **Testing Strategy**: How to verify the fix works
|
|
1139
|
-
6. **Preventive Measures**: How to prevent similar errors in the future
|
|
1140
|
-
7. **Monitoring Recommendations**: What to monitor/alert on going forward
|
|
1141
|
-
8. **Runbook**: Step-by-step guide for handling similar incidents
|
|
1142
|
-
|
|
1143
|
-
Prioritize actionable recommendations that improve system reliability and reduce MTTR (Mean Time To Resolution) for future incidents.
|
|
67
|
+
record(event)
|
|
68
|
+
except Exception:
|
|
69
|
+
# The application's telemetry health channel should report sink failures.
|
|
70
|
+
# Do not replay the original business operation because logging failed.
|
|
71
|
+
pass
|
|
72
|
+
```
|
|
73
|
+
|
|
74
|
+
This helper does not provide trace propagation, durable logs, async cancellation
|
|
75
|
+
handling or a production error policy. It is a bounded example of separating the
|
|
76
|
+
business result from telemetry delivery, not a recommendation to ignore sink failures.
|
|
77
|
+
|
|
78
|
+
## Retry and circuit-breaker requirements
|
|
79
|
+
|
|
80
|
+
Use the established client/library rather than a handwritten universal retry wrapper.
|
|
81
|
+
Define retryable transport/status failures, total deadline, attempt limit, jitter and
|
|
82
|
+
Retry-After handling. `fetch()` does not reject merely because HTTP returned 500; inspect
|
|
83
|
+
status explicitly. Do not retry authentication, validation or other permanent failures.
|
|
84
|
+
For writes, require a stable application operation ID and provider idempotency contract;
|
|
85
|
+
a timeout can occur after the remote side effect completed.
|
|
86
|
+
|
|
87
|
+
A circuit breaker needs a clear failure predicate, monotonic timing, concurrency-safe
|
|
88
|
+
state, bounded half-open probes and an explicit outage response. Returning a queued
|
|
89
|
+
payment is truthful only after durable authorized enqueue with deduplication and
|
|
90
|
+
reconciliation. Never promise a later charge because an in-memory circuit opened.
|
|
91
|
+
|
|
92
|
+
## Vendor integrations
|
|
93
|
+
|
|
94
|
+
Read the installed version's primary documentation for Sentry, Datadog or OpenTelemetry.
|
|
95
|
+
Use one compatible instrumentation path and verify import/runtime support, initialization
|
|
96
|
+
order, sampling, exporter destination and shutdown/flush behavior. Avoid duplicate
|
|
97
|
+
instrumentation. Configure source maps and test a synthetic error with no private data.
|
|
98
|
+
The received event must have the expected release and safe fields before enabling the
|
|
99
|
+
same configuration for real traffic. An exporter connection succeeding is not proof
|
|
100
|
+
that every exception, log or trace was scrubbed.
|
|
101
|
+
|
|
102
|
+
For HTTP/OTLP, use the approved encrypted/authenticated endpoint. Do not copy an insecure
|
|
103
|
+
collector example into an exposed deployment. Do not send raw exception messages as
|
|
104
|
+
span status or customer identifiers as unbounded metric labels.
|
|
105
|
+
|
|
106
|
+
## Production diagnostics and mitigation
|
|
107
|
+
|
|
108
|
+
Use the incident owner's authorized process. A heap dump can contain all in-memory
|
|
109
|
+
secrets and can pause or exhaust the process. Traffic replay can disclose data or repeat
|
|
110
|
+
writes even in staging. Verbose logging and remote debuggers have operational costs.
|
|
111
|
+
Do not label those techniques safe by default; use a narrowly approved capture, access
|
|
112
|
+
controls, retention and rollback. Prefer a synthetic reproduction when it answers the
|
|
113
|
+
question without production access.
|
|
114
|
+
|
|
115
|
+
Mitigation can precede a complete diagnosis when the incident procedure authorizes it.
|
|
116
|
+
Verify actual user behavior, queue/backlog and data consistency after rollback/disable/
|
|
117
|
+
failover. Do not replay failed financial or external writes until their remote status
|
|
118
|
+
and idempotency are reconciled. Keep residual impact explicit.
|
|
119
|
+
|
|
120
|
+
## Alerts and communication
|
|
121
|
+
|
|
122
|
+
Define an actionable signal, population/window, threshold rationale, missing-data
|
|
123
|
+
behavior and owner. A ratio of 0.05 is 5%, not 0.05%; keep units consistent in query and
|
|
124
|
+
message. An error count without request volume is not an error rate. Existing historical
|
|
125
|
+
counts and illustrative thresholds are not default paging policy.
|
|
126
|
+
|
|
127
|
+
Prepare incident updates from verified facts: symptom, scope, current status, actions
|
|
128
|
+
actually taken and next update commitment agreed by the owner. Do not fabricate named
|
|
129
|
+
responders, metrics, resolution times or cause. Drafting does not authorize sending,
|
|
130
|
+
creating channels, paging people or changing the public status page.
|
|
131
|
+
|
|
132
|
+
## Worked investigation
|
|
133
|
+
|
|
134
|
+
A new release shows request timeouts while database CPU remains stable. Compare active
|
|
135
|
+
connections, queue wait and query count per request against the prior revision. If a
|
|
136
|
+
fixture shows one query per list item and the prior code used a batched lookup, add a
|
|
137
|
+
query-count regression and measure the fix. If the query count does not change, reject
|
|
138
|
+
that hypothesis and inspect the pool/lock path. Expected report: evidence, reproduced
|
|
139
|
+
trigger, tested fix or remaining hypotheses, and operational limits. No diagnosis is
|
|
140
|
+
established merely by recognizing an error-string pattern.
|