refactor(conversation_loop): extract text helper slice CL-R1-1 into agent/conversation_text.py - #84275
refactor(conversation_loop): extract text helper slice CL-R1-1 into agent/conversation_text.py#84275andrexibiza wants to merge 3 commits into
Conversation
Signed-off-by: Axl Ibiza <andrexibiza@gmail.com>
…raction Signed-off-by: Axl Ibiza <andrexibiza@gmail.com>
Contributor email mapping required by check-attribution CI for the god-file kill campaign PRs (Axl Ibiza, MBA <andrexibiza@gmail.com>). Signed-off-by: Axl Ibiza, MBA <andrexibiza@gmail.com> Signed-off-by: Axl Ibiza <andrexibiza@gmail.com>
refactor(conversation_loop): extract text helper slice CL-R1-1 into agent/conversation_text.py
|
|
Decision recorded against current main This is the first conversation-loop extraction to rebase and land. Required landing gate: rebase onto current main, recompute the exact source-window/golden identity, retain the single canonical definition/re-export seam, and rerun the focused conversation-text seam plus current continuation/truncation tests. Land #84275 before #84653. The decision is complete; the current non-mergeable head still requires rebase and exact-head CI. |
Summary
Byte-verbatim extraction of slice CL-R1-1 from
agent/conversation_loop.py(7,757 lines at pinee4bb75b532e932a1055d9a710802a7435163b6a) into a new module, per the repo-wide god-file sharding policy._join_truncated_parts(lines 190–197, 338 bytes, continuation-fragment joiner) →agent/conversation_text.pybd297624f82ca8020c42556b35110e5729fa111fe31ad7fcf68a01d7ca26f3e4— byte-verbatim, re-verified from the committed blob (module lines 8–15 == pin window, byte-identical)agent/conversation_loop.py(from agent.conversation_text import _join_truncated_parts) — no public rename, no stale duplicate, same-file call sites (3415, 7360) +tests/run_agent/test_continuation_ceiling_wedge.py:238resolve through the original namespace, monkeypatch authority intact. New module: leaf utility (typing only), no heavy imports, startup-latency contract preserved.tests/agent/test_conversation_text_seam.py— object identity + behavioral casesagent/conversation_loop.py1 insertion / 8 deletions (deleted set exactly 190–197); new module 15 lines; seam test 25 lines.Method
5×2×3 double-blind decomposition (per the All Gods Must Die mandate): 5 blind region analysts → 5 blind adversarial witnesses → 5 consensus adjudicators → blind implementer → 2 blind re-reviewers. Round 1: both reviewers REQUEST CHANGES (collateral audit: the splice had removed the two trailing separator blank lines 198–199, making the deleted set 190–199). Fix lane restored the two blanks (commit
b6a19fb96e1, +2 insertions, deleted set now exactly 190–197). Round 2: both re-reviewers APPROVED:C:/tmp/tg-Feature Package/conversation-loop/review/CLR11-review-1-r2.md(12,981 B) — all 7 battery gates PASSC:/tmp/tg-Feature Package/conversation-loop/review/CLR11-review-2-r2.md(12,015 B) — APPROVED, all gatesSuite evidence: pristine-pin baseline vs post-extraction failure sets identical (continuation wedge 10/10, region 37/37, seam tests pass). No new failures.
Coordination table
ee4bb75b532e932a1055d9a710802a7435163b6a(origin/main)agent/conversation_text.pybd297624f82ca8020c42556b35110e5729fa111fe31ad7fcf68a01d7ca26f3e4Dedup statement
No prior extraction of this window exists. This is the first conversation_loop slice; no sibling PRs on this file. No duplicate work.
Credit
ffbbf9781c8+b6a19fb96e1)This slice is governed by the conversation_loop (posted on #78641). Former whole: 7,757 lines. Fixer roster: #83437.
Part of #78641
Part of #78647