aios-core 2.1.6 → 2.2.0
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/.aios-core/core/README.md +229 -229
- package/.aios-core/core/data/agent-config-requirements.yaml +368 -368
- package/.aios-core/core/data/aios-kb.md +923 -923
- package/.aios-core/core/data/workflow-patterns.yaml +267 -267
- package/.aios-core/core/docs/SHARD-TRANSLATION-GUIDE.md +335 -335
- package/.aios-core/core/docs/component-creation-guide.md +457 -457
- package/.aios-core/core/docs/session-update-pattern.md +307 -307
- package/.aios-core/core/docs/template-syntax.md +266 -266
- package/.aios-core/core/docs/troubleshooting-guide.md +624 -624
- package/.aios-core/core/elicitation/elicitation-engine.js +1 -1
- package/.aios-core/core/index.esm.js +42 -42
- package/.aios-core/core/index.js +1 -1
- package/.aios-core/core/migration/migration-config.yaml +83 -83
- package/.aios-core/core/migration/module-mapping.yaml +89 -89
- package/.aios-core/core/quality-gates/layer2-pr-automation.js +1 -1
- package/.aios-core/core/quality-gates/quality-gate-config.yaml +86 -86
- package/.aios-core/core/registry/README.md +179 -179
- package/.aios-core/core/utils/security-utils.js +1 -1
- package/.aios-core/core-config.yaml +391 -382
- package/.aios-core/data/agent-config-requirements.yaml +368 -368
- package/.aios-core/data/aios-kb.md +923 -923
- package/.aios-core/data/technical-preferences.md +3 -3
- package/.aios-core/data/workflow-patterns.yaml +267 -267
- package/.aios-core/development/README.md +142 -142
- package/.aios-core/development/agent-teams/team-all.yaml +15 -15
- package/.aios-core/development/agent-teams/team-fullstack.yaml +18 -18
- package/.aios-core/development/agent-teams/team-ide-minimal.yaml +10 -10
- package/.aios-core/development/agent-teams/team-no-ui.yaml +13 -13
- package/.aios-core/development/agent-teams/team-qa-focused.yaml +155 -155
- package/.aios-core/development/agents/aios-master.md +339 -339
- package/.aios-core/development/agents/analyst.md +195 -195
- package/.aios-core/development/agents/architect.md +359 -359
- package/.aios-core/development/agents/data-engineer.md +468 -468
- package/.aios-core/development/agents/dev.md +390 -390
- package/.aios-core/development/agents/devops.md +398 -398
- package/.aios-core/development/agents/pm.md +198 -198
- package/.aios-core/development/agents/po.md +256 -256
- package/.aios-core/development/agents/qa.md +312 -312
- package/.aios-core/development/agents/sm.md +220 -220
- package/.aios-core/development/agents/ux-design-expert.md +451 -451
- package/.aios-core/development/scripts/greeting-config-cli.js +85 -85
- package/.aios-core/development/tasks/add-mcp.md +319 -319
- package/.aios-core/development/tasks/advanced-elicitation.md +318 -318
- package/.aios-core/development/tasks/analyst-facilitate-brainstorming.md +341 -341
- package/.aios-core/development/tasks/analyze-framework.md +696 -696
- package/.aios-core/development/tasks/analyze-performance.md +637 -637
- package/.aios-core/development/tasks/apply-qa-fixes.md +340 -340
- package/.aios-core/development/tasks/architect-analyze-impact.md +826 -826
- package/.aios-core/development/tasks/audit-codebase.md +429 -429
- package/.aios-core/development/tasks/audit-tailwind-config.md +270 -270
- package/.aios-core/development/tasks/audit-utilities.md +358 -358
- package/.aios-core/development/tasks/bootstrap-shadcn-library.md +286 -286
- package/.aios-core/development/tasks/brownfield-create-epic.md +485 -485
- package/.aios-core/development/tasks/brownfield-create-story.md +356 -356
- package/.aios-core/development/tasks/build-component.md +478 -478
- package/.aios-core/development/tasks/calculate-roi.md +455 -455
- package/.aios-core/development/tasks/ci-cd-configuration.md +764 -764
- package/.aios-core/development/tasks/cleanup-utilities.md +670 -670
- package/.aios-core/development/tasks/collaborative-edit.md +1108 -1108
- package/.aios-core/development/tasks/compose-molecule.md +284 -284
- package/.aios-core/development/tasks/consolidate-patterns.md +414 -414
- package/.aios-core/development/tasks/correct-course.md +279 -279
- package/.aios-core/development/tasks/create-agent.md +321 -321
- package/.aios-core/development/tasks/create-brownfield-story.md +726 -726
- package/.aios-core/development/tasks/create-deep-research-prompt.md +498 -498
- package/.aios-core/development/tasks/create-doc.md +316 -316
- package/.aios-core/development/tasks/create-next-story.md +774 -774
- package/.aios-core/development/tasks/create-suite.md +283 -283
- package/.aios-core/development/tasks/create-task.md +371 -371
- package/.aios-core/development/tasks/create-workflow.md +370 -370
- package/.aios-core/development/tasks/db-analyze-hotpaths.md +572 -572
- package/.aios-core/development/tasks/db-apply-migration.md +381 -381
- package/.aios-core/development/tasks/db-bootstrap.md +642 -642
- package/.aios-core/development/tasks/db-domain-modeling.md +693 -693
- package/.aios-core/development/tasks/db-dry-run.md +293 -293
- package/.aios-core/development/tasks/db-env-check.md +260 -260
- package/.aios-core/development/tasks/db-expansion-pack-integration.md +663 -663
- package/.aios-core/development/tasks/db-explain.md +631 -631
- package/.aios-core/development/tasks/db-impersonate.md +495 -495
- package/.aios-core/development/tasks/db-load-csv.md +593 -593
- package/.aios-core/development/tasks/db-policy-apply.md +653 -653
- package/.aios-core/development/tasks/db-rls-audit.md +411 -411
- package/.aios-core/development/tasks/db-rollback.md +739 -739
- package/.aios-core/development/tasks/db-run-sql.md +613 -613
- package/.aios-core/development/tasks/db-schema-audit.md +1011 -1011
- package/.aios-core/development/tasks/db-seed.md +390 -390
- package/.aios-core/development/tasks/db-smoke-test.md +351 -351
- package/.aios-core/development/tasks/db-snapshot.md +569 -569
- package/.aios-core/development/tasks/db-supabase-setup.md +712 -712
- package/.aios-core/development/tasks/db-verify-order.md +515 -515
- package/.aios-core/development/tasks/deprecate-component.md +956 -956
- package/.aios-core/development/tasks/dev-apply-qa-fixes.md +318 -318
- package/.aios-core/development/tasks/dev-backlog-debt.md +469 -469
- package/.aios-core/development/tasks/dev-develop-story.md +846 -846
- package/.aios-core/development/tasks/dev-improve-code-quality.md +872 -872
- package/.aios-core/development/tasks/dev-optimize-performance.md +1033 -1033
- package/.aios-core/development/tasks/dev-suggest-refactoring.md +870 -870
- package/.aios-core/development/tasks/dev-validate-next-story.md +348 -348
- package/.aios-core/development/tasks/document-project.md +552 -552
- package/.aios-core/development/tasks/environment-bootstrap.md +1311 -1311
- package/.aios-core/development/tasks/execute-checklist.md +301 -301
- package/.aios-core/development/tasks/export-design-tokens-dtcg.md +274 -274
- package/.aios-core/development/tasks/extend-pattern.md +269 -269
- package/.aios-core/development/tasks/extract-tokens.md +467 -467
- package/.aios-core/development/tasks/facilitate-brainstorming-session.md +518 -518
- package/.aios-core/development/tasks/generate-ai-frontend-prompt.md +260 -260
- package/.aios-core/development/tasks/generate-documentation.md +284 -284
- package/.aios-core/development/tasks/generate-migration-strategy.md +522 -522
- package/.aios-core/development/tasks/generate-shock-report.md +501 -501
- package/.aios-core/development/tasks/github-devops-github-pr-automation.md +427 -427
- package/.aios-core/development/tasks/github-devops-pre-push-quality-gate.md +733 -733
- package/.aios-core/development/tasks/github-devops-repository-cleanup.md +374 -374
- package/.aios-core/development/tasks/github-devops-version-management.md +483 -483
- package/.aios-core/development/tasks/improve-self.md +822 -822
- package/.aios-core/development/tasks/index-docs.md +387 -387
- package/.aios-core/development/tasks/init-project-status.md +506 -506
- package/.aios-core/development/tasks/integrate-expansion-pack.md +314 -314
- package/.aios-core/development/tasks/kb-mode-interaction.md +283 -283
- package/.aios-core/development/tasks/learn-patterns.md +900 -900
- package/.aios-core/development/tasks/mcp-workflow.md +437 -437
- package/.aios-core/development/tasks/modify-agent.md +381 -381
- package/.aios-core/development/tasks/modify-task.md +424 -424
- package/.aios-core/development/tasks/modify-workflow.md +465 -465
- package/.aios-core/development/tasks/po-backlog-add.md +370 -370
- package/.aios-core/development/tasks/po-manage-story-backlog.md +523 -523
- package/.aios-core/development/tasks/po-pull-story-from-clickup.md +540 -540
- package/.aios-core/development/tasks/po-pull-story.md +316 -316
- package/.aios-core/development/tasks/po-stories-index.md +351 -351
- package/.aios-core/development/tasks/po-sync-story-to-clickup.md +457 -457
- package/.aios-core/development/tasks/po-sync-story.md +303 -303
- package/.aios-core/development/tasks/pr-automation.md +701 -701
- package/.aios-core/development/tasks/propose-modification.md +842 -842
- package/.aios-core/development/tasks/qa-backlog-add-followup.md +425 -425
- package/.aios-core/development/tasks/qa-gate.md +373 -373
- package/.aios-core/development/tasks/qa-generate-tests.md +1174 -1174
- package/.aios-core/development/tasks/qa-nfr-assess.md +557 -557
- package/.aios-core/development/tasks/qa-review-proposal.md +1157 -1157
- package/.aios-core/development/tasks/qa-review-story.md +682 -682
- package/.aios-core/development/tasks/qa-risk-profile.md +566 -566
- package/.aios-core/development/tasks/qa-run-tests.md +277 -277
- package/.aios-core/development/tasks/qa-test-design.md +387 -387
- package/.aios-core/development/tasks/qa-trace-requirements.md +476 -476
- package/.aios-core/development/tasks/release-management.md +723 -723
- package/.aios-core/development/tasks/security-audit.md +554 -554
- package/.aios-core/development/tasks/security-scan.md +790 -790
- package/.aios-core/development/tasks/setup-database.md +741 -741
- package/.aios-core/development/tasks/setup-design-system.md +462 -462
- package/.aios-core/development/tasks/setup-github.md +874 -874
- package/.aios-core/development/tasks/setup-llm-routing.md +1 -1
- package/.aios-core/development/tasks/setup-mcp-docker.md +584 -584
- package/.aios-core/development/tasks/setup-project-docs.md +1 -1
- package/.aios-core/development/tasks/shard-doc.md +537 -537
- package/.aios-core/development/tasks/sm-create-next-story.md +480 -480
- package/.aios-core/development/tasks/sync-documentation.md +864 -864
- package/.aios-core/development/tasks/tailwind-upgrade.md +294 -294
- package/.aios-core/development/tasks/test-as-user.md +621 -621
- package/.aios-core/development/tasks/test-validation-task.md +171 -171
- package/.aios-core/development/tasks/undo-last.md +346 -346
- package/.aios-core/development/tasks/update-manifest.md +409 -409
- package/.aios-core/development/tasks/ux-create-wireframe.md +617 -617
- package/.aios-core/development/tasks/ux-ds-scan-artifact.md +672 -672
- package/.aios-core/development/tasks/ux-user-research.md +559 -559
- package/.aios-core/development/tasks/validate-next-story.md +422 -422
- package/.aios-core/development/workflows/README.md +83 -83
- package/.aios-core/development/workflows/brownfield-fullstack.yaml +297 -297
- package/.aios-core/development/workflows/brownfield-service.yaml +187 -187
- package/.aios-core/development/workflows/brownfield-ui.yaml +197 -197
- package/.aios-core/development/workflows/greenfield-fullstack.yaml +333 -333
- package/.aios-core/development/workflows/greenfield-service.yaml +206 -206
- package/.aios-core/development/workflows/greenfield-ui.yaml +235 -235
- package/.aios-core/docs/SHARD-TRANSLATION-GUIDE.md +335 -335
- package/.aios-core/docs/component-creation-guide.md +457 -457
- package/.aios-core/docs/session-update-pattern.md +307 -307
- package/.aios-core/docs/standards/AGENT-PERSONALIZATION-STANDARD-V1.md +572 -572
- package/.aios-core/docs/standards/AIOS-COLOR-PALETTE-QUICK-REFERENCE.md +185 -185
- package/.aios-core/docs/standards/AIOS-COLOR-PALETTE-V2.1.md +354 -354
- package/.aios-core/docs/standards/AIOS-FRAMEWORK-MASTER.md +1963 -1963
- package/.aios-core/docs/standards/AIOS-LIVRO-DE-OURO-V2.1-COMPLETE.md +821 -821
- package/.aios-core/docs/standards/AIOS-LIVRO-DE-OURO-V2.1-SUMMARY.md +1190 -1190
- package/.aios-core/docs/standards/AIOS-LIVRO-DE-OURO-V2.1.md +439 -439
- package/.aios-core/docs/standards/AIOS-LIVRO-DE-OURO-V2.2-SUMMARY.md +1339 -1339
- package/.aios-core/docs/standards/AIOS-LIVRO-DE-OURO.md +5398 -5398
- package/.aios-core/docs/standards/EXECUTOR-DECISION-TREE.md +697 -697
- package/.aios-core/docs/standards/OPEN-SOURCE-VS-SERVICE-DIFFERENCES.md +511 -511
- package/.aios-core/docs/standards/QUALITY-GATES-SPECIFICATION.md +556 -556
- package/.aios-core/docs/standards/STANDARDS-INDEX.md +210 -210
- package/.aios-core/docs/standards/STORY-TEMPLATE-V2-SPECIFICATION.md +550 -550
- package/.aios-core/docs/standards/TASK-FORMAT-SPECIFICATION-V1.md +1414 -1414
- package/.aios-core/docs/standards/V3-ARCHITECTURAL-DECISIONS.md +523 -523
- package/.aios-core/docs/template-syntax.md +266 -266
- package/.aios-core/docs/troubleshooting-guide.md +624 -624
- package/.aios-core/index.esm.js +15 -15
- package/.aios-core/index.js +1 -1
- package/.aios-core/infrastructure/README.md +126 -126
- package/.aios-core/infrastructure/integrations/pm-adapters/README.md +59 -59
- package/.aios-core/infrastructure/scripts/approval-workflow.js +1 -1
- package/.aios-core/infrastructure/scripts/batch-creator.js +1 -1
- package/.aios-core/infrastructure/scripts/component-generator.js +3 -3
- package/.aios-core/infrastructure/scripts/component-metadata.js +1 -1
- package/.aios-core/infrastructure/scripts/component-search.js +1 -1
- package/.aios-core/infrastructure/scripts/coverage-analyzer.js +1 -1
- package/.aios-core/infrastructure/scripts/dependency-analyzer.js +1 -1
- package/.aios-core/infrastructure/scripts/dependency-impact-analyzer.js +1 -1
- package/.aios-core/infrastructure/scripts/framework-analyzer.js +1 -1
- package/.aios-core/infrastructure/scripts/improvement-engine.js +1 -1
- package/.aios-core/infrastructure/scripts/llm-routing/install-llm-routing.js +26 -13
- package/.aios-core/infrastructure/scripts/llm-routing/templates/claude-free-tracked.cmd +127 -0
- package/.aios-core/infrastructure/scripts/llm-routing/templates/claude-free-tracked.sh +108 -0
- package/.aios-core/infrastructure/scripts/llm-routing/templates/deepseek-proxy.cmd +71 -0
- package/.aios-core/infrastructure/scripts/llm-routing/templates/deepseek-proxy.sh +65 -0
- package/.aios-core/infrastructure/scripts/llm-routing/templates/deepseek-usage.cmd +51 -0
- package/.aios-core/infrastructure/scripts/llm-routing/templates/deepseek-usage.sh +16 -0
- package/.aios-core/infrastructure/scripts/llm-routing/usage-tracker/index.js +549 -0
- package/.aios-core/infrastructure/scripts/modification-risk-assessment.js +1 -1
- package/.aios-core/infrastructure/scripts/performance-analyzer.js +1 -1
- package/.aios-core/infrastructure/scripts/pm-adapter.js +134 -134
- package/.aios-core/infrastructure/scripts/repository-detector.js +3 -3
- package/.aios-core/infrastructure/scripts/template-engine.js +1 -1
- package/.aios-core/infrastructure/scripts/template-validator.js +1 -1
- package/.aios-core/infrastructure/scripts/test-generator.js +1 -1
- package/.aios-core/infrastructure/scripts/test-quality-assessment.js +1 -1
- package/.aios-core/infrastructure/scripts/transaction-manager.js +1 -1
- package/.aios-core/infrastructure/scripts/usage-analytics.js +1 -1
- package/.aios-core/infrastructure/scripts/visual-impact-generator.js +2 -2
- package/.aios-core/infrastructure/templates/github-workflows/README.md +109 -109
- package/.aios-core/infrastructure/tests/regression-suite-v2.md +621 -621
- package/.aios-core/infrastructure/tools/README.md +222 -222
- package/.aios-core/infrastructure/tools/cli/github-cli.yaml +200 -200
- package/.aios-core/infrastructure/tools/cli/railway-cli.yaml +260 -260
- package/.aios-core/infrastructure/tools/cli/supabase-cli.yaml +224 -224
- package/.aios-core/infrastructure/tools/local/ffmpeg.yaml +261 -261
- package/.aios-core/infrastructure/tools/mcp/21st-dev-magic.yaml +127 -127
- package/.aios-core/infrastructure/tools/mcp/browser.yaml +103 -103
- package/.aios-core/infrastructure/tools/mcp/clickup.yaml +534 -534
- package/.aios-core/infrastructure/tools/mcp/context7.yaml +78 -78
- package/.aios-core/infrastructure/tools/mcp/desktop-commander.yaml +180 -180
- package/.aios-core/infrastructure/tools/mcp/exa.yaml +103 -103
- package/.aios-core/infrastructure/tools/mcp/google-workspace.yaml +930 -930
- package/.aios-core/infrastructure/tools/mcp/n8n.yaml +551 -551
- package/.aios-core/infrastructure/tools/mcp/supabase.yaml +808 -808
- package/.aios-core/install-manifest.yaml +347 -347
- package/.aios-core/product/README.md +56 -56
- package/.aios-core/product/checklists/accessibility-wcag-checklist.md +80 -0
- package/.aios-core/product/checklists/architect-checklist.md +443 -443
- package/.aios-core/product/checklists/change-checklist.md +182 -182
- package/.aios-core/product/checklists/component-quality-checklist.md +74 -0
- package/.aios-core/product/checklists/database-design-checklist.md +119 -119
- package/.aios-core/product/checklists/dba-predeploy-checklist.md +97 -97
- package/.aios-core/product/checklists/dba-rollback-checklist.md +99 -99
- package/.aios-core/product/checklists/migration-readiness-checklist.md +75 -0
- package/.aios-core/product/checklists/pattern-audit-checklist.md +88 -0
- package/.aios-core/product/checklists/pm-checklist.md +375 -375
- package/.aios-core/product/checklists/po-master-checklist.md +441 -441
- package/.aios-core/product/checklists/pre-push-checklist.md +108 -108
- package/.aios-core/product/checklists/release-checklist.md +122 -122
- package/.aios-core/product/checklists/story-dod-checklist.md +101 -101
- package/.aios-core/product/checklists/story-draft-checklist.md +215 -215
- package/.aios-core/product/data/atomic-design-principles.md +108 -0
- package/.aios-core/product/data/brainstorming-techniques.md +36 -36
- package/.aios-core/product/data/consolidation-algorithms.md +142 -0
- package/.aios-core/product/data/database-best-practices.md +182 -0
- package/.aios-core/product/data/design-token-best-practices.md +107 -0
- package/.aios-core/product/data/elicitation-methods.md +134 -134
- package/.aios-core/product/data/integration-patterns.md +207 -0
- package/.aios-core/product/data/migration-safety-guide.md +329 -0
- package/.aios-core/product/data/mode-selection-best-practices.md +471 -471
- package/.aios-core/product/data/postgres-tuning-guide.md +300 -0
- package/.aios-core/product/data/rls-security-patterns.md +333 -0
- package/.aios-core/product/data/roi-calculation-guide.md +142 -0
- package/.aios-core/product/data/supabase-patterns.md +330 -0
- package/.aios-core/product/data/test-levels-framework.md +148 -148
- package/.aios-core/product/data/test-priorities-matrix.md +174 -174
- package/.aios-core/product/data/wcag-compliance-guide.md +267 -0
- package/.aios-core/product/templates/1mcp-config.yaml +225 -225
- package/.aios-core/product/templates/activation-instructions-inline-greeting.yaml +63 -63
- package/.aios-core/product/templates/activation-instructions-template.md +258 -258
- package/.aios-core/product/templates/agent-template.yaml +120 -120
- package/.aios-core/product/templates/architecture-tmpl.yaml +650 -650
- package/.aios-core/product/templates/brainstorming-output-tmpl.yaml +155 -155
- package/.aios-core/product/templates/brownfield-architecture-tmpl.yaml +475 -475
- package/.aios-core/product/templates/brownfield-prd-tmpl.yaml +279 -279
- package/.aios-core/product/templates/changelog-template.md +134 -134
- package/.aios-core/product/templates/command-rationalization-matrix.md +152 -152
- package/.aios-core/product/templates/competitor-analysis-tmpl.yaml +292 -292
- package/.aios-core/product/templates/design-story-tmpl.yaml +587 -587
- package/.aios-core/product/templates/ds-artifact-analysis.md +70 -70
- package/.aios-core/product/templates/front-end-architecture-tmpl.yaml +205 -205
- package/.aios-core/product/templates/front-end-spec-tmpl.yaml +348 -348
- package/.aios-core/product/templates/fullstack-architecture-tmpl.yaml +804 -804
- package/.aios-core/product/templates/github-pr-template.md +67 -67
- package/.aios-core/product/templates/gordon-mcp.yaml +140 -140
- package/.aios-core/product/templates/ide-rules/antigravity-rules.md +115 -115
- package/.aios-core/product/templates/ide-rules/claude-rules.md +221 -221
- package/.aios-core/product/templates/ide-rules/cline-rules.md +84 -84
- package/.aios-core/product/templates/ide-rules/copilot-rules.md +92 -92
- package/.aios-core/product/templates/ide-rules/cursor-rules.md +115 -115
- package/.aios-core/product/templates/ide-rules/gemini-rules.md +85 -85
- package/.aios-core/product/templates/ide-rules/roo-rules.md +86 -86
- package/.aios-core/product/templates/ide-rules/trae-rules.md +104 -104
- package/.aios-core/product/templates/ide-rules/windsurf-rules.md +80 -80
- package/.aios-core/product/templates/index-strategy-tmpl.yaml +53 -53
- package/.aios-core/product/templates/market-research-tmpl.yaml +251 -251
- package/.aios-core/product/templates/mcp-workflow.js +271 -271
- package/.aios-core/product/templates/migration-plan-tmpl.yaml +1022 -1022
- package/.aios-core/product/templates/migration-strategy-tmpl.md +524 -524
- package/.aios-core/product/templates/personalized-agent-template.md +258 -258
- package/.aios-core/product/templates/personalized-checklist-template.md +340 -340
- package/.aios-core/product/templates/personalized-task-template-v2.md +905 -905
- package/.aios-core/product/templates/personalized-task-template.md +344 -344
- package/.aios-core/product/templates/personalized-template-file.yaml +322 -322
- package/.aios-core/product/templates/personalized-workflow-template.yaml +460 -460
- package/.aios-core/product/templates/prd-tmpl.yaml +201 -201
- package/.aios-core/product/templates/project-brief-tmpl.yaml +220 -220
- package/.aios-core/product/templates/qa-gate-tmpl.yaml +240 -240
- package/.aios-core/product/templates/rls-policies-tmpl.yaml +1203 -1203
- package/.aios-core/product/templates/schema-design-tmpl.yaml +428 -428
- package/.aios-core/product/templates/state-persistence-tmpl.yaml +219 -219
- package/.aios-core/product/templates/story-tmpl.yaml +331 -331
- package/.aios-core/product/templates/task-execution-report.md +495 -495
- package/.aios-core/product/templates/task-template.md +122 -122
- package/.aios-core/product/templates/token-exports-tailwind-tmpl.js +395 -395
- package/.aios-core/product/templates/tokens-schema-tmpl.yaml +305 -305
- package/.aios-core/product/templates/workflow-template.yaml +133 -133
- package/.aios-core/scripts/README.md +354 -354
- package/.aios-core/scripts/aios-doc-template.md +325 -325
- package/.aios-core/scripts/elicitation-engine.js +1 -1
- package/.aios-core/scripts/test-template-system.js +1 -1
- package/.aios-core/scripts/workflow-management.md +69 -69
- package/.aios-core/user-guide.md +1413 -1413
- package/.aios-core/working-in-the-brownfield.md +361 -361
- package/LICENSE +1 -1
- package/README.md +702 -703
- package/bin/aios-init-old.js +3 -3
- package/bin/aios-init-v4.js +1 -1
- package/bin/aios-init.backup-v1.1.4.js +1 -1
- package/bin/aios-init.js +3 -3
- package/bin/aios.js +279 -279
- package/bin/utils/install-errors.js +339 -339
- package/bin/utils/install-transaction.js +445 -445
- package/index.d.ts +18 -18
- package/index.esm.js +20 -20
- package/index.js +6 -6
- package/package.json +8 -10
- package/packages/installer/src/config/templates/env-template.js +27 -4
- package/packages/installer/src/detection/detect-project-type.js +81 -81
- package/packages/installer/tests/integration/wizard-detection.test.js +8 -6
- package/packages/installer/tests/unit/env-template.test.js +8 -8
- package/src/config/ide-configs.js +1 -1
- package/src/wizard/feedback.js +2 -2
- package/src/wizard/index.js +1 -1
- package/src/wizard/validation/report-generator.js +1 -1
- package/src/wizard/validation/troubleshooting-system.js +13 -13
- package/.aios-core/infrastructure/scripts/_archived/final-todo-count.js +0 -122
- package/.aios-core/infrastructure/scripts/_archived/fix-yaml-formatting.js +0 -89
- package/.aios-core/infrastructure/scripts/_archived/migration-generator.js +0 -780
- package/.aios-core/infrastructure/scripts/_archived/migration-path-generator.js +0 -950
- package/.aios-core/infrastructure/scripts/_archived/phase2-entrada-saida-errors.js +0 -425
- package/.aios-core/infrastructure/scripts/_archived/phase2-spot-check.js +0 -132
- package/.aios-core/infrastructure/scripts/_archived/phase3-tools-scripts-validation.js +0 -381
- package/.aios-core/infrastructure/scripts/_archived/phase4-metadata-performance.js +0 -203
- package/.aios-core/infrastructure/scripts/_archived/test-yaml-parsing.js +0 -24
- package/.aios-core/infrastructure/scripts/_archived/verify-yaml-fix.js +0 -51
- package/.aios-core/tasks/find-component.md.legacy +0 -391
- package/.aios-core/tasks/generate-commit-message.md.legacy +0 -426
- package/.aios-core/tasks/generate-migration.md.legacy +0 -382
- package/.aios-core/tasks/rollback-modification.md.legacy +0 -307
- package/.aios-core/tasks/update-tests.md.legacy +0 -283
|
@@ -1,374 +1,374 @@
|
|
|
1
|
-
# repository-cleanup.md
|
|
2
|
-
|
|
3
|
-
**Task**: Repository Cleanup (Repository-Agnostic)
|
|
4
|
-
|
|
5
|
-
**Purpose**: Identify and remove stale branches and temporary files from ANY repository.
|
|
6
|
-
|
|
7
|
-
**When to use**: Periodic maintenance via `@github-devops *cleanup` command.
|
|
8
|
-
|
|
9
|
-
## Execution Modes
|
|
10
|
-
|
|
11
|
-
**Choose your execution mode:**
|
|
12
|
-
|
|
13
|
-
### 1. YOLO Mode - Fast, Autonomous (0-1 prompts)
|
|
14
|
-
- Autonomous decision making with logging
|
|
15
|
-
- Minimal user interaction
|
|
16
|
-
- **Best for:** Simple, deterministic tasks
|
|
17
|
-
|
|
18
|
-
### 2. Interactive Mode - Balanced, Educational (5-10 prompts) **[DEFAULT]**
|
|
19
|
-
- Explicit decision checkpoints
|
|
20
|
-
- Educational explanations
|
|
21
|
-
- **Best for:** Learning, complex decisions
|
|
22
|
-
|
|
23
|
-
### 3. Pre-Flight Planning - Comprehensive Upfront Planning
|
|
24
|
-
- Task analysis phase (identify all ambiguities)
|
|
25
|
-
- Zero ambiguity execution
|
|
26
|
-
- **Best for:** Ambiguous requirements, critical work
|
|
27
|
-
|
|
28
|
-
**Parameter:** `mode` (optional, default: `interactive`)
|
|
29
|
-
|
|
30
|
-
---
|
|
31
|
-
|
|
32
|
-
## Task Definition (AIOS Task Format V1.0)
|
|
33
|
-
|
|
34
|
-
```yaml
|
|
35
|
-
task: githubDevopsRepositoryCleanup()
|
|
36
|
-
responsável: Gage (Automator)
|
|
37
|
-
responsavel_type: Agente
|
|
38
|
-
atomic_layer: Organism
|
|
39
|
-
|
|
40
|
-
**Entrada:**
|
|
41
|
-
- campo: task
|
|
42
|
-
tipo: string
|
|
43
|
-
origem: User Input
|
|
44
|
-
obrigatório: true
|
|
45
|
-
validação: Must be registered task
|
|
46
|
-
|
|
47
|
-
- campo: parameters
|
|
48
|
-
tipo: object
|
|
49
|
-
origem: User Input
|
|
50
|
-
obrigatório: false
|
|
51
|
-
validação: Valid task parameters
|
|
52
|
-
|
|
53
|
-
- campo: mode
|
|
54
|
-
tipo: string
|
|
55
|
-
origem: User Input
|
|
56
|
-
obrigatório: false
|
|
57
|
-
validação: yolo|interactive|pre-flight
|
|
58
|
-
|
|
59
|
-
**Saída:**
|
|
60
|
-
- campo: execution_result
|
|
61
|
-
tipo: object
|
|
62
|
-
destino: Memory
|
|
63
|
-
persistido: false
|
|
64
|
-
|
|
65
|
-
- campo: logs
|
|
66
|
-
tipo: array
|
|
67
|
-
destino: File (.ai/logs/*)
|
|
68
|
-
persistido: true
|
|
69
|
-
|
|
70
|
-
- campo: state
|
|
71
|
-
tipo: object
|
|
72
|
-
destino: State management
|
|
73
|
-
persistido: true
|
|
74
|
-
```
|
|
75
|
-
|
|
76
|
-
---
|
|
77
|
-
|
|
78
|
-
## Pre-Conditions
|
|
79
|
-
|
|
80
|
-
**Purpose:** Validate prerequisites BEFORE task execution (blocking)
|
|
81
|
-
|
|
82
|
-
**Checklist:**
|
|
83
|
-
|
|
84
|
-
```yaml
|
|
85
|
-
pre-conditions:
|
|
86
|
-
- [ ] Task is registered; required parameters provided; dependencies met
|
|
87
|
-
tipo: pre-condition
|
|
88
|
-
blocker: true
|
|
89
|
-
validação: |
|
|
90
|
-
Check task is registered; required parameters provided; dependencies met
|
|
91
|
-
error_message: "Pre-condition failed: Task is registered; required parameters provided; dependencies met"
|
|
92
|
-
```
|
|
93
|
-
|
|
94
|
-
---
|
|
95
|
-
|
|
96
|
-
## Post-Conditions
|
|
97
|
-
|
|
98
|
-
**Purpose:** Validate execution success AFTER task completes
|
|
99
|
-
|
|
100
|
-
**Checklist:**
|
|
101
|
-
|
|
102
|
-
```yaml
|
|
103
|
-
post-conditions:
|
|
104
|
-
- [ ] Task completed; exit code 0; expected outputs created
|
|
105
|
-
tipo: post-condition
|
|
106
|
-
blocker: true
|
|
107
|
-
validação: |
|
|
108
|
-
Verify task completed; exit code 0; expected outputs created
|
|
109
|
-
error_message: "Post-condition failed: Task completed; exit code 0; expected outputs created"
|
|
110
|
-
```
|
|
111
|
-
|
|
112
|
-
---
|
|
113
|
-
|
|
114
|
-
## Acceptance Criteria
|
|
115
|
-
|
|
116
|
-
**Purpose:** Definitive pass/fail criteria for task completion
|
|
117
|
-
|
|
118
|
-
**Checklist:**
|
|
119
|
-
|
|
120
|
-
```yaml
|
|
121
|
-
acceptance-criteria:
|
|
122
|
-
- [ ] Task completed as expected; side effects documented
|
|
123
|
-
tipo: acceptance-criterion
|
|
124
|
-
blocker: true
|
|
125
|
-
validação: |
|
|
126
|
-
Assert task completed as expected; side effects documented
|
|
127
|
-
error_message: "Acceptance criterion not met: Task completed as expected; side effects documented"
|
|
128
|
-
```
|
|
129
|
-
|
|
130
|
-
---
|
|
131
|
-
|
|
132
|
-
## Tools
|
|
133
|
-
|
|
134
|
-
**External/shared resources used by this task:**
|
|
135
|
-
|
|
136
|
-
- **Tool:** task-runner
|
|
137
|
-
- **Purpose:** Task execution and orchestration
|
|
138
|
-
- **Source:** .aios-core/core/task-runner.js
|
|
139
|
-
|
|
140
|
-
- **Tool:** logger
|
|
141
|
-
- **Purpose:** Execution logging and error tracking
|
|
142
|
-
- **Source:** .aios-core/utils/logger.js
|
|
143
|
-
|
|
144
|
-
---
|
|
145
|
-
|
|
146
|
-
## Scripts
|
|
147
|
-
|
|
148
|
-
**Agent-specific code for this task:**
|
|
149
|
-
|
|
150
|
-
- **Script:** execute-task.js
|
|
151
|
-
- **Purpose:** Generic task execution wrapper
|
|
152
|
-
- **Language:** JavaScript
|
|
153
|
-
- **Location:** .aios-core/scripts/execute-task.js
|
|
154
|
-
|
|
155
|
-
---
|
|
156
|
-
|
|
157
|
-
## Error Handling
|
|
158
|
-
|
|
159
|
-
**Strategy:** retry
|
|
160
|
-
|
|
161
|
-
**Common Errors:**
|
|
162
|
-
|
|
163
|
-
1. **Error:** Task Not Found
|
|
164
|
-
- **Cause:** Specified task not registered in system
|
|
165
|
-
- **Resolution:** Verify task name and registration
|
|
166
|
-
- **Recovery:** List available tasks, suggest similar
|
|
167
|
-
|
|
168
|
-
2. **Error:** Invalid Parameters
|
|
169
|
-
- **Cause:** Task parameters do not match expected schema
|
|
170
|
-
- **Resolution:** Validate parameters against task definition
|
|
171
|
-
- **Recovery:** Provide parameter template, reject execution
|
|
172
|
-
|
|
173
|
-
3. **Error:** Execution Timeout
|
|
174
|
-
- **Cause:** Task exceeds maximum execution time
|
|
175
|
-
- **Resolution:** Optimize task or increase timeout
|
|
176
|
-
- **Recovery:** Kill task, cleanup resources, log state
|
|
177
|
-
|
|
178
|
-
---
|
|
179
|
-
|
|
180
|
-
## Performance
|
|
181
|
-
|
|
182
|
-
**Expected Metrics:**
|
|
183
|
-
|
|
184
|
-
```yaml
|
|
185
|
-
duration_expected: 5-15 min (estimated)
|
|
186
|
-
cost_estimated: $0.003-0.010
|
|
187
|
-
token_usage: ~3,000-10,000 tokens
|
|
188
|
-
```
|
|
189
|
-
|
|
190
|
-
**Optimization Notes:**
|
|
191
|
-
- Break into smaller workflows; implement checkpointing; use async processing where possible
|
|
192
|
-
|
|
193
|
-
---
|
|
194
|
-
|
|
195
|
-
## Metadata
|
|
196
|
-
|
|
197
|
-
```yaml
|
|
198
|
-
story: N/A
|
|
199
|
-
version: 1.0.0
|
|
200
|
-
dependencies:
|
|
201
|
-
- N/A
|
|
202
|
-
tags:
|
|
203
|
-
- automation
|
|
204
|
-
- workflow
|
|
205
|
-
updated_at: 2025-11-17
|
|
206
|
-
```
|
|
207
|
-
|
|
208
|
-
---
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
## Prerequisites
|
|
212
|
-
- Git repository
|
|
213
|
-
- GitHub CLI for remote branch operations
|
|
214
|
-
- Repository context detected
|
|
215
|
-
|
|
216
|
-
## Cleanup Operations
|
|
217
|
-
|
|
218
|
-
### 1. Identify Stale Branches
|
|
219
|
-
|
|
220
|
-
**Definition**: Merged branches older than 30 days
|
|
221
|
-
|
|
222
|
-
```javascript
|
|
223
|
-
const { execSync } = require('child_process');
|
|
224
|
-
|
|
225
|
-
function findStaleBranches(projectRoot) {
|
|
226
|
-
// Get all merged branches
|
|
227
|
-
const mergedBranches = execSync('git branch --merged', {
|
|
228
|
-
cwd: projectRoot
|
|
229
|
-
}).toString()
|
|
230
|
-
.split('\n')
|
|
231
|
-
.map(b => b.trim())
|
|
232
|
-
.filter(b => b && b !== '* main' && b !== '* master' && b !== 'main' && b !== 'master');
|
|
233
|
-
|
|
234
|
-
const staleBranches = [];
|
|
235
|
-
const thirtyDaysAgo = Date.now() - (30 * 24 * 60 * 60 * 1000);
|
|
236
|
-
|
|
237
|
-
for (const branch of mergedBranches) {
|
|
238
|
-
try {
|
|
239
|
-
const lastCommitDate = execSync(`git log -1 --format=%ct ${branch}`, {
|
|
240
|
-
cwd: projectRoot
|
|
241
|
-
}).toString().trim();
|
|
242
|
-
|
|
243
|
-
const commitTimestamp = parseInt(lastCommitDate) * 1000;
|
|
244
|
-
|
|
245
|
-
if (commitTimestamp < thirtyDaysAgo) {
|
|
246
|
-
staleBranches.push({
|
|
247
|
-
name: branch,
|
|
248
|
-
lastCommit: new Date(commitTimestamp).toISOString(),
|
|
249
|
-
daysOld: Math.floor((Date.now() - commitTimestamp) / (24 * 60 * 60 * 1000))
|
|
250
|
-
});
|
|
251
|
-
}
|
|
252
|
-
} catch (error) {
|
|
253
|
-
console.warn(`⚠️ Unable to check ${branch}:`, error.message);
|
|
254
|
-
}
|
|
255
|
-
}
|
|
256
|
-
|
|
257
|
-
return staleBranches;
|
|
258
|
-
}
|
|
259
|
-
```
|
|
260
|
-
|
|
261
|
-
### 2. Identify Temporary Files
|
|
262
|
-
|
|
263
|
-
```javascript
|
|
264
|
-
const glob = require('glob');
|
|
265
|
-
|
|
266
|
-
function findTemporaryFiles(projectRoot) {
|
|
267
|
-
const patterns = [
|
|
268
|
-
'**/.DS_Store',
|
|
269
|
-
'**/Thumbs.db',
|
|
270
|
-
'**/*.tmp',
|
|
271
|
-
'**/*.log',
|
|
272
|
-
'**/.eslintcache'
|
|
273
|
-
];
|
|
274
|
-
|
|
275
|
-
const tempFiles = [];
|
|
276
|
-
|
|
277
|
-
for (const pattern of patterns) {
|
|
278
|
-
const files = glob.sync(pattern, {
|
|
279
|
-
cwd: projectRoot,
|
|
280
|
-
ignore: ['node_modules/**', '.git/**']
|
|
281
|
-
});
|
|
282
|
-
|
|
283
|
-
tempFiles.push(...files);
|
|
284
|
-
}
|
|
285
|
-
|
|
286
|
-
return tempFiles;
|
|
287
|
-
}
|
|
288
|
-
```
|
|
289
|
-
|
|
290
|
-
### 3. Present Cleanup Suggestions
|
|
291
|
-
|
|
292
|
-
```
|
|
293
|
-
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
294
|
-
🧹 Repository Cleanup Suggestions
|
|
295
|
-
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
296
|
-
|
|
297
|
-
Repository: {repositoryUrl}
|
|
298
|
-
|
|
299
|
-
Stale Branches (merged, >30 days old):
|
|
300
|
-
- feature/story-3.1-dashboard (45 days old)
|
|
301
|
-
- bugfix/memory-leak (60 days old)
|
|
302
|
-
- feature/old-feature (120 days old)
|
|
303
|
-
|
|
304
|
-
Total: 3 stale branches
|
|
305
|
-
|
|
306
|
-
Temporary Files:
|
|
307
|
-
- .DS_Store (5 files)
|
|
308
|
-
- .eslintcache
|
|
309
|
-
- debug.log
|
|
310
|
-
|
|
311
|
-
Total: 7 temporary files
|
|
312
|
-
|
|
313
|
-
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
314
|
-
|
|
315
|
-
Proceed with cleanup? (Y/n)
|
|
316
|
-
```
|
|
317
|
-
|
|
318
|
-
### 4. Execute Cleanup
|
|
319
|
-
|
|
320
|
-
```javascript
|
|
321
|
-
async function executeCleanup(staleBranches, tempFiles, projectRoot) {
|
|
322
|
-
// Delete stale branches
|
|
323
|
-
for (const branch of staleBranches) {
|
|
324
|
-
try {
|
|
325
|
-
execSync(`git branch -d ${branch.name}`, { cwd: projectRoot });
|
|
326
|
-
console.log(`✓ Deleted local branch: ${branch.name}`);
|
|
327
|
-
|
|
328
|
-
// Try to delete remote branch
|
|
329
|
-
try {
|
|
330
|
-
execSync(`git push origin --delete ${branch.name}`, { cwd: projectRoot });
|
|
331
|
-
console.log(`✓ Deleted remote branch: ${branch.name}`);
|
|
332
|
-
} catch (error) {
|
|
333
|
-
console.warn(`⚠️ Unable to delete remote branch ${branch.name}`);
|
|
334
|
-
}
|
|
335
|
-
} catch (error) {
|
|
336
|
-
console.error(`❌ Failed to delete ${branch.name}:`, error.message);
|
|
337
|
-
}
|
|
338
|
-
}
|
|
339
|
-
|
|
340
|
-
// Delete temporary files
|
|
341
|
-
for (const file of tempFiles) {
|
|
342
|
-
try {
|
|
343
|
-
fs.unlinkSync(path.join(projectRoot, file));
|
|
344
|
-
console.log(`✓ Deleted: ${file}`);
|
|
345
|
-
} catch (error) {
|
|
346
|
-
console.warn(`⚠️ Unable to delete ${file}`);
|
|
347
|
-
}
|
|
348
|
-
}
|
|
349
|
-
}
|
|
350
|
-
```
|
|
351
|
-
|
|
352
|
-
## Safety Checks
|
|
353
|
-
|
|
354
|
-
- Never delete main/master branch
|
|
355
|
-
- Never delete current branch
|
|
356
|
-
- Never delete unmerged branches (without --force flag)
|
|
357
|
-
- Always require user confirmation
|
|
358
|
-
|
|
359
|
-
## Integration
|
|
360
|
-
|
|
361
|
-
Called by `@github-devops` via `*cleanup` command.
|
|
362
|
-
|
|
363
|
-
## Validation
|
|
364
|
-
|
|
365
|
-
- Correctly identifies merged branches
|
|
366
|
-
- Respects 30-day threshold
|
|
367
|
-
- Requires user approval
|
|
368
|
-
- Handles errors gracefully
|
|
369
|
-
|
|
370
|
-
## Notes
|
|
371
|
-
|
|
372
|
-
- Works with ANY repository
|
|
373
|
-
- Safe defaults (no force delete)
|
|
374
|
-
- Dry-run mode available
|
|
1
|
+
# repository-cleanup.md
|
|
2
|
+
|
|
3
|
+
**Task**: Repository Cleanup (Repository-Agnostic)
|
|
4
|
+
|
|
5
|
+
**Purpose**: Identify and remove stale branches and temporary files from ANY repository.
|
|
6
|
+
|
|
7
|
+
**When to use**: Periodic maintenance via `@github-devops *cleanup` command.
|
|
8
|
+
|
|
9
|
+
## Execution Modes
|
|
10
|
+
|
|
11
|
+
**Choose your execution mode:**
|
|
12
|
+
|
|
13
|
+
### 1. YOLO Mode - Fast, Autonomous (0-1 prompts)
|
|
14
|
+
- Autonomous decision making with logging
|
|
15
|
+
- Minimal user interaction
|
|
16
|
+
- **Best for:** Simple, deterministic tasks
|
|
17
|
+
|
|
18
|
+
### 2. Interactive Mode - Balanced, Educational (5-10 prompts) **[DEFAULT]**
|
|
19
|
+
- Explicit decision checkpoints
|
|
20
|
+
- Educational explanations
|
|
21
|
+
- **Best for:** Learning, complex decisions
|
|
22
|
+
|
|
23
|
+
### 3. Pre-Flight Planning - Comprehensive Upfront Planning
|
|
24
|
+
- Task analysis phase (identify all ambiguities)
|
|
25
|
+
- Zero ambiguity execution
|
|
26
|
+
- **Best for:** Ambiguous requirements, critical work
|
|
27
|
+
|
|
28
|
+
**Parameter:** `mode` (optional, default: `interactive`)
|
|
29
|
+
|
|
30
|
+
---
|
|
31
|
+
|
|
32
|
+
## Task Definition (AIOS Task Format V1.0)
|
|
33
|
+
|
|
34
|
+
```yaml
|
|
35
|
+
task: githubDevopsRepositoryCleanup()
|
|
36
|
+
responsável: Gage (Automator)
|
|
37
|
+
responsavel_type: Agente
|
|
38
|
+
atomic_layer: Organism
|
|
39
|
+
|
|
40
|
+
**Entrada:**
|
|
41
|
+
- campo: task
|
|
42
|
+
tipo: string
|
|
43
|
+
origem: User Input
|
|
44
|
+
obrigatório: true
|
|
45
|
+
validação: Must be registered task
|
|
46
|
+
|
|
47
|
+
- campo: parameters
|
|
48
|
+
tipo: object
|
|
49
|
+
origem: User Input
|
|
50
|
+
obrigatório: false
|
|
51
|
+
validação: Valid task parameters
|
|
52
|
+
|
|
53
|
+
- campo: mode
|
|
54
|
+
tipo: string
|
|
55
|
+
origem: User Input
|
|
56
|
+
obrigatório: false
|
|
57
|
+
validação: yolo|interactive|pre-flight
|
|
58
|
+
|
|
59
|
+
**Saída:**
|
|
60
|
+
- campo: execution_result
|
|
61
|
+
tipo: object
|
|
62
|
+
destino: Memory
|
|
63
|
+
persistido: false
|
|
64
|
+
|
|
65
|
+
- campo: logs
|
|
66
|
+
tipo: array
|
|
67
|
+
destino: File (.ai/logs/*)
|
|
68
|
+
persistido: true
|
|
69
|
+
|
|
70
|
+
- campo: state
|
|
71
|
+
tipo: object
|
|
72
|
+
destino: State management
|
|
73
|
+
persistido: true
|
|
74
|
+
```
|
|
75
|
+
|
|
76
|
+
---
|
|
77
|
+
|
|
78
|
+
## Pre-Conditions
|
|
79
|
+
|
|
80
|
+
**Purpose:** Validate prerequisites BEFORE task execution (blocking)
|
|
81
|
+
|
|
82
|
+
**Checklist:**
|
|
83
|
+
|
|
84
|
+
```yaml
|
|
85
|
+
pre-conditions:
|
|
86
|
+
- [ ] Task is registered; required parameters provided; dependencies met
|
|
87
|
+
tipo: pre-condition
|
|
88
|
+
blocker: true
|
|
89
|
+
validação: |
|
|
90
|
+
Check task is registered; required parameters provided; dependencies met
|
|
91
|
+
error_message: "Pre-condition failed: Task is registered; required parameters provided; dependencies met"
|
|
92
|
+
```
|
|
93
|
+
|
|
94
|
+
---
|
|
95
|
+
|
|
96
|
+
## Post-Conditions
|
|
97
|
+
|
|
98
|
+
**Purpose:** Validate execution success AFTER task completes
|
|
99
|
+
|
|
100
|
+
**Checklist:**
|
|
101
|
+
|
|
102
|
+
```yaml
|
|
103
|
+
post-conditions:
|
|
104
|
+
- [ ] Task completed; exit code 0; expected outputs created
|
|
105
|
+
tipo: post-condition
|
|
106
|
+
blocker: true
|
|
107
|
+
validação: |
|
|
108
|
+
Verify task completed; exit code 0; expected outputs created
|
|
109
|
+
error_message: "Post-condition failed: Task completed; exit code 0; expected outputs created"
|
|
110
|
+
```
|
|
111
|
+
|
|
112
|
+
---
|
|
113
|
+
|
|
114
|
+
## Acceptance Criteria
|
|
115
|
+
|
|
116
|
+
**Purpose:** Definitive pass/fail criteria for task completion
|
|
117
|
+
|
|
118
|
+
**Checklist:**
|
|
119
|
+
|
|
120
|
+
```yaml
|
|
121
|
+
acceptance-criteria:
|
|
122
|
+
- [ ] Task completed as expected; side effects documented
|
|
123
|
+
tipo: acceptance-criterion
|
|
124
|
+
blocker: true
|
|
125
|
+
validação: |
|
|
126
|
+
Assert task completed as expected; side effects documented
|
|
127
|
+
error_message: "Acceptance criterion not met: Task completed as expected; side effects documented"
|
|
128
|
+
```
|
|
129
|
+
|
|
130
|
+
---
|
|
131
|
+
|
|
132
|
+
## Tools
|
|
133
|
+
|
|
134
|
+
**External/shared resources used by this task:**
|
|
135
|
+
|
|
136
|
+
- **Tool:** task-runner
|
|
137
|
+
- **Purpose:** Task execution and orchestration
|
|
138
|
+
- **Source:** .aios-core/core/task-runner.js
|
|
139
|
+
|
|
140
|
+
- **Tool:** logger
|
|
141
|
+
- **Purpose:** Execution logging and error tracking
|
|
142
|
+
- **Source:** .aios-core/utils/logger.js
|
|
143
|
+
|
|
144
|
+
---
|
|
145
|
+
|
|
146
|
+
## Scripts
|
|
147
|
+
|
|
148
|
+
**Agent-specific code for this task:**
|
|
149
|
+
|
|
150
|
+
- **Script:** execute-task.js
|
|
151
|
+
- **Purpose:** Generic task execution wrapper
|
|
152
|
+
- **Language:** JavaScript
|
|
153
|
+
- **Location:** .aios-core/scripts/execute-task.js
|
|
154
|
+
|
|
155
|
+
---
|
|
156
|
+
|
|
157
|
+
## Error Handling
|
|
158
|
+
|
|
159
|
+
**Strategy:** retry
|
|
160
|
+
|
|
161
|
+
**Common Errors:**
|
|
162
|
+
|
|
163
|
+
1. **Error:** Task Not Found
|
|
164
|
+
- **Cause:** Specified task not registered in system
|
|
165
|
+
- **Resolution:** Verify task name and registration
|
|
166
|
+
- **Recovery:** List available tasks, suggest similar
|
|
167
|
+
|
|
168
|
+
2. **Error:** Invalid Parameters
|
|
169
|
+
- **Cause:** Task parameters do not match expected schema
|
|
170
|
+
- **Resolution:** Validate parameters against task definition
|
|
171
|
+
- **Recovery:** Provide parameter template, reject execution
|
|
172
|
+
|
|
173
|
+
3. **Error:** Execution Timeout
|
|
174
|
+
- **Cause:** Task exceeds maximum execution time
|
|
175
|
+
- **Resolution:** Optimize task or increase timeout
|
|
176
|
+
- **Recovery:** Kill task, cleanup resources, log state
|
|
177
|
+
|
|
178
|
+
---
|
|
179
|
+
|
|
180
|
+
## Performance
|
|
181
|
+
|
|
182
|
+
**Expected Metrics:**
|
|
183
|
+
|
|
184
|
+
```yaml
|
|
185
|
+
duration_expected: 5-15 min (estimated)
|
|
186
|
+
cost_estimated: $0.003-0.010
|
|
187
|
+
token_usage: ~3,000-10,000 tokens
|
|
188
|
+
```
|
|
189
|
+
|
|
190
|
+
**Optimization Notes:**
|
|
191
|
+
- Break into smaller workflows; implement checkpointing; use async processing where possible
|
|
192
|
+
|
|
193
|
+
---
|
|
194
|
+
|
|
195
|
+
## Metadata
|
|
196
|
+
|
|
197
|
+
```yaml
|
|
198
|
+
story: N/A
|
|
199
|
+
version: 1.0.0
|
|
200
|
+
dependencies:
|
|
201
|
+
- N/A
|
|
202
|
+
tags:
|
|
203
|
+
- automation
|
|
204
|
+
- workflow
|
|
205
|
+
updated_at: 2025-11-17
|
|
206
|
+
```
|
|
207
|
+
|
|
208
|
+
---
|
|
209
|
+
|
|
210
|
+
|
|
211
|
+
## Prerequisites
|
|
212
|
+
- Git repository
|
|
213
|
+
- GitHub CLI for remote branch operations
|
|
214
|
+
- Repository context detected
|
|
215
|
+
|
|
216
|
+
## Cleanup Operations
|
|
217
|
+
|
|
218
|
+
### 1. Identify Stale Branches
|
|
219
|
+
|
|
220
|
+
**Definition**: Merged branches older than 30 days
|
|
221
|
+
|
|
222
|
+
```javascript
|
|
223
|
+
const { execSync } = require('child_process');
|
|
224
|
+
|
|
225
|
+
function findStaleBranches(projectRoot) {
|
|
226
|
+
// Get all merged branches
|
|
227
|
+
const mergedBranches = execSync('git branch --merged', {
|
|
228
|
+
cwd: projectRoot
|
|
229
|
+
}).toString()
|
|
230
|
+
.split('\n')
|
|
231
|
+
.map(b => b.trim())
|
|
232
|
+
.filter(b => b && b !== '* main' && b !== '* master' && b !== 'main' && b !== 'master');
|
|
233
|
+
|
|
234
|
+
const staleBranches = [];
|
|
235
|
+
const thirtyDaysAgo = Date.now() - (30 * 24 * 60 * 60 * 1000);
|
|
236
|
+
|
|
237
|
+
for (const branch of mergedBranches) {
|
|
238
|
+
try {
|
|
239
|
+
const lastCommitDate = execSync(`git log -1 --format=%ct ${branch}`, {
|
|
240
|
+
cwd: projectRoot
|
|
241
|
+
}).toString().trim();
|
|
242
|
+
|
|
243
|
+
const commitTimestamp = parseInt(lastCommitDate) * 1000;
|
|
244
|
+
|
|
245
|
+
if (commitTimestamp < thirtyDaysAgo) {
|
|
246
|
+
staleBranches.push({
|
|
247
|
+
name: branch,
|
|
248
|
+
lastCommit: new Date(commitTimestamp).toISOString(),
|
|
249
|
+
daysOld: Math.floor((Date.now() - commitTimestamp) / (24 * 60 * 60 * 1000))
|
|
250
|
+
});
|
|
251
|
+
}
|
|
252
|
+
} catch (error) {
|
|
253
|
+
console.warn(`⚠️ Unable to check ${branch}:`, error.message);
|
|
254
|
+
}
|
|
255
|
+
}
|
|
256
|
+
|
|
257
|
+
return staleBranches;
|
|
258
|
+
}
|
|
259
|
+
```
|
|
260
|
+
|
|
261
|
+
### 2. Identify Temporary Files
|
|
262
|
+
|
|
263
|
+
```javascript
|
|
264
|
+
const glob = require('glob');
|
|
265
|
+
|
|
266
|
+
function findTemporaryFiles(projectRoot) {
|
|
267
|
+
const patterns = [
|
|
268
|
+
'**/.DS_Store',
|
|
269
|
+
'**/Thumbs.db',
|
|
270
|
+
'**/*.tmp',
|
|
271
|
+
'**/*.log',
|
|
272
|
+
'**/.eslintcache'
|
|
273
|
+
];
|
|
274
|
+
|
|
275
|
+
const tempFiles = [];
|
|
276
|
+
|
|
277
|
+
for (const pattern of patterns) {
|
|
278
|
+
const files = glob.sync(pattern, {
|
|
279
|
+
cwd: projectRoot,
|
|
280
|
+
ignore: ['node_modules/**', '.git/**']
|
|
281
|
+
});
|
|
282
|
+
|
|
283
|
+
tempFiles.push(...files);
|
|
284
|
+
}
|
|
285
|
+
|
|
286
|
+
return tempFiles;
|
|
287
|
+
}
|
|
288
|
+
```
|
|
289
|
+
|
|
290
|
+
### 3. Present Cleanup Suggestions
|
|
291
|
+
|
|
292
|
+
```
|
|
293
|
+
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
294
|
+
🧹 Repository Cleanup Suggestions
|
|
295
|
+
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
296
|
+
|
|
297
|
+
Repository: {repositoryUrl}
|
|
298
|
+
|
|
299
|
+
Stale Branches (merged, >30 days old):
|
|
300
|
+
- feature/story-3.1-dashboard (45 days old)
|
|
301
|
+
- bugfix/memory-leak (60 days old)
|
|
302
|
+
- feature/old-feature (120 days old)
|
|
303
|
+
|
|
304
|
+
Total: 3 stale branches
|
|
305
|
+
|
|
306
|
+
Temporary Files:
|
|
307
|
+
- .DS_Store (5 files)
|
|
308
|
+
- .eslintcache
|
|
309
|
+
- debug.log
|
|
310
|
+
|
|
311
|
+
Total: 7 temporary files
|
|
312
|
+
|
|
313
|
+
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
314
|
+
|
|
315
|
+
Proceed with cleanup? (Y/n)
|
|
316
|
+
```
|
|
317
|
+
|
|
318
|
+
### 4. Execute Cleanup
|
|
319
|
+
|
|
320
|
+
```javascript
|
|
321
|
+
async function executeCleanup(staleBranches, tempFiles, projectRoot) {
|
|
322
|
+
// Delete stale branches
|
|
323
|
+
for (const branch of staleBranches) {
|
|
324
|
+
try {
|
|
325
|
+
execSync(`git branch -d ${branch.name}`, { cwd: projectRoot });
|
|
326
|
+
console.log(`✓ Deleted local branch: ${branch.name}`);
|
|
327
|
+
|
|
328
|
+
// Try to delete remote branch
|
|
329
|
+
try {
|
|
330
|
+
execSync(`git push origin --delete ${branch.name}`, { cwd: projectRoot });
|
|
331
|
+
console.log(`✓ Deleted remote branch: ${branch.name}`);
|
|
332
|
+
} catch (error) {
|
|
333
|
+
console.warn(`⚠️ Unable to delete remote branch ${branch.name}`);
|
|
334
|
+
}
|
|
335
|
+
} catch (error) {
|
|
336
|
+
console.error(`❌ Failed to delete ${branch.name}:`, error.message);
|
|
337
|
+
}
|
|
338
|
+
}
|
|
339
|
+
|
|
340
|
+
// Delete temporary files
|
|
341
|
+
for (const file of tempFiles) {
|
|
342
|
+
try {
|
|
343
|
+
fs.unlinkSync(path.join(projectRoot, file));
|
|
344
|
+
console.log(`✓ Deleted: ${file}`);
|
|
345
|
+
} catch (error) {
|
|
346
|
+
console.warn(`⚠️ Unable to delete ${file}`);
|
|
347
|
+
}
|
|
348
|
+
}
|
|
349
|
+
}
|
|
350
|
+
```
|
|
351
|
+
|
|
352
|
+
## Safety Checks
|
|
353
|
+
|
|
354
|
+
- Never delete main/master branch
|
|
355
|
+
- Never delete current branch
|
|
356
|
+
- Never delete unmerged branches (without --force flag)
|
|
357
|
+
- Always require user confirmation
|
|
358
|
+
|
|
359
|
+
## Integration
|
|
360
|
+
|
|
361
|
+
Called by `@github-devops` via `*cleanup` command.
|
|
362
|
+
|
|
363
|
+
## Validation
|
|
364
|
+
|
|
365
|
+
- Correctly identifies merged branches
|
|
366
|
+
- Respects 30-day threshold
|
|
367
|
+
- Requires user approval
|
|
368
|
+
- Handles errors gracefully
|
|
369
|
+
|
|
370
|
+
## Notes
|
|
371
|
+
|
|
372
|
+
- Works with ANY repository
|
|
373
|
+
- Safe defaults (no force delete)
|
|
374
|
+
- Dry-run mode available
|