@@ -738,10 +738,6 @@ def _process_assessment_task(
738738 logger .warning (
739739 f"Failed to extract geometry data for task { task .task_id } : { str (e )} "
740740 )
741- task_failed = True
742- error_messages .append (
743- f"Failed to extract geometry data for task { task .task_id } "
744- )
745741 # Continue with assessment even if geometry extraction fails
746742
747743 # Check for confidence threshold alerts
@@ -1019,7 +1015,6 @@ def _get_text_confidence_data(self, page) -> str:
10191015 f"Failed to generate text confidence data for page { page .page_id } : { str (e )} "
10201016 )
10211017 raise
1022-
10231018 return ""
10241019
10251020 def _convert_bbox_to_geometry (
@@ -1096,8 +1091,6 @@ def _process_single_assessment_geometry(
10961091 f"Failed to process bounding box for { attr_name } : { str (e )} "
10971092 )
10981093 raise
1099-
1100-
11011094 else :
11021095 # If only one of bbox/page exists, log a warning about incomplete data
11031096 if "bbox" in attr_assessment and "page" not in attr_assessment :
@@ -1448,16 +1441,15 @@ def process_document_section(self, document: Document, section_id: str) -> Docum
14481441 )
14491442 logger .info (f"error_message: { error_message } " )
14501443 if error_message :
1451- logger .error (f"** Error: { error_message } " )
1452- logger .error (f"** Error: { error_message } " )
1444+ logger .error (f"Error: { error_message } " )
14531445 document .status = Status .FAILED
14541446 document .errors .append (error_message )
14551447
14561448 # Add task errors to document errors
14571449 task_errors = [t .error_message for t in failed_tasks if t .error_message ]
14581450 if task_errors :
14591451 error_msg = self ._convert_error_list_to_string (task_errors )
1460- logger .error (f"*** Task Error: { error_message } " )
1452+ logger .error (f"Task Error: { error_message } " )
14611453 document .status = Status .FAILED
14621454 document .errors .append (error_msg )
14631455
@@ -1500,7 +1492,6 @@ def process_document_section(self, document: Document, section_id: str) -> Docum
15001492 logger .error (error_msg )
15011493 document .status = Status .FAILED
15021494 document .errors .append (error_msg )
1503-
15041495 return document
15051496
15061497 def assess_document (self , document : Document ) -> Document :
@@ -1539,18 +1530,32 @@ def _handle_parsing_errors(
15391530 token_warning = check_token_limit (
15401531 document_text , extraction_results , self .config
15411532 )
1533+ logger .info (f"Token Warning: { token_warning } " )
15421534 error_count = len (failed_tasks )
15431535 base_msg = f"Assessment failed for { error_count } tasks. "
15441536 if token_warning :
15451537 return base_msg + token_warning
15461538 else :
15471539 return None
15481540
1549- def _convert_error_list_to_string (self , errors : List [str ]) -> str :
1541+ def is_parsing_error (self , error_message : str ) -> bool :
1542+ """Check if an error message is related to parsing issues."""
1543+ parsing_errors = ["parsing" ]
1544+ return any (error .lower () in error_message .lower () for error in parsing_errors )
1545+
1546+ def _convert_error_list_to_string (self , errors ) -> str :
15501547 """Convert list of error messages to a single user-friendly string."""
15511548 if not errors :
15521549 return ""
15531550
1551+ # Handle single string input
1552+ if isinstance (errors , str ):
1553+ return errors
1554+
1555+ # Ensure we have a list of strings
1556+ if not isinstance (errors , list ):
1557+ return str (errors )
1558+
15541559 # Count different types of errors
15551560 parsing_errors = [e for e in errors if "parsing" in e .lower ()]
15561561 other_errors = [e for e in errors if "parsing" not in e .lower ()]
@@ -1563,8 +1568,8 @@ def _convert_error_list_to_string(self, errors: List[str]) -> str:
15631568 )
15641569 elif len (errors ) > 5 :
15651570 # Multiple errors - show first few and summarize
1566- first_errors = "; " .join (errors [:3 ])
1567- return f"{ first_errors } ... and { len (errors ) - 3 } more errors"
1571+ first_errors = "; " .join (errors [:1 ])
1572+ return f"{ first_errors } and { len (errors ) - 1 } more errors"
15681573 else :
15691574 # Few errors - show all
1570- return "; " .join (errors )
1575+ return "; " .join (errors )
0 commit comments