Commit Graph

144 Commits

Author SHA1 Message Date
b59713b980 Return the form expired error code in get form definition in WEbAPp Api (vibe-kanban 758765b0) 2026-01-26 16:14:02 +08:00
33a830cbc9 refactor(api): rename placeholder to default_value in various parts
Previously the fields / classes are named with `placeholder`. However,
the actual purpose is to use as default values. This commit addresses
this problem by correcting names for relevant fields / classes.

- FormInputPlaceholder
- FormInput.placeholder
- HumanInputRequiredResponse.resolved_placeholder_values
- HumanInputFormDefinition.resolved_placeholder_values
- FormCreateParams.resolved_placeholder_values
- HumanInputRequired.resolved_placeholder_values
- The `resolved_placeholder_values` argument of _create_human_input_delivery_test_form
- The `resolved_placeholder_values` inside _jsonify_form_definition
2026-01-23 15:05:18 +08:00
67c7ca7da7 Do not allow create WorkflowTool from workflows containing HumanInput nodes (vibe-kanban 9e27ac53)
The HumanInput node will pause the execution of workflow if execution, while WorkflowTool works in a blocking manner. (Receiving arguments and returning results once finished). The two mode are inherently incompatible.

The goal of this change is to forbid workflows containing HumanInput node being published as WorkflowTool.

Please check the current implementation and propose a solution.
2026-01-21 16:29:49 +08:00
073305e699 feat(api): publish a message_replace event with saved temporary answer
This ensures that the message content in frontend UI is properly
restored.
2026-01-21 15:56:32 +08:00
004df1c159 fix(api): fix connection closing issue for event subscription
The previous implementation does not close the connection once
`WORKFLOW_PAUSED` event is met, which breaks the contract with
frontend.
2026-01-21 15:29:00 +08:00
20be1dd819 feat(api): support variable reference and substitution in Email delivery
The EmailDeliveryConfig.body now support referencing variables generated
by precedent nodes.
2026-01-21 15:26:25 +08:00
32dab780ba feat(api): adjust /events resumption mechanism
Avoid drain_queue and race condition caused by drain queue.

The current approach starts a background thread and buffer in-fly events
to an intermediate queue.Queue. The queue is bound and will drop events
once it's full.
2026-01-21 14:29:26 +08:00
578cac35e3 chore(api): reformat code 2026-01-19 10:48:45 +08:00
b085df9425 feat(api): restore node state snapshots via /events api 2026-01-19 09:58:45 +08:00
6bf6bf6a2a feat(api): implement test form delivery & submission logic (vibe-kanban 89cd6a22)
This ensures that user can receive & submit form while using email
delivery test.
2026-01-19 09:52:30 +08:00
80139bdfb4 test(api): adjust tests for _resolve_human_input_email_delivery_enabled 2026-01-16 09:42:39 +08:00
d87ff9e501 Ensure that only users with Pro plan can use Email Delivery in HumanInput Node (vibe-kanban ea6739cc)
For users with sandbox plan, the email delivery is not available.

The backend logic should check the plan of the current tenant while sending email. The core check logic should be abstracted in FeatureService. The `HumanInput` node configuration should not validate the presence of `EmailDelivery`.

For enterprise deployment, the email delivery is not limited.
2026-01-15 12:03:58 +08:00
e50d849913 Implement debug_mode for email delivery (vibe-kanban f32190a0)
The EmailDeliveryConfig in api/core/workflow/nodes/human\_input/entities.py has a field `debug_mode`. When this field is set to `True` in `node_data`, the test run (InvokeFrom.DEBUGGER) and the delivery test should only sent test emails to the current user, instead of sending to the specified recipients.

