📝 docs(HANDOFF): 도그푸딩 피드백에 따른 백로그 항목 추가
- P9 dogfooding 백로그 항목 fb-26 ~ fb-42 추가 - 각 항목의 목표, 증상, 후속 작업 및 위험 요소 명시 - release 계획에 따른 0.3.0 ~ 0.6.0 분할 📝 docs(INDEX): 백로그 항목에 대한 세부 정보 추가 - fb-26 ~ fb-42 항목의 세부 정보 및 상태 추가 - 각 항목의 목표와 후속 작업 명시 - 도그푸딩 피드백에 따른 개선 사항 반영 🔧 chore(tasks): 새로운 백로그 항목 파일 생성 - p9-fb-26 ~ p9-fb-42 각 항목에 대한 개별 파일 생성 - 각 파일에 목표, 증상, 후속 작업 및 위험 요소 포함 - doogfooding 피드백을 기반으로 한 개선 사항 문서화
This commit is contained in:
43
tasks/p9/p9-fb-34-output-budget-controls.md
Normal file
43
tasks/p9/p9-fb-34-output-budget-controls.md
Normal file
@@ -0,0 +1,43 @@
|
||||
---
|
||||
phase: P9
|
||||
component: kebab-cli + kebab-app + wire-schema
|
||||
task_id: p9-fb-34
|
||||
title: "Output budget controls (--max-tokens / --snippet-chars / pagination)"
|
||||
status: open
|
||||
target_version: 0.4.0
|
||||
depends_on: []
|
||||
unblocks: []
|
||||
contract_source: ../../docs/superpowers/specs/2026-04-27-kebab-final-form-design.md
|
||||
contract_sections: [§4 search, §10 UX, wire-schema search_hit.v1]
|
||||
source_feedback: 사용자 도그푸딩 2026-05-06 — agent context window 제한적. 검색 결과 양 / snippet 길이 / 페이지네이션 control 필요.
|
||||
---
|
||||
|
||||
# p9-fb-34 — Output budget controls
|
||||
|
||||
> ⏳ **백로그 only — 미구현.** 본 spec 은 도그푸딩 피드백 skeleton. 구현 착수 전 [superpowers:brainstorming](../../docs/superpowers/) 으로 설계 단계 선행 필요. budget 적용 layer (truncate vs k 조정) / cursor 형식 / 기본값 brainstorm 후 확정.
|
||||
|
||||
## 증상 / 동기
|
||||
|
||||
- agent context window 한정 — 검색 결과 5KB 이하로 받고 싶을 때 control 없음.
|
||||
- snippet 길이 고정 → narrow context 에서 한 hit 만 받아도 차고 넘침.
|
||||
- top-5 본 후 추가 5 보고 싶을 때 페이지네이션 없음.
|
||||
|
||||
## Goal (skeleton)
|
||||
|
||||
- `kebab search --max-tokens N` — 결과 직렬화 size 가 N tokens 안에 들도록 truncate / k 자동 축소.
|
||||
- `kebab search --snippet-chars N` — 각 hit 의 snippet 최대 chars.
|
||||
- `kebab search --cursor <opaque>` — 이전 호출의 cursor 로 다음 페이지.
|
||||
- response 에 `next_cursor` 필드 (남은 hit 있을 때).
|
||||
|
||||
## 후속 작업 — brainstorm 필요 항목
|
||||
|
||||
- token 카운트 — tiktoken 류 dependency vs 단순 byte/4 근사.
|
||||
- truncate 우선순위 — snippet 단축 → k 축소 → metadata 제거.
|
||||
- cursor 의 안정성 — index 변경 후 cursor 유효성.
|
||||
- `kebab ask` 도 동일 인자 (`--max-tokens` 결과 답변 길이 제한)?
|
||||
|
||||
## Risks / notes
|
||||
|
||||
- wire schema additive — `next_cursor` 필드 추가 minor.
|
||||
- agent UX — truncate 발생 시 명시적 hint (`truncated: true`) 필요.
|
||||
- 기본값 — agent 친화 (작은 budget) vs 사람 친화 (큰 budget) trade-off.
|
||||
Reference in New Issue
Block a user