0xray 4.0.39 → 4.0.40
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/.grok-plugin/plugin.json +1 -1
- package/.xray/features.json +1 -1
- package/dist/CHANGELOG.md +13 -0
- package/dist/integrations/hooks/goggles-planes.json +1 -1
- package/dist/integrations/openclaw/plugin/xray-pre-tool/package.json +1 -1
- package/docs-site/docs/plates/activity-log.md +1 -1
- package/docs-site/docs/plates/cursor-compact.md +1 -1
- package/docs-site/docs/plates/grok-compact.md +1 -1
- package/docs-site/docs/plates/grokbot.md +1 -1
- package/docs-site/docs/plates/house.md +1 -1
- package/docs-site/docs/plates/index.md +1 -1
- package/docs-site/docs/plates/inference-files.md +1 -1
- package/docs-site/docs/plates/kept-line.md +1 -1
- package/docs-site/docs/plates/lens-gate.md +1 -1
- package/docs-site/docs/plates/lens-page.md +1 -1
- package/docs-site/docs/plates/live-mesh.md +41 -0
- package/docs-site/docs/plates/notes-page.md +1 -1
- package/docs-site/docs/plates/package-face.md +1 -1
- package/docs-site/docs/plates/payload-heat.md +1 -1
- package/docs-site/docs/plates/pickup-stamp.md +1 -1
- package/docs-site/docs/plates/pre-tool.md +1 -1
- package/docs-site/docs/plates/record-map.md +1 -1
- package/docs-site/docs/plates/reflection-page.md +1 -1
- package/docs-site/docs/plates/review.md +1 -1
- package/docs-site/docs/plates/session-capture.md +1 -1
- package/docs-site/docs/plates/site-manual.md +1 -1
- package/docs-site/docs/plates/stamp-plate.md +1 -1
- package/docs-site/docs/plates/station-card.md +1 -1
- package/docs-site/docs/plates/station-heat.md +1 -1
- package/docs-site/docs/plates/suit-organs.md +1 -1
- package/docs-site/docs/plates/suit-settings.md +1 -1
- package/docs-site/docs/plates/suit-wear.md +1 -1
- package/docs-site/docs/plates/trail-state.md +1 -1
- package/docs-site/docs/plates/work-fresh.md +1 -1
- package/docs-site/docs/plates/write-home.md +1 -1
- package/package.json +2 -1
- package/scripts/node/playwright-smoke-server.cjs +27 -0
- package/src/integrations/openclaw/plugin/xray-pre-tool/package.json +1 -1
- package/vendor/@0xray/repertoire/dist/orchestrator-bridge/RepertoireOrchestratorBridge.js +4 -1
- package/vendor/@0xray/repertoire/dist/paths.js +3 -0
- package/xray/features.json +1 -1
- package/.opencode/agents/api-design.yml +0 -31
- package/.opencode/agents/architect.yml +0 -15
- package/.opencode/agents/architecture-patterns.yml +0 -14
- package/.opencode/agents/auto-format.yml +0 -14
- package/.opencode/agents/backend-engineer.yml +0 -12
- package/.opencode/agents/boot-orchestrator.yml +0 -14
- package/.opencode/agents/bug-triage-specialist.yml +0 -15
- package/.opencode/agents/code-analyzer.yml +0 -12
- package/.opencode/agents/code-reviewer.yml +0 -14
- package/.opencode/agents/content-creator.yml +0 -12
- package/.opencode/agents/database-engineer.yml +0 -12
- package/.opencode/agents/devops-engineer.yml +0 -12
- package/.opencode/agents/framework-compliance-audit.yml +0 -14
- package/.opencode/agents/frontend-engineer.yml +0 -12
- package/.opencode/agents/frontend-ui-ux-engineer.yml +0 -12
- package/.opencode/agents/git-workflow.yml +0 -15
- package/.opencode/agents/growth-strategist.yml +0 -12
- package/.opencode/agents/hermes-agent.yml +0 -12
- package/.opencode/agents/inference-improve.yml +0 -12
- package/.opencode/agents/lint.yml +0 -14
- package/.opencode/agents/log-monitor.yml +0 -12
- package/.opencode/agents/mobile-developer.yml +0 -12
- package/.opencode/agents/model-health-check.yml +0 -12
- package/.opencode/agents/multimodal-looker.yml +0 -12
- package/.opencode/agents/performance-analysis.yml +0 -12
- package/.opencode/agents/performance-engineer.yml +0 -12
- package/.opencode/agents/performance-optimization.yml +0 -12
- package/.opencode/agents/processor-pipeline.yml +0 -14
- package/.opencode/agents/project-analysis.yml +0 -12
- package/.opencode/agents/refactorer.yml +0 -12
- package/.opencode/agents/researcher.yml +0 -12
- package/.opencode/agents/security-auditor.yml +0 -12
- package/.opencode/agents/security-scan.yml +0 -12
- package/.opencode/agents/seo-consultant.yml +0 -12
- package/.opencode/agents/session-management.yml +0 -12
- package/.opencode/agents/state-manager.yml +0 -12
- package/.opencode/agents/storyteller.yml +0 -12
- package/.opencode/agents/strategist.yml +0 -12
- package/.opencode/agents/tech-writer.yml +0 -12
- package/.opencode/agents/testing-best-practices.yml +0 -12
- package/.opencode/agents/testing-lead.yml +0 -12
- package/.opencode/agents/ui-ux-design.yml +0 -12
- package/.opencode/codex.codex +0 -8
- package/.opencode/commands/auto-format.md +0 -99
- package/.opencode/commands/auto-summary-capture.md +0 -90
- package/.opencode/commands/dependency-audit.md +0 -184
- package/.opencode/commands/enforcer-daily-scan.md +0 -137
- package/.opencode/commands/framework-compliance-audit.md +0 -205
- package/.opencode/commands/interactive-validator.md +0 -75
- package/.opencode/commands/job-summary-logger.md +0 -68
- package/.opencode/commands/lint.md +0 -11
- package/.opencode/commands/mode-switch.md +0 -95
- package/.opencode/commands/model-health-check.md +0 -186
- package/.opencode/commands/performance-analysis.md +0 -144
- package/.opencode/commands/pre-commit-introspection.md +0 -185
- package/.opencode/commands/pre-commit-introspection.sh +0 -133
- package/.opencode/commands/security-scan.md +0 -157
- package/.opencode/commands/sisyphus-validation.md +0 -128
- package/.opencode/commands/summary-logger.md +0 -83
- package/.opencode/enforcer-config.json +0 -282
- package/.opencode/workflows/post-deployment-audit.yml +0 -123
|
@@ -1,133 +0,0 @@
|
|
|
1
|
-
#!/bin/bash
|
|
2
|
-
|
|
3
|
-
# xray 2.0 - Pre-commit Introspection
|
|
4
|
-
# Comprehensive code quality and architecture validation
|
|
5
|
-
|
|
6
|
-
echo "🔬 xray 2.0 - Pre-commit Introspection"
|
|
7
|
-
echo "============================================================"
|
|
8
|
-
|
|
9
|
-
# Initialize analysis status
|
|
10
|
-
|
|
11
|
-
COMPLIANT=true
|
|
12
|
-
ISSUES=()
|
|
13
|
-
WARNINGS=()
|
|
14
|
-
|
|
15
|
-
# 1. Syntax and Type Safety Validation
|
|
16
|
-
|
|
17
|
-
echo "🔧 Validating syntax and type safety..."
|
|
18
|
-
if command -v npm &> /dev/null && [ -f "package.json" ]; then # TypeScript compilation check
|
|
19
|
-
if npm run typecheck > /dev/null 2>&1; then
|
|
20
|
-
echo "✅ TypeScript compilation successful"
|
|
21
|
-
else
|
|
22
|
-
ISSUES+=("TypeScript compilation errors detected")
|
|
23
|
-
COMPLIANT=false
|
|
24
|
-
echo "❌ TypeScript compilation failed"
|
|
25
|
-
fi
|
|
26
|
-
|
|
27
|
-
# ESLint validation
|
|
28
|
-
if npm run lint > /dev/null 2>&1; then
|
|
29
|
-
echo "✅ ESLint validation passed"
|
|
30
|
-
else
|
|
31
|
-
ISSUES+=("ESLint violations detected")
|
|
32
|
-
COMPLIANT=false
|
|
33
|
-
echo "❌ ESLint violations found"
|
|
34
|
-
fi
|
|
35
|
-
|
|
36
|
-
else
|
|
37
|
-
WARNINGS+=("npm/package.json not available for validation")
|
|
38
|
-
fi
|
|
39
|
-
|
|
40
|
-
# 2. Architecture Compliance Check
|
|
41
|
-
|
|
42
|
-
echo ""
|
|
43
|
-
echo "🏗️ Checking architecture compliance..."
|
|
44
|
-
|
|
45
|
-
# Check for anti-patterns
|
|
46
|
-
# Count any/unknown types
|
|
47
|
-
ANY_COUNT=$(find src -name "*.ts" -o -name "*.tsx" | xargs grep -l ":\s*\(any\|unknown\)" | wc -l)
|
|
48
|
-
if [ "$ANY_COUNT" -gt 0 ]; then
|
|
49
|
-
WARNINGS+=("Architecture warning: any|unknown types detected ($ANY_COUNT instances)")
|
|
50
|
-
echo "⚠️ Architecture warning: any|unknown types detected ($ANY_COUNT instances)"
|
|
51
|
-
else
|
|
52
|
-
echo "✅ No any/unknown type violations"
|
|
53
|
-
fi
|
|
54
|
-
|
|
55
|
-
# Count console statements
|
|
56
|
-
CONSOLE_COUNT=$(find src -name "*.ts" -o -name "*.tsx" | xargs grep -c "console\.\(log\|error\|warn\)" | awk '{sum += $1} END {print sum}')
|
|
57
|
-
if [ "$CONSOLE_COUNT" -gt 0 ]; then
|
|
58
|
-
ISSUES+=("Architecture violation: console.(log|error|warn) ($CONSOLE_COUNT instances)")
|
|
59
|
-
COMPLIANT=false
|
|
60
|
-
echo "❌ Architecture violation: console.(log|error|warn) ($CONSOLE_COUNT instances)"
|
|
61
|
-
else
|
|
62
|
-
echo "✅ No console statement violations"
|
|
63
|
-
fi
|
|
64
|
-
|
|
65
|
-
# 3. Component Size Validation
|
|
66
|
-
|
|
67
|
-
echo ""
|
|
68
|
-
echo "📏 Checking component sizes..."
|
|
69
|
-
LARGE_COMPONENTS=$(find src -name "*.tsx" -o -name "*.ts" | xargs wc -l | awk '$1 > 300 {print $2 ": " $1 " lines"}')
|
|
70
|
-
LARGE_COUNT=$(echo "$LARGE_COMPONENTS" | grep -c ":" || true)
|
|
71
|
-
if [ "$LARGE_COUNT" -gt 0 ]; then
|
|
72
|
-
WARNINGS+=("$LARGE_COUNT components exceed 300-line limit (consider refactoring)")
|
|
73
|
-
echo "⚠️ Large components detected"
|
|
74
|
-
echo "$LARGE_COMPONENTS"
|
|
75
|
-
echo "💡 Consider breaking down large components for better maintainability"
|
|
76
|
-
else
|
|
77
|
-
echo "✅ All components within size limits"
|
|
78
|
-
fi
|
|
79
|
-
|
|
80
|
-
# 4. Test Coverage Validation
|
|
81
|
-
|
|
82
|
-
echo ""
|
|
83
|
-
echo "🧪 Validating test coverage..."
|
|
84
|
-
if command -v npm &> /dev/null && [ -f "package.json" ]; then
|
|
85
|
-
if npm test -- --run > /dev/null 2>&1; then
|
|
86
|
-
echo "✅ Tests passing"
|
|
87
|
-
else
|
|
88
|
-
ISSUES+=("Test failures detected")
|
|
89
|
-
COMPLIANT=false
|
|
90
|
-
echo "❌ Test failures detected"
|
|
91
|
-
fi
|
|
92
|
-
else
|
|
93
|
-
WARNINGS+=("Test validation not available")
|
|
94
|
-
fi
|
|
95
|
-
|
|
96
|
-
# 5. Import Organization Check
|
|
97
|
-
|
|
98
|
-
echo ""
|
|
99
|
-
echo "📦 Checking import organization..."
|
|
100
|
-
# Basic import validation would go here
|
|
101
|
-
|
|
102
|
-
# 6. Commit Message Validation
|
|
103
|
-
|
|
104
|
-
echo ""
|
|
105
|
-
echo "📝 Validating commit message..."
|
|
106
|
-
# Commit message validation would go here
|
|
107
|
-
|
|
108
|
-
# 7. Code Duplication Check
|
|
109
|
-
|
|
110
|
-
echo ""
|
|
111
|
-
echo "🔄 Checking code duplication..."
|
|
112
|
-
# Code duplication analysis would go here
|
|
113
|
-
|
|
114
|
-
# Report Results
|
|
115
|
-
|
|
116
|
-
echo ""
|
|
117
|
-
echo "📊 PRE-COMMIT INTROSPECTION REPORT"
|
|
118
|
-
echo "==================================="
|
|
119
|
-
|
|
120
|
-
if [ "$COMPLIANT" = true ]; then
|
|
121
|
-
echo "✅ All validations passed"
|
|
122
|
-
exit 0
|
|
123
|
-
else
|
|
124
|
-
echo "❌ COMMIT BLOCKED"
|
|
125
|
-
echo ""
|
|
126
|
-
echo "Critical Issues:"
|
|
127
|
-
for issue in "${ISSUES[@]}"; do
|
|
128
|
-
echo " - 🔴 $issue"
|
|
129
|
-
done
|
|
130
|
-
echo ""
|
|
131
|
-
echo "Resolution required before commit"
|
|
132
|
-
exit 1
|
|
133
|
-
fi
|
|
@@ -1,157 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: security-scan
|
|
3
|
-
description: Automated security vulnerability scanning with dependency and code analysis
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
#!/bin/bash
|
|
7
|
-
|
|
8
|
-
# xray - Security Scan Hook
|
|
9
|
-
|
|
10
|
-
# Comprehensive security analysis for vulnerabilities and threats
|
|
11
|
-
|
|
12
|
-
echo "🔒 xray - Security Scan"
|
|
13
|
-
echo "================================================="
|
|
14
|
-
|
|
15
|
-
# Initialize security status
|
|
16
|
-
|
|
17
|
-
SECURE=true
|
|
18
|
-
VULNERABILITIES=()
|
|
19
|
-
THREATS=()
|
|
20
|
-
|
|
21
|
-
# 1. Dependency Vulnerability Scanning
|
|
22
|
-
|
|
23
|
-
echo "📦 Scanning dependencies for vulnerabilities..."
|
|
24
|
-
if command -v npm &> /dev/null && [ -f "package.json" ]; then # Use npm audit if available
|
|
25
|
-
if npm audit --audit-level moderate > /dev/null 2>&1; then
|
|
26
|
-
echo "✅ No critical dependency vulnerabilities found"
|
|
27
|
-
else
|
|
28
|
-
VULNERABILITIES+=("Dependency vulnerabilities detected")
|
|
29
|
-
SECURE=false
|
|
30
|
-
echo "⚠️ Dependency vulnerabilities found"
|
|
31
|
-
fi
|
|
32
|
-
|
|
33
|
-
# Check for outdated packages
|
|
34
|
-
OUTDATED=$(npm outdated 2>/dev/null | wc -l)
|
|
35
|
-
if [ "$OUTDATED" -gt 1 ]; then
|
|
36
|
-
echo "📅 $((OUTDATED-1)) packages are outdated"
|
|
37
|
-
if [ "$OUTDATED" -gt 5 ]; then
|
|
38
|
-
VULNERABILITIES+=("$((OUTDATED-1)) packages significantly outdated")
|
|
39
|
-
fi
|
|
40
|
-
fi
|
|
41
|
-
|
|
42
|
-
else
|
|
43
|
-
echo "⚠️ npm/package.json not available"
|
|
44
|
-
fi
|
|
45
|
-
|
|
46
|
-
# 2. Code Security Analysis
|
|
47
|
-
|
|
48
|
-
echo ""
|
|
49
|
-
echo "🔍 Scanning code for security issues..."
|
|
50
|
-
|
|
51
|
-
# Check for hardcoded secrets
|
|
52
|
-
|
|
53
|
-
SECRET_PATTERNS=("password" "secret" "key" "token" "api_key" "API_KEY" "PRIVATE_KEY")
|
|
54
|
-
|
|
55
|
-
FOUND_SECRETS=false
|
|
56
|
-
for pattern in "${SECRET_PATTERNS[@]}"; do
|
|
57
|
-
SECRET_FILES=$(grep -r "$pattern" --include="*.ts" --include="*.tsx" --include="*.js" --include="*.jsx" --include="*.py" --include="*.json" src/ 2>/dev/null | grep -v "node_modules" | wc -l)
|
|
58
|
-
if [ "$SECRET_FILES" -gt 0 ]; then
|
|
59
|
-
THREATS+=("Potential hardcoded secrets detected ($SECRET_FILES files)")
|
|
60
|
-
SECURE=false
|
|
61
|
-
FOUND_SECRETS=true
|
|
62
|
-
fi
|
|
63
|
-
done
|
|
64
|
-
|
|
65
|
-
if [ "$FOUND_SECRETS" = false ]; then
|
|
66
|
-
echo "✅ No hardcoded secrets detected"
|
|
67
|
-
else
|
|
68
|
-
echo "⚠️ Potential hardcoded secrets found"
|
|
69
|
-
fi
|
|
70
|
-
|
|
71
|
-
# Check for insecure practices
|
|
72
|
-
|
|
73
|
-
INSECURE_PATTERNS=("eval(" "innerHTML" "document.write" "setTimeout" "setInterval")
|
|
74
|
-
|
|
75
|
-
for pattern in "${INSECURE_PATTERNS[@]}"; do
|
|
76
|
-
INSECURE_FILES=$(grep -r "$pattern" --include="*.ts" --include="*.tsx" --include="*.js" --include="*.jsx" src/ 2>/dev/null | grep -v "node_modules" | wc -l)
|
|
77
|
-
if [ "$INSECURE_FILES" -gt 0 ]; then
|
|
78
|
-
THREATS+=("Insecure code patterns detected: $pattern ($INSECURE_FILES instances)")
|
|
79
|
-
SECURE=false
|
|
80
|
-
fi
|
|
81
|
-
done
|
|
82
|
-
|
|
83
|
-
# 3. File Permissions Check
|
|
84
|
-
|
|
85
|
-
echo ""
|
|
86
|
-
echo "🔐 Checking file permissions..."
|
|
87
|
-
if [["$OSTYPE" == "darwin"*]] || [["$OSTYPE" == "linux-gnu"*]]; then # Check for world-writable files
|
|
88
|
-
WRITABLE_FILES=$(find . -type f -perm -o+w 2>/dev/null | grep -v ".git" | grep -v "node_modules" | wc -l)
|
|
89
|
-
if [ "$WRITABLE_FILES" -gt 0 ]; then
|
|
90
|
-
THREATS+=("$WRITABLE_FILES files have world-writable permissions")
|
|
91
|
-
SECURE=false
|
|
92
|
-
echo "⚠️ World-writable files detected"
|
|
93
|
-
else
|
|
94
|
-
echo "✅ File permissions secure"
|
|
95
|
-
fi
|
|
96
|
-
fi
|
|
97
|
-
|
|
98
|
-
# 4. Environment Variable Exposure
|
|
99
|
-
|
|
100
|
-
echo ""
|
|
101
|
-
echo "🌍 Checking environment variable exposure..."
|
|
102
|
-
if [ -f ".env" ]; then
|
|
103
|
-
ENV*VARS=$(grep -c "^[A-Z*][A-Z0-9_]\*=" .env 2>/dev/null || echo "0")
|
|
104
|
-
if [ "$ENV_VARS" -gt 0 ]; then
|
|
105
|
-
echo "📄 Environment file contains $ENV_VARS variables"
|
|
106
|
-
|
|
107
|
-
# Check if .env is in .gitignore
|
|
108
|
-
if ! grep -q ".env" .gitignore 2>/dev/null; then
|
|
109
|
-
THREATS+=("Environment file not excluded from version control")
|
|
110
|
-
SECURE=false
|
|
111
|
-
echo "⚠️ .env file not in .gitignore"
|
|
112
|
-
fi
|
|
113
|
-
fi
|
|
114
|
-
|
|
115
|
-
fi
|
|
116
|
-
|
|
117
|
-
# 5. SSL/TLS Configuration Check (if applicable)
|
|
118
|
-
|
|
119
|
-
echo ""
|
|
120
|
-
echo "🔒 Checking SSL/TLS configuration..."
|
|
121
|
-
if [ -f "vite.config.ts" ] || [ -f "vite.config.js" ]; then # Check for HTTPS enforcement in dev
|
|
122
|
-
if ! grep -q "https.*true\|server.*https" vite.config.\* 2>/dev/null; then
|
|
123
|
-
echo "ℹ️ Consider enabling HTTPS in development"
|
|
124
|
-
else
|
|
125
|
-
echo "✅ HTTPS configuration detected"
|
|
126
|
-
fi
|
|
127
|
-
fi
|
|
128
|
-
|
|
129
|
-
# Report Results
|
|
130
|
-
|
|
131
|
-
echo ""
|
|
132
|
-
echo "📊 SECURITY SCAN REPORT"
|
|
133
|
-
echo "======================="
|
|
134
|
-
|
|
135
|
-
if [ "$SECURE" = true ]; then
|
|
136
|
-
echo "✅ SECURITY COMPLIANT"
|
|
137
|
-
echo "No critical security issues detected"
|
|
138
|
-
else
|
|
139
|
-
echo "❌ SECURITY VIOLATIONS DETECTED"
|
|
140
|
-
echo ""
|
|
141
|
-
echo "Vulnerabilities:"
|
|
142
|
-
for vuln in "${VULNERABILITIES[@]}"; do
|
|
143
|
-
echo " - 🔴 $vuln"
|
|
144
|
-
done
|
|
145
|
-
echo ""
|
|
146
|
-
echo "Threats:"
|
|
147
|
-
for threat in "${THREATS[@]}"; do
|
|
148
|
-
echo " - 🟡 $threat"
|
|
149
|
-
done
|
|
150
|
-
echo ""
|
|
151
|
-
echo "Immediate remediation required"
|
|
152
|
-
exit 1
|
|
153
|
-
fi
|
|
154
|
-
|
|
155
|
-
echo ""
|
|
156
|
-
echo "🛡️ xray Status: SECURE"
|
|
157
|
-
echo "Next security scan: Pre-commit and daily"
|
|
@@ -1,128 +0,0 @@
|
|
|
1
|
-
#!/bin/bash
|
|
2
|
-
|
|
3
|
-
# xray - Sisyphus Orchestrator Validation
|
|
4
|
-
|
|
5
|
-
# Tests async multi-agent coordination capabilities
|
|
6
|
-
|
|
7
|
-
echo "🎭 xray - Sisyphus Orchestrator Validation"
|
|
8
|
-
echo "==================================================================="
|
|
9
|
-
|
|
10
|
-
# Initialize orchestration test
|
|
11
|
-
|
|
12
|
-
AGENTS=("enforcer" "architect" "code-reviewer" "testing-lead" "security-auditor")
|
|
13
|
-
COORDINATION_SUCCESS=true
|
|
14
|
-
TASK_RESULTS=()
|
|
15
|
-
|
|
16
|
-
echo "🔄 Testing async multi-agent coordination..."
|
|
17
|
-
|
|
18
|
-
# Simulate task distribution (mock orchestration)
|
|
19
|
-
|
|
20
|
-
for agent in "${AGENTS[@]}"; do
|
|
21
|
-
echo "📤 Coordinating with ${agent} agent..."
|
|
22
|
-
|
|
23
|
-
# Check if agent configuration exists
|
|
24
|
-
if [ -f ".opencode/agents/${agent}.md" ]; then
|
|
25
|
-
echo "✅ ${agent} agent available for coordination"
|
|
26
|
-
TASK_RESULTS+=("${agent}:coordination_successful")
|
|
27
|
-
else
|
|
28
|
-
echo "❌ ${agent} agent configuration missing"
|
|
29
|
-
TASK_RESULTS+=("${agent}:coordination_failed")
|
|
30
|
-
COORDINATION_SUCCESS=false
|
|
31
|
-
fi
|
|
32
|
-
|
|
33
|
-
# Simulate async processing delay
|
|
34
|
-
sleep 0.1
|
|
35
|
-
|
|
36
|
-
done
|
|
37
|
-
|
|
38
|
-
echo ""
|
|
39
|
-
echo "🔗 Testing workflow pattern coordination..."
|
|
40
|
-
|
|
41
|
-
# Test complex workflow patterns
|
|
42
|
-
|
|
43
|
-
WORKFLOW_PATTERNS=("complex-refactor" "security-audit" "new-feature" "bug-fix")
|
|
44
|
-
for pattern in "${WORKFLOW_PATTERNS[@]}"; do
|
|
45
|
-
echo "🔄 Coordinating ${pattern} workflow..."
|
|
46
|
-
|
|
47
|
-
case $pattern in
|
|
48
|
-
"complex-refactor")
|
|
49
|
-
REQUIRED_AGENTS=("architect" "refactorer" "testing-lead")
|
|
50
|
-
;;
|
|
51
|
-
"security-audit")
|
|
52
|
-
REQUIRED_AGENTS=("security-auditor" "enforcer" "code-reviewer")
|
|
53
|
-
;;
|
|
54
|
-
"new-feature")
|
|
55
|
-
REQUIRED_AGENTS=("architect" "code-reviewer" "testing-lead")
|
|
56
|
-
;;
|
|
57
|
-
"bug-fix")
|
|
58
|
-
REQUIRED_AGENTS=("bug-triage-specialist" "code-reviewer" "testing-lead")
|
|
59
|
-
;;
|
|
60
|
-
esac
|
|
61
|
-
|
|
62
|
-
WORKFLOW_SUCCESS=true
|
|
63
|
-
for agent in "${REQUIRED_AGENTS[@]}"; do
|
|
64
|
-
if [ ! -f ".opencode/agents/${agent}.md" ]; then
|
|
65
|
-
WORKFLOW_SUCCESS=false
|
|
66
|
-
break
|
|
67
|
-
fi
|
|
68
|
-
done
|
|
69
|
-
|
|
70
|
-
if [ "$WORKFLOW_SUCCESS" = true ]; then
|
|
71
|
-
echo "✅ ${pattern} workflow coordination successful"
|
|
72
|
-
TASK_RESULTS+=("${pattern}_workflow:successful")
|
|
73
|
-
else
|
|
74
|
-
echo "❌ ${pattern} workflow coordination failed"
|
|
75
|
-
TASK_RESULTS+=("${pattern}_workflow:failed")
|
|
76
|
-
COORDINATION_SUCCESS=false
|
|
77
|
-
fi
|
|
78
|
-
|
|
79
|
-
done
|
|
80
|
-
|
|
81
|
-
echo ""
|
|
82
|
-
echo "📊 MCP Knowledge Skills Integration..."
|
|
83
|
-
|
|
84
|
-
# Test MCP knowledge skills integration
|
|
85
|
-
|
|
86
|
-
MCP_SKILLS=("project-analysis" "testing-strategy" "architecture-patterns" "performance-optimization" "git-workflow" "api-design")
|
|
87
|
-
for skill in "${MCP_SKILLS[@]}"; do
|
|
88
|
-
if [ -f ".opencode/mcps/${skill}.mcp.json" ]; then
|
|
89
|
-
echo "✅ MCP skill integrated: ${skill}"
|
|
90
|
-
TASK_RESULTS+=("${skill}\_mcp:integrated")
|
|
91
|
-
else
|
|
92
|
-
echo "❌ MCP skill missing: ${skill}"
|
|
93
|
-
TASK_RESULTS+=("${skill}\_mcp:missing")
|
|
94
|
-
COORDINATION_SUCCESS=false
|
|
95
|
-
fi
|
|
96
|
-
done
|
|
97
|
-
|
|
98
|
-
echo ""
|
|
99
|
-
echo "🎭 SISYPHUS ORCHESTRATION REPORT"
|
|
100
|
-
echo "==============================="
|
|
101
|
-
|
|
102
|
-
if [ "$COORDINATION_SUCCESS" = true ]; then
|
|
103
|
-
echo "✅ ASYNC SUBAGENT ORCHESTRATION SUCCESSFUL"
|
|
104
|
-
echo "All agents and workflows properly coordinated"
|
|
105
|
-
else
|
|
106
|
-
echo "❌ ORCHESTRATION ISSUES DETECTED"
|
|
107
|
-
echo ""
|
|
108
|
-
echo "Coordination failures:"
|
|
109
|
-
for result in "${TASK_RESULTS[@]}"; do
|
|
110
|
-
if [[$result == _":failed"_]] || [[$result == *":missing"*]]; then
|
|
111
|
-
echo " - 🔴 $result"
|
|
112
|
-
fi
|
|
113
|
-
done
|
|
114
|
-
echo ""
|
|
115
|
-
echo "Orchestration requires attention"
|
|
116
|
-
exit 1
|
|
117
|
-
fi
|
|
118
|
-
|
|
119
|
-
echo ""
|
|
120
|
-
echo "📈 Coordination Statistics:"
|
|
121
|
-
echo " - Agents coordinated: ${#AGENTS[@]}"
|
|
122
|
-
echo " - Workflow patterns: ${#WORKFLOW_PATTERNS[@]}"
|
|
123
|
-
echo " - MCP skills integrated: ${#MCP_SKILLS[@]}"
|
|
124
|
-
echo " - Total coordination points: $((${#AGENTS[@]} + ${#WORKFLOW_PATTERNS[@]} + ${#MCP_SKILLS[@]}))"
|
|
125
|
-
|
|
126
|
-
echo ""
|
|
127
|
-
echo "🎭 xray: SISYPHUS OPERATIONAL"
|
|
128
|
-
echo "Async multi-agent orchestration validated"
|
|
@@ -1,83 +0,0 @@
|
|
|
1
|
-
# xray - Summary Logger
|
|
2
|
-
|
|
3
|
-
# Automatically logs AI-generated summaries and analysis to REFACTORING_LOG.md
|
|
4
|
-
|
|
5
|
-
# 🚨 CRITICAL RULE: REFACTORING LOG IS APPEND-ONLY 🚨
|
|
6
|
-
|
|
7
|
-
#
|
|
8
|
-
|
|
9
|
-
# The REFACTORING_LOG.md file serves as an immutable audit trail of the project's evolution.
|
|
10
|
-
|
|
11
|
-
# This file must NEVER be edited or modified after creation - only NEW entries may be appended.
|
|
12
|
-
|
|
13
|
-
#
|
|
14
|
-
|
|
15
|
-
# ❌ NEVER edit existing entries
|
|
16
|
-
|
|
17
|
-
# ❌ NEVER delete entries
|
|
18
|
-
|
|
19
|
-
# ❌ NEVER reorder entries
|
|
20
|
-
|
|
21
|
-
# ❌ NEVER modify timestamps or content
|
|
22
|
-
|
|
23
|
-
#
|
|
24
|
-
|
|
25
|
-
# ✅ ONLY append new entries to the end
|
|
26
|
-
|
|
27
|
-
# ✅ ONLY add new information, never change old information
|
|
28
|
-
|
|
29
|
-
# ✅ ONLY use this automated logging system for consistency
|
|
30
|
-
|
|
31
|
-
#
|
|
32
|
-
|
|
33
|
-
# This ensures the refactoring log remains a reliable, immutable record of all changes.
|
|
34
|
-
|
|
35
|
-
# If you need to correct information, append a new entry documenting the correction.
|
|
36
|
-
|
|
37
|
-
#
|
|
38
|
-
|
|
39
|
-
# 🚨 VIOLATION OF THIS RULE WILL BREAK THE PROJECT'S HISTORICAL RECORD 🚨
|
|
40
|
-
|
|
41
|
-
echo "📝 xray - Summary Logger" >&2
|
|
42
|
-
echo "====================================" >&2
|
|
43
|
-
|
|
44
|
-
# Get script directory and project root
|
|
45
|
-
|
|
46
|
-
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
|
47
|
-
PROJECT_ROOT="$(cd "${SCRIPT_DIR}/../.." && pwd)"
|
|
48
|
-
REFACTORING_LOG="${PROJECT_ROOT}/docs/REFACTORING_LOG.md"
|
|
49
|
-
|
|
50
|
-
# Check if summary content is provided via environment variable or stdin (XRAY_ primary)
|
|
51
|
-
|
|
52
|
-
if [ -n "$XRAY_SUMMARY_CONTENT" ]; then
|
|
53
|
-
SUMMARY_CONTENT="$XRAY_SUMMARY_CONTENT"
|
|
54
|
-
elif [ -n "$XRAY_SUMMARY_CONTENT" ]; then
|
|
55
|
-
SUMMARY_CONTENT="$XRAY_SUMMARY_CONTENT"
|
|
56
|
-
elif [ ! -t 0 ]; then
|
|
57
|
-
# Read from stdin
|
|
58
|
-
SUMMARY_CONTENT=$(cat)
|
|
59
|
-
else
|
|
60
|
-
echo "❌ No summary content provided. Use XRAY_SUMMARY_CONTENT environment variable or pipe content."
|
|
61
|
-
echo "Usage:"
|
|
62
|
-
echo " export XRAY_SUMMARY_CONTENT='summary content' && bash .opencode/commands/summary-logger.md"
|
|
63
|
-
echo " echo 'summary content' | bash .opencode/commands/summary-logger.md"
|
|
64
|
-
exit 1
|
|
65
|
-
fi
|
|
66
|
-
|
|
67
|
-
# Validate REFACTORING_LOG.md exists
|
|
68
|
-
|
|
69
|
-
if [ ! -f "$REFACTORING_LOG" ]; then
|
|
70
|
-
echo "❌ $REFACTORING_LOG not found"
|
|
71
|
-
exit 1
|
|
72
|
-
fi
|
|
73
|
-
|
|
74
|
-
# Generate timestamp
|
|
75
|
-
|
|
76
|
-
TIMESTAMP=$(date '+%B %Y')
|
|
77
|
-
|
|
78
|
-
# Log raw content directly without wrapper
|
|
79
|
-
|
|
80
|
-
echo "$SUMMARY_CONTENT" >> "$REFACTORING_LOG"
|
|
81
|
-
|
|
82
|
-
echo "✅ Summary successfully logged to docs/REFACTORING_LOG.md"
|
|
83
|
-
echo "📊 Entry added with timestamp: $(date '+%Y-%m-%d %H:%M:%S')"
|