@thierrynakoa/fire-flow 12.2.1 → 13.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/CREDITS.md +25 -0
- package/DOMINION-FLOW-OVERVIEW.md +182 -38
- package/README.md +399 -455
- package/TROUBLESHOOTING.md +264 -264
- package/agents/fire-debugger.md +54 -0
- package/agents/fire-executor.md +1610 -1033
- package/agents/fire-fact-checker.md +1 -1
- package/agents/fire-planner.md +85 -17
- package/agents/fire-project-researcher.md +1 -1
- package/agents/fire-researcher.md +4 -22
- package/agents/{fire-phoenix-analyst.md → fire-resurrection-analyst.md} +394 -394
- package/agents/fire-reviewer.md +552 -499
- package/agents/fire-verifier.md +114 -19
- package/bin/cli.js +18 -101
- package/commands/fire-0-orient.md +2 -2
- package/commands/fire-1a-new.md +50 -15
- package/commands/fire-1c-setup.md +33 -5
- package/commands/fire-1d-discuss.md +87 -1
- package/commands/fire-2-plan.md +556 -527
- package/commands/fire-3-execute.md +2046 -1356
- package/commands/fire-4-verify.md +975 -906
- package/commands/fire-5-handoff.md +46 -5
- package/commands/fire-6-resume.md +2 -31
- package/commands/fire-add-new-skill.md +138 -19
- package/commands/fire-autonomous.md +14 -2
- package/commands/fire-complete-milestone.md +1 -1
- package/commands/fire-cost.md +179 -183
- package/commands/fire-debug.md +1 -6
- package/commands/fire-loop-resume.md +2 -2
- package/commands/fire-loop-stop.md +1 -1
- package/commands/fire-loop.md +2 -15
- package/commands/fire-map-codebase.md +1 -1
- package/commands/fire-migrate-database.md +548 -0
- package/commands/fire-new-milestone.md +1 -1
- package/commands/fire-reflect.md +1 -2
- package/commands/fire-research.md +142 -21
- package/commands/{fire-phoenix.md → fire-resurrect.md} +859 -603
- package/commands/fire-scaffold.md +297 -0
- package/commands/fire-search.md +1 -2
- package/commands/fire-security-scan.md +483 -484
- package/commands/fire-setup.md +359 -0
- package/commands/fire-skill.md +770 -0
- package/commands/fire-skills-diff.md +506 -506
- package/commands/fire-skills-history.md +388 -388
- package/commands/fire-skills-rollback.md +7 -7
- package/commands/fire-skills-sync.md +470 -470
- package/commands/fire-test.md +5 -5
- package/commands/fire-todos.md +1 -1
- package/commands/fire-update.md +5 -5
- package/commands/fire-validate-skills.md +282 -0
- package/commands/fire-vuln-scan.md +492 -493
- package/hooks/run-hook.sh +8 -8
- package/hooks/run-session-end.sh +7 -7
- package/hooks/session-end.sh +90 -90
- package/hooks/session-start.sh +1 -1
- package/package.json +4 -24
- package/plugin.json +7 -7
- package/references/autonomy-levels.md +235 -0
- package/references/behavioral-directives.md +95 -3
- package/references/blocker-tracking.md +1 -1
- package/references/circuit-breaker.md +93 -2
- package/references/context-engineering.md +227 -9
- package/references/honesty-protocols.md +70 -1
- package/references/issue-to-pr-pipeline.md +149 -150
- package/references/metrics-and-trends.md +1 -2
- package/references/research-improvements.md +4 -108
- package/references/sdlc-mapping.md +73 -0
- package/references/state-machine.md +151 -0
- package/skills-library/AVAILABLE_TOOLS_REFERENCE.md +333 -0
- package/skills-library/SKILLS-INDEX.md +57 -558
- package/skills-library/SKILLS_LIBRARY_INDEX.md +532 -0
- package/skills-library/_general/api-patterns/api-field-name-mismatch.md +107 -0
- package/skills-library/_general/api-patterns/streaming-command-timeout.md +122 -0
- package/skills-library/_general/api-patterns/streaming-proxy-cors-bypass.md +102 -0
- package/skills-library/_general/automation/settings-gui-generator.md +172 -0
- package/skills-library/_general/database-solutions/data-type-mapping-reference.md +181 -0
- package/skills-library/_general/database-solutions/mysql-limit-offset-string-coercion.md +102 -0
- package/skills-library/_general/database-solutions/mysql-to-pg-migration.md +195 -0
- package/skills-library/_general/database-solutions/orm-schema-portability.md +193 -0
- package/skills-library/_general/database-solutions/persistent-analysis-storage.md +207 -0
- package/skills-library/_general/database-solutions/pg-to-mysql-schema-migration-methodology.md +190 -0
- package/skills-library/_general/database-solutions/sql-dialect-compatibility-matrix.md +306 -0
- package/skills-library/_general/database-solutions/sqlite-to-pg-migration.md +219 -0
- package/skills-library/_general/frontend/canvas-bubble-animation-grouping.md +270 -0
- package/skills-library/_general/frontend/color-token-migration.md +112 -0
- package/skills-library/_general/frontend/framer-motion-layoutid-grouping.md +150 -0
- package/skills-library/_general/frontend/pyqt6-settings-dialog.md +191 -0
- package/skills-library/_general/frontend/react-flow-animated-layout-switching.md +101 -0
- package/skills-library/_general/frontend/react-hooks-order-debugging.md +141 -0
- package/skills-library/_general/frontend/redux-localstorage-auth-desync.md +126 -0
- package/skills-library/_general/frontend/safari-csp-theme-color-debugging.md +124 -0
- package/skills-library/_general/frontend/safari-sw-cache-poisoning.md +138 -0
- package/skills-library/_general/frontend/svg-sparkline-no-charting-library.md +131 -0
- package/skills-library/_general/growth-marketing/oss-daily-growth-intelligence.md +224 -0
- package/skills-library/_general/integrations/claude-code-local-mcp-integration.md +250 -0
- package/skills-library/_general/integrations/mcp-composite-tool-orchestration.md +200 -0
- package/skills-library/_general/methodology/AGENT_SDK_STANDALONE_TOOLING.md +181 -0
- package/skills-library/_general/methodology/AGENT_TEAMS_GUIDE.md +169 -0
- package/skills-library/_general/methodology/ALAS_STATEFUL_EXECUTION.md +207 -0
- package/skills-library/_general/methodology/AUTO_REVIEWER_SUBAGENT.md +211 -0
- package/skills-library/_general/methodology/CONSISTENCY_CHECK_AMBIGUITY_GATE.md +96 -0
- package/skills-library/_general/methodology/DEAD_ENDS_SHELF.md +4 -4
- package/skills-library/_general/methodology/DISTILL_NOT_DUMP.md +108 -0
- package/skills-library/_general/methodology/EXECUTION_PROGRESS_MONITOR.md +157 -0
- package/skills-library/_general/methodology/HIERARCHICAL_REVIEW_MARS.md +122 -0
- package/skills-library/_general/methodology/MCP_INTER_AGENT_BRIDGE.md +207 -0
- package/skills-library/_general/methodology/MERMAID_WIZARD_DIAGRAMS.md +77 -0
- package/skills-library/_general/methodology/MISSING_DIMENSION_DETECTOR.md +89 -0
- package/skills-library/_general/methodology/MULTI_AGENT_COORDINATION.md +397 -0
- package/skills-library/_general/methodology/OBSERVATION_MASKING.md +100 -0
- package/skills-library/_general/methodology/PHOENIX_REBUILD_METHODOLOGY.md +82 -11
- package/skills-library/_general/methodology/REVIEW_BACKTRACK_PANEL.md +140 -0
- package/skills-library/_general/methodology/REVIEW_FIX_LOOP.md +117 -0
- package/skills-library/_general/methodology/VOTING_VERDICT_ARBITRATION.md +155 -0
- package/skills-library/_general/methodology/ZERO_FRICTION_CLI_SETUP.md +2 -2
- package/skills-library/_general/methodology/dead-code-activation.md +123 -0
- package/skills-library/_general/methodology/debug-swarm-researcher-escape-hatch.md +240 -240
- package/skills-library/_general/methodology/shell-autonomous-loop-fixplan.md +1 -1
- package/skills-library/_general/patterns-standards/GOF_DESIGN_PATTERNS_FOR_AI_AGENTS.md +5 -5
- package/skills-library/_general/patterns-standards/cascading-failure-diagnosis.md +119 -0
- package/skills-library/_general/patterns-standards/domain-specific-layout-algorithms.md +209 -0
- package/skills-library/_general/patterns-standards/python-desktop-app-architecture.md +399 -0
- package/skills-library/_general/patterns-standards/realtime-monitoring-dashboard.md +457 -0
- package/skills-library/_general/patterns-standards/togglable-processing-pipeline.md +169 -0
- package/skills-library/_general/performance/liveclock-extraction.md +112 -0
- package/skills-library/_general/performance/ref-based-canvas-animation.md +117 -0
- package/skills-library/_general/performance/use-visible-interval.md +131 -0
- package/skills-library/_general/testing/playwright-firefox-withcredentials-auth-issue.md +104 -0
- package/skills-library/_quarantine/README.md +30 -0
- package/skills-library/api-patterns/BROADCAST_SCHEDULER_SHARED_EXECUTE_FUNCTION.md +150 -0
- package/skills-library/api-patterns/ERROR_RESPONSE_STANDARDS.md +145 -0
- package/skills-library/api-patterns/EXPRESS_ROUTE_ORDERING_MIDDLEWARE_INTERCEPTION.md +326 -0
- package/skills-library/api-patterns/PAGINATION_PATTERNS.md +137 -0
- package/skills-library/api-patterns/PODCAST_PROGRESS_TRACKING_THREE_ROOT_CAUSES.md +277 -0
- package/skills-library/api-patterns/RATE_LIMITING_TOGGLE.md +155 -0
- package/skills-library/api-patterns/graphql-content-queries.md +708 -0
- package/skills-library/appointment-scheduler-design.md +423 -0
- package/skills-library/automation/AUTO_POPULATE_COMPLETE_GUIDE.md +631 -0
- package/skills-library/automation/CC_WORKFLOW_STUDIO.md +83 -0
- package/skills-library/automation/CLAUDE_CODE_SWARM_MODE.md +95 -0
- package/skills-library/automation/DAEMON_TRIGGER_FILE_IPC.md +195 -0
- package/skills-library/automation/scheduled-content-publishing.md +608 -0
- package/skills-library/awesome-workflows/Blogging-Platform-Instructions/view_commands.md +25 -0
- package/skills-library/awesome-workflows/CREDENTIAL-SECURITY-WORKFLOW.md +109 -0
- package/skills-library/awesome-workflows/DEBUGGING-WORKFLOW.md +124 -0
- package/skills-library/awesome-workflows/Design-Review-Workflow/README.md +31 -0
- package/skills-library/awesome-workflows/Design-Review-Workflow/design-principles-example.md +129 -0
- package/skills-library/awesome-workflows/Design-Review-Workflow/design-review-agent.md +107 -0
- package/skills-library/awesome-workflows/Design-Review-Workflow/design-review-claude-md-snippet.md +24 -0
- package/skills-library/awesome-workflows/Design-Review-Workflow/design-review-slash-command.md +38 -0
- package/skills-library/awesome-workflows/PARALLEL-RESEARCH-WORKFLOW.md +89 -0
- package/skills-library/awesome-workflows/PHASE-EXECUTION-WORKFLOW.md +97 -0
- package/skills-library/awesome-workflows/SESSION-HANDOFF-WORKFLOW.md +116 -0
- package/skills-library/cms-patterns/content-branch-preview.md +515 -0
- package/skills-library/cms-patterns/inline-visual-editing.md +666 -0
- package/skills-library/cms-patterns/mdx-component-content.md +649 -0
- package/skills-library/cms-patterns/media-manager-abstraction.md +827 -0
- package/skills-library/cms-patterns/schema-driven-form-generator.md +838 -0
- package/skills-library/complexity-metrics/complexity-divider.md +707 -0
- package/skills-library/complexity-metrics/work-with-complexity.md +193 -0
- package/skills-library/creative-multimedia/animation-stack-guide.md +577 -0
- package/skills-library/creative-multimedia/audio-enhancement-pipeline.md +625 -0
- package/skills-library/creative-multimedia/content-repurposing-pipeline.md +1146 -0
- package/skills-library/creative-multimedia/data-visualization-generator.md +862 -0
- package/skills-library/creative-multimedia/doc-to-podcast-pipeline.md +2184 -0
- package/skills-library/creative-multimedia/ffmpeg-command-generator.md +405 -0
- package/skills-library/creative-multimedia/image-optimization-pipeline.md +605 -0
- package/skills-library/creative-multimedia/multi-format-content-generator.md +1759 -0
- package/skills-library/creative-multimedia/og-image-generator.md +635 -0
- package/skills-library/creative-multimedia/podcast-audio-composition.md +1355 -0
- package/skills-library/creative-multimedia/podcast-quality-evaluation.md +1452 -0
- package/skills-library/creative-multimedia/podcast-script-generation.md +1841 -0
- package/skills-library/creative-multimedia/svg-generation.md +750 -0
- package/skills-library/creative-multimedia/text-to-speech-provider-selector.md +1414 -0
- package/skills-library/creative-multimedia/transcription-pipeline-selector.md +677 -0
- package/skills-library/creative-multimedia/video-streaming-setup.md +559 -0
- package/skills-library/database-solutions/AI_RESPONSE_DATABASE_CACHING.md +520 -0
- package/skills-library/database-solutions/CONDITIONAL_SQL_MIGRATION_PATTERN.md +119 -0
- package/skills-library/database-solutions/DATABASE_COLUMN_NAME_MISMATCH.md +393 -0
- package/skills-library/database-solutions/DATABASE_SCHEMA.md +394 -0
- package/skills-library/database-solutions/DATABASE_SCHEMA_VERIFICATION_GUIDE.md +348 -0
- package/skills-library/database-solutions/DATABASE_STRATEGY.md +71 -0
- package/skills-library/database-solutions/ES_MODULE_SEED_SCRIPT_PATTERN.md +52 -0
- package/skills-library/database-solutions/MIGRATION_GUIDE.md +3 -0
- package/skills-library/database-solutions/PLPGSQL_VARIABLE_CONFLICT_FIX.md +208 -0
- package/skills-library/database-solutions/POSTGRESQL_JSONB_DOUBLE_STRINGIFY_FIX.md +245 -0
- package/skills-library/database-solutions/POSTGRESQL_LICENSE_TABLE_DESIGN.md +393 -0
- package/skills-library/database-solutions/POSTGRESQL_UUID_DOCUMENT_RAG_DUAL_SCOPE.md +732 -0
- package/skills-library/database-solutions/POSTGRES_SQL_TEMPLATE_BINDING_ERROR.md +240 -0
- package/skills-library/database-solutions/PRISMA_DB_PUSH_DATA_LOSS_PREVENTION.md +141 -0
- package/skills-library/database-solutions/PRODUCTION_QUERY_OPTIMIZATION_RESTART_FIX.md +389 -0
- package/skills-library/database-solutions/RLS_SECURITY_GUIDE.md +107 -0
- package/skills-library/database-solutions/SCHEMA_ENHANCEMENTS_GUIDE.md +373 -0
- package/skills-library/database-solutions/SCHEMA_MIGRATION_GUIDE.md +368 -0
- package/skills-library/database-solutions/SCHEMA_VERIFICATION_QUICK_REFERENCE.md +104 -0
- package/skills-library/database-solutions/ai-erd-generator.md +1213 -0
- package/skills-library/database-solutions/content-publishing-states.md +631 -0
- package/skills-library/database-solutions/database-schema-designer.md +522 -0
- package/skills-library/database-solutions/er-diagram-components.md +569 -0
- package/skills-library/database-solutions/er-to-ddl-mapping.md +1405 -0
- package/skills-library/database-solutions/erd-creator-textbook-research.md +433 -0
- package/skills-library/database-solutions/erd-react-flow-architecture.md +1965 -0
- package/skills-library/database-solutions/mariadb-aggregate-function-replacement.md +145 -0
- package/skills-library/database-solutions/normalization-validator.md +778 -0
- package/skills-library/database-solutions/postgres-full-text-search-content.md +494 -0
- package/skills-library/database-solutions/postgresql-to-mysql-runtime-translation.md +286 -0
- package/skills-library/database-solutions/regex-alternation-ordering-sql-types.md +92 -0
- package/skills-library/database-solutions/reserved-word-context-aware-quoting.md +142 -0
- package/skills-library/database-solutions/sql-ddl-generator.md +756 -0
- package/skills-library/database-solutions/supabase-connection-pooler-fix.md +102 -0
- package/skills-library/deployment-security/CPANEL_NODE_DEPLOYMENT.md +166 -0
- package/skills-library/deployment-security/DEPLOYMENT.md +275 -0
- package/skills-library/deployment-security/DEPLOYMENT_CHECKLIST.md +363 -0
- package/skills-library/deployment-security/DEPLOYMENT_PLAN.md +669 -0
- package/skills-library/deployment-security/KNEX_DATABASE_ABSTRACTION.md +444 -0
- package/skills-library/deployment-security/LICENSE_KEY_SYSTEM.md +206 -0
- package/skills-library/deployment-security/NODE18_DEPENDENCY_COMPATIBILITY.md +284 -0
- package/skills-library/deployment-security/PHP_INSTALLER_WIZARD_GUIDE.md +315 -0
- package/skills-library/deployment-security/PM2_ENVIRONMENT_VARIABLE_CACHING.md +256 -0
- package/skills-library/deployment-security/PM2_MEMORY_EXHAUSTION_FIX.md +370 -0
- package/skills-library/deployment-security/PRODUCTION_DEPLOYMENT_GUIDE.md +592 -0
- package/skills-library/deployment-security/PRODUCTION_HARDENING_DOCUMENTATION.md +307 -0
- package/skills-library/deployment-security/PRODUCTION_RECOVERY_CHERRY_PICK_PATTERN.md +202 -0
- package/skills-library/deployment-security/PYINSTALLER_CUDA_WHISPER_BUNDLING.md +236 -0
- package/skills-library/deployment-security/SECURITY.md +41 -0
- package/skills-library/deployment-security/SMTP_SSL_HOSTNAME_MISMATCH_SHARED_HOSTING.md +220 -0
- package/skills-library/deployment-security/SPA_SEO_OPTIMIZATION_CPANEL.md +200 -0
- package/skills-library/deployment-security/SUPABASE_EDGE_FUNCTIONS.md +338 -0
- package/skills-library/deployment-security/VERCEL_GITHUB_DEPLOYMENT_GUIDE.md +858 -0
- package/skills-library/deployment-security/VPS_DEPLOYMENT_READINESS.md +356 -0
- package/skills-library/deployment-security/deployment-changes-not-applying.md +241 -0
- package/skills-library/deployment-security/env-file-management-production-local.md +203 -0
- package/skills-library/deployment-security/express-secure-file-downloads.md +413 -0
- package/skills-library/deployment-security/react-production-deployment-desktop-guide.md +2011 -0
- package/skills-library/deployment-security/self-hosted-supabase-coolify-guide.md +1684 -0
- package/skills-library/deployment-security/unique-features-ai-strategy-plaid-security.md +1613 -0
- package/skills-library/deployment-security/vps-deployment.md +135 -0
- package/skills-library/document-processing/WORD_EXPORT_MARKDOWN_FORMATTING.md +482 -0
- package/skills-library/document-processing/document-ai-landingai-integration.md +677 -0
- package/skills-library/document-processing/express-secure-file-downloads-mern.md +413 -0
- package/skills-library/document-processing/express-secure-file-downloads.md +413 -0
- package/skills-library/document-processing/md-to-word-converter.md +318 -0
- package/skills-library/document-processing/pdf-forms-integration/README.md +101 -0
- package/skills-library/document-processing/pdf-forms-integration/SKILL.md +662 -0
- package/skills-library/ecommerce/ADMIN_PRODUCTS_GUIDE.md +428 -0
- package/skills-library/ecommerce/ECOMMERCE_API_REFERENCE.md +776 -0
- package/skills-library/ecommerce/ECOMMERCE_COMPLETION_SUMMARY.md +673 -0
- package/skills-library/ecommerce/ECOMMERCE_IMPLEMENTATION_GUIDE.md +729 -0
- package/skills-library/ecommerce/ECOMMERCE_QUICK_REFERENCE.md +521 -0
- package/skills-library/ecommerce/ECOMMERCE_TESTING_CHECKLIST.md +565 -0
- package/skills-library/ecommerce/ECOMMERCE_WORKFLOW_GUIDE.md +1059 -0
- package/skills-library/ecommerce/PRODUCT_CREATION_EXPANDED.md +522 -0
- package/skills-library/ecommerce/agentic-commerce-protocol.md +203 -0
- package/skills-library/ecommerce/cart-abandonment-recovery.md +236 -0
- package/skills-library/ecommerce/cart-architecture-patterns.md +300 -0
- package/skills-library/ecommerce/cart-item-count-indicator.md +264 -0
- package/skills-library/ecommerce/checkout-ux-conversion.md +227 -0
- package/skills-library/ecommerce/composable-commerce-selection.md +166 -0
- package/skills-library/ecommerce/ecommerce-analytics-patterns.md +167 -0
- package/skills-library/ecommerce/fraud-detection-patterns.md +179 -0
- package/skills-library/ecommerce/inventory-stock-management.md +270 -0
- package/skills-library/ecommerce/order-saga-state-machine.md +336 -0
- package/skills-library/ecommerce/payment-provider-abstraction.md +245 -0
- package/skills-library/ecommerce/pci-compliance-checklist.md +192 -0
- package/skills-library/ecommerce/refund-chargeback-handling.md +177 -0
- package/skills-library/ecommerce/shipping-carrier-integration.md +218 -0
- package/skills-library/ecommerce/webhook-idempotency-patterns.md +253 -0
- package/skills-library/excalidraw-diagrams/.github/workflows/ci.yml +558 -0
- package/skills-library/excalidraw-diagrams/.github/workflows/prompt-gallery.yml +448 -0
- package/skills-library/excalidraw-diagrams/.github/workflows/release.yml +42 -0
- package/skills-library/excalidraw-diagrams/.github/workflows/test-reusable-ci.yml +25 -0
- package/skills-library/excalidraw-diagrams/CLAUDE.md +57 -0
- package/skills-library/excalidraw-diagrams/LICENSE +21 -0
- package/skills-library/excalidraw-diagrams/README.md +178 -0
- package/skills-library/excalidraw-diagrams/SKILL.md +715 -0
- package/skills-library/form-solutions/BUTTON_TYPE_FORM_SUBMISSION.md +336 -0
- package/skills-library/form-solutions/FILLABLE_PDF_IMPLEMENTATION.md +226 -0
- package/skills-library/form-solutions/SURVEYJS_QUESTIONNAIRE_SYSTEM.md +367 -0
- package/skills-library/form-solutions/tiptap-minimal-setup.md +690 -0
- package/skills-library/frontend/scholarly-classification-bubble-map.md +149 -0
- package/skills-library/infrastructure/ci-cd-pipeline-builder.md +517 -0
- package/skills-library/infrastructure/observability-designer.md +264 -0
- package/skills-library/infrastructure/performance-profiler.md +621 -0
- package/skills-library/installer-wizard-patterns.md +249 -0
- package/skills-library/integrations/CLAUDE_CODE_TOKEN_ANALYTICS.md +160 -0
- package/skills-library/integrations/CONFIGURABLE_AI_PROVIDER_SELECTION.md +728 -0
- package/skills-library/integrations/SOCKET_IO_BROADCAST_ALL_VS_ROOM.md +141 -0
- package/skills-library/integrations/VIRTUAL_MEETINGS_IMPLEMENTATION.md +374 -0
- package/skills-library/integrations/WORDPRESS_LEARNDASH_DATA_RECOVERY.md +53 -0
- package/skills-library/integrations/YOUTUBE_API_SETUP.md +141 -0
- package/skills-library/integrations/YOUTUBE_BOOKMARKING_EXPLANATION.md +252 -0
- package/skills-library/integrations/YOUTUBE_BOOKMARKING_SOLUTION.md +268 -0
- package/skills-library/integrations/YOUTUBE_OAUTH_SETUP_GUIDE.md +200 -0
- package/skills-library/integrations/YOUTUBE_VIDEO_FIX_COMPLETE.md +192 -0
- package/skills-library/integrations/ai-ml/GEMINI_AI_RAG_PIPELINE_COMPLETE_GUIDE.md +195 -0
- package/skills-library/integrations/ai-ml/GEMINI_IMAGE_GENERATION_SETUP.md +64 -0
- package/skills-library/integrations/cloudflare/cloudflare-turnstile-debugging.md +202 -0
- package/skills-library/integrations/cloudflare/cloudflare-turnstile-implementation.md +476 -0
- package/skills-library/integrations/cloudflare-turnstile-debugging.md +202 -0
- package/skills-library/integrations/cloudflare-turnstile-implementation.md +476 -0
- package/skills-library/integrations/ghost-creator-monetization-pattern.md +454 -0
- package/skills-library/integrations/headless-cms-architecture.md +484 -0
- package/skills-library/integrations/headless-cms-stack-selection.md +183 -0
- package/skills-library/integrations/payload-cms-patterns.md +674 -0
- package/skills-library/integrations/realtimestt-openwakeword-cuda-windows.md +229 -0
- package/skills-library/integrations/rss-podcast-integration.md +300 -0
- package/skills-library/integrations/wordpress/WORDPRESS_LEARNDASH_DATA_RECOVERY.md +53 -0
- package/skills-library/integrations/youtube/YOUTUBE_API_SETUP.md +141 -0
- package/skills-library/integrations/youtube/YOUTUBE_BOOKMARKING_EXPLANATION.md +252 -0
- package/skills-library/integrations/youtube/YOUTUBE_BOOKMARKING_SOLUTION.md +268 -0
- package/skills-library/integrations/youtube/YOUTUBE_OAUTH_SETUP_GUIDE.md +200 -0
- package/skills-library/integrations/youtube/YOUTUBE_VIDEO_FIX_COMPLETE.md +192 -0
- package/skills-library/marketing/campaign-analytics.md +97 -0
- package/skills-library/marketing/content-creator.md +105 -0
- package/skills-library/marketing/marketing-strategy-pmm.md +94 -0
- package/skills-library/marketing/social-media-analyzer.md +81 -0
- package/skills-library/methodology/ADVANCED_ORCHESTRATION_PATTERNS.md +401 -0
- package/skills-library/methodology/AGENT_SELF_IMPROVEMENT_LOOP.md +179 -0
- package/skills-library/methodology/BREATH_BASED_PARALLEL_EXECUTION.md +1 -1
- package/skills-library/methodology/CLEANSING_CYCLE.md +358 -0
- package/skills-library/methodology/CONFIDENCE_ANNOTATION_PATTERN.md +143 -0
- package/skills-library/methodology/CRITICAL_PATTERNS_DOCUMENTATION_COMPLETE.md +204 -0
- package/skills-library/methodology/DELIVERABLES_SUMMARY.md +341 -0
- package/skills-library/methodology/DIFFICULTY_AWARE_AGENT_ROUTING.md +252 -0
- package/skills-library/methodology/EVOLUTIONARY_SKILL_SYNTHESIS.md +219 -0
- package/skills-library/methodology/GLOMERULUS_DECISION_GATE.md +223 -0
- package/skills-library/methodology/HIBERNATION_SYSTEM.md +231 -0
- package/skills-library/methodology/INSTRUMENTATION_OVER_RESTRICTION.md +192 -0
- package/skills-library/methodology/MASTER_COMPLETION_SUMMARY.md +444 -0
- package/skills-library/methodology/MASTER_SESSION_COMPLETION.md +743 -0
- package/skills-library/methodology/MERN_QUICK_REFERENCE.md +358 -0
- package/skills-library/methodology/ORGAN_AGENT_MAPPING.md +177 -0
- package/skills-library/methodology/PARALLEL_WAVE_BASED_REFACTORING.md +440 -0
- package/skills-library/methodology/QUICK_REFERENCE.md +358 -0
- package/skills-library/methodology/SDFT_ONPOLICY_SELF_DISTILLATION.md +186 -0
- package/skills-library/methodology/SELF_QUESTIONING_TASK_GENERATION.md +270 -0
- package/skills-library/methodology/SESSION_COMPLETION_SUMMARY.md +304 -0
- package/skills-library/methodology/SESSION_SUMMARY.md +432 -0
- package/skills-library/methodology/WARRIOR_WORKFLOW_DEBUGGING_PROTOCOL.md +252 -0
- package/skills-library/methodology/tech-debt-tracker.md +570 -0
- package/skills-library/parallel-debug/SKILL.md +60 -0
- package/skills-library/patterns-standards/API_PATTERN_FIX_SUMMARY.md +236 -0
- package/skills-library/patterns-standards/BATCH_OPERATIONS_WITH_PROGRESS_MODAL.md +362 -0
- package/skills-library/patterns-standards/CRITICAL_CODING_PATTERNS.md +639 -0
- package/skills-library/patterns-standards/DARK_MODE_MODAL_VISIBILITY.md +258 -0
- package/skills-library/patterns-standards/ERROR_RESILIENCE_IMPLEMENTATION.md +375 -0
- package/skills-library/patterns-standards/ES_MODULE_IMPORT_HOISTING_DOTENV.md +298 -0
- package/skills-library/patterns-standards/NESTED_BACKDROP_FILTER_CSS_ARTIFACT_FIX.md +76 -0
- package/skills-library/patterns-standards/ORDERED_DETECTOR_PIPELINE_GRACEFUL_FALLBACK.md +333 -0
- package/skills-library/patterns-standards/PHASE_IMPORT_ERROR_DEBUGGING.md +271 -0
- package/skills-library/patterns-standards/PYNPUT_GLOBAL_HOTKEY_VK_MATCHING.md +252 -0
- package/skills-library/patterns-standards/REACT_USEEFFECT_CASCADE_RESET_FIX.md +132 -0
- package/skills-library/patterns-standards/SUBMENU_HOVER_DROPDOWN_PATTERN.md +225 -0
- package/skills-library/patterns-standards/TAILWIND_TEXT_VISIBILITY_OVERRIDE.md +322 -0
- package/skills-library/patterns-standards/THEME_AWARE_CSS_VARIABLES_PATTERN.md +209 -0
- package/skills-library/patterns-standards/THEME_USER_OBJECT_PROPERTY_NAMING.md +194 -0
- package/skills-library/patterns-standards/TOOLTIP_BLOCKING_CLICKS_FIX.md +267 -0
- package/skills-library/patterns-standards/claude-code-plugin-structure.md +235 -0
- package/skills-library/patterns-standards/react-i18next-setup.md +429 -0
- package/skills-library/patterns-standards/thesys-c1-generative-ui-integration.md +967 -0
- package/skills-library/plugin-development/CLAUDE_CODE_COMMAND_REGISTRATION_SILENT_FAILURE.md +315 -0
- package/skills-library/plugin-development/plugin-command-namespace-vs-global.md +390 -0
- package/skills-library/plugin-development/plugin-doc-auto-generation.md +172 -0
- package/skills-library/security/GITHUB_REPO_SECURITY_AUDIT.md +115 -0
- package/skills-library/security/admin-deletion-safety.md +396 -0
- package/skills-library/security/application-vuln-patterns.md +477 -0
- package/skills-library/security/env-secrets-manager.md +686 -0
- package/skills-library/security/secure-ai-application-templates.md +347 -0
- package/skills-library/security/sql-injection-prevention-postgresjs.md +151 -0
- package/skills-library/supabase-connection-pooler-fix.md +102 -0
- package/skills-library/system-context/POWERSHELL_BASH_INTEROP.md +82 -0
- package/skills-library/system-context/SERVICE_LIFECYCLE_MANAGEMENT.md +119 -0
- package/skills-library/system-context/SKILL.md +40 -0
- package/skills-library/system-context/WINDOWS_DEV_ENVIRONMENT.md +73 -0
- package/skills-library/testing/E2E_PLAYWRIGHT_PATTERNS.md +99 -0
- package/skills-library/testing/INTEGRATION_TEST_STRATEGY.md +82 -0
- package/skills-library/testing/RED_GREEN_BUGFIX_GATE.md +203 -0
- package/skills-library/testing/TEST_DATA_MANAGEMENT.md +69 -0
- package/skills-library/testing/VITEST_UNIT_TEST_PATTERNS.md +75 -0
- package/skills-library/testing/playwright-api-security-tests.md +202 -0
- package/skills-library/toolbox/SKILL.md +84 -0
- package/skills-library/toolbox/code-graph-and-web-scraping-mcps.md +237 -0
- package/skills-library/ui-ux-pro-max/ACCESSIBILITY_ESSENTIALS.md +115 -0
- package/skills-library/ui-ux-pro-max/DESIGN_SYSTEM_SCAFFOLDING.md +133 -0
- package/skills-library/ui-ux-pro-max/RESPONSIVE_LAYOUT_PATTERNS.md +119 -0
- package/skills-library/ui-ux-pro-max/SKILL.md +386 -0
- package/skills-library/ui-ux-pro-max/data/charts.csv +26 -0
- package/skills-library/ui-ux-pro-max/data/colors.csv +97 -0
- package/skills-library/ui-ux-pro-max/data/icons.csv +101 -0
- package/skills-library/ui-ux-pro-max/data/landing.csv +31 -0
- package/skills-library/ui-ux-pro-max/data/products.csv +97 -0
- package/skills-library/ui-ux-pro-max/data/react-performance.csv +45 -0
- package/skills-library/ui-ux-pro-max/data/stacks/astro.csv +54 -0
- package/skills-library/ui-ux-pro-max/data/stacks/flutter.csv +53 -0
- package/skills-library/ui-ux-pro-max/data/stacks/html-tailwind.csv +56 -0
- package/skills-library/ui-ux-pro-max/data/stacks/jetpack-compose.csv +53 -0
- package/skills-library/ui-ux-pro-max/data/stacks/nextjs.csv +53 -0
- package/skills-library/ui-ux-pro-max/data/stacks/nuxt-ui.csv +51 -0
- package/skills-library/ui-ux-pro-max/data/stacks/nuxtjs.csv +59 -0
- package/skills-library/ui-ux-pro-max/data/stacks/react-native.csv +52 -0
- package/skills-library/ui-ux-pro-max/data/stacks/react.csv +54 -0
- package/skills-library/ui-ux-pro-max/data/stacks/shadcn.csv +61 -0
- package/skills-library/ui-ux-pro-max/data/stacks/svelte.csv +54 -0
- package/skills-library/ui-ux-pro-max/data/stacks/swiftui.csv +51 -0
- package/skills-library/ui-ux-pro-max/data/stacks/vue.csv +50 -0
- package/skills-library/ui-ux-pro-max/data/styles.csv +68 -0
- package/skills-library/ui-ux-pro-max/data/typography.csv +58 -0
- package/skills-library/ui-ux-pro-max/data/ui-reasoning.csv +101 -0
- package/skills-library/ui-ux-pro-max/data/ux-guidelines.csv +100 -0
- package/skills-library/ui-ux-pro-max/data/web-interface.csv +31 -0
- package/skills-library/wordpress-style-theme-components.md +1526 -0
- package/templates/ASSUMPTIONS.md +1 -1
- package/templates/DECISION_LOG.md +0 -1
- package/templates/phase-prompt.md +1 -1
- package/templates/phoenix-comparison.md +6 -6
- package/templates/skill-api-integration.md +106 -0
- package/templates/skill-architecture-pattern.md +92 -0
- package/templates/skill-debug-pattern.md +98 -0
- package/templates/skill-devops-recipe.md +107 -0
- package/templates/skill-general.md +65 -0
- package/templates/skill-ui-component.md +113 -0
- package/tools/uat-runner.py +179 -0
- package/version.json +7 -3
- package/workflows/handoff-session.md +2 -2
- package/workflows/new-project.md +2 -2
- package/workflows/plan-phase.md +1 -1
- package/.claude-plugin/plugin.json +0 -64
- package/skills-library/_general/methodology/LIVE_BREADCRUMB_PROTOCOL.md +0 -242
- package/skills-library/_general/methodology/llm-judge-memory-crud.md +0 -241
- package/skills-library/methodology/REFLEXION_MEMORY_PATTERN.md +0 -183
- package/skills-library/methodology/RESEARCH_BACKED_WORKFLOW_UPGRADE.md +0 -263
- package/skills-library/methodology/SABBATH_REST_PATTERN.md +0 -267
- package/skills-library/methodology/STONE_AND_SCAFFOLD.md +0 -220
- package/skills-library/specialists/api-architecture/api-designer.md +0 -49
- package/skills-library/specialists/api-architecture/graphql-architect.md +0 -49
- package/skills-library/specialists/api-architecture/mcp-developer.md +0 -51
- package/skills-library/specialists/api-architecture/microservices-architect.md +0 -50
- package/skills-library/specialists/api-architecture/websocket-engineer.md +0 -48
- package/skills-library/specialists/backend/django-expert.md +0 -52
- package/skills-library/specialists/backend/fastapi-expert.md +0 -52
- package/skills-library/specialists/backend/laravel-specialist.md +0 -52
- package/skills-library/specialists/backend/nestjs-expert.md +0 -51
- package/skills-library/specialists/backend/rails-expert.md +0 -53
- package/skills-library/specialists/backend/spring-boot-engineer.md +0 -56
- package/skills-library/specialists/data-ml/fine-tuning-expert.md +0 -48
- package/skills-library/specialists/data-ml/ml-pipeline.md +0 -47
- package/skills-library/specialists/data-ml/pandas-pro.md +0 -47
- package/skills-library/specialists/data-ml/rag-architect.md +0 -51
- package/skills-library/specialists/data-ml/spark-engineer.md +0 -47
- package/skills-library/specialists/frontend/angular-architect.md +0 -52
- package/skills-library/specialists/frontend/flutter-expert.md +0 -51
- package/skills-library/specialists/frontend/nextjs-developer.md +0 -54
- package/skills-library/specialists/frontend/react-native-expert.md +0 -50
- package/skills-library/specialists/frontend/vue-expert.md +0 -51
- package/skills-library/specialists/infrastructure/chaos-engineer.md +0 -74
- package/skills-library/specialists/infrastructure/cloud-architect.md +0 -70
- package/skills-library/specialists/infrastructure/database-optimizer.md +0 -64
- package/skills-library/specialists/infrastructure/devops-engineer.md +0 -70
- package/skills-library/specialists/infrastructure/kubernetes-specialist.md +0 -52
- package/skills-library/specialists/infrastructure/monitoring-expert.md +0 -70
- package/skills-library/specialists/infrastructure/sre-engineer.md +0 -70
- package/skills-library/specialists/infrastructure/terraform-engineer.md +0 -51
- package/skills-library/specialists/languages/cpp-pro.md +0 -74
- package/skills-library/specialists/languages/csharp-developer.md +0 -69
- package/skills-library/specialists/languages/dotnet-core-expert.md +0 -54
- package/skills-library/specialists/languages/golang-pro.md +0 -51
- package/skills-library/specialists/languages/java-architect.md +0 -49
- package/skills-library/specialists/languages/javascript-pro.md +0 -68
- package/skills-library/specialists/languages/kotlin-specialist.md +0 -68
- package/skills-library/specialists/languages/php-pro.md +0 -49
- package/skills-library/specialists/languages/python-pro.md +0 -52
- package/skills-library/specialists/languages/react-expert.md +0 -51
- package/skills-library/specialists/languages/rust-engineer.md +0 -50
- package/skills-library/specialists/languages/sql-pro.md +0 -56
- package/skills-library/specialists/languages/swift-expert.md +0 -69
- package/skills-library/specialists/languages/typescript-pro.md +0 -51
- package/skills-library/specialists/platform/atlassian-mcp.md +0 -52
- package/skills-library/specialists/platform/embedded-systems.md +0 -53
- package/skills-library/specialists/platform/game-developer.md +0 -53
- package/skills-library/specialists/platform/salesforce-developer.md +0 -53
- package/skills-library/specialists/platform/shopify-expert.md +0 -49
- package/skills-library/specialists/platform/wordpress-pro.md +0 -49
- package/skills-library/specialists/quality/code-documenter.md +0 -51
- package/skills-library/specialists/quality/code-reviewer.md +0 -67
- package/skills-library/specialists/quality/debugging-wizard.md +0 -51
- package/skills-library/specialists/quality/fullstack-guardian.md +0 -51
- package/skills-library/specialists/quality/legacy-modernizer.md +0 -50
- package/skills-library/specialists/quality/playwright-expert.md +0 -65
- package/skills-library/specialists/quality/spec-miner.md +0 -56
- package/skills-library/specialists/quality/test-master.md +0 -65
- package/skills-library/specialists/security/secure-code-guardian.md +0 -55
- package/skills-library/specialists/security/security-reviewer.md +0 -53
- package/skills-library/specialists/workflow/architecture-designer.md +0 -53
- package/skills-library/specialists/workflow/cli-developer.md +0 -70
- package/skills-library/specialists/workflow/feature-forge.md +0 -65
- package/skills-library/specialists/workflow/prompt-engineer.md +0 -54
- package/skills-library/specialists/workflow/the-fool.md +0 -62
- /package/skills-library/{performance → _general/performance}/cache-augmented-generation.md +0 -0
- /package/skills-library/{debugging → parallel-debug}/FAILURE_TAXONOMY_CLASSIFICATION.md +0 -0
- /package/skills-library/{debugging → parallel-debug}/THREE_AGENT_HYPOTHESIS_DEBUGGING.md +0 -0
|
@@ -0,0 +1,397 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: Multi-Agent Coordination Patterns
|
|
3
|
+
category: methodology
|
|
4
|
+
version: 1.0.0
|
|
5
|
+
contributed: 2026-03-08
|
|
6
|
+
contributor: fire-research
|
|
7
|
+
last_updated: 2026-03-08
|
|
8
|
+
tags: [multi-agent, coordination, error-handling, delegation, arbitration, communication]
|
|
9
|
+
difficulty: hard
|
|
10
|
+
---
|
|
11
|
+
|
|
12
|
+
# Multi-Agent Coordination — Production Patterns from Open-Source Tools
|
|
13
|
+
|
|
14
|
+
> lazygit, ruff, oxc, biome, uv, vite, delta, starship, DevToys, it-tools, lapce.
|
|
15
|
+
> These patterns are battle-tested in production tools with millions of users.
|
|
16
|
+
|
|
17
|
+
## 1. Error Classification Taxonomy (Gap #2, #3)
|
|
18
|
+
|
|
19
|
+
> **Source:** biome `handler.rs`, oxc `service.rs`, ruff `check.rs`
|
|
20
|
+
> Pattern: Category-based error routing with isolation boundaries
|
|
21
|
+
|
|
22
|
+
### Error Categories for Agent Execution
|
|
23
|
+
|
|
24
|
+
```
|
|
25
|
+
SEVERITY LEVELS (route differently):
|
|
26
|
+
PANIC: Agent crashed unexpectedly
|
|
27
|
+
→ Isolate (catch_unwind pattern), emit diagnostic, continue other agents
|
|
28
|
+
→ NEVER cascade to sibling agents
|
|
29
|
+
|
|
30
|
+
ERROR: Task failed with known cause
|
|
31
|
+
→ Classify by type (see below), route to appropriate handler
|
|
32
|
+
→ Increment accumulated_weight in circuit breaker
|
|
33
|
+
|
|
34
|
+
WARNING: Task completed with concerns
|
|
35
|
+
→ Log to playbook, continue execution
|
|
36
|
+
→ Check cumulative threshold (max_warnings pattern from oxc)
|
|
37
|
+
|
|
38
|
+
INFO: Discovery or observation
|
|
39
|
+
→ Add to playbook as DISCOVERY entry
|
|
40
|
+
→ No intervention needed
|
|
41
|
+
|
|
42
|
+
ERROR TYPE ROUTING (different types get different treatment):
|
|
43
|
+
INTERMITTENT: Build failure, API timeout, flaky test
|
|
44
|
+
→ Retry up to 2x with same context (each retry adds weight to circuit breaker)
|
|
45
|
+
→ Source: ruff IOError rule — check if error type's retry is enabled
|
|
46
|
+
→ NOTE: Named INTERMITTENT (not TRANSIENT) to avoid collision with stuck-state TRANSIENT
|
|
47
|
+
|
|
48
|
+
LOGIC: Wrong output, failed assertion, incorrect behavior
|
|
49
|
+
→ Re-read requirements, try different approach
|
|
50
|
+
→ Source: biome category routing — route to different handler
|
|
51
|
+
|
|
52
|
+
ARCHITECTURE: Wrong file structure, circular dependency, contract violation
|
|
53
|
+
→ Escalate to planner, do NOT retry locally
|
|
54
|
+
→ Source: oxc no-cycle rule — detect and report, don't fix
|
|
55
|
+
|
|
56
|
+
ENVIRONMENT: Missing dependency, wrong version, permission denied
|
|
57
|
+
→ Fix environment, then retry task
|
|
58
|
+
→ Source: ruff — IOError vs ParseError distinction
|
|
59
|
+
|
|
60
|
+
CUMULATIVE THRESHOLD (from oxc max_warnings):
|
|
61
|
+
Track warning_count across all tasks in a breath
|
|
62
|
+
IF warning_count > max_warnings (default: 10):
|
|
63
|
+
→ Convert accumulated warnings to ERROR
|
|
64
|
+
→ Trip circuit breaker
|
|
65
|
+
→ "Too many warnings indicate systemic issue — investigate root cause"
|
|
66
|
+
```
|
|
67
|
+
|
|
68
|
+
### Cascade Prevention (catch_unwind pattern from biome)
|
|
69
|
+
|
|
70
|
+
```
|
|
71
|
+
FOR each agent spawned in parallel:
|
|
72
|
+
result = catch_agent_execution(agent, task)
|
|
73
|
+
|
|
74
|
+
MATCH result:
|
|
75
|
+
OK(completed) → record success, continue
|
|
76
|
+
OK(failed) → record failure as diagnostic, continue OTHER agents
|
|
77
|
+
PANIC(error) → record panic as diagnostic, continue OTHER agents
|
|
78
|
+
Log: "Agent {name} panicked on task {N}: {error}"
|
|
79
|
+
The PANIC is captured, NOT propagated.
|
|
80
|
+
|
|
81
|
+
CRITICAL: One agent's failure NEVER stops sibling agents.
|
|
82
|
+
Each agent runs in isolation. Failures are collected and reported
|
|
83
|
+
after ALL agents in the breath complete.
|
|
84
|
+
```
|
|
85
|
+
|
|
86
|
+
## 2. Semaphore Delegation Bounding (Gap #7)
|
|
87
|
+
|
|
88
|
+
> **Source:** turborepo `execute.rs`, mise `task_scheduler.rs`
|
|
89
|
+
> Pattern: Permit pool limits concurrent agent spawning
|
|
90
|
+
|
|
91
|
+
```
|
|
92
|
+
max_concurrent_agents = 4 (default, configurable)
|
|
93
|
+
|
|
94
|
+
semaphore = Semaphore(max_concurrent_agents)
|
|
95
|
+
|
|
96
|
+
FOR each agent to spawn:
|
|
97
|
+
permit = semaphore.acquire() // blocks if all permits taken
|
|
98
|
+
spawn_agent(task, permit)
|
|
99
|
+
|
|
100
|
+
ON agent completion:
|
|
101
|
+
permit.release() // next waiting agent can proceed
|
|
102
|
+
|
|
103
|
+
RULES:
|
|
104
|
+
- Sub-agents spawned BY agents do NOT get separate permits
|
|
105
|
+
(they share their parent's permit — prevents depth explosion)
|
|
106
|
+
- SWARM mode: max_concurrent_agents = min(plan_count, 4)
|
|
107
|
+
- SUBAGENT mode: max_concurrent_agents = min(plan_count, 3)
|
|
108
|
+
- SEQUENTIAL mode: max_concurrent_agents = 1
|
|
109
|
+
```
|
|
110
|
+
|
|
111
|
+
## 3. Task Ownership Protocol (Gap #6)
|
|
112
|
+
|
|
113
|
+
> **Source:** mise `task_scheduler.rs`, turborepo `visitor/mod.rs`
|
|
114
|
+
> Pattern: Explicit ownership with transfer tracking
|
|
115
|
+
|
|
116
|
+
```
|
|
117
|
+
TASK OWNERSHIP (in .planning/.shared-state.json):
|
|
118
|
+
{
|
|
119
|
+
"tasks": {
|
|
120
|
+
"03-01-task-1": {
|
|
121
|
+
"owner": "backend-agent",
|
|
122
|
+
"status": "in_progress",
|
|
123
|
+
"claimed_at": "2026-03-08T10:30:00Z",
|
|
124
|
+
"transfer_count": 0
|
|
125
|
+
},
|
|
126
|
+
"03-01-task-2": {
|
|
127
|
+
"owner": null,
|
|
128
|
+
"status": "pending",
|
|
129
|
+
"claimed_at": null,
|
|
130
|
+
"transfer_count": 0
|
|
131
|
+
}
|
|
132
|
+
}
|
|
133
|
+
}
|
|
134
|
+
|
|
135
|
+
CLAIM PROTOCOL:
|
|
136
|
+
1. Agent reads .shared-state.json
|
|
137
|
+
2. Finds task with owner=null and status=pending
|
|
138
|
+
3. Writes owner={agent_name}, status=in_progress, claimed_at=now()
|
|
139
|
+
4. Proceeds with task
|
|
140
|
+
|
|
141
|
+
TRANSFER RULES:
|
|
142
|
+
- transfer_count tracks how many times a task changed hands
|
|
143
|
+
- IF transfer_count >= 2: escalate to orchestrator (task is toxic)
|
|
144
|
+
- On transfer: previous owner writes failure summary to task entry
|
|
145
|
+
- Source: Academic research — 17x error amplification in unstructured networks
|
|
146
|
+
|
|
147
|
+
COMPLETION:
|
|
148
|
+
- Agent writes status=completed, adds summary
|
|
149
|
+
- Checks for next unclaimed task
|
|
150
|
+
- IF no unclaimed tasks: agent signals idle
|
|
151
|
+
```
|
|
152
|
+
|
|
153
|
+
## 4. Structured Agent Return Envelope (Gap #9)
|
|
154
|
+
|
|
155
|
+
> **Source:** biome `FileStatus` enum, mern-community-lms response envelope
|
|
156
|
+
> Pattern: Consistent structured output from every agent
|
|
157
|
+
|
|
158
|
+
```
|
|
159
|
+
EVERY agent returns this envelope (not prose, not ad-hoc):
|
|
160
|
+
|
|
161
|
+
{
|
|
162
|
+
"agent": "{agent_name}",
|
|
163
|
+
"plan": "{N}-{NN}",
|
|
164
|
+
"status": "completed | failed | blocked | partial",
|
|
165
|
+
"summary": "1-2 sentences of what was done", // MAX 200 tokens
|
|
166
|
+
"tasks": {
|
|
167
|
+
"completed": ["task-1", "task-2"],
|
|
168
|
+
"failed": ["task-3"],
|
|
169
|
+
"skipped": []
|
|
170
|
+
},
|
|
171
|
+
"files_changed": ["path/to/file.ts"],
|
|
172
|
+
"errors": [
|
|
173
|
+
{
|
|
174
|
+
"task": "task-3",
|
|
175
|
+
"category": "INTERMITTENT | LOGIC | ARCHITECTURE | ENVIRONMENT",
|
|
176
|
+
"message": "What went wrong",
|
|
177
|
+
"severity": "ERROR | WARNING | PANIC",
|
|
178
|
+
"retry_eligible": true
|
|
179
|
+
}
|
|
180
|
+
],
|
|
181
|
+
"warnings_count": 2,
|
|
182
|
+
"confidence": 75,
|
|
183
|
+
"checkpoint_id": "cp-003",
|
|
184
|
+
"next_needs": "Brief note for downstream agent" // MAX 100 tokens
|
|
185
|
+
}
|
|
186
|
+
|
|
187
|
+
PARSING RULES FOR ORCHESTRATOR:
|
|
188
|
+
- status=completed → proceed to next breath
|
|
189
|
+
- status=partial → some tasks done, check tasks.failed for retry
|
|
190
|
+
- status=failed → check errors[].category for routing
|
|
191
|
+
- status=blocked → read errors[0].message for blocker description
|
|
192
|
+
- warnings_count > 10 → treat as soft failure
|
|
193
|
+
```
|
|
194
|
+
|
|
195
|
+
## 5. Verdict Arbitration Protocol (Gap #5)
|
|
196
|
+
|
|
197
|
+
> **Source:** uv PubGrub `priority.rs`, turborepo `lib.rs` (Tarjan SCC + cut sets)
|
|
198
|
+
> Pattern: Resolve conflicting verdicts with weighted scoring + fork strategy
|
|
199
|
+
|
|
200
|
+
```
|
|
201
|
+
WHEN verifier and reviewer produce contradictory verdicts:
|
|
202
|
+
|
|
203
|
+
1. CLASSIFY CONFLICT TYPE:
|
|
204
|
+
- SCOPE: Verifier checks functionality, reviewer checks quality
|
|
205
|
+
→ Both can be right. Apply BOTH sets of fixes.
|
|
206
|
+
- SEVERITY: Verifier says PASS, reviewer says BLOCK
|
|
207
|
+
→ Weighted resolution (see below)
|
|
208
|
+
- CONTRADICTION: Verifier says "add X", reviewer says "remove X"
|
|
209
|
+
→ Fork resolution (spawn parallel branches)
|
|
210
|
+
|
|
211
|
+
2. WEIGHTED RESOLUTION (from uv conflict prioritization):
|
|
212
|
+
verifier_weight = 0.6 (functional correctness is primary)
|
|
213
|
+
reviewer_weight = 0.4 (code quality is secondary)
|
|
214
|
+
|
|
215
|
+
FOR each conflicting item:
|
|
216
|
+
IF verifier says PASS and reviewer says BLOCK:
|
|
217
|
+
combined_score = (verifier_confidence * 0.6) + (reviewer_confidence * 0.4)
|
|
218
|
+
IF combined_score > 70: PASS with reviewer's suggestions as TODOs
|
|
219
|
+
IF combined_score <= 70: FAIL — fix required
|
|
220
|
+
|
|
221
|
+
IF verifier says FAIL: always FAIL (functional correctness is non-negotiable)
|
|
222
|
+
|
|
223
|
+
3. FORK RESOLUTION (from uv fork-based resolver):
|
|
224
|
+
When verdicts are genuinely contradictory:
|
|
225
|
+
Fork A: Apply verifier's recommendation
|
|
226
|
+
Fork B: Apply reviewer's recommendation
|
|
227
|
+
Run verification on BOTH forks
|
|
228
|
+
Accept the fork that passes verification
|
|
229
|
+
If BOTH pass: accept verifier's (functional correctness wins)
|
|
230
|
+
If NEITHER passes: escalate to human
|
|
231
|
+
|
|
232
|
+
4. CONFLICT HISTORY TRACKING (from uv incompatibility store):
|
|
233
|
+
Track which reviewer personas frequently conflict with verifier
|
|
234
|
+
After 3+ conflicts from same persona:
|
|
235
|
+
→ Deprioritize that persona's BLOCK votes
|
|
236
|
+
→ "Persona {X} has conflicted 4 times — reducing weight to 0.2"
|
|
237
|
+
```
|
|
238
|
+
|
|
239
|
+
## 6. Cross-Phase DAG Validation (Gap #8)
|
|
240
|
+
|
|
241
|
+
> **Source:** turborepo `lib.rs` (validate_graph), oxc `no_cycle.rs`
|
|
242
|
+
> Pattern: Validate entire dependency chain before execution
|
|
243
|
+
|
|
244
|
+
```
|
|
245
|
+
BEFORE executing any phase, validate the phase DAG:
|
|
246
|
+
|
|
247
|
+
1. BUILD PHASE GRAPH:
|
|
248
|
+
nodes = all phases from VISION.md
|
|
249
|
+
edges = phase dependencies (phase N depends on phase N-1's outputs)
|
|
250
|
+
|
|
251
|
+
2. CHECK FOR CYCLES (Tarjan's SCC from turborepo):
|
|
252
|
+
cycles = find_strongly_connected_components(graph)
|
|
253
|
+
IF cycles found:
|
|
254
|
+
→ Report ALL cycles (not just the first one)
|
|
255
|
+
→ For each cycle, suggest cut points:
|
|
256
|
+
"Phase 3 → Phase 5 → Phase 3 creates a cycle.
|
|
257
|
+
Break by: removing Phase 5's dependency on Phase 3,
|
|
258
|
+
OR removing Phase 3's dependency on Phase 5."
|
|
259
|
+
→ STOP — do not execute with circular dependencies
|
|
260
|
+
|
|
261
|
+
3. CHECK DEPENDENCY AVAILABILITY:
|
|
262
|
+
FOR each phase in topological order:
|
|
263
|
+
FOR each dependency of this phase:
|
|
264
|
+
IF dependency.status != "complete":
|
|
265
|
+
→ FLAG: "Phase {N} depends on Phase {M} which is not complete"
|
|
266
|
+
→ IF dependency is in current execution range: reorder
|
|
267
|
+
→ IF dependency is outside range: BLOCK with explanation
|
|
268
|
+
|
|
269
|
+
4. VALIDATE CONTRACTS:
|
|
270
|
+
FOR each phase boundary (N → N+1):
|
|
271
|
+
outputs_N = phase N's "provides" from BLUEPRINT frontmatter
|
|
272
|
+
inputs_N1 = phase N+1's "requires" from BLUEPRINT frontmatter
|
|
273
|
+
|
|
274
|
+
missing = inputs_N1 - outputs_N
|
|
275
|
+
IF missing:
|
|
276
|
+
→ FLAG: "Phase {N+1} requires {missing} but Phase {N} doesn't provide it"
|
|
277
|
+
→ This is a PLANNING gap — route back to planner
|
|
278
|
+
```
|
|
279
|
+
|
|
280
|
+
## 7. Shared-State Conflict Prevention (Gap #1)
|
|
281
|
+
|
|
282
|
+
> **Source:** turborepo Walker+Mutex, lazygit AsyncHandler ID ordering
|
|
283
|
+
> Pattern: Centralized truth with stale-result rejection
|
|
284
|
+
|
|
285
|
+
```
|
|
286
|
+
ENHANCED .shared-state.json WITH VERSION COUNTER:
|
|
287
|
+
|
|
288
|
+
{
|
|
289
|
+
"version": 42,
|
|
290
|
+
"last_writer": "backend-agent",
|
|
291
|
+
"last_write_at": "2026-03-08T10:35:00Z",
|
|
292
|
+
"agents": { ... }
|
|
293
|
+
}
|
|
294
|
+
|
|
295
|
+
WRITE PROTOCOL (compare-and-swap):
|
|
296
|
+
1. Read .shared-state.json → note version (e.g., 42)
|
|
297
|
+
2. Make changes in memory
|
|
298
|
+
3. Before writing: re-read file, check version still 42
|
|
299
|
+
IF version changed (another agent wrote):
|
|
300
|
+
→ MERGE: combine your changes with theirs
|
|
301
|
+
→ Write with version = max(yours, theirs) + 1
|
|
302
|
+
IF version same:
|
|
303
|
+
→ Write with version = 43
|
|
304
|
+
|
|
305
|
+
This prevents the "last writer wins" data loss problem.
|
|
306
|
+
|
|
307
|
+
STALE RESULT REJECTION (from lazygit AsyncHandler):
|
|
308
|
+
NOTE: Not yet wired into Dominion Flow commands — tracked for future implementation.
|
|
309
|
+
Pattern preserved here as reference for when multi-session coordination is added.
|
|
310
|
+
|
|
311
|
+
Each agent result has a monotonic request_id
|
|
312
|
+
Orchestrator tracks last_processed_id per agent
|
|
313
|
+
IF result.request_id < last_processed_id:
|
|
314
|
+
→ Reject (stale result from earlier execution)
|
|
315
|
+
→ "Ignoring stale result from {agent} (id {old} < {current})"
|
|
316
|
+
```
|
|
317
|
+
|
|
318
|
+
## 8. Agent Communication Protocol (Gap #10)
|
|
319
|
+
|
|
320
|
+
> **Source:** bun BundleThread+Waker, mise channel-based dispatch
|
|
321
|
+
> Pattern: Message-passing between agents via shared message queue
|
|
322
|
+
|
|
323
|
+
```
|
|
324
|
+
AGENT MESSAGE TYPES:
|
|
325
|
+
CLAIM: "I am taking ownership of task {id}"
|
|
326
|
+
COMPLETE: "Task {id} is done. Summary: {text}"
|
|
327
|
+
BLOCKED: "I cannot proceed. Reason: {text}. Need: {what}"
|
|
328
|
+
DISCOVERY: "Found something other agents should know: {text}"
|
|
329
|
+
CONFLICT: "I need to modify {file} but {other_agent} owns it"
|
|
330
|
+
HANDOFF: "Transferring task {id} to {target_agent}. Reason: {text}"
|
|
331
|
+
|
|
332
|
+
MESSAGE QUEUE (append-only file):
|
|
333
|
+
.planning/.agent-messages.jsonl
|
|
334
|
+
|
|
335
|
+
Each line is a JSON message:
|
|
336
|
+
{"type":"CLAIM","agent":"backend","task":"03-01-task-1","timestamp":"..."}
|
|
337
|
+
{"type":"DISCOVERY","agent":"backend","data":"API uses camelCase not snake_case","timestamp":"..."}
|
|
338
|
+
{"type":"COMPLETE","agent":"backend","task":"03-01-task-1","summary":"Added auth middleware","timestamp":"..."}
|
|
339
|
+
|
|
340
|
+
READING PROTOCOL:
|
|
341
|
+
- Agents read new messages since their last read (track line offset)
|
|
342
|
+
- DISCOVERY messages inform all agents' playbooks
|
|
343
|
+
- CONFLICT messages trigger orchestrator intervention
|
|
344
|
+
- BLOCKED messages may unblock when another agent COMPLETEs a dependency
|
|
345
|
+
|
|
346
|
+
WHY JSONL (not JSON):
|
|
347
|
+
- Append-only = no write conflicts (multiple agents can append simultaneously)
|
|
348
|
+
- Line-based = easy to read incrementally (tail -n +{offset})
|
|
349
|
+
- No parse failures from concurrent writes (each line is independent)
|
|
350
|
+
```
|
|
351
|
+
|
|
352
|
+
## When to Use
|
|
353
|
+
|
|
354
|
+
- Multi-task execution with 2+ parallel agents (SUBAGENT or SWARM mode)
|
|
355
|
+
- Any phase with 3+ tasks where error cascade is a risk
|
|
356
|
+
- Long-running autonomous sessions (fire-autonomous)
|
|
357
|
+
- Cross-phase validation before autonomous execution
|
|
358
|
+
|
|
359
|
+
## When NOT to Use
|
|
360
|
+
|
|
361
|
+
- Single-task phases (overhead exceeds benefit)
|
|
362
|
+
- SEQUENTIAL mode with no parallelism
|
|
363
|
+
- Simple bug fixes where only one agent is involved
|
|
364
|
+
|
|
365
|
+
## Must Do
|
|
366
|
+
|
|
367
|
+
- Classify errors by category BEFORE deciding intervention
|
|
368
|
+
- Bound delegation with semaphore (max 4 concurrent agents)
|
|
369
|
+
- Track task ownership in shared-state.json
|
|
370
|
+
- Return structured envelope from every agent
|
|
371
|
+
- Validate phase DAG before execution
|
|
372
|
+
- Use JSONL for agent messages (append-only, no conflicts)
|
|
373
|
+
|
|
374
|
+
## Must Not Do
|
|
375
|
+
|
|
376
|
+
- Do not let one agent's panic crash sibling agents
|
|
377
|
+
- Do not spawn unlimited sub-agents (semaphore enforces bounds)
|
|
378
|
+
- Do not retry ARCHITECTURE errors locally (escalate to planner)
|
|
379
|
+
- Do not transfer a task more than twice (toxic task → escalate)
|
|
380
|
+
- Do not ignore cumulative warnings (10+ warnings = systemic issue)
|
|
381
|
+
|
|
382
|
+
## Related Skills
|
|
383
|
+
|
|
384
|
+
- [ALAS_STATEFUL_EXECUTION](./ALAS_STATEFUL_EXECUTION.md) — checkpoint/restore for token-efficient mode
|
|
385
|
+
- [CIRCUIT_BREAKER_INTELLIGENCE](./CIRCUIT_BREAKER_INTELLIGENCE.md) — stuck-state classification feeds error routing
|
|
386
|
+
- [CONTEXT_ROTATION](./CONTEXT_ROTATION.md) — fresh-eyes pattern for FIXATION-type errors
|
|
387
|
+
|
|
388
|
+
## References
|
|
389
|
+
|
|
390
|
+
- turborepo: `crates/turborepo-engine/src/execute.rs` — semaphore bounding, Walker+Mutex
|
|
391
|
+
- mise: `src/task/task_scheduler.rs` — full scheduler with graph+channels+semaphore
|
|
392
|
+
- biome: `crates/biome_cli/src/runner/handler.rs` — catch_unwind isolation
|
|
393
|
+
- oxc: `crates/oxc_diagnostics/src/service.rs` — MPSC diagnostic service, max_warnings
|
|
394
|
+
- ruff: `crates/ruff/src/commands/check.rs` — parallel fold/reduce error accumulation
|
|
395
|
+
- uv: `crates/uv-resolver/src/pubgrub/priority.rs` — multi-priority conflict resolution
|
|
396
|
+
- lazygit: `pkg/tasks/async_handler.go` — stale result rejection via ID ordering
|
|
397
|
+
- bun: `src/bundler/BundleThread.zig` — dedicated worker with waker pattern
|
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: Observation Masking
|
|
3
|
+
category: methodology
|
|
4
|
+
version: 1.0.0
|
|
5
|
+
contributed: 2026-03-12
|
|
6
|
+
contributor: fire-research
|
|
7
|
+
last_updated: 2026-03-13
|
|
8
|
+
tags: [multi-agent, token-optimization, context-engineering, inter-agent-communication]
|
|
9
|
+
difficulty: easy
|
|
10
|
+
---
|
|
11
|
+
|
|
12
|
+
# Observation Masking — Strip Raw Output, Keep Action Summaries
|
|
13
|
+
|
|
14
|
+
> observation masking matches LLM summarization quality at 50% token cost.
|
|
15
|
+
> MacNet (ICLR 2025) confirms: propagate only refined artifacts, not full dialogue traces.
|
|
16
|
+
|
|
17
|
+
## Problem
|
|
18
|
+
|
|
19
|
+
When agents communicate task results to other agents or orchestrators, the naive approach sends everything: full command output, file contents read, error stack traces, intermediate reasoning. This bloats inter-agent messages, wastes context window tokens, and paradoxically does NOT improve downstream quality — LLMs summarize just as well from a 1-sentence summary as from 500 lines of raw output.
|
|
20
|
+
|
|
21
|
+
## Solution Pattern
|
|
22
|
+
|
|
23
|
+
Strip raw tool/environment output from all inter-agent messages. Keep only:
|
|
24
|
+
- **Action taken** (what you did)
|
|
25
|
+
- **Decision rationale** (why you chose this approach)
|
|
26
|
+
- **Result summary** (1 sentence: what happened)
|
|
27
|
+
- **Artifacts produced** (file paths, exports, interfaces created)
|
|
28
|
+
|
|
29
|
+
Exclude:
|
|
30
|
+
- Raw command output (build logs, test output, grep results)
|
|
31
|
+
- Full file contents read during execution
|
|
32
|
+
- Intermediate reasoning traces (keep only final decision)
|
|
33
|
+
- Error stack traces (summarize to 1 line)
|
|
34
|
+
|
|
35
|
+
## Code Example
|
|
36
|
+
|
|
37
|
+
```
|
|
38
|
+
// BAD — 500+ tokens for one task completion message
|
|
39
|
+
{
|
|
40
|
+
"type": "COMPLETE",
|
|
41
|
+
"summary": "Ran npm test and got:\n> jest --coverage\nPASS src/auth.test.ts\n Auth Module\n ✓ should validate JWT (23ms)\n ✓ should reject expired tokens (15ms)\n ✓ should refresh tokens (31ms)\n ✓ should handle malformed tokens (8ms)\n ✓ should validate scopes (12ms)\n...[250 more lines of test output]..."
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
// GOOD — 30 tokens, identical downstream quality
|
|
45
|
+
{
|
|
46
|
+
"type": "COMPLETE",
|
|
47
|
+
"summary": "Auth module passes all 12 tests (100% coverage). Exports: validateJWT, refreshToken."
|
|
48
|
+
}
|
|
49
|
+
```
|
|
50
|
+
|
|
51
|
+
## Implementation Steps
|
|
52
|
+
|
|
53
|
+
1. Identify all inter-agent communication points (JSONL messages, shared state, return envelopes)
|
|
54
|
+
2. At each point, apply the INCLUDE/EXCLUDE filter before writing
|
|
55
|
+
3. For error reporting: summarize stack traces to root cause + 1 line
|
|
56
|
+
4. For test results: report pass/fail count + coverage, not individual test output
|
|
57
|
+
5. For file reads: report what was learned, not what was read
|
|
58
|
+
|
|
59
|
+
## When to Use
|
|
60
|
+
|
|
61
|
+
- Any multi-agent system where agents exchange task results
|
|
62
|
+
- Long-running autonomous sessions where context accumulates
|
|
63
|
+
- Systems with token budgets or context window constraints
|
|
64
|
+
- Orchestrator-executor patterns where the orchestrator only needs status, not details
|
|
65
|
+
|
|
66
|
+
## When NOT to Use
|
|
67
|
+
|
|
68
|
+
- Debugging sessions where raw output is needed for diagnosis
|
|
69
|
+
- Single-agent workflows (no inter-agent communication)
|
|
70
|
+
- When the downstream consumer explicitly needs raw data (e.g., log aggregation)
|
|
71
|
+
|
|
72
|
+
## Must Do
|
|
73
|
+
|
|
74
|
+
- Apply masking at the WRITE point, not the READ point (sender strips, not receiver)
|
|
75
|
+
- Keep decision rationale — this is NOT raw output, it's high-signal context
|
|
76
|
+
- Include artifact paths so downstream agents can read files directly if needed
|
|
77
|
+
|
|
78
|
+
## Must Not Do
|
|
79
|
+
|
|
80
|
+
- Do not mask within a single agent's own working context (only for messages TO others)
|
|
81
|
+
- Do not strip error categories or severity — these are routing signals, not noise
|
|
82
|
+
- Do not summarize file paths — exact paths are needed for downstream agents to find files
|
|
83
|
+
|
|
84
|
+
## Measurable Impact
|
|
85
|
+
|
|
86
|
+
- **50% token reduction** in inter-agent communication (JetBrains NeurIPS DL4Code 2025)
|
|
87
|
+
- **Zero quality loss** — LLM summarization quality matches full observation quality
|
|
88
|
+
- **Faster orchestrator processing** — smaller messages = faster parsing
|
|
89
|
+
|
|
90
|
+
## Related Skills
|
|
91
|
+
|
|
92
|
+
- [MULTI_AGENT_COORDINATION](./MULTI_AGENT_COORDINATION.md) — parent coordination framework
|
|
93
|
+
- [CONTEXT_ROTATION](./CONTEXT_ROTATION.md) — fresh-eyes pattern for context-heavy sessions
|
|
94
|
+
- [DISTILL_NOT_DUMP](./DISTILL_NOT_DUMP.md) — same principle applied to handoffs
|
|
95
|
+
|
|
96
|
+
## References
|
|
97
|
+
|
|
98
|
+
- "The Complexity Trap" — NeurIPS DL4Code Workshop, JetBrains Research, Dec 2025
|
|
99
|
+
- MacNet (ICLR 2025) — Multi-agent cooperation through LLM-based node networks
|
|
100
|
+
- Wired into: `fire-executor.md` Step 1.7, `fire-3-execute.md` Step 5 filtered views
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: PHOENIX_REBUILD_METHODOLOGY
|
|
3
3
|
category: methodology
|
|
4
|
-
version: 1.
|
|
4
|
+
version: 1.1.0
|
|
5
5
|
contributed: 2026-03-06
|
|
6
6
|
contributor: dominion-flow
|
|
7
|
-
last_updated: 2026-03-
|
|
8
|
-
tags: [phoenix, rebuild, refactor, intent-extraction, vibe-code, technical-debt, reverse-engineering]
|
|
7
|
+
last_updated: 2026-03-10
|
|
8
|
+
tags: [phoenix, rebuild, refactor, intent-extraction, vibe-code, technical-debt, reverse-engineering, database, migration]
|
|
9
9
|
difficulty: hard
|
|
10
10
|
sources:
|
|
11
11
|
- "Fred Brooks — No Silver Bullet (1986) — Essential vs Accidental Complexity"
|
|
@@ -210,12 +210,77 @@ FOR each source code module:
|
|
|
210
210
|
|
|
211
211
|
---
|
|
212
212
|
|
|
213
|
-
## 6.
|
|
213
|
+
## 6. Database Intent Extraction
|
|
214
|
+
|
|
215
|
+
### Why Database Deserves Its Own Phase
|
|
216
|
+
|
|
217
|
+
Database is the ONE dependency that crosses every feature boundary. Getting it wrong means every subsequent rebuild phase works against a broken foundation. The source project's database reveals:
|
|
218
|
+
|
|
219
|
+
- **Domain concepts** the developer actually persisted (vs talked about)
|
|
220
|
+
- **Relationships** that encode business rules implicitly (foreign keys, junction tables)
|
|
221
|
+
- **Performance decisions** that became load-bearing (indexes, denormalization)
|
|
222
|
+
- **Technical debt** in schema form (nullable columns that shouldn't be, missing constraints)
|
|
223
|
+
|
|
224
|
+
### Database Intent Extraction Patterns
|
|
225
|
+
|
|
226
|
+
| Pattern | What to Look For | What It Reveals |
|
|
227
|
+
|---------|-----------------|-----------------|
|
|
228
|
+
| **Schema Drift** | Columns that exist but no code references them | Abandoned features, or features moved to JSON blobs |
|
|
229
|
+
| **Over-Normalization** | 6+ JOINs for common queries | Developer followed textbook rules without considering access patterns |
|
|
230
|
+
| **Under-Normalization** | Same data in multiple tables | Performance optimization or accidental duplication? Check git blame |
|
|
231
|
+
| **JSON Catch-All** | `settings JSONB`, `metadata JSON`, `extra TEXT` | Schema evolution pressure — developer needed new fields without migrations |
|
|
232
|
+
| **Missing Constraints** | No FK, no CHECK, nullable everything | Vibe-coded schema — validation only in app code (if at all) |
|
|
233
|
+
| **Implicit Business Rules** | `status ENUM('draft','review','published','archived')` | State machine encoded in column definition — essential complexity |
|
|
234
|
+
| **Surrogate vs Natural Keys** | UUID primary keys vs auto-increment vs composite | Architectural decision about distribution, portability, merge safety |
|
|
235
|
+
| **Soft Deletes** | `deleted_at TIMESTAMP NULL` pattern | Legal/audit requirement or developer anxiety? Check if anything queries deleted records |
|
|
236
|
+
| **Audit Trail** | `created_at`, `updated_at`, `created_by` columns | Compliance requirement — MUST carry to rebuild |
|
|
237
|
+
| **Migration History** | Knex/Prisma/Sequelize migration files | The narrative of how the schema evolved (similar to git commits for code) |
|
|
238
|
+
|
|
239
|
+
### Database Continuity Decision
|
|
240
|
+
|
|
241
|
+
During AUTOPSY, classify the source database into one of three strategies:
|
|
242
|
+
|
|
243
|
+
```
|
|
244
|
+
REUSE — Point new app at existing database. Zero data migration.
|
|
245
|
+
Best when: schema is clean, data is valuable, stack is same.
|
|
246
|
+
|
|
247
|
+
CLONE — Dump existing data, transform, load into new schema.
|
|
248
|
+
Best when: schema needs fixes but data must survive.
|
|
249
|
+
Tools: pg_dump/pg_restore, mysqldump, pgloader, custom ETL.
|
|
250
|
+
|
|
251
|
+
FRESH — New database, schema from INTENT.md, no data migration.
|
|
252
|
+
Best when: prototype with test data, or data is easily re-seeded.
|
|
253
|
+
```
|
|
254
|
+
|
|
255
|
+
### Database-Specific Anti-Patterns
|
|
256
|
+
|
|
257
|
+
| Anti-Pattern | Detection Signal | Rebuild Fix |
|
|
258
|
+
|-------------|-----------------|-------------|
|
|
259
|
+
| **Raw SQL Everywhere** | String concatenation with user input | Parameterized queries + ORM/query builder |
|
|
260
|
+
| **No Migrations** | Schema created by hand, no migration files | Migration framework (Knex, Prisma, etc.) |
|
|
261
|
+
| **Connection Per Request** | `new Pool()` inside route handlers | Shared connection pool, singleton pattern |
|
|
262
|
+
| **N+1 Queries** | Loop with individual SELECT per item | Eager loading, batch queries, DataLoader |
|
|
263
|
+
| **Schema in Code Only** | No CREATE TABLE, schema exists only in ORM models | Generate and version DDL migrations |
|
|
264
|
+
| **Mixed Dialects** | PG-specific SQL in "portable" app | Use compatibility layer or commit to single dialect |
|
|
265
|
+
|
|
266
|
+
### Cross-Database Migration Awareness
|
|
267
|
+
|
|
268
|
+
When the rebuild changes database engines (e.g., SQLite→PostgreSQL, MySQL→PostgreSQL), reference these skills for type mapping and syntax translation:
|
|
269
|
+
|
|
270
|
+
- `database-solutions/sql-dialect-compatibility-matrix` — Master translation rules
|
|
271
|
+
- `database-solutions/data-type-mapping-reference` — Complete type mapping table
|
|
272
|
+
- `database-solutions/mysql-to-pg-migration` — MySQL→PG specific guide
|
|
273
|
+
- `database-solutions/sqlite-to-pg-migration` — Prototype graduation path
|
|
274
|
+
- `database-solutions/orm-schema-portability` — ORM switching considerations
|
|
275
|
+
|
|
276
|
+
---
|
|
277
|
+
|
|
278
|
+
## 7. Rebuild Order Strategy
|
|
214
279
|
|
|
215
280
|
When rebuilding from INTENT.md, build in this order:
|
|
216
281
|
|
|
217
282
|
```
|
|
218
|
-
1. FOUNDATION — Project scaffold, config, types,
|
|
283
|
+
1. FOUNDATION — Project scaffold, config, types, DATABASE SCHEMA + MIGRATIONS
|
|
219
284
|
2. CORE — Highest-uniqueness features (CRITICAL and HIGH)
|
|
220
285
|
3. SUPPORT — Medium-uniqueness features
|
|
221
286
|
4. STANDARD — Low-uniqueness and boilerplate (often auto-generated)
|
|
@@ -225,11 +290,16 @@ When rebuilding from INTENT.md, build in this order:
|
|
|
225
290
|
8. DOCUMENTATION — README, API docs, deployment guide
|
|
226
291
|
```
|
|
227
292
|
|
|
293
|
+
**FOUNDATION includes database** because every subsequent phase depends on the schema being correct. CORE features can't be built without tables to write to. The database continuity strategy (REUSE/CLONE/FRESH) determines what FOUNDATION does:
|
|
294
|
+
- REUSE: validate existing schema matches INTENT.md expectations, add migration for any gaps
|
|
295
|
+
- CLONE: create schema from INTENT.md, run ETL to transform and load source data
|
|
296
|
+
- FRESH: create schema from INTENT.md, seed with test data if needed
|
|
297
|
+
|
|
228
298
|
**Rationale:** Build what is UNIQUE first. Boilerplate is easiest to add later and lowest risk. If context runs out, you want the unique business logic done, not the boilerplate. This is the opposite of how vibe coders build (scaffold first, unique logic last — which is why their unique logic is always the messiest part).
|
|
229
299
|
|
|
230
300
|
---
|
|
231
301
|
|
|
232
|
-
##
|
|
302
|
+
## 8. Feature Uniqueness Classification
|
|
233
303
|
|
|
234
304
|
| Score | Definition | Rebuild Strategy |
|
|
235
305
|
|-------|-----------|-----------------|
|
|
@@ -243,9 +313,10 @@ When rebuilding from INTENT.md, build in this order:
|
|
|
243
313
|
|
|
244
314
|
## When Agents Should Reference This Skill
|
|
245
315
|
|
|
246
|
-
- **fire-
|
|
247
|
-
- **fire-
|
|
248
|
-
- **fire-planner:** When planning rebuild phases, use uniqueness scores to prioritize task order
|
|
249
|
-
- **fire-executor:** When rebuilding modules, check anti-pattern map to avoid reintroducing accidental complexity
|
|
250
|
-
- **fire-verifier:** When verifying rebuild, check that accidental complexity items are absent
|
|
316
|
+
- **fire-resurrection-analyst:** Primary reference — use reading order, intent extraction patterns, squint test, uniqueness classification, database intent extraction (Section 6)
|
|
317
|
+
- **fire-resurrect (command):** Reference rebuild order strategy when creating phase breakdown from INTENT.md. Database continuity (Phase 2) uses Section 6 for strategy selection.
|
|
318
|
+
- **fire-planner:** When planning rebuild phases, use uniqueness scores to prioritize task order. FOUNDATION phase must include database schema setup.
|
|
319
|
+
- **fire-executor:** When rebuilding modules, check anti-pattern map (including database anti-patterns) to avoid reintroducing accidental complexity
|
|
320
|
+
- **fire-verifier:** When verifying rebuild, check that accidental complexity items are absent, edge cases are preserved, and PX-6 database continuity is validated
|
|
251
321
|
- **fire-researcher:** When researching alternatives for a stuck rebuild, check intent graph for original intent
|
|
322
|
+
- **fire-codebase-mapper (Agent 5):** During AUTOPSY, uses Section 6 database patterns to identify schema drift, missing constraints, and migration history
|