14 lines
1.3 KiB
Plaintext
14 lines
1.3 KiB
Plaintext
# 106-harvest-dedup: Harvest dedup
|
|
|
|
Goal: guard response-harvester against duplicate harvest
|
|
|
|
Steps:
|
|
1. Read remediation (2) in done/103-swarm-fail-triage.md.* result notes (same msg_id -> 2 job_results 5s apart). 2. On a feature branch: add dedup guard in response-harvester with test; run affected test files until green. Done criteria: result notes name files changed + pass counts, or exact blocking failure.
|
|
|
|
Done criteria: result notes appended below; file moved to done/.
|
|
|
|
Result notes (append below before moving to done/):
|
|
|
|
Completed 2026-10-08T11:57:04Z via box tasks done:
|
|
DONE on branch builder/harvest-dedup (uncommitted). ROOT CAUSE (verified in logs/chat-history.jsonl): the 2 job_results were ONE message (assistant-msg-e72ba8c0) containing the SAME [RESULT sw-20261007-212522-c5db/0] marker twice (verdict + restated summary); 5s gap = swarm-report subprocess between marker iterations. Not a watermark race. FILES: bin/response-harvester.py (seen_jobs guard in markers loop: first marker per job_id per message logged, restatements skipped; per-message scope — repeat verdicts in later messages still logged), tests/test_completion.py (+HarvestDedup: same-marker-twice logs once, distinct markers both logged). TESTS: dedup test failed pre-fix, then test_completion.py 34 passed; regression on 6 harvester-dependent files 225 passed + 5 subtests.
|