Repository navigation
Conversation
…Config (#1144) Refresh the vendored spec and add `ClickPipeMongoDBTableConfig` (request) and `ClickPipeMongoDBTableConfigResponse` (all-`Option`), carried as optional `mongo_config` on `ClickPipeMongoDBPipeTableMapping` and its response variant. `persistDeletedDocuments` resolves as required in request position (no `required[]`, no "Optional" description), so the request field is `bool`. The CLI builds its mappings with `..Default::default()` and the MongoDB `--table-mapping-json` allowlist does not yet include `mongoConfig`, so the request shape is unchanged. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This branch was successfully deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Part 1 of 4 in the #1144 drift stack. It refreshes the vendored OpenAPI snapshot and adds the MongoDB ClickPipe per-collection
mongoConfig. See #1144.ClickPipeMongoDBTableConfigschema,mongoConfigonClickPipeMongoDBPipeTableMapping, and two ClickStack log-source expressions (part 3 adds those).ClickPipeMongoDBTableConfig(request) andClickPipeMongoDBTableConfigResponse(all-Option), carried as optionalmongo_configonClickPipeMongoDBPipeTableMappingand its response variant.persistDeletedDocumentsisboolin the request type. The schema has norequired[]and its description doesn't start with "Optional", so the analyzer resolves it as required. I left out an optionality exemption because I haven't verified that the API accepts{}. The spec'sdefault: falseapplies whenmongoConfigitself is omitted, which the mapping still allows...Default::default(), and the MongoDB--table-mapping-jsonallowlist doesn't includemongoConfigyet (part 2). The existing exact-body MongoDB request-shape tests pass unchanged. The two ClickPipes integration struct literals setmongo_config: None.nullvalue decoding asNoneon the response. Library README updated.spec_coverage_testand the analyzerentrypoint_teststill fail on this PR alone. They list only the four ClickStack findings that part 3 fixes. The other library tests, bothclickhousectlclippy configurations,cargo check --workspace --all-featuresandcargo test -p clickhousectlpass.The MongoDB E2E suite is manual (it needs a third-party service and
changeStreamPreAndPostImages), so there's no live step for this field.🤖 Generated with Claude Code
Note
Low Risk
Typed client and OpenAPI sync only; the new mapping field is optional and covered by unit tests, with no runtime or security behavior changes in this repo.
Overview
Refreshes the vendored ClickHouse Cloud OpenAPI snapshot and wires up MongoDB ClickPipe per-collection settings in the Rust client.
ClickPipeMongoDBPipeTableMappingnow accepts optionalmongo_config(ClickPipeMongoDBTableConfig), with a response-sideClickPipeMongoDBTableConfigResponse. The config exposespersist_deleted_documents: when set, deletes replicate the full pre-delete document (not just_id), which requireschangeStreamPreAndPostImageson the MongoDB collection. Omittingmongo_configkeeps the API default; unset configs are omitted on the wire.Callers building table mappings with struct literals must add
mongo_config: Noneor use..Default::default(). Integration tests and serde round-trip tests cover strict request encoding, omission when unset, and tolerant response parsing. The crate README documents the new surface. The snapshot diff also includes ClickStack log-source expression fields; Rust models for those are handled in a follow-up PR in the same stack.Reviewed by Cursor Bugbot for commit c410e16. Bugbot is set up for automated code reviews on this repo. Configure here.