Skip to content

feat(test-framework): add executions logs for test framework - #1639

Merged
Sg312 merged 12 commits into
stagingfrom
feat/executions-dashboard
Oct 15, 2025
Merged

feat(test-framework): add executions logs for test framework#1639
Sg312 merged 12 commits into
stagingfrom
feat/executions-dashboard

Conversation

@Sg312

@Sg312Sg312 commented Oct 15, 2025

Copy link
Copy Markdown
Collaborator

Summary

Add test framework executions logs

Type of Change

  • New feature

Testing

Manual

Checklist

  • Code follows project style guidelines
  • Self-reviewed my changes
  • Tests added/updated and passing
  • No new warnings introduced
  • I confirm that I have read and agree to the terms outlined in the Contributor License Agreement (CLA)

waleedlatif1and others added 11 commits October 11, 2025 22:23
* improvement(performance): remove unused source/target indices, add index on snapshot id (#1603)
* fix(blog): rename building to blogs with redirect (#1604)
* improvement(privacy-policy): updated privacy policy for google (#1602)
* updated privacy policy for google
* update terms, privacy, and emails to incl address and update verbiage
* feat(guardrails): added guardrails block/tools and docs (#1605)
* Adding guardrails block
* ack PR comments
* cleanup checkbox in dark mode
* cleanup
* fix supabase tools
* fix(inference-billing): fix inference billing when stream is true via API, add drag-and-drop functionality to deployed chat (#1606)
* fix(inference): fix inference billing when stream is true via API
* add drag-and-drop to deployed chat
* feat(mistal): added mistral as a provider, updated model prices (#1607)
* feat(mistal): added mistral as a provider, updated model prices
* remove the ability for a block to reference its own outluts
* fixed order of responses for guardrails block
* feat(versions): added the ability to rename deployment versions (#1610)
* fix(vulns): fix various vulnerabilities and enhanced code security (#1611)
* fix(vulns): fix SSRF vulnerabilities
* cleanup
* cleanup
* regen docs
* remove unused deps
* fix failing tests
* cleanup
* update deps
* regen bun lock
@vercel

vercelBot commented Oct 15, 2025

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

ProjectDeploymentPreviewCommentsUpdated (UTC)
docsReadyReadyPreviewCommentOct 15, 2025 5:36pm

@blacksmith-sh

blacksmith-shBot commented Oct 15, 2025

Copy link
Copy Markdown

1 Job Failed:

CI / Test and Build / Test and Build failed on "Run tests with coverage"
[...]
❯ stores/panel/console/store.test.ts:19:21
❯ stores/panel/console/store.test.ts:19:21
❯ useBoundStore.api.setState ../../node_modules/zustand/esm/middleware.mjs:475:10
❯ setItem ../../node_modules/zustand/esm/middleware.mjs:467:20
❯ Object.setItem ../../node_modules/zustand/esm/middleware.mjs:270:42
Error: TypeError: storage.setItem is not a function
error: script "test" exited with code 1
[ERROR] command finished with error: command (/home/runner/_work/sim/sim/apps/sim) /home/runner/.bun/bin/bun run test exited (1)
Tasks: 1 successful, 2 total
Cached: 0 cached, 2 total
Time: 14.074s Failed: sim#test
Error: Process completed with exit code 1.

Summary: 1 failed workflow
  • CI (1 job failed)

Last updated: 2025-10-15 17:35:08 UTC

@greptile-appsgreptile-appsBot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Greptile Overview

Summary

Added a comprehensive execution dashboard feature for test framework logs with time-based filtering and visualization.

Key Changes:

  • New API endpoints for fetching aggregated execution history and detailed workflow execution data
  • Interactive dashboard UI with 120-segment status bars showing success rates over time
  • Line charts displaying error rates, durations, and execution counts
  • Detailed execution logs table with filtering by time segments
  • Time navigation controls (shift backward/forward, jump to now)
  • Integration with existing filter store for workflows, folders, and triggers
  • Toggle switch to switch between logs view and dashboard view
  • Added "Past 12 hours" time range option across the application

Confidence Score: 4/5

  • This PR is safe to merge with minor attention to performance at scale
  • The implementation is well-structured with proper permission checks, error handling, and parallel data fetching. The React hooks dependency fix in the latest commit addresses potential infinite loop issues. The code follows established patterns and includes comprehensive filtering logic.
  • Pay attention to apps/sim/app/workspace/[workspaceId]/logs/executions-dashboard.tsx (1155 lines) for performance with large datasets

Important Files Changed

File Analysis

FilenameScoreOverview
apps/sim/app/api/workspaces/[id]/execution-history/route.ts4/5New API endpoint for fetching execution history with time-based segmentation; implements proper permission checks and parallel workflow processing
apps/sim/app/api/workspaces/[id]/execution-history/[workflowId]/route.ts4/5New API endpoint for detailed workflow execution data with error rates, durations, and execution counts; includes extensive output extraction logic
apps/sim/app/workspace/[workspaceId]/logs/executions-dashboard.tsx4/5Large new component (1155 lines) implementing execution dashboard with interactive charts, status bars, and detailed logs; includes time navigation and segment filtering

Sequence Diagram

sequenceDiagram
participant User
participant ExecutionsDashboard
participant FilterStore
participant HistoryAPI as /execution-history
participant WorkflowAPI as /execution-history/[workflowId]
participant DB as Database
User->>ExecutionsDashboard: Load dashboard
ExecutionsDashboard->>FilterStore: Get filters (workflows, folders, triggers, timeRange)
ExecutionsDashboard->>HistoryAPI: GET with filters & time params
HistoryAPI->>DB: Check permissions
HistoryAPI->>DB: Query workflows (with filters)
HistoryAPI->>DB: Fetch logs in parallel for each workflow
HistoryAPI->>HistoryAPI: Calculate 120 segments with success rates
HistoryAPI-->>ExecutionsDashboard: Return workflow executions with segments
ExecutionsDashboard->>ExecutionsDashboard: Render status bars
User->>ExecutionsDashboard: Click workflow row
ExecutionsDashboard->>WorkflowAPI: GET workflow details
WorkflowAPI->>DB: Check permissions
WorkflowAPI->>DB: Fetch execution logs with filters
WorkflowAPI->>WorkflowAPI: Calculate error rates, durations, counts (30 points)
WorkflowAPI->>WorkflowAPI: Extract outputs & errors from trace spans
WorkflowAPI-->>ExecutionsDashboard: Return metrics + formatted logs
ExecutionsDashboard->>ExecutionsDashboard: Render line charts & logs table
User->>ExecutionsDashboard: Click segment in status bar
ExecutionsDashboard->>ExecutionsDashboard: Filter logs to segment time range
ExecutionsDashboard->>ExecutionsDashboard: Update logs table display
User->>FilterStore: Change time range/filters
FilterStore->>ExecutionsDashboard: Trigger re-fetch
ExecutionsDashboard->>HistoryAPI: GET with updated params
HistoryAPI-->>ExecutionsDashboard: Return updated data
Loading

4 files reviewed, no comments

Edit Code Review Agent Settings | Greptile

@Sg312
Sg312 merged commit 1a05ef9 into stagingOct 15, 2025
7 of 9 checks passed
@waleedlatif1
waleedlatif1 deleted the feat/executions-dashboard branch November 6, 2025 01:25
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants

@Sg312@waleedlatif1@icecrasher321