feat(zoho-desk): add zoho-desk#1413
Conversation
|
@greptileai review Auto-nudge from |
Greptile SummaryThis PR adds the
Confidence Score: 4/5The core read-only analytics commands are blocked from zero-argument invocation by a retained help guard; everything else is well-structured and the previous iteration's issues were resolved. Four analytics commands — agent-load, triage, sla-radar, and breach-history — silently show their help page when invoked with no explicit flags, even though all their flags have sensible defaults and none accept positional arguments. The identical guard was already identified and removed from morning.go in this same PR, so the fix pattern is clear, but it was not applied consistently. All other previously-flagged issues (isClosedStatus, rebalance --plan, breach-rate denominator) are resolved in the current code. library/sales-and-crm/zoho-desk/internal/cli/agent_load.go, triage.go, sla_radar.go, and breach_history.go — each contains the help guard that needs to be removed. Important Files Changed
|
| totalBreaches := 0 | ||
| for _, t := range tickets { | ||
| key := str(t, keyField) | ||
| totals[key]++ |
There was a problem hiding this comment.
Breach rate denominator includes tickets without SLA
totals[key]++ runs unconditionally for every ticket, including tickets with no dueDate. Tickets without a dueDate are not SLA-governed and can never breach, so they should not count toward the denominator. With many non-SLA tickets in the store the reported breachRate will be significantly lower than the true SLA breach rate. The increment should be guarded by if str(t, "dueDate") != "" so only SLA-governed tickets appear in both numerator and denominator.
- isClosedStatus: match Resolved + custom terminal statuses, not only Closed - morning: run the zero-arg dashboard instead of printing help - breach-history: exclude non-past-due tickets from the breach denominator - rebalance: honor explicit --plan (forces dry-run even with --apply)
|
@greptileai review Auto-nudge from |
|
All four review findings are fixed in commit 7b1371e:
Updated the |
zoho-desk
The only scriptable, agent-native CLI for Zoho Desk: every ticket operation plus a local SQLite store, offline search, and SLA/triage analytics no help-desk tool ships.
API: zoho-desk | Category: sales-and-crm | Press version: 4.27.0
Spec: internal YAML (no official OpenAPI for Zoho Desk; hand-authored from desk.zoho.com/DeskAPIDocument)
Publication Path
New print
CLI Shape
Novel Commands
sla-radaragent-loadtriagesincecontact-360morningrebalancebreach-historyWhat This CLI Does
The only scriptable, agent-native CLI for Zoho Desk: every ticket operation plus a local SQLite store, offline search, and SLA/triage analytics no help-desk tool ships.
Manage tickets, contacts, accounts, and agents from the command line with automatic OAuth token refresh, multi-data-center handling, and auto-pagination with 429 backoff. Then go beyond the API: sla-radar forecasts breaches before they happen, agent-load finds the real bottleneck, triage builds one ranked queue, and morning composes your whole shift brief.
Manuscripts
Validation Results
Scorecard 95/100 (Grade A), verify 100% (34/34), shipcheck 7/7.
Publish Live Gate
Live dogfood (read-only OAuth scopes) passed against the real upstream API: 13/13 read-path tests passed, 11 write commands skipped (read-only token, no fixtures). doctor green, OAuth2 refresh verified, agents/departments/tickets listed live, sync + agent-load/triage/morning produced correct output over real synced data. Proof:
proofs/phase5-acceptance.json.Gaps