Skip to content

Changelog ​

Unreleased ​

[0.2.5] - 2026-09-16 ​

Security ​

  • {{secrets.*}} resolves only in HTTP Request and Send Webhook; other nodes leave the tag unresolved
  • Resolved secret plaintext is tracked and redacted from execution logs, dry-run output, and node output passed downstream ([REDACTED_SECRET])

[0.2.4] - 2026-09-16 ​

Changed ​

  • AI library upsells are gated only by a package constant (LibraryUpsellCatalog), not config / .env — host installs cannot re-enable cards that link to a missing product page

[0.2.3] - 2026-09-16 ​

Changed ​

  • Library AI upsell cards are off by default and no longer toggled via VOODFLOW_LIBRARY_UPSELLS / VOODFLOW_AI_UPSELL_URL — host apps cannot enable broken product links; Voodflow re-enables them in a package release when the public page is live

[0.2.2] - 2026-09-16 ​

Changed ​

  • Remove in-repo work documentation (checklists, sales/developer stubs, internal notes); keep public README assets under docs/images/ (and product academy/manual where applicable)

v0.2.1 - 2026-09-11 ​

Changed ​

  • Registers the voodflow vault root via RegistersPluginVault (replacing the old bootstrap helper)
  • Approval page layout hero media picker scopes to the voodflow vault album when vmedia is present

v0.2.0 - 2026-09-08 ​

Distribution tag for host apps (composer require voodflow/voodflow:^0.2). Requires php artisan migrate (ops tables) and a running queue worker for waits/approvals.

Added ​

  • Human-in-the-loop (HITL): request_approval node pauses execution until Approve/Reject via signed email links and/or Filament Approvals inbox (notes, recipient match, scoped list for non–super_admin, admin bulk delete, filters/search/sort)
  • Waits & signals: wait_for_signal, date_reached_node; WorkflowWait + Voodflow::signal() / resolveWait(); commands voodflow:process-waits, voodflow:date-reached-run, voodflow:signal
  • Secrets: encrypted Secret model / Filament resource; tags {{secrets.key}}
  • Ops platform: workflow versioning (WorkflowVersion), dry-run executions (is_dry_run), RunWorkflow actions, open failed node on canvas
  • Chat webhooks: built-in Slack / Discord / Teams / Telegram templates via WebhookTemplateRegistry
  • Services / guards: WorkflowWaitService, WorkflowVersionService, WorkflowFailureOps, UrlGuard, WebhookSignature, TriggerMatchFilter, MaxWorkflowsGate, feature flags / WorkflowGate
  • Config: approvals.*, ops.*, limits.max_workflows, http.ssrf_protection, webhooks.verify_signatures, chat_webhook_templates, library.*
  • TagReplacer: {{secrets.key}}; bare {{field}} from list envelope data[0]; optional spaces ({{ name }})
  • Tests: approvals visibility/notes, Request Approval tags, waits/signals, UrlGuard, TriggerMatchFilter, TagReplacer secrets, Filter/ForEach loop cases

Changed ​

  • Composer package version 0.2.0
  • ExecutionResult waiting state; executor pauses and resumes on wait outcomes
  • Filament nav order: Dashboard → Workflows → Approvals → Executions → Message Templates → Model Integrations → Credentials → Secrets → Settings
  • Multi-trigger workflows: prefer matching trigger node / _start_node_id
  • AI out of core: ai_prompt / ai_agent and Agent Integrations moved to optional voodflow-ai / voodflow-ai-core; Flow Weaver remains optional (voodflow-ai-weaver) with soft coupling only

Fixed ​

  • Request Approval / mail tags resolve against Manual Trigger list envelopes (primaryRecordForTags + TagReplacer envelope fallback)
  • Core no longer hard-typehints AiWeaver / AiCore classes
  • Filter + For Each loop item evaluation / empty lists; Send Mail first-record tags; executor loop envelope handling

Full Changelog: https://github.com/voodflow/voodflow/compare/v0.1.2...v0.2.0

v0.1.2 - 2026-07-23 ​

Added ​

  • System Notification node (v1.3.0): Filament channels for Database (bell) and Broadcast (realtime popup via Echo/Reverb)
  • Workflow UX: Create & open flow; Save & close / Open flow on edit; clearer Flow vs Edit table actions

Fixed ​

  • Duplicate broadcast toasts when both Filament Echo and Flow-editor replay paths fired — broadcast is handled only by Filament Echo
  • Flow editor live node glow depends on reachable Reverb (document host port publish for Docker)

