with one click
nestjs-messenger
nestjs-messenger contains 5 collected skills from schallym, with repository-level occupation coverage and site-owned skill detail pages.
Skills in this repository
Use when adding a new transport (Redis Streams, RabbitMQ, SQL, Pub/Sub, SQS, etc.) or fixing a bug in an existing transport. Covers the TransportInterface contract, the conformance test suite, mandatory error mapping, ack/reject semantics, and graceful shutdown rules. Trigger whenever code is added under packages/transport-* or when TransportInterface changes.
Use when writing tests, reviewing coverage reports, or deciding whether a test is worth keeping. Covers the differentiated coverage thresholds, what to test, what NOT to test, how to reach the thresholds without meaningless assertions, when to use istanbul ignore, and how to read the report to find real gaps. Trigger when coverage drops below threshold or when a PR adds tests.
Use when writing end-to-end test scenarios that boot a real NestJS app and real brokers via docker-compose. Covers the shared docker-compose harness, logical isolation via per-test queue names, flakiness mitigation, and the canonical scenario shape. Trigger when adding files under e2e/scenarios or modifying e2e/docker-compose.yml.
Use when writing or modifying a middleware in packages/messenger/src/middleware, when designing the dispatch pipeline, or when the order of middlewares matters. Covers the onion model, the next() contract, stamp manipulation rules, transaction-aware middlewares, and the canonical pipeline order. Trigger on any change to middleware classes or to the MessageBus.
Use when about to extract a helper, factor out a base class, write a generic abstraction, or when the code-quality-reviewer flags duplication or complexity. Covers when to factor vs when to leave alone, the SPOT principle, rule of three, complexity budgets, and the "wrong abstraction" anti-pattern. Trigger whenever you catch yourself writing "let me make this reusable" or "let me simplify this."