| #105 |
highway: Fixed duplicate activity execution - checkpoints cache bug
Root cause: ctx.checkpoints was empty dict, ctx._checkpoints_cache had actual data. Fixed in operato...
|
closed |
high |
2025-11-26 23:41 |
- |
|
| #104 |
Implement _execute_as_activity() for auto-converting long-running tasks to activities
Fix dead code bug at operators.py:105. Tasks with timeout > 30s should be auto-converted to activiti...
|
closed |
high |
2025-11-26 22:36 |
- |
|
| #103 |
activity pattern issue
The _execute_as_activity method at line 105 is dead code - it's called but never defined! The activi...
|
closed |
critical |
2025-11-26 22:12 |
- |
|
| #102 |
DSL generator missing LLM tool training - call_llm() missing provider argument
DSL generator prompt not properly trained for LLM tool tasks. Generated workflow returned error: cal...
|
closed |
high |
2025-11-26 21:20 |
- |
|
| #101 |
HIGH: AbsurdClient max_attempts defaults to 1 (no retry)
absurd_client.py:132 - max_attempts ALWAYS set, defaulting to 1 if not provided. Prevents unintended...
|
closed |
high |
2025-11-26 20:52 |
- |
|
| #100 |
HIGH: LISTEN/NOTIFY thread health monitoring with auto-restart
worker.py:333 - Thread crash handling with auto-restart (up to 3 times). After 3 failures, falls bac...
|
closed |
high |
2025-11-26 20:52 |
- |
|
| #99 |
HIGH: Multi-tenancy filtering enforced in all CLI queries
monitor.py:222, monitor_steps.py:152, showlogs.py:117 - All CLI modules filter by tenant_id to enfor...
|
closed |
high |
2025-11-26 20:52 |
- |
|
| #98 |
HIGH: Callback tasks marked executed to prevent re-scheduling
inline_executor.py:1044-1046 - on_success/on_failure callback tasks marked as executed after running...
|
closed |
high |
2025-11-26 20:52 |
- |
|
| #97 |
HIGH: Wait operators can re-execute on workflow resume
inline_executor.py:1091-1110 - WaitOperator and WaitForEventOperator NOT marked as executed when sle...
|
closed |
high |
2025-11-26 20:52 |
- |
|
| #96 |
HIGH: Failure handler savepoint rollback before logging
inline_executor.py:1182-1188 - After task fails, PostgreSQL aborts transaction. Rollback to savepoin...
|
closed |
high |
2025-11-26 20:52 |
- |
|
| #95 |
HIGH: Deep copy workflow_state for parallel branch isolation
operators.py:463-465 - Branch contexts require deep copy of parent workflow_state for isolation. Ena...
|
closed |
high |
2025-11-26 20:51 |
- |
|
| #94 |
HIGH: Never log plaintext or ciphertext in encryption operations
encryption.py:218,281 - Encryption/decryption logs NEVER include plaintext or ciphertext. Only logs ...
|
closed |
high |
2025-11-26 20:51 |
- |
|
| #93 |
HIGH: Immutable workflow definition storage for audit integrity
workflow_versioning_service.py:170 - Workflow JSON NEVER modified after storage. Each unique hash st...
|
closed |
high |
2025-11-26 20:51 |
- |
|
| #92 |
HIGH: Durable cron definition_id injection for workflow.execute
durable_cron.py:344-352 - For tools.workflow.execute tasks, definition_id injected into target_param...
|
closed |
high |
2025-11-26 20:51 |
- |
|
| #91 |
HIGH: Durable cron schedule inactive check stops zombie jobs
durable_cron.py:226-227 - Cron loop checks if schedule marked inactive (deleted) and stops iteration...
|
closed |
high |
2025-11-26 20:51 |
- |
|
| #90 |
HIGH: Mini-workflow executed_tasks state persistence to parent
workflow_executor.py:179-185 - Mini-workflows' executed_tasks state persisted to parent workflow con...
|
closed |
high |
2025-11-26 20:51 |
- |
|
| #89 |
HIGH: Mini-workflow sequential execution prevents recursive spawning
workflow_executor.py:172-177 - Mini-workflows execute with enable_concurrent_levels=False. Only top-...
|
closed |
high |
2025-11-26 20:51 |
- |
|
| #88 |
HIGH: SQL injection prevention via sql.Identifier for dynamic tables
timeout_service.py:174,311 dead_letter_service.py:189,204 heartbeat_service.py:182 - All services us...
|
closed |
high |
2025-11-26 20:51 |
- |
|
| #87 |
CRITICAL: DataShard log cleanup delayed until terminal state
datashard_logger.py:334-364 - Cleanup of workflow_state (replacing stdout/stderr with log_id) only p...
|
closed |
critical |
2025-11-26 20:51 |
- |
|
| #86 |
CRITICAL: DeadLetterService transactional atomicity requirement
dead_letter_service.py:14,60 - DLQ operations MUST use provided connection for atomicity with failur...
|
closed |
critical |
2025-11-26 20:51 |
- |
|