Orchestrata Ultimate / RTM / 069-task-management-tools

RTM: 069-task-management-tools

Requirement to symbol to test rows for 069-task-management-tools: Task Management Tools - Stop & Output.

At a glance

Item Value
Requirement IDs 48
Traced from src/ 40 (83.3%)
Untraced 8
Cited from tests/ 0 (0.0%)
Traced in src/ but not cited from tests/ 40

Reading this matrix

This matrix lists each of the 48 requirement IDs of spec 069-task-management-tools with the src/ symbols that cite it and the tests that cite it. 40 of them (83.3%) have at least one citing symbol and 8 have none.

0 requirements are also cited from tests/, and 40 are traced in code but never named by a test. A test citation is a @traces on a test function; it shows intent to cover, not that the test runs or reaches the symbol.

Rows showing none in the symbols column are the gaps to close first. The densest untraced groups are REQ-069-* (8).

Requirement to symbols to tests

Requirement Symbols in src/ Tests citing it
REQ-069-001 (SEC-REQ-001) All task operations MUST authenticate the requesting agent orchestrata_ultimate/tools/task_tools stop L569 none
REQ-069-002 (SEC-REQ-002) Only task owners or admins MAY stop tasks orchestrata_ultimate/tools/task_tools stop L569 none
REQ-069-003 (SEC-REQ-003) Governance rules MUST be evaluated before any stop operation (in-process... orchestrata_ultimate/tools/task_tools stop L569 none
REQ-069-004 (SEC-REQ-004) Protected tasks MUST require admin role to terminate orchestrata_ultimate/tools/task_tools stop L569 none
REQ-069-005 (SEC-REQ-005) Critical infrastructure tasks MUST require elevated permissions orchestrata_ultimate/tools/task_tools stop L569 none
REQ-069-006 (SEC-REQ-006) Task IDs MUST match pattern ^task_[a-zA-Z0-9_-]+$ orchestrata_ultimate/tools/task_tools _validate_task_id L234 none
REQ-069-007 (SEC-REQ-007) All string inputs MUST be sanitized before processing orchestrata_ultimate/tools/task_tools _sanitize_string L244
orchestrata_ultimate/tools/task_tools _validate_name L250
none
REQ-069-008 (SEC-REQ-008) Numeric parameters MUST be validated for bounds orchestrata_ultimate/tools/task_tools _validate_name L250 none
REQ-069-009 (SEC-REQ-009) Line range requests MUST NOT exceed output bounds none none
REQ-069-010 (SEC-REQ-010) Redis connections MUST use TLS 1.2 or higher — NOT IMPLEMENTED: this MVP... none none
REQ-069-011 (SEC-REQ-011) Sensitive task output MUST be encrypted at rest — NOT IMPLEMENTED: no... none none
REQ-069-012 (SEC-REQ-012) Output retention MUST NOT exceed configured limit... orchestrata_ultimate/tools/task_tools purge_expired_output L979 none
REQ-069-013 (SEC-REQ-013) Task access MUST follow principle of least privilege — NOT IMPLEMENTED:... none none
REQ-069-014 (SEC-REQ-014) Task ID generation MUST use cryptographically secure random values... orchestrata_ultimate/tools/task_tools _default_id_factory L418
orchestrata_ultimate/tools/task_tools create L448
none
REQ-069-015 (SEC-REQ-015) Task creation MUST use atomic operations to prevent collisions... orchestrata_ultimate/tools/task_tools create L448 none
REQ-069-016 (SEC-REQ-016) Concurrent stop operations MUST use optimistic locking (implemented as... orchestrata_ultimate/tools/task_tools _TaskRecord L361
orchestrata_ultimate/tools/task_tools stop L569
none
REQ-069-017 (SEC-REQ-017) Signal handling MUST be idempotent (a second concurrent/repeat stop call... orchestrata_ultimate/tools/task_tools _TaskRecord L361
orchestrata_ultimate/tools/task_tools stop L569
none
REQ-069-018 (SEC-REQ-018) All stop operations MUST be logged with agent ID orchestrata_ultimate/tools/task_tools _audit L425
orchestrata_ultimate/tools/task_tools stop L569
none
REQ-069-019 (SEC-REQ-019) All permission denials MUST be logged with reason orchestrata_ultimate/tools/task_tools _audit L425
orchestrata_ultimate/tools/task_tools stop L569
none
REQ-069-020 (SEC-REQ-020) Task state transitions MUST include timestamps orchestrata_ultimate/tools/task_tools _audit L425
orchestrata_ultimate/tools/task_tools stop L569
none
REQ-069-021 (SEC-REQ-021) Audit logs MUST be immutable and retained per policy — PARTIAL only: the... none none
REQ-069-022 (FR-001) TaskStopTool MUST support stopping tasks by ID orchestrata_ultimate/tools/task_tools StopOutcome L326
orchestrata_ultimate/tools/task_tools TaskStopTool L1040
orchestrata_ultimate/tools/task_tools execute L1058
+1 more
none
REQ-069-023 (FR-002) TaskStopTool MUST support stopping tasks by name pattern orchestrata_ultimate/tools/task_tools PatternType L128
orchestrata_ultimate/tools/task_tools TaskStopTool L1040
orchestrata_ultimate/tools/task_tools _name_matches L264
+2 more
none
REQ-069-024 (FR-003) TaskStopTool MUST support graceful stop mode (default) orchestrata_ultimate/tools/task_tools TaskStopMode L94
orchestrata_ultimate/tools/task_tools _signal_and_wait L691
orchestrata_ultimate/tools/task_tools stop L569
none
REQ-069-025 (FR-004) TaskStopTool MUST support forced stop mode orchestrata_ultimate/tools/task_tools TaskStopMode L94
orchestrata_ultimate/tools/task_tools _signal_and_wait L691
orchestrata_ultimate/tools/task_tools stop L569
none
REQ-069-026 (FR-005) TaskStopTool MUST validate task existence before stop orchestrata_ultimate/tools/task_tools stop L569 none
REQ-069-027 (FR-006) TaskStopTool MUST support batch termination by pattern orchestrata_ultimate/tools/task_tools BatchStopOutcome L338
orchestrata_ultimate/tools/task_tools stop_by_pattern L743
none
REQ-069-028 (FR-007) TaskOutputTool MUST support full output retrieval orchestrata_ultimate/tools/task_tools OutputMode L103
orchestrata_ultimate/tools/task_tools TaskOutput L310
orchestrata_ultimate/tools/task_tools TaskOutputTool L1203
+2 more
none
REQ-069-029 (FR-008) TaskOutputTool MUST support output streaming — PARTIAL: mode="stream"... orchestrata_ultimate/tools/task_tools OutputMode L103 none
REQ-069-030 (FR-009) TaskOutputTool MUST support tail mode (last N lines) orchestrata_ultimate/tools/task_tools OutputMode L103
orchestrata_ultimate/tools/task_tools TaskOutputTool L1203
orchestrata_ultimate/tools/task_tools execute L1231
+1 more
none
REQ-069-031 (FR-010) TaskOutputTool MUST support line range retrieval orchestrata_ultimate/tools/task_tools OutputMode L103
orchestrata_ultimate/tools/task_tools TaskOutputTool L1203
orchestrata_ultimate/tools/task_tools execute L1231
+1 more
none
REQ-069-032 (FR-011) TaskOutputTool MUST provide status metrics (memory/CPU/PID via psutil... orchestrata_ultimate/tools/task_tools TaskOutputTool L1203
orchestrata_ultimate/tools/task_tools TaskStatusResult L290
orchestrata_ultimate/tools/task_tools TaskType L117
+2 more
none
REQ-069-033 (FR-012) TaskOutputTool MUST support combined output mode orchestrata_ultimate/tools/task_tools TaskOutput L310
orchestrata_ultimate/tools/task_tools TaskOutputTool L1203
orchestrata_ultimate/tools/task_tools execute L1231
+1 more
none
REQ-069-034 (ERR-001) TASK_NOT_FOUND orchestrata_ultimate/tools/task_tools TaskToolErrorCode L164
orchestrata_ultimate/tools/task_tools stop L569
none
REQ-069-035 (ERR-002) TASK_NOT_RUNNING orchestrata_ultimate/tools/task_tools TaskToolErrorCode L164
orchestrata_ultimate/tools/task_tools stop L569
none
REQ-069-036 (ERR-003) PERMISSION_DENIED orchestrata_ultimate/tools/task_tools TaskToolErrorCode L164
orchestrata_ultimate/tools/task_tools stop L569
none
REQ-069-037 (ERR-004) TERMINATION_FAILED orchestrata_ultimate/tools/task_tools TaskToolErrorCode L164
orchestrata_ultimate/tools/task_tools _await_exit L722
orchestrata_ultimate/tools/task_tools _signal_and_wait L691
+1 more
none
REQ-069-038 (ERR-005) CRITICAL_TASK orchestrata_ultimate/tools/task_tools TaskToolErrorCode L164
orchestrata_ultimate/tools/task_tools stop L569
none
REQ-069-039 (ERR-006) PROTECTED_TASK orchestrata_ultimate/tools/task_tools TaskToolErrorCode L164
orchestrata_ultimate/tools/task_tools stop L569
none
REQ-069-040 (ERR-007) OUTPUT_NOT_AVAILABLE orchestrata_ultimate/tools/task_tools TaskToolErrorCode L164
orchestrata_ultimate/tools/task_tools output_of L811
none
REQ-069-041 (ERR-008) INVALID_LINE_RANGE orchestrata_ultimate/tools/task_tools TaskToolErrorCode L164
orchestrata_ultimate/tools/task_tools output_of L811
none
REQ-069-042 (ERR-009) OUTPUT_TOO_LARGE orchestrata_ultimate/tools/task_tools TaskToolErrorCode L164
orchestrata_ultimate/tools/task_tools output_of L811
none
REQ-069-043 (ERR-010) STREAM_FAILED — NOT IMPLEMENTED: no WebSocket transport exists to fail none none
REQ-069-044 (ERR-011) TASK_ID_COLLISION orchestrata_ultimate/tools/task_tools TaskToolErrorCode L164
orchestrata_ultimate/tools/task_tools create L448
none
REQ-069-045 (ERR-012) STORAGE_CORRUPTION — NOT IMPLEMENTED / N/A: no persistent storage layer... none none
REQ-069-046 (ERR-013) RATE_LIMIT_EXCEEDED (process-local sliding window, not distributed) orchestrata_ultimate/tools/task_tools TaskToolErrorCode L164
orchestrata_ultimate/tools/task_tools check_rate_limit L790
none
REQ-069-047 (ERR-014) REDIS_ERROR — NOT IMPLEMENTED / N/A: this MVP has no Redis dependency none none
REQ-069-048 (ERR-015) RACE_CONDITION — prevented outright (lock + stopping flag) rather than... orchestrata_ultimate/tools/task_tools TaskToolErrorCode L164
orchestrata_ultimate/tools/task_tools stop L569
none