Skip to main content

Queue Services

Purpose

These repositories appear to implement background or message-driven processing for domain workflows. They should be documented as part of the platform architecture, even if not every developer needs to run them every day.

Shared runtime facts

  • config file pattern: .env.sample
  • transport: RabbitMQ
  • broker port: 5672
  • main local command: pnpm run start:dev

Common env groups

  • PORT
  • DB_*
  • RABBITMQ_*
  • vendor credentials such as telnet, SSH, ZTE, APIM, and reset URLs depending on the worker

Current queue repositories

RepositoryQueue or queuesConfirmed caller from codeNotes
mvp3-caution-report-queue-serviceintt_caution_report_queuenot yet traced to a producer in current passbackground CR processing
mvp3-changedp-queue-serviceintt_alu_queue, intt_zte_queue, intt_fiberhome_queue, intt_huawei_queuemvp3-gsb-servicevendor-specific changedp work
mvp3-ctt-queue-serviceintt_ctt_queuemvp3-ticket-service, mvp3-ngoss-service, mvp3-nocpro-service, mvp3-tmf-service, mvp6-tass-queue-service, mvp6-vital-queue-servicedead-letter key intt_ctt_dlq configured
mvp3-gsb-queue-serviceintt_gsb_queuemvp3-gsb-servicegeneral GSB async work
mvp3-kci-queue-serviceintt_kci_queuemvp3-ticket-service, mvp3-ngoss-service, mvp3-nocpro-serviceunlike most workers, also opens an HTTP port
mvp6-tass-queue-serviceintt_tass_queuedelay queue eventually routes into itdead-letter key intt_tass_dlq configured
mvp6-vital-queue-serviceintt_vital_queuemvp6-vital-servicedead-letter key intt_vital_dlq configured

Important note about repo quality

Several queue repositories have copy-pasted README or package.json metadata. For now:

  • trust folder names first
  • treat README descriptions as hints, not truth
  • confirm actual queue bindings, consumers, and publishers from source code before writing deep flow docs

Trigger rules confirmed from code

Trigger sourceQueue action confirmed from code
GSB service device operationspublishes to device-specific queues for ALU, ZTE, Fiberhome, or Huawei
GSB service general async actionssends RPC-style patterns like gsb-create-dp, gsb-delete-dp, gsb-sync-speed, gsb-untag-vlan-400 to intt_gsb_queue
Ticket service KCI flowsemits KCI events such as create-kci, update-kci, closure-kci, and troubleshoot-kci
Ticket service CTT or NTT updatesemits or sends tmf-update-ctt-list to intt_ctt_queue
NGOSS or NOCPro updatesemits create-kci and sends tmf-update-ctt-list
Vital serviceemits vital-send-ctt and vital-update-ctt-activity to intt_vital_queue
TASS queue serviceemits taas-enrich-tm-category to intt_tass_tm_category_delay_queue

Team clarification

  • most queue triggers come from API calls
  • external dependencies are generally reached through development or staging endpoints
  • DLQ handling relies on automatic retry after the configured number of attempts

Dead-letter and delay behavior confirmed from code

QueueBehavior confirmed from code
intt_ctt_queuedead-letters to intt_ctt_dlq
intt_vital_queuedead-letters to intt_vital_dlq
intt_tass_queuedead-letters to intt_tass_dlq
intt_tass_tm_category_delay_queuewaits 120000 ms then dead-letters into intt_tass_queue

Still needs team confirmation

  • which user-facing actions are the intended trigger for every queue in production
  • who owns replay from each DLQ
  • whether caution-report queue has an additional producer outside the repos reviewed here

When developers need these locally

Run queue services when you are working on:

  • async workflow completion
  • event-driven integration bugs
  • delayed status updates
  • background processing and retry logic
  • external system handoff flows

Local testing

  • run worker: pnpm run start:dev
  • confirm RabbitMQ connection is healthy
  • publish or trigger one domain action from its owning API
  • watch logs for consumer receipt, processing, and retry behavior