Files
osmedeus/test/testdata/workflows/debug-events/test-event-input.yaml
T
j3ssie f5840272c5 feat: add run cancellation, event enhancements, and performance optimizations
Major features:
- Add run registry for tracking active runs with PID management
- Add API-based run cancellation with process termination
- Add event trigger input vars syntax for multi-variable extraction
- Add filter_functions with utility function support in triggers
- Add event envelope injection for full event context in workflows
- Add write coordinator for batched database operations

API improvements:
- Add logout endpoint and diffs endpoints for assets/vulnerabilities
- Add step-results listing endpoint
- Update schedule model with target, workspace, params fields
- Change run_id to run_uuid across API responses

Performance:
- Add compiled JS program caching for 60-80% faster loop conditions
- Add parallel shard rendering for 20-40% faster workflow startup
- Add memory-mapped I/O for large file line counting
- Add efficient output buffer combining in runners
- Add mtime-based cache invalidation for workflow loader

Other changes:
- Rename trigger field from trigger to triggers in workflow YAML
- Disable pongo2 HTML autoescape for shell command templates
- Update JWT expiration default to 1440 minutes (1 day)
- Change CORS default to reflect-origin for credentials support
- Add source_type field to events (run, eval, api)
- Skip copying core Unix tools to external-binaries
2026-01-24 01:11:33 +08:00

42 lines
1.0 KiB
YAML

name: test-event-input
kind: module
description: Test new event input syntax (exports-style Vars)
triggers:
- name: on-asset-vars
on: event
event:
# topic: "test.asset.vars"
topic: "*"
input:
# New exports-style syntax: variable_name: expression
Target: event_data
asset_type: event.type
source: event.source
description: trim(event_data.desc)
enabled: true
params:
- name: Target
required: true
steps:
- name: verify-vars
type: bash
commands:
- 'echo "target={{target}}"'
- 'echo "Target={{Target}}"'
- 'echo "TargetSpace={{TargetSpace}}"'
- 'echo "asset_type={{asset_type}}"'
- 'echo "source={{source}}"'
- 'echo "description={{description}}"'
- name: echo-envelope
type: bash
commands:
- 'echo "Full envelope: {{EventEnvelope}}"'
- 'echo "Topic: {{EventTopic}}"'
- 'echo "Source: {{EventSource}}"'
- 'echo "DataType: {{EventDataType}}"'
- 'echo "Timestamp: {{EventTimestamp}}"'
- 'echo "Data: {{EventData}}"'