claude-flow-novice 2.3.5 → 2.3.6
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/dist/src/booster/performance-benchmark.js +1 -1
- package/dist/src/booster/wasm-demo.js +1 -1
- package/dist/src/cli/command-registry.js +2 -2
- package/dist/src/cli/help-formatter.js +137 -109
- package/dist/src/cli/simple-cli.js +2528 -2121
- package/dist/src/cli/simple-commands/sparc/refinement.js +3 -3
- package/dist/src/cli/validation-helper.js +98 -49
- package/dist/src/commands/suggest-templates.js +4 -4
- package/dist/src/core/version.js +23 -15
- package/dist/src/memory/swarm-memory.js +603 -470
- package/dist/src/slash-commands/fullstack.js +2 -2
- package/dist/src/slash-commands/parse-epic.js +1 -1
- package/package.json +1 -1
- package/scripts/postinstall.js +40 -6
- package/dist/scripts/.claude-flow/metrics/agent-metrics.json +0 -1
- package/dist/scripts/.claude-flow/metrics/performance.json +0 -9
- package/dist/scripts/.claude-flow/metrics/task-metrics.json +0 -10
- package/dist/scripts/CLEANUP_OPTIMIZATION_REPORT.json +0 -312
- package/dist/scripts/CLEANUP_PERFORMANCE_OPTIMIZATION.md +0 -387
- package/dist/scripts/CLEANUP_QUICK_START.md +0 -268
- package/dist/scripts/CLEANUP_TEST_RESULTS.md +0 -205
- package/dist/scripts/README.md +0 -339
- package/dist/scripts/ace-query.sh +0 -384
- package/dist/scripts/agent-token-analysis.js +0 -430
- package/dist/scripts/auto-setup.js +0 -332
- package/dist/scripts/build/README.md +0 -167
- package/dist/scripts/build/build-config.js +0 -27
- package/dist/scripts/build/build-prompt-copier.sh +0 -30
- package/dist/scripts/build/performance-monitor.js +0 -869
- package/dist/scripts/build/prepare-publish.js +0 -150
- package/dist/scripts/build/typescript-fixer.js +0 -621
- package/dist/scripts/build/unified-builder.sh +0 -428
- package/dist/scripts/build/update-bin-version.js +0 -32
- package/dist/scripts/build/validate-agents.js +0 -238
- package/dist/scripts/build-index.js +0 -43
- package/dist/scripts/build-orchestrator.js +0 -320
- package/dist/scripts/check-routing-stats.cjs +0 -122
- package/dist/scripts/ci-validation.js +0 -375
- package/dist/scripts/cleanup-blocking-coordination.sh +0 -420
- package/dist/scripts/cleanup-idle-sessions.sh +0 -118
- package/dist/scripts/collect-build-metrics.js +0 -65
- package/dist/scripts/demo/README.md +0 -79
- package/dist/scripts/demo/autoscaling-demo-simplified.js +0 -963
- package/dist/scripts/demo/comprehensive-dashboard-test.js +0 -693
- package/dist/scripts/demo/confidence-log.js +0 -87
- package/dist/scripts/demo/confidence-report.js +0 -82
- package/dist/scripts/demo/demo-multi-swarm-coordination.js +0 -325
- package/dist/scripts/demo/demo-production-deployment.js +0 -399
- package/dist/scripts/demo/demo-visualization-system.js +0 -149
- package/dist/scripts/demo/performance-analysis.cjs +0 -71
- package/dist/scripts/demo/performance-analysis.js +0 -71
- package/dist/scripts/demo/test-autoscaling-demo.js +0 -314
- package/dist/scripts/dependency-optimizer.js +0 -349
- package/dist/scripts/dependency-security-assessment.js +0 -331
- package/dist/scripts/deploy-sdk.sh +0 -176
- package/dist/scripts/deployment-readiness-report.json +0 -179
- package/dist/scripts/dev/README.md +0 -264
- package/dist/scripts/dev/claude-flow-wrapper.sh +0 -35
- package/dist/scripts/dev/claude-monitor.py +0 -419
- package/dist/scripts/dev/claude-sparc.sh +0 -562
- package/dist/scripts/dev/claude-wrapper.sh +0 -17
- package/dist/scripts/dev/demo-phase3-compliance.js +0 -172
- package/dist/scripts/dev/demo-task-system.ts +0 -224
- package/dist/scripts/dev/deployment-validator.js +0 -315
- package/dist/scripts/dev/spawn-claude-terminal.sh +0 -32
- package/dist/scripts/dev/start-portal.sh +0 -506
- package/dist/scripts/dev/start-web-ui.js +0 -15
- package/dist/scripts/dev/stop-portal.sh +0 -311
- package/dist/scripts/dev/validate-examples.ts +0 -288
- package/dist/scripts/dev/validate-phase2.cjs +0 -451
- package/dist/scripts/dev/validate-phase2.js +0 -785
- package/dist/scripts/dev/validate-phase3.cjs +0 -208
- package/dist/scripts/dev/validate-security-remediation.js +0 -1
- package/dist/scripts/ecosystem.config.cjs +0 -90
- package/dist/scripts/enhanced-memory-spiral-killer.sh +0 -221
- package/dist/scripts/fix-js-extensions.js +0 -167
- package/dist/scripts/generate-basic-types.js +0 -73
- package/dist/scripts/generate-changelog.js +0 -318
- package/dist/scripts/git-hooks/pre-commit.sh +0 -143
- package/dist/scripts/health-checks.js +0 -634
- package/dist/scripts/hook-wrapper.sh +0 -54
- package/dist/scripts/install/README.md +0 -375
- package/dist/scripts/install/REDIS_SETUP_VALIDATION.json +0 -245
- package/dist/scripts/install/check-prerequisites.js +0 -303
- package/dist/scripts/install/config-wizard.js +0 -606
- package/dist/scripts/install/dependency-checker.js +0 -385
- package/dist/scripts/install/health-check.js +0 -765
- package/dist/scripts/install/install.js +0 -256
- package/dist/scripts/install/installation-benchmark.js +0 -461
- package/dist/scripts/install/quick-install.js +0 -720
- package/dist/scripts/install/quick-start-wizard.js +0 -295
- package/dist/scripts/install/redis-cli.js +0 -289
- package/dist/scripts/install/redis-install-guides.md +0 -407
- package/dist/scripts/install/redis-setup.js +0 -559
- package/dist/scripts/install/redis-test.js +0 -278
- package/dist/scripts/install/service-manager.js +0 -672
- package/dist/scripts/install/setup.js +0 -832
- package/dist/scripts/install/uninstall.js +0 -526
- package/dist/scripts/install/update.js +0 -461
- package/dist/scripts/install-pre-commit-hook.sh +0 -127
- package/dist/scripts/legacy/README.md +0 -272
- package/dist/scripts/legacy/batch-fix-ts.sh +0 -54
- package/dist/scripts/legacy/build-migration.sh +0 -105
- package/dist/scripts/legacy/build-monitor.js +0 -209
- package/dist/scripts/legacy/build-with-filter.sh +0 -84
- package/dist/scripts/legacy/build-workaround.sh +0 -71
- package/dist/scripts/legacy/fix-ts-advanced.js +0 -358
- package/dist/scripts/legacy/fix-ts-final.sh +0 -50
- package/dist/scripts/legacy/fix-ts-targeted.sh +0 -49
- package/dist/scripts/legacy/fix-typescript-errors.js +0 -305
- package/dist/scripts/legacy/force-build.sh +0 -63
- package/dist/scripts/legacy/optimize-performance.js +0 -400
- package/dist/scripts/legacy/performance-monitor.js +0 -263
- package/dist/scripts/legacy/performance-monitoring.js +0 -532
- package/dist/scripts/legacy/performance-test-runner.js +0 -645
- package/dist/scripts/legacy/quick-fix-ts.js +0 -281
- package/dist/scripts/legacy/safe-build.sh +0 -63
- package/dist/scripts/memory-monitor-coordinator.js +0 -451
- package/dist/scripts/migrate-to-sdk.sh +0 -520
- package/dist/scripts/migration/QUICK-START.md +0 -189
- package/dist/scripts/migration/QUICK-START.md.backup-1760135091363 +0 -189
- package/dist/scripts/migration/README.md +0 -464
- package/dist/scripts/migration/TASK-1.3.2-COMPLETION-REPORT.md +0 -500
- package/dist/scripts/migration/TASK-1.3.2-COMPLETION-REPORT.md.backup-1760135091348 +0 -500
- package/dist/scripts/migration/UPDATE-PATHS-README.md +0 -464
- package/dist/scripts/migration/UPDATE-PATHS-README.md.backup-1760135091337 +0 -464
- package/dist/scripts/migration/example-patterns.json +0 -19
- package/dist/scripts/migration/install-arm64.js +0 -78
- package/dist/scripts/migration/install.js +0 -83
- package/dist/scripts/migration/migrate-hooks.js +0 -173
- package/dist/scripts/migration/migration-examples.ts +0 -318
- package/dist/scripts/migration/reorganize-workspace.js +0 -504
- package/dist/scripts/migration/test-update-paths.js +0 -359
- package/dist/scripts/migration/update-paths.js +0 -664
- package/dist/scripts/migration/validate-migration.js +0 -647
- package/dist/scripts/monitor-loop.sh +0 -65
- package/dist/scripts/monitor-memory.sh +0 -47
- package/dist/scripts/monitor-migration.js +0 -339
- package/dist/scripts/monitor.py +0 -43
- package/dist/scripts/monitoring/README.md +0 -178
- package/dist/scripts/monitoring/alert-monitor.sh +0 -220
- package/dist/scripts/monitoring/analyze-resources.sh +0 -199
- package/dist/scripts/monitoring/dashboards/rate-limiting-dashboard.json +0 -211
- package/dist/scripts/monitoring/dynamic-monitor.sh +0 -85
- package/dist/scripts/monitoring/launch-stability-test.sh +0 -184
- package/dist/scripts/monitoring/monitor-test.sh +0 -93
- package/dist/scripts/monitoring/pre-test-validation.sh +0 -208
- package/dist/scripts/monitoring/quick-test-alerting.sh +0 -118
- package/dist/scripts/monitoring/quick-test-rate-limiting.sh +0 -206
- package/dist/scripts/monitoring/rate-limiting-monitor.sh +0 -380
- package/dist/scripts/monitoring/resource-monitor.sh +0 -126
- package/dist/scripts/monitoring/stability-monitor.js +0 -429
- package/dist/scripts/monitoring/test-monitor-quick.sh +0 -54
- package/dist/scripts/monitoring/view-alerts.sh +0 -307
- package/dist/scripts/npm-metrics-collector.js +0 -482
- package/dist/scripts/npm-package-validation.cjs +0 -299
- package/dist/scripts/optimization/build-optimizer.js +0 -438
- package/dist/scripts/optimization/config-validator.js +0 -761
- package/dist/scripts/optimization/test-optimization.js +0 -432
- package/dist/scripts/optimization/unified-activation.js +0 -839
- package/dist/scripts/optimize-package-swarm.js +0 -54
- package/dist/scripts/performance/ACTIVATION_COMMANDS.md +0 -292
- package/dist/scripts/performance/sqlite-enhanced-activation.sh +0 -583
- package/dist/scripts/performance/test-enhanced-backend.sh +0 -504
- package/dist/scripts/performance-monitor.js +0 -644
- package/dist/scripts/performance-test-runner.js +0 -698
- package/dist/scripts/post-deployment-monitoring.js +0 -350
- package/dist/scripts/post-edit-pipeline.js +0 -2091
- package/dist/scripts/post-install-claude-md.js +0 -78
- package/dist/scripts/postinstall.js +0 -60
- package/dist/scripts/pre-publish-validation.cjs +0 -212
- package/dist/scripts/pre-publish-validation.js +0 -429
- package/dist/scripts/redis-lua/cleanup-blocking-coordination.lua +0 -198
- package/dist/scripts/release-announcement.js +0 -425
- package/dist/scripts/release-notification.js +0 -248
- package/dist/scripts/release-rollback.js +0 -376
- package/dist/scripts/release-validation.js +0 -460
- package/dist/scripts/rollback-sdk.sh +0 -66
- package/dist/scripts/run-production-validation.ts +0 -590
- package/dist/scripts/run-stability-validation.sh +0 -687
- package/dist/scripts/security/README.md +0 -339
- package/dist/scripts/security/deployment-validation.cjs +0 -279
- package/dist/scripts/security/envelope-encryption-confidence-report.cjs +0 -422
- package/dist/scripts/security/install-git-hooks.sh +0 -132
- package/dist/scripts/security/install-git-secrets.sh +0 -295
- package/dist/scripts/security/rotate-api-keys.js +0 -469
- package/dist/scripts/security/ruv-swarm-safe.js +0 -74
- package/dist/scripts/security/security-audit.cjs +0 -538
- package/dist/scripts/security/setup-redis-auth.sh +0 -397
- package/dist/scripts/security/validate-envelope-encryption.cjs +0 -340
- package/dist/scripts/security-scan.js +0 -492
- package/dist/scripts/src/web/frontend/.claude-flow/metrics/agent-metrics.json +0 -1
- package/dist/scripts/src/web/frontend/.claude-flow/metrics/performance.json +0 -9
- package/dist/scripts/src/web/frontend/.claude-flow/metrics/task-metrics.json +0 -10
- package/dist/scripts/switch-api.sh +0 -159
- package/dist/scripts/sync-agents.js +0 -290
- package/dist/scripts/test/50-agent-test.js +0 -625
- package/dist/scripts/test/NEW_STABILITY_TEST_GUIDE.md +0 -407
- package/dist/scripts/test/README.md +0 -236
- package/dist/scripts/test/STABILITY_TEST_EXAMPLE.md +0 -347
- package/dist/scripts/test/STABILITY_TEST_README.md +0 -480
- package/dist/scripts/test/agent-worker.js +0 -309
- package/dist/scripts/test/ai-coordination-test.js +0 -650
- package/dist/scripts/test/ai-mesh-coordination-test.js +0 -416
- package/dist/scripts/test/check-links.ts +0 -274
- package/dist/scripts/test/check-performance-regression.ts +0 -168
- package/dist/scripts/test/cli-agent-coordination-test.js +0 -313
- package/dist/scripts/test/coordinator-multilingual-test.js +0 -396
- package/dist/scripts/test/coordinator-transparency-demo.js +0 -585
- package/dist/scripts/test/coverage-report.ts +0 -692
- package/dist/scripts/test/generate-swarm-tests.js +0 -633
- package/dist/scripts/test/integration-test-validation.cjs +0 -253
- package/dist/scripts/test/load-test-swarm.js +0 -576
- package/dist/scripts/test/mesh-coordination-zero-overlap-test.js +0 -740
- package/dist/scripts/test/multilingual-hello-world-test.js +0 -390
- package/dist/scripts/test/quick-multilingual-demo.js +0 -464
- package/dist/scripts/test/real-agent-test.js +0 -312
- package/dist/scripts/test/run-phase3-compliance-tests.js +0 -427
- package/dist/scripts/test/run-stability-test-examples.sh +0 -292
- package/dist/scripts/test/stability-results/stability-metrics.jsonl +0 -83
- package/dist/scripts/test/stability-results/stability-test-report.json +0 -128
- package/dist/scripts/test/stability-results/stability-test.log +0 -1827
- package/dist/scripts/test/stability-test-50-agents.js +0 -734
- package/dist/scripts/test/test-batch-tasks.ts +0 -29
- package/dist/scripts/test/test-byzantine-resolution.js +0 -246
- package/dist/scripts/test/test-claude-spawn-options.sh +0 -63
- package/dist/scripts/test/test-cli-wizard.js +0 -331
- package/dist/scripts/test/test-comprehensive.js +0 -401
- package/dist/scripts/test/test-coordination-features.ts +0 -238
- package/dist/scripts/test/test-fallback-systems.js +0 -276
- package/dist/scripts/test/test-init-command.ts +0 -302
- package/dist/scripts/test/test-mcp.ts +0 -251
- package/dist/scripts/test/test-runner.ts +0 -568
- package/dist/scripts/test/test-swarm-integration.sh +0 -92
- package/dist/scripts/test/test-swarm.ts +0 -142
- package/dist/scripts/test/validation-summary.ts +0 -408
- package/dist/scripts/test-cleanup-performance.sh +0 -416
- package/dist/scripts/test-dashboard-auth.cjs +0 -203
- package/dist/scripts/test-docker-deployment.sh +0 -207
- package/dist/scripts/test-npm-package.cjs +0 -167
- package/dist/scripts/test-provider-routing.cjs +0 -226
- package/dist/scripts/test-routing-telemetry.cjs +0 -147
- package/dist/scripts/test-runner.cjs +0 -154
- package/dist/scripts/test-zai-10k.cjs +0 -81
- package/dist/scripts/test-zai-api.cjs +0 -191
- package/dist/scripts/test-zai-diagnostic.cjs +0 -151
- package/dist/scripts/test-zai-final.cjs +0 -128
- package/dist/scripts/test-zai-with-env.cjs +0 -85
- package/dist/scripts/toggle-cost-savings.cjs +0 -302
- package/dist/scripts/unified-memory-monitor.js +0 -526
- package/dist/scripts/utils/README.md +0 -261
- package/dist/scripts/utils/clean-build-artifacts.sh +0 -94
- package/dist/scripts/utils/cleanup-root.sh +0 -69
- package/dist/scripts/utils/fix-cliffy-imports.js +0 -307
- package/dist/scripts/utils/fix-duplicate-imports.js +0 -114
- package/dist/scripts/utils/fix-error-handling.cjs +0 -70
- package/dist/scripts/utils/fix-import-paths.js +0 -104
- package/dist/scripts/utils/fix-imports.js +0 -116
- package/dist/scripts/utils/fix-shebang.js +0 -78
- package/dist/scripts/utils/fix-test-modules.js +0 -27
- package/dist/scripts/utils/fix-timezone-issue-246.js +0 -200
- package/dist/scripts/utils/fix-ts-comprehensive.py +0 -182
- package/dist/scripts/utils/fix-ts-targeted-batch.js +0 -250
- package/dist/scripts/utils/remove-benchmark-conflicts.sh +0 -140
- package/dist/scripts/utils/simple-test-fixer.js +0 -190
- package/dist/scripts/utils/validate-metrics-structure.cjs +0 -144
- package/dist/scripts/validate-agent-hooks.js +0 -506
- package/dist/scripts/validate-changelog.js +0 -241
- package/dist/scripts/validate-coordination-cli.js +0 -69
- package/dist/scripts/validate-coordination-toggle-integration.cjs +0 -501
- package/dist/scripts/validate-docker-infrastructure.sh +0 -502
- package/dist/scripts/validate-entry-points.js +0 -300
- package/dist/scripts/validate-memory-monitoring.sh +0 -225
- package/dist/scripts/validate-stage3-performance.ts +0 -377
- package/dist/scripts/validate-template-bundling.js +0 -180
- package/dist/scripts/validation/README.md +0 -33
- package/dist/scripts/validation/acl-security-validation.cjs +0 -214
- package/dist/scripts/validation/acl-security-validation.js +0 -402
- package/dist/scripts/validation/byzantine-verification.js +0 -407
- package/dist/scripts/validation/final-phase-2-consensus.cjs +0 -219
- package/dist/scripts/validation/final-security-validation.js +0 -791
- package/dist/scripts/validation/final-wasm-validation.cjs +0 -840
- package/dist/scripts/validation/integration-test-analysis.js +0 -105
- package/dist/scripts/validation/phase-0-comprehensive-validation.js +0 -474
- package/dist/scripts/validation/phase-0-consensus-report.js +0 -139
- package/dist/scripts/validation/phase-0-final-report.js +0 -112
- package/dist/scripts/validation/phase-0-redis-consensus-report.js +0 -129
- package/dist/scripts/validation/phase-0-validation-improved.js +0 -490
- package/dist/scripts/validation/phase-0-validation-test.js +0 -65
- package/dist/scripts/validation/phase-1-consensus-report.cjs +0 -342
- package/dist/scripts/validation/phase-1-consensus-validation.cjs +0 -551
- package/dist/scripts/validation/phase-1-consensus-validation.js +0 -551
- package/dist/scripts/validation/phase-2-consensus-report.cjs +0 -186
- package/dist/scripts/validation/phase-2-validation.cjs +0 -171
- package/dist/scripts/validation/phase-2-validation.js +0 -171
- package/dist/scripts/validation/phase-4-consensus-report.js +0 -181
- package/dist/scripts/validation/phase-4-final-validation.js +0 -351
- package/dist/scripts/validation/phase-5-consensus-report.cjs +0 -113
- package/dist/scripts/validation/phase-5-consensus-report.js +0 -113
- package/dist/scripts/validation/security-analysis.js +0 -49
- package/dist/scripts/validation/security-validation.js +0 -492
- package/dist/scripts/validation/simple-security-validation.js +0 -464
- package/dist/scripts/verify-installation.js +0 -112
- package/dist/scripts/verify-mcp-server.js +0 -86
- package/dist/scripts/verify-sdk-phase1.cjs +0 -293
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/accessibility/browser/accessibilityService.js +0 -88
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/accessibility/common/accessibility.js +0 -9
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/action/common/action.js +0 -7
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/action/common/actionCommonCategories.js +0 -13
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/actionWidget/browser/actionList.js +0 -276
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/actionWidget/browser/actionWidget.js +0 -248
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/actionWidget/common/actionWidget.js +0 -5
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/actions/common/actions.js +0 -409
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/audioCues/browser/audioCueService.js +0 -176
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/clipboard/browser/clipboardService.js +0 -141
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/clipboard/common/clipboardService.js +0 -6
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/commands/common/commands.js +0 -80
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/configuration/common/configuration.js +0 -86
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/configuration/common/configurationModels.js +0 -554
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/configuration/common/configurationRegistry.js +0 -317
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/configuration/common/configurations.js +0 -41
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/contextkey/browser/contextKeyService.js +0 -432
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/contextkey/common/contextkey.js +0 -1547
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/contextkey/common/contextkeys.js +0 -18
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/contextview/browser/contextMenuHandler.js +0 -124
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/contextview/browser/contextMenuService.js +0 -101
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/contextview/browser/contextView.js +0 -7
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/contextview/browser/contextViewService.js +0 -72
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/dialogs/common/dialogs.js +0 -2
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/dnd/browser/dnd.js +0 -36
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/editor/common/editor.js +0 -17
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/environment/common/environment.js +0 -2
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/extensions/common/extensions.js +0 -47
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/files/common/files.js +0 -9
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/history/browser/contextScopedHistoryWidget.js +0 -105
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/instantiation/common/descriptors.js +0 -11
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/instantiation/common/extensions.js +0 -15
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/keybinding/common/abstractKeybindingService.js +0 -277
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/keybinding/common/baseResolvedKeybinding.js +0 -53
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/quickinput/browser/commandsQuickAccess.js +0 -354
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/theme/browser/defaultStyles.js +0 -162
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/theme/common/colorRegistry.js +0 -482
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/min/vs/basic-languages/abap/abap.js +0 -10
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/min/vs/basic-languages/apex/apex.js +0 -10
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/min/vs/basic-languages/azcli/azcli.js +0 -10
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/min/vs/basic-languages/bat/bat.js +0 -10
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/min/vs/basic-languages/bicep/bicep.js +0 -11
|
@@ -1,502 +0,0 @@
|
|
|
1
|
-
#!/usr/bin/env bash
|
|
2
|
-
# Docker/K8s Infrastructure Validation Script
|
|
3
|
-
# Phase 2 Sprint 2.3 - Production Deployment Readiness
|
|
4
|
-
#
|
|
5
|
-
# Validates:
|
|
6
|
-
# - Docker configuration syntax
|
|
7
|
-
# - Kubernetes manifests
|
|
8
|
-
# - tmpfs configuration
|
|
9
|
-
# - Security settings
|
|
10
|
-
# - Resource limits
|
|
11
|
-
# - Network configuration
|
|
12
|
-
|
|
13
|
-
set -euo pipefail
|
|
14
|
-
|
|
15
|
-
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
|
16
|
-
PROJECT_ROOT="$(cd "$SCRIPT_DIR/.." && pwd)"
|
|
17
|
-
DOCKER_DIR="$PROJECT_ROOT/config/docker"
|
|
18
|
-
K8S_DIR="$PROJECT_ROOT/config/k8s"
|
|
19
|
-
|
|
20
|
-
# Colors for output
|
|
21
|
-
RED='\033[0;31m'
|
|
22
|
-
GREEN='\033[0;32m'
|
|
23
|
-
YELLOW='\033[1;33m'
|
|
24
|
-
NC='\033[0m'
|
|
25
|
-
|
|
26
|
-
# Validation results
|
|
27
|
-
TOTAL_CHECKS=0
|
|
28
|
-
PASSED_CHECKS=0
|
|
29
|
-
FAILED_CHECKS=0
|
|
30
|
-
WARNINGS=0
|
|
31
|
-
|
|
32
|
-
log_info() {
|
|
33
|
-
echo -e "${GREEN}[INFO]${NC} $*"
|
|
34
|
-
}
|
|
35
|
-
|
|
36
|
-
log_warn() {
|
|
37
|
-
echo -e "${YELLOW}[WARN]${NC} $*"
|
|
38
|
-
WARNINGS=$((WARNINGS + 1))
|
|
39
|
-
}
|
|
40
|
-
|
|
41
|
-
log_error() {
|
|
42
|
-
echo -e "${RED}[ERROR]${NC} $*"
|
|
43
|
-
FAILED_CHECKS=$((FAILED_CHECKS + 1))
|
|
44
|
-
}
|
|
45
|
-
|
|
46
|
-
log_pass() {
|
|
47
|
-
echo -e "${GREEN}[PASS]${NC} $*"
|
|
48
|
-
PASSED_CHECKS=$((PASSED_CHECKS + 1))
|
|
49
|
-
}
|
|
50
|
-
|
|
51
|
-
check_result() {
|
|
52
|
-
TOTAL_CHECKS=$((TOTAL_CHECKS + 1))
|
|
53
|
-
if [ $1 -eq 0 ]; then
|
|
54
|
-
log_pass "$2"
|
|
55
|
-
else
|
|
56
|
-
log_error "$2"
|
|
57
|
-
fi
|
|
58
|
-
}
|
|
59
|
-
|
|
60
|
-
# ==============================================================================
|
|
61
|
-
# DOCKER VALIDATION
|
|
62
|
-
# ==============================================================================
|
|
63
|
-
|
|
64
|
-
validate_docker_compose() {
|
|
65
|
-
log_info "Validating Docker Compose configurations..."
|
|
66
|
-
|
|
67
|
-
# Check if docker-compose.yml exists
|
|
68
|
-
if [ ! -f "$DOCKER_DIR/docker-compose.yml" ]; then
|
|
69
|
-
log_error "docker-compose.yml not found"
|
|
70
|
-
return 1
|
|
71
|
-
fi
|
|
72
|
-
log_pass "docker-compose.yml exists"
|
|
73
|
-
TOTAL_CHECKS=$((TOTAL_CHECKS + 1))
|
|
74
|
-
|
|
75
|
-
# Validate YAML syntax
|
|
76
|
-
if command -v docker-compose &> /dev/null; then
|
|
77
|
-
if docker-compose -f "$DOCKER_DIR/docker-compose.yml" config > /dev/null 2>&1; then
|
|
78
|
-
log_pass "docker-compose.yml syntax is valid"
|
|
79
|
-
TOTAL_CHECKS=$((TOTAL_CHECKS + 1))
|
|
80
|
-
else
|
|
81
|
-
log_error "docker-compose.yml has syntax errors"
|
|
82
|
-
TOTAL_CHECKS=$((TOTAL_CHECKS + 1))
|
|
83
|
-
fi
|
|
84
|
-
else
|
|
85
|
-
log_warn "docker-compose not installed, skipping syntax validation"
|
|
86
|
-
fi
|
|
87
|
-
|
|
88
|
-
# Check tmpfs configuration
|
|
89
|
-
if grep -q "tmpfs:" "$DOCKER_DIR/docker-compose.yml"; then
|
|
90
|
-
log_pass "tmpfs configuration found"
|
|
91
|
-
TOTAL_CHECKS=$((TOTAL_CHECKS + 1))
|
|
92
|
-
else
|
|
93
|
-
log_error "tmpfs configuration missing (required for message-bus)"
|
|
94
|
-
TOTAL_CHECKS=$((TOTAL_CHECKS + 1))
|
|
95
|
-
fi
|
|
96
|
-
|
|
97
|
-
# Check shm_size configuration
|
|
98
|
-
if grep -q "shm_size:" "$DOCKER_DIR/docker-compose.yml"; then
|
|
99
|
-
local shm_size=$(grep "shm_size:" "$DOCKER_DIR/docker-compose.yml" | head -1 | awk '{print $2}')
|
|
100
|
-
if [[ "$shm_size" =~ ^[0-9]+[gG]$ ]]; then
|
|
101
|
-
local size_gb=${shm_size//[gG]/}
|
|
102
|
-
if [ "$size_gb" -ge 1 ]; then
|
|
103
|
-
log_pass "shm_size is adequate: $shm_size"
|
|
104
|
-
TOTAL_CHECKS=$((TOTAL_CHECKS + 1))
|
|
105
|
-
else
|
|
106
|
-
log_warn "shm_size may be insufficient: $shm_size (recommend >=1g)"
|
|
107
|
-
TOTAL_CHECKS=$((TOTAL_CHECKS + 1))
|
|
108
|
-
fi
|
|
109
|
-
fi
|
|
110
|
-
else
|
|
111
|
-
log_error "shm_size not configured (required for multi-agent coordination)"
|
|
112
|
-
TOTAL_CHECKS=$((TOTAL_CHECKS + 1))
|
|
113
|
-
fi
|
|
114
|
-
|
|
115
|
-
# Check memory limits
|
|
116
|
-
if grep -q "mem_limit:" "$DOCKER_DIR/docker-compose.yml"; then
|
|
117
|
-
log_pass "Memory limits configured"
|
|
118
|
-
TOTAL_CHECKS=$((TOTAL_CHECKS + 1))
|
|
119
|
-
else
|
|
120
|
-
log_warn "Memory limits not set (recommended for production)"
|
|
121
|
-
fi
|
|
122
|
-
|
|
123
|
-
# Check security settings
|
|
124
|
-
if grep -q "cap_drop:" "$DOCKER_DIR/docker-compose.yml"; then
|
|
125
|
-
log_pass "Security capabilities configured (cap_drop)"
|
|
126
|
-
TOTAL_CHECKS=$((TOTAL_CHECKS + 1))
|
|
127
|
-
else
|
|
128
|
-
log_warn "Security capabilities not configured"
|
|
129
|
-
fi
|
|
130
|
-
|
|
131
|
-
# Check healthcheck
|
|
132
|
-
if grep -q "healthcheck:" "$DOCKER_DIR/docker-compose.yml"; then
|
|
133
|
-
log_pass "Health check configured"
|
|
134
|
-
TOTAL_CHECKS=$((TOTAL_CHECKS + 1))
|
|
135
|
-
else
|
|
136
|
-
log_warn "Health check not configured"
|
|
137
|
-
fi
|
|
138
|
-
|
|
139
|
-
# Check Prometheus integration
|
|
140
|
-
if grep -q "prometheus:" "$DOCKER_DIR/docker-compose.yml"; then
|
|
141
|
-
log_pass "Prometheus monitoring configured"
|
|
142
|
-
TOTAL_CHECKS=$((TOTAL_CHECKS + 1))
|
|
143
|
-
else
|
|
144
|
-
log_error "Prometheus monitoring missing"
|
|
145
|
-
TOTAL_CHECKS=$((TOTAL_CHECKS + 1))
|
|
146
|
-
fi
|
|
147
|
-
}
|
|
148
|
-
|
|
149
|
-
validate_dockerfile() {
|
|
150
|
-
log_info "Validating Dockerfile..."
|
|
151
|
-
|
|
152
|
-
if [ ! -f "$PROJECT_ROOT/Dockerfile" ]; then
|
|
153
|
-
log_error "Dockerfile not found"
|
|
154
|
-
TOTAL_CHECKS=$((TOTAL_CHECKS + 1))
|
|
155
|
-
return 1
|
|
156
|
-
fi
|
|
157
|
-
log_pass "Dockerfile exists"
|
|
158
|
-
TOTAL_CHECKS=$((TOTAL_CHECKS + 1))
|
|
159
|
-
|
|
160
|
-
# Check multi-stage build
|
|
161
|
-
local stage_count=$(grep -c "^FROM" "$PROJECT_ROOT/Dockerfile" || echo "0")
|
|
162
|
-
if [ "$stage_count" -ge 2 ]; then
|
|
163
|
-
log_pass "Multi-stage build configured ($stage_count stages)"
|
|
164
|
-
TOTAL_CHECKS=$((TOTAL_CHECKS + 1))
|
|
165
|
-
else
|
|
166
|
-
log_warn "Single-stage build detected (multi-stage recommended for production)"
|
|
167
|
-
fi
|
|
168
|
-
|
|
169
|
-
# Check non-root user
|
|
170
|
-
if grep -q "USER" "$PROJECT_ROOT/Dockerfile"; then
|
|
171
|
-
log_pass "Non-root user configured"
|
|
172
|
-
TOTAL_CHECKS=$((TOTAL_CHECKS + 1))
|
|
173
|
-
else
|
|
174
|
-
log_error "Container runs as root (security risk)"
|
|
175
|
-
TOTAL_CHECKS=$((TOTAL_CHECKS + 1))
|
|
176
|
-
fi
|
|
177
|
-
|
|
178
|
-
# Check healthcheck
|
|
179
|
-
if grep -q "HEALTHCHECK" "$PROJECT_ROOT/Dockerfile"; then
|
|
180
|
-
log_pass "Dockerfile healthcheck configured"
|
|
181
|
-
TOTAL_CHECKS=$((TOTAL_CHECKS + 1))
|
|
182
|
-
else
|
|
183
|
-
log_warn "No Dockerfile healthcheck"
|
|
184
|
-
fi
|
|
185
|
-
|
|
186
|
-
# Check signal handling
|
|
187
|
-
if grep -q "dumb-init" "$PROJECT_ROOT/Dockerfile" || grep -q "tini" "$PROJECT_ROOT/Dockerfile"; then
|
|
188
|
-
log_pass "Signal handling configured (init system)"
|
|
189
|
-
TOTAL_CHECKS=$((TOTAL_CHECKS + 1))
|
|
190
|
-
else
|
|
191
|
-
log_warn "No init system (signals may not be handled properly)"
|
|
192
|
-
fi
|
|
193
|
-
}
|
|
194
|
-
|
|
195
|
-
validate_stability_test_config() {
|
|
196
|
-
log_info "Validating stability test configuration..."
|
|
197
|
-
|
|
198
|
-
if [ ! -f "$DOCKER_DIR/docker-compose.stability-test.yml" ]; then
|
|
199
|
-
log_error "docker-compose.stability-test.yml not found"
|
|
200
|
-
TOTAL_CHECKS=$((TOTAL_CHECKS + 1))
|
|
201
|
-
return 1
|
|
202
|
-
fi
|
|
203
|
-
log_pass "Stability test configuration exists"
|
|
204
|
-
TOTAL_CHECKS=$((TOTAL_CHECKS + 1))
|
|
205
|
-
|
|
206
|
-
# Check 50-agent configuration
|
|
207
|
-
if grep -q "CFN_MAX_AGENTS=50" "$DOCKER_DIR/docker-compose.stability-test.yml"; then
|
|
208
|
-
log_pass "50-agent load test configured"
|
|
209
|
-
TOTAL_CHECKS=$((TOTAL_CHECKS + 1))
|
|
210
|
-
else
|
|
211
|
-
log_warn "50-agent configuration not found"
|
|
212
|
-
fi
|
|
213
|
-
|
|
214
|
-
# Check 8-hour duration
|
|
215
|
-
if grep -q "TEST_DURATION_HOURS=8" "$DOCKER_DIR/docker-compose.stability-test.yml"; then
|
|
216
|
-
log_pass "8-hour duration configured"
|
|
217
|
-
TOTAL_CHECKS=$((TOTAL_CHECKS + 1))
|
|
218
|
-
else
|
|
219
|
-
log_warn "8-hour test duration not configured"
|
|
220
|
-
fi
|
|
221
|
-
|
|
222
|
-
# Check Prometheus integration
|
|
223
|
-
if grep -q "prometheus:" "$DOCKER_DIR/docker-compose.stability-test.yml"; then
|
|
224
|
-
log_pass "Stability test Prometheus integration configured"
|
|
225
|
-
TOTAL_CHECKS=$((TOTAL_CHECKS + 1))
|
|
226
|
-
else
|
|
227
|
-
log_error "Stability test missing Prometheus"
|
|
228
|
-
TOTAL_CHECKS=$((TOTAL_CHECKS + 1))
|
|
229
|
-
fi
|
|
230
|
-
}
|
|
231
|
-
|
|
232
|
-
# ==============================================================================
|
|
233
|
-
# KUBERNETES VALIDATION
|
|
234
|
-
# ==============================================================================
|
|
235
|
-
|
|
236
|
-
validate_k8s_manifests() {
|
|
237
|
-
log_info "Validating Kubernetes manifests..."
|
|
238
|
-
|
|
239
|
-
if [ ! -d "$K8S_DIR" ]; then
|
|
240
|
-
log_error "Kubernetes configuration directory not found"
|
|
241
|
-
TOTAL_CHECKS=$((TOTAL_CHECKS + 1))
|
|
242
|
-
return 1
|
|
243
|
-
fi
|
|
244
|
-
|
|
245
|
-
# Check ConfigMaps
|
|
246
|
-
local configmap_count=$(find "$K8S_DIR" -name "configmap-*.yaml" | wc -l)
|
|
247
|
-
if [ "$configmap_count" -ge 3 ]; then
|
|
248
|
-
log_pass "ConfigMaps found for all environments ($configmap_count)"
|
|
249
|
-
TOTAL_CHECKS=$((TOTAL_CHECKS + 1))
|
|
250
|
-
else
|
|
251
|
-
log_warn "Insufficient ConfigMaps (found: $configmap_count, expected: >=3)"
|
|
252
|
-
fi
|
|
253
|
-
|
|
254
|
-
# Check production ConfigMap
|
|
255
|
-
if [ -f "$K8S_DIR/configmap-production.yaml" ]; then
|
|
256
|
-
log_pass "Production ConfigMap exists"
|
|
257
|
-
TOTAL_CHECKS=$((TOTAL_CHECKS + 1))
|
|
258
|
-
|
|
259
|
-
# Validate tmpfs configuration
|
|
260
|
-
if grep -q "CFN_BASE_DIR.*shm" "$K8S_DIR/configmap-production.yaml"; then
|
|
261
|
-
log_pass "Production ConfigMap uses tmpfs (/dev/shm)"
|
|
262
|
-
TOTAL_CHECKS=$((TOTAL_CHECKS + 1))
|
|
263
|
-
else
|
|
264
|
-
log_error "Production ConfigMap missing tmpfs configuration"
|
|
265
|
-
TOTAL_CHECKS=$((TOTAL_CHECKS + 1))
|
|
266
|
-
fi
|
|
267
|
-
|
|
268
|
-
# Check agent limits
|
|
269
|
-
if grep -q "CFN_MAX_AGENTS.*500" "$K8S_DIR/configmap-production.yaml"; then
|
|
270
|
-
log_pass "Production ConfigMap supports 500 agents"
|
|
271
|
-
TOTAL_CHECKS=$((TOTAL_CHECKS + 1))
|
|
272
|
-
else
|
|
273
|
-
log_warn "Production agent limit not set to 500"
|
|
274
|
-
fi
|
|
275
|
-
|
|
276
|
-
# Check security settings
|
|
277
|
-
if grep -q "CFN_ENABLE_AGENT_AUTH.*true" "$K8S_DIR/configmap-production.yaml"; then
|
|
278
|
-
log_pass "Production authentication enabled"
|
|
279
|
-
TOTAL_CHECKS=$((TOTAL_CHECKS + 1))
|
|
280
|
-
else
|
|
281
|
-
log_error "Production authentication not enabled"
|
|
282
|
-
TOTAL_CHECKS=$((TOTAL_CHECKS + 1))
|
|
283
|
-
fi
|
|
284
|
-
|
|
285
|
-
if grep -q "CFN_ENABLE_TLS.*true" "$K8S_DIR/configmap-production.yaml"; then
|
|
286
|
-
log_pass "Production TLS enabled"
|
|
287
|
-
TOTAL_CHECKS=$((TOTAL_CHECKS + 1))
|
|
288
|
-
else
|
|
289
|
-
log_error "Production TLS not enabled"
|
|
290
|
-
TOTAL_CHECKS=$((TOTAL_CHECKS + 1))
|
|
291
|
-
fi
|
|
292
|
-
else
|
|
293
|
-
log_error "Production ConfigMap not found"
|
|
294
|
-
TOTAL_CHECKS=$((TOTAL_CHECKS + 1))
|
|
295
|
-
fi
|
|
296
|
-
|
|
297
|
-
# Check Secrets
|
|
298
|
-
local secret_count=$(find "$K8S_DIR" -name "secret-*.yaml" | wc -l)
|
|
299
|
-
if [ "$secret_count" -ge 2 ]; then
|
|
300
|
-
log_pass "Secrets found for production/staging ($secret_count)"
|
|
301
|
-
TOTAL_CHECKS=$((TOTAL_CHECKS + 1))
|
|
302
|
-
else
|
|
303
|
-
log_warn "Insufficient Secrets (found: $secret_count, expected: >=2)"
|
|
304
|
-
fi
|
|
305
|
-
|
|
306
|
-
# Validate YAML syntax if kubectl is available
|
|
307
|
-
if command -v kubectl &> /dev/null; then
|
|
308
|
-
local yaml_valid=true
|
|
309
|
-
for yaml_file in "$K8S_DIR"/*.yaml; do
|
|
310
|
-
if ! kubectl apply --dry-run=client -f "$yaml_file" > /dev/null 2>&1; then
|
|
311
|
-
log_error "Invalid YAML: $(basename "$yaml_file")"
|
|
312
|
-
yaml_valid=false
|
|
313
|
-
TOTAL_CHECKS=$((TOTAL_CHECKS + 1))
|
|
314
|
-
fi
|
|
315
|
-
done
|
|
316
|
-
if [ "$yaml_valid" = true ]; then
|
|
317
|
-
log_pass "All Kubernetes manifests have valid syntax"
|
|
318
|
-
TOTAL_CHECKS=$((TOTAL_CHECKS + 1))
|
|
319
|
-
fi
|
|
320
|
-
else
|
|
321
|
-
log_warn "kubectl not installed, skipping YAML validation"
|
|
322
|
-
fi
|
|
323
|
-
}
|
|
324
|
-
|
|
325
|
-
# ==============================================================================
|
|
326
|
-
# INFRASTRUCTURE REQUIREMENTS
|
|
327
|
-
# ==============================================================================
|
|
328
|
-
|
|
329
|
-
validate_infrastructure_requirements() {
|
|
330
|
-
log_info "Validating infrastructure requirements..."
|
|
331
|
-
|
|
332
|
-
# Check required directories
|
|
333
|
-
local required_dirs=("lib" "scripts" "tests/integration" "config")
|
|
334
|
-
for dir in "${required_dirs[@]}"; do
|
|
335
|
-
if [ -d "$PROJECT_ROOT/$dir" ]; then
|
|
336
|
-
log_pass "Required directory exists: $dir"
|
|
337
|
-
TOTAL_CHECKS=$((TOTAL_CHECKS + 1))
|
|
338
|
-
else
|
|
339
|
-
log_error "Missing required directory: $dir"
|
|
340
|
-
TOTAL_CHECKS=$((TOTAL_CHECKS + 1))
|
|
341
|
-
fi
|
|
342
|
-
done
|
|
343
|
-
|
|
344
|
-
# Check coordination libraries
|
|
345
|
-
local required_libs=("message-bus.sh" "health.sh" "auth.sh")
|
|
346
|
-
for lib in "${required_libs[@]}"; do
|
|
347
|
-
if [ -f "$PROJECT_ROOT/lib/$lib" ]; then
|
|
348
|
-
log_pass "Coordination library exists: $lib"
|
|
349
|
-
TOTAL_CHECKS=$((TOTAL_CHECKS + 1))
|
|
350
|
-
else
|
|
351
|
-
log_error "Missing coordination library: $lib"
|
|
352
|
-
TOTAL_CHECKS=$((TOTAL_CHECKS + 1))
|
|
353
|
-
fi
|
|
354
|
-
done
|
|
355
|
-
|
|
356
|
-
# Check test files
|
|
357
|
-
if [ -f "$PROJECT_ROOT/tests/integration/100-agent-coordination.test.sh" ]; then
|
|
358
|
-
log_pass "100-agent coordination test exists"
|
|
359
|
-
TOTAL_CHECKS=$((TOTAL_CHECKS + 1))
|
|
360
|
-
else
|
|
361
|
-
log_error "100-agent coordination test missing"
|
|
362
|
-
TOTAL_CHECKS=$((TOTAL_CHECKS + 1))
|
|
363
|
-
fi
|
|
364
|
-
|
|
365
|
-
# Check monitoring scripts
|
|
366
|
-
if [ -d "$PROJECT_ROOT/scripts/monitoring" ]; then
|
|
367
|
-
log_pass "Monitoring scripts directory exists"
|
|
368
|
-
TOTAL_CHECKS=$((TOTAL_CHECKS + 1))
|
|
369
|
-
else
|
|
370
|
-
log_warn "Monitoring scripts directory missing"
|
|
371
|
-
fi
|
|
372
|
-
}
|
|
373
|
-
|
|
374
|
-
# ==============================================================================
|
|
375
|
-
# DEPLOYMENT READINESS CHECKS
|
|
376
|
-
# ==============================================================================
|
|
377
|
-
|
|
378
|
-
validate_deployment_readiness() {
|
|
379
|
-
log_info "Validating production deployment readiness..."
|
|
380
|
-
|
|
381
|
-
# Check tmpfs support
|
|
382
|
-
if mountpoint -q /dev/shm 2>/dev/null; then
|
|
383
|
-
log_pass "/dev/shm is mounted (tmpfs available)"
|
|
384
|
-
TOTAL_CHECKS=$((TOTAL_CHECKS + 1))
|
|
385
|
-
else
|
|
386
|
-
log_warn "/dev/shm not mounted (may affect container tmpfs)"
|
|
387
|
-
fi
|
|
388
|
-
|
|
389
|
-
# Check Docker daemon
|
|
390
|
-
if docker info > /dev/null 2>&1; then
|
|
391
|
-
log_pass "Docker daemon is running"
|
|
392
|
-
TOTAL_CHECKS=$((TOTAL_CHECKS + 1))
|
|
393
|
-
|
|
394
|
-
# Check Docker version
|
|
395
|
-
local docker_version=$(docker --version | grep -oP '\d+\.\d+' | head -1)
|
|
396
|
-
local major_version=$(echo "$docker_version" | cut -d. -f1)
|
|
397
|
-
if [ "$major_version" -ge 20 ]; then
|
|
398
|
-
log_pass "Docker version is adequate: $docker_version"
|
|
399
|
-
TOTAL_CHECKS=$((TOTAL_CHECKS + 1))
|
|
400
|
-
else
|
|
401
|
-
log_warn "Docker version may be outdated: $docker_version (recommend >=20.x)"
|
|
402
|
-
fi
|
|
403
|
-
else
|
|
404
|
-
log_error "Docker daemon not running or not accessible"
|
|
405
|
-
TOTAL_CHECKS=$((TOTAL_CHECKS + 1))
|
|
406
|
-
fi
|
|
407
|
-
|
|
408
|
-
# Check disk space
|
|
409
|
-
local available_space=$(df -BG /dev/shm 2>/dev/null | tail -1 | awk '{print $4}' | sed 's/G//')
|
|
410
|
-
if [ -n "$available_space" ] && [ "$available_space" -ge 1 ]; then
|
|
411
|
-
log_pass "Sufficient tmpfs space available: ${available_space}G"
|
|
412
|
-
TOTAL_CHECKS=$((TOTAL_CHECKS + 1))
|
|
413
|
-
else
|
|
414
|
-
log_warn "tmpfs space may be insufficient: ${available_space}G"
|
|
415
|
-
fi
|
|
416
|
-
}
|
|
417
|
-
|
|
418
|
-
# ==============================================================================
|
|
419
|
-
# MAIN EXECUTION
|
|
420
|
-
# ==============================================================================
|
|
421
|
-
|
|
422
|
-
main() {
|
|
423
|
-
echo "================================================================"
|
|
424
|
-
echo "Docker/K8s Infrastructure Validation"
|
|
425
|
-
echo "Phase 2 Sprint 2.3 - Production Deployment Readiness"
|
|
426
|
-
echo "================================================================"
|
|
427
|
-
echo ""
|
|
428
|
-
|
|
429
|
-
validate_docker_compose
|
|
430
|
-
echo ""
|
|
431
|
-
|
|
432
|
-
validate_dockerfile
|
|
433
|
-
echo ""
|
|
434
|
-
|
|
435
|
-
validate_stability_test_config
|
|
436
|
-
echo ""
|
|
437
|
-
|
|
438
|
-
validate_k8s_manifests
|
|
439
|
-
echo ""
|
|
440
|
-
|
|
441
|
-
validate_infrastructure_requirements
|
|
442
|
-
echo ""
|
|
443
|
-
|
|
444
|
-
validate_deployment_readiness
|
|
445
|
-
echo ""
|
|
446
|
-
|
|
447
|
-
# Summary
|
|
448
|
-
echo "================================================================"
|
|
449
|
-
echo "VALIDATION SUMMARY"
|
|
450
|
-
echo "================================================================"
|
|
451
|
-
echo "Total Checks: $TOTAL_CHECKS"
|
|
452
|
-
echo "Passed: ${GREEN}$PASSED_CHECKS${NC}"
|
|
453
|
-
echo "Failed: ${RED}$FAILED_CHECKS${NC}"
|
|
454
|
-
echo "Warnings: ${YELLOW}$WARNINGS${NC}"
|
|
455
|
-
echo ""
|
|
456
|
-
|
|
457
|
-
# Calculate confidence score
|
|
458
|
-
local confidence=0
|
|
459
|
-
if [ "$TOTAL_CHECKS" -gt 0 ]; then
|
|
460
|
-
confidence=$(awk "BEGIN {printf \"%.2f\", ($PASSED_CHECKS / $TOTAL_CHECKS)}")
|
|
461
|
-
fi
|
|
462
|
-
|
|
463
|
-
echo "Deployment Readiness Score: $confidence"
|
|
464
|
-
echo ""
|
|
465
|
-
|
|
466
|
-
# Deployment recommendation
|
|
467
|
-
if (( $(echo "$confidence >= 0.90" | bc -l) )); then
|
|
468
|
-
echo -e "${GREEN}RECOMMENDATION: PRODUCTION READY${NC}"
|
|
469
|
-
echo "Infrastructure meets production deployment criteria"
|
|
470
|
-
elif (( $(echo "$confidence >= 0.75" | bc -l) )); then
|
|
471
|
-
echo -e "${YELLOW}RECOMMENDATION: STAGING READY${NC}"
|
|
472
|
-
echo "Infrastructure suitable for staging, address warnings for production"
|
|
473
|
-
else
|
|
474
|
-
echo -e "${RED}RECOMMENDATION: NOT READY${NC}"
|
|
475
|
-
echo "Critical issues must be resolved before deployment"
|
|
476
|
-
fi
|
|
477
|
-
echo ""
|
|
478
|
-
|
|
479
|
-
# JSON output for automation
|
|
480
|
-
cat > /tmp/deployment-validation-result.json <<EOF
|
|
481
|
-
{
|
|
482
|
-
"timestamp": $(date +%s),
|
|
483
|
-
"total_checks": $TOTAL_CHECKS,
|
|
484
|
-
"passed": $PASSED_CHECKS,
|
|
485
|
-
"failed": $FAILED_CHECKS,
|
|
486
|
-
"warnings": $WARNINGS,
|
|
487
|
-
"confidence_score": $confidence,
|
|
488
|
-
"production_ready": $(if (( $(echo "$confidence >= 0.90" | bc -l) )); then echo "true"; else echo "false"; fi)
|
|
489
|
-
}
|
|
490
|
-
EOF
|
|
491
|
-
|
|
492
|
-
echo "Detailed results saved to: /tmp/deployment-validation-result.json"
|
|
493
|
-
|
|
494
|
-
# Exit with failure if critical issues found
|
|
495
|
-
if [ "$FAILED_CHECKS" -gt 0 ]; then
|
|
496
|
-
exit 1
|
|
497
|
-
fi
|
|
498
|
-
|
|
499
|
-
exit 0
|
|
500
|
-
}
|
|
501
|
-
|
|
502
|
-
main "$@"
|