| #578 |
[LOW] Model naming inconsistencies between API and engine
Some model/schema names differ between API layer and engine layer (e.g., WorkflowDefinition vs workf...
|
closed |
low |
2025-12-17 16:33 |
- |
|
| #577 |
[LOW] Inconsistent async/sync function declarations in blueprints
Some blueprint endpoints use async def while others use def despite all being async handlers. Quart ...
|
closed |
low |
2025-12-17 16:33 |
- |
|
| #576 |
[LOW] List literals that should be tuples for immutability
Several list literals are used for constant data that never changes (e.g., HTTP methods, field names...
|
closed |
low |
2025-12-17 16:33 |
- |
|
| #575 |
[LOW] Unused parameters in some API endpoint handlers
Some endpoint handlers accept parameters (like request objects) that are never used. Fix: Remove unu...
|
closed |
low |
2025-12-17 16:33 |
- |
|
| #574 |
[LOW] Magic numbers in pagination defaults scattered across files
Magic numbers like 20, 50, 100, 200 for pagination defaults are scattered across multiple files. Fix...
|
closed |
low |
2025-12-17 16:33 |
- |
|
| #530 |
[API/Perf] Multiple database connections for single permission check
**File:** api/middleware/rbac.py:660-680
**Problem:** Permission check and role retrieval use separ...
|
closed |
low |
2025-12-17 15:00 |
- |
|
| #529 |
[API/Data] Validation lists should be frozensets
**Files:**
- api/middleware/validators.py:123 - valid_statuses list
- api/blueprints/v1/apps.py:158-...
|
closed |
low |
2025-12-17 15:00 |
- |
|
| #516 |
[ENGINE/Data] Sensitive keyword patterns should use frozenset
**Files:**
- engine/apps/executor.py:841
- engine/services/event_gateway_service.py:625
**Problem:...
|
closed |
low |
2025-12-17 14:59 |
- |
|
| #508 |
Race: Rate limiter TOCTOU
api/middleware/rate_limiter.py:22-47 - check_quota and get_tenant_stats in separate calls. Stats may...
|
closed |
low |
2025-12-17 02:58 |
- |
|
| #506 |
Performance: Constant list should be tuple (tasks.py)
api/blueprints/v1/tasks.py:23 - QUEUES is mutable list. FIX: Use tuple for immutability.
|
closed |
low |
2025-12-17 02:58 |
- |
|
| #505 |
Performance: Constant list should be tuple (apps.py)
api/blueprints/v1/apps.py:158-167 - valid_categories is mutable list. FIX: Use tuple or frozenset fo...
|
closed |
low |
2025-12-17 02:57 |
- |
|
| #504 |
Performance: List instead of frozenset for membership (validators)
api/middleware/validators.py:123 - valid_statuses is list, O(n) lookup. FIX: Use frozenset for O(1).
|
closed |
low |
2025-12-17 02:57 |
- |
|
| #503 |
Performance: Import inside function (workflows.py)
api/blueprints/v1/workflows.py:77 - 'import re' inside convert_python_dsl_to_json function. FIX: Mov...
|
closed |
low |
2025-12-17 02:57 |
- |
|
| #502 |
Performance: Regex not pre-compiled (DSL main block)
api/blueprints/v1/workflows.py:81-86 - re.sub() with inline pattern on every DSL conversion. FIX: Pr...
|
closed |
low |
2025-12-17 02:57 |
- |
|
| #501 |
Performance: Regex not pre-compiled (app_name)
api/blueprints/v1/apps.py:147 - re.match() with inline pattern on every app creation. FIX: Pre-compi...
|
closed |
low |
2025-12-17 02:57 |
- |
|
| #500 |
Performance: Regex not pre-compiled (semver)
api/blueprints/v1/apps.py:69-70 - Regex pattern compiled on every app version creation. FIX: Pre-com...
|
closed |
low |
2025-12-17 02:57 |
- |
|
| #488 |
Performance: Sensitive keywords list recreated in loops
engine/apps/executor.py:841 and engine/services/event_gateway_service.py:625 - List literal ['secret...
|
closed |
low |
2025-12-17 02:25 |
- |
|
| #487 |
Performance: len() with list comprehension in agent.py
engine/tools/agent.py:303 - len([h for h in history if ...]) builds list just to count. FIX: sum(1 f...
|
closed |
low |
2025-12-17 02:25 |
- |
|
| #478 |
Race Condition: Tool registry lazy load without lock
engine/tools/registry.py:205-211
_ensure_lazy_tools() has race condition:
```python
if not self._la...
|
closed |
low |
2025-12-17 01:42 |
- |
|
| #471 |
Performance: Unnecessary list() around dict.keys() in multiple files
Several files wrap dict.keys() in list() unnecessarily for iteration:
1. engine/tools/parallel_join...
|
closed |
low |
2025-12-17 01:11 |
- |
|