fix: complete deduplicated nightly reports with durable receipts #103

Merged
severus-snape merged 1 commit from fix/night-report-receipts into main 2026-10-27 05:02:23 +00:00
Collaborator

Root cause

Morning report concatenated state.results populated by reply.slice(0,4000), truncating JSON/fences and duplicating repeated turn prose. Full validated experiment receipts already existed separately but were not used for reporting.

Fix

Render a bounded summary from full validated receipts only, exact normalized hypothesis deduplication, explicit reported-not-verified outcome counts. Emit only whole JSON blocks; overflow links to full local structured artifact. Escape embedded backticks in JSON. Archive full receipts before either local completion or remote outbox publication. Preserve raw diagnostic results separately; legacy states recover complete blocks only. Strict complete-line parser ignores broken blocks without swallowing subsequent valid ones.

Validation

575/575 full tests; 12/12 focused improvement tests; typecheck/build/diff-check PASS. Regression covers receipts past4000 characters, truncated/duplicate/malformed fences, CRLF, embedded markup, 200-receipt overflow, real controller persistence/restart/archive failure/outbox report and no repeat. Original dirty checkout untouched.

Review and limits

Author counterchecked changes; current persistent review status blockers0, no additional independent reviewer/reset. Existing historical review findings preserved; no claim of a new independent review. This repairs report assembly, not evaluator authentication/configuration, experiment prioritization or deployment. No experiment results are newly verified by this formatter; local artifact references are not remote attachments. Existing delivery idempotency behavior unchanged. Merge/build does not activate deployments.

## Root cause Morning report concatenated state.results populated by reply.slice(0,4000), truncating JSON/fences and duplicating repeated turn prose. Full validated experiment receipts already existed separately but were not used for reporting. ## Fix Render a bounded summary from full validated receipts only, exact normalized hypothesis deduplication, explicit reported-not-verified outcome counts. Emit only whole JSON blocks; overflow links to full local structured artifact. Escape embedded backticks in JSON. Archive full receipts before either local completion or remote outbox publication. Preserve raw diagnostic results separately; legacy states recover complete blocks only. Strict complete-line parser ignores broken blocks without swallowing subsequent valid ones. ## Validation 575/575 full tests; 12/12 focused improvement tests; typecheck/build/diff-check PASS. Regression covers receipts past4000 characters, truncated/duplicate/malformed fences, CRLF, embedded markup, 200-receipt overflow, real controller persistence/restart/archive failure/outbox report and no repeat. Original dirty checkout untouched. ## Review and limits Author counterchecked changes; current persistent review status blockers0, no additional independent reviewer/reset. Existing historical review findings preserved; no claim of a new independent review. This repairs report assembly, not evaluator authentication/configuration, experiment prioritization or deployment. No experiment results are newly verified by this formatter; local artifact references are not remote attachments. Existing delivery idempotency behavior unchanged. Merge/build does not activate deployments.
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
harness/core!103
No description provided.