0xray 4.0.40 โ 4.0.41
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/.opencode/agents/api-design.yml +31 -0
- package/.opencode/agents/architect.yml +15 -0
- package/.opencode/agents/architecture-patterns.yml +14 -0
- package/.opencode/agents/auto-format.yml +14 -0
- package/.opencode/agents/backend-engineer.yml +12 -0
- package/.opencode/agents/boot-orchestrator.yml +14 -0
- package/.opencode/agents/bug-triage-specialist.yml +15 -0
- package/.opencode/agents/code-analyzer.yml +12 -0
- package/.opencode/agents/code-reviewer.yml +14 -0
- package/.opencode/agents/content-creator.yml +12 -0
- package/.opencode/agents/database-engineer.yml +12 -0
- package/.opencode/agents/devops-engineer.yml +12 -0
- package/.opencode/agents/framework-compliance-audit.yml +14 -0
- package/.opencode/agents/frontend-engineer.yml +12 -0
- package/.opencode/agents/frontend-ui-ux-engineer.yml +12 -0
- package/.opencode/agents/git-workflow.yml +15 -0
- package/.opencode/agents/growth-strategist.yml +12 -0
- package/.opencode/agents/hermes-agent.yml +12 -0
- package/.opencode/agents/inference-improve.yml +12 -0
- package/.opencode/agents/lint.yml +14 -0
- package/.opencode/agents/log-monitor.yml +12 -0
- package/.opencode/agents/mobile-developer.yml +12 -0
- package/.opencode/agents/model-health-check.yml +12 -0
- package/.opencode/agents/multimodal-looker.yml +12 -0
- package/.opencode/agents/performance-analysis.yml +12 -0
- package/.opencode/agents/performance-engineer.yml +12 -0
- package/.opencode/agents/performance-optimization.yml +12 -0
- package/.opencode/agents/processor-pipeline.yml +14 -0
- package/.opencode/agents/project-analysis.yml +12 -0
- package/.opencode/agents/refactorer.yml +12 -0
- package/.opencode/agents/researcher.yml +12 -0
- package/.opencode/agents/security-auditor.yml +12 -0
- package/.opencode/agents/security-scan.yml +12 -0
- package/.opencode/agents/seo-consultant.yml +12 -0
- package/.opencode/agents/session-management.yml +12 -0
- package/.opencode/agents/state-manager.yml +12 -0
- package/.opencode/agents/storyteller.yml +12 -0
- package/.opencode/agents/strategist.yml +12 -0
- package/.opencode/agents/tech-writer.yml +12 -0
- package/.opencode/agents/testing-best-practices.yml +12 -0
- package/.opencode/agents/testing-lead.yml +12 -0
- package/.opencode/agents/ui-ux-design.yml +12 -0
- package/.opencode/codex.codex +8 -0
- package/.opencode/commands/auto-format.md +99 -0
- package/.opencode/commands/auto-summary-capture.md +90 -0
- package/.opencode/commands/dependency-audit.md +184 -0
- package/.opencode/commands/enforcer-daily-scan.md +137 -0
- package/.opencode/commands/framework-compliance-audit.md +205 -0
- package/.opencode/commands/interactive-validator.md +75 -0
- package/.opencode/commands/job-summary-logger.md +68 -0
- package/.opencode/commands/lint.md +11 -0
- package/.opencode/commands/mode-switch.md +95 -0
- package/.opencode/commands/model-health-check.md +186 -0
- package/.opencode/commands/performance-analysis.md +144 -0
- package/.opencode/commands/pre-commit-introspection.md +185 -0
- package/.opencode/commands/pre-commit-introspection.sh +133 -0
- package/.opencode/commands/security-scan.md +157 -0
- package/.opencode/commands/sisyphus-validation.md +128 -0
- package/.opencode/commands/summary-logger.md +83 -0
- package/.opencode/enforcer-config.json +282 -0
- package/.opencode/workflows/post-deployment-audit.yml +123 -0
- package/.xray/features.json +1 -1
- package/dist/CHANGELOG.md +16 -0
- package/dist/integrations/grok/hooks/grok-hook-utils.js +21 -1
- package/dist/integrations/grok/hooks/session-start.js +2 -20
- package/dist/integrations/hooks/goggles-mcp.mjs +36 -4
- package/dist/integrations/hooks/goggles-pipeline.mjs +55 -15
- package/dist/integrations/hooks/goggles-planes.json +9 -3
- package/dist/integrations/hooks/plates.cjs +22 -0
- package/dist/integrations/hooks/session-note-index.cjs +298 -0
- package/dist/integrations/hooks/session-note-index.mjs +22 -0
- package/dist/integrations/hooks/sleeve.cjs +335 -0
- package/dist/integrations/hooks/sleeve.mjs +18 -0
- package/dist/integrations/hooks/station-hook-runtime.cjs +205 -9
- package/dist/integrations/hooks/wake-cascade.cjs +102 -0
- package/dist/integrations/hooks/wake-cascade.mjs +16 -0
- package/dist/integrations/openclaw/plugin/xray-pre-tool/package.json +1 -1
- package/dist/memory-routing/plates.d.ts +1 -1
- package/dist/memory-routing/plates.js +1 -0
- package/docs-site/docs/plates/activity-log.md +1 -1
- package/docs-site/docs/plates/boot.md +2 -0
- package/docs-site/docs/plates/centrifuge.md +30 -0
- package/docs-site/docs/plates/cursor-compact.md +1 -1
- package/docs-site/docs/plates/glossary.md +1 -2
- package/docs-site/docs/plates/goggles.md +4 -0
- package/docs-site/docs/plates/governance.md +2 -0
- package/docs-site/docs/plates/grok-compact.md +1 -1
- package/docs-site/docs/plates/grokbot.md +1 -1
- package/docs-site/docs/plates/host-pack.md +2 -0
- package/docs-site/docs/plates/house.md +1 -1
- package/docs-site/docs/plates/index.md +3 -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/kits.md +2 -0
- 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 +1 -1
- package/docs-site/docs/plates/memory-recall.md +4 -0
- package/docs-site/docs/plates/notes-page.md +2 -1
- package/docs-site/docs/plates/orchestration.md +2 -0
- 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/processor.md +2 -0
- package/docs-site/docs/plates/record-map.md +2 -1
- package/docs-site/docs/plates/reflection-page.md +1 -1
- package/docs-site/docs/plates/reporting.md +2 -0
- package/docs-site/docs/plates/review.md +1 -1
- package/docs-site/docs/plates/routing.md +2 -0
- 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 +4 -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 +3 -1
- package/docs-site/docs/plates/suit.md +2 -0
- 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 +1 -1
- package/scripts/node/bridge-mcp-wiring.cjs +37 -4
- package/scripts/node/install-bridges.cjs +172 -19
- package/scripts/node/setup.cjs +2 -46
- package/src/integrations/openclaw/plugin/xray-pre-tool/package.json +1 -1
- package/xray/features.json +1 -1
|
@@ -0,0 +1,128 @@
|
|
|
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"
|
|
@@ -0,0 +1,83 @@
|
|
|
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')"
|
|
@@ -0,0 +1,282 @@
|
|
|
1
|
+
{
|
|
2
|
+
"description": "Codex-compliant framework configuration",
|
|
3
|
+
"thresholds": {
|
|
4
|
+
"bundleSize": {
|
|
5
|
+
"maxSize": "3MB",
|
|
6
|
+
"warningThreshold": "2.5MB",
|
|
7
|
+
"criticalThreshold": "3MB",
|
|
8
|
+
"optimizationTarget": "2.5MB"
|
|
9
|
+
},
|
|
10
|
+
"testCoverage": {
|
|
11
|
+
"minPercentage": 10,
|
|
12
|
+
"targetPercentage": 50,
|
|
13
|
+
"criticalThreshold": 5,
|
|
14
|
+
"progressiveTarget": 25
|
|
15
|
+
},
|
|
16
|
+
"codeDuplication": {
|
|
17
|
+
"maxPercentage": 5,
|
|
18
|
+
"warningThreshold": 3,
|
|
19
|
+
"criticalThreshold": 7
|
|
20
|
+
},
|
|
21
|
+
"componentSize": {
|
|
22
|
+
"maxLines": 300,
|
|
23
|
+
"warningThreshold": 200,
|
|
24
|
+
"criticalThreshold": 400
|
|
25
|
+
},
|
|
26
|
+
"hookComplexity": {
|
|
27
|
+
"maxResponsibilities": 3,
|
|
28
|
+
"warningThreshold": 2
|
|
29
|
+
},
|
|
30
|
+
"circularDependencies": {
|
|
31
|
+
"maxAllowed": 0,
|
|
32
|
+
"warningThreshold": 1
|
|
33
|
+
},
|
|
34
|
+
"typeSafety": {
|
|
35
|
+
"strictMode": false,
|
|
36
|
+
"anyTypeLimit": 10,
|
|
37
|
+
"unknownTypeLimit": 5
|
|
38
|
+
},
|
|
39
|
+
"security": {
|
|
40
|
+
"vulnerabilityLevel": "moderate",
|
|
41
|
+
"maxOutdatedPackages": 10,
|
|
42
|
+
"requireHttps": true
|
|
43
|
+
},
|
|
44
|
+
"automation": {
|
|
45
|
+
"hooks": {
|
|
46
|
+
"preCommit": [
|
|
47
|
+
"pre-commit-introspection"
|
|
48
|
+
],
|
|
49
|
+
"postCommit": [
|
|
50
|
+
"auto-format"
|
|
51
|
+
],
|
|
52
|
+
"daily": [
|
|
53
|
+
"enforcer-daily-scan"
|
|
54
|
+
],
|
|
55
|
+
"security": [
|
|
56
|
+
"security-scan"
|
|
57
|
+
],
|
|
58
|
+
"deployment": [
|
|
59
|
+
"post-deployment-audit"
|
|
60
|
+
]
|
|
61
|
+
},
|
|
62
|
+
"workflows": {
|
|
63
|
+
"ci": [
|
|
64
|
+
"lint",
|
|
65
|
+
"typecheck",
|
|
66
|
+
"test",
|
|
67
|
+
"security-scan"
|
|
68
|
+
],
|
|
69
|
+
"cd": [
|
|
70
|
+
"build",
|
|
71
|
+
"post-deployment-audit"
|
|
72
|
+
],
|
|
73
|
+
"daily": [
|
|
74
|
+
"enforcer-daily-scan",
|
|
75
|
+
"security-scan"
|
|
76
|
+
]
|
|
77
|
+
}
|
|
78
|
+
},
|
|
79
|
+
"agents": {
|
|
80
|
+
"enforcer": {
|
|
81
|
+
"capabilities": [
|
|
82
|
+
"compliance-monitoring",
|
|
83
|
+
"threshold-enforcement",
|
|
84
|
+
"automation-orchestration"
|
|
85
|
+
],
|
|
86
|
+
"triggers": [
|
|
87
|
+
"file-changes",
|
|
88
|
+
"schedule",
|
|
89
|
+
"deployment"
|
|
90
|
+
]
|
|
91
|
+
},
|
|
92
|
+
"architect": {
|
|
93
|
+
"capabilities": [
|
|
94
|
+
"design-review",
|
|
95
|
+
"architecture-validation",
|
|
96
|
+
"dependency-analysis"
|
|
97
|
+
],
|
|
98
|
+
"triggers": [
|
|
99
|
+
"code-reviews",
|
|
100
|
+
"new-features"
|
|
101
|
+
]
|
|
102
|
+
},
|
|
103
|
+
"orchestrator": {
|
|
104
|
+
"capabilities": [
|
|
105
|
+
"task-coordination",
|
|
106
|
+
"multi-agent-orchestration",
|
|
107
|
+
"workflow-management"
|
|
108
|
+
],
|
|
109
|
+
"triggers": [
|
|
110
|
+
"complex-tasks",
|
|
111
|
+
"integration-events"
|
|
112
|
+
]
|
|
113
|
+
},
|
|
114
|
+
"bug-triage-specialist": {
|
|
115
|
+
"capabilities": [
|
|
116
|
+
"error-analysis",
|
|
117
|
+
"root-cause-identification",
|
|
118
|
+
"fix-suggestions"
|
|
119
|
+
],
|
|
120
|
+
"triggers": [
|
|
121
|
+
"test-failures",
|
|
122
|
+
"error-reports"
|
|
123
|
+
]
|
|
124
|
+
},
|
|
125
|
+
"code-reviewer": {
|
|
126
|
+
"capabilities": [
|
|
127
|
+
"code-quality-assessment",
|
|
128
|
+
"best-practice-validation",
|
|
129
|
+
"security-review"
|
|
130
|
+
],
|
|
131
|
+
"triggers": [
|
|
132
|
+
"pull-requests",
|
|
133
|
+
"code-commits"
|
|
134
|
+
]
|
|
135
|
+
},
|
|
136
|
+
"refactorer": {
|
|
137
|
+
"capabilities": [
|
|
138
|
+
"code-modernization",
|
|
139
|
+
"debt-reduction",
|
|
140
|
+
"consolidation"
|
|
141
|
+
],
|
|
142
|
+
"triggers": [
|
|
143
|
+
"legacy-code-detection",
|
|
144
|
+
"complexity-alerts"
|
|
145
|
+
]
|
|
146
|
+
},
|
|
147
|
+
"security-auditor": {
|
|
148
|
+
"capabilities": [
|
|
149
|
+
"vulnerability-detection",
|
|
150
|
+
"threat-analysis",
|
|
151
|
+
"security-validation"
|
|
152
|
+
],
|
|
153
|
+
"triggers": [
|
|
154
|
+
"security-scans",
|
|
155
|
+
"dependency-updates"
|
|
156
|
+
]
|
|
157
|
+
},
|
|
158
|
+
"testing-lead": {
|
|
159
|
+
"capabilities": [
|
|
160
|
+
"test-strategy-design",
|
|
161
|
+
"coverage-optimization",
|
|
162
|
+
"behavioral-testing"
|
|
163
|
+
],
|
|
164
|
+
"triggers": [
|
|
165
|
+
"new-features",
|
|
166
|
+
"code-changes"
|
|
167
|
+
]
|
|
168
|
+
}
|
|
169
|
+
},
|
|
170
|
+
"mcps": {
|
|
171
|
+
"project-analysis": {
|
|
172
|
+
"description": "Codebase structure and pattern analysis",
|
|
173
|
+
"capabilities": [
|
|
174
|
+
"structure-mapping",
|
|
175
|
+
"pattern-recognition",
|
|
176
|
+
"complexity-analysis"
|
|
177
|
+
]
|
|
178
|
+
},
|
|
179
|
+
"testing-strategy": {
|
|
180
|
+
"description": "Test approach planning and coverage optimization",
|
|
181
|
+
"capabilities": [
|
|
182
|
+
"test-planning",
|
|
183
|
+
"coverage-analysis",
|
|
184
|
+
"quality-assessment"
|
|
185
|
+
]
|
|
186
|
+
},
|
|
187
|
+
"architecture-patterns": {
|
|
188
|
+
"description": "System design guidance and pattern validation",
|
|
189
|
+
"capabilities": [
|
|
190
|
+
"design-review",
|
|
191
|
+
"pattern-matching",
|
|
192
|
+
"architecture-validation"
|
|
193
|
+
]
|
|
194
|
+
},
|
|
195
|
+
"performance-optimization": {
|
|
196
|
+
"description": "Speed and bottleneck identification",
|
|
197
|
+
"capabilities": [
|
|
198
|
+
"performance-analysis",
|
|
199
|
+
"bottleneck-detection",
|
|
200
|
+
"optimization-suggestions"
|
|
201
|
+
]
|
|
202
|
+
},
|
|
203
|
+
"git-workflow": {
|
|
204
|
+
"description": "Version control best practices and workflow optimization",
|
|
205
|
+
"capabilities": [
|
|
206
|
+
"commit-analysis",
|
|
207
|
+
"branch-strategy",
|
|
208
|
+
"merge-conflict-resolution"
|
|
209
|
+
]
|
|
210
|
+
},
|
|
211
|
+
"api-design": {
|
|
212
|
+
"description": "REST/GraphQL patterns and standards validation",
|
|
213
|
+
"capabilities": [
|
|
214
|
+
"api-review",
|
|
215
|
+
"standard-compliance",
|
|
216
|
+
"endpoint-validation"
|
|
217
|
+
]
|
|
218
|
+
}
|
|
219
|
+
},
|
|
220
|
+
"codex": {
|
|
221
|
+
"terms": [
|
|
222
|
+
1,
|
|
223
|
+
2,
|
|
224
|
+
3,
|
|
225
|
+
4,
|
|
226
|
+
5,
|
|
227
|
+
6,
|
|
228
|
+
7,
|
|
229
|
+
8,
|
|
230
|
+
9,
|
|
231
|
+
10,
|
|
232
|
+
15,
|
|
233
|
+
24,
|
|
234
|
+
29,
|
|
235
|
+
32,
|
|
236
|
+
38,
|
|
237
|
+
42,
|
|
238
|
+
43
|
|
239
|
+
],
|
|
240
|
+
"principles": [
|
|
241
|
+
"progressive-prod-ready-code",
|
|
242
|
+
"no-patches-boiler-stubs",
|
|
243
|
+
"surgical-fixes-only",
|
|
244
|
+
"incremental-phases-with-tracking",
|
|
245
|
+
"resolve-all-errors",
|
|
246
|
+
"prevent-infinite-loops",
|
|
247
|
+
"single-source-of-truth",
|
|
248
|
+
"batched-introspection-cycles",
|
|
249
|
+
"zero-tolerance-code-rot",
|
|
250
|
+
"90-percent-runtime-error-prevention"
|
|
251
|
+
]
|
|
252
|
+
},
|
|
253
|
+
"project": {
|
|
254
|
+
"name": "Credible UI",
|
|
255
|
+
"type": "React/TypeScript",
|
|
256
|
+
"framework": "Vite + React + shadcn/ui",
|
|
257
|
+
"blockchain": "Sui",
|
|
258
|
+
"testing": "Vitest + Playwright",
|
|
259
|
+
"deployment": "Vercel"
|
|
260
|
+
},
|
|
261
|
+
"optimization_recommendations": {
|
|
262
|
+
"immediate": [
|
|
263
|
+
"Increase test coverage from 0% to minimum 10% threshold",
|
|
264
|
+
"Optimize bundle size from 2.5MB toward 2MB target",
|
|
265
|
+
"Implement lazy loading for calculator components"
|
|
266
|
+
],
|
|
267
|
+
"short_term": [
|
|
268
|
+
"Add comprehensive error boundaries (currently 0% coverage)",
|
|
269
|
+
"Implement proper test suites for all 135 TypeScript files",
|
|
270
|
+
"Reduce component sizes (39 components exceed 300-line limit)"
|
|
271
|
+
],
|
|
272
|
+
"performance_status": "OPTIMIZATION_COMPLETE",
|
|
273
|
+
"monitoring_enabled": true
|
|
274
|
+
}
|
|
275
|
+
},
|
|
276
|
+
"disabled_agents": [
|
|
277
|
+
"frontend-ui-ux-engineer",
|
|
278
|
+
"tech-writer",
|
|
279
|
+
"strategist",
|
|
280
|
+
"multimodal-looker"
|
|
281
|
+
]
|
|
282
|
+
}
|
|
@@ -0,0 +1,123 @@
|
|
|
1
|
+
name: Post-Deployment Audit
|
|
2
|
+
description: Comprehensive post-deployment validation and monitoring workflow
|
|
3
|
+
|
|
4
|
+
# Universal Development Framework - Post-Deployment Audit Workflow
|
|
5
|
+
# Automated validation pipeline triggered after successful deployments
|
|
6
|
+
|
|
7
|
+
on:
|
|
8
|
+
deployment:
|
|
9
|
+
types: [completed]
|
|
10
|
+
workflow_dispatch:
|
|
11
|
+
inputs:
|
|
12
|
+
environment:
|
|
13
|
+
description: "Target environment"
|
|
14
|
+
required: true
|
|
15
|
+
default: "production"
|
|
16
|
+
type: choice
|
|
17
|
+
options:
|
|
18
|
+
- production
|
|
19
|
+
- staging
|
|
20
|
+
- development
|
|
21
|
+
|
|
22
|
+
jobs:
|
|
23
|
+
post-deployment-audit:
|
|
24
|
+
runs-on: ubuntu-latest
|
|
25
|
+
environment: ${{ inputs.environment || 'production' }}
|
|
26
|
+
|
|
27
|
+
steps:
|
|
28
|
+
# 1. Environment Validation
|
|
29
|
+
- name: Validate Deployment Environment
|
|
30
|
+
run: |
|
|
31
|
+
echo "๐ Validating deployment environment..."
|
|
32
|
+
echo "Environment: ${{ inputs.environment || 'production' }}"
|
|
33
|
+
echo "Deployment status: ${{ github.event.deployment.status }}"
|
|
34
|
+
echo "โ
Environment validation complete"
|
|
35
|
+
|
|
36
|
+
# 2. Health Check Validation
|
|
37
|
+
- name: Application Health Check
|
|
38
|
+
run: |
|
|
39
|
+
echo "๐ฅ Performing application health checks..."
|
|
40
|
+
# Implement health check logic here
|
|
41
|
+
# Check API endpoints, database connections, etc.
|
|
42
|
+
echo "โ
Health checks passed"
|
|
43
|
+
|
|
44
|
+
# 3. Performance Validation
|
|
45
|
+
- name: Performance Benchmarking
|
|
46
|
+
run: |
|
|
47
|
+
echo "โก Running performance benchmarks..."
|
|
48
|
+
# Implement Lighthouse CI or similar
|
|
49
|
+
# Check Core Web Vitals, bundle sizes, etc.
|
|
50
|
+
echo "โ
Performance benchmarks within thresholds"
|
|
51
|
+
|
|
52
|
+
# 4. Security Post-Deployment Scan
|
|
53
|
+
- name: Security Validation
|
|
54
|
+
run: |
|
|
55
|
+
echo "๐ Executing post-deployment security scan..."
|
|
56
|
+
# Run security scans on deployed environment
|
|
57
|
+
# Check for exposed secrets, misconfigurations, etc.
|
|
58
|
+
echo "โ
Security validation complete"
|
|
59
|
+
|
|
60
|
+
# 5. Integration Testing
|
|
61
|
+
- name: Integration Test Suite
|
|
62
|
+
run: |
|
|
63
|
+
echo "๐ Running integration tests..."
|
|
64
|
+
# Execute integration tests against deployed environment
|
|
65
|
+
# API tests, end-to-end flows, etc.
|
|
66
|
+
echo "โ
Integration tests passed"
|
|
67
|
+
|
|
68
|
+
# 6. Monitoring Setup Validation
|
|
69
|
+
- name: Monitoring Configuration Check
|
|
70
|
+
run: |
|
|
71
|
+
echo "๐ Validating monitoring configuration..."
|
|
72
|
+
# Check error tracking, analytics, logging setup
|
|
73
|
+
echo "โ
Monitoring configuration verified"
|
|
74
|
+
|
|
75
|
+
# 7. Rollback Readiness Assessment
|
|
76
|
+
- name: Rollback Plan Validation
|
|
77
|
+
run: |
|
|
78
|
+
echo "๐ Assessing rollback readiness..."
|
|
79
|
+
# Verify rollback procedures and backup integrity
|
|
80
|
+
echo "โ
Rollback procedures validated"
|
|
81
|
+
|
|
82
|
+
# 8. Compliance Audit
|
|
83
|
+
- name: Framework Compliance Audit
|
|
84
|
+
run: |
|
|
85
|
+
echo "๐ Executing framework compliance audit..."
|
|
86
|
+
# Run framework-specific compliance checks
|
|
87
|
+
# Code quality, security standards, performance metrics
|
|
88
|
+
echo "โ
Framework compliance verified"
|
|
89
|
+
|
|
90
|
+
notification:
|
|
91
|
+
needs: post-deployment-audit
|
|
92
|
+
runs-on: ubuntu-latest
|
|
93
|
+
if: always()
|
|
94
|
+
|
|
95
|
+
steps:
|
|
96
|
+
- name: Deployment Status Notification
|
|
97
|
+
run: |
|
|
98
|
+
echo "๐ข Deployment Audit Complete"
|
|
99
|
+
if [ "${{ needs.post-deployment-audit.result }}" = "success" ]; then
|
|
100
|
+
echo "โ
Deployment successful - all validations passed"
|
|
101
|
+
# Send success notifications
|
|
102
|
+
else
|
|
103
|
+
echo "โ Deployment issues detected - review required"
|
|
104
|
+
# Send failure notifications and alerts
|
|
105
|
+
fi
|
|
106
|
+
|
|
107
|
+
cleanup:
|
|
108
|
+
needs: [post-deployment-audit, notification]
|
|
109
|
+
runs-on: ubuntu-latest
|
|
110
|
+
if: always()
|
|
111
|
+
|
|
112
|
+
steps:
|
|
113
|
+
- name: Audit Log Archival
|
|
114
|
+
run: |
|
|
115
|
+
echo "๐ Archiving audit logs..."
|
|
116
|
+
# Archive logs, metrics, and audit results
|
|
117
|
+
echo "โ
Audit logs archived"
|
|
118
|
+
|
|
119
|
+
- name: Temporary Resource Cleanup
|
|
120
|
+
run: |
|
|
121
|
+
echo "๐งน Cleaning up temporary resources..."
|
|
122
|
+
# Clean up any temporary resources created during audit
|
|
123
|
+
echo "โ
Cleanup complete"
|
package/.xray/features.json
CHANGED
package/dist/CHANGELOG.md
CHANGED
|
@@ -42,6 +42,22 @@ The format is based on [Conventional Commits](https://www.conventionalcommits.or
|
|
|
42
42
|
- Archive root `integrations/` costume SKILL dump โ `docs/archive/integrations-costume/`. Live wear is `src/integrations`.
|
|
43
43
|
- Archive root `commands/` stale copy โ `docs/archive/commands-copy/`. Live wear is `src/opencode/commands`.
|
|
44
44
|
|
|
45
|
+
## [4.0.41] - 2026-10-07
|
|
46
|
+
|
|
47
|
+
### ๐ Changes
|
|
48
|
+
|
|
49
|
+
- Wake cascade. Station and the notes page stay on the station module. Heat writes `Cascade: record-map ยท notes N current` on the card. A memory-recall look returns that plane, the matched law names, and the current lines from the session-note index beside the laws.
|
|
50
|
+
- Session notes sit in `.xray/state/repertoire/session-notes.json` beside the laws. A replaced note stays history. The short index returns the current line. A stale page does not revive a replaced line.
|
|
51
|
+
- `Sleeve: on` means the previous ticket came back, the worn plate matched the package, the previous ticket matched the working record, and inspect passed. Session start and compact run that check. The card keeps the named plane. Judgement is continue, retry N, stop, or start. The same miss keeps its retry. A different ticket stops. Payments is on only when the ticket is a payment.
|
|
52
|
+
- A fresh wear fastens mill and inspect. The durable copy is staged beside the live wear. Hooks and MCP launchers are not pinned at a temporary checkout.
|
|
53
|
+
- Goggles. A checkout named `0xray` records `scripts/mjs/run-goggles-mcp.mjs`. A consumer records `node_modules/0xray`. An upgrade that removes a self-install no longer leaves the handshake on a missing file.
|
|
54
|
+
- A machine-level Grok plugin does not fail the mill and is not stored in the mill receipt. A change to the worn skills drops that pass until the next session start or compact. When the plate or the mill is the miss, that miss is the plan until the line is on again. A copied role skill whose text was edited still stops wear.
|
|
55
|
+
- A SessionStart event that carries the opening prompt stays a session start, so the check runs before that first card is read.
|
|
56
|
+
- Live page. The mesh plays in the browser, with rewind and seat images. The watch survives a dropped connection. Fleet pushes go out as packets.
|
|
57
|
+
- The Playwright release-gate smoke stays on the Playwright battery. The unit runner does not load that spec.
|
|
58
|
+
|
|
59
|
+
---
|
|
60
|
+
|
|
45
61
|
## [4.0.40] - 2026-10-05
|
|
46
62
|
|
|
47
63
|
### ๐ Changes
|
|
@@ -282,6 +282,25 @@ export function loadConferPending(root = workspaceRoot(), sessionId = null) {
|
|
|
282
282
|
}
|
|
283
283
|
}
|
|
284
284
|
|
|
285
|
+
export function resolveGrokHookEvent(event = {}, argv = process.argv, env = process.env) {
|
|
286
|
+
if (env && env.GROK_HOOK_EVENT) return env.GROK_HOOK_EVENT;
|
|
287
|
+
const flag = (argv || []).find((arg) => String(arg).startsWith('--hook-event='));
|
|
288
|
+
if (flag) return String(flag).slice('--hook-event='.length);
|
|
289
|
+
const named = String((event && (event.hookEventName || event.hook)) || '')
|
|
290
|
+
.toLowerCase()
|
|
291
|
+
.replace(/[-_\s]/g, '');
|
|
292
|
+
if (named === 'precompact') return 'pre_compact';
|
|
293
|
+
if (named === 'postcompact') return 'post_compact';
|
|
294
|
+
if (named === 'sessionstart') return 'session_start';
|
|
295
|
+
if (
|
|
296
|
+
(event && (event.prompt != null || event.userMessage != null || event.user_prompt != null)) ||
|
|
297
|
+
named === 'userpromptsubmit'
|
|
298
|
+
) {
|
|
299
|
+
return 'user_prompt_submit';
|
|
300
|
+
}
|
|
301
|
+
return 'session_start';
|
|
302
|
+
}
|
|
303
|
+
|
|
285
304
|
export function buildSessionBootPayload(root, source = '0xray/grok-session-start', extra = {}) {
|
|
286
305
|
const features = loadFeatures(root);
|
|
287
306
|
const blockingTerms = loadBlockingCodexTerms();
|
|
@@ -318,6 +337,7 @@ export function buildSessionBootPayload(root, source = '0xray/grok-session-start
|
|
|
318
337
|
...extra,
|
|
319
338
|
...heat,
|
|
320
339
|
...compactHold,
|
|
340
|
+
arrivedHook: extra && extra.hookEvent ? String(extra.hookEvent) : "",
|
|
321
341
|
hook: source,
|
|
322
342
|
source,
|
|
323
343
|
timestamp: new Date().toISOString(),
|
|
@@ -328,8 +348,8 @@ export function writeSessionBoot(root, payload) {
|
|
|
328
348
|
try {
|
|
329
349
|
const stateDir = path.join(root, '.xray', 'state');
|
|
330
350
|
fs.mkdirSync(stateDir, { recursive: true });
|
|
331
|
-
fs.writeFileSync(sessionBootPath(root), JSON.stringify(payload, null, 2));
|
|
332
351
|
writeStationMarkdown(root, payload);
|
|
352
|
+
fs.writeFileSync(sessionBootPath(root), JSON.stringify(payload, null, 2));
|
|
333
353
|
const hook = String((payload && (payload.hookEvent || payload.source)) || "");
|
|
334
354
|
if (!/compact/i.test(hook)) {
|
|
335
355
|
try {
|