Skip to content

feat(search): --context — 매치 앞뒤 문단을 같은 왕복에서 - #3842

Closed
kevin9327 wants to merge 1 commit into
edwardkim:develfrom
kevin9327:wip/search-context-lines
Closed

kevin9327 wants to merge 1 commit into
edwardkim:develfrom
kevin9327:wip/search-context-lines

Conversation

@kevin9327

Copy link
Copy Markdown
Contributor

rhwp search 는 매치와 excerpt 만 준다. 에이전트가 "이 매치가 내가 찾던 그건가"를
판단하려면 앞뒤 문맥이 필요한데, 지금은 별도 명령으로 다시 왕복해야 한다.

rhwp search <파일> --json --context N <검색어>

matches[].contextBefore / contextAfter 에 앞뒤 N개 문단을 담는다.
문서 경계에서는 있는 만큼만 준다 — 범위 밖으로 나가지 않는다.

기본값은 한 바이트도 안 바뀐다

--context 없으면 봉투가 기존과 완전히 동일하다. 기존 소비자 무회귀.

-- 구분자 계약 유지

search 에는 검색어가 - 로 시작할 때 -- 뒤에 둔다는 계약(#3748)이 있다.
--context 를 추가해도 그 계약이 그대로 동작하는지 테스트로 확인했다.

검증

search_json_contract · cli_json_contract · mcp_server_contract 전부 0 failed ·
clippy --release -D warnings 0 · rustfmt clean · 선검사 통과.

에이전트가 매치 하나만 보고 판단하기 어려울 때 앞뒤 문맥을 같은 왕복에서 받는다.
기본값은 기존과 완전히 동일하다 — 옵션 없으면 봉투가 한 바이트도 안 바뀐다.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@edwardkim edwardkim added this to the v1.0.0 milestone Aug 3, 2026
@edwardkim edwardkim added cli rhwp cli enhancement New feature or request mcp mcp tools labels Aug 3, 2026
@jangster77
jangster77 self-requested a review August 3, 2026 11:54
@jangster77 jangster77 closed this Aug 3, 2026
@jangster77

Copy link
Copy Markdown
Collaborator

누적 검토 및 반영을 완료했습니다.

이 PR의 contributor commit은 통합 PR #3895의 merge commit c09c67324로 devel에 반영됐습니다.

확인한 검증은 다음과 같습니다.

  • 전용 target에서 cargo test --profile release-test --tests exit 0
  • focused 계약 회귀, cargo fmt --check, cargo clippy --all-targets -- -D warnings, agent preflight 통과
  • Studio TypeScript 및 749개 test, 전용 WASM build 통과
  • 통합 PR의 Build & Test·Native Skia·Canvas visual diff·lint·frontend·CodeQL 등 실행 check 성공

원 PR별 검토 근거는 archive에 보관했습니다. 기여해 주셔서 감사합니다.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

cli rhwp cli enhancement New feature or request mcp mcp tools

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants