@jetrabbits/agentic 0.0.1
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/AGENTS.md +143 -0
- package/README.md +154 -0
- package/agentic +1615 -0
- package/areas/devops/ci-cd/AGENTS.md +48 -0
- package/areas/devops/ci-cd/PROMPTS.md +7 -0
- package/areas/devops/ci-cd/prompts/onboard-repo.md +97 -0
- package/areas/devops/ci-cd/prompts/pipeline-debug.md +103 -0
- package/areas/devops/ci-cd/prompts/release-pipeline.md +115 -0
- package/areas/devops/ci-cd/rules/pipeline-standards.md +33 -0
- package/areas/devops/ci-cd/rules/quality-gates.md +24 -0
- package/areas/devops/ci-cd/rules/supply-chain-security.md +34 -0
- package/areas/devops/ci-cd/skills/artifact-management/SKILL.md +157 -0
- package/areas/devops/ci-cd/skills/build-optimization/SKILL.md +168 -0
- package/areas/devops/ci-cd/skills/github-actions-patterns/SKILL.md +190 -0
- package/areas/devops/ci-cd/skills/gitlab-ci-patterns/SKILL.md +169 -0
- package/areas/devops/ci-cd/skills/pipeline-security/SKILL.md +161 -0
- package/areas/devops/ci-cd/workflows/onboard-repo.md +73 -0
- package/areas/devops/ci-cd/workflows/pipeline-debug.md +66 -0
- package/areas/devops/ci-cd/workflows/release-pipeline.md +115 -0
- package/areas/devops/database-ops/AGENTS.md +47 -0
- package/areas/devops/database-ops/prompts/backup-verify.md +83 -0
- package/areas/devops/database-ops/prompts/db-incident.md +127 -0
- package/areas/devops/database-ops/rules/access-control.md +20 -0
- package/areas/devops/database-ops/rules/backup-policy.md +33 -0
- package/areas/devops/database-ops/rules/migration-runbook.md +32 -0
- package/areas/devops/database-ops/skills/backup-restore/SKILL.md +226 -0
- package/areas/devops/database-ops/skills/db-performance/SKILL.md +205 -0
- package/areas/devops/database-ops/skills/migration-safety/SKILL.md +155 -0
- package/areas/devops/database-ops/skills/postgres-operations/SKILL.md +156 -0
- package/areas/devops/database-ops/skills/redis-operations/SKILL.md +174 -0
- package/areas/devops/database-ops/workflows/backup-verify.md +107 -0
- package/areas/devops/database-ops/workflows/db-incident.md +86 -0
- package/areas/devops/devsecops/AGENTS.md +47 -0
- package/areas/devops/devsecops/prompts/policy-onboard.md +79 -0
- package/areas/devops/devsecops/prompts/security-scan-pipeline.md +131 -0
- package/areas/devops/devsecops/rules/container-security.md +22 -0
- package/areas/devops/devsecops/rules/policy-as-code.md +37 -0
- package/areas/devops/devsecops/rules/shift-left-policy.md +26 -0
- package/areas/devops/devsecops/skills/container-hardening/SKILL.md +146 -0
- package/areas/devops/devsecops/skills/opa-policies/SKILL.md +188 -0
- package/areas/devops/devsecops/skills/sbom-supply-chain/SKILL.md +165 -0
- package/areas/devops/devsecops/skills/secret-detection/SKILL.md +190 -0
- package/areas/devops/devsecops/skills/sigstore-signing/SKILL.md +184 -0
- package/areas/devops/devsecops/workflows/policy-onboard.md +104 -0
- package/areas/devops/devsecops/workflows/security-scan-pipeline.md +155 -0
- package/areas/devops/infrastructure/AGENTS.md +50 -0
- package/areas/devops/infrastructure/prompts/destroy-environment.md +81 -0
- package/areas/devops/infrastructure/prompts/drift-remediation.md +71 -0
- package/areas/devops/infrastructure/prompts/module-development.md +69 -0
- package/areas/devops/infrastructure/prompts/provision-environment.md +121 -0
- package/areas/devops/infrastructure/rules/iac-standards.md +80 -0
- package/areas/devops/infrastructure/rules/immutability.md +28 -0
- package/areas/devops/infrastructure/rules/secret-hygiene.md +53 -0
- package/areas/devops/infrastructure/rules/state-management.md +47 -0
- package/areas/devops/infrastructure/skills/ansible-playbooks/SKILL.md +174 -0
- package/areas/devops/infrastructure/skills/cost-optimization/SKILL.md +177 -0
- package/areas/devops/infrastructure/skills/drift-detection/SKILL.md +178 -0
- package/areas/devops/infrastructure/skills/state-management/SKILL.md +159 -0
- package/areas/devops/infrastructure/skills/terraform-modules/SKILL.md +169 -0
- package/areas/devops/infrastructure/workflows/destroy-environment.md +96 -0
- package/areas/devops/infrastructure/workflows/drift-remediation.md +66 -0
- package/areas/devops/infrastructure/workflows/module-development.md +101 -0
- package/areas/devops/infrastructure/workflows/provision-environment.md +96 -0
- package/areas/devops/kubernetes/AGENTS.md +57 -0
- package/areas/devops/kubernetes/PROMPTS.md +9 -0
- package/areas/devops/kubernetes/prompts/cluster-bootstrap.md +67 -0
- package/areas/devops/kubernetes/prompts/debug-workload.md +91 -0
- package/areas/devops/kubernetes/prompts/onboard-service.md +101 -0
- package/areas/devops/kubernetes/prompts/upgrade-cluster.md +63 -0
- package/areas/devops/kubernetes/rules/cluster-standards.md +51 -0
- package/areas/devops/kubernetes/rules/resource-governance.md +80 -0
- package/areas/devops/kubernetes/rules/upgrade-policy.md +52 -0
- package/areas/devops/kubernetes/rules/workload-security.md +64 -0
- package/areas/devops/kubernetes/skills/cluster-operations/SKILL.md +136 -0
- package/areas/devops/kubernetes/skills/helm-charts/SKILL.md +152 -0
- package/areas/devops/kubernetes/skills/network-policies/SKILL.md +169 -0
- package/areas/devops/kubernetes/skills/pod-troubleshooting/SKILL.md +129 -0
- package/areas/devops/kubernetes/skills/rbac-design/SKILL.md +148 -0
- package/areas/devops/kubernetes/skills/resource-tuning/SKILL.md +156 -0
- package/areas/devops/kubernetes/workflows/cluster-bootstrap.md +194 -0
- package/areas/devops/kubernetes/workflows/debug-workload.md +108 -0
- package/areas/devops/kubernetes/workflows/onboard-service.md +124 -0
- package/areas/devops/kubernetes/workflows/upgrade-cluster.md +165 -0
- package/areas/devops/networking/AGENTS.md +47 -0
- package/areas/devops/networking/prompts/onboard-ingress.md +119 -0
- package/areas/devops/networking/prompts/service-mesh-onboard.md +77 -0
- package/areas/devops/networking/rules/ingress-standards.md +17 -0
- package/areas/devops/networking/rules/network-segmentation.md +24 -0
- package/areas/devops/networking/rules/tls-policy.md +32 -0
- package/areas/devops/networking/skills/dns-management/SKILL.md +169 -0
- package/areas/devops/networking/skills/ingress-patterns/SKILL.md +165 -0
- package/areas/devops/networking/skills/service-mesh/SKILL.md +206 -0
- package/areas/devops/networking/skills/tls-termination/SKILL.md +198 -0
- package/areas/devops/networking/skills/vpc-design/SKILL.md +132 -0
- package/areas/devops/networking/workflows/onboard-ingress.md +64 -0
- package/areas/devops/networking/workflows/service-mesh-onboard.md +122 -0
- package/areas/devops/observability/AGENTS.md +48 -0
- package/areas/devops/observability/prompts/alert-investigation.md +117 -0
- package/areas/devops/observability/prompts/observability-stack-setup.md +99 -0
- package/areas/devops/observability/prompts/onboard-service-monitoring.md +79 -0
- package/areas/devops/observability/rules/alerting-standards.md +36 -0
- package/areas/devops/observability/rules/data-retention.md +19 -0
- package/areas/devops/observability/rules/golden-signals.md +28 -0
- package/areas/devops/observability/skills/distributed-tracing/SKILL.md +149 -0
- package/areas/devops/observability/skills/grafana-dashboards/SKILL.md +201 -0
- package/areas/devops/observability/skills/log-aggregation/SKILL.md +159 -0
- package/areas/devops/observability/skills/prometheus-alertmanager/SKILL.md +188 -0
- package/areas/devops/observability/skills/slo-implementation/SKILL.md +189 -0
- package/areas/devops/observability/workflows/alert-investigation.md +98 -0
- package/areas/devops/observability/workflows/observability-stack-setup.md +156 -0
- package/areas/devops/observability/workflows/onboard-service-monitoring.md +83 -0
- package/areas/devops/sre/AGENTS.md +48 -0
- package/areas/devops/sre/prompts/incident-response.md +129 -0
- package/areas/devops/sre/prompts/postmortem.md +101 -0
- package/areas/devops/sre/prompts/slo-review.md +125 -0
- package/areas/devops/sre/rules/error-budget-policy.md +25 -0
- package/areas/devops/sre/rules/on-call-standards.md +25 -0
- package/areas/devops/sre/rules/slo-policy.md +31 -0
- package/areas/devops/sre/skills/capacity-planning/SKILL.md +162 -0
- package/areas/devops/sre/skills/chaos-engineering/SKILL.md +186 -0
- package/areas/devops/sre/skills/incident-command/SKILL.md +119 -0
- package/areas/devops/sre/skills/postmortem-analysis/SKILL.md +104 -0
- package/areas/devops/sre/skills/slo-sli-design/SKILL.md +145 -0
- package/areas/devops/sre/workflows/incident-response.md +66 -0
- package/areas/devops/sre/workflows/postmortem.md +90 -0
- package/areas/devops/sre/workflows/slo-review.md +95 -0
- package/areas/software/backend/AGENTS.md +59 -0
- package/areas/software/backend/PROMPTS.md +50 -0
- package/areas/software/backend/README.md +48 -0
- package/areas/software/backend/prompts/add-migration.md +93 -0
- package/areas/software/backend/prompts/create-endpoint.md +97 -0
- package/areas/software/backend/prompts/debug-issue.md +87 -0
- package/areas/software/backend/prompts/develop-epic.md +83 -0
- package/areas/software/backend/prompts/develop-feature.md +91 -0
- package/areas/software/backend/prompts/refactor-module.md +79 -0
- package/areas/software/backend/prompts/test-feature.md +89 -0
- package/areas/software/backend/rules/architecture.md +20 -0
- package/areas/software/backend/rules/data_access.md +20 -0
- package/areas/software/backend/rules/security.md +20 -0
- package/areas/software/backend/rules/testing.md +19 -0
- package/areas/software/backend/skills/api-design/SKILL.md +170 -0
- package/areas/software/backend/skills/async-processing/SKILL.md +152 -0
- package/areas/software/backend/skills/database-modeling/SKILL.md +173 -0
- package/areas/software/backend/skills/observability/SKILL.md +162 -0
- package/areas/software/backend/skills/troubleshooting/SKILL.md +139 -0
- package/areas/software/backend/workflows/add-migration.md +79 -0
- package/areas/software/backend/workflows/create-endpoint.md +89 -0
- package/areas/software/backend/workflows/debug-issue.md +77 -0
- package/areas/software/backend/workflows/develop-epic.md +78 -0
- package/areas/software/backend/workflows/develop-feature.md +98 -0
- package/areas/software/backend/workflows/refactor-module.md +73 -0
- package/areas/software/backend/workflows/test-feature.md +67 -0
- package/areas/software/data-engineering/AGENTS.md +59 -0
- package/areas/software/data-engineering/PROMPTS.md +32 -0
- package/areas/software/data-engineering/prompts/backfill-data.md +107 -0
- package/areas/software/data-engineering/prompts/data-quality-incident.md +109 -0
- package/areas/software/data-engineering/prompts/lineage-trace.md +121 -0
- package/areas/software/data-engineering/prompts/new-model.md +117 -0
- package/areas/software/data-engineering/prompts/schema-migration.md +111 -0
- package/areas/software/data-engineering/rules/data-governance.md +11 -0
- package/areas/software/data-engineering/rules/pii-handling.md +19 -0
- package/areas/software/data-engineering/rules/pipeline-integrity.md +11 -0
- package/areas/software/data-engineering/rules/schema-management.md +21 -0
- package/areas/software/data-engineering/skills/data-modeling/SKILL.md +49 -0
- package/areas/software/data-engineering/skills/dbt-patterns/SKILL.md +43 -0
- package/areas/software/data-engineering/skills/lineage-governance/SKILL.md +38 -0
- package/areas/software/data-engineering/skills/orchestration/SKILL.md +35 -0
- package/areas/software/data-engineering/skills/quality-checks/SKILL.md +50 -0
- package/areas/software/data-engineering/skills/sql-optimization/SKILL.md +47 -0
- package/areas/software/data-engineering/skills/streaming-patterns/SKILL.md +48 -0
- package/areas/software/data-engineering/workflows/backfill-data.md +59 -0
- package/areas/software/data-engineering/workflows/data-quality-incident.md +64 -0
- package/areas/software/data-engineering/workflows/lineage-trace.md +56 -0
- package/areas/software/data-engineering/workflows/new-model.md +71 -0
- package/areas/software/data-engineering/workflows/schema-migration.md +67 -0
- package/areas/software/frontend/AGENTS.md +60 -0
- package/areas/software/frontend/PROMPTS.md +32 -0
- package/areas/software/frontend/prompts/a11y-fix.md +75 -0
- package/areas/software/frontend/prompts/bundle-analyze.md +75 -0
- package/areas/software/frontend/prompts/release-prep.md +83 -0
- package/areas/software/frontend/prompts/scaffold-component.md +69 -0
- package/areas/software/frontend/prompts/visual-regression.md +73 -0
- package/areas/software/frontend/rules/accessibility.md +16 -0
- package/areas/software/frontend/rules/architecture.md +29 -0
- package/areas/software/frontend/rules/performance.md +23 -0
- package/areas/software/frontend/rules/quality.md +12 -0
- package/areas/software/frontend/skills/a11y-audit/SKILL.md +61 -0
- package/areas/software/frontend/skills/api-integration/SKILL.md +58 -0
- package/areas/software/frontend/skills/component-design/SKILL.md +171 -0
- package/areas/software/frontend/skills/css-architecture/SKILL.md +146 -0
- package/areas/software/frontend/skills/error-handling/SKILL.md +55 -0
- package/areas/software/frontend/skills/performance-tuning/SKILL.md +58 -0
- package/areas/software/frontend/skills/state-management/SKILL.md +54 -0
- package/areas/software/frontend/skills/testing-patterns/SKILL.md +69 -0
- package/areas/software/frontend/workflows/a11y-fix.md +63 -0
- package/areas/software/frontend/workflows/bundle-analyze.md +56 -0
- package/areas/software/frontend/workflows/release-prep.md +66 -0
- package/areas/software/frontend/workflows/scaffold-component.md +67 -0
- package/areas/software/frontend/workflows/visual-regression.md +65 -0
- package/areas/software/full-stack/AGENTS.md +72 -0
- package/areas/software/full-stack/PROMPTS.md +66 -0
- package/areas/software/full-stack/prompts/backend-project-full-cycle.md +141 -0
- package/areas/software/full-stack/prompts/debug-issue.md +115 -0
- package/areas/software/full-stack/prompts/develop-feature.md +119 -0
- package/areas/software/full-stack/prompts/feature-implementation-flow.md +137 -0
- package/areas/software/full-stack/prompts/testing-ci-pipeline.md +119 -0
- package/areas/software/full-stack/rules/api-design-guide.md +24 -0
- package/areas/software/full-stack/rules/async-concurrency-guide.md +21 -0
- package/areas/software/full-stack/rules/backend-architecture-rule.md +41 -0
- package/areas/software/full-stack/rules/background-jobs-guide.md +20 -0
- package/areas/software/full-stack/rules/code-quality-guide.md +22 -0
- package/areas/software/full-stack/rules/database-access-guide.md +24 -0
- package/areas/software/full-stack/rules/database-migrations-guide.md +24 -0
- package/areas/software/full-stack/rules/domain-models-guide.md +28 -0
- package/areas/software/full-stack/rules/e2e-test-guide.md +18 -0
- package/areas/software/full-stack/rules/env-settings-guide.md +34 -0
- package/areas/software/full-stack/rules/error-handling-guide.md +20 -0
- package/areas/software/full-stack/rules/logging-observability-guide.md +22 -0
- package/areas/software/full-stack/rules/project-guide.md +34 -0
- package/areas/software/full-stack/rules/python-venv-guide.md +23 -0
- package/areas/software/full-stack/rules/security-guide.md +22 -0
- package/areas/software/full-stack/rules/svt-test-guide.md +17 -0
- package/areas/software/full-stack/rules/testing-ci-guide.md +25 -0
- package/areas/software/full-stack/skills/api-design-principles/SKILL.md +125 -0
- package/areas/software/full-stack/skills/api-design-principles/assets/api-design-checklist.md +155 -0
- package/areas/software/full-stack/skills/api-design-principles/assets/rest-api-template.py +182 -0
- package/areas/software/full-stack/skills/api-design-principles/references/graphql-schema-design.md +583 -0
- package/areas/software/full-stack/skills/api-design-principles/references/rest-best-practices.md +408 -0
- package/areas/software/full-stack/skills/api-design-principles/resources/implementation-playbook.md +513 -0
- package/areas/software/full-stack/skills/api-patterns/SKILL.md +81 -0
- package/areas/software/full-stack/skills/api-patterns/api-style.md +42 -0
- package/areas/software/full-stack/skills/api-patterns/auth.md +24 -0
- package/areas/software/full-stack/skills/api-patterns/documentation.md +26 -0
- package/areas/software/full-stack/skills/api-patterns/graphql.md +41 -0
- package/areas/software/full-stack/skills/api-patterns/rate-limiting.md +31 -0
- package/areas/software/full-stack/skills/api-patterns/response.md +37 -0
- package/areas/software/full-stack/skills/api-patterns/rest.md +40 -0
- package/areas/software/full-stack/skills/api-patterns/scripts/api_validator.py +211 -0
- package/areas/software/full-stack/skills/api-patterns/security-testing.md +122 -0
- package/areas/software/full-stack/skills/api-patterns/trpc.md +41 -0
- package/areas/software/full-stack/skills/api-patterns/versioning.md +22 -0
- package/areas/software/full-stack/skills/app-builder/SKILL.md +135 -0
- package/areas/software/full-stack/skills/app-builder/agent-coordination.md +71 -0
- package/areas/software/full-stack/skills/app-builder/feature-building.md +53 -0
- package/areas/software/full-stack/skills/app-builder/project-detection.md +34 -0
- package/areas/software/full-stack/skills/app-builder/scaffolding.md +118 -0
- package/areas/software/full-stack/skills/app-builder/tech-stack.md +40 -0
- package/areas/software/full-stack/skills/app-builder/templates/SKILL.md +39 -0
- package/areas/software/full-stack/skills/app-builder/templates/astro-static/TEMPLATE.md +76 -0
- package/areas/software/full-stack/skills/app-builder/templates/chrome-extension/TEMPLATE.md +92 -0
- package/areas/software/full-stack/skills/app-builder/templates/cli-tool/TEMPLATE.md +88 -0
- package/areas/software/full-stack/skills/app-builder/templates/electron-desktop/TEMPLATE.md +88 -0
- package/areas/software/full-stack/skills/app-builder/templates/express-api/TEMPLATE.md +83 -0
- package/areas/software/full-stack/skills/app-builder/templates/flutter-app/TEMPLATE.md +90 -0
- package/areas/software/full-stack/skills/app-builder/templates/monorepo-turborepo/TEMPLATE.md +90 -0
- package/areas/software/full-stack/skills/app-builder/templates/nextjs-fullstack/TEMPLATE.md +82 -0
- package/areas/software/full-stack/skills/app-builder/templates/nextjs-saas/TEMPLATE.md +100 -0
- package/areas/software/full-stack/skills/app-builder/templates/nextjs-static/TEMPLATE.md +106 -0
- package/areas/software/full-stack/skills/app-builder/templates/nuxt-app/TEMPLATE.md +101 -0
- package/areas/software/full-stack/skills/app-builder/templates/python-fastapi/TEMPLATE.md +83 -0
- package/areas/software/full-stack/skills/app-builder/templates/react-native-app/TEMPLATE.md +93 -0
- package/areas/software/full-stack/skills/backend-developer/SKILL.md +58 -0
- package/areas/software/full-stack/skills/bash-pro/SKILL.md +310 -0
- package/areas/software/full-stack/skills/blackbox-test/SKILL.md +84 -0
- package/areas/software/full-stack/skills/prompt-project-planner/SKILL.md +130 -0
- package/areas/software/full-stack/skills/prompt-project-planner/output.schema.md +68 -0
- package/areas/software/full-stack/skills/prompt-project-planner/questions.md +80 -0
- package/areas/software/full-stack/skills/python-pro/SKILL.md +158 -0
- package/areas/software/full-stack/skills/skill-creator/LICENSE.txt +202 -0
- package/areas/software/full-stack/skills/skill-creator/SKILL.md +356 -0
- package/areas/software/full-stack/skills/skill-creator/references/output-patterns.md +82 -0
- package/areas/software/full-stack/skills/skill-creator/references/workflows.md +28 -0
- package/areas/software/full-stack/skills/skill-creator/scripts/init_skill.py +303 -0
- package/areas/software/full-stack/skills/skill-creator/scripts/package_skill.py +110 -0
- package/areas/software/full-stack/skills/skill-creator/scripts/quick_validate.py +95 -0
- package/areas/software/full-stack/workflows/backend-project-full-cycle.md +132 -0
- package/areas/software/full-stack/workflows/debug-issue.md +70 -0
- package/areas/software/full-stack/workflows/develop-feature.md +85 -0
- package/areas/software/full-stack/workflows/feature-implementation-flow.md +78 -0
- package/areas/software/full-stack/workflows/testing-ci-pipeline.md +65 -0
- package/areas/software/general/AGENTS.md +68 -0
- package/areas/software/general/prompts/code-review-workflow.md +87 -0
- package/areas/software/general/prompts/development-cycle-workflow.md +83 -0
- package/areas/software/general/prompts/project-setup-workflow.md +93 -0
- package/areas/software/general/rules/code-style-guide.md +31 -0
- package/areas/software/general/rules/docker-compose-guide.md +27 -0
- package/areas/software/general/rules/git-workflow-guide.md +27 -0
- package/areas/software/general/rules/github-workflow-guide.md +27 -0
- package/areas/software/general/rules/gitlab-ci-guide.md +27 -0
- package/areas/software/general/rules/lint-format-guide.md +29 -0
- package/areas/software/general/rules/makefile-guide.md +34 -0
- package/areas/software/general/rules/readme-sync-guide.md +40 -0
- package/areas/software/general/rules/sdlc-methodology-guide.md +27 -0
- package/areas/software/general/rules/sdlc-role-responsibilities.md +108 -0
- package/areas/software/general/skills/general-dev-tools/SKILL.md +324 -0
- package/areas/software/general/workflows/code-review-workflow.md +84 -0
- package/areas/software/general/workflows/development-cycle-workflow.md +85 -0
- package/areas/software/general/workflows/project-setup-workflow.md +94 -0
- package/areas/software/mlops/AGENTS.md +57 -0
- package/areas/software/mlops/PROMPTS.md +32 -0
- package/areas/software/mlops/prompts/champion-challenger.md +87 -0
- package/areas/software/mlops/prompts/deploy-endpoint.md +91 -0
- package/areas/software/mlops/prompts/evaluate-model.md +87 -0
- package/areas/software/mlops/prompts/model-incident.md +87 -0
- package/areas/software/mlops/prompts/train-experiment.md +83 -0
- package/areas/software/mlops/rules/data-integrity.md +9 -0
- package/areas/software/mlops/rules/model-governance.md +9 -0
- package/areas/software/mlops/rules/production-safety.md +9 -0
- package/areas/software/mlops/rules/reproducibility.md +9 -0
- package/areas/software/mlops/skills/experiment-tracking/SKILL.md +29 -0
- package/areas/software/mlops/skills/feature-engineering/SKILL.md +44 -0
- package/areas/software/mlops/skills/inference-serving/SKILL.md +35 -0
- package/areas/software/mlops/skills/model-evaluation/SKILL.md +40 -0
- package/areas/software/mlops/skills/model-monitoring/SKILL.md +32 -0
- package/areas/software/mlops/workflows/champion-challenger.md +65 -0
- package/areas/software/mlops/workflows/deploy-endpoint.md +70 -0
- package/areas/software/mlops/workflows/evaluate-model.md +63 -0
- package/areas/software/mlops/workflows/model-incident.md +64 -0
- package/areas/software/mlops/workflows/train-experiment.md +56 -0
- package/areas/software/mobile/AGENTS.md +58 -0
- package/areas/software/mobile/PROMPTS.md +32 -0
- package/areas/software/mobile/prompts/crash-triage.md +63 -0
- package/areas/software/mobile/prompts/device-testing.md +83 -0
- package/areas/software/mobile/prompts/ota-update.md +75 -0
- package/areas/software/mobile/prompts/release-build.md +67 -0
- package/areas/software/mobile/prompts/store-submission.md +79 -0
- package/areas/software/mobile/rules/offline-first.md +10 -0
- package/areas/software/mobile/rules/performance-budget.md +20 -0
- package/areas/software/mobile/rules/platform-compliance.md +17 -0
- package/areas/software/mobile/rules/security-mobile.md +9 -0
- package/areas/software/mobile/skills/app-store-prep/SKILL.md +27 -0
- package/areas/software/mobile/skills/mobile-testing/SKILL.md +36 -0
- package/areas/software/mobile/skills/native-modules/SKILL.md +38 -0
- package/areas/software/mobile/skills/navigation-patterns/SKILL.md +49 -0
- package/areas/software/mobile/skills/push-notifications/SKILL.md +40 -0
- package/areas/software/mobile/skills/state-sync/SKILL.md +48 -0
- package/areas/software/mobile/workflows/crash-triage.md +63 -0
- package/areas/software/mobile/workflows/device-testing.md +54 -0
- package/areas/software/mobile/workflows/ota-update.md +54 -0
- package/areas/software/mobile/workflows/release-build.md +67 -0
- package/areas/software/mobile/workflows/store-submission.md +63 -0
- package/areas/software/platform/AGENTS.md +67 -0
- package/areas/software/platform/PROMPTS.md +32 -0
- package/areas/software/platform/prompts/cost-audit.md +117 -0
- package/areas/software/platform/prompts/deploy-production.md +109 -0
- package/areas/software/platform/prompts/drift-check.md +107 -0
- package/areas/software/platform/prompts/incident-response.md +121 -0
- package/areas/software/platform/prompts/provision-env.md +113 -0
- package/areas/software/platform/rules/cost-governance.md +11 -0
- package/areas/software/platform/rules/immutability.md +17 -0
- package/areas/software/platform/rules/reliability.md +19 -0
- package/areas/software/platform/rules/security-posture.md +12 -0
- package/areas/software/platform/skills/ci-cd-pipelines/SKILL.md +58 -0
- package/areas/software/platform/skills/incident-response/SKILL.md +41 -0
- package/areas/software/platform/skills/k8s-manifests/SKILL.md +56 -0
- package/areas/software/platform/skills/networking/SKILL.md +44 -0
- package/areas/software/platform/skills/observability-setup/SKILL.md +49 -0
- package/areas/software/platform/skills/secrets-management/SKILL.md +43 -0
- package/areas/software/platform/skills/terraform-patterns/SKILL.md +75 -0
- package/areas/software/platform/workflows/cost-audit.md +61 -0
- package/areas/software/platform/workflows/deploy-production.md +67 -0
- package/areas/software/platform/workflows/drift-check.md +61 -0
- package/areas/software/platform/workflows/incident-response.md +69 -0
- package/areas/software/platform/workflows/provision-env.md +77 -0
- package/areas/software/qa/AGENTS.md +58 -0
- package/areas/software/qa/PROMPTS.md +32 -0
- package/areas/software/qa/prompts/flakiness-investigation.md +61 -0
- package/areas/software/qa/prompts/performance-audit.md +65 -0
- package/areas/software/qa/prompts/regression-suite.md +61 -0
- package/areas/software/qa/prompts/smoke-test.md +65 -0
- package/areas/software/qa/prompts/test-coverage-report.md +61 -0
- package/areas/software/qa/rules/flakiness-policy.md +12 -0
- package/areas/software/qa/rules/quality-gates.md +28 -0
- package/areas/software/qa/rules/test-data.md +9 -0
- package/areas/software/qa/rules/test-strategy.md +11 -0
- package/areas/software/qa/skills/accessibility-testing/SKILL.md +139 -0
- package/areas/software/qa/skills/api-testing/SKILL.md +140 -0
- package/areas/software/qa/skills/e2e-patterns/SKILL.md +152 -0
- package/areas/software/qa/skills/performance-testing/SKILL.md +177 -0
- package/areas/software/qa/skills/test-data-management/SKILL.md +161 -0
- package/areas/software/qa/skills/test-pyramid/SKILL.md +127 -0
- package/areas/software/qa/workflows/flakiness-investigation.md +63 -0
- package/areas/software/qa/workflows/performance-audit.md +59 -0
- package/areas/software/qa/workflows/regression-suite.md +59 -0
- package/areas/software/qa/workflows/smoke-test.md +64 -0
- package/areas/software/qa/workflows/test-coverage-report.md +57 -0
- package/areas/software/security/AGENTS.md +58 -0
- package/areas/software/security/PROMPTS.md +32 -0
- package/areas/software/security/prompts/compliance-report.md +113 -0
- package/areas/software/security/prompts/pen-test-sim.md +113 -0
- package/areas/software/security/prompts/secret-rotation.md +115 -0
- package/areas/software/security/prompts/security-scan.md +91 -0
- package/areas/software/security/prompts/threat-model-review.md +105 -0
- package/areas/software/security/rules/compliance-baseline.md +23 -0
- package/areas/software/security/rules/dependency-policy.md +12 -0
- package/areas/software/security/rules/secrets-policy.md +22 -0
- package/areas/software/security/rules/secure-coding.md +22 -0
- package/areas/software/security/skills/auth-patterns/SKILL.md +42 -0
- package/areas/software/security/skills/crypto-standards/SKILL.md +42 -0
- package/areas/software/security/skills/dependency-audit/SKILL.md +29 -0
- package/areas/software/security/skills/sast-dast-interpretation/SKILL.md +33 -0
- package/areas/software/security/skills/security-headers/SKILL.md +29 -0
- package/areas/software/security/skills/threat-modeling/SKILL.md +36 -0
- package/areas/software/security/workflows/compliance-report.md +57 -0
- package/areas/software/security/workflows/pen-test-sim.md +63 -0
- package/areas/software/security/workflows/secret-rotation.md +67 -0
- package/areas/software/security/workflows/security-scan.md +64 -0
- package/areas/software/security/workflows/threat-model-review.md +62 -0
- package/areas/template/AGENTS-area.tmpl.md +61 -0
- package/areas/template/AGENTS.tmpl.md +67 -0
- package/areas/template/GUIDE.md +102 -0
- package/areas/template/PROMPTS.tmpl.md +29 -0
- package/areas/template/README.md +57 -0
- package/areas/template/README.tmpl.md +51 -0
- package/areas/template/prompt.tmpl.md +101 -0
- package/areas/template/rule.tmpl.md +71 -0
- package/areas/template/skill.tmpl.md +108 -0
- package/areas/template/workflow.tmpl.md +104 -0
- package/bin/agentic.js +24 -0
- package/extensions/antigravity/GEMINI.md +10 -0
- package/extensions/claude/CLAUDE.md +10 -0
- package/extensions/codex/AGENTS.override.md +93 -0
- package/extensions/gemini/GEMINI.md +10 -0
- package/extensions/opencode/agents/designer.md +65 -0
- package/extensions/opencode/agents/developer.md +63 -0
- package/extensions/opencode/agents/devops-engineer.md +69 -0
- package/extensions/opencode/agents/pm.md +61 -0
- package/extensions/opencode/agents/product-owner.md +76 -0
- package/extensions/opencode/agents/qa.md +66 -0
- package/extensions/opencode/agents/team-lead.md +67 -0
- package/extensions/opencode/commands/feature.md +75 -0
- package/extensions/opencode/opencode.json +93 -0
- package/extensions/opencode/plugins/model-checker.json +14 -0
- package/extensions/opencode/plugins/model-checker.ts +279 -0
- package/extensions/opencode/plugins/sound-notification.ts +13 -0
- package/extensions/opencode/plugins/telegram-notification.ts +86 -0
- package/extensions/opencode/skills/code_review_expert/SKILL.md +144 -0
- package/extensions/opencode/skills/design_expert/SKILL.md +42 -0
- package/extensions/opencode/skills/qa_expert/SKILL.md +116 -0
- package/package.json +19 -0
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
---
|
|
2
|
+
workflow: model-incident
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
# Prompt: `/model-incident`
|
|
6
|
+
|
|
7
|
+
Use when: responding to model degradation, drift, bias, or endpoint outages that require rollback, diagnosis, and scoped remediation.
|
|
8
|
+
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
## Example 1 — Prediction drift after feature pipeline change
|
|
12
|
+
|
|
13
|
+
**EN:**
|
|
14
|
+
```
|
|
15
|
+
/model-incident
|
|
16
|
+
|
|
17
|
+
Model name: churn-predictor-v9
|
|
18
|
+
Incident type: drift
|
|
19
|
+
Symptoms:
|
|
20
|
+
- PSI on feature monthly_sessions = 0.34 (baseline alert threshold 0.2)
|
|
21
|
+
- probability distribution shifted heavily upward after 2026-03-20 09:00 UTC
|
|
22
|
+
- no serving error spike, but retention team reports doubled intervention volume
|
|
23
|
+
Recent changes: feature store job for monthly_sessions moved from daily batch to hourly incremental pipeline
|
|
24
|
+
Immediate need:
|
|
25
|
+
- decide whether to tolerate degraded predictions or rollback to previous champion
|
|
26
|
+
- scope the affected prediction window
|
|
27
|
+
- identify whether feature semantics changed or only data freshness changed
|
|
28
|
+
Output: severity classification, rollback recommendation, affected window, and remediation path
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
**RU:**
|
|
32
|
+
```
|
|
33
|
+
/model-incident
|
|
34
|
+
|
|
35
|
+
Model name: churn-predictor-v9
|
|
36
|
+
Тип инцидента: drift
|
|
37
|
+
Симптомы:
|
|
38
|
+
- PSI по признаку monthly_sessions = 0.34 (порог алерта baseline = 0.2)
|
|
39
|
+
- распределение вероятностей сильно сместилось вверх после 2026-03-20 09:00 UTC
|
|
40
|
+
- всплеска serving error нет, но retention team сообщает о двукратном росте intervention volume
|
|
41
|
+
Недавние изменения: job feature store для monthly_sessions переведён с daily batch на hourly incremental pipeline
|
|
42
|
+
Нужно немедленно:
|
|
43
|
+
- решить, терпим ли деградированные предсказания или откатываемся к предыдущему champion
|
|
44
|
+
- определить окно затронутых предсказаний
|
|
45
|
+
- понять, изменилась ли семантика признака или только data freshness
|
|
46
|
+
Результат: классификация severity, рекомендация по rollback, affected window и путь remediation
|
|
47
|
+
```
|
|
48
|
+
|
|
49
|
+
---
|
|
50
|
+
|
|
51
|
+
## Example 2 — Inference outage after container update
|
|
52
|
+
|
|
53
|
+
**EN:**
|
|
54
|
+
```
|
|
55
|
+
/model-incident
|
|
56
|
+
|
|
57
|
+
Model name: recommendations-transformer-v4
|
|
58
|
+
Incident type: outage
|
|
59
|
+
Symptoms:
|
|
60
|
+
- endpoint 5xx rate = 18% for 12 minutes
|
|
61
|
+
- pod logs show "CUDA out of memory" after new serving image deploy
|
|
62
|
+
- HPA scaled from 4 to 8 replicas, but latency still above 2.5s and readiness probes flap
|
|
63
|
+
Current impact: homepage recommendation widgets empty for 30% of sessions
|
|
64
|
+
Required response:
|
|
65
|
+
- stabilize service within 5 minutes, including rollback if needed
|
|
66
|
+
- determine whether the issue is model artifact size, batch size config, or infrastructure sizing
|
|
67
|
+
- notify downstream product analytics about affected prediction interval
|
|
68
|
+
Output: immediate response plan, rollback or mitigation action, and post-incident prevention changes
|
|
69
|
+
```
|
|
70
|
+
|
|
71
|
+
**RU:**
|
|
72
|
+
```
|
|
73
|
+
/model-incident
|
|
74
|
+
|
|
75
|
+
Model name: recommendations-transformer-v4
|
|
76
|
+
Тип инцидента: outage
|
|
77
|
+
Симптомы:
|
|
78
|
+
- 5xx rate endpoint'а = 18% в течение 12 минут
|
|
79
|
+
- логи pod'ов показывают "CUDA out of memory" после деплоя нового serving image
|
|
80
|
+
- HPA масштабировался с 4 до 8 реплик, но latency всё ещё выше 2.5s и readiness probes флапают
|
|
81
|
+
Текущее влияние: homepage widgets с рекомендациями пустые у 30% сессий
|
|
82
|
+
Требуемый ответ:
|
|
83
|
+
- стабилизировать сервис в течение 5 минут, включая rollback при необходимости
|
|
84
|
+
- определить, связана ли проблема с размером model artifact, batch size config или sizing инфраструктуры
|
|
85
|
+
- уведомить downstream product analytics о затронутом интервале предсказаний
|
|
86
|
+
Результат: план немедленного реагирования, rollback или mitigation action и изменения для предотвращения повторения
|
|
87
|
+
```
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
---
|
|
2
|
+
workflow: train-experiment
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
# Prompt: `/train-experiment`
|
|
6
|
+
|
|
7
|
+
Use when: running a reproducible model training experiment with a pinned environment, tracked artifacts, and automatic evaluation against the champion.
|
|
8
|
+
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
## Example 1 — Retrain fraud model on fresh quarterly data
|
|
12
|
+
|
|
13
|
+
**EN:**
|
|
14
|
+
```
|
|
15
|
+
/train-experiment
|
|
16
|
+
|
|
17
|
+
Model name: fraud-detection-xgb
|
|
18
|
+
Training config: configs/fraud_xgb_q2_2026.yaml
|
|
19
|
+
Data version: dv_2026_03_15_fraud_training
|
|
20
|
+
Compute budget: 1 GPU not required, max 16 CPU cores, training must finish in < 3 hours
|
|
21
|
+
Requirements:
|
|
22
|
+
- snapshot git commit, Docker image digest, and feature store version in MLflow before training
|
|
23
|
+
- run hyperparameter search over max_depth, eta, min_child_weight, and scale_pos_weight
|
|
24
|
+
- stop immediately if validation loss diverges or NaN metrics appear
|
|
25
|
+
- after training, run /evaluate-model automatically against current champion fraud-detection-xgb-v12
|
|
26
|
+
Output: MLflow run link, model artifact URI, best config summary, and evaluation handoff
|
|
27
|
+
```
|
|
28
|
+
|
|
29
|
+
**RU:**
|
|
30
|
+
```
|
|
31
|
+
/train-experiment
|
|
32
|
+
|
|
33
|
+
Model name: fraud-detection-xgb
|
|
34
|
+
Training config: configs/fraud_xgb_q2_2026.yaml
|
|
35
|
+
Версия данных: dv_2026_03_15_fraud_training
|
|
36
|
+
Бюджет compute: GPU не требуется, максимум 16 CPU cores, обучение должно завершиться < 3 часов
|
|
37
|
+
Требования:
|
|
38
|
+
- до обучения зафиксировать git commit, Docker image digest и версию feature store в MLflow
|
|
39
|
+
- запустить hyperparameter search по max_depth, eta, min_child_weight и scale_pos_weight
|
|
40
|
+
- немедленно остановить обучение, если validation loss расходится или появляются NaN метрики
|
|
41
|
+
- после обучения автоматически запустить /evaluate-model против текущего champion fraud-detection-xgb-v12
|
|
42
|
+
Результат: ссылка на MLflow run, URI model artifact, summary лучшей конфигурации и handoff в evaluation
|
|
43
|
+
```
|
|
44
|
+
|
|
45
|
+
---
|
|
46
|
+
|
|
47
|
+
## Example 2 — Experiment after data quality recovery
|
|
48
|
+
|
|
49
|
+
**EN:**
|
|
50
|
+
```
|
|
51
|
+
/train-experiment
|
|
52
|
+
|
|
53
|
+
Model name: demand-forecast-lstm
|
|
54
|
+
Training config: configs/demand_lstm_recovery.yaml
|
|
55
|
+
Context: previous two runs used corrupted holiday calendar features; data quality incident fixed yesterday
|
|
56
|
+
Prerequisites:
|
|
57
|
+
- confirm corrected feature table passed quality checks and matches data version dq_fix_2026_03_24
|
|
58
|
+
- compare new run not only with champion but also with the two bad runs to prove recovery
|
|
59
|
+
- keep full environment reproducibility because finance team may audit this retrain
|
|
60
|
+
Success criteria:
|
|
61
|
+
- training loss decreases monotonically across all epochs
|
|
62
|
+
- evaluation scorecard includes top-3 previous runs comparison
|
|
63
|
+
- run metadata clearly marks this as post-incident remediation training
|
|
64
|
+
Output: reproducibility record, training summary, and recommendation whether to proceed to deploy-endpoint or continue tuning
|
|
65
|
+
```
|
|
66
|
+
|
|
67
|
+
**RU:**
|
|
68
|
+
```
|
|
69
|
+
/train-experiment
|
|
70
|
+
|
|
71
|
+
Model name: demand-forecast-lstm
|
|
72
|
+
Training config: configs/demand_lstm_recovery.yaml
|
|
73
|
+
Контекст: предыдущие два запуска использовали повреждённые holiday calendar features; data quality incident исправлен вчера
|
|
74
|
+
Предусловия:
|
|
75
|
+
- подтвердить, что исправленная feature table прошла quality checks и соответствует версии данных dq_fix_2026_03_24
|
|
76
|
+
- сравнить новый run не только с champion, но и с двумя неудачными run'ами, чтобы доказать восстановление
|
|
77
|
+
- сохранить полную воспроизводимость окружения, потому что finance team может аудировать этот retrain
|
|
78
|
+
Критерии успеха:
|
|
79
|
+
- training loss монотонно уменьшается на всех эпохах
|
|
80
|
+
- evaluation scorecard включает сравнение с top-3 previous runs
|
|
81
|
+
- metadata run'а явно помечает его как post-incident remediation training
|
|
82
|
+
Результат: запись о воспроизводимости, summary обучения и рекомендация, переходить ли к deploy-endpoint или продолжать tuning
|
|
83
|
+
```
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
# Rule: Data Integrity for ML
|
|
2
|
+
|
|
3
|
+
**Priority**: P0 — Data leakage produces models that appear excellent but fail in production.
|
|
4
|
+
|
|
5
|
+
1. **Strict train/val/test split**: Test set touched exactly once — for final candidate evaluation. Using test set for hyperparameter decisions is data leakage.
|
|
6
|
+
2. **Temporal splits for time-series**: Splits must respect temporal ordering. No random shuffling that puts future data in training set.
|
|
7
|
+
3. **Training-serving feature parity**: Features computed during training must be identical in definition to features available at inference time. Any divergence is training-serving skew.
|
|
8
|
+
4. **No target leakage**: Features must be available at prediction time. Features derived from the target variable are forbidden.
|
|
9
|
+
5. **Feature provenance documented**: Every feature traceable to data source and computation logic. Undocumented features cannot be promoted to production.
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
# Rule: Model Governance
|
|
2
|
+
|
|
3
|
+
**Priority**: P0 — Ungoverned models in production are a compliance and reliability risk.
|
|
4
|
+
|
|
5
|
+
1. **No promotion without evaluation**: A model cannot be deployed without a documented evaluation scorecard comparing it to the current champion. Evaluation on held-out test set only.
|
|
6
|
+
2. **Human approval gate**: Model promotion requires sign-off from: ML engineer + product owner. Fairness reviewer for high-stakes models.
|
|
7
|
+
3. **Model registry is the gate**: All production models registered in MLflow Model Registry with stage transitions: `Staging → Production`. Ad-hoc deployment scripts forbidden.
|
|
8
|
+
4. **Deployment audit trail**: Every production deployment records: who, when, which scorecard, rollback procedure.
|
|
9
|
+
5. **Model cards required**: Every production model must have a model card: intended use, performance by subgroup, known limitations, bias assessment.
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
# Rule: Production Safety
|
|
2
|
+
|
|
3
|
+
**Priority**: P1 — Required before any model serves real traffic.
|
|
4
|
+
|
|
5
|
+
1. **Fallback mechanism**: Every model endpoint must have a defined fallback: rule-based baseline, previous model version, or graceful degradation.
|
|
6
|
+
2. **Latency SLO**: Inference endpoints must define and enforce a latency SLO (e.g., p99 < 200ms). Models that cannot meet SLO must be optimized before deploy.
|
|
7
|
+
3. **Prediction monitoring**: All production models log predictions with input features and timestamps. Monitoring must be active before go-live.
|
|
8
|
+
4. **Shadow mode**: High-stakes models (credit, medical, fraud) must run in shadow mode ≥ 2 weeks before live traffic.
|
|
9
|
+
5. **Drift alerting**: Alerts configured for input feature drift and output prediction drift vs. training baseline.
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
# Rule: Reproducibility
|
|
2
|
+
|
|
3
|
+
**Priority**: P0 — A model that cannot be reproduced cannot be trusted in production.
|
|
4
|
+
|
|
5
|
+
1. **Every training run versioned**: Training code (git commit), data snapshot, hyperparameters, and environment (Docker digest) logged in MLflow before training starts.
|
|
6
|
+
2. **Random seeds fixed**: All randomness seeded — `random.seed()`, `numpy.random.seed()`, `torch.manual_seed()`. Seed is a versioned hyperparameter.
|
|
7
|
+
3. **Environment pinned**: Training and inference environments fully specified via pinned `requirements.txt` or `conda.yaml`. No `>=` constraints in production specs.
|
|
8
|
+
4. **Data version immutable**: Training datasets are snapshots, not live views. After evaluation begins, training data cannot be modified.
|
|
9
|
+
5. **Re-trainable from scratch**: Same code + data + hyperparameters must produce a model within acceptable variance of the original.
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
# Skill: Experiment Tracking (MLflow)
|
|
2
|
+
|
|
3
|
+
## When to load
|
|
4
|
+
|
|
5
|
+
When running training experiments, comparing runs, or reproducing a historical experiment.
|
|
6
|
+
|
|
7
|
+
## MLflow Tracking Pattern
|
|
8
|
+
|
|
9
|
+
```python
|
|
10
|
+
with mlflow.start_run(run_name="xgboost-lr-0.01-depth-6") as run:
|
|
11
|
+
mlflow.log_params({
|
|
12
|
+
"model_type": "xgboost",
|
|
13
|
+
"learning_rate": 0.01,
|
|
14
|
+
"max_depth": 6,
|
|
15
|
+
"data_version": dataset_version,
|
|
16
|
+
"random_seed": 42,
|
|
17
|
+
})
|
|
18
|
+
mlflow.set_tags({
|
|
19
|
+
"git_commit": subprocess.check_output(["git", "rev-parse", "HEAD"]).decode().strip(),
|
|
20
|
+
})
|
|
21
|
+
|
|
22
|
+
model = train_model(X_train, y_train, hyperparams)
|
|
23
|
+
|
|
24
|
+
mlflow.log_metrics({"test_auc_roc": 0.847, "test_f1": 0.731})
|
|
25
|
+
|
|
26
|
+
signature = mlflow.models.infer_signature(X_train, model.predict(X_train))
|
|
27
|
+
mlflow.xgboost.log_model(model, "model", signature=signature)
|
|
28
|
+
mlflow.log_artifact("evaluation_scorecard.json")
|
|
29
|
+
```
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
# Skill: Feature Engineering
|
|
2
|
+
|
|
3
|
+
## When to load
|
|
4
|
+
|
|
5
|
+
When building training datasets, designing feature pipelines, or debugging training-serving skew.
|
|
6
|
+
|
|
7
|
+
## Declarative Feature Pipeline
|
|
8
|
+
|
|
9
|
+
```python
|
|
10
|
+
from sklearn.pipeline import Pipeline
|
|
11
|
+
from sklearn.compose import ColumnTransformer
|
|
12
|
+
|
|
13
|
+
preprocessor = ColumnTransformer(transformers=[
|
|
14
|
+
('num', Pipeline([
|
|
15
|
+
('imputer', SimpleImputer(strategy='median')),
|
|
16
|
+
('scaler', StandardScaler()),
|
|
17
|
+
]), numeric_features),
|
|
18
|
+
('cat', Pipeline([
|
|
19
|
+
('imputer', SimpleImputer(strategy='constant', fill_value='unknown')),
|
|
20
|
+
('encoder', OneHotEncoder(handle_unknown='ignore', sparse_output=False)),
|
|
21
|
+
]), categorical_features),
|
|
22
|
+
])
|
|
23
|
+
|
|
24
|
+
# ✅ Fit ONLY on training data
|
|
25
|
+
preprocessor.fit(X_train)
|
|
26
|
+
X_train_processed = preprocessor.transform(X_train)
|
|
27
|
+
X_test_processed = preprocessor.transform(X_test) # Uses train statistics
|
|
28
|
+
```
|
|
29
|
+
|
|
30
|
+
## Training-Serving Skew Prevention
|
|
31
|
+
|
|
32
|
+
```python
|
|
33
|
+
# Single feature definition used in BOTH training and inference
|
|
34
|
+
def compute_user_features(user_id: str, reference_date: datetime) -> dict:
|
|
35
|
+
"""
|
|
36
|
+
Used by: training pipeline (historical dates) AND inference API (current date).
|
|
37
|
+
Identical computation guarantees no skew.
|
|
38
|
+
"""
|
|
39
|
+
orders = db.query("SELECT * FROM orders WHERE user_id = %s AND created_at < %s", (user_id, reference_date))
|
|
40
|
+
return {
|
|
41
|
+
"order_count_30d": count_in_window(orders, reference_date, days=30),
|
|
42
|
+
"avg_order_value_90d": avg_in_window(orders, reference_date, days=90),
|
|
43
|
+
}
|
|
44
|
+
```
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
# Skill: Inference Serving
|
|
2
|
+
|
|
3
|
+
## When to load
|
|
4
|
+
|
|
5
|
+
When deploying a model to an API endpoint or optimizing inference latency.
|
|
6
|
+
|
|
7
|
+
## FastAPI Inference Endpoint
|
|
8
|
+
|
|
9
|
+
```python
|
|
10
|
+
@app.on_event("startup")
|
|
11
|
+
def load_model():
|
|
12
|
+
app.state.model = mlflow.pyfunc.load_model("models:/churn-predictor/Production")
|
|
13
|
+
app.state.preprocessor = load_preprocessor()
|
|
14
|
+
|
|
15
|
+
@app.post("/predict", response_model=PredictionResponse)
|
|
16
|
+
def predict(request: PredictionRequest):
|
|
17
|
+
try:
|
|
18
|
+
features = app.state.preprocessor.transform([request.features])
|
|
19
|
+
probability = app.state.model.predict(features)[0]
|
|
20
|
+
log_prediction(request.user_id, request.features, float(probability))
|
|
21
|
+
return PredictionResponse(
|
|
22
|
+
user_id=request.user_id,
|
|
23
|
+
churn_probability=float(probability),
|
|
24
|
+
)
|
|
25
|
+
except Exception as e:
|
|
26
|
+
logger.error("Inference failed", error=str(e))
|
|
27
|
+
return PredictionResponse(user_id=request.user_id, churn_probability=FALLBACK_PROBABILITY)
|
|
28
|
+
```
|
|
29
|
+
|
|
30
|
+
## Latency Checklist
|
|
31
|
+
|
|
32
|
+
- [ ] Model loaded at startup, not per request
|
|
33
|
+
- [ ] Input preprocessing vectorized (batch)
|
|
34
|
+
- [ ] ONNX conversion for framework-agnostic optimization
|
|
35
|
+
- [ ] Batch inference enabled for high-throughput
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
# Skill: Model Evaluation
|
|
2
|
+
|
|
3
|
+
## When to load
|
|
4
|
+
|
|
5
|
+
When evaluating a trained model, comparing versions, or performing fairness analysis.
|
|
6
|
+
|
|
7
|
+
## Threshold Selection
|
|
8
|
+
|
|
9
|
+
```python
|
|
10
|
+
def select_optimal_threshold(y_true, y_prob, business_objective: str):
|
|
11
|
+
"""
|
|
12
|
+
business_objective:
|
|
13
|
+
- 'max_f1': balanced precision/recall
|
|
14
|
+
- 'high_precision': minimize false positives (fraud)
|
|
15
|
+
- 'high_recall': minimize false negatives (screening)
|
|
16
|
+
"""
|
|
17
|
+
precisions, recalls, thresholds = precision_recall_curve(y_true, y_prob)
|
|
18
|
+
if business_objective == 'max_f1':
|
|
19
|
+
f1_scores = 2 * (precisions * recalls) / (precisions + recalls + 1e-8)
|
|
20
|
+
return thresholds[np.argmax(f1_scores)]
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
## Subgroup Fairness Analysis (Required for People-Affecting Models)
|
|
24
|
+
|
|
25
|
+
```python
|
|
26
|
+
def evaluate_fairness(y_true, y_pred, sensitive_attribute):
|
|
27
|
+
groups = sensitive_attribute.unique()
|
|
28
|
+
results = {g: {
|
|
29
|
+
"n": (sensitive_attribute == g).sum(),
|
|
30
|
+
"positive_rate": y_pred[sensitive_attribute == g].mean(),
|
|
31
|
+
"tpr": recall_score(y_true[sensitive_attribute == g], y_pred[sensitive_attribute == g]),
|
|
32
|
+
} for g in groups}
|
|
33
|
+
|
|
34
|
+
pos_rates = [r["positive_rate"] for r in results.values()]
|
|
35
|
+
dp_diff = max(pos_rates) - min(pos_rates)
|
|
36
|
+
|
|
37
|
+
if dp_diff > 0.1:
|
|
38
|
+
logger.warning(f"Demographic parity difference {dp_diff:.3f} exceeds 0.1 threshold")
|
|
39
|
+
return results, dp_diff
|
|
40
|
+
```
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
# Skill: Model Monitoring
|
|
2
|
+
|
|
3
|
+
## When to load
|
|
4
|
+
|
|
5
|
+
When setting up monitoring for a deployed model or responding to drift alerts.
|
|
6
|
+
|
|
7
|
+
## Monitoring Dimensions
|
|
8
|
+
|
|
9
|
+
```
|
|
10
|
+
1. Operational health
|
|
11
|
+
- Latency: p50, p95, p99
|
|
12
|
+
- Error rate: prediction failures, input validation failures
|
|
13
|
+
|
|
14
|
+
2. Data drift (vs training baseline)
|
|
15
|
+
- PSI (Population Stability Index) per feature
|
|
16
|
+
- PSI > 0.2 = significant shift → retrain likely needed
|
|
17
|
+
|
|
18
|
+
3. Model quality (when labels available)
|
|
19
|
+
- Accuracy metrics after ground truth arrives
|
|
20
|
+
- Business outcome correlation
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
## PSI Drift Detection
|
|
24
|
+
|
|
25
|
+
```python
|
|
26
|
+
def calculate_psi(expected: np.ndarray, actual: np.ndarray, buckets: int = 10) -> float:
|
|
27
|
+
"""PSI < 0.1: stable. 0.1-0.2: monitor. > 0.2: retrain."""
|
|
28
|
+
breakpoints = np.percentile(expected, np.linspace(0, 100, buckets + 1))
|
|
29
|
+
exp_counts = np.clip(np.histogram(expected, breakpoints)[0] / len(expected), 1e-4, None)
|
|
30
|
+
act_counts = np.clip(np.histogram(actual, breakpoints)[0] / len(actual), 1e-4, None)
|
|
31
|
+
return np.sum((act_counts - exp_counts) * np.log(act_counts / exp_counts))
|
|
32
|
+
```
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: champion-challenger
|
|
3
|
+
type: workflow
|
|
4
|
+
trigger: /champion-challenger
|
|
5
|
+
description: Run a statistically valid A/B experiment between champion and challenger models with guardrail-based auto-rollback.
|
|
6
|
+
inputs:
|
|
7
|
+
- champion_model
|
|
8
|
+
- challenger_model
|
|
9
|
+
- experiment_duration
|
|
10
|
+
outputs:
|
|
11
|
+
- experiment_report
|
|
12
|
+
- promotion_decision
|
|
13
|
+
roles:
|
|
14
|
+
- developer
|
|
15
|
+
- qa
|
|
16
|
+
- team-lead
|
|
17
|
+
execution:
|
|
18
|
+
initiator: developer
|
|
19
|
+
related-rules:
|
|
20
|
+
- production-safety.md
|
|
21
|
+
- model-governance.md
|
|
22
|
+
- reproducibility.md
|
|
23
|
+
uses-skills:
|
|
24
|
+
- model-evaluation
|
|
25
|
+
- model-monitoring
|
|
26
|
+
quality-gates:
|
|
27
|
+
- sample size calculated before experiment starts
|
|
28
|
+
- guardrail metrics monitored daily with auto-rollback
|
|
29
|
+
- promotion decision based on statistical significance
|
|
30
|
+
---
|
|
31
|
+
|
|
32
|
+
## Steps
|
|
33
|
+
|
|
34
|
+
### 1. Experiment Design — `@developer`
|
|
35
|
+
- **Input:** champion, challenger, duration
|
|
36
|
+
- **Actions:** define primary metric (business outcome); calculate required sample size (80% power, α=0.05); define guardrail metrics (latency, error rate); document in experiment tracker
|
|
37
|
+
- **Output:** experiment design doc with sample size and guardrails
|
|
38
|
+
- **Done when:** `@team-lead` approves design
|
|
39
|
+
|
|
40
|
+
### 2. Configure Traffic Split — `@developer`
|
|
41
|
+
- **Input:** approved design
|
|
42
|
+
- **Actions:** hash `user_id` for consistent assignment; 50% champion / 50% challenger; log assignment to experiment tracker
|
|
43
|
+
- **Output:** traffic split active
|
|
44
|
+
- **Done when:** split verified in logs; both models receiving traffic
|
|
45
|
+
|
|
46
|
+
### 3. Run & Monitor — `@qa`
|
|
47
|
+
- **Input:** active experiment
|
|
48
|
+
- **Actions:** monitor guardrail metrics daily; if guardrail breached → auto-rollback to champion; run for full planned duration unless guardrail breach
|
|
49
|
+
- **Output:** daily monitoring logs; guardrail status
|
|
50
|
+
- **Done when:** experiment duration complete or guardrail triggered rollback
|
|
51
|
+
|
|
52
|
+
### 4. Analyze Results — `@qa`
|
|
53
|
+
- **Input:** experiment logs
|
|
54
|
+
- **Actions:** compute statistical significance of primary metric; segment analysis: is challenger better for ALL segments?; document practical significance alongside statistical
|
|
55
|
+
- **Output:** `experiment_results.md` — p-value, effect size, segment breakdown
|
|
56
|
+
- **Done when:** analysis complete; results ready for decision
|
|
57
|
+
|
|
58
|
+
### 5. Promotion Decision — `@team-lead`
|
|
59
|
+
- **Input:** experiment results
|
|
60
|
+
- **Actions:** p < 0.05 AND practical significance AND no harm to any segment → PROMOTE challenger; otherwise → KEEP champion; route 100% to winner; archive loser; write experiment report for model registry
|
|
61
|
+
- **Output:** experiment report in registry; traffic routed to winner
|
|
62
|
+
- **Done when:** winner in production; loser archived; report complete
|
|
63
|
+
|
|
64
|
+
## Exit
|
|
65
|
+
Decision recorded in registry + winner at 100% traffic + report published = experiment closed.
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: deploy-endpoint
|
|
3
|
+
type: workflow
|
|
4
|
+
trigger: /deploy-endpoint
|
|
5
|
+
description: Deploy a model endpoint using shadow → canary → full rollout with automatic rollback on SLO breach.
|
|
6
|
+
inputs:
|
|
7
|
+
- model_name
|
|
8
|
+
- run_id
|
|
9
|
+
- deployment_strategy
|
|
10
|
+
outputs:
|
|
11
|
+
- live_endpoint
|
|
12
|
+
- deployment_report
|
|
13
|
+
roles:
|
|
14
|
+
- team-lead
|
|
15
|
+
- developer
|
|
16
|
+
- qa
|
|
17
|
+
execution:
|
|
18
|
+
initiator: team-lead
|
|
19
|
+
related-rules:
|
|
20
|
+
- production-safety.md
|
|
21
|
+
- model-governance.md
|
|
22
|
+
uses-skills:
|
|
23
|
+
- inference-serving
|
|
24
|
+
- model-monitoring
|
|
25
|
+
quality-gates:
|
|
26
|
+
- PROMOTE recommendation confirmed in model registry
|
|
27
|
+
- canary passes latency and error rate SLOs
|
|
28
|
+
- monitoring dashboards updated post-deploy
|
|
29
|
+
---
|
|
30
|
+
|
|
31
|
+
## Steps
|
|
32
|
+
|
|
33
|
+
### 1. Pre-flight — `@team-lead`
|
|
34
|
+
- **Input:** model run ID
|
|
35
|
+
- **Actions:** confirm model passed `/evaluate-model` with PROMOTE recommendation; verify human approval recorded in model registry; check production endpoint health; confirm no active P0/P1 incidents
|
|
36
|
+
- **Output:** pre-flight sign-off
|
|
37
|
+
- **Done when:** all checks pass; deployment may proceed
|
|
38
|
+
|
|
39
|
+
### 2. Shadow Deployment — `@developer` (if `--shadow`)
|
|
40
|
+
- **Input:** pre-flight sign-off
|
|
41
|
+
- **Actions:** deploy alongside current champion; 100% traffic to champion; mirror requests to challenger (no user-facing response from challenger); run shadow ≥ 48 hours; compare predictions for distribution drift
|
|
42
|
+
- **Output:** shadow comparison report
|
|
43
|
+
- **Done when:** no significant prediction distribution drift detected
|
|
44
|
+
|
|
45
|
+
### 3. Canary Rollout — `@developer`
|
|
46
|
+
- **Input:** shadow report (or pre-flight if skipping shadow)
|
|
47
|
+
- **Actions:** serve challenger to 5% of traffic; monitor 30 minutes:
|
|
48
|
+
- latency p99 > SLO → AUTO-ROLLBACK
|
|
49
|
+
- error rate > 1% → AUTO-ROLLBACK
|
|
50
|
+
- gradually increase: 5% → 20% → 50% → 100%
|
|
51
|
+
- **Output:** canary metrics per traffic split
|
|
52
|
+
- **Done when:** 100% traffic on challenger with no SLO breaches
|
|
53
|
+
|
|
54
|
+
### 4. Promote Champion — `@developer`
|
|
55
|
+
- **Input:** successful canary
|
|
56
|
+
- **Actions:** transition challenger: Staging → Production in registry; demote old champion: Production → Archived
|
|
57
|
+
- **Output:** registry updated; old champion archived
|
|
58
|
+
- **Done when:** registry state reflects new champion
|
|
59
|
+
|
|
60
|
+
### 5. Post-Deploy Monitoring — `@qa`
|
|
61
|
+
- **Input:** live endpoint
|
|
62
|
+
- **Actions:** establish new baseline for drift monitoring; confirm monitoring dashboards updated; observe first 24 hours for anomalies
|
|
63
|
+
- **Output:** `deployment_report.md` — timeline, traffic split results, new baselines
|
|
64
|
+
- **Done when:** stable 24 hours; report complete
|
|
65
|
+
|
|
66
|
+
## Iteration Loop
|
|
67
|
+
Auto-rollback on SLO breach returns to Step 2 (shadow) or Step 1 (full re-review).
|
|
68
|
+
|
|
69
|
+
## Exit
|
|
70
|
+
100% traffic on new champion + stable monitoring + deployment report = endpoint promoted.
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: evaluate-model
|
|
3
|
+
type: workflow
|
|
4
|
+
trigger: /evaluate-model
|
|
5
|
+
description: Compute metrics, fairness analysis, and business impact scorecard to produce a promotion recommendation.
|
|
6
|
+
inputs:
|
|
7
|
+
- run_id
|
|
8
|
+
- champion_reference
|
|
9
|
+
outputs:
|
|
10
|
+
- evaluation_scorecard
|
|
11
|
+
- promotion_recommendation
|
|
12
|
+
roles:
|
|
13
|
+
- qa
|
|
14
|
+
- team-lead
|
|
15
|
+
execution:
|
|
16
|
+
initiator: qa
|
|
17
|
+
related-rules:
|
|
18
|
+
- model-governance.md
|
|
19
|
+
- data-integrity.md
|
|
20
|
+
- reproducibility.md
|
|
21
|
+
uses-skills:
|
|
22
|
+
- model-evaluation
|
|
23
|
+
- experiment-tracking
|
|
24
|
+
quality-gates:
|
|
25
|
+
- test set was not used during any training iteration
|
|
26
|
+
- fairness disparity checked for people-affecting models
|
|
27
|
+
- champion comparison statistically significant
|
|
28
|
+
---
|
|
29
|
+
|
|
30
|
+
## Steps
|
|
31
|
+
|
|
32
|
+
### 1. Load Model & Test Data — `@qa`
|
|
33
|
+
- **Input:** MLflow run ID
|
|
34
|
+
- **Actions:** retrieve model artifact from MLflow run; load held-out test set from the data version recorded in the run; confirm test set was NOT used during any training iteration
|
|
35
|
+
- **Output:** model and test data loaded
|
|
36
|
+
- **Done when:** data provenance confirmed; no leakage
|
|
37
|
+
|
|
38
|
+
### 2. Compute Core Metrics — `@qa`
|
|
39
|
+
- **Input:** model + test data
|
|
40
|
+
- **Actions:** classification: AUC-ROC, F1, Precision, Recall, PR-AUC; regression: MAE, RMSE, R², MAPE; save raw metric values to MLflow run
|
|
41
|
+
- **Output:** core metrics logged
|
|
42
|
+
- **Done when:** all applicable metrics computed
|
|
43
|
+
|
|
44
|
+
### 3. Business Impact Translation — `@qa`
|
|
45
|
+
- **Input:** core metrics
|
|
46
|
+
- **Actions:** translate statistical metrics to business impact (e.g. "At 80% precision, identifies 62% of churners — est. $120K saved/month"); document assumptions in scorecard
|
|
47
|
+
- **Output:** business impact statement in scorecard
|
|
48
|
+
- **Done when:** at least one business metric derived
|
|
49
|
+
|
|
50
|
+
### 4. Fairness Analysis — `@qa` (if model affects people)
|
|
51
|
+
- **Input:** model predictions + protected group labels
|
|
52
|
+
- **Actions:** compute demographic parity difference across protected groups; flag if disparity > 0.1 — requires `@team-lead` human review before promotion
|
|
53
|
+
- **Output:** fairness report; flag if human review needed
|
|
54
|
+
- **Done when:** fairness check complete; no unreviewed disparity > 0.1
|
|
55
|
+
|
|
56
|
+
### 5. Champion Comparison — `@team-lead`
|
|
57
|
+
- **Input:** challenger metrics + champion from Production stage in registry
|
|
58
|
+
- **Actions:** run statistical significance test; review scorecard; make promotion decision: PROMOTE / DO_NOT_PROMOTE / NEEDS_REVIEW
|
|
59
|
+
- **Output:** `evaluation_scorecard.json` with recommendation; visualizations (confusion matrix, ROC, feature importance)
|
|
60
|
+
- **Done when:** recommendation recorded in model registry
|
|
61
|
+
|
|
62
|
+
## Exit
|
|
63
|
+
Signed scorecard + promotion recommendation = evaluation complete; feed into `/deploy-endpoint` or `/champion-challenger`.
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: model-incident
|
|
3
|
+
type: workflow
|
|
4
|
+
trigger: /model-incident
|
|
5
|
+
description: Respond to a model degradation, drift, bias, or outage incident with structured triage, rollback, and postmortem.
|
|
6
|
+
inputs:
|
|
7
|
+
- model_name
|
|
8
|
+
- incident_type
|
|
9
|
+
outputs:
|
|
10
|
+
- resolved_incident
|
|
11
|
+
- postmortem
|
|
12
|
+
roles:
|
|
13
|
+
- qa
|
|
14
|
+
- developer
|
|
15
|
+
- team-lead
|
|
16
|
+
execution:
|
|
17
|
+
initiator: team-lead
|
|
18
|
+
related-rules:
|
|
19
|
+
- production-safety.md
|
|
20
|
+
- model-governance.md
|
|
21
|
+
- data-integrity.md
|
|
22
|
+
uses-skills:
|
|
23
|
+
- model-monitoring
|
|
24
|
+
- model-evaluation
|
|
25
|
+
quality-gates:
|
|
26
|
+
- rollback executed within 5 minutes for critical incidents
|
|
27
|
+
- affected prediction window scoped and logged
|
|
28
|
+
- postmortem published with monitoring improvement
|
|
29
|
+
---
|
|
30
|
+
|
|
31
|
+
## Steps
|
|
32
|
+
|
|
33
|
+
### 1. Immediate Response — `@team-lead`
|
|
34
|
+
- **Input:** incident alert
|
|
35
|
+
- **Actions:** assess impact (users affected? incorrect decisions made?); decide: tolerate degraded predictions or rollback NOW?; if critical → rollback to previous champion (< 5 min target)
|
|
36
|
+
- **Output:** rollback decision; incident severity classification
|
|
37
|
+
- **Done when:** system stabilized (rollback applied or consciously tolerated)
|
|
38
|
+
|
|
39
|
+
### 2. Diagnose — `@qa`
|
|
40
|
+
- **Input:** incident type
|
|
41
|
+
- **Actions:** drift → compare input distributions to training baseline (PSI); degradation → compare business metrics to post-deployment baseline; outage → check endpoint health, container logs, resource utilization; bias → compute fairness metrics for affected period
|
|
42
|
+
- **Output:** diagnosis report with evidence
|
|
43
|
+
- **Done when:** root cause category identified
|
|
44
|
+
|
|
45
|
+
### 3. Scope Affected Predictions — `@developer`
|
|
46
|
+
- **Input:** diagnosis report
|
|
47
|
+
- **Actions:** identify time window of degradation; log which predictions were made during affected window; notify downstream systems consuming model output
|
|
48
|
+
- **Output:** affected prediction log; downstream teams notified
|
|
49
|
+
- **Done when:** full impact window documented
|
|
50
|
+
|
|
51
|
+
### 4. Root Cause & Remediation — `@developer`
|
|
52
|
+
- **Input:** affected window + diagnosis
|
|
53
|
+
- **Actions:** data drift → schedule retraining with `/train-experiment`; model rot → `/train-experiment` with recent data; infrastructure → fix pipeline, verify feature consistency; code bug → implement fix, run `/evaluate-model` before re-deploying
|
|
54
|
+
- **Output:** remediation action taken
|
|
55
|
+
- **Done when:** root cause fixed; new model validated or pipeline restored
|
|
56
|
+
|
|
57
|
+
### 5. Post-Incident — `@team-lead`
|
|
58
|
+
- **Input:** resolved incident
|
|
59
|
+
- **Actions:** add monitoring rule to catch pattern earlier; write postmortem; update model card with known failure modes
|
|
60
|
+
- **Output:** postmortem at `.mlops/incidents/<date>-<model>-incident.md`; monitoring updated; model card updated
|
|
61
|
+
- **Done when:** postmortem reviewed; prevention measures in place
|
|
62
|
+
|
|
63
|
+
## Exit
|
|
64
|
+
System restored + postmortem published + monitoring improved = incident closed.
|