Skip to content

feat(ticketing): add ticket forms CUD, clone, reorder#89

Merged
lmeilibr merged 1 commit into
mainfrom
feature/ticket-forms-cud
Apr 21, 2026
Merged

feat(ticketing): add ticket forms CUD, clone, reorder#89
lmeilibr merged 1 commit into
mainfrom
feature/ticket-forms-cud

Conversation

@lmeilibr
Copy link
Copy Markdown
Contributor

Summary

  • Introduce CreateTicketFormCmd / UpdateTicketFormCmd (frozen slots dataclasses)
  • Mapper emits every Zendesk ticket_form field (name, display_name, ticket_field_ids, end_user_visible, position, active, default, in_all_brands, restricted_brand_ids, end_user_conditions, agent_conditions) while preserving false booleans and skipping unset optionals
  • Extend TicketFormApiClient with create, update, delete, clone, reorder
  • Migrate TicketFormsService to **fields kwargs ergonomics and surface the new endpoints

Test plan

  • Unit: mapper, client (list/get/create/update/delete/clone/reorder/errors), service (delegation/create/update/errors), domain logical_key
  • `pytest tests/unit` — 1895 passed
  • Coverage — 160/160 stmts (100%) across cmds/mapper/client/service/domain
  • Integration (live tenant): `tests/integration/ticketing/test_ticket_form.py`

Refs #79.

🤖 Generated with Claude Code

Refs #79.

- Introduce CreateTicketFormCmd / UpdateTicketFormCmd
- Add mapper emitting every Zendesk ticket_form field (name, display_name,
  ticket_field_ids, end_user_visible, position, active, default,
  in_all_brands, restricted_brand_ids, end_user_conditions,
  agent_conditions) preserving false booleans and skipping unset optionals
- Extend client with create/update/delete plus clone and reorder
- Migrate service to **fields kwargs ergonomics; expose clone/reorder
- Unit + integration coverage at 100% across 160 stmts

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
agent_conditions: Iterable[dict[str, Any]] | None = None


TicketFormCmd: TypeAlias = CreateTicketFormCmd | UpdateTicketFormCmd
@sonarqubecloud
Copy link
Copy Markdown

@lmeilibr lmeilibr merged commit b5cda35 into main Apr 21, 2026
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant