feat(python/omp-rpc): added blocker field and blocked status to todo items
- Add blocked todo status and optional blocker attribute to todo items. - Update RPC client and worker serialization logic to support todo blockers. - Add test coverage for parsing session state with blocked todos.
This commit is contained in:
@@ -1673,6 +1673,7 @@ class RpcClient:
|
||||
"status": cast(JsonValue, seed.status),
|
||||
"notes": seed.notes,
|
||||
"details": seed.details,
|
||||
"blocker": seed.blocker,
|
||||
}
|
||||
|
||||
content = seed.get("content")
|
||||
@@ -1683,6 +1684,7 @@ class RpcClient:
|
||||
raw_status = seed.get("status")
|
||||
raw_notes = seed.get("notes")
|
||||
raw_details = seed.get("details")
|
||||
raw_blocker = seed.get("blocker")
|
||||
if isinstance(raw_status, str):
|
||||
if raw_status not in _TODO_STATUS_VALUES:
|
||||
raise RpcError(f"Unsupported todo status: {raw_status}")
|
||||
@@ -1697,6 +1699,7 @@ class RpcClient:
|
||||
"status": cast(JsonValue, status),
|
||||
"notes": raw_notes if isinstance(raw_notes, str) else None,
|
||||
"details": raw_details if isinstance(raw_details, str) else None,
|
||||
"blocker": raw_blocker if isinstance(raw_blocker, str) else None,
|
||||
}
|
||||
|
||||
def is_phase_seed(seed: TodoSeed | TodoPhaseSeed) -> bool:
|
||||
|
||||
Reference in New Issue
Block a user