collabSupport/services
jmcqueen d12723d010 Voicediag: store voice standards + port-hygiene checks + apply-all card
Refactor every /voicediag check to declare a top-level `standards`
object so the desired state is legible without reading run() logic
and can drive a documented reference table. Upgrade callForwarding
to error severity, tighten voicemail with three send-to-VM error
paths + a `stop_sending_to_voicemail` remediation, and add a
`disable_hoteling` remediation.

Add a port-hygiene check bucket under services/voiceDiag/checks/port
(portType, portVlan, portPoe, portEnabled) that reuses the phone-
status snapshot to enforce switchport standards. Configurable via
VOICE_STANDARD_PHONE_VLAN (default 102) and VOICE_STANDARD_ENABLED
(kill-switch). Preserve Meraki `portType`/`voiceVlan`/`dataVlan`
through the enrichment chain so the checks have clean data to read.

Add an "apply all N fixes" combined card that shows up when 2+
remediations are available. New confirm_voicediag_all /
cancel_voicediag_all actions run each fix in sequence (readable
audit trail, no per-person write-throttle stacking), accumulate
individual failures into a summary rather than aborting.

Adds regression tests asserting every check exposes .standards,
plus coverage for port checks, kill-switch, and combined-card
iteration. 63 tests in the checks file, 188 total, all green.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-08 14:14:38 -04:00
..
enrichment Voicediag: store voice standards + port-hygiene checks + apply-all card 2026-07-08 14:14:38 -04:00
renderers Add /voicediag rules-engine command with 9 per-user calling checks 2026-07-07 18:51:31 -04:00
voiceDiag Voicediag: store voice standards + port-hygiene checks + apply-all card 2026-07-08 14:14:38 -04:00
avDeviceBuilder.js Initial commit: CollabFinder Webex bot 2026-07-01 16:55:03 -04:00
avDeviceService.js Initial commit: CollabFinder Webex bot 2026-07-01 16:55:03 -04:00
avEnricher.js Initial commit: CollabFinder Webex bot 2026-07-01 16:55:03 -04:00
avModalService.js Initial commit: CollabFinder Webex bot 2026-07-01 16:55:03 -04:00
dectCollectorService.js DECT relay Phase 1: WSS hub + agent + /phonestatus follow-up 2026-07-02 17:03:32 -04:00
dectDiscovery.js DECT relay Phase 1: WSS hub + agent + /phonestatus follow-up 2026-07-02 17:03:32 -04:00
dectRelayHub.js DECT relay Phase 1: WSS hub + agent + /phonestatus follow-up 2026-07-02 17:03:32 -04:00
deviceService.js Initial commit: CollabFinder Webex bot 2026-07-01 16:55:03 -04:00
jiraPollerService.js Tag skipped Jira tickets with bot-skipped label 2026-07-01 17:14:17 -04:00
jiraService.js Initial commit: CollabFinder Webex bot 2026-07-01 16:55:03 -04:00
jiraSummarizer.js Initial commit: CollabFinder Webex bot 2026-07-01 16:55:03 -04:00
phoneDeviceBuilder.js Initial commit: CollabFinder Webex bot 2026-07-01 16:55:03 -04:00
phoneService.js Add /voicediag rules-engine command with 9 per-user calling checks 2026-07-07 18:51:31 -04:00
ticketClassifier.js Initial commit: CollabFinder Webex bot 2026-07-01 16:55:03 -04:00
vcMonitorService.js Initial commit: CollabFinder Webex bot 2026-07-01 16:55:03 -04:00
vcProvisionService.js Initial commit: CollabFinder Webex bot 2026-07-01 16:55:03 -04:00
webhookService.js Initial commit: CollabFinder Webex bot 2026-07-01 16:55:03 -04:00
woService.js Initial commit: CollabFinder Webex bot 2026-07-01 16:55:03 -04:00