Skip to content

Retain complete paper-batch inputs before final projection - #385

Merged
witbrock merged 1 commit into
mainfrom
fix/jvnautosci-2635-lossless-preprojection
Aug 16, 2026
Merged

Retain complete paper-batch inputs before final projection#385
witbrock merged 1 commit into
mainfrom
fix/jvnautosci-2635-lossless-preprojection

Conversation

@witbrock

Copy link
Copy Markdown
Member

What changed

  • declare the final batch projector's mandatory input keys as represented durable reads
  • preserve message_iteration_results and message_iteration_errors losslessly across the checkpoint before batch_result is constructed
  • retain optional pagination fields as optional
  • bump the email-source workflow seed to version 17
  • strengthen the checkpoint regression to preserve 100 rows and nested specific error detail under a 512-byte total budget

Root cause

Seed v16 preserved batch_result once it existed, but the source arrays were compacted immediately after process_messages. The next state therefore built an already-truncated batch result: at most eight item rows and depth summaries instead of failure causes.

Live evidence

Instance 00072b84-fd69-40b3-9b56-3bcc6d34a9c9 completed as done_with_retryable_failures with 10 selected, 8 review dispositions, and 2 failures. A same-conversation follow-up found the retained parent under a 27-to-20 history projection and accounted for all messages, but explicitly reported the item-array and nested-error truncation. This PR fixes that boundary for the larger 22-item general case.

Validation

  • 311 affected-path tests passed
  • 100 item rows and nested error details survive a forced 512-byte checkpoint budget
  • no optional-pagination regression

Jira: JVNAUTOSCI-2635

@witbrock
witbrock merged commit 24e781c into main Aug 16, 2026
4 checks passed
@witbrock
witbrock deleted the fix/jvnautosci-2635-lossless-preprojection branch August 16, 2026 23:20
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant