[codex] Add vcards nested contact flags#262
Conversation
|
@codex @claude review. Focus on critical issues: bugs, security vulnerabilities, logical errors, data loss risks, performance problems, API contract mismatches, and missing tests. Do NOT nitpick style, naming conventions, minor formatting, or subjective preferences — only flag issues that could break functionality or cause real harm in production. |
|
Claude finished @axisrow's task in 2m 59s —— View job Claude Code ReviewVerdict: No critical issues. The PR implements Critical checks (all pass)
Minor observations (non-blocking, listed for awareness only)
ConclusionMergeable as-is. No bugs, no security/data-loss risk, no API-contract mismatch, no missing test that would mask a real failure mode.
|
|
Codex Review: Didn't find any major issues. Keep them coming! ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
If Codex has suggestions, it will comment; otherwise it will react with 👍. Codex can also answer questions or update the PR. Try commenting "@codex address that feedback". |
There was a problem hiding this comment.
Pull request overview
Adds typed CLI support for two WSDL-supported nested vCard fields (InstantMessenger and PointOnMap) in direct vcards add, along with local validation to prevent partial nested objects and test/doc updates to keep WSDL parity/audit coverage accurate.
Changes:
- Added new typed flags for
vcards addto populateInstantMessenger.*andPointOnMap.*, with “all-or-none” validation for each nested object. - Expanded dry-run payload tests and WSDL parity gate mappings to cover the newly supported optional fields.
- Updated WSDL optional-field audit and README EN/RU examples to reflect the new flags.
Reviewed changes
Copilot reviewed 5 out of 5 changed files in this pull request and generated 1 comment.
Show a summary per file
| File | Description |
|---|---|
| direct_cli/commands/vcards.py | Adds new flags and builders for nested InstantMessenger and PointOnMap payload blocks in vcards add. |
| tests/test_dry_run.py | Adds dry-run payload assertions and local validation rejection tests for the new nested flags. |
| tests/test_wsdl_parity_gate.py | Updates optional-field-to-CLI-flag mapping so parity gate recognizes the new flags. |
| tests/WSDL_OPTIONAL_FIELD_AUDIT.md | Updates audit counts and marks the new vCards optional fields as supported. |
| README.md | Updates one-line direct vcards add examples (EN/RU) to demonstrate the new flags. |
| """Add vCard""" | ||
| try: | ||
| instant_messenger = _build_instant_messenger( | ||
| instant_messenger_client, | ||
| instant_messenger_login, |
|
Addressed the actionable UsageError propagation feedback in 2b4790b:
Verification:
@codex @claude review. Please re-check only blocking issues: bugs, contract mismatches, and missing tests. |
|
Claude finished @axisrow's task in 1m 46s —— View job Claude Re-Review (commit
|
|
Codex Review: Didn't find any major issues. Bravo. ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
If Codex has suggestions, it will comment; otherwise it will react with 👍. Codex can also answer questions or update the PR. Try commenting "@codex address that feedback". |
* [codex] Add adgroup tracking params flags (#258) * Add adgroup tracking params flags * test: cover adgroup tracking params add rejection --------- Co-authored-by: axisrow <[email protected]> * [codex] Add sitelink TurboPageId typed input (#259) * feat(sitelinks): support turbo page id * test(sitelinks): cover turbo page json input --------- Co-authored-by: axisrow <[email protected]> * [codex] Add retargeting description flags (#260) * feat(retargeting): add description flags * fix(retargeting): preserve empty description --------- Co-authored-by: axisrow <[email protected]> * [codex] Add adgroups negative keyword flags (#261) * feat(adgroups): add negative keyword flags * fix(adgroups): report invalid negative set ids as usage errors --------- Co-authored-by: axisrow <[email protected]> * [codex] Add vcards nested contact flags (#262) * feat(vcards): add nested contact fields * fix(vcards): preserve grouped flag usage errors --------- Co-authored-by: axisrow <[email protected]> * feat(ads): add text ad extension update flags (#263) Co-authored-by: axisrow <[email protected]> * feat(feeds): add url feed detail flags (#265) Co-authored-by: axisrow <[email protected]> * docs: align optional WSDL audit depth notes * docs: document milestone 18 typed flags --------- Co-authored-by: axisrow <[email protected]>
Summary
Verification
Closes #246