feat(discovery): add bounded OpenRouter free canary - #985
Conversation
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Team Run ID: 📒 Files selected for processing (3)
💤 Files with no reviewable changes (1)
🚧 Files skipped from review as they are similar to previous changes (2)
Included review availability: Your plan provides up to 1 included review per hour; 0 remain after this review. 📝 WalkthroughWalkthroughOpenRouter 무료 모델 canary의 dry-run 기본 동작과 opt-in live 운영 조건을 문서화했습니다. 증거 보존, 만료 정리, OpenRouter 자격 증명 사용 및 NIST 통제 관련 설명도 갱신했습니다. ChangesOpenRouter 무료 canary
Estimated code review effort: 1 (Trivial) | ~5 minutes Merge Risk: ⚪ Minimal · up to The change documents the bounded, dry-run-default OpenRouter free-model canary contract. No concrete unresolved merge risk is identified. 🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
Signed-off-by: Seongho Bae <me@seonghobae.me>
Signed-off-by: Seongho Bae <me@seonghobae.me>
Signed-off-by: Seongho Bae <me@seonghobae.me>
|
You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard. |
# Conflicts: # CHANGELOG.md # contextual_orchestrator/__main__.py
Merge conflict resolvedMerged current
New head: Generated by Claude Code Generated by Claude Code |
CodeRabbit found two real issues on this branch's merge with main: - contextual_orchestrator/__main__.py imported the same four openrouter_canary symbols twice (once from this branch's own history, once left over after main's independent extraction into _openrouter_free_canary_command). Removed the duplicate. - README's canary bootstrap example registered OPENAI_API_KEY immediately after stating the canary only uses OPENROUTER_API_KEY, so following the docs verbatim produces a credential-missing failure. Corrected to OPENROUTER_API_KEY. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01BV96rXhqoR3tYZ9AeAVur4
…minal status Ported from contextual-orchestrator#1025 (unrelated to this PR's own docs-only diff, needed to unblock the required "Full unit and contract suite" check). See that PR for the RED/GREEN reproduction via an artificial-delay injection into ProviderEmbeddingBatchBackend._run_job. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01BV96rXhqoR3tYZ9AeAVur4
|
The failing required "Full unit and contract suite" check ( Root-caused it as a genuine, pre-existing CI-only race: two tests in that file call Filed the canonical fix at #1025 and ported the identical two-line change onto this PR's branch (commit Generated by Claude Code |
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01BV96rXhqoR3tYZ9AeAVur4
|
Brought this branch current with
Generated by Claude Code |
|
Exact-head follow-up on
|
Summary
Safety contract
OPENROUTER_API_KEYis resolved only from the KV registrymax_retries=0and exactly one fixed requestVerification
uv run pytest -q— 2861 passed, 1 skippedgit diff --check— passedProduct gap
Closes the unclaimed OpenRouter canary slice recorded in
docs/product-technical-gap-baseline.md. Existing routing/discovery research and KV boundaries are reused; no new routing-policy claim is introduced.Summary by CodeRabbit
새 기능
--live모드에서 요청 수, 출력 토큰, 타임아웃 및 증거 보존 한도를 설정할 수 있습니다.문서