diff --git a/pygittools/tasks.py b/pygittools/tasks.py
index a0efc54..4bd1b34 100644
--- a/pygittools/tasks.py
+++ b/pygittools/tasks.py
@@ -271,7 +271,7 @@ class Comment:
 		return oid
 
 
-def get_comment(repo: Repository, oid: Oid) -> Comment | None:
+def get_comment(repo: Repository, oid: Oid) -> Comment:
 	obj = repo[oid]
 	if not isinstance(obj, Tag):
 		raise ValueError(f"Requested comment is not a tag: {oid}")
diff --git a/pygittools/tasks_test.py b/pygittools/tasks_test.py
index 57e63c5..bb88ddd 100644
--- a/pygittools/tasks_test.py
+++ b/pygittools/tasks_test.py
@@ -146,17 +146,17 @@ def test_full_board_flow(repo: Repository) -> None:
 	assert loaded_board is not None
 	assert len(loaded_board.tasks) == 2
 
-	loaded_a = get_task_by_oid(repo, Oid(hex=loaded_board.tasks[0]))
+	loaded_a = get_task_by_oid(repo, Oid(hex=str(loaded_board.tasks[0])))
 	assert loaded_a is not None
 	assert loaded_a.title == "Task A"
 	assert loaded_a.priority == Task.Priority.HIGH
-	assert [get_comment(repo, Oid(hex=c)).content for c in loaded_a.comments] == ["A1", "A2"]
+	assert [get_comment(repo, Oid(hex=str(c))).content for c in loaded_a.comments] == ["A1", "A2"]
 
-	loaded_b = get_task_by_oid(repo, Oid(hex=loaded_board.tasks[1]))
+	loaded_b = get_task_by_oid(repo, Oid(hex=str(loaded_board.tasks[1])))
 	assert loaded_b is not None
 	assert loaded_b.title == "Task B"
 	assert loaded_b.status == Task.Status.IN_PROGRESS
-	assert [get_comment(repo, Oid(hex=c)).content for c in loaded_b.comments] == ["B1"]
+	assert [get_comment(repo, Oid(hex=str(c))).content for c in loaded_b.comments] == ["B1"]
 
 
 def test_full_board_flow_survives_git_gc(repo: Repository, tmp_path: Path) -> None:
@@ -193,11 +193,11 @@ def test_full_board_flow_survives_git_gc(repo: Repository, tmp_path: Path) -> No
 	assert loaded_board is not None
 	assert len(loaded_board.tasks) == 1
 
-	loaded_task = get_task_by_oid(reopened, Oid(hex=loaded_board.tasks[0]))
+	loaded_task = get_task_by_oid(reopened, Oid(hex=str(loaded_board.tasks[0])))
 	assert loaded_task is not None
 	assert loaded_task.title == "GC Task"
 	assert loaded_task.priority == Task.Priority.CRITICAL
 	assert len(loaded_task.comments) == 2
 
-	contents = [get_comment(reopened, Oid(hex=c)).content for c in loaded_task.comments]
+	contents = [get_comment(reopened, Oid(hex=str(c))).content for c in loaded_task.comments]
 	assert contents == ["first", "second"]
