fix(cdc): remove SQL Server scaffold from production discovery - #163
fix(cdc): remove SQL Server scaffold from production discovery#163seonghobae wants to merge 5 commits into
Conversation
📝 WalkthroughWalkthroughSQL Server Debezium CDC 소스의 Spring 자동 등록을 제거했습니다. 등록되지 않은 소스 사용은 ChangesSQL Server Debezium 비활성화
Estimated code review effort: 2 (Simple) | ~10 minutes 🚥 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 |
Rate Limit Exceeded
|
|
@coderabbitai review |
✅ Action performedReview finished.
|
There was a problem hiding this comment.
Actionable comments posted: 1
🧹 Nitpick comments (1)
docs/cdc/any-to-any-cdc.md (1)
90-91: 🗄️ Data Integrity & Integration | 🔵 Trivial설치 가능한 CDC 실행 테스트로
unknown_source_type동작을 보여주세요.현재 스토커는
describeConfigured에서sqlserver-debezium을unknown_source_type으로 처리하고CdcSourceFactoryTest가 예시 입력을 검증하지만, 예제는postgres-debezium,mysql-debezium,oracle-debezium을 사용합니다. 활성화 설정, 기본 프로덕션 레지스트리, 예시sqlserver-debezium입력/응답을 함께 커버하는 실행 테스트가 필요합니다.🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@docs/cdc/any-to-any-cdc.md` around lines 90 - 91, 추가 실행 테스트에서 활성화 설정과 기본 프로덕션 레지스트리를 사용해 `sqlserver-debezium` 예시 입력이 `describeConfigured`를 통해 `unknown_source_type` 응답을 반환하는지 검증하세요. `CdcSourceFactoryTest`의 기존 예시 검증도 해당 SQL Server 시나리오를 포함하도록 확장하고, docs/cdc/any-to-any-cdc.md 90-91 및 CHANGELOG.md 19의 관련 설명을 이 테스트 동작과 일치하도록 갱신하세요.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@docs/cdc/any-to-any-cdc.md`:
- Line 90: 등록 타입 표 앞뒤에 빈 줄을 추가해 Markdown 표가 주변 문단과 분리되도록 수정하세요. 해당 표의 기존 내용과 정렬은
유지하고, markdownlint-cli2의 MD058 경고가 발생하지 않게 하세요.
---
Nitpick comments:
In `@docs/cdc/any-to-any-cdc.md`:
- Around line 90-91: 추가 실행 테스트에서 활성화 설정과 기본 프로덕션 레지스트리를 사용해 `sqlserver-debezium`
예시 입력이 `describeConfigured`를 통해 `unknown_source_type` 응답을 반환하는지 검증하세요.
`CdcSourceFactoryTest`의 기존 예시 검증도 해당 SQL Server 시나리오를 포함하도록 확장하고,
docs/cdc/any-to-any-cdc.md 90-91 및 CHANGELOG.md 19의 관련 설명을 이 테스트 동작과 일치하도록
갱신하세요.
🪄 Autofix
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Organization UI
Review profile: CHILL
Plan: Pro Plus
Run ID: fca66700-1d59-46c7-849e-1945387bc446
📒 Files selected for processing (4)
CHANGELOG.mdcdc-service/src/main/java/com/xtrmetl/cdc/spi/SqlServerDebeziumCdcSource.javacdc-service/src/test/java/com/xtrmetl/cdc/spi/CdcSourceRegistryTest.javadocs/cdc/any-to-any-cdc.md
|
@coderabbitai review |
Rate Limit Exceeded
|
|
Fresh exact-state correction (2026-08-09): the PR body is now stale. Live source head is All five workflow aggregates associated with live head |
|
Fresh exact-head reconciliation after the branch moved under its active writer; this supersedes the PR body's queued-gate snapshot without changing source/ref state.
Those aggregate greens are not yet accepted release/merge evidence. CI macOS job Disposition: source-local SQL Server retirement/review findings are currently addressed; do not rerun unchanged aggregate CI, claim literal-source proof, or promote this Draft until the shared non-vacuous coverage/source-identity controls and qualifying independent approval are satisfied on the resulting exact head/base. This loop keeps source/ref writes frozen for this branch for the remainder of the invocation because live branch movement was observed. |
Purpose
Advance #153 with one bounded CDC connector decision: stop auto-discovering the nonfunctional SQL Server Debezium scaffold as a Spring production source until a maintained SQL Server CDC implementation exists. Keep the reference type available for explicit design/tests without advertising a runtime source that cannot start.
Nothing here is
implemented_on_developbefore protected integration.Exact current identity
develop@622e5e6c3d534f230c390f10e3832efadfc01825;fix/remove-sqlserver-cdc-scaffold-discovery;652e696db6622cebd11926cf326d9ea4b68e00e7;d96d1c815511dffe8d48fa9d8b6eb0c92b353304;da327fbbe3f542477a34581279afe8f704a283ff;Every predecessor-head/base check, review, approval or synthetic merge is historical and does not transfer.
RCA / production boundary
Protected
SqlServerDebeziumCdcSourceextendsAbstractScaffoldCdcSource, whose runtime start path refuses operation, while the class was annotated as a Spring component. Production discovery could therefore advertise a source that cannot start. A real SQL Server source additionally needs a maintained Debezium SQL Server dependency, SQL Server CDC prerequisites, offset/schema-history lifecycle, restart/recovery, credential validation, operations guidance and realistic integration evidence.The smallest safe correction is removal from Spring production discovery, not invention of those missing dependencies/credentials/behaviors.
TDD / implemented boundary
Fail-first
652e696db6622cebd11926cf326d9ea4b68e00e7requiresSqlServerDebeziumCdcSourceto have no Spring@Componentmarker while preserving explicit construction of the reference type.The subsequent branch:
unknown_source_type;CHANGELOG.md;Fresh exact-current-head aggregate state
For exact source head
d96d1c815511dffe8d48fa9d8b6eb0c92b353304all exposed pull-request aggregates are terminal-success:31317797366: success;31317797360: success;31317797356: success;31317797409: success;31317797370: success.CodeRabbit has already been explicitly requested multiple times on this PR; one request hit provider chat rate limiting. Do not spam the unchanged head merely to produce another status. Provider/reviewer latency is local to that review lane.
Aggregate green is not merge authorization. Current protected PR workflows still execute GitHub's generated integration source rather than accepted literal source, protected JaCoCo remains a vacuous evidence path until #162/#164 integrates, and #196 requires Maven dependency/vulnerability evidence to fail closed when Trivy reports unresolved BOM-managed versions. Source identity, vulnerability-graph completeness and non-vacuous coverage remain independent acceptance dimensions.
Scope / merge boundary
Keep Draft until the unchanged exact source head has accepted literal-source deterministic/security evidence, complete same-revision dependency/vulnerability evidence, non-vacuous owned-production coverage, zero valid unresolved review findings, all required repository/security gates and qualifying independent non-author formal approval where governance requires it. Do not suppress inherited security findings, copy unrelated workflow controls into this feature branch, or claim SQL Server support before a separately reviewed production implementation exists.
Issue #153 remains the broader connector-lifecycle authority; no evidence from #156/#158 or future Databricks/Snowflake work transfers to this PR.