Uh oh!
There was an error while loading. Please reload this page.
Add the six notifications commands - #3443
Conversation
Generated by cli-terraform-generator merge mode from the notifications v1 OpenAPI spec: integration, subscription, resource-preference, resource-subscription, notification-type, and user-notification, plus their ccloudv2 wrappers, test-server handlers, integration tests, input fixtures, output goldens, and live tests. The integration command's target is a oneOf. Update leaves --kind optional so an update touching only display-name or description is accepted, and rejects a variant flag supplied without --kind rather than silently dropping it. Verified with go build ./..., go vet, and go test ./test/ -run 'TestCLI/TestNotifications'. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
🎉 All Contributor License Agreements have been signed. Ready to merge. |
There was a problem hiding this comment.
Pull request overview
This pull request introduces a new top-level notifications command group backed by the Notifications v1 CCloud SDK, adds the corresponding test-server endpoints, and wires in integration/live tests plus golden fixtures to validate CLI behavior.
Changes:
- Add Notifications v1 API client bootstrap + CRUD/list wrappers in
pkg/ccloudv2, and register the client on the sharedccloudv2.Client. - Add
internal/notificationsCobra command tree (integrations, notification-types, resource-preferences, resource-subscriptions, subscriptions, user-notifications) and register it under the root command. - Extend the test server router + handlers, add integration/live tests, and add input/output fixtures + goldens for the new commands.
Reviewed changes
Copilot reviewed 185 out of 211 changed files in this pull request and generated 7 comments.
Show a summary per file
| File | Description |
|---|---|
| test/test-server/notifications_user_notification_handler.go | Adds test-server handlers for user-notifications list/get/patch. |
| test/test-server/notifications_subscription_handler.go | Adds test-server handlers for subscriptions list/create/get/update/delete. |
| test/test-server/notifications_resource_subscription_handler.go | Adds test-server handlers for resource-subscriptions create/get/update/delete. |
| test/test-server/notifications_resource_preference_handler.go | Adds test-server handlers for resource-preferences create/get/update/delete. |
| test/test-server/notifications_notification_type_handler.go | Adds test-server handlers for notification-types list/get. |
| test/test-server/notifications_integration_handler.go | Adds test-server handlers for integrations list/create/get/update/delete. |
| test/test-server/ccloudv2_router.go | Registers Notifications v1 routes in the test-server router. |
| test/notifications_user_notification_test.go | Adds integration tests for user-notification describe/list/update + autocomplete. |
| test/notifications_subscription_test.go | Adds integration tests for subscription CRUD + autocomplete. |
| test/notifications_resource_subscription_test.go | Adds integration tests for resource-subscription CRUD. |
| test/notifications_resource_preference_test.go | Adds integration tests for resource-preference CRUD. |
| test/notifications_notification_type_test.go | Adds integration tests for notification-type describe/list + autocomplete. |
| test/notifications_integration_test.go | Adds integration tests for integration CRUD + autocomplete. |
| test/live/notifications_user_notification_live_test.go | Adds live CRUD coverage for user-notifications. |
| test/live/notifications_subscription_live_test.go | Adds live CRUD coverage for subscriptions (env-var gated). |
| test/live/notifications_resource_subscription_live_test.go | Adds live CRUD coverage for resource-subscriptions (env-var gated). |
| test/live/notifications_resource_preference_live_test.go | Adds live CRUD coverage for resource-preferences. |
| test/live/notifications_notification_type_live_test.go | Adds live coverage for notification-type list/describe. |
| test/fixtures/output/notifications/user-notification/update/update-read.golden | Adds golden output for user-notification update (human). |
| test/fixtures/output/notifications/user-notification/update/update-invalid.golden | Adds golden output for user-notification update (404). |
| test/fixtures/output/notifications/user-notification/update-help.golden | Adds golden help for user-notification update. |
| test/fixtures/output/notifications/user-notification/list/list.golden | Adds golden output for user-notification list (human). |
| test/fixtures/output/notifications/user-notification/list/list-yaml.golden | Adds golden output for user-notification list (yaml). |
| test/fixtures/output/notifications/user-notification/list/list-type.golden | Adds golden output for user-notification list filtered by type. |
| test/fixtures/output/notifications/user-notification/list/list-time-range.golden | Adds golden output for user-notification list filtered by time range. |
| test/fixtures/output/notifications/user-notification/list/list-sort.golden | Adds golden output for user-notification list sorted. |
| test/fixtures/output/notifications/user-notification/list/list-severity.golden | Adds golden output for user-notification list filtered by severity. |
| test/fixtures/output/notifications/user-notification/list/list-search.golden | Adds golden output for user-notification list filtered by search. |
| test/fixtures/output/notifications/user-notification/list/list-read.golden | Adds golden output for user-notification list filtered by read. |
| test/fixtures/output/notifications/user-notification/list/list-json.golden | Adds golden output for user-notification list (json). |
| test/fixtures/output/notifications/user-notification/list/list-include.golden | Adds golden output for user-notification list with include fields. |
| test/fixtures/output/notifications/user-notification/list/list-crn.golden | Adds golden output for user-notification list filtered by CRN. |
| test/fixtures/output/notifications/user-notification/list-help.golden | Adds golden help for user-notification list. |
| test/fixtures/output/notifications/user-notification/help.golden | Adds golden help for user-notification command group. |
| test/fixtures/output/notifications/user-notification/describe/describe.golden | Adds golden output for user-notification describe (human). |
| test/fixtures/output/notifications/user-notification/describe/describe-yaml.golden | Adds golden output for user-notification describe (yaml). |
| test/fixtures/output/notifications/user-notification/describe/describe-json.golden | Adds golden output for user-notification describe (json). |
| test/fixtures/output/notifications/user-notification/describe/describe-invalid.golden | Adds golden output for user-notification describe (404). |
| test/fixtures/output/notifications/user-notification/describe/describe-autocomplete.golden | Adds golden output for user-notification autocomplete. |
| test/fixtures/output/notifications/user-notification/describe-help.golden | Adds golden help for user-notification describe. |
| test/fixtures/output/notifications/subscription/update/update-invalid.golden | Adds golden output for subscription update (404). |
| test/fixtures/output/notifications/subscription/update/update-integrations.golden | Adds golden output for subscription update integrations (human). |
| test/fixtures/output/notifications/subscription/update/update-current-state.golden | Adds golden output for subscription update current-state (human). |
| test/fixtures/output/notifications/subscription/update-help.golden | Adds golden help for subscription update. |
| test/fixtures/output/notifications/subscription/list/list.golden | Adds golden output for subscription list (human). |
| test/fixtures/output/notifications/subscription/list/list-yaml.golden | Adds golden output for subscription list (yaml). |
| test/fixtures/output/notifications/subscription/list/list-json.golden | Adds golden output for subscription list (json). |
| test/fixtures/output/notifications/subscription/list-help.golden | Adds golden help for subscription list. |
| test/fixtures/output/notifications/subscription/help.golden | Adds golden help for subscription command group. |
| test/fixtures/output/notifications/subscription/describe/describe.golden | Adds golden output for subscription describe (human). |
| test/fixtures/output/notifications/subscription/describe/describe-yaml.golden | Adds golden output for subscription describe (yaml). |
| test/fixtures/output/notifications/subscription/describe/describe-json.golden | Adds golden output for subscription describe (json). |
| test/fixtures/output/notifications/subscription/describe/describe-invalid.golden | Adds golden output for subscription describe (404). |
| test/fixtures/output/notifications/subscription/describe/describe-autocomplete.golden | Adds golden output for subscription describe autocomplete. |
| test/fixtures/output/notifications/subscription/describe-help.golden | Adds golden help for subscription describe. |
| test/fixtures/output/notifications/subscription/delete/delete.golden | Adds golden output for subscription delete (force). |
| test/fixtures/output/notifications/subscription/delete/delete-no-force.golden | Adds golden output for subscription delete (prompt). |
| test/fixtures/output/notifications/subscription/delete/delete-multiple.golden | Adds golden output for multi-delete subscriptions. |
| test/fixtures/output/notifications/subscription/delete/delete-invalid.golden | Adds golden output for subscription delete invalid + suggestions. |
| test/fixtures/output/notifications/subscription/delete/delete-autocomplete.golden | Adds golden output for subscription delete autocomplete. |
| test/fixtures/output/notifications/subscription/delete-help.golden | Adds golden help for subscription delete. |
| test/fixtures/output/notifications/subscription/create/create.golden | Adds golden output for subscription create (human). |
| test/fixtures/output/notifications/subscription/create/create-current-state.golden | Adds golden output for subscription create with current-state. |
| test/fixtures/output/notifications/subscription/create-help.golden | Adds golden help for subscription create. |
| test/fixtures/output/notifications/resource-subscription/update/update-resource.golden | Adds golden output for resource-subscription update resource. |
| test/fixtures/output/notifications/resource-subscription/update/update-resource-type.golden | Adds golden output for resource-subscription update resource-type. |
| test/fixtures/output/notifications/resource-subscription/update/update-invalid.golden | Adds golden output for resource-subscription update (404). |
| test/fixtures/output/notifications/resource-subscription/update/update-integrations.golden | Adds golden output for resource-subscription update integrations. |
| test/fixtures/output/notifications/resource-subscription/update/update-current-state.golden | Adds golden output for resource-subscription update current-state. |
| test/fixtures/output/notifications/resource-subscription/update-help.golden | Adds golden help for resource-subscription update. |
| test/fixtures/output/notifications/resource-subscription/help.golden | Adds golden help for resource-subscription command group. |
| test/fixtures/output/notifications/resource-subscription/describe/describe.golden | Adds golden output for resource-subscription describe (human). |
| test/fixtures/output/notifications/resource-subscription/describe/describe-yaml.golden | Adds golden output for resource-subscription describe (yaml). |
| test/fixtures/output/notifications/resource-subscription/describe/describe-json.golden | Adds golden output for resource-subscription describe (json). |
| test/fixtures/output/notifications/resource-subscription/describe/describe-invalid.golden | Adds golden output for resource-subscription describe (404). |
| test/fixtures/output/notifications/resource-subscription/describe-help.golden | Adds golden help for resource-subscription describe. |
| test/fixtures/output/notifications/resource-subscription/delete/delete.golden | Adds golden output for resource-subscription delete (force). |
| test/fixtures/output/notifications/resource-subscription/delete/delete-no-force.golden | Adds golden output for resource-subscription delete (prompt). |
| test/fixtures/output/notifications/resource-subscription/delete/delete-multiple.golden | Adds golden output for multi-delete resource-subscriptions. |
| test/fixtures/output/notifications/resource-subscription/delete/delete-invalid.golden | Adds golden output for resource-subscription delete invalid + suggestions. |
| test/fixtures/output/notifications/resource-subscription/delete-help.golden | Adds golden help for resource-subscription delete. |
| test/fixtures/output/notifications/resource-subscription/create/create.golden | Adds golden output for resource-subscription create (human). |
| test/fixtures/output/notifications/resource-subscription/create/create-current-state.golden | Adds golden output for resource-subscription create with current-state. |
| test/fixtures/output/notifications/resource-subscription/create-help.golden | Adds golden help for resource-subscription create. |
| test/fixtures/output/notifications/resource-preference/update/update-resource.golden | Adds golden output for resource-preference update resource. |
| test/fixtures/output/notifications/resource-preference/update/update-resource-type.golden | Adds golden output for resource-preference update resource-type. |
| test/fixtures/output/notifications/resource-preference/update/update-invalid.golden | Adds golden output for resource-preference update (404). |
| test/fixtures/output/notifications/resource-preference/update/update-current-state.golden | Adds golden output for resource-preference update current-state. |
| test/fixtures/output/notifications/resource-preference/update-help.golden | Adds golden help for resource-preference update. |
| test/fixtures/output/notifications/resource-preference/help.golden | Adds golden help for resource-preference command group. |
| test/fixtures/output/notifications/resource-preference/describe/describe.golden | Adds golden output for resource-preference describe (human). |
| test/fixtures/output/notifications/resource-preference/describe/describe-yaml.golden | Adds golden output for resource-preference describe (yaml). |
| test/fixtures/output/notifications/resource-preference/describe/describe-json.golden | Adds golden output for resource-preference describe (json). |
| test/fixtures/output/notifications/resource-preference/describe/describe-invalid.golden | Adds golden output for resource-preference describe (404). |
| test/fixtures/output/notifications/resource-preference/describe-help.golden | Adds golden help for resource-preference describe. |
| test/fixtures/output/notifications/resource-preference/delete/delete.golden | Adds golden output for resource-preference delete (force). |
| test/fixtures/output/notifications/resource-preference/delete/delete-no-force.golden | Adds golden output for resource-preference delete (prompt). |
| test/fixtures/output/notifications/resource-preference/delete/delete-multiple.golden | Adds golden output for multi-delete resource-preferences. |
| test/fixtures/output/notifications/resource-preference/delete/delete-invalid.golden | Adds golden output for resource-preference delete invalid + suggestions. |
| test/fixtures/output/notifications/resource-preference/delete-help.golden | Adds golden help for resource-preference delete. |
| test/fixtures/output/notifications/resource-preference/create/create.golden | Adds golden output for resource-preference create (human). |
| test/fixtures/output/notifications/resource-preference/create/create-current-state.golden | Adds golden output for resource-preference create with current-state. |
| test/fixtures/output/notifications/resource-preference/create-help.golden | Adds golden help for resource-preference create. |
| test/fixtures/output/notifications/notification-type/list/list.golden | Adds golden output for notification-type list (human). |
| test/fixtures/output/notifications/notification-type/list/list-yaml.golden | Adds golden output for notification-type list (yaml). |
| test/fixtures/output/notifications/notification-type/list/list-resource-type.golden | Adds golden output for notification-type list filtered by resource-type. |
| test/fixtures/output/notifications/notification-type/list/list-json.golden | Adds golden output for notification-type list (json). |
| test/fixtures/output/notifications/notification-type/list-help.golden | Adds golden help for notification-type list. |
| test/fixtures/output/notifications/notification-type/help.golden | Adds golden help for notification-type command group. |
| test/fixtures/output/notifications/notification-type/describe/describe.golden | Adds golden output for notification-type describe (human). |
| test/fixtures/output/notifications/notification-type/describe/describe-yaml.golden | Adds golden output for notification-type describe (yaml). |
| test/fixtures/output/notifications/notification-type/describe/describe-json.golden | Adds golden output for notification-type describe (json). |
| test/fixtures/output/notifications/notification-type/describe/describe-invalid.golden | Adds golden output for notification-type describe (404). |
| test/fixtures/output/notifications/notification-type/describe/describe-autocomplete.golden | Adds golden output for notification-type autocomplete. |
| test/fixtures/output/notifications/notification-type/describe-help.golden | Adds golden help for notification-type describe. |
| test/fixtures/output/notifications/integration/update/update-webhook-target.golden | Adds golden output for integration update webhook target. |
| test/fixtures/output/notifications/integration/update/update-slack-target.golden | Adds golden output for integration update slack target. |
| test/fixtures/output/notifications/integration/update/update-ms-teams-target.golden | Adds golden output for integration update MsTeams target. |
| test/fixtures/output/notifications/integration/update/update-invalid.golden | Adds golden output for integration update (404). |
| test/fixtures/output/notifications/integration/update/update-display-name.golden | Adds golden output for integration update display-name. |
| test/fixtures/output/notifications/integration/update/update-description.golden | Adds golden output for integration update description. |
| test/fixtures/output/notifications/integration/update-help.golden | Adds golden help for integration update. |
| test/fixtures/output/notifications/integration/list/list.golden | Adds golden output for integration list (human). |
| test/fixtures/output/notifications/integration/list/list-yaml.golden | Adds golden output for integration list (yaml). |
| test/fixtures/output/notifications/integration/list/list-json.golden | Adds golden output for integration list (json). |
| test/fixtures/output/notifications/integration/list-help.golden | Adds golden help for integration list. |
| test/fixtures/output/notifications/integration/help.golden | Adds golden help for integration command group. |
| test/fixtures/output/notifications/integration/describe/describe-yaml.golden | Adds golden output for integration describe (yaml). |
| test/fixtures/output/notifications/integration/describe/describe-webhook-target.golden | Adds golden output for integration describe webhook target. |
| test/fixtures/output/notifications/integration/describe/describe-user-email-target.golden | Adds golden output for integration describe user-email target. |
| test/fixtures/output/notifications/integration/describe/describe-slack-target.golden | Adds golden output for integration describe slack target. |
| test/fixtures/output/notifications/integration/describe/describe-role-email-target.golden | Adds golden output for integration describe role-email target. |
| test/fixtures/output/notifications/integration/describe/describe-ms-teams-target.golden | Adds golden output for integration describe MsTeams target. |
| test/fixtures/output/notifications/integration/describe/describe-json.golden | Adds golden output for integration describe (json). |
| test/fixtures/output/notifications/integration/describe/describe-invalid.golden | Adds golden output for integration describe (404). |
| test/fixtures/output/notifications/integration/describe/describe-in-app-target.golden | Adds golden output for integration describe in-app target. |
| test/fixtures/output/notifications/integration/describe/describe-autocomplete.golden | Adds golden output for integration autocomplete. |
| test/fixtures/output/notifications/integration/describe-help.golden | Adds golden help for integration describe. |
| test/fixtures/output/notifications/integration/delete/delete.golden | Adds golden output for integration delete (force). |
| test/fixtures/output/notifications/integration/delete/delete-no-force.golden | Adds golden output for integration delete (prompt). |
| test/fixtures/output/notifications/integration/delete/delete-multiple.golden | Adds golden output for multi-delete integrations. |
| test/fixtures/output/notifications/integration/delete/delete-invalid.golden | Adds golden output for integration delete invalid + suggestions. |
| test/fixtures/output/notifications/integration/delete/delete-autocomplete.golden | Adds golden output for integration delete autocomplete. |
| test/fixtures/output/notifications/integration/delete-help.golden | Adds golden help for integration delete. |
| test/fixtures/output/notifications/integration/create/create-webhook-target.golden | Adds golden output for integration create webhook target. |
| test/fixtures/output/notifications/integration/create/create-slack-target.golden | Adds golden output for integration create slack target. |
| test/fixtures/output/notifications/integration/create/create-ms-teams-target.golden | Adds golden output for integration create MsTeams target. |
| test/fixtures/output/notifications/integration/create/create-description.golden | Adds golden output for integration create with description. |
| test/fixtures/output/notifications/integration/create-help.golden | Adds golden help for integration create. |
| test/fixtures/output/notifications/help.golden | Adds golden help for top-level notifications command group. |
| test/fixtures/output/help.golden | Adds the notifications entry to root help golden. |
| test/fixtures/input/notifications/user-notification/read_created_user_notification.json | Adds fixture payload for reading user-notifications. |
| test/fixtures/input/notifications/user-notification/create_user_notification.json | Adds fixture payload for creating user-notifications. |
| test/fixtures/input/notifications/subscription/read_created_subscription.json | Adds fixture payload for reading subscriptions. |
| test/fixtures/input/notifications/subscription/create_subscription.json | Adds fixture payload for creating subscriptions. |
| test/fixtures/input/notifications/resource-subscription/read_created_resource_subscription.json | Adds fixture payload for reading resource-subscriptions. |
| test/fixtures/input/notifications/resource-subscription/create_resource_subscription.json | Adds fixture payload for creating resource-subscriptions. |
| test/fixtures/input/notifications/resource-preference/read_created_resource_preference.json | Adds fixture payload for reading resource-preferences. |
| test/fixtures/input/notifications/resource-preference/create_resource_preference.json | Adds fixture payload for creating resource-preferences. |
| test/fixtures/input/notifications/notification-type/read_created_notification_type.json | Adds fixture payload for reading notification-types. |
| test/fixtures/input/notifications/notification-type/create_notification_type.json | Adds fixture payload for creating notification-types. |
| test/fixtures/input/notifications/integration/read_created_webhook_target.json | Adds fixture payload for reading webhook integration targets. |
| test/fixtures/input/notifications/integration/read_created_user_email_target.json | Adds fixture payload for reading user-email integration targets. |
| test/fixtures/input/notifications/integration/read_created_slack_target.json | Adds fixture payload for reading slack integration targets. |
| test/fixtures/input/notifications/integration/read_created_role_email_target.json | Adds fixture payload for reading role-email integration targets. |
| test/fixtures/input/notifications/integration/read_created_ms_teams_target.json | Adds fixture payload for reading MsTeams integration targets. |
| test/fixtures/input/notifications/integration/read_created_in_app_target.json | Adds fixture payload for reading in-app integration targets. |
| test/fixtures/input/notifications/integration/create_webhook_target.json | Adds fixture payload for creating webhook integration targets. |
| test/fixtures/input/notifications/integration/create_user_email_target.json | Adds fixture payload for creating user-email integration targets. |
| test/fixtures/input/notifications/integration/create_slack_target.json | Adds fixture payload for creating slack integration targets. |
| test/fixtures/input/notifications/integration/create_role_email_target.json | Adds fixture payload for creating role-email integration targets. |
| test/fixtures/input/notifications/integration/create_ms_teams_target.json | Adds fixture payload for creating MsTeams integration targets. |
| test/fixtures/input/notifications/integration/create_in_app_target.json | Adds fixture payload for creating in-app integration targets. |
| pkg/ccloudv2/notifications.go | Adds Notifications v1 client + wrapper methods for CRUD/list operations. |
| pkg/ccloudv2/client.go | Registers NotificationsClient on the shared CCloud v2 client. |
| internal/notifications/command.go | Adds the top-level notifications command and subcommand registration. |
| internal/notifications/command_user_notification.go | Adds user-notification command group, output formatting, and autocomplete. |
| internal/notifications/command_user_notification_update.go | Adds user-notification update command + --read support. |
| internal/notifications/command_user_notification_list.go | Adds user-notification list command + filtering flags. |
| internal/notifications/command_user_notification_describe.go | Adds user-notification describe command. |
| internal/notifications/command_subscription.go | Adds subscription command group, output formatting, and autocomplete. |
| internal/notifications/command_subscription_update.go | Adds subscription update command + flags. |
| internal/notifications/command_subscription_list.go | Adds subscription list command. |
| internal/notifications/command_subscription_describe.go | Adds subscription describe command. |
| internal/notifications/command_subscription_delete.go | Adds subscription delete (multi-delete) using shared deletion helpers. |
| internal/notifications/command_subscription_create.go | Adds subscription create command + flags. |
| internal/notifications/command_resource_subscription.go | Adds resource-subscription command group + output formatting. |
| internal/notifications/command_resource_subscription_update.go | Adds resource-subscription update command + flags. |
| internal/notifications/command_resource_subscription_describe.go | Adds resource-subscription describe command. |
| internal/notifications/command_resource_subscription_delete.go | Adds resource-subscription delete (multi-delete) using deletion helpers. |
| internal/notifications/command_resource_subscription_create.go | Adds resource-subscription create command + flags. |
| internal/notifications/command_resource_preference.go | Adds resource-preference command group + output formatting. |
| internal/notifications/command_resource_preference_update.go | Adds resource-preference update command + flags. |
| internal/notifications/command_resource_preference_describe.go | Adds resource-preference describe command. |
| internal/notifications/command_resource_preference_delete.go | Adds resource-preference delete (multi-delete) using deletion helpers. |
| internal/notifications/command_resource_preference_create.go | Adds resource-preference create command + flags. |
| internal/notifications/command_notification_type.go | Adds notification-type command group + output formatting + autocomplete. |
| internal/notifications/command_notification_type_list.go | Adds notification-type list command + filter flag. |
| internal/notifications/command_notification_type_describe.go | Adds notification-type describe command. |
| internal/notifications/command_integration.go | Adds integration command group + output formatting + autocomplete. |
| internal/notifications/command_integration_update.go | Adds integration update command + target-kind handling. |
| internal/notifications/command_integration_list.go | Adds integration list command. |
| internal/notifications/command_integration_describe.go | Adds integration describe command. |
| internal/notifications/command_integration_delete.go | Adds integration delete (multi-delete) using deletion helpers. |
| internal/notifications/command_integration_create.go | Adds integration create command + target-kind handling. |
| internal/command.go | Registers notifications under the root command. |
| go.sum | Adds checksums for the notifications internal SDK module. |
| go.mod | Adds dependency on github.com/confluentinc/ccloud-sdk-go-v2-internal/notifications. |
| cmd/lint/main.go | Extends spellcheck vocabulary for new notifications-related terms. |
| .cli-generation-checksum | Updates generator checksum to reflect regenerated sources. |
Files not reviewed (25)
- internal/notifications/command.go: Generated file
- internal/notifications/command_integration.go: Generated file
- internal/notifications/command_integration_create.go: Generated file
- internal/notifications/command_integration_delete.go: Generated file
- internal/notifications/command_integration_describe.go: Generated file
- internal/notifications/command_integration_list.go: Generated file
- internal/notifications/command_integration_update.go: Generated file
- internal/notifications/command_notification_type.go: Generated file
- internal/notifications/command_notification_type_describe.go: Generated file
- internal/notifications/command_notification_type_list.go: Generated file
- internal/notifications/command_resource_preference.go: Generated file
- internal/notifications/command_resource_preference_create.go: Generated file
- internal/notifications/command_resource_preference_delete.go: Generated file
- internal/notifications/command_resource_preference_describe.go: Generated file
- internal/notifications/command_resource_preference_update.go: Generated file
- internal/notifications/command_resource_subscription.go: Generated file
- internal/notifications/command_resource_subscription_create.go: Generated file
- internal/notifications/command_resource_subscription_delete.go: Generated file
- internal/notifications/command_resource_subscription_describe.go: Generated file
- internal/notifications/command_resource_subscription_update.go: Generated file
- internal/notifications/command_subscription.go: Generated file
- internal/notifications/command_subscription_create.go: Generated file
- internal/notifications/command_subscription_delete.go: Generated file
- internal/notifications/command_subscription_describe.go: Generated file
- internal/notifications/command_subscription_list.go: Generated file
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Two files conflicted. test/fixtures/output/help.golden: main renamed `unified-stream-manager` to `usm`, which shortened cobra's longest command name and re-padded every line in the Available Commands block. Took main's block and regenerated the golden with `go test ./test -run TestCLI/TestHelp -update`, which re-added the notifications line at the new padding. .cli-generation-checksum: main carries the flink region suite's value, this branch carries notifications'. Kept this branch's. The file records the last-generated suite only and drives PR labeling, so neither value is a drift signal. go build ./... and go test ./test -run TestCLI/TestNotifications both pass on the merge result. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Picks up cli-terraform-generator's allow-list remedy fix. Eight stringSlice flags now carry the CLI's own comma-separated-list wording instead of the spec's HTTP-shape prose, the notifications parent command's Short registers "Cloud Notifications", and one capitalized common noun is fixed in the spec. Removes "Integrations" from properNouns: it was registered by an earlier merge to satisfy one flag's help text, and RequireCapitalizeProperNouns then mandated that capitalization across the whole CLI, failing three descriptions in `confluent provider-integration`. "recieve" goes with the spec typo it covered. `make lint-cli` passes. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
8d059d9 to
ccc3483Compare…-integration # Conflicts: # .cli-generation-checksum
ccloud-sdk-go-v2/notifications v0.1.0 is published, so the six commands and their test-server handlers import it instead of the -internal path. The Alpine docker build runs go build in a container with no GitHub credentials and the repo carries no vendor/, so a private module cannot resolve there. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
A list command's -o json output is a JSON array, not an object, so Unmarshal into a map failed and fell through to the table-fallback path, which grabbed the ASCII separator row as a fake id. Try an array first and pull the id from its first element; fall back to a plain object for describe-style output. Drop the table-parsing path entirely — every CaptureID call site pairs with -o json now. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
…r fixes
The last merge predated several generator-side fixes: the zeroCheck
replacement for optional StringSlice query params (a []string flag
never reads as a literal nil, so severity/resource-type/resource-crn/
sort filters were always sent even when unset), the switch from a
literal {id} placeholder to the spec's own example values in create/
update test args, and the List-before-Describe reordering plus -o
json request on every live-test List step used for ID capture.
Regenerated command/wrapper/test-server/fixture/golden files for
Integration, Subscription, ResourcePreference, ResourceSubscription,
NotificationType, and UserNotification.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>…nds to pick up objectref_write_placeholders
An array-valued ObjectReference field (integrations) built each element
as {Id: id} only, leaving the SDK's required related/resource_name
fields as empty strings on the wire. The real API rejects that with a
400. cli.objectref_write_placeholders already covered the scalar
notification_type case; this regeneration picks up the generator-side
fix that ported the same placeholder injection into the array-building
loops of create and update.
Regenerated Subscription and ResourceSubscription via cli-tfgen
--official-sdk to avoid a local SDK replace directive in go.mod.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>…-integration # Conflicts: # .cli-generation-checksum




