Clear Filters
ID Title Status Priority Created Due Date Actions
#748 Fix flaky rate limit test parallel interference
cleanup_rate_limits fixture used broad LIKE pattern that deleted config rows from concurrently runni...
closed medium 2026-02-09 00:31 -
#747 CLAUDE.md updated for modular architecture
Updated CLAUDE.md to reflect: nested submodules (highway-core + jumper), replicated workers, new ser...
closed low 2026-02-09 00:30 -
#746 health_monitor_cron template passes invalid alert_threshold parameter
Removed alert_threshold=2 from kwargs - HealthMonitorApp.check_and_alert() does not accept it.
closed low 2026-02-09 00:16 -
#745 Cross-run event pollution causes deadlock in parallel workflows
Static event names in DSL templates persist in jumper.e_highway_default between runs. When a subsequ...
closed high 2026-02-08 23:38 -
#744 Bootstrap only registers pre-installed apps, not example apps
The register_apps internal tool only scans enterprise/apps/pre_installed/ (8 apps). The 9 example ap...
closed high 2026-02-08 21:47 -
#742 database_demo app returns non-JSON-serializable datetime
App returns datetime objects in query results. Needs to convert to ISO format strings before returni...
closed medium 2026-02-08 21:39 -
#741 approval_email app uses ctx.db_connection in IPC mode
App tries direct DB access which is unavailable in IPC isolation mode. App code needs refactoring to...
closed medium 2026-02-08 21:39 -
#740 Enterprise CLI submit broken after modularization
hwe submit fails with TypeError: submit_workflow() got unexpected keyword argument queue. Signature ...
closed high 2026-02-08 20:59 -
#732 Phase 1 Workflow Patterns implemented
Implemented WDP-34/35/36/37 (Task Pre/Post Conditions via DataGuard), WCP-6 (Multi-Choice OR-split),...
closed medium 2026-02-07 05:20 -
#730 F-string logger violations across engine codebase
50+ instances of f-string in logger calls violating CLAUDE.md rule. Needs conversion to lazy formatt...
closed low 2026-02-07 02:48 -
#729 SQL injection risk in sleeping_task_wakeup_service.py
Lines 121-123 use f-strings for table names. Should use psycopg.sql.Identifier() per codebase conven...
closed medium 2026-02-07 02:48 -
#728 Missing rollback_pending() on savepoint release failure in sleep path
In _handle_sleep_exception(), if RELEASE SAVEPOINT fails, pending cache entries are never rolled bac...
closed medium 2026-02-07 02:48 -
#727 No circular dependency detection in workflow DAG
Circular deps in workflow graph cause infinite hang with zero error output. Need cycle detection usi...
closed medium 2026-02-07 02:48 -
#726 On-failure callback double execution risk
In _handle_failure_exception(), task is marked as executed AFTER callback runs. If callback raises, ...
closed high 2026-02-07 02:48 -
#725 State machine guard on workflow_run status updates
update_workflow_run_status() updates status without checking current state. Two concurrent writers c...
closed high 2026-02-07 02:48 -
#724 ## Problem Two issues with worker signal handling prevent proper graceful shutdown: ### Issue 1: Delayed Shutdown Response - Signal handler sets `_shutdown_requested = True` - But `wakeup_event` is a local variable in `worker_command()` - Signal handler can't access it to wake up blocked `Event.wait()` - Worker waits up to `poll_interval` (1-5s) before noticing SIGTERM ### Issue 2: In-Flight Tasks Abandoned - After main loop breaks, `finally` block stops services immediately - No wait for tasks in `orchestrator.bulkhead` to complete - Tasks get killed mid-execution - They stay claimed until heartbeat timeout, then re-execute from scratch ## Impact - K8s rolling updates will kill tasks mid-execution - Wasted compute from task re-execution - Potential data corruption for non-idempotent tasks ## Solution 1. Make `wakeup_event` module-level so signal handler can access it 2. Add graceful drain logic like activity_worker has: - Wait up to 30s for in-flight tasks - Call `bulkhead.shutdown(wait=True)` ## Files - engine/cli/worker.py ## Testing - Send SIGTERM to worker with active tasks - Verify tasks complete before worker exits - Verify shutdown happens within seconds, not waiting for poll_interval closed high 2025-12-28 00:21 -
#722 Refactor wait_for_parallel_branches to use JoinMode for consistency
Currently wait_for_parallel_branches uses ad-hoc fail_on_error=True boolean while JoinOperator has p...
closed high 2025-12-27 21:09 -
#721 Workers become zombies after asyncio crash - container healthy but all threads dead
OBSERVED: Workers can crash with asyncio.exceptions.CancelledError during HTTP operations, causing a...
closed critical 2025-12-27 03:27 -
#720 Sandbox temp files fail in Docker-in-Docker: can't find __main__ module
FIXED: When running sandboxed code execution (tools.code.exec) inside Docker containers with Docker ...
closed high 2025-12-27 03:27 -
#719 Parallel branch retry creates orphaned waits due to absurd_run_id in join_event_name
FIXED: When a workflow with parallel branches is retried (e.g., due to worker crash), the join_event...
closed critical 2025-12-27 02:52 -
Previous Page 1 of 32 Next