v2/docs/performance/PERFORMANCE-JSON-IMPROVEMENTS.md
The performance.json file has been significantly enhanced to provide comprehensive metrics for memory operations, mode tracking, and ReasoningBank-specific performance analysis.
{
"startTime": 1760383491119,
"totalTasks": 1,
"successfulTasks": 1,
"failedTasks": 0,
"totalAgents": 0,
"activeAgents": 0,
"neuralEvents": 0
}
{
// Session Information (4 fields)
"startTime": 1760383491119,
"sessionId": "session-1760383491119",
"lastActivity": 1760383491119,
"sessionDuration": 0,
// General Task Metrics (6 fields)
"totalTasks": 1,
"successfulTasks": 1,
"failedTasks": 0,
"totalAgents": 0,
"activeAgents": 0,
"neuralEvents": 0,
// Memory Mode Tracking (5 fields)
"memoryMode": {
"reasoningbankOperations": 45,
"basicOperations": 12,
"autoModeSelections": 50,
"modeOverrides": 7,
"currentMode": "auto"
},
// Operation Type Breakdown (7 operations × 3 metrics = 21 fields)
"operations": {
"store": { "count": 20, "totalDuration": 1234, "errors": 0 },
"retrieve": { "count": 45, "totalDuration": 2345, "errors": 1 },
"query": { "count": 30, "totalDuration": 15000, "errors": 0 },
"list": { "count": 10, "totalDuration": 500, "errors": 0 },
"delete": { "count": 3, "totalDuration": 200, "errors": 0 },
"search": { "count": 25, "totalDuration": 12000, "errors": 0 },
"init": { "count": 1, "totalDuration": 500, "errors": 0 }
},
// Performance Statistics (6 fields)
"performance": {
"avgOperationDuration": 450.5,
"minOperationDuration": 10,
"maxOperationDuration": 5000,
"slowOperations": 3,
"fastOperations": 100,
"totalOperationTime": 45050
},
// Memory Storage Statistics (6 fields)
"storage": {
"totalEntries": 150,
"reasoningbankEntries": 120,
"basicEntries": 30,
"databaseSize": 2048000,
"lastBackup": null,
"growthRate": 12.5
},
// Error Tracking (4+ fields + dynamic arrays)
"errors": {
"total": 5,
"byType": { "timeout": 2, "connection": 1 },
"byOperation": { "query": 3, "store": 2 },
"recent": [
{
"operation": "query",
"type": "timeout",
"timestamp": 1760383491119,
"mode": "reasoningbank"
}
]
},
// ReasoningBank Specific Metrics (7 fields)
"reasoningbank": {
"semanticSearches": 45,
"sqlFallbacks": 12,
"embeddingGenerated": 40,
"consolidations": 3,
"avgQueryTime": 450.5,
"cacheHits": 25,
"cacheMisses": 20
}
}
Benefit: Track individual sessions and identify long-running or stale sessions
Benefit: Understand AUTO MODE effectiveness and user preferences
Each operation type (store, retrieve, query, list, delete, search, init) tracks:
Benefit: Identify which operations are most used, slowest, or most error-prone
Benefit: Identify performance bottlenecks and optimization opportunities
Benefit: Plan capacity, predict storage needs, schedule backups
Benefit: Identify error patterns, fix recurring issues, debug problems
Benefit: Optimize ReasoningBank, tune caching, understand fallback patterns
trackMemoryOperation(operationType, mode, duration, success, errorType)Track every memory operation with full context.
trackModeSelection(selectedMode, wasAutomatic)Track AUTO MODE decisions vs manual overrides.
trackReasoningBankOperation(operationType, duration, metadata)Track ReasoningBank-specific operations (semantic search, SQL fallback, cache, etc.).
updateStorageStats(totalEntries, reasoningbankEntries, basicEntries, databaseSize)Update storage statistics and calculate growth rate.
getMemoryPerformanceSummary()Get comprehensive summary with calculated metrics like:
The summary function adds calculated metrics:
{
errorRate: (totalErrors / totalOps) * 100,
fallbackRate: (sqlFallbacks / semanticSearches) * 100,
cacheHitRate: (cacheHits / (cacheHits + cacheMisses)) * 100
}
memory.js commandreasoningbank-adapter.jscat .claude-flow/metrics/performance.json
# Output: 8 basic fields
cat .claude-flow/metrics/performance.json
# Output: 95+ fields organized in 9 categories
# Or get summary with calculated metrics:
npx claude-flow memory stats
✅ Fully backward compatible
memory.js operations