Floogos Update — Week 19, May 2026 (May 4–6, partial)
Summary
Section titled “Summary”The first days of May 2026 (week 19, partial) delivered four notable features and a focused round of stability fixes. The Webhook Tester brings a Postman-style HTTP client directly into the workflow editor. Iteration progress is now visible as live badges on canvas nodes. A dedicated webhook insights page provides traffic analytics by IP and endpoint. A large internationalization pass added over 100 translation keys across both languages. Several iterator engine bugs and webhook reliability issues were also resolved.
New Features
Section titled “New Features”Webhook Tester
Section titled “Webhook Tester”A full HTTP client is now embedded in the workflow editor, accessible whenever a Webhook node is present in the workflow. It functions similarly to Postman or a REST client, pre-populated with data from the execution history:
- URL bar — Shows the webhook URL with a toggle between Production and Development environment URLs.
- Method selector — Choose GET, POST, PUT, DELETE, PATCH, or any supported method.
- Headers table — Editable key-value table. Infrastructure headers added by Floogos are automatically filtered out so only user-relevant headers are shown.
- JSON body editor — CodeMirror-based editor with syntax highlighting and error marking for the request body.
- Response panel — Shows HTTP status code, response time in milliseconds, and the response body with color-coded formatting.
Access points:
- From the execution history dialog: a “Replay” button appears when the selected step is a Webhook node.
- From the node editor toolbar: a “Send” button appears in the header when the node is a Webhook and execution history is available.
- The drawer is resizable by dragging its left edge.
Iteration Progress Badges on Canvas
Section titled “Iteration Progress Badges on Canvas”When a workflow contains an Iterator node, each node inside the iterator now shows a live badge displaying the current iteration index and total count (n / total). This makes it easy to track progress in long-running batch operations directly on the canvas without opening the trace panel.
The badge resets correctly when the total changes between executions, accumulates properly across nodes with delays between iterations, and does not bleed values from previous execution history into a new run.
Webhook Insights Page
Section titled “Webhook Insights Page”A new /webhooks/insights page provides traffic analytics for all webhooks:
- Top 10 IPs — The most active source IP addresses across all webhooks, with call count and block rate.
- Call history — Timeline of all webhook calls with status breakdown.
- Per-webhook status — A summary row for each webhook showing total calls, blocked calls, success rate, and last activity.
- Detailed metrics — Drill-down view for a specific webhook with full log access.
Webhook Policy: Edit and Delete
Section titled “Webhook Policy: Edit and Delete”Security policies can now be edited and deleted directly from the Webhook drawer. Previously, policies could only be created. The delete action uses a confirmation dialog (replacing the previous browser window.confirm) consistent with the rest of the application’s design system.
i18n Expansion
Section titled “i18n Expansion”Over 114 translation keys were added across both Spanish and English locales, covering the following sections: Insights, AI assistant, Comments, Dashboard, Forms, User profile AI settings, Version history, Execution history, Login, Credentials, and Workflow list. The language selector component was also updated.
Improvements
Section titled “Improvements”Custom Edges in the Flow Canvas
Section titled “Custom Edges in the Flow Canvas”A CustomEdge component was added to the workflow canvas, allowing styled connection lines between nodes. This is a foundation for future edge labeling and interaction features.
Heatmap Detail Drawer
Section titled “Heatmap Detail Drawer”The activity heatmap in the Insights page now supports clicking on a cell to open a detail drawer showing the individual executions that occurred during that hour and day.
Version History UI
Section titled “Version History UI”The version history component received a visual refresh and additional details per version entry.
Schedule Modal Shows Workflow Name
Section titled “Schedule Modal Shows Workflow Name”The scheduling dialog in both the workflow list and the Workflow Planner now displays the workflow name as a subtitle, making it clear which workflow is being scheduled when multiple dialogs might be in context.
Webhook Request Headers and IP in Output
Section titled “Webhook Request Headers and IP in Output”The Webhook node now includes the full request headers and the originating IP address in its _request output field, making this data available to subsequent nodes for logging, filtering, or auditing.
Bug Fixes
Section titled “Bug Fixes”Iterator Batch: Source Tracking and Race Condition
Section titled “Iterator Batch: Source Tracking and Race Condition”When an Iterator node ran in batch mode with multiple parallel branches, the source information for each result was not tracked correctly, causing some results to be attributed to the wrong branch. A race condition in mergeResults was also fixed, where concurrent branch completions could produce inconsistent merged outputs.
Iterator Batch: Unknown Module
Section titled “Iterator Batch: Unknown Module”When a node inside an iterator batch referenced a module that could not be resolved, the error was not handled gracefully and could leave the batch in an indeterminate state. This is now caught and the batch fails cleanly with an error message.
Iterator Batch: mergeMultiple IterationInfo
Section titled “Iterator Batch: mergeMultiple IterationInfo”When using mergeMultiple inside an iterator batch, the iterationInfo object was not propagated correctly to merged results, causing downstream nodes to lose context about which iteration produced the data.
Iterator Batch: Memory Load and _meta_ Propagation
Section titled “Iterator Batch: Memory Load and _meta_ Propagation”Memory load operations inside iterator batches were not correctly resolving when _meta_ fields were present in the stored data. This caused certain batch configurations using DataStore or variable nodes to fail silently.
Batch broadcastEvent Missing workflowParentId
Section titled “Batch broadcastEvent Missing workflowParentId”The broadcastEvent call used to push real-time updates to the frontend was missing the workflowParentId parameter in batch mode, causing the live canvas updates to not reach the correct workflow session.
Batch Error Serialization
Section titled “Batch Error Serialization”Errors thrown inside batch executions were not serialized consistently, resulting in unhelpful error messages in the trace panel for failed batch nodes.
False-Failed Guard in Iterator
Section titled “False-Failed Guard in Iterator”Under certain timing conditions, an iterator branch that completed successfully could be marked as failed when the engine evaluated the result after a delay. A guard was added to prevent this false-failed state.
Delay Trace Continuity
Section titled “Delay Trace Continuity”When a workflow execution included a Delay node, the trace entries after the delay were not correctly linked to the preceding trace context, causing gaps in the execution history visualization.
Trust Proxy and IPv6 in Webhooks
Section titled “Trust Proxy and IPv6 in Webhooks”The webhook server was not configured to trust the proxy’s X-Forwarded-For header, causing IP logging and IP-based security policies to see the proxy’s IP instead of the client’s real IP. IPv6 addresses are now also handled correctly in IP matching and logging.
Technical Notes
Section titled “Technical Notes”- The Webhook Tester is implemented as
WebhookTesterDrawer(680px width) and is mounted lazily only when a Webhook node is detected in the flow. - Iteration progress broadcast is handled by a new
broadcastEventcall in the engine that fires after each iteration step withnandtotalfields. The frontend accumulates these events per node and resets on a new run start. - The
mergeResultsfix in the iterator batch uses a per-branch lock to eliminate the race condition. - The trust proxy setting was added to
serverWebhooks.jsto correctly resolvereq.ipbehind a reverse proxy.