Full Changelog: https://github.com/voodflow/voodflow/compare/v0.1.1...v0.1.2

v0.1.1 - 2026-07-13 ​

Added ​

  • AI workflow nodes: ai_prompt_node and ai_agent_node with Agent Integration registry, credential resolver, and Filament resource
  • Plugin node paths: NodePathRegistry and deferred dynamicNodeBundles script data for marketplace nodes (e.g. Vtuts)

Changed ​

  • Transform node: improved upstream field hints and UI
  • HttpRequest node: credential auth helpers and expanded tests

Fixed ​

  • Plugin workflow nodes stuck on “Loading …” when registered before Voodflow boot completes

Full Changelog: https://github.com/voodflow/voodflow/compare/v0.1.0...v0.1.1

v0.1.0 - 2026-06-25 ​

Full Changelog: https://github.com/voodflow/voodflow/compare/v0.0.10...v0.1.0

[0.1.0] - 2026-06-25 ​

Added ​

  • Filament 5: official support alongside Filament 4 (filament/filament and filament/spatie-laravel-settings-plugin ^4.0|^5.0).
  • Tests: restored package test bootstrap (migrations, Spatie settings, users table) so the suite runs reliably in isolation.

Changed ​

  • Flow editor: @xyflow/react updated to 12.11.1 (rebuilt dist assets).

Fixed ​

  • Tests: corrected ModelUpdateNodeTest namespace/import; removed reference to a non-existent migration stub in TestCase.

[0.0.10] - 2026-04-15 ​

Added ​

  • Workflows: bulk export selected workflows as a ZIP of JSON exports.
  • Flow editor: single export now includes title, description and a stable fingerprint; import previews metadata and can optionally update workflow meta.
  • Imports: fingerprint-based duplicate detection with clear, translatable warnings and optional overwrite.

Fixed ​

  • Metadata: preserve workflow fingerprint when saving viewport and other editor metadata.

[0.0.9] - 2026-04-14 ​

Added ​

  • Node access control: nodes can now show a dedicated non-executable notice, with localized hints, when a node is disabled during execution for the current role.
  • Flow editor: a persistent Save disabled badge is shown on the canvas when the workflow is read-only.
  • CORE node: Workflow Author exposes workflow author details as author.* with safe-by-default sanitization for admin-owned (“system”) workflows.

Changed ​

  • Node access control UX: read-only behavior is now consistent across nodes via shared UI flags (useNodeAccessUi) and shared notices.
  • Collapsed nodes: the Voodflow logo / “Connect data” placeholder is no longer shown when the node input is already connected.
  • Settings: redesigned the Node access control matrix with grouping, sorting and a lighter “Shield-style” layout.
  • Node generator CLI: newly generated nodes scaffold consistent access-control UX (read-only, delete gating, non-executable notice).

Fixed ​

  • Read-only workflows: backend write actions are silently ignored when the workflow is read-only to avoid modal/notification spam.

Full Changelog: https://github.com/voodflow/voodflow/compare/v0.0.8...v0.0.9

[0.0.8] - 2026-04-13 ​

Added ​

  • Flow editor / model introspection: FlowWorkflow enriches field metadata with enum options when the attribute is cast to a PHP BackedEnum; if there is no enum cast but the column is treated as enum, distinct values are sampled from the database (up to 50) so the UI stays usable.

Fixed ​

  • Credentials admin: Last used (last_used_at) is now updated when Send Mail or HTTP Request nodes use a stored credential (they previously bypassed CredentialProxy). Failures call recordError() on the credential for visibility.
  • Model Update node: empty string values are normalized to null for attributes cast to backed enums, avoiding ValueError from Enum::from('').

Changed ​

  • Node registry: resources/js/nodeRegistry.js generation timestamp refreshed.

Full Changelog: https://github.com/voodflow/voodflow/compare/v0.0.7...v0.0.8

[0.0.7] - 2026-04-10 ​

Added ​

  • Model metadata: EloquentRelationInspector and registry enrichment add a stable kind per relation (e.g. belongs_to_many vs belongs_to) so nodes rely on metadata instead of naming conventions.
  • Model Update / events: ModelRelationLoader eagerly loads relations from HasVoodflow or ModelRegistry after persistence; tag context merges WorkflowPayload::primaryRecordForTags for templates.
  • Flow editor: WorkflowUpstreamFieldHints walks upstream nodes through Merge so Update Model field suggestions match runtime payloads.
  • Filament: policies for credentials, executions, triggers, and message layouts; FilamentShieldPageAccess integrates Shield with dashboard and settings pages.

Fixed ​

  • Merge: optional waitForAllInputs defers execution until every incoming branch has output when parallel fan-in would otherwise fire downstream multiple times.

Changed ​

  • Update Model (UI): upstream field list prefers integration metadata then database columns; Merge panel exposes the wait-for-all-inputs toggle.

Full Changelog: https://github.com/voodflow/voodflow/compare/v0.0.6...v0.0.7

[0.0.6] - 2026-04-09 ​

Fixed ​

  • Merge: Merge inputs use the live branch payload when available; for other branches the executor resolves the latest source output even when workflow_node_id uses a suffix (id#…), so downstream nodes and tags keep data after a merge.
  • Expression: 0 / '0' are no longer treated as an empty expression (PHP empty()); rows are considered configured explicitly.
  • Flow editor (React): fewer chained updates and duplicate Livewire listeners (FlowEditor, global bridge, useUpstreamHash, standard node behavior); mitigates React error #185 after runs; DataViewer avoids feedback loops on derived columns.

Changed ​

  • Merge node: requires at least one valid input (no longer two mandatory inputs).
  • System notifications: tags merge full context with the first normalized record from the current payload (WorkflowPayload::primaryRecordForTags), keeping aliases and scalar fields consistent with runtime.

Full Changelog: https://github.com/voodflow/voodflow/compare/v0.0.5...v0.0.6

[0.0.5] - 2026-04-08 ​

Fixed ​

  • Flow editor: sticky notes use a stable width and auto-grow in height; dimensions persist more reliably; header label NOTE.
  • System notification: template context merges immediate upstream output (e.g. Aggregate aliases such as list_name) so tags resolve in title/body.
  • Aggregate: Pluck values and Collect array (push) are implemented in PHP (previously UI-only).
  • TagReplacer: lists of scalars (e.g. plucked names) render as comma-separated text instead of [Array with N items].

Changed ​

  • System notification “Available tags”: suggestions and clipboard copy use paths consistent with execution-time TagReplacer (e.g. {{name}} vs data.name).

[0.0.4] - 2026-04-08 ​

Added ​

  • Horizon-aware queue health in the admin widget (shows Horizon status, queue name, and supervisor details when available).
  • A voodflow:horizon-snapshot-loop command for environments without a scheduler to keep Horizon metrics up to date.

Changed ​

  • voodflow:work --horizon now starts the scheduler (and Reverb if available) even when Horizon is already running.
  • Health widget layout is now dynamic (license stat is shown only when configured, and columns adapt accordingly).

Fixed ​

  • Workflow broadcasting failures (e.g. Reverb offline) no longer fail executions; errors are logged and execution continues.
  • Queue worker activity detection is more reliable via a generic heartbeat updated on job lifecycle events.

[0.0.3] - 2026-04-08 ​

Fixed ​

  • Scheduled workflows are now dispatched to the queue (and visible in Horizon) when VOODFLOW_EXECUTE_SYNC=false.

[0.0.2] - 2026-04-04 ​

Changed ​

  • License dashboard cache: shorter TTL for license status (portal.license_cache_ttl_minutes, default 15 minutes, env VOODFLOW_PORTAL_LICENSE_CACHE_MINUTES) so Anystack deactivation is reflected in the admin widget without waiting for the 24h version cache.
  • Health widget: manual “Check now” control on the Voodflow License stat clears the portal license cache and refreshes the stat; success notification when a Composer license key is present.

Added ​

  • Localized strings for the license refresh control (voodflow::voodflow.widgets.health.*).

[0.0.1] - 2026-04-02 ​

Added ​

  • First stable release: Voodflow — Filament plugin for visual workflows on Laravel.
  • Visual workflow editor (React Flow), triggers, flow-control and data nodes, actions, queue-based execution, credentials, and model integrations.
  • php artisan voodflow:install for config, published assets, and migrations.
  • Portal integration: version and license checks via api.voodflow.com, Composer-sourced license key, VoodflowPortalClient, and config/voodflow.php → portal.
  • Webhooks, scheduling, whitelabel hooks, optional tenancy support.
  • CLI: voodflow:make-node, voodflow:build-node, voodflow:package-node, workers, and maintenance commands.
  • Distribution via private Composer (Anystack).

Notes ​

Voodflow Documentation.