AgentTool.matcherDigest(args) 훅이 추가됨: 스트림된 인자를 와이어 형식(패치 형식, 이스케이프된 문자열)으로 인코딩하는 도구는 자신이 도입한 실제 콘텐츠를 노출할 수 있으며, 이를 통해 스트림 콘텐츠 매처(예: TTSR 규칙)가 와이어 형식 대신 순수 소스 텍스트에 대해 실행됩니다.write/edit 도구 호출이 stop_reason: length에 의해 잘릴 때 에이전트 루프가 모델을 멈추게 하는 문제를 수정했습니다(예: 1000줄 이상의 코드를 생성하는 OpenCode Zen / Claude-3.5-Haiku 턴으로 8K max_tokens 출력 상한을 초과하는 경우). 건너뛴 도구 결과는 이제 실행 가능한 힌트(stop_reason: length 명시 및 모델에 페이로드를 여러 개의 작은 호출로 분할하도록 지시)를 표시합니다. 이전의 제네릭 "Tool call was not executed because the assistant ended its turn" 플레이스홀더는 자동 계속 루프가 동일한 크기의 페이로드를 다시 발행하도록 하여 사용자가 포기할 때까지 반복되었습니다. 인자가 잘려도 도구는 여전히 실행되지 않습니다. (#1785)opencode-zen/minimax-m3-free(및 향후 호환성 opencode-zen/minimax-m3)와 opencode-go/minimax-m3가 OpenCode Zen/Go 게이트웨이가 /v1/chat/completions에서만 이러한 ID를 제공하는데도 anthropic-messages로 라우팅되어 UI에서 원본 MiniMax/도구 호출 마크업(<invoke name="bash">, <tool_call>, <description>, <cwd>, <|minimax|>)이 표시되는 문제를 수정했습니다. 리졸버 오버라이드는 이제 이 ID들을 openai-completions에 고정하고, 번들된 models.json 항목도 일치하도록 전환했습니다. (#1617)platform.minimaxi.com 페이지 대신 국제 platform.minimax.io 구독 페이지를 여는 문제를 수정했습니다.@deprecated 호환성 shim을 남겨두는 것에 대해 경고하는 번들된 TypeScript 규칙이 추가됨./review의 커밋되지 않은 변경 모드가 현재 워크스페이스에서 jj diff --git을 읽도록 수정하여, 기본이 아닌 JJ 워크스페이스가 함께 배치된 Git 체크아웃으로 돌아가는 대신 워킹 카피 변경을 포함하도록 함.edit/write 도구 호출(hashline + 바디 행, apply_patch 봉투, JSON-escaped write 콘텐츠)과 일치하지 않는 문제를 수정했습니다. 편집 및 쓰기 도구는 이제 matcherDigest 정규화를 노출하고 TTSR은 도입된 소스 텍스트에 대해 일치하므로, 규칙 정규표현식은 활성 편집 모드와 무관하게 범용적으로 유지됩니다.JJ 유틸리티 API가 Git의 범위 지정된 헬퍼를 미러링하도록 변경됨: 저장소 작업이 이제 jj.repo (root, resolve, is, clearRootCache)에 위치하고, diff 파일 목록은 jj.diff.changedFiles로 이용 가능.
search_tool_bm25 도구 설명이 tools.discoveryMode: "all"이 활성화되어 있을 때 숨겨진 발견 가능한 기본 제공 도구(예: write, find, search, lsp, task)의 이름을 지정하도록 변경되어, 모델이 추측이나 쉘로 돌아가는 대신 이름으로 타겟팅된 발견 쿼리를 형성할 수 있습니다. mcp-only 모드는 변경되지 않음(기본 제공 도구가 광고되지 않음)이고 Total discoverable tools available: N 카운트는 여전히 이들을 포함합니다.
foo( / if (x) { 시그니처 줄)만 제거하도록 수정되었으며, 중복된 닫음만이 아닙니다. 영 균형 중복은 그대로 유지됨.PI_NO_SYNC_OUTPUT=1이 추가되었습니다. 렌더러의 자동 줄바꿈 보호는 페인트 중에 활성화된 상태로 유지됩니다 (#1765).WT_SESSION이 Linux 환경에 있음)이 있는 경우 연기된 eager 라이브 스크롤백 재구성이 수행되어, 포그라운드 스트리밍이 더 이상 ED3(CSI 3 J)을 발행하고 Windows Terminal의 호스트 스크롤백으로 스크롤된 리더를 끌어당기지 않습니다. 연기된 재쓰기는 여전히 다음 프롬프트-제출 체크포인트에서 조정됩니다 (#1610).WT_SESSION에서만 이를 불신했습니다. Tabby 및 다른 ConPTY 호스트는 이를 설정하지 않습니다. 프로브는 이제 완전히 제거됩니다: 모든 Windows 호스트는 뷰포트 관찰 불가능으로 처리되며, 라이브 변경은 파괴적인 재구성(ED3 없음, 뷰포트 이동 없음)을 연기하고, 네이티브 스크롤백은 Enter 키 입력이 이미 호스트 뷰포트를 하단에 고정시킨 프롬프트-제출 체크포인트에서 조정됩니다 (#1746).U+FE0F, 예: ⚠️, ℹ️, ❤️, 키캡)가 macOS의 네이티브 너비 엔진에서 2 셀이 아니라 1 셀로 측정되는 문제를 수정했습니다. 네이티브 스캐너는 이제 UnicodeWidthStr을 멀티 코드포인트 그래핌의 신뢰할 수 있는 정보 소스로 유지하고 로컬 macOS 한글 호환 자모 문자 너비 델타만 적용하며, VS16/키캡 시퀀스 너비는 보존하고 자모 커서 드리프트를 다시 도입하지 않습니다.CSI 3 J)를 발행하지 않으며, 터미널 히스토리로 스크롤된 리더를 보존합니다 (#1300).shouldTrustNativeViewportProbe 및 ProcessTerminal의 kernel32 GetConsoleScreenBufferInfo 뷰포트 프로브가 제거됨. Windows 환경은 "사용자의 뷰포트가 하단에 있는가"에 대해 진실하게 답할 수 없습니다 — ConPTY(모든 현대 호스트)에서 가상 콘솔 버퍼는 표시되는 그리드에 고정되어 있으므로 프로브는 항상 "at bottom"을 읽었고, 레거시 conhost에서는 창이 버퍼 꼬리가 아니라 출력 커서를 추적하므로 항상 "scrolled up"을 읽었습니다 — 따라서 프로브와 그 신뢰 게이트는 사라졌습니다. ProcessTerminal은 더 이상 선택적 Terminal.isNativeViewportAtBottom을 구현하지 않습니다.전체 변경 사항: v15.8.1...v15.8.2