Release Notes
New Features
confluent notificationscommands for managing notification integrations, subscriptions, resource preferences, resource subscriptions, notification types, and in-app user notifications.Checklist
Whatsection below whether this PR applies to Confluent Cloud, Confluent Platform, or both.Test & Reviewsection below.Blast Radiussection below.What
Onboards Confluent Cloud Notifications to the CLI. Adds six command groups under
confluent notifications:integration,subscription,resource-preference,resource-subscription,notification-type, anduser-notification.The code is generated by cli-terraform-generator from the notifications OpenAPI spec and Go SDK. The commands, the
pkg/ccloudv2wrapper, the test-server handlers, the integration tests, the live tests, and the goldens all come from the generator.One API-specific workaround is baked in. The
relatedandresource_namesub-fields of the sharedGlobalObjectReferenceare markedrequired,readOnly, andformat: uriin the spec, and the SDK serializes them unconditionally. A create that carried onlyidsent an empty string for both and Confluent Cloud rejected it with400 Bad Request. The generatedsubscriptionandresource-subscriptioncommands now fill both fields with a placeholder URI on create and update, matching the workaround the publishedconfluent_ksql_clusterTerraform resource already uses.Confluent Cloud only.
Blast Radius
New commands only. No existing command changes, and nothing outside
internal/notificationsshares this code. If a notifications command misbehaves, only customers runningconfluent notifications ...are affected.References
Test & Review
Built a custom binary and ran the notifications commands against a real Confluent Cloud org. Verified
create/describe/list/deleteforintegration, andcreate/describe/update/deleteforsubscriptionandresource-subscriptionwith a multi-elementintegrationsvalue, all without the prior400. Generated integration and live tests are included.CLI create against real Confluent Cloud (before/after the fix)
Before the fix,
related/resource_namewent out as a non-URI placeholder and Confluent Cloud rejected the create against the spec'sformat: urion/integrations/0/related:The shipped command fills both fields with a placeholder URI and the create succeeds:
🤖 Generated with Claude Code