Files
osmedeus/test/testdata/workflows/test-debounce-dedupe.yaml
T
j3ssie 1403d20a4d feat: add LLM step executor with vision and tool support, event workflow system, and inheritance
- Add LLM executor supporting OpenAI vision, tool calling, embeddings, and structured outputs
- Introduce event emitter/receiver workflows with deduplication and filtering (generate_event functions)
- Add workflow extends/override system enabling inheritance chains and step merge modes
- Update function naming to snake_case across all testdata (fileExists→file_exists, etc.)
- Add comprehensive test fixtures for linter, events, CDN, step dependencies, and extends workflows
2026-01-20 18:23:57 +08:00

56 lines
1.3 KiB
YAML

name: test-debounce-dedupe
kind: module
desc: Test workflow for debounce and deduplication features
params:
- name: output
default: "/tmp/debounce-dedupe-test"
triggers:
# Watch trigger with debounce - waits 500ms after last change before triggering
- name: on-asset-change
on: watch
path: "{{output}}/assets.txt"
debounce: 500ms
enabled: true
input:
type: file
path: "{{output}}/assets.txt"
# Event trigger with deduplication - ignores duplicate events within 10s window
- name: on-new-asset
on: event
event:
topic: "assets.new"
dedupe_key: "{{event.source}}-{{event.data.url}}"
dedupe_window: 10s
enabled: true
input:
type: event_data
field: url
name: target
# Event trigger with filters and deduplication
- name: on-critical-vuln
on: event
event:
topic: "vulnerabilities.new"
filters:
- "event.data.severity == 'critical'"
dedupe_key: "{{event.data.template}}-{{event.data.host}}"
dedupe_window: 5m
enabled: true
input:
type: event_data
field: host
name: target
steps:
- name: log-event
type: function
call: log_info("Trigger fired: {{_step_name}}")
- name: process-target
type: bash
run: echo "Processing target: {{target}}"