Skip to main content

Source-Confirmed Mappings

This page records what is confirmed directly from source code today. It is intentionally narrower than team or business ownership.

Important boundary

These items are confirmed from code:

  • DB connection types and whether a service uses primary or replica DB connections
  • registered NestJS modules and route prefixes
  • RabbitMQ queues a service publishes to or consumes from
  • retry and dead-letter settings defined in queue config

These items still need team confirmation:

  • official business ownership of each DB schema or table
  • whether a service is the authoritative writer versus a reader or helper
  • operational trigger rules used by support teams
  • DLQ replay procedures, monitoring ownership, and manual recovery steps

Team-confirmed clarifications

The following were confirmed by the team after the source pass:

  • these services are part of the Antrix system of record
  • services do not write directly into another service's tables; cross-service interaction is done by calling the other service's endpoint
  • NGOSS, NOC Grid, NOCPro, TMF, and Vital are owned on the Antrix side, but are exposed as endpoints for external sources to call
  • most queue triggers are API-call driven
  • DLQ handling relies on automatic retry after a configured number of attempts
  • the minimum required backend for local work is authentication; additional services depend on the feature you are touching
  • external dependencies are generally reached through development or staging endpoints

DB usage matrix

ServiceConfirmed DB usage from codeNotes
mvp1-authentication-serviceone MariaDB primary connection via DB_*no replica config in code
mvp1-setting-serviceone MariaDB primary connection via DB_*no replica config in code
mvp2-data-servicethree MariaDB connections: intt-db, next-db, intt-source-db, all currently fed by DB_*code confirms multiple named connections, not distinct env groups
mvp3-gsb-serviceone MariaDB primary connection via DB_*no replica config in code
mvp3-ticket-serviceone MariaDB primary via DB_* and one replica via DB_REPLICA_*replica constant TICKET_DB_REPLICA
mvp3-ngoss-serviceone MariaDB primary via DB_*no replica config in code
mvp3-nocgrid-serviceone MariaDB primary via DB_* and one replica via DB_REPLICA_*replica constant NOCGRID_DB_REPLICA
mvp3-nocpro-serviceone MariaDB primary via DB_*no replica config in code
mvp3-tmf-serviceone MariaDB primary via DB_*no replica config in code
mvp6-vital-serviceone MariaDB primary via DB_*no replica config in code
queue servicesDB env exists in .env.sampleactual write or read responsibility needs deeper service-level review

Module-to-service mapping

Confirmed from route and module registration

DomainServiceConfirmed module or route evidence
NGOSSmvp3-ngoss-serviceNgossModule mounted under /ngoss
NOC Gridmvp3-nocgrid-serviceKciModule and NttModule mounted under /nocgrid/kci and /nocgrid/ntt
NOCPromvp3-nocpro-serviceNocproModule mounted under /nocpro
TMFmvp3-tmf-serviceTmfModule registered in routing module, controller exposed under TMF service
Vitalmvp6-vital-serviceVitalModule registered in routing module, Vital controllers in service

Interpretation note

Code confirms the technical host service for these modules. It does not fully prove whether product or operations teams consider the same service to be the sole business owner.

Queue publish and consume matrix

Consumers

Queue workerConsumes
mvp3-caution-report-queue-serviceintt_caution_report_queue
mvp3-changedp-queue-serviceintt_alu_queue, intt_zte_queue, intt_fiberhome_queue, intt_huawei_queue
mvp3-ctt-queue-serviceintt_ctt_queue
mvp3-gsb-queue-serviceintt_gsb_queue
mvp3-kci-queue-serviceintt_kci_queue
mvp6-tass-queue-serviceintt_tass_queue
mvp6-vital-queue-serviceintt_vital_queue

Producers confirmed from code

Producer serviceQueue targetTrigger pattern seen in code
mvp3-gsb-serviceintt_gsb_queue`send('gsb-create-dp'
mvp3-gsb-serviceintt_alu_queue, intt_zte_queue, intt_fiberhome_queue, intt_huawei_queuedevice-specific emit(queueName, ...) calls
mvp3-ticket-serviceintt_kci_queueemits create-kci, create-ctt-related-kci, update-unlinked-ctt, update-kci, closure-kci, troubleshoot-kci, trigger-mcmc-poll
mvp3-ticket-serviceintt_ctt_queueemits or sends tmf-update-ctt-list from ctt and ntt modules
mvp3-ngoss-serviceintt_kci_queueemits create-kci
mvp3-ngoss-serviceintt_ctt_queuesends tmf-update-ctt-list
mvp3-nocpro-serviceintt_kci_queueemits create-kci
mvp3-nocpro-serviceintt_ctt_queuesends tmf-update-ctt-list
mvp3-tmf-serviceintt_ctt_queuesends controller-driven TMF update patterns
mvp6-vital-serviceintt_vital_queueemits vital-send-ctt, vital-update-ctt-activity
mvp6-vital-queue-serviceintt_ctt_queuesends tmf-update-ctt-list
mvp6-tass-queue-serviceintt_ctt_queuesends tmf-update-ctt-list
mvp6-tass-queue-serviceintt_tass_tm_category_delay_queueemits taas-enrich-tm-category

Dead-letter and retry settings

Queue config hostQueueRetry configDead-letter or TTL config
mvp3-ctt-queue-service consumerintt_ctt_queuenot defined in bootstrap consumer configdead-letter to intt_ctt_dlq
mvp3-ticket-service producer modulesintt_ctt_queueretryAttempts: 3, retryDelay: 3000dead-letter to intt_ctt_dlq
mvp3-ngoss-service producerintt_ctt_queueretryAttempts: 3, retryDelay: 3000dead-letter to intt_ctt_dlq
mvp3-nocpro-service producerintt_ctt_queueretryAttempts: 3, retryDelay: 3000dead-letter to intt_ctt_dlq
mvp3-tmf-service producerintt_ctt_queueretryAttempts: 3, retryDelay: 3000dead-letter to intt_ctt_dlq
mvp6-vital-service producerintt_vital_queueretryAttempts: 3, retryDelay: 3000dead-letter to intt_vital_dlq
mvp6-vital-queue-service consumer side configintt_vital_queueconsumer bootstrap has no retryAttemptsdead-letter to intt_vital_dlq
mvp6-tass-queue-service consumer side configintt_tass_queueconsumer bootstrap has no retryAttemptsdead-letter to intt_tass_dlq
mvp6-tass-queue-service delay producerintt_tass_tm_category_delay_queueretryAttempts: 3, retryDelay: 3000TTL 120000, then dead-letter routes to intt_tass_queue

Still open

These points are still worth clarifying later:

  1. exact schema or table ownership per service
  2. standardized local PORT values for services that currently share default 3004
  3. exact per-queue trigger list, if the team wants queue docs to be business-complete rather than architecture-complete
  4. who monitors each DLQ operationally and what replay procedure is used