lattice-orchestrator 0.7.0
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/LICENSE +201 -0
- package/README.md +58 -0
- package/config/logrotate.conf +15 -0
- package/dist/cli-parser.d.ts +11 -0
- package/dist/cli-parser.d.ts.map +1 -0
- package/dist/cli-parser.js +48 -0
- package/dist/cli-parser.js.map +1 -0
- package/dist/lattice-server.d.ts +70 -0
- package/dist/lattice-server.d.ts.map +1 -0
- package/dist/lattice-server.js +969 -0
- package/dist/lattice-server.js.map +1 -0
- package/dist/mcp-server/index.d.ts +3 -0
- package/dist/mcp-server/index.d.ts.map +1 -0
- package/dist/mcp-server/index.js +190 -0
- package/dist/mcp-server/index.js.map +1 -0
- package/dist/mcp-server/lattice-tools.d.ts +15 -0
- package/dist/mcp-server/lattice-tools.d.ts.map +1 -0
- package/dist/mcp-server/lattice-tools.js +366 -0
- package/dist/mcp-server/lattice-tools.js.map +1 -0
- package/dist/middleware/cors-setup.d.ts +7 -0
- package/dist/middleware/cors-setup.d.ts.map +1 -0
- package/dist/middleware/cors-setup.js +8 -0
- package/dist/middleware/cors-setup.js.map +1 -0
- package/dist/middleware/error-handler.d.ts +4 -0
- package/dist/middleware/error-handler.d.ts.map +1 -0
- package/dist/middleware/error-handler.js +27 -0
- package/dist/middleware/error-handler.js.map +1 -0
- package/dist/middleware/query-parser.d.ts +11 -0
- package/dist/middleware/query-parser.d.ts.map +1 -0
- package/dist/middleware/query-parser.js +68 -0
- package/dist/middleware/query-parser.js.map +1 -0
- package/dist/middleware/request-logger.d.ts +4 -0
- package/dist/middleware/request-logger.d.ts.map +1 -0
- package/dist/middleware/request-logger.js +6 -0
- package/dist/middleware/request-logger.js.map +1 -0
- package/dist/process-daemon/index.d.ts +14 -0
- package/dist/process-daemon/index.d.ts.map +1 -0
- package/dist/process-daemon/index.js +51 -0
- package/dist/process-daemon/index.js.map +1 -0
- package/dist/process-daemon/process-daemon.d.ts +101 -0
- package/dist/process-daemon/process-daemon.d.ts.map +1 -0
- package/dist/process-daemon/process-daemon.js +846 -0
- package/dist/process-daemon/process-daemon.js.map +1 -0
- package/dist/process-daemon/process-manager-client.d.ts +123 -0
- package/dist/process-daemon/process-manager-client.d.ts.map +1 -0
- package/dist/process-daemon/process-manager-client.js +329 -0
- package/dist/process-daemon/process-manager-client.js.map +1 -0
- package/dist/process-daemon/process-manager-interface.d.ts +61 -0
- package/dist/process-daemon/process-manager-interface.d.ts.map +1 -0
- package/dist/process-daemon/process-manager-interface.js +8 -0
- package/dist/process-daemon/process-manager-interface.js.map +1 -0
- package/dist/process-daemon/test-daemon.d.ts +12 -0
- package/dist/process-daemon/test-daemon.d.ts.map +1 -0
- package/dist/process-daemon/test-daemon.js +81 -0
- package/dist/process-daemon/test-daemon.js.map +1 -0
- package/dist/process-daemon/types.d.ts +97 -0
- package/dist/process-daemon/types.d.ts.map +1 -0
- package/dist/process-daemon/types.js +8 -0
- package/dist/process-daemon/types.js.map +1 -0
- package/dist/routes/analysis.routes.d.ts +13 -0
- package/dist/routes/analysis.routes.d.ts.map +1 -0
- package/dist/routes/analysis.routes.js +520 -0
- package/dist/routes/analysis.routes.js.map +1 -0
- package/dist/routes/config.routes.d.ts +4 -0
- package/dist/routes/config.routes.d.ts.map +1 -0
- package/dist/routes/config.routes.js +27 -0
- package/dist/routes/config.routes.js.map +1 -0
- package/dist/routes/conversation.routes.d.ts +43 -0
- package/dist/routes/conversation.routes.d.ts.map +1 -0
- package/dist/routes/conversation.routes.js +79 -0
- package/dist/routes/conversation.routes.js.map +1 -0
- package/dist/routes/filesystem.routes.d.ts +4 -0
- package/dist/routes/filesystem.routes.d.ts.map +1 -0
- package/dist/routes/filesystem.routes.js +86 -0
- package/dist/routes/filesystem.routes.js.map +1 -0
- package/dist/routes/insights.routes.d.ts +17 -0
- package/dist/routes/insights.routes.d.ts.map +1 -0
- package/dist/routes/insights.routes.js +633 -0
- package/dist/routes/insights.routes.js.map +1 -0
- package/dist/routes/lattice.routes.d.ts +10 -0
- package/dist/routes/lattice.routes.d.ts.map +1 -0
- package/dist/routes/lattice.routes.js +123 -0
- package/dist/routes/lattice.routes.js.map +1 -0
- package/dist/routes/license.routes.d.ts +3 -0
- package/dist/routes/license.routes.d.ts.map +1 -0
- package/dist/routes/license.routes.js +95 -0
- package/dist/routes/license.routes.js.map +1 -0
- package/dist/routes/log.routes.d.ts +3 -0
- package/dist/routes/log.routes.d.ts.map +1 -0
- package/dist/routes/log.routes.js +184 -0
- package/dist/routes/log.routes.js.map +1 -0
- package/dist/routes/pending-question.routes.d.ts +9 -0
- package/dist/routes/pending-question.routes.d.ts.map +1 -0
- package/dist/routes/pending-question.routes.js +162 -0
- package/dist/routes/pending-question.routes.js.map +1 -0
- package/dist/routes/permission.routes.d.ts +18 -0
- package/dist/routes/permission.routes.d.ts.map +1 -0
- package/dist/routes/permission.routes.js +370 -0
- package/dist/routes/permission.routes.js.map +1 -0
- package/dist/routes/process-events.routes.d.ts +9 -0
- package/dist/routes/process-events.routes.d.ts.map +1 -0
- package/dist/routes/process-events.routes.js +141 -0
- package/dist/routes/process-events.routes.js.map +1 -0
- package/dist/routes/prototype.routes.d.ts +9 -0
- package/dist/routes/prototype.routes.d.ts.map +1 -0
- package/dist/routes/prototype.routes.js +757 -0
- package/dist/routes/prototype.routes.js.map +1 -0
- package/dist/routes/question.routes.d.ts +8 -0
- package/dist/routes/question.routes.d.ts.map +1 -0
- package/dist/routes/question.routes.js +83 -0
- package/dist/routes/question.routes.js.map +1 -0
- package/dist/routes/session-control.routes.d.ts +29 -0
- package/dist/routes/session-control.routes.d.ts.map +1 -0
- package/dist/routes/session-control.routes.js +455 -0
- package/dist/routes/session-control.routes.js.map +1 -0
- package/dist/routes/session-lifecycle.routes.d.ts +21 -0
- package/dist/routes/session-lifecycle.routes.d.ts.map +1 -0
- package/dist/routes/session-lifecycle.routes.js +256 -0
- package/dist/routes/session-lifecycle.routes.js.map +1 -0
- package/dist/routes/session-query.routes.d.ts +25 -0
- package/dist/routes/session-query.routes.d.ts.map +1 -0
- package/dist/routes/session-query.routes.js +363 -0
- package/dist/routes/session-query.routes.js.map +1 -0
- package/dist/routes/session-stream.routes.d.ts +21 -0
- package/dist/routes/session-stream.routes.d.ts.map +1 -0
- package/dist/routes/session-stream.routes.js +235 -0
- package/dist/routes/session-stream.routes.js.map +1 -0
- package/dist/routes/streaming.routes.d.ts +4 -0
- package/dist/routes/streaming.routes.d.ts.map +1 -0
- package/dist/routes/streaming.routes.js +33 -0
- package/dist/routes/streaming.routes.js.map +1 -0
- package/dist/routes/system.routes.d.ts +7 -0
- package/dist/routes/system.routes.d.ts.map +1 -0
- package/dist/routes/system.routes.js +214 -0
- package/dist/routes/system.routes.js.map +1 -0
- package/dist/routes/walkthrough.routes.d.ts +19 -0
- package/dist/routes/walkthrough.routes.d.ts.map +1 -0
- package/dist/routes/walkthrough.routes.js +688 -0
- package/dist/routes/walkthrough.routes.js.map +1 -0
- package/dist/routes/working-directories.routes.d.ts +4 -0
- package/dist/routes/working-directories.routes.d.ts.map +1 -0
- package/dist/routes/working-directories.routes.js +25 -0
- package/dist/routes/working-directories.routes.js.map +1 -0
- package/dist/server.d.ts +3 -0
- package/dist/server.d.ts.map +1 -0
- package/dist/server.js +34 -0
- package/dist/server.js.map +1 -0
- package/dist/services/ToolMetricsService.d.ts +53 -0
- package/dist/services/ToolMetricsService.d.ts.map +1 -0
- package/dist/services/ToolMetricsService.js +230 -0
- package/dist/services/ToolMetricsService.js.map +1 -0
- package/dist/services/claude-router-service.d.ts +19 -0
- package/dist/services/claude-router-service.d.ts.map +1 -0
- package/dist/services/claude-router-service.js +160 -0
- package/dist/services/claude-router-service.js.map +1 -0
- package/dist/services/commands-service.d.ts +20 -0
- package/dist/services/commands-service.d.ts.map +1 -0
- package/dist/services/commands-service.js +115 -0
- package/dist/services/commands-service.js.map +1 -0
- package/dist/services/connection-debug-logger.d.ts +85 -0
- package/dist/services/connection-debug-logger.d.ts.map +1 -0
- package/dist/services/connection-debug-logger.js +221 -0
- package/dist/services/connection-debug-logger.js.map +1 -0
- package/dist/services/debug-log.d.ts +6 -0
- package/dist/services/debug-log.d.ts.map +1 -0
- package/dist/services/debug-log.js +27 -0
- package/dist/services/debug-log.js.map +1 -0
- package/dist/services/gemini-service.d.ts +35 -0
- package/dist/services/gemini-service.d.ts.map +1 -0
- package/dist/services/gemini-service.js +256 -0
- package/dist/services/gemini-service.js.map +1 -0
- package/dist/services/infrastructure/config-service.d.ts +79 -0
- package/dist/services/infrastructure/config-service.d.ts.map +1 -0
- package/dist/services/infrastructure/config-service.js +431 -0
- package/dist/services/infrastructure/config-service.js.map +1 -0
- package/dist/services/infrastructure/cost-tracker.d.ts +112 -0
- package/dist/services/infrastructure/cost-tracker.d.ts.map +1 -0
- package/dist/services/infrastructure/cost-tracker.js +423 -0
- package/dist/services/infrastructure/cost-tracker.js.map +1 -0
- package/dist/services/infrastructure/file-system-service.d.ts +61 -0
- package/dist/services/infrastructure/file-system-service.d.ts.map +1 -0
- package/dist/services/infrastructure/file-system-service.js +348 -0
- package/dist/services/infrastructure/file-system-service.js.map +1 -0
- package/dist/services/infrastructure/log-formatter.d.ts +5 -0
- package/dist/services/infrastructure/log-formatter.d.ts.map +1 -0
- package/dist/services/infrastructure/log-formatter.js +77 -0
- package/dist/services/infrastructure/log-formatter.js.map +1 -0
- package/dist/services/infrastructure/log-stream-buffer.d.ts +11 -0
- package/dist/services/infrastructure/log-stream-buffer.d.ts.map +1 -0
- package/dist/services/infrastructure/log-stream-buffer.js +36 -0
- package/dist/services/infrastructure/log-stream-buffer.js.map +1 -0
- package/dist/services/infrastructure/logger.d.ts +71 -0
- package/dist/services/infrastructure/logger.d.ts.map +1 -0
- package/dist/services/infrastructure/logger.js +215 -0
- package/dist/services/infrastructure/logger.js.map +1 -0
- package/dist/services/infrastructure/service-registry.d.ts +86 -0
- package/dist/services/infrastructure/service-registry.d.ts.map +1 -0
- package/dist/services/infrastructure/service-registry.js +162 -0
- package/dist/services/infrastructure/service-registry.js.map +1 -0
- package/dist/services/infrastructure/stream-manager.d.ts +87 -0
- package/dist/services/infrastructure/stream-manager.d.ts.map +1 -0
- package/dist/services/infrastructure/stream-manager.js +436 -0
- package/dist/services/infrastructure/stream-manager.js.map +1 -0
- package/dist/services/infrastructure/timing.d.ts +72 -0
- package/dist/services/infrastructure/timing.d.ts.map +1 -0
- package/dist/services/infrastructure/timing.js +115 -0
- package/dist/services/infrastructure/timing.js.map +1 -0
- package/dist/services/insights/anthropic-service.d.ts +224 -0
- package/dist/services/insights/anthropic-service.d.ts.map +1 -0
- package/dist/services/insights/anthropic-service.js +1062 -0
- package/dist/services/insights/anthropic-service.js.map +1 -0
- package/dist/services/insights/insight-audit-repository.d.ts +119 -0
- package/dist/services/insights/insight-audit-repository.d.ts.map +1 -0
- package/dist/services/insights/insight-audit-repository.js +242 -0
- package/dist/services/insights/insight-audit-repository.js.map +1 -0
- package/dist/services/insights/insight-queue.d.ts +99 -0
- package/dist/services/insights/insight-queue.d.ts.map +1 -0
- package/dist/services/insights/insight-queue.js +277 -0
- package/dist/services/insights/insight-queue.js.map +1 -0
- package/dist/services/insights/insights-computer.d.ts +132 -0
- package/dist/services/insights/insights-computer.d.ts.map +1 -0
- package/dist/services/insights/insights-computer.js +936 -0
- package/dist/services/insights/insights-computer.js.map +1 -0
- package/dist/services/insights/insights-coordinator.d.ts +165 -0
- package/dist/services/insights/insights-coordinator.d.ts.map +1 -0
- package/dist/services/insights/insights-coordinator.js +1678 -0
- package/dist/services/insights/insights-coordinator.js.map +1 -0
- package/dist/services/insights/insights-event-log.d.ts +196 -0
- package/dist/services/insights/insights-event-log.d.ts.map +1 -0
- package/dist/services/insights/insights-event-log.js +319 -0
- package/dist/services/insights/insights-event-log.js.map +1 -0
- package/dist/services/lattice-service.d.ts +77 -0
- package/dist/services/lattice-service.d.ts.map +1 -0
- package/dist/services/lattice-service.js +195 -0
- package/dist/services/lattice-service.js.map +1 -0
- package/dist/services/license-service.d.ts +69 -0
- package/dist/services/license-service.d.ts.map +1 -0
- package/dist/services/license-service.js +330 -0
- package/dist/services/license-service.js.map +1 -0
- package/dist/services/mcp-config-generator.d.ts +32 -0
- package/dist/services/mcp-config-generator.d.ts.map +1 -0
- package/dist/services/mcp-config-generator.js +126 -0
- package/dist/services/mcp-config-generator.js.map +1 -0
- package/dist/services/message-filter.d.ts +22 -0
- package/dist/services/message-filter.d.ts.map +1 -0
- package/dist/services/message-filter.js +57 -0
- package/dist/services/message-filter.js.map +1 -0
- package/dist/services/notification-service.d.ts +45 -0
- package/dist/services/notification-service.d.ts.map +1 -0
- package/dist/services/notification-service.js +184 -0
- package/dist/services/notification-service.js.map +1 -0
- package/dist/services/pending-question-service.d.ts +97 -0
- package/dist/services/pending-question-service.d.ts.map +1 -0
- package/dist/services/pending-question-service.js +223 -0
- package/dist/services/pending-question-service.js.map +1 -0
- package/dist/services/permission-event-log.d.ts +136 -0
- package/dist/services/permission-event-log.d.ts.map +1 -0
- package/dist/services/permission-event-log.js +252 -0
- package/dist/services/permission-event-log.js.map +1 -0
- package/dist/services/permission-pattern-matcher.d.ts +82 -0
- package/dist/services/permission-pattern-matcher.d.ts.map +1 -0
- package/dist/services/permission-pattern-matcher.js +294 -0
- package/dist/services/permission-pattern-matcher.js.map +1 -0
- package/dist/services/permission-tracker.d.ts +67 -0
- package/dist/services/permission-tracker.d.ts.map +1 -0
- package/dist/services/permission-tracker.js +162 -0
- package/dist/services/permission-tracker.js.map +1 -0
- package/dist/services/process/claude-process-manager.d.ts +142 -0
- package/dist/services/process/claude-process-manager.d.ts.map +1 -0
- package/dist/services/process/claude-process-manager.js +1218 -0
- package/dist/services/process/claude-process-manager.js.map +1 -0
- package/dist/services/process/conversation-status-manager.d.ts +110 -0
- package/dist/services/process/conversation-status-manager.d.ts.map +1 -0
- package/dist/services/process/conversation-status-manager.js +349 -0
- package/dist/services/process/conversation-status-manager.js.map +1 -0
- package/dist/services/process/json-lines-parser.d.ts +19 -0
- package/dist/services/process/json-lines-parser.d.ts.map +1 -0
- package/dist/services/process/json-lines-parser.js +59 -0
- package/dist/services/process/json-lines-parser.js.map +1 -0
- package/dist/services/process/process-event-log.d.ts +263 -0
- package/dist/services/process/process-event-log.d.ts.map +1 -0
- package/dist/services/process/process-event-log.js +509 -0
- package/dist/services/process/process-event-log.js.map +1 -0
- package/dist/services/process/process-manager-factory.d.ts +109 -0
- package/dist/services/process/process-manager-factory.d.ts.map +1 -0
- package/dist/services/process/process-manager-factory.js +338 -0
- package/dist/services/process/process-manager-factory.js.map +1 -0
- package/dist/services/question-tracker.d.ts +51 -0
- package/dist/services/question-tracker.d.ts.map +1 -0
- package/dist/services/question-tracker.js +111 -0
- package/dist/services/question-tracker.js.map +1 -0
- package/dist/services/sessions/claude-history-reader.d.ts +139 -0
- package/dist/services/sessions/claude-history-reader.d.ts.map +1 -0
- package/dist/services/sessions/claude-history-reader.js +864 -0
- package/dist/services/sessions/claude-history-reader.js.map +1 -0
- package/dist/services/sessions/conversation-cache.d.ts +98 -0
- package/dist/services/sessions/conversation-cache.d.ts.map +1 -0
- package/dist/services/sessions/conversation-cache.js +329 -0
- package/dist/services/sessions/conversation-cache.js.map +1 -0
- package/dist/services/sessions/session-activity-watcher.d.ts +67 -0
- package/dist/services/sessions/session-activity-watcher.d.ts.map +1 -0
- package/dist/services/sessions/session-activity-watcher.js +236 -0
- package/dist/services/sessions/session-activity-watcher.js.map +1 -0
- package/dist/services/sessions/session-analysis-service.d.ts +72 -0
- package/dist/services/sessions/session-analysis-service.d.ts.map +1 -0
- package/dist/services/sessions/session-analysis-service.js +373 -0
- package/dist/services/sessions/session-analysis-service.js.map +1 -0
- package/dist/services/sessions/session-branch-service.d.ts +76 -0
- package/dist/services/sessions/session-branch-service.d.ts.map +1 -0
- package/dist/services/sessions/session-branch-service.js +355 -0
- package/dist/services/sessions/session-branch-service.js.map +1 -0
- package/dist/services/sessions/session-info-service.d.ts +455 -0
- package/dist/services/sessions/session-info-service.d.ts.map +1 -0
- package/dist/services/sessions/session-info-service.js +1640 -0
- package/dist/services/sessions/session-info-service.js.map +1 -0
- package/dist/services/sessions/session-marks-repository.d.ts +78 -0
- package/dist/services/sessions/session-marks-repository.d.ts.map +1 -0
- package/dist/services/sessions/session-marks-repository.js +263 -0
- package/dist/services/sessions/session-marks-repository.js.map +1 -0
- package/dist/services/sessions/session-marks-service.d.ts +137 -0
- package/dist/services/sessions/session-marks-service.d.ts.map +1 -0
- package/dist/services/sessions/session-marks-service.js +562 -0
- package/dist/services/sessions/session-marks-service.js.map +1 -0
- package/dist/services/sessions/session-review-service.d.ts +98 -0
- package/dist/services/sessions/session-review-service.d.ts.map +1 -0
- package/dist/services/sessions/session-review-service.js +629 -0
- package/dist/services/sessions/session-review-service.js.map +1 -0
- package/dist/services/sessions/turn-capture-service.d.ts +83 -0
- package/dist/services/sessions/turn-capture-service.d.ts.map +1 -0
- package/dist/services/sessions/turn-capture-service.js +477 -0
- package/dist/services/sessions/turn-capture-service.js.map +1 -0
- package/dist/services/sessions/turn-repository.d.ts +48 -0
- package/dist/services/sessions/turn-repository.d.ts.map +1 -0
- package/dist/services/sessions/turn-repository.js +103 -0
- package/dist/services/sessions/turn-repository.js.map +1 -0
- package/dist/services/walkthrough-service.d.ts +226 -0
- package/dist/services/walkthrough-service.d.ts.map +1 -0
- package/dist/services/walkthrough-service.js +1112 -0
- package/dist/services/walkthrough-service.js.map +1 -0
- package/dist/services/walkthrough-skill-prompt.d.ts +34 -0
- package/dist/services/walkthrough-skill-prompt.d.ts.map +1 -0
- package/dist/services/walkthrough-skill-prompt.js +313 -0
- package/dist/services/walkthrough-skill-prompt.js.map +1 -0
- package/dist/services/web-push-service.d.ts +48 -0
- package/dist/services/web-push-service.d.ts.map +1 -0
- package/dist/services/web-push-service.js +186 -0
- package/dist/services/web-push-service.js.map +1 -0
- package/dist/services/working-directories-service.d.ts +19 -0
- package/dist/services/working-directories-service.d.ts.map +1 -0
- package/dist/services/working-directories-service.js +103 -0
- package/dist/services/working-directories-service.js.map +1 -0
- package/dist/types/config.d.ts +122 -0
- package/dist/types/config.d.ts.map +1 -0
- package/dist/types/config.js +21 -0
- package/dist/types/config.js.map +1 -0
- package/dist/types/express.d.ts +5 -0
- package/dist/types/express.d.ts.map +1 -0
- package/dist/types/express.js +2 -0
- package/dist/types/express.js.map +1 -0
- package/dist/types/index.d.ts +400 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/index.js +41 -0
- package/dist/types/index.js.map +1 -0
- package/dist/types/insights.d.ts +176 -0
- package/dist/types/insights.d.ts.map +1 -0
- package/dist/types/insights.js +23 -0
- package/dist/types/insights.js.map +1 -0
- package/dist/types/license.d.ts +70 -0
- package/dist/types/license.d.ts.map +1 -0
- package/dist/types/license.js +5 -0
- package/dist/types/license.js.map +1 -0
- package/dist/types/router-config.d.ts +13 -0
- package/dist/types/router-config.d.ts.map +1 -0
- package/dist/types/router-config.js +2 -0
- package/dist/types/router-config.js.map +1 -0
- package/dist/utils/constants.d.ts +26 -0
- package/dist/utils/constants.d.ts.map +1 -0
- package/dist/utils/constants.js +28 -0
- package/dist/utils/constants.js.map +1 -0
- package/dist/utils/machine-id.d.ts +7 -0
- package/dist/utils/machine-id.d.ts.map +1 -0
- package/dist/utils/machine-id.js +76 -0
- package/dist/utils/machine-id.js.map +1 -0
- package/dist/utils/server-startup.d.ts +11 -0
- package/dist/utils/server-startup.d.ts.map +1 -0
- package/dist/utils/server-startup.js +9 -0
- package/dist/utils/server-startup.js.map +1 -0
- package/dist/utils/update-check.d.ts +13 -0
- package/dist/utils/update-check.d.ts.map +1 -0
- package/dist/utils/update-check.js +90 -0
- package/dist/utils/update-check.js.map +1 -0
- package/dist/web/assets/ArchivedCardPrototype-S9ifiasa.js +5 -0
- package/dist/web/assets/BannerGallery-B__rJV6F.js +1 -0
- package/dist/web/assets/BannerPrototype-DBKP9Uiu.js +52 -0
- package/dist/web/assets/CodeHikeExperiment-B8jjWAFy.js +15 -0
- package/dist/web/assets/ContextTooltipVariations-DzklAFam.js +1 -0
- package/dist/web/assets/FontShowcasePrototype-KIMEWeP2.js +13 -0
- package/dist/web/assets/GeometricGallery-DddlWhHK.js +1 -0
- package/dist/web/assets/HistoryWalkthroughPrototype-DeniRRdw.js +18 -0
- package/dist/web/assets/InlineWalkthroughPrototype-Csd5r_Hk.js +1 -0
- package/dist/web/assets/MarkButtonPrototype-CxhxE0RP.js +1 -0
- package/dist/web/assets/MenuStylesPrototype-D7neA6YM.js +1 -0
- package/dist/web/assets/MomentCardVariations-2GT7GyFn.js +1 -0
- package/dist/web/assets/MomentHeaderVariations-DhGEw4XC.js +1 -0
- package/dist/web/assets/NarrativeWalkthroughDemo-B5C566fu.js +389 -0
- package/dist/web/assets/OutcomeVariations-BrZfsVcs.js +1 -0
- package/dist/web/assets/PermissionPatternPickerPrototype-CBOhe2Me.js +1 -0
- package/dist/web/assets/PermissionPrototype-BcF-a5an.js +1 -0
- package/dist/web/assets/PipelineGallery-BJhyM0rx.js +1 -0
- package/dist/web/assets/ScopeHeaderPrototype-GD1HNfaO.js +1 -0
- package/dist/web/assets/ScopeHeaderStylesPrototype-aa4uNJJ1.js +1 -0
- package/dist/web/assets/ScrollycodingPrototype-CKW1bf72.js +70 -0
- package/dist/web/assets/SectionHeaderVariations-DM8vUwfj.js +1 -0
- package/dist/web/assets/SemanticGallery-CtQEo7St.js +1 -0
- package/dist/web/assets/SessionCardPrototype-CgHCIMHe.js +1 -0
- package/dist/web/assets/SessionSidebarVariations-DMQL3Azj.js +3 -0
- package/dist/web/assets/SessionStartPrototype-Cwsv01Rr.js +1 -0
- package/dist/web/assets/SmartMenuPrototype-Br37Qbs_.js +1 -0
- package/dist/web/assets/StyleGallery-rZgrploB.js +1 -0
- package/dist/web/assets/TimelineCardPrototype-lzPc5mhe.js +19 -0
- package/dist/web/assets/ToolbarPrototype-Dm4BNZra.js +1 -0
- package/dist/web/assets/TooltipExperiment-Dy8QzTIP.js +13 -0
- package/dist/web/assets/WalkthroughCTAPrototype-uHoovujd.js +1 -0
- package/dist/web/assets/WalkthroughHeaderVariations-Do7Di1g1.js +1 -0
- package/dist/web/assets/WalkthroughShowcase-sGmRoPoM.js +112 -0
- package/dist/web/assets/arrow-right-D46Nx1mC.js +1 -0
- package/dist/web/assets/brain-BXIZKtOZ.js +1 -0
- package/dist/web/assets/grid-3x3-Cb81B62m.js +1 -0
- package/dist/web/assets/main-B1fyog77.js +321 -0
- package/dist/web/assets/main-C2PK2Klg.css +1 -0
- package/dist/web/assets/semantic-variations-Bd-W7ea2.js +1 -0
- package/dist/web/assets/target-Cf92wDTW.js +1 -0
- package/dist/web/favicon.png +0 -0
- package/dist/web/favicon.svg +22 -0
- package/dist/web/icon-192x192.png +0 -0
- package/dist/web/icon-512x512.png +0 -0
- package/dist/web/index.html +45 -0
- package/dist/web/manifest.json +61 -0
- package/package.json +192 -0
- package/scripts/postinstall.js +60 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"insights-coordinator.js","sourceRoot":"","sources":["../../../src/services/insights/insights-coordinator.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,196 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* InsightsEventLog - Structured event logging for observability.
|
|
3
|
+
*
|
|
4
|
+
* This provides a clear, queryable log of all insight system decisions:
|
|
5
|
+
* - What triggered each operation
|
|
6
|
+
* - What the system decided to do (and why)
|
|
7
|
+
* - What changed (before/after state)
|
|
8
|
+
* - Timing information
|
|
9
|
+
*
|
|
10
|
+
* The log is designed for:
|
|
11
|
+
* 1. Debugging: "Why did/didn't insights update for session X?"
|
|
12
|
+
* 2. Monitoring: "Are insights keeping up with session activity?"
|
|
13
|
+
* 3. Testing: "Did the system behave correctly for this scenario?"
|
|
14
|
+
*/
|
|
15
|
+
export type InsightEventType = 'trigger' | 'generate' | 'patch' | 'quick_check' | 'skip' | 'cache_hit' | 'cache_stale' | 'queue_enqueue' | 'queue_coalesce' | 'queue_process' | 'queue_complete' | 'queue_error';
|
|
16
|
+
export type TriggerSource = 'file_change' | 'user_message' | 'tool_use' | 'completion' | 'scheduled' | 'manual' | 'cold_start';
|
|
17
|
+
export type SkipReason = 'cached_fresh' | 'cold_start_cached' | 'below_threshold' | 'already_processing' | 'already_queued' | 'no_cached_insights' | 'haiku_said_no' | 'automated_session';
|
|
18
|
+
export interface InsightEvent {
|
|
19
|
+
id: number;
|
|
20
|
+
traceId: string;
|
|
21
|
+
sessionId: string;
|
|
22
|
+
eventType: InsightEventType;
|
|
23
|
+
trigger?: TriggerSource;
|
|
24
|
+
skipReason?: SkipReason;
|
|
25
|
+
actionCount?: number;
|
|
26
|
+
messageCount?: number;
|
|
27
|
+
newActions?: string[];
|
|
28
|
+
beforeState?: StateSnapshot;
|
|
29
|
+
afterState?: StateSnapshot;
|
|
30
|
+
operationType?: 'GENERATE' | 'PATCH' | 'REFRESH';
|
|
31
|
+
priority?: 'high' | 'normal' | 'low';
|
|
32
|
+
patchedFields?: string[];
|
|
33
|
+
llmResponse?: string;
|
|
34
|
+
timestamp: number;
|
|
35
|
+
durationMs?: number;
|
|
36
|
+
queueDepth?: number;
|
|
37
|
+
queuePosition?: number;
|
|
38
|
+
}
|
|
39
|
+
export interface StateSnapshot {
|
|
40
|
+
mission?: string;
|
|
41
|
+
currentState?: string;
|
|
42
|
+
currentStateColor?: string;
|
|
43
|
+
milestones?: string[];
|
|
44
|
+
panelCount?: number;
|
|
45
|
+
notableCount?: number;
|
|
46
|
+
}
|
|
47
|
+
export declare class InsightsEventLog {
|
|
48
|
+
private logger;
|
|
49
|
+
private events;
|
|
50
|
+
private eventId;
|
|
51
|
+
private maxEvents;
|
|
52
|
+
constructor();
|
|
53
|
+
/**
|
|
54
|
+
* Log a trigger event (something initiated insight evaluation)
|
|
55
|
+
*/
|
|
56
|
+
trigger(params: {
|
|
57
|
+
traceId: string;
|
|
58
|
+
sessionId: string;
|
|
59
|
+
source: TriggerSource;
|
|
60
|
+
actionCount?: number;
|
|
61
|
+
messageCount?: number;
|
|
62
|
+
newActions?: string[];
|
|
63
|
+
}): void;
|
|
64
|
+
/**
|
|
65
|
+
* Log that an operation was skipped
|
|
66
|
+
*/
|
|
67
|
+
skip(params: {
|
|
68
|
+
traceId: string;
|
|
69
|
+
sessionId: string;
|
|
70
|
+
reason: SkipReason;
|
|
71
|
+
trigger?: TriggerSource;
|
|
72
|
+
}): void;
|
|
73
|
+
/**
|
|
74
|
+
* Log queue events
|
|
75
|
+
*/
|
|
76
|
+
queueEnqueue(params: {
|
|
77
|
+
traceId: string;
|
|
78
|
+
sessionId: string;
|
|
79
|
+
operationType: 'GENERATE' | 'PATCH' | 'REFRESH';
|
|
80
|
+
priority: 'high' | 'normal' | 'low';
|
|
81
|
+
trigger: TriggerSource;
|
|
82
|
+
queueDepth: number;
|
|
83
|
+
}): void;
|
|
84
|
+
queueCoalesce(params: {
|
|
85
|
+
traceId: string;
|
|
86
|
+
sessionId: string;
|
|
87
|
+
operationType: 'GENERATE' | 'PATCH' | 'REFRESH';
|
|
88
|
+
reason: 'already_processing' | 'already_queued';
|
|
89
|
+
}): void;
|
|
90
|
+
queueProcess(params: {
|
|
91
|
+
traceId: string;
|
|
92
|
+
sessionId: string;
|
|
93
|
+
operationType: 'GENERATE' | 'PATCH' | 'REFRESH';
|
|
94
|
+
queuePosition: number;
|
|
95
|
+
}): void;
|
|
96
|
+
queueComplete(params: {
|
|
97
|
+
traceId: string;
|
|
98
|
+
sessionId: string;
|
|
99
|
+
operationType: 'GENERATE' | 'PATCH' | 'REFRESH';
|
|
100
|
+
durationMs: number;
|
|
101
|
+
}): void;
|
|
102
|
+
queueError(params: {
|
|
103
|
+
traceId: string;
|
|
104
|
+
sessionId: string;
|
|
105
|
+
operationType: 'GENERATE' | 'PATCH' | 'REFRESH';
|
|
106
|
+
error: string;
|
|
107
|
+
durationMs: number;
|
|
108
|
+
}): void;
|
|
109
|
+
/**
|
|
110
|
+
* Log LLM operations
|
|
111
|
+
*/
|
|
112
|
+
generate(params: {
|
|
113
|
+
traceId: string;
|
|
114
|
+
sessionId: string;
|
|
115
|
+
beforeState?: StateSnapshot;
|
|
116
|
+
afterState?: StateSnapshot;
|
|
117
|
+
durationMs: number;
|
|
118
|
+
}): void;
|
|
119
|
+
quickCheck(params: {
|
|
120
|
+
traceId: string;
|
|
121
|
+
sessionId: string;
|
|
122
|
+
result: 'patch_needed' | 'no_patch';
|
|
123
|
+
reason: string;
|
|
124
|
+
durationMs: number;
|
|
125
|
+
}): void;
|
|
126
|
+
patch(params: {
|
|
127
|
+
traceId: string;
|
|
128
|
+
sessionId: string;
|
|
129
|
+
beforeState: StateSnapshot;
|
|
130
|
+
afterState: StateSnapshot;
|
|
131
|
+
patchedFields: string[];
|
|
132
|
+
durationMs: number;
|
|
133
|
+
}): void;
|
|
134
|
+
/**
|
|
135
|
+
* Log cache events
|
|
136
|
+
*/
|
|
137
|
+
cacheHit(params: {
|
|
138
|
+
traceId: string;
|
|
139
|
+
sessionId: string;
|
|
140
|
+
computedAt?: string;
|
|
141
|
+
}): void;
|
|
142
|
+
cacheStale(params: {
|
|
143
|
+
traceId: string;
|
|
144
|
+
sessionId: string;
|
|
145
|
+
reason: string;
|
|
146
|
+
}): void;
|
|
147
|
+
private addEvent;
|
|
148
|
+
/**
|
|
149
|
+
* Get all events (most recent first)
|
|
150
|
+
*/
|
|
151
|
+
getAll(limit?: number): InsightEvent[];
|
|
152
|
+
/**
|
|
153
|
+
* Get events for a specific session
|
|
154
|
+
*/
|
|
155
|
+
getForSession(sessionId: string, limit?: number): InsightEvent[];
|
|
156
|
+
/**
|
|
157
|
+
* Get events for a specific trace ID (follows one operation end-to-end)
|
|
158
|
+
*/
|
|
159
|
+
getByTraceId(traceId: string): InsightEvent[];
|
|
160
|
+
/**
|
|
161
|
+
* Get events by type
|
|
162
|
+
*/
|
|
163
|
+
getByType(eventType: InsightEventType, limit?: number): InsightEvent[];
|
|
164
|
+
/**
|
|
165
|
+
* Get recent skips (useful for debugging "why didn't it update?")
|
|
166
|
+
*/
|
|
167
|
+
getRecentSkips(sessionId?: string, limit?: number): InsightEvent[];
|
|
168
|
+
/**
|
|
169
|
+
* Get recent patches (useful for debugging "what changed?")
|
|
170
|
+
*/
|
|
171
|
+
getRecentPatches(sessionId?: string, limit?: number): InsightEvent[];
|
|
172
|
+
/**
|
|
173
|
+
* Get timing summary for a session
|
|
174
|
+
*/
|
|
175
|
+
getTimingSummary(sessionId: string): {
|
|
176
|
+
totalGenerates: number;
|
|
177
|
+
totalPatches: number;
|
|
178
|
+
totalQuickChecks: number;
|
|
179
|
+
avgGenerateDurationMs: number;
|
|
180
|
+
avgPatchDurationMs: number;
|
|
181
|
+
avgQuickCheckDurationMs: number;
|
|
182
|
+
totalSkips: number;
|
|
183
|
+
lastActivity?: Date;
|
|
184
|
+
};
|
|
185
|
+
/**
|
|
186
|
+
* Get a human-readable timeline for a session
|
|
187
|
+
*/
|
|
188
|
+
getTimeline(sessionId: string, limit?: number): string[];
|
|
189
|
+
/**
|
|
190
|
+
* Clear all events (for testing)
|
|
191
|
+
*/
|
|
192
|
+
clear(): void;
|
|
193
|
+
}
|
|
194
|
+
export declare function getInsightsEventLog(): InsightsEventLog;
|
|
195
|
+
export declare function resetInsightsEventLog(): void;
|
|
196
|
+
//# sourceMappingURL=insights-event-log.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"insights-event-log.d.ts","sourceRoot":"","sources":["../../../src/services/insights/insights-event-log.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,319 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* InsightsEventLog - Structured event logging for observability.
|
|
3
|
+
*
|
|
4
|
+
* This provides a clear, queryable log of all insight system decisions:
|
|
5
|
+
* - What triggered each operation
|
|
6
|
+
* - What the system decided to do (and why)
|
|
7
|
+
* - What changed (before/after state)
|
|
8
|
+
* - Timing information
|
|
9
|
+
*
|
|
10
|
+
* The log is designed for:
|
|
11
|
+
* 1. Debugging: "Why did/didn't insights update for session X?"
|
|
12
|
+
* 2. Monitoring: "Are insights keeping up with session activity?"
|
|
13
|
+
* 3. Testing: "Did the system behave correctly for this scenario?"
|
|
14
|
+
*/
|
|
15
|
+
import { createLogger } from '../infrastructure/logger.js';
|
|
16
|
+
// ============================================================================
|
|
17
|
+
// Event Log Service
|
|
18
|
+
// ============================================================================
|
|
19
|
+
export class InsightsEventLog {
|
|
20
|
+
logger;
|
|
21
|
+
events = [];
|
|
22
|
+
eventId = 0;
|
|
23
|
+
maxEvents = 1000; // Ring buffer size
|
|
24
|
+
constructor() {
|
|
25
|
+
this.logger = createLogger('InsightsEventLog');
|
|
26
|
+
}
|
|
27
|
+
// ========== Logging Methods ==========
|
|
28
|
+
/**
|
|
29
|
+
* Log a trigger event (something initiated insight evaluation)
|
|
30
|
+
*/
|
|
31
|
+
trigger(params) {
|
|
32
|
+
this.addEvent({
|
|
33
|
+
traceId: params.traceId,
|
|
34
|
+
sessionId: params.sessionId,
|
|
35
|
+
eventType: 'trigger',
|
|
36
|
+
trigger: params.source,
|
|
37
|
+
actionCount: params.actionCount,
|
|
38
|
+
messageCount: params.messageCount,
|
|
39
|
+
newActions: params.newActions,
|
|
40
|
+
});
|
|
41
|
+
}
|
|
42
|
+
/**
|
|
43
|
+
* Log that an operation was skipped
|
|
44
|
+
*/
|
|
45
|
+
skip(params) {
|
|
46
|
+
this.addEvent({
|
|
47
|
+
traceId: params.traceId,
|
|
48
|
+
sessionId: params.sessionId,
|
|
49
|
+
eventType: 'skip',
|
|
50
|
+
skipReason: params.reason,
|
|
51
|
+
trigger: params.trigger,
|
|
52
|
+
});
|
|
53
|
+
}
|
|
54
|
+
/**
|
|
55
|
+
* Log queue events
|
|
56
|
+
*/
|
|
57
|
+
queueEnqueue(params) {
|
|
58
|
+
this.addEvent({
|
|
59
|
+
traceId: params.traceId,
|
|
60
|
+
sessionId: params.sessionId,
|
|
61
|
+
eventType: 'queue_enqueue',
|
|
62
|
+
operationType: params.operationType,
|
|
63
|
+
priority: params.priority,
|
|
64
|
+
trigger: params.trigger,
|
|
65
|
+
queueDepth: params.queueDepth,
|
|
66
|
+
});
|
|
67
|
+
}
|
|
68
|
+
queueCoalesce(params) {
|
|
69
|
+
this.addEvent({
|
|
70
|
+
traceId: params.traceId,
|
|
71
|
+
sessionId: params.sessionId,
|
|
72
|
+
eventType: 'queue_coalesce',
|
|
73
|
+
operationType: params.operationType,
|
|
74
|
+
skipReason: params.reason,
|
|
75
|
+
});
|
|
76
|
+
}
|
|
77
|
+
queueProcess(params) {
|
|
78
|
+
this.addEvent({
|
|
79
|
+
traceId: params.traceId,
|
|
80
|
+
sessionId: params.sessionId,
|
|
81
|
+
eventType: 'queue_process',
|
|
82
|
+
operationType: params.operationType,
|
|
83
|
+
queuePosition: params.queuePosition,
|
|
84
|
+
});
|
|
85
|
+
}
|
|
86
|
+
queueComplete(params) {
|
|
87
|
+
this.addEvent({
|
|
88
|
+
traceId: params.traceId,
|
|
89
|
+
sessionId: params.sessionId,
|
|
90
|
+
eventType: 'queue_complete',
|
|
91
|
+
operationType: params.operationType,
|
|
92
|
+
durationMs: params.durationMs,
|
|
93
|
+
});
|
|
94
|
+
}
|
|
95
|
+
queueError(params) {
|
|
96
|
+
this.addEvent({
|
|
97
|
+
traceId: params.traceId,
|
|
98
|
+
sessionId: params.sessionId,
|
|
99
|
+
eventType: 'queue_error',
|
|
100
|
+
operationType: params.operationType,
|
|
101
|
+
llmResponse: `Error: ${params.error}`,
|
|
102
|
+
durationMs: params.durationMs,
|
|
103
|
+
});
|
|
104
|
+
}
|
|
105
|
+
/**
|
|
106
|
+
* Log LLM operations
|
|
107
|
+
*/
|
|
108
|
+
generate(params) {
|
|
109
|
+
this.addEvent({
|
|
110
|
+
traceId: params.traceId,
|
|
111
|
+
sessionId: params.sessionId,
|
|
112
|
+
eventType: 'generate',
|
|
113
|
+
beforeState: params.beforeState,
|
|
114
|
+
afterState: params.afterState,
|
|
115
|
+
durationMs: params.durationMs,
|
|
116
|
+
});
|
|
117
|
+
}
|
|
118
|
+
quickCheck(params) {
|
|
119
|
+
this.addEvent({
|
|
120
|
+
traceId: params.traceId,
|
|
121
|
+
sessionId: params.sessionId,
|
|
122
|
+
eventType: 'quick_check',
|
|
123
|
+
llmResponse: `${params.result}: ${params.reason}`,
|
|
124
|
+
durationMs: params.durationMs,
|
|
125
|
+
});
|
|
126
|
+
}
|
|
127
|
+
patch(params) {
|
|
128
|
+
this.addEvent({
|
|
129
|
+
traceId: params.traceId,
|
|
130
|
+
sessionId: params.sessionId,
|
|
131
|
+
eventType: 'patch',
|
|
132
|
+
beforeState: params.beforeState,
|
|
133
|
+
afterState: params.afterState,
|
|
134
|
+
patchedFields: params.patchedFields,
|
|
135
|
+
durationMs: params.durationMs,
|
|
136
|
+
});
|
|
137
|
+
}
|
|
138
|
+
/**
|
|
139
|
+
* Log cache events
|
|
140
|
+
*/
|
|
141
|
+
cacheHit(params) {
|
|
142
|
+
this.addEvent({
|
|
143
|
+
traceId: params.traceId,
|
|
144
|
+
sessionId: params.sessionId,
|
|
145
|
+
eventType: 'cache_hit',
|
|
146
|
+
llmResponse: params.computedAt ? `cached at ${params.computedAt}` : undefined,
|
|
147
|
+
});
|
|
148
|
+
}
|
|
149
|
+
cacheStale(params) {
|
|
150
|
+
this.addEvent({
|
|
151
|
+
traceId: params.traceId,
|
|
152
|
+
sessionId: params.sessionId,
|
|
153
|
+
eventType: 'cache_stale',
|
|
154
|
+
llmResponse: params.reason,
|
|
155
|
+
});
|
|
156
|
+
}
|
|
157
|
+
// ========== Internal ==========
|
|
158
|
+
addEvent(params) {
|
|
159
|
+
const event = {
|
|
160
|
+
id: ++this.eventId,
|
|
161
|
+
timestamp: Date.now(),
|
|
162
|
+
...params,
|
|
163
|
+
};
|
|
164
|
+
// Ring buffer
|
|
165
|
+
if (this.events.length >= this.maxEvents) {
|
|
166
|
+
this.events.shift();
|
|
167
|
+
}
|
|
168
|
+
this.events.push(event);
|
|
169
|
+
// Also log to structured logger for file output
|
|
170
|
+
this.logger.debug('insight_event', {
|
|
171
|
+
id: event.id,
|
|
172
|
+
traceId: event.traceId,
|
|
173
|
+
sessionId: event.sessionId.slice(0, 8),
|
|
174
|
+
eventType: event.eventType,
|
|
175
|
+
trigger: event.trigger,
|
|
176
|
+
skipReason: event.skipReason,
|
|
177
|
+
operationType: event.operationType,
|
|
178
|
+
patchedFields: event.patchedFields,
|
|
179
|
+
durationMs: event.durationMs,
|
|
180
|
+
});
|
|
181
|
+
}
|
|
182
|
+
// ========== Query Methods ==========
|
|
183
|
+
/**
|
|
184
|
+
* Get all events (most recent first)
|
|
185
|
+
*/
|
|
186
|
+
getAll(limit = 100) {
|
|
187
|
+
return this.events.slice(-limit).reverse();
|
|
188
|
+
}
|
|
189
|
+
/**
|
|
190
|
+
* Get events for a specific session
|
|
191
|
+
*/
|
|
192
|
+
getForSession(sessionId, limit = 50) {
|
|
193
|
+
return this.events
|
|
194
|
+
.filter(e => e.sessionId === sessionId)
|
|
195
|
+
.slice(-limit)
|
|
196
|
+
.reverse();
|
|
197
|
+
}
|
|
198
|
+
/**
|
|
199
|
+
* Get events for a specific trace ID (follows one operation end-to-end)
|
|
200
|
+
*/
|
|
201
|
+
getByTraceId(traceId) {
|
|
202
|
+
return this.events.filter(e => e.traceId === traceId);
|
|
203
|
+
}
|
|
204
|
+
/**
|
|
205
|
+
* Get events by type
|
|
206
|
+
*/
|
|
207
|
+
getByType(eventType, limit = 50) {
|
|
208
|
+
return this.events
|
|
209
|
+
.filter(e => e.eventType === eventType)
|
|
210
|
+
.slice(-limit)
|
|
211
|
+
.reverse();
|
|
212
|
+
}
|
|
213
|
+
/**
|
|
214
|
+
* Get recent skips (useful for debugging "why didn't it update?")
|
|
215
|
+
*/
|
|
216
|
+
getRecentSkips(sessionId, limit = 20) {
|
|
217
|
+
let events = this.events.filter(e => e.eventType === 'skip' || e.eventType === 'queue_coalesce');
|
|
218
|
+
if (sessionId) {
|
|
219
|
+
events = events.filter(e => e.sessionId === sessionId);
|
|
220
|
+
}
|
|
221
|
+
return events.slice(-limit).reverse();
|
|
222
|
+
}
|
|
223
|
+
/**
|
|
224
|
+
* Get recent patches (useful for debugging "what changed?")
|
|
225
|
+
*/
|
|
226
|
+
getRecentPatches(sessionId, limit = 20) {
|
|
227
|
+
let events = this.events.filter(e => e.eventType === 'patch');
|
|
228
|
+
if (sessionId) {
|
|
229
|
+
events = events.filter(e => e.sessionId === sessionId);
|
|
230
|
+
}
|
|
231
|
+
return events.slice(-limit).reverse();
|
|
232
|
+
}
|
|
233
|
+
/**
|
|
234
|
+
* Get timing summary for a session
|
|
235
|
+
*/
|
|
236
|
+
getTimingSummary(sessionId) {
|
|
237
|
+
const sessionEvents = this.events.filter(e => e.sessionId === sessionId);
|
|
238
|
+
const generates = sessionEvents.filter(e => e.eventType === 'generate');
|
|
239
|
+
const patches = sessionEvents.filter(e => e.eventType === 'patch');
|
|
240
|
+
const quickChecks = sessionEvents.filter(e => e.eventType === 'quick_check');
|
|
241
|
+
const skips = sessionEvents.filter(e => e.eventType === 'skip' || e.eventType === 'queue_coalesce');
|
|
242
|
+
const avgDuration = (events) => {
|
|
243
|
+
const durations = events.map(e => e.durationMs).filter(d => d !== undefined);
|
|
244
|
+
return durations.length > 0 ? durations.reduce((a, b) => a + b, 0) / durations.length : 0;
|
|
245
|
+
};
|
|
246
|
+
const lastEvent = sessionEvents[sessionEvents.length - 1];
|
|
247
|
+
return {
|
|
248
|
+
totalGenerates: generates.length,
|
|
249
|
+
totalPatches: patches.length,
|
|
250
|
+
totalQuickChecks: quickChecks.length,
|
|
251
|
+
avgGenerateDurationMs: Math.round(avgDuration(generates)),
|
|
252
|
+
avgPatchDurationMs: Math.round(avgDuration(patches)),
|
|
253
|
+
avgQuickCheckDurationMs: Math.round(avgDuration(quickChecks)),
|
|
254
|
+
totalSkips: skips.length,
|
|
255
|
+
lastActivity: lastEvent ? new Date(lastEvent.timestamp) : undefined,
|
|
256
|
+
};
|
|
257
|
+
}
|
|
258
|
+
/**
|
|
259
|
+
* Get a human-readable timeline for a session
|
|
260
|
+
*/
|
|
261
|
+
getTimeline(sessionId, limit = 30) {
|
|
262
|
+
const events = this.getForSession(sessionId, limit);
|
|
263
|
+
return events.map(e => {
|
|
264
|
+
const time = new Date(e.timestamp).toISOString().slice(11, 19);
|
|
265
|
+
const duration = e.durationMs ? ` (${e.durationMs}ms)` : '';
|
|
266
|
+
switch (e.eventType) {
|
|
267
|
+
case 'trigger':
|
|
268
|
+
return `${time} 🎯 Trigger: ${e.trigger} (${e.actionCount} actions)`;
|
|
269
|
+
case 'skip':
|
|
270
|
+
return `${time} ⏭️ Skip: ${e.skipReason}`;
|
|
271
|
+
case 'queue_enqueue':
|
|
272
|
+
return `${time} 📥 Queue: ${e.operationType} (${e.priority})`;
|
|
273
|
+
case 'queue_coalesce':
|
|
274
|
+
return `${time} 🔄 Coalesce: ${e.operationType} - ${e.skipReason}`;
|
|
275
|
+
case 'queue_process':
|
|
276
|
+
return `${time} ⚙️ Processing: ${e.operationType}`;
|
|
277
|
+
case 'queue_complete':
|
|
278
|
+
return `${time} ✅ Complete: ${e.operationType}${duration}`;
|
|
279
|
+
case 'queue_error':
|
|
280
|
+
return `${time} ❌ Error: ${e.operationType}${duration}`;
|
|
281
|
+
case 'generate':
|
|
282
|
+
return `${time} 🔮 Generate${duration}`;
|
|
283
|
+
case 'quick_check':
|
|
284
|
+
return `${time} 👁️ QuickCheck: ${e.llmResponse}${duration}`;
|
|
285
|
+
case 'patch':
|
|
286
|
+
const fields = e.patchedFields?.join(', ') || 'none';
|
|
287
|
+
return `${time} 🩹 Patch: [${fields}]${duration}`;
|
|
288
|
+
case 'cache_hit':
|
|
289
|
+
return `${time} 💾 CacheHit`;
|
|
290
|
+
case 'cache_stale':
|
|
291
|
+
return `${time} ⚠️ CacheStale: ${e.llmResponse}`;
|
|
292
|
+
default:
|
|
293
|
+
return `${time} ❓ ${e.eventType}`;
|
|
294
|
+
}
|
|
295
|
+
});
|
|
296
|
+
}
|
|
297
|
+
/**
|
|
298
|
+
* Clear all events (for testing)
|
|
299
|
+
*/
|
|
300
|
+
clear() {
|
|
301
|
+
this.events = [];
|
|
302
|
+
this.eventId = 0;
|
|
303
|
+
}
|
|
304
|
+
}
|
|
305
|
+
// ============================================================================
|
|
306
|
+
// Singleton
|
|
307
|
+
// ============================================================================
|
|
308
|
+
let instance = null;
|
|
309
|
+
export function getInsightsEventLog() {
|
|
310
|
+
if (!instance) {
|
|
311
|
+
instance = new InsightsEventLog();
|
|
312
|
+
}
|
|
313
|
+
return instance;
|
|
314
|
+
}
|
|
315
|
+
// For testing
|
|
316
|
+
export function resetInsightsEventLog() {
|
|
317
|
+
instance = null;
|
|
318
|
+
}
|
|
319
|
+
//# sourceMappingURL=insights-event-log.js.map
|