Please implement this logic, write correspond test cases to ensure that the logic works as expected.
2026-01-15 10:21:32 +08:00
f1b2e1cfb4 feat(api): Add app_id field to HumanInputForm model
This ensures that `HumanInputForm` could be associated to a specific
application without relying on `WorkflowRun`, providing us a smoother
migration path if we want to implement test form.
2026-01-14 16:58:17 +08:00
9c287ee0ae feat(api): adjust form submission run api
Separate `inputs` and `form_inputs` fields.
2026-01-13 11:08:31 +08:00
99937aba2e refactor(api): Unify Human Input handling logic 2026-01-13 10:39:55 +08:00
b3069bf154 feat(api): expose workflow_run_id in human_input extra contents 2026-01-09 00:22:59 +08:00
de428bc9bb feat(api): add human input data to extra contents 2026-01-08 10:21:53 +08:00
fb01b91b06 WIP: feat(api): implement delivery testing api 2026-01-06 08:54:06 +08:00
184f7ab144 WIP: feat(api): always use form_token to submit human input form 2026-01-06 08:53:24 +08:00
1ad2b97169 WIP: feat(api): do not return paused node_execution records & preserve node_execution_id across pause 2026-01-04 23:38:40 +08:00
37dd61558c feat(api): Implement HITL for Workflow, add is_resumption for start event 2025-12-30 16:40:08 +08:00
01325c543f chore(api): fix tests 2025-12-26 17:17:00 +08:00
74b6b48f40 chore: fix: typing 2025-12-26 15:01:40 +08:00
5d0dd329f2 WIP: human input timeout 2025-12-26 12:34:46 +08:00
1f64281ce5 WIP: message extra contet 2025-12-26 12:34:46 +08:00
f368155995 resume test 2025-12-26 12:16:01 +08:00
c0f1aeddbe WIP: resume 2025-12-26 11:52:49 +08:00
8b914d9116 WIP 2025-12-26 10:45:23 +08:00
d1f9911848 feat: make the SegmentService.get_segments sort stable (#30152) 2025-12-25 15:53:38 +08:00
111a39b549 fix: fix firecrawl url concat (#30008) 2025-12-24 09:40:32 +08:00
efac8766a1 fix: YAML URL import rewrite for GitHub attachments (#30003)
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2025-12-23 19:14:39 +09:00
9a51d2da57 feat: add billing subscription plan api (#29829)
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2025-12-18 13:11:47 +08:00
dda7eb03c9 feat: _truncate_json_primitives support file (#29760) 2025-12-17 08:10:43 +09:00
7695f9151c chore: webhook with bin file should guess mimetype (#29704)
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Maries <xh001x@hotmail.com>
2025-12-16 13:34:27 +08:00
187450b875 chore: skip upload_file_id is missing (#29666) 2025-12-15 21:09:53 +08:00
09982a1c95 fix: webhook node output file as file variable (#29621) 2025-12-15 19:55:59 +08:00
266d1c70ac fix: fix custom model credentials display as plaintext (#29425) 2025-12-11 09:48:45 +08:00
a0c8ebf487 chore: not slient call external service error (#29290) 2025-12-09 10:25:33 +08:00
3cb944f318 feat: enable tenant isolation on duplicate document indexing tasks (#29080)
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2025-12-08 17:54:57 +08:00
05fe92a541 refactor: port reqparse to BaseModel (#28993)
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
2025-12-08 15:31:19 +09:00
e924dc7b30 chore: ignore redis lock not owned error (#29064)
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2025-12-04 10:14:28 +08:00
0a2d478749 Feat: Add "Open Workflow" link in workflow side panel (#28898) 2025-11-29 18:47:12 +08:00
0aed7afdc0 feat: Add comprehensive unit tests for TagService with extensive docu… (#28885)
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
2025-11-28 18:01:01 +08:00
c64fe595d3 test: add comprehensive unit tests for ExternalDatasetService (#28872) 2025-11-28 17:59:02 +08:00
6f927b4a62 test: add comprehensive unit tests for RecommendedAppService (#28869) 2025-11-28 15:10:24 +08:00
4dcd871cef test: add comprehensive unit tests for AudioService (#28860) 2025-11-28 14:43:35 +08:00
abe1d31ae0 test: add comprehensive unit tests for SavedMessageService (#28845) 2025-11-28 14:42:54 +08:00
2d71fff2b2 test: add comprehensive unit tests for TagService (#28854) 2025-11-28 14:41:57 +08:00
1fc2255219 test: add comprehensive unit tests for EndUserService (#28840) 2025-11-28 14:22:19 +08:00