v0.4.17: input format + files support for webhooks, docs updates, dashboard improvements#1663
Merged
waleedlatif1 merged 10 commits intomainfrom Oct 16, 2025
Merged
v0.4.17: input format + files support for webhooks, docs updates, dashboard improvements#1663waleedlatif1 merged 10 commits intomainfrom
waleedlatif1 merged 10 commits intomainfrom
Conversation
…n gh action for docs (#1652) * fix(i18n): fix SDK and guardrails translation corruption * re-enable i18n gh action
…e, and improve performance (#1651) * improvement(dashboard): cleanup execution dashboard UI, fix logs trace, and improve perforamnce * cleanup * cleaned up * ack PR comments
* fix(input-format): allow value field to be cleared * don't let value field be detected as deployment change * fix zep icon in docs * exclude collapsed state
…t for file uploads (#1654) * feat(webhooks): added optioanl input format to webhooks, added support for file uploads * feat(webhooks): added input format component to generic webhook trigger, added file support * consolidated execution files utils, extended presigned URL duration for async tasks
… consolidate routes (#1662) * improvement(dashboard): improve dashboard performance, enrich charts, consolidate routes * cleanup
|
The latest updates on your projects. Learn more about Vercel for GitHub. |
Contributor
There was a problem hiding this comment.
Greptile Overview
Summary
This release consolidates multiple features including webhook file upload support, dashboard performance improvements, and bug fixes. The changes add comprehensive file handling capabilities to both API and webhook triggers through an optional inputFormat configuration with a "files" type.
Key Changes
- Webhook & API File Uploads: Added
processExecutionFilesutility to handle base64 file uploads and URL pass-through with 20MB size limits. Files are uploaded to S3/Blob storage with presigned URLs (10min for async, 5min for sync) - Dashboard Refactor: Replaced older
/execution-historyroutes with consolidated/metrics/executionsendpoint featuring time-bucketed aggregation, percentile calculations (p50, p90, p99), and paginated log loading - Chart Enhancements: Extended
LineChartcomponent to support multi-series data with interactive hover states and improved scaling for millisecond-based metrics - Input Format Fix: Removed validation preventing empty value fields from being cleared in the input format component
- Documentation: Extensive i18n translation updates across 5 languages (es, fr, zh, ja, de) for SDK, webhooks, guardrails, and new tool integrations
- Developer Experience: Added
.gitattributesto normalize line endings for PowerShell users
Confidence Score: 4/5
- Safe to merge with standard testing - well-structured changes with proper validation and error handling
- Score reflects solid implementation with good separation of concerns, comprehensive error handling, and proper validation. The file upload logic includes size limits and format validation. Dashboard consolidation removes deprecated routes cleanly. One point deducted due to the scale of changes across multiple subsystems which increases surface area for edge cases
- apps/sim/background/webhook-execution.ts and apps/sim/app/workspace/[workspaceId]/logs/executions-dashboard.tsx should receive extra attention during testing due to complexity
Important Files Changed
File Analysis
| Filename | Score | Overview |
|---|---|---|
| apps/sim/lib/execution/files.ts | 5/5 | New utility module for processing execution files - handles base64 uploads and URL pass-through with proper validation and size limits |
| apps/sim/background/webhook-execution.ts | 4/5 | Added file processing for webhook inputs including trigger file outputs and generic webhook file support via inputFormat |
| apps/sim/app/api/workflows/[id]/execute/route.ts | 4/5 | Added file processing logic for API trigger executions using inputFormat - processes files before execution |
| apps/sim/app/workspace/[workspaceId]/w/[workflowId]/components/workflow-block/components/sub-block/components/starter/input-format.tsx | 5/5 | Fixed issue preventing value field from being cleared - removed trim check that blocked empty value updates |
| apps/sim/app/api/workspaces/[id]/metrics/executions/route.ts | 5/5 | New consolidated metrics endpoint - replaced older execution-history routes with efficient time-series metrics calculation |
| apps/sim/app/workspace/[workspaceId]/logs/executions-dashboard.tsx | 4/5 | Major dashboard refactor - added paginated log loading, improved performance with new metrics endpoint, enhanced charts |
Sequence Diagram
sequenceDiagram
participant Client
participant API as API Route
participant FileProcessor as processExecutionFiles
participant Storage as S3/Blob Storage
participant Executor as Workflow Executor
participant Metrics as Metrics Endpoint
participant Dashboard
Note over Client,Dashboard: Webhook File Upload Flow
Client->>API: POST /api/workflows/{id}/execute<br/>{files: [{type: 'file', data: base64}]}
API->>API: Load workflow & check inputFormat
API->>FileProcessor: processExecutionFiles(fieldValue)
FileProcessor->>FileProcessor: Validate base64 format
FileProcessor->>FileProcessor: Check 20MB size limit
FileProcessor->>Storage: Upload file with presigned URL<br/>(10min for async, 5min for sync)
Storage-->>FileProcessor: Return UserFile with URL
FileProcessor-->>API: Array of UserFile objects
API->>Executor: Execute workflow with processed files
Executor-->>API: Execution result
API-->>Client: Success response
Note over Client,Dashboard: Dashboard Metrics Flow
Dashboard->>Metrics: GET /api/workspaces/{id}/metrics/executions<br/>?segments=72&startTime&endTime
Metrics->>Metrics: Validate permissions
Metrics->>Metrics: Load workflows (with filters)
Metrics->>Metrics: Query execution logs
Metrics->>Metrics: Bucket data into time segments
Metrics->>Metrics: Calculate p50, p90, p99 percentiles
Metrics-->>Dashboard: Time-series metrics per workflow
Dashboard->>Dashboard: Render multi-series line charts
Dashboard->>Dashboard: Enable paginated log loading
56 files reviewed, no comments
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.