Index: dbLearnStar-model/src/main/java/dblearnstar/model/entities/AssessmentDiscussion.java
===================================================================
--- dbLearnStar-model/src/main/java/dblearnstar/model/entities/AssessmentDiscussion.java	(revision 64a19ba587dc3aa5c3454a95f5601254e8be0a55)
+++ dbLearnStar-model/src/main/java/dblearnstar/model/entities/AssessmentDiscussion.java	(revision f58ea6a805660cc091df62859461f24d535f8853)
@@ -37,4 +37,5 @@
 	private AssessmentDiscussion replyTo;
 	private Person person;
+	private List<AssessmentDiscussion> replies;
 
 	@Id
@@ -117,3 +118,12 @@
 	}
 
+	@OneToMany(fetch = FetchType.LAZY, mappedBy = "replyTo")
+	public List<AssessmentDiscussion> getReplies() {
+		return replies;
+	}
+
+	public void setReplies(List<AssessmentDiscussion> replies) {
+		this.replies = replies;
+	}
+
 }
Index: dbLearnStar-webApp/src/main/java/dblearnstar/webapp/pages/OpenDiscussions.java
===================================================================
--- dbLearnStar-webApp/src/main/java/dblearnstar/webapp/pages/OpenDiscussions.java	(revision 64a19ba587dc3aa5c3454a95f5601254e8be0a55)
+++ dbLearnStar-webApp/src/main/java/dblearnstar/webapp/pages/OpenDiscussions.java	(revision f58ea6a805660cc091df62859461f24d535f8853)
@@ -90,9 +90,9 @@
 		return ((List<SolutionAssessment>) UsefulMethods.castList(SolutionAssessment.class,
 				genericService.getAll(SolutionAssessment.class)))
-						.stream()
-						.filter(p -> p.getAssessmentDiscussions().size() > 0
-								&& p.getStudentSubmitSolution().getStudentStartedTest().getTestInstance()
-										.getTestInstanceId() == selectedTestInstance.getTestInstanceId())
-						.collect(Collectors.toList());
+				.stream()
+				.filter(p -> p.getAssessmentDiscussions().size() > 0
+						&& p.getStudentSubmitSolution().getStudentStartedTest().getTestInstance()
+								.getTestInstanceId() == selectedTestInstance.getTestInstanceId())
+				.collect(Collectors.toList());
 	}
 
@@ -136,12 +136,25 @@
 	private PersonManager personManager;
 
+	public boolean answered(AssessmentDiscussion ad) {
+		if (ad.getReplies() != null && ad.getReplies().size() > 0) {
+			boolean allAnswered = true;
+			for (AssessmentDiscussion i : ad.getReplies()) {
+				if (!answered(i)) {
+					allAnswered = false;
+				}
+			}
+			return allAnswered;
+		} else {
+			return personManager.isInstructor(ad.getPerson());
+		}
+	}
+
 	public boolean isAnsweredByInstructor() {
-		boolean answer = false;
-		for (AssessmentDiscussion ad : runningSolutionAssessment.getAssessmentDiscussions()) {
-			if (personManager.isInstructor(ad.getPerson())) {
-				answer = true;
-			}
+		boolean allAnswered = true;
+		for (AssessmentDiscussion ad : runningSolutionAssessment.getAssessmentDiscussions().stream()
+				.filter(p -> p.getReplyTo() == null).toList()) {
+			allAnswered = allAnswered && answered(ad);
 		}
-		return answer;
+		return allAnswered;
 	}
 
