claude-flow-novice 1.3.0 → 1.3.2
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/.claude-flow-novice/preferences/generation.json +147 -0
- package/.claude-flow-novice/preferences/language-configs/javascript.json +51 -0
- package/.claude-flow-novice/preferences/language-configs/python.json +50 -0
- package/.claude-flow-novice/preferences/language-configs/rust.json +237 -0
- package/.claude-flow-novice/preferences/language-configs/typescript.json +54 -0
- package/.claude-flow-novice/preferences/project-local.json +91 -0
- package/.claude-flow-novice/preferences/resource-delegation.json +120 -0
- package/.claude-flow-novice/preferences/team-shared.json +195 -0
- package/.claude-flow-novice/preferences/user-global.json +247 -0
- package/.claude-flow-novice/templates/claude-md-templates/CLAUDE-JAVASCRIPT.md +769 -0
- package/.claude-flow-novice/templates/claude-md-templates/CLAUDE-PYTHON.md +1214 -0
- package/.claude-flow-novice/templates/claude-md-templates/CLAUDE-RUST.md +475 -0
- package/.claude-flow-novice/templates/claude-md-templates/CLAUDE-TYPESCRIPT.md +851 -0
- package/.claude-flow-novice/templates/claude-md-templates/README.md +263 -0
- package/CLAUDE.md +81 -0
- package/README-NPM.md +0 -0
- package/package.json +11 -7
- package/scripts/build/README.md +167 -0
- package/scripts/build/build-config.js +27 -0
- package/scripts/build/build-prompt-copier.sh +30 -0
- package/scripts/build/performance-monitor.js +869 -0
- package/scripts/build/prepare-publish.js +150 -0
- package/scripts/build/typescript-fixer.js +621 -0
- package/scripts/build/unified-builder.sh +428 -0
- package/scripts/build/update-bin-version.js +32 -0
- package/scripts/dev/README.md +264 -0
- package/scripts/dev/claude-flow-wrapper.sh +35 -0
- package/scripts/dev/claude-monitor.py +419 -0
- package/scripts/dev/claude-sparc.sh +562 -0
- package/scripts/dev/claude-wrapper.sh +17 -0
- package/scripts/dev/demo-phase3-compliance.js +172 -0
- package/scripts/dev/demo-task-system.ts +224 -0
- package/scripts/dev/deployment-validator.js +315 -0
- package/scripts/dev/spawn-claude-terminal.sh +32 -0
- package/scripts/dev/start-portal.sh +506 -0
- package/scripts/dev/start-web-ui.js +15 -0
- package/scripts/dev/stop-portal.sh +311 -0
- package/scripts/dev/validate-examples.ts +288 -0
- package/scripts/dev/validate-phase2.cjs +451 -0
- package/scripts/dev/validate-phase2.js +785 -0
- package/scripts/dev/validate-phase3.cjs +208 -0
- package/scripts/dev/validate-security-remediation.js +1 -0
- package/scripts/legacy/README.md +272 -0
- package/scripts/legacy/batch-fix-ts.sh +54 -0
- package/scripts/legacy/build-migration.sh +105 -0
- package/scripts/legacy/build-monitor.js +209 -0
- package/scripts/legacy/build-with-filter.sh +84 -0
- package/scripts/legacy/build-workaround.sh +71 -0
- package/scripts/legacy/fix-ts-advanced.js +358 -0
- package/scripts/legacy/fix-ts-final.sh +50 -0
- package/scripts/legacy/fix-ts-targeted.sh +49 -0
- package/scripts/legacy/fix-typescript-errors.js +305 -0
- package/scripts/legacy/force-build.sh +63 -0
- package/scripts/legacy/optimize-performance.js +400 -0
- package/scripts/legacy/performance-monitor.js +263 -0
- package/scripts/legacy/performance-monitoring.js +532 -0
- package/scripts/legacy/performance-test-runner.js +645 -0
- package/scripts/legacy/quick-fix-ts.js +281 -0
- package/scripts/legacy/safe-build.sh +63 -0
- package/scripts/migration/README.md +434 -0
- package/scripts/migration/install-arm64.js +78 -0
- package/scripts/migration/install.js +83 -0
- package/scripts/migration/migrate-hooks.js +173 -0
- package/scripts/migration/migration-examples.ts +318 -0
- package/scripts/optimization/build-optimizer.js +438 -0
- package/scripts/optimization/config-validator.js +761 -0
- package/scripts/optimization/test-optimization.js +432 -0
- package/scripts/optimization/unified-activation.js +839 -0
- package/scripts/performance/ACTIVATION_COMMANDS.md +292 -0
- package/scripts/performance/sqlite-enhanced-activation.sh +583 -0
- package/scripts/performance/test-enhanced-backend.sh +504 -0
- package/scripts/performance-test-runner.js +698 -0
- package/scripts/security/README.md +339 -0
- package/scripts/security/install-git-hooks.sh +132 -0
- package/scripts/security/ruv-swarm-safe.js +74 -0
- package/scripts/test/README.md +236 -0
- package/scripts/test/check-links.ts +274 -0
- package/scripts/test/check-performance-regression.ts +168 -0
- package/scripts/test/coverage-report.ts +692 -0
- package/scripts/test/generate-swarm-tests.js +633 -0
- package/scripts/test/integration-test-validation.cjs +253 -0
- package/scripts/test/load-test-swarm.js +576 -0
- package/scripts/test/run-phase3-compliance-tests.js +427 -0
- package/scripts/test/test-batch-tasks.ts +29 -0
- package/scripts/test/test-byzantine-resolution.js +246 -0
- package/scripts/test/test-claude-spawn-options.sh +63 -0
- package/scripts/test/test-cli-wizard.js +331 -0
- package/scripts/test/test-comprehensive.js +401 -0
- package/scripts/test/test-coordination-features.ts +238 -0
- package/scripts/test/test-fallback-systems.js +276 -0
- package/scripts/test/test-init-command.ts +302 -0
- package/scripts/test/test-mcp.ts +251 -0
- package/scripts/test/test-runner.ts +568 -0
- package/scripts/test/test-swarm-integration.sh +92 -0
- package/scripts/test/test-swarm.ts +142 -0
- package/scripts/test/validation-summary.ts +408 -0
- package/scripts/utils/README.md +261 -0
- package/scripts/utils/clean-build-artifacts.sh +94 -0
- package/scripts/utils/cleanup-root.sh +69 -0
- package/scripts/utils/fix-cliffy-imports.js +307 -0
- package/scripts/utils/fix-duplicate-imports.js +114 -0
- package/scripts/utils/fix-error-handling.cjs +70 -0
- package/scripts/utils/fix-import-paths.js +104 -0
- package/scripts/utils/fix-imports.js +116 -0
- package/scripts/utils/fix-shebang.js +78 -0
- package/scripts/utils/fix-test-modules.js +27 -0
- package/scripts/utils/fix-timezone-issue-246.js +200 -0
- package/scripts/utils/fix-ts-comprehensive.py +182 -0
- package/scripts/utils/fix-ts-targeted-batch.js +250 -0
- package/scripts/utils/remove-benchmark-conflicts.sh +140 -0
- package/scripts/utils/simple-test-fixer.js +190 -0
- package/scripts/utils/validate-metrics-structure.cjs +144 -0
- package/scripts/verify-mcp-server.js +86 -0
- package/src/cli/simple-commands/__tests__/agent.test.js +291 -0
- package/src/cli/simple-commands/__tests__/memory.test.js +8 -0
- package/src/cli/simple-commands/__tests__/swarm.test.js +371 -0
- package/src/cli/simple-commands/__tests__/task.test.js +8 -0
- package/src/cli/simple-commands/agent.js +216 -0
- package/src/cli/simple-commands/analysis.js +570 -0
- package/src/cli/simple-commands/automation-executor.js +1603 -0
- package/src/cli/simple-commands/automation.js +627 -0
- package/src/cli/simple-commands/batch-manager.js +338 -0
- package/src/cli/simple-commands/claude-telemetry.js +311 -0
- package/src/cli/simple-commands/claude-track.js +102 -0
- package/src/cli/simple-commands/concurrent-display.js +348 -0
- package/src/cli/simple-commands/config.js +319 -0
- package/src/cli/simple-commands/coordination.js +307 -0
- package/src/cli/simple-commands/enhanced-ui-views.js +654 -0
- package/src/cli/simple-commands/enhanced-webui-complete.js +1038 -0
- package/src/cli/simple-commands/fix-hook-variables.js +363 -0
- package/src/cli/simple-commands/github/gh-coordinator.js +605 -0
- package/src/cli/simple-commands/github/github-api.js +624 -0
- package/src/cli/simple-commands/github/init.js +543 -0
- package/src/cli/simple-commands/github.js +377 -0
- package/src/cli/simple-commands/goal.js +145 -0
- package/src/cli/simple-commands/hive-mind/auto-save-middleware.js +311 -0
- package/src/cli/simple-commands/hive-mind/communication.js +740 -0
- package/src/cli/simple-commands/hive-mind/core.js +1031 -0
- package/src/cli/simple-commands/hive-mind/db-optimizer.js +872 -0
- package/src/cli/simple-commands/hive-mind/mcp-wrapper.js +1364 -0
- package/src/cli/simple-commands/hive-mind/memory.js +1292 -0
- package/src/cli/simple-commands/hive-mind/performance-optimizer.js +618 -0
- package/src/cli/simple-commands/hive-mind/performance-test.js +373 -0
- package/src/cli/simple-commands/hive-mind/queen.js +809 -0
- package/src/cli/simple-commands/hive-mind/session-manager.js +1223 -0
- package/src/cli/simple-commands/hive-mind-optimize.js +361 -0
- package/src/cli/simple-commands/hive-mind-wizard.js +281 -0
- package/src/cli/simple-commands/hive-mind.js +3112 -0
- package/src/cli/simple-commands/hive.js +140 -0
- package/src/cli/simple-commands/hook-safety.js +671 -0
- package/src/cli/simple-commands/hooks.js +1268 -0
- package/src/cli/simple-commands/init/.claude/checkpoints/1756224542.json +7 -0
- package/src/cli/simple-commands/init/.claude/checkpoints/1756224544.json +8 -0
- package/src/cli/simple-commands/init/README.md +106 -0
- package/src/cli/simple-commands/init/VALIDATION_ROLLBACK.md +488 -0
- package/src/cli/simple-commands/init/agent-copier.js +347 -0
- package/src/cli/simple-commands/init/batch-init.js +663 -0
- package/src/cli/simple-commands/init/claude-commands/claude-flow-commands.js +438 -0
- package/src/cli/simple-commands/init/claude-commands/optimized-claude-flow-commands.js +876 -0
- package/src/cli/simple-commands/init/claude-commands/optimized-slash-commands.js +356 -0
- package/src/cli/simple-commands/init/claude-commands/optimized-sparc-commands.js +501 -0
- package/src/cli/simple-commands/init/claude-commands/slash-commands.js +57 -0
- package/src/cli/simple-commands/init/claude-commands/sparc-commands.js +296 -0
- package/src/cli/simple-commands/init/copy-revised-templates.js +175 -0
- package/src/cli/simple-commands/init/executable-wrapper.js +122 -0
- package/src/cli/simple-commands/init/gitignore-updater.js +137 -0
- package/src/cli/simple-commands/init/help.js +110 -0
- package/src/cli/simple-commands/init/hive-mind-init.js +749 -0
- package/src/cli/simple-commands/init/index.js +1953 -0
- package/src/cli/simple-commands/init/performance-monitor.js +344 -0
- package/src/cli/simple-commands/init/rollback/backup-manager.js +542 -0
- package/src/cli/simple-commands/init/rollback/index.js +399 -0
- package/src/cli/simple-commands/init/rollback/recovery-manager.js +778 -0
- package/src/cli/simple-commands/init/rollback/rollback-executor.js +521 -0
- package/src/cli/simple-commands/init/rollback/state-tracker.js +486 -0
- package/src/cli/simple-commands/init/sparc/roo-readme.js +61 -0
- package/src/cli/simple-commands/init/sparc/roomodes-config.js +102 -0
- package/src/cli/simple-commands/init/sparc/workflows.js +40 -0
- package/src/cli/simple-commands/init/sparc-structure.js +68 -0
- package/src/cli/simple-commands/init/template-copier.js +640 -0
- package/src/cli/simple-commands/init/templates/CLAUDE.md +1185 -0
- package/src/cli/simple-commands/init/templates/CLAUDE.md.optimized +265 -0
- package/src/cli/simple-commands/init/templates/claude-flow-universal +81 -0
- package/src/cli/simple-commands/init/templates/claude-flow.bat +18 -0
- package/src/cli/simple-commands/init/templates/claude-flow.ps1 +24 -0
- package/src/cli/simple-commands/init/templates/claude-md.js +1101 -0
- package/src/cli/simple-commands/init/templates/commands/analysis/bottleneck-detect.md +162 -0
- package/src/cli/simple-commands/init/templates/commands/automation/auto-agent.md +122 -0
- package/src/cli/simple-commands/init/templates/commands/coordination/swarm-init.md +85 -0
- package/src/cli/simple-commands/init/templates/commands/github/github-swarm.md +121 -0
- package/src/cli/simple-commands/init/templates/commands/helpers/standard-checkpoint-hooks.sh +179 -0
- package/src/cli/simple-commands/init/templates/commands/hooks/notification.md +113 -0
- package/src/cli/simple-commands/init/templates/commands/hooks/post-command.md +116 -0
- package/src/cli/simple-commands/init/templates/commands/hooks/post-edit.md +117 -0
- package/src/cli/simple-commands/init/templates/commands/hooks/post-task.md +112 -0
- package/src/cli/simple-commands/init/templates/commands/hooks/pre-command.md +113 -0
- package/src/cli/simple-commands/init/templates/commands/hooks/pre-edit.md +113 -0
- package/src/cli/simple-commands/init/templates/commands/hooks/pre-search.md +112 -0
- package/src/cli/simple-commands/init/templates/commands/hooks/pre-task.md +111 -0
- package/src/cli/simple-commands/init/templates/commands/hooks/session-end.md +118 -0
- package/src/cli/simple-commands/init/templates/commands/hooks/session-restore.md +118 -0
- package/src/cli/simple-commands/init/templates/commands/hooks/session-start.md +117 -0
- package/src/cli/simple-commands/init/templates/coordination-md.js +340 -0
- package/src/cli/simple-commands/init/templates/coordination.md +16 -0
- package/src/cli/simple-commands/init/templates/enhanced-templates.js +2347 -0
- package/src/cli/simple-commands/init/templates/github-safe-enhanced.js +331 -0
- package/src/cli/simple-commands/init/templates/github-safe.js +106 -0
- package/src/cli/simple-commands/init/templates/memory-bank-md.js +259 -0
- package/src/cli/simple-commands/init/templates/memory-bank.md +16 -0
- package/src/cli/simple-commands/init/templates/readme-files.js +72 -0
- package/src/cli/simple-commands/init/templates/safe-hook-patterns.js +430 -0
- package/src/cli/simple-commands/init/templates/settings.json +109 -0
- package/src/cli/simple-commands/init/templates/settings.json.enhanced +35 -0
- package/src/cli/simple-commands/init/templates/sparc-modes.js +1401 -0
- package/src/cli/simple-commands/init/templates/verification-claude-md.js +432 -0
- package/src/cli/simple-commands/init/validation/config-validator.js +354 -0
- package/src/cli/simple-commands/init/validation/health-checker.js +599 -0
- package/src/cli/simple-commands/init/validation/index.js +388 -0
- package/src/cli/simple-commands/init/validation/mode-validator.js +387 -0
- package/src/cli/simple-commands/init/validation/post-init-validator.js +390 -0
- package/src/cli/simple-commands/init/validation/pre-init-validator.js +290 -0
- package/src/cli/simple-commands/init/validation/test-runner.js +488 -0
- package/src/cli/simple-commands/init.js +4 -0
- package/src/cli/simple-commands/mcp-health.js +163 -0
- package/src/cli/simple-commands/mcp-integration-layer.js +689 -0
- package/src/cli/simple-commands/mcp.js +420 -0
- package/src/cli/simple-commands/memory-consolidation.js +631 -0
- package/src/cli/simple-commands/memory.js +345 -0
- package/src/cli/simple-commands/migrate-hooks.js +63 -0
- package/src/cli/simple-commands/monitor.js +417 -0
- package/src/cli/simple-commands/neural.js +148 -0
- package/src/cli/simple-commands/pair-autofix-only.js +755 -0
- package/src/cli/simple-commands/pair-basic.js +751 -0
- package/src/cli/simple-commands/pair-old.js +623 -0
- package/src/cli/simple-commands/pair-working.js +849 -0
- package/src/cli/simple-commands/pair.js +849 -0
- package/src/cli/simple-commands/performance-hooks.js +149 -0
- package/src/cli/simple-commands/performance-metrics.js +601 -0
- package/src/cli/simple-commands/process-ui-enhanced.js +821 -0
- package/src/cli/simple-commands/process-ui.js +274 -0
- package/src/cli/simple-commands/realtime-update-system.js +659 -0
- package/src/cli/simple-commands/sparc/architecture.js +1750 -0
- package/src/cli/simple-commands/sparc/commands.js +575 -0
- package/src/cli/simple-commands/sparc/completion.js +1831 -0
- package/src/cli/simple-commands/sparc/coordinator.js +1045 -0
- package/src/cli/simple-commands/sparc/index.js +321 -0
- package/src/cli/simple-commands/sparc/phase-base.js +430 -0
- package/src/cli/simple-commands/sparc/pseudocode.js +984 -0
- package/src/cli/simple-commands/sparc/refinement.js +1856 -0
- package/src/cli/simple-commands/sparc/specification.js +736 -0
- package/src/cli/simple-commands/sparc-modes/architect.js +125 -0
- package/src/cli/simple-commands/sparc-modes/ask.js +126 -0
- package/src/cli/simple-commands/sparc-modes/code.js +148 -0
- package/src/cli/simple-commands/sparc-modes/debug.js +112 -0
- package/src/cli/simple-commands/sparc-modes/devops.js +137 -0
- package/src/cli/simple-commands/sparc-modes/docs-writer.js +38 -0
- package/src/cli/simple-commands/sparc-modes/generic.js +34 -0
- package/src/cli/simple-commands/sparc-modes/index.js +201 -0
- package/src/cli/simple-commands/sparc-modes/integration.js +55 -0
- package/src/cli/simple-commands/sparc-modes/mcp.js +38 -0
- package/src/cli/simple-commands/sparc-modes/monitoring.js +38 -0
- package/src/cli/simple-commands/sparc-modes/optimization.js +38 -0
- package/src/cli/simple-commands/sparc-modes/security-review.js +130 -0
- package/src/cli/simple-commands/sparc-modes/sparc-orchestrator.js +167 -0
- package/src/cli/simple-commands/sparc-modes/spec-pseudocode.js +38 -0
- package/src/cli/simple-commands/sparc-modes/supabase-admin.js +149 -0
- package/src/cli/simple-commands/sparc-modes/swarm.js +436 -0
- package/src/cli/simple-commands/sparc-modes/tdd.js +112 -0
- package/src/cli/simple-commands/sparc-modes/tutorial.js +277 -0
- package/src/cli/simple-commands/sparc.js +530 -0
- package/src/cli/simple-commands/start-ui.js +147 -0
- package/src/cli/simple-commands/start-wrapper.js +285 -0
- package/src/cli/simple-commands/start.js +2 -0
- package/src/cli/simple-commands/status.js +303 -0
- package/src/cli/simple-commands/stream-chain-clean.js +221 -0
- package/src/cli/simple-commands/stream-chain-fixed.js +89 -0
- package/src/cli/simple-commands/stream-chain-real.js +408 -0
- package/src/cli/simple-commands/stream-chain-working.js +323 -0
- package/src/cli/simple-commands/stream-chain.js +491 -0
- package/src/cli/simple-commands/stream-processor.js +340 -0
- package/src/cli/simple-commands/swarm-executor.js +253 -0
- package/src/cli/simple-commands/swarm-metrics-integration.js +371 -0
- package/src/cli/simple-commands/swarm-ui.js +741 -0
- package/src/cli/simple-commands/swarm-webui-integration.js +311 -0
- package/src/cli/simple-commands/swarm.js +2277 -0
- package/src/cli/simple-commands/task.js +228 -0
- package/src/cli/simple-commands/templates/mle-star-workflow.json +294 -0
- package/src/cli/simple-commands/timestamp-fix.js +104 -0
- package/src/cli/simple-commands/token-tracker.js +372 -0
- package/src/cli/simple-commands/tool-execution-framework.js +555 -0
- package/src/cli/simple-commands/train-and-stream.js +354 -0
- package/src/cli/simple-commands/training-pipeline.js +874 -0
- package/src/cli/simple-commands/training.js +288 -0
- package/src/cli/simple-commands/verification-hooks.js +336 -0
- package/src/cli/simple-commands/verification-integration.js +464 -0
- package/src/cli/simple-commands/verification-training-integration.js +646 -0
- package/src/cli/simple-commands/verification.js +551 -0
- package/src/cli/simple-commands/web-server.js +929 -0
- package/src/cli/simple-commands/webui-validator.js +136 -0
- package/src/language/README.md +503 -0
- package/src/language/claude-md-generator.js +618 -0
- package/src/language/cli.js +422 -0
- package/src/language/example.js +347 -0
- package/src/language/integration-system.js +619 -0
- package/src/language/language-detector.js +581 -0
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
{
|
|
2
|
+
"tag": "checkpoint-20250826-160904",
|
|
3
|
+
"file": "/workspaces/claude-code-flow/src/cli/simple-commands/init/index.js",
|
|
4
|
+
"timestamp": "2025-08-26T16:09:04Z",
|
|
5
|
+
"type": "post-edit",
|
|
6
|
+
"branch": "alpha93",
|
|
7
|
+
"diff_summary": " .claude-flow/metrics/performance.json | 2 +- .claude-flow/metrics/system-metrics.json | 108 +++++++++++++++++++++++++++++++ .claude-flow/metrics/task-metrics.json | 6 +- .claude/checkpoints/task-1756224282.json | 1 + claude-flow-wiki | 0 src/cli/simple-commands/init/index.js | 1 + 6 files changed, 114 insertions(+), 4 deletions(-) "
|
|
8
|
+
}
|
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
# Init Command - Modular Structure
|
|
2
|
+
|
|
3
|
+
This directory contains the modular implementation of the `claude-flow init` command, which initializes Claude Code integration files for projects.
|
|
4
|
+
|
|
5
|
+
## Directory Structure
|
|
6
|
+
|
|
7
|
+
```
|
|
8
|
+
init/
|
|
9
|
+
├── README.md # This file
|
|
10
|
+
├── index.js # Main entry point for init command
|
|
11
|
+
├── help.js # Help text and documentation
|
|
12
|
+
├── executable-wrapper.js # Creates local executable wrappers
|
|
13
|
+
├── sparc-structure.js # SPARC environment setup
|
|
14
|
+
├── templates/ # Template files
|
|
15
|
+
│ ├── claude-md.js # CLAUDE.md templates
|
|
16
|
+
│ ├── memory-bank-md.js # memory-bank.md templates
|
|
17
|
+
│ ├── coordination-md.js # coordination.md templates
|
|
18
|
+
│ └── readme-files.js # README templates for directories
|
|
19
|
+
├── sparc/ # SPARC-specific configuration
|
|
20
|
+
│ ├── roomodes-config.js # .roomodes configuration
|
|
21
|
+
│ ├── workflows.js # SPARC workflow templates
|
|
22
|
+
│ └── roo-readme.js # .roo directory README
|
|
23
|
+
└── claude-commands/ # Claude Code slash commands
|
|
24
|
+
├── slash-commands.js # Main slash command creator
|
|
25
|
+
├── sparc-commands.js # SPARC-specific commands
|
|
26
|
+
└── claude-flow-commands.js # Claude-Flow specific commands
|
|
27
|
+
```
|
|
28
|
+
|
|
29
|
+
## What Gets Created
|
|
30
|
+
|
|
31
|
+
### With `--sparc` flag:
|
|
32
|
+
|
|
33
|
+
1. **Claude Code Configuration**:
|
|
34
|
+
|
|
35
|
+
- `CLAUDE.md` - SPARC-enhanced project instructions
|
|
36
|
+
- `.claude/` directory structure
|
|
37
|
+
- `.claude/commands/` - Slash commands for Claude Code
|
|
38
|
+
- `.claude/logs/` - Conversation logs directory
|
|
39
|
+
|
|
40
|
+
2. **Memory System**:
|
|
41
|
+
|
|
42
|
+
- `memory-bank.md` - Memory system documentation
|
|
43
|
+
- `memory/` directory structure
|
|
44
|
+
- `memory/agents/` - Agent-specific memory
|
|
45
|
+
- `memory/sessions/` - Session storage
|
|
46
|
+
- `memory/claude-flow-data.json` - Persistence database
|
|
47
|
+
|
|
48
|
+
3. **Coordination System**:
|
|
49
|
+
|
|
50
|
+
- `coordination.md` - Agent coordination documentation
|
|
51
|
+
- `coordination/` directory structure
|
|
52
|
+
|
|
53
|
+
4. **SPARC Environment**:
|
|
54
|
+
|
|
55
|
+
- `.roomodes` - SPARC mode configurations (17+ modes)
|
|
56
|
+
- `.roo/` directory with templates and workflows
|
|
57
|
+
|
|
58
|
+
5. **Slash Commands Created**:
|
|
59
|
+
|
|
60
|
+
- `/sparc` - Main SPARC command
|
|
61
|
+
- `/sparc-<mode>` - Individual mode commands (architect, code, tdd, etc.)
|
|
62
|
+
- `/claude-flow-help` - Help command
|
|
63
|
+
- `/claude-flow-memory` - Memory system command
|
|
64
|
+
- `/claude-flow-swarm` - Swarm coordination command
|
|
65
|
+
|
|
66
|
+
6. **Local Executable**:
|
|
67
|
+
- `./claude-flow` (Unix/Mac/Linux)
|
|
68
|
+
- `claude-flow.cmd` (Windows)
|
|
69
|
+
|
|
70
|
+
### With `--minimal` flag:
|
|
71
|
+
|
|
72
|
+
Creates minimal versions of all configuration files without SPARC features.
|
|
73
|
+
|
|
74
|
+
### With `--force` flag:
|
|
75
|
+
|
|
76
|
+
Overwrites existing files if they already exist.
|
|
77
|
+
|
|
78
|
+
## Usage
|
|
79
|
+
|
|
80
|
+
```bash
|
|
81
|
+
# Recommended first-time setup with SPARC
|
|
82
|
+
npx claude-flow@latest init --sparc
|
|
83
|
+
|
|
84
|
+
# Minimal setup
|
|
85
|
+
npx claude-flow init --minimal
|
|
86
|
+
|
|
87
|
+
# Force overwrite existing files
|
|
88
|
+
npx claude-flow init --force
|
|
89
|
+
```
|
|
90
|
+
|
|
91
|
+
## Module Responsibilities
|
|
92
|
+
|
|
93
|
+
- **index.js**: Main orchestration and file creation logic
|
|
94
|
+
- **help.js**: User documentation and examples
|
|
95
|
+
- **executable-wrapper.js**: Platform-specific executable creation
|
|
96
|
+
- **sparc-structure.js**: SPARC environment setup and integration
|
|
97
|
+
- **templates/**: All template content for generated files
|
|
98
|
+
- **sparc/**: SPARC-specific configurations and templates
|
|
99
|
+
- **claude-commands/**: Claude Code slash command generation
|
|
100
|
+
|
|
101
|
+
## Notes
|
|
102
|
+
|
|
103
|
+
- The init command detects Claude Code's `.claude/` directory structure
|
|
104
|
+
- Slash commands follow Claude Code's markdown format with YAML frontmatter
|
|
105
|
+
- SPARC modes are fully integrated with Claude-Flow's orchestration system
|
|
106
|
+
- All generated files include comprehensive documentation
|
|
@@ -0,0 +1,488 @@
|
|
|
1
|
+
# Validation and Rollback Systems
|
|
2
|
+
|
|
3
|
+
This document describes the comprehensive validation and rollback mechanisms implemented for SPARC initialization to ensure safe and reliable setup.
|
|
4
|
+
|
|
5
|
+
## Overview
|
|
6
|
+
|
|
7
|
+
The validation and rollback systems provide multiple layers of safety and reliability:
|
|
8
|
+
|
|
9
|
+
1. **Pre-initialization validation** - Checks system readiness before any changes
|
|
10
|
+
2. **Automatic backup creation** - Creates restore points before initialization
|
|
11
|
+
3. **Atomic operations** - Ensures all-or-nothing initialization
|
|
12
|
+
4. **Post-initialization verification** - Validates successful completion
|
|
13
|
+
5. **Rollback mechanisms** - Allows reverting to previous states
|
|
14
|
+
6. **Auto-recovery procedures** - Handles common failure scenarios
|
|
15
|
+
7. **Health monitoring** - Continuous system health assessment
|
|
16
|
+
|
|
17
|
+
## Components
|
|
18
|
+
|
|
19
|
+
### ValidationSystem
|
|
20
|
+
|
|
21
|
+
The `ValidationSystem` orchestrates all validation checks:
|
|
22
|
+
|
|
23
|
+
- **PreInitValidator**: Checks permissions, disk space, conflicts, dependencies
|
|
24
|
+
- **PostInitValidator**: Verifies file integrity, completeness, structure
|
|
25
|
+
- **ConfigValidator**: Validates configuration files and syntax
|
|
26
|
+
- **ModeValidator**: Tests SPARC mode functionality
|
|
27
|
+
- **HealthChecker**: Monitors system health and resources
|
|
28
|
+
|
|
29
|
+
### RollbackSystem
|
|
30
|
+
|
|
31
|
+
The `RollbackSystem` provides comprehensive rollback capabilities:
|
|
32
|
+
|
|
33
|
+
- **BackupManager**: Creates and manages backups
|
|
34
|
+
- **RollbackExecutor**: Executes rollback operations
|
|
35
|
+
- **StateTracker**: Tracks initialization state and checkpoints
|
|
36
|
+
- **RecoveryManager**: Handles automated recovery procedures
|
|
37
|
+
|
|
38
|
+
## Usage
|
|
39
|
+
|
|
40
|
+
### Enhanced Initialization
|
|
41
|
+
|
|
42
|
+
Use the enhanced initialization for maximum safety:
|
|
43
|
+
|
|
44
|
+
```bash
|
|
45
|
+
# Safest initialization with full validation and rollback
|
|
46
|
+
claude-flow init --enhanced --sparc
|
|
47
|
+
|
|
48
|
+
# Enhanced with specific options
|
|
49
|
+
claude-flow init --safe --sparc --force
|
|
50
|
+
|
|
51
|
+
# Validation only (no initialization)
|
|
52
|
+
claude-flow init --validate-only
|
|
53
|
+
|
|
54
|
+
# Skip specific validations if needed
|
|
55
|
+
claude-flow init --enhanced --skip-pre-validation --skip-backup
|
|
56
|
+
```
|
|
57
|
+
|
|
58
|
+
### Validation Commands
|
|
59
|
+
|
|
60
|
+
Run validation checks independently:
|
|
61
|
+
|
|
62
|
+
```bash
|
|
63
|
+
# Full validation suite
|
|
64
|
+
claude-flow init --validate
|
|
65
|
+
|
|
66
|
+
# Skip specific validation phases
|
|
67
|
+
claude-flow init --validate --skip-pre-init --skip-config --skip-mode-test
|
|
68
|
+
|
|
69
|
+
# Pre-initialization check only
|
|
70
|
+
claude-flow init --validate --pre-init-only
|
|
71
|
+
```
|
|
72
|
+
|
|
73
|
+
### Rollback Commands
|
|
74
|
+
|
|
75
|
+
Rollback previous initialization:
|
|
76
|
+
|
|
77
|
+
```bash
|
|
78
|
+
# Full system rollback
|
|
79
|
+
claude-flow init --rollback --full
|
|
80
|
+
|
|
81
|
+
# Partial rollback for specific phase
|
|
82
|
+
claude-flow init --rollback --partial --phase sparc-init
|
|
83
|
+
|
|
84
|
+
# Interactive rollback (shows available points)
|
|
85
|
+
claude-flow init --rollback
|
|
86
|
+
|
|
87
|
+
# List available backups and checkpoints
|
|
88
|
+
claude-flow init --list-backups
|
|
89
|
+
```
|
|
90
|
+
|
|
91
|
+
## Validation Phases
|
|
92
|
+
|
|
93
|
+
### Phase 1: Pre-initialization Validation
|
|
94
|
+
|
|
95
|
+
**Purpose**: Ensure system is ready for initialization
|
|
96
|
+
|
|
97
|
+
**Checks**:
|
|
98
|
+
|
|
99
|
+
- File system permissions (read/write access)
|
|
100
|
+
- Available disk space (minimum 100MB required)
|
|
101
|
+
- Existing file conflicts (with --force handling)
|
|
102
|
+
- Required dependencies (node, npm, npx, git)
|
|
103
|
+
- Environment variables and configuration
|
|
104
|
+
|
|
105
|
+
**Result**: Block initialization if critical issues found
|
|
106
|
+
|
|
107
|
+
### Phase 2: Backup Creation
|
|
108
|
+
|
|
109
|
+
**Purpose**: Create restore point before any changes
|
|
110
|
+
|
|
111
|
+
**Actions**:
|
|
112
|
+
|
|
113
|
+
- Backup existing critical files
|
|
114
|
+
- Backup directory structures
|
|
115
|
+
- Create backup manifest with metadata
|
|
116
|
+
- Store backup with timestamp and ID
|
|
117
|
+
|
|
118
|
+
**Result**: Rollback point available for recovery
|
|
119
|
+
|
|
120
|
+
### Phase 3: Atomic Initialization
|
|
121
|
+
|
|
122
|
+
**Purpose**: Perform initialization with checkpoint tracking
|
|
123
|
+
|
|
124
|
+
**Process**:
|
|
125
|
+
|
|
126
|
+
1. Begin atomic operation
|
|
127
|
+
2. Create checkpoints before each phase
|
|
128
|
+
3. Execute initialization steps
|
|
129
|
+
4. Track all file/directory operations
|
|
130
|
+
5. Commit or rollback based on success
|
|
131
|
+
|
|
132
|
+
**Phases**:
|
|
133
|
+
|
|
134
|
+
- File creation (CLAUDE.md, memory-bank.md, coordination.md)
|
|
135
|
+
- Directory structure creation
|
|
136
|
+
- Memory system setup
|
|
137
|
+
- Coordination system setup
|
|
138
|
+
- Executable creation
|
|
139
|
+
- SPARC initialization (if enabled)
|
|
140
|
+
- Claude command creation
|
|
141
|
+
|
|
142
|
+
### Phase 4: Post-initialization Validation
|
|
143
|
+
|
|
144
|
+
**Purpose**: Verify initialization completed successfully
|
|
145
|
+
|
|
146
|
+
**Checks**:
|
|
147
|
+
|
|
148
|
+
- File integrity (existence, size, readability)
|
|
149
|
+
- Completeness (all required files and directories)
|
|
150
|
+
- Structure validation (correct organization)
|
|
151
|
+
- Permission verification (executable files)
|
|
152
|
+
|
|
153
|
+
**Result**: Automatic rollback if validation fails
|
|
154
|
+
|
|
155
|
+
### Phase 5: Configuration Validation
|
|
156
|
+
|
|
157
|
+
**Purpose**: Validate configuration files and syntax
|
|
158
|
+
|
|
159
|
+
**Checks**:
|
|
160
|
+
|
|
161
|
+
- .roomodes JSON syntax and structure
|
|
162
|
+
- CLAUDE.md content and sections
|
|
163
|
+
- Memory configuration validity
|
|
164
|
+
- Coordination configuration completeness
|
|
165
|
+
|
|
166
|
+
**Result**: Warnings for configuration issues
|
|
167
|
+
|
|
168
|
+
### Phase 6: Health Checks
|
|
169
|
+
|
|
170
|
+
**Purpose**: Assess overall system health
|
|
171
|
+
|
|
172
|
+
**Checks**:
|
|
173
|
+
|
|
174
|
+
- SPARC mode availability
|
|
175
|
+
- Template integrity
|
|
176
|
+
- Configuration consistency
|
|
177
|
+
- System resource adequacy
|
|
178
|
+
|
|
179
|
+
**Result**: Health report with recommendations
|
|
180
|
+
|
|
181
|
+
## Rollback Mechanisms
|
|
182
|
+
|
|
183
|
+
### Full Rollback
|
|
184
|
+
|
|
185
|
+
Completely reverts system to pre-initialization state:
|
|
186
|
+
|
|
187
|
+
1. Remove all initialization artifacts
|
|
188
|
+
2. Restore files from backup
|
|
189
|
+
3. Verify rollback completion
|
|
190
|
+
4. Update state tracking
|
|
191
|
+
|
|
192
|
+
### Partial Rollback
|
|
193
|
+
|
|
194
|
+
Reverts specific components or phases:
|
|
195
|
+
|
|
196
|
+
- **sparc-init**: Remove SPARC-specific files and configurations
|
|
197
|
+
- **claude-commands**: Remove Claude Code slash commands
|
|
198
|
+
- **memory-setup**: Reset memory system
|
|
199
|
+
- **coordination-setup**: Remove coordination files
|
|
200
|
+
- **executable-creation**: Remove local executable
|
|
201
|
+
|
|
202
|
+
### Atomic Rollback
|
|
203
|
+
|
|
204
|
+
Automatic rollback during failed initialization:
|
|
205
|
+
|
|
206
|
+
1. Track all operations in atomic operation
|
|
207
|
+
2. Reverse operations in case of failure
|
|
208
|
+
3. Restore system to checkpoint state
|
|
209
|
+
4. Clean up partial changes
|
|
210
|
+
|
|
211
|
+
## Auto-Recovery
|
|
212
|
+
|
|
213
|
+
The system includes automated recovery for common failures:
|
|
214
|
+
|
|
215
|
+
### Permission Denied
|
|
216
|
+
|
|
217
|
+
- Attempt to fix directory permissions
|
|
218
|
+
- Verify write access restoration
|
|
219
|
+
- Provide manual resolution steps
|
|
220
|
+
|
|
221
|
+
### Disk Space Issues
|
|
222
|
+
|
|
223
|
+
- Clean temporary files
|
|
224
|
+
- Remove old backups
|
|
225
|
+
- Check available space after cleanup
|
|
226
|
+
|
|
227
|
+
### Missing Dependencies
|
|
228
|
+
|
|
229
|
+
- Attempt dependency installation/configuration
|
|
230
|
+
- Verify dependency availability
|
|
231
|
+
- Provide installation guidance
|
|
232
|
+
|
|
233
|
+
### Corrupted Configuration
|
|
234
|
+
|
|
235
|
+
- Regenerate configuration files
|
|
236
|
+
- Restore from backup if available
|
|
237
|
+
- Create minimal working configuration
|
|
238
|
+
|
|
239
|
+
### Partial Initialization
|
|
240
|
+
|
|
241
|
+
- Identify completed vs missing components
|
|
242
|
+
- Complete missing initialization steps
|
|
243
|
+
- Verify final system state
|
|
244
|
+
|
|
245
|
+
### SPARC Failures
|
|
246
|
+
|
|
247
|
+
- Recover .roomodes configuration
|
|
248
|
+
- Restore .roo directory structure
|
|
249
|
+
- Recreate SPARC commands
|
|
250
|
+
|
|
251
|
+
## State Tracking
|
|
252
|
+
|
|
253
|
+
The system maintains detailed state information:
|
|
254
|
+
|
|
255
|
+
### Rollback Points
|
|
256
|
+
|
|
257
|
+
- Backup ID and location
|
|
258
|
+
- Timestamp and type
|
|
259
|
+
- System state snapshot
|
|
260
|
+
|
|
261
|
+
### Checkpoints
|
|
262
|
+
|
|
263
|
+
- Phase name and timestamp
|
|
264
|
+
- Operation details
|
|
265
|
+
- Status tracking
|
|
266
|
+
|
|
267
|
+
### File Operations
|
|
268
|
+
|
|
269
|
+
- Operation type (create/modify/delete)
|
|
270
|
+
- File paths and metadata
|
|
271
|
+
- Reversible operation data
|
|
272
|
+
|
|
273
|
+
### Phase History
|
|
274
|
+
|
|
275
|
+
- Initialization progress
|
|
276
|
+
- Phase transitions
|
|
277
|
+
- Timing information
|
|
278
|
+
|
|
279
|
+
## Error Handling
|
|
280
|
+
|
|
281
|
+
### Validation Failures
|
|
282
|
+
|
|
283
|
+
- Clear error messages with context
|
|
284
|
+
- Suggested resolution steps
|
|
285
|
+
- Prevention of unsafe operations
|
|
286
|
+
|
|
287
|
+
### Initialization Failures
|
|
288
|
+
|
|
289
|
+
- Automatic rollback triggers
|
|
290
|
+
- Error categorization
|
|
291
|
+
- Recovery procedure selection
|
|
292
|
+
|
|
293
|
+
### Rollback Failures
|
|
294
|
+
|
|
295
|
+
- Emergency procedures
|
|
296
|
+
- Manual recovery steps
|
|
297
|
+
- System state analysis
|
|
298
|
+
|
|
299
|
+
## Best Practices
|
|
300
|
+
|
|
301
|
+
### For Users
|
|
302
|
+
|
|
303
|
+
1. **Use Enhanced Mode**: Always use `--enhanced` for production setups
|
|
304
|
+
2. **Validate First**: Run `--validate-only` before initialization
|
|
305
|
+
3. **Keep Backups**: Don't skip backup creation unless absolutely necessary
|
|
306
|
+
4. **Monitor Health**: Regular health checks with `--validate`
|
|
307
|
+
5. **Clean Rollbacks**: Use specific rollback phases when possible
|
|
308
|
+
|
|
309
|
+
### For Developers
|
|
310
|
+
|
|
311
|
+
1. **Atomic Operations**: Wrap complex operations in atomic blocks
|
|
312
|
+
2. **Checkpoint Frequently**: Create checkpoints before major operations
|
|
313
|
+
3. **Validate Early**: Check prerequisites before making changes
|
|
314
|
+
4. **Handle Errors**: Provide clear error messages and recovery steps
|
|
315
|
+
5. **Test Recovery**: Regularly test rollback and recovery procedures
|
|
316
|
+
|
|
317
|
+
## Testing
|
|
318
|
+
|
|
319
|
+
The system includes comprehensive test coverage:
|
|
320
|
+
|
|
321
|
+
```bash
|
|
322
|
+
# Run validation and rollback tests
|
|
323
|
+
import { runValidationTests } from './validation/test-runner.js';
|
|
324
|
+
const results = await runValidationTests('/path/to/project');
|
|
325
|
+
```
|
|
326
|
+
|
|
327
|
+
Test categories:
|
|
328
|
+
|
|
329
|
+
- Pre-initialization validation
|
|
330
|
+
- Post-initialization validation
|
|
331
|
+
- Configuration validation
|
|
332
|
+
- Mode functionality testing
|
|
333
|
+
- Health checks
|
|
334
|
+
- Backup system
|
|
335
|
+
- Rollback operations
|
|
336
|
+
- State tracking
|
|
337
|
+
- Recovery procedures
|
|
338
|
+
- Atomic operations
|
|
339
|
+
|
|
340
|
+
## Configuration
|
|
341
|
+
|
|
342
|
+
### Environment Variables
|
|
343
|
+
|
|
344
|
+
- `CLAUDE_FLOW_DEBUG`: Enable debug logging
|
|
345
|
+
- `CLAUDE_FLOW_BACKUP_DIR`: Custom backup directory
|
|
346
|
+
- `CLAUDE_FLOW_STATE_FILE`: Custom state file location
|
|
347
|
+
|
|
348
|
+
### System Requirements
|
|
349
|
+
|
|
350
|
+
- **Disk Space**: Minimum 100MB free space
|
|
351
|
+
- **Permissions**: Read/write access to project directory
|
|
352
|
+
- **Dependencies**: Node.js, npm, npx (git recommended)
|
|
353
|
+
- **Memory**: At least 100MB available RAM
|
|
354
|
+
|
|
355
|
+
### Backup Management
|
|
356
|
+
|
|
357
|
+
- **Retention**: Keeps last 5 backups by default
|
|
358
|
+
- **Cleanup**: Automatic cleanup of old backups
|
|
359
|
+
- **Storage**: Backups stored in `.claude-flow-backups/`
|
|
360
|
+
- **Compression**: Future enhancement for large projects
|
|
361
|
+
|
|
362
|
+
## Troubleshooting
|
|
363
|
+
|
|
364
|
+
### Common Issues
|
|
365
|
+
|
|
366
|
+
1. **Permission Denied**
|
|
367
|
+
|
|
368
|
+
```bash
|
|
369
|
+
# Fix permissions
|
|
370
|
+
chmod -R 755 .
|
|
371
|
+
claude-flow init --enhanced --sparc
|
|
372
|
+
```
|
|
373
|
+
|
|
374
|
+
2. **Disk Space Low**
|
|
375
|
+
|
|
376
|
+
```bash
|
|
377
|
+
# Clean and retry
|
|
378
|
+
claude-flow init --rollback --full
|
|
379
|
+
df -h # Check space
|
|
380
|
+
claude-flow init --enhanced --sparc
|
|
381
|
+
```
|
|
382
|
+
|
|
383
|
+
3. **Validation Failures**
|
|
384
|
+
|
|
385
|
+
```bash
|
|
386
|
+
# Check what's failing
|
|
387
|
+
claude-flow init --validate
|
|
388
|
+
# Fix issues and retry
|
|
389
|
+
claude-flow init --enhanced --sparc
|
|
390
|
+
```
|
|
391
|
+
|
|
392
|
+
4. **Partial Initialization**
|
|
393
|
+
```bash
|
|
394
|
+
# Complete missing components
|
|
395
|
+
claude-flow init --enhanced --sparc --force
|
|
396
|
+
# Or start fresh
|
|
397
|
+
claude-flow init --rollback --full
|
|
398
|
+
```
|
|
399
|
+
|
|
400
|
+
### Emergency Recovery
|
|
401
|
+
|
|
402
|
+
If all automated recovery fails:
|
|
403
|
+
|
|
404
|
+
1. **Manual Backup Restore**
|
|
405
|
+
|
|
406
|
+
```bash
|
|
407
|
+
# Find backup
|
|
408
|
+
ls .claude-flow-backups/
|
|
409
|
+
# Manual restore from backup directory
|
|
410
|
+
```
|
|
411
|
+
|
|
412
|
+
2. **Clean State Reset**
|
|
413
|
+
|
|
414
|
+
```bash
|
|
415
|
+
# Remove all artifacts manually
|
|
416
|
+
rm -rf .claude .roo CLAUDE.md memory-bank.md coordination.md
|
|
417
|
+
rm -rf memory/ coordination/ claude-flow
|
|
418
|
+
```
|
|
419
|
+
|
|
420
|
+
3. **Fresh Installation**
|
|
421
|
+
```bash
|
|
422
|
+
# Start completely fresh
|
|
423
|
+
npx claude-flow@latest init --sparc --force
|
|
424
|
+
```
|
|
425
|
+
|
|
426
|
+
## Future Enhancements
|
|
427
|
+
|
|
428
|
+
Planned improvements to the validation and rollback systems:
|
|
429
|
+
|
|
430
|
+
1. **Interactive Recovery**: GUI-based recovery interface
|
|
431
|
+
2. **Remote Backups**: Cloud backup storage options
|
|
432
|
+
3. **Incremental Backups**: Space-efficient backup strategy
|
|
433
|
+
4. **Parallel Validation**: Faster validation through parallelization
|
|
434
|
+
5. **Smart Recovery**: AI-assisted failure diagnosis and recovery
|
|
435
|
+
6. **Integration Testing**: Automated end-to-end testing
|
|
436
|
+
7. **Performance Monitoring**: Real-time performance metrics
|
|
437
|
+
8. **Custom Validators**: User-defined validation rules
|
|
438
|
+
|
|
439
|
+
## API Reference
|
|
440
|
+
|
|
441
|
+
### ValidationSystem
|
|
442
|
+
|
|
443
|
+
```javascript
|
|
444
|
+
const validator = new ValidationSystem(workingDir);
|
|
445
|
+
|
|
446
|
+
// Run validation phases
|
|
447
|
+
await validator.validatePreInit(options);
|
|
448
|
+
await validator.validatePostInit();
|
|
449
|
+
await validator.validateConfiguration();
|
|
450
|
+
await validator.testModeFunctionality();
|
|
451
|
+
await validator.runHealthChecks();
|
|
452
|
+
|
|
453
|
+
// Generate reports
|
|
454
|
+
const report = validator.generateReport(results);
|
|
455
|
+
```
|
|
456
|
+
|
|
457
|
+
### RollbackSystem
|
|
458
|
+
|
|
459
|
+
```javascript
|
|
460
|
+
const rollback = new RollbackSystem(workingDir);
|
|
461
|
+
|
|
462
|
+
// Create backups and rollback points
|
|
463
|
+
await rollback.createPreInitBackup();
|
|
464
|
+
await rollback.createCheckpoint(phase, data);
|
|
465
|
+
|
|
466
|
+
// Perform rollbacks
|
|
467
|
+
await rollback.performFullRollback(backupId);
|
|
468
|
+
await rollback.performPartialRollback(phase);
|
|
469
|
+
|
|
470
|
+
// Auto-recovery
|
|
471
|
+
await rollback.performAutoRecovery(failureType, context);
|
|
472
|
+
```
|
|
473
|
+
|
|
474
|
+
### AtomicOperation
|
|
475
|
+
|
|
476
|
+
```javascript
|
|
477
|
+
const atomicOp = createAtomicOperation(rollbackSystem, 'operation-name');
|
|
478
|
+
|
|
479
|
+
await atomicOp.begin();
|
|
480
|
+
try {
|
|
481
|
+
// Perform operations
|
|
482
|
+
await atomicOp.commit();
|
|
483
|
+
} catch (error) {
|
|
484
|
+
await atomicOp.rollback();
|
|
485
|
+
}
|
|
486
|
+
```
|
|
487
|
+
|
|
488
|
+
This validation and rollback system ensures that SPARC initialization is safe, reliable, and recoverable, providing confidence for users and maintaining system integrity even in failure scenarios.
|