refactor(combos): isolate combo identifier helpers (split S11 L1/5) - #3594
refactor(combos): isolate combo identifier helpers (split S11 L1/5)#3594lidge-jun wants to merge 3 commits into
Conversation
|
✅ Deterministic PR hygiene checks passed. |
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: ASSERTIVE Plan: Team Run ID: 📒 Files selected for processing (3)
Included review availability: Your plan provides up to 10 included reviews per hour; 1 remains after this review. 📝 WalkthroughWalkthroughThe change extracts combo identifier helpers into ChangesCombo identifier handling
Estimated code review effort: 3 (Moderate) | ~20 minutes Merge Risk: ⚪ Minimal · up to Combo identifier helpers are now housed in a dependency-free module while existing public exports remain available. The change includes compatibility and boundary coverage, with no remaining merge-readiness risk identified. 🚥 Pre-merge checks | ✅ 4 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (4 passed)
✨ Finishing Touches 💡 1📝 Generate docstrings 💡
🧪 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 |
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
리뷰 · 우선순위 61 / 80이 PR은 combos 모듈 스플릿 트레인 S11의 1/5층입니다. 베이스는 왜 지금이냐면, 메인테이너가 걸어 둔 types/config 대형 스플릿 캠페인과 같은 규칙입니다(PURE-MOVE-SIZE-01, TYPE-CYCLE-01). 식별자 리프는 의존성이 거의 없고 validation이 그걸 쓰므로, 파일 안 forward reference를 줄이면서 한도만 맞춥니다. 계획 문서는 검증 메모도 스플릿 PR답게 짧고 확실합니다. typecheck 통과, combos/codex-catalog/combo-management-api/provider-id-rewrite 포커스 372 pass, cycle gate에서 identifiers → types.ts/index.ts 역엣지 없음, facade vs leaf export 동일성 테스트 추가. CI는 gates/hygiene/linux 쪽이 통과이고 macos/keyring 일부는 pending입니다. 라인 / 경로로 보면 아래를 보면 됩니다. 경로 메인테이너의 판단이 필요한 지점
너의 추천 이 댓글은 grok-bot이 작성했습니다 |
리뷰 · 우선순위 74 / 80설명 이 PR은 S11(codex-misc) 스플릿 기차의 1번째 칸이다. 지금 왜 옮기냐면 diff는 파일 3개(+117/−93)다. 새로 생긴 지금 라인 85 - 경로/심볼 메인테이너의 판단이 필요한 지점
너의 추천 이 댓글은 grok-bot이 작성했습니다 |
|
Superseded by aggregate PR #3668, admin-merged into dev as 6585e6a after exact-head CI and tested-tree verification. This original PR was not individually merged; its rebased content and historical records were consolidated in #3668. The original branch is preserved. Further unimplemented debt layers remain deferred. |
Summary
src/combos/types.ts(COMBO_NAMESPACE, id pattern/validation,targetKey,parseComboModelId/comboModelId/comboPublicModelId/comboDisabledModelId/comboDisabledModelSelectors,resolveComboId, native-alias predicate — lines 13–22, 54–124, 396–399) move verbatim tosrc/combos/identifiers.ts(89 lines).types.tskeeps validation/normalization and re-exports all 11 moved values, so all 22 previously exported names stay importable fromcombos/typesand thecombos/index.tsfacade is untouched (19 direct importers unchanged).devlog/_plan/260905_now_split_train/320_combos_types.md; rules003_parent_decisions.md(PURE-MOVE-SIZE-01, TYPE-CYCLE-01).Stack (S11 codex-misc — independent layers, each based on
dev; no cascade between them):Base: dev. Review this PR's diff only (3 files, +118/−94; non-move diff: 2 leaf imports, 5 facade wiring lines, 25 test lines). Move-aware view:
git diff --color-moved=dimmed-zebra dev...HEAD.Verification
bun run typecheck→ exit 0tests/lab/core-lab-boundary.test.ts→ 17 pass / 0 failimport("…")type edges: 18 files walked, no path returns totypes.ts/index.ts/the leaf; the three pre-existing type cycles undersrc/typesare unchanged.comboModelIdat the facade fails the new identity assertion; breakingcomboDisabledModelSelectorsin the leaf failscombos.test.ts:193.bun run privacy:scan→ passed;git diff --check dev...HEADclean.lidge) at this exact SHA: recorded in the devlog doc.Checklist
Summary by CodeRabbit