fix(config): canonicalize typed configuration values - #86
Conversation
|
Important Review skippedDraft detected. Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Plus Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
📝 WalkthroughWalkthrough설정 역직렬화에 잘못된 불리언 및 JSON 컨테이너 형태의 기본값 폴백을 추가했습니다. 저장값과 캐시값은 정규화하며, mutable 기본값과 캐시 결과는 방어적으로 복사합니다. 관련 문서와 회귀 테스트를 추가했습니다. Changes구성 처리 안정성
Estimated code review effort: 3 (Moderate) | ~25 minutes Sequence Diagram(s)sequenceDiagram
participant 호출자
participant PostgresConfigStore
participant PostgreSQL
participant ConfigCache
호출자->>PostgresConfigStore: set(key, raw_value)
PostgresConfigStore->>PostgresConfigStore: 선언된 타입으로 정규화
PostgresConfigStore->>PostgreSQL: 정규화된 값 저장
PostgresConfigStore->>ConfigCache: 정규화된 값 기록
호출자->>PostgresConfigStore: 설정 조회
PostgresConfigStore->>ConfigCache: 캐시 값 요청
ConfigCache-->>PostgresConfigStore: mutable 값 복사본 반환
PostgresConfigStore-->>호출자: 격리된 설정값 반환
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✨ Finishing Touches📝 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 |
|
@coderabbitai review |
|
@coderabbitai review Please review exact current head |
|
✅ Action performedReview finished.
|
Superseded by protected-main integration
This historical Draft is closed unmerged. Its typed boolean fallback, declared collection-shape, canonical-write, mutable-default isolation, and defensive-cache semantics are present on protected main through later reviewed integration, alongside newer deterministic cleanup and encryption-policy behavior.
The retained branch ref has been reconciled to exact protected main after fresh comparison so it no longer represents an active competing writer. Historical commits remain reachable from this closed PR and commit URLs; no review, check, or approval evidence transfers to new work.
Do not reopen or revive this stale ancestry. Future configuration changes must start from a freshly read protected-main commit and reacquire all evidence.