nestjs-typeorm-transactional

Installation
SKILL.md

NestJS TypeORM Transactional

Build transaction boundaries that propagate TypeORM's transactional EntityManager through asynchronous calls without passing it through every service and repository method.

Required workflow

  1. Inspect the target project's NestJS, TypeORM, RxJS, TypeScript, module, bootstrap, repository, test, and multi-data-source setup.
  2. Read architecture-and-audit.md to identify required components and known failure modes.
  3. Decide the transaction entry point:
    • Use interceptor mode only for controller handler or controller class boundaries.
    • Use TxRunner.run() for service-to-service calls, jobs, consumers, schedulers, CLI flows, and other non-controller entry points.
    • Do not claim that a metadata-only service method decorator is active through a Nest controller interceptor.
  4. Read implementation-example.md and adapt paths, module ownership, logging, isolation defaults, and data-source selection to the target project.
  5. Replace transaction-sensitive repository access with OrmHelper lookups performed at method call time.
  6. Keep the transaction scope around database work only. Move slow filesystem, network, subprocess, and streaming work outside it unless atomic coupling is explicitly required and supported.
  7. Read testing-example.md, add proportional tests, and verify commit, rollback, context cleanup, nesting, and non-transactional fallback.
  8. Report changed files, selected boundary mode, participating repositories, unsupported paths, tests run, and remaining risks.

Required invariants

Installs
9
First Seen
Jun 27, 2026
nestjs-typeorm-transactional — onfloukimson/devkimson-skills