@lenne.tech/nest-server 12.3.0 → 12.3.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (41) hide show
  1. package/.claude/rules/configurable-features.md +2 -1
  2. package/.claude/rules/package-management.md +5 -1
  3. package/.claude/rules/testing.md +3 -3
  4. package/FRAMEWORK-API.md +2 -2
  5. package/dist/core/common/interceptors/check-security.interceptor.js +19 -2
  6. package/dist/core/common/interceptors/check-security.interceptor.js.map +1 -1
  7. package/dist/core/common/interfaces/server-options.interface.d.ts +1 -0
  8. package/dist/core/common/services/email.service.d.ts +3 -0
  9. package/dist/core/common/services/email.service.js +20 -0
  10. package/dist/core/common/services/email.service.js.map +1 -1
  11. package/dist/core/modules/ai/core-ai.constants.d.ts +1 -0
  12. package/dist/core/modules/ai/core-ai.constants.js +1 -0
  13. package/dist/core/modules/ai/core-ai.constants.js.map +1 -1
  14. package/dist/core/modules/ai/core-ai.controller.d.ts +3 -0
  15. package/dist/core/modules/ai/core-ai.controller.js +18 -1
  16. package/dist/core/modules/ai/core-ai.controller.js.map +1 -1
  17. package/dist/core/modules/ai/core-ai.module.js +2 -1
  18. package/dist/core/modules/ai/core-ai.module.js.map +1 -1
  19. package/dist/core/modules/ai/index.d.ts +1 -0
  20. package/dist/core/modules/ai/index.js +1 -0
  21. package/dist/core/modules/ai/index.js.map +1 -1
  22. package/dist/core/modules/ai/models/core-ai-status.model.d.ts +3 -0
  23. package/dist/core/modules/ai/models/core-ai-status.model.js +25 -0
  24. package/dist/core/modules/ai/models/core-ai-status.model.js.map +1 -0
  25. package/dist/core/modules/better-auth/better-auth.config.js +7 -3
  26. package/dist/core/modules/better-auth/better-auth.config.js.map +1 -1
  27. package/docs/REQUEST-LIFECYCLE.md +3 -3
  28. package/migration-guides/12.3.0-to-12.3.1.md +136 -0
  29. package/migration-guides/12.3.1-to-12.3.2.md +52 -0
  30. package/package.json +7 -7
  31. package/src/core/common/interceptors/check-security.interceptor.ts +26 -2
  32. package/src/core/common/interfaces/server-options.interface.ts +15 -0
  33. package/src/core/common/services/email.service.ts +33 -1
  34. package/src/core/modules/ai/README.md +15 -0
  35. package/src/core/modules/ai/core-ai.constants.ts +4 -0
  36. package/src/core/modules/ai/core-ai.controller.ts +20 -1
  37. package/src/core/modules/ai/core-ai.module.ts +2 -0
  38. package/src/core/modules/ai/index.ts +1 -0
  39. package/src/core/modules/ai/models/core-ai-status.model.ts +16 -0
  40. package/src/core/modules/better-auth/INTEGRATION-CHECKLIST.md +5 -2
  41. package/src/core/modules/better-auth/better-auth.config.ts +9 -4
@@ -300,6 +300,7 @@ This pattern is currently applied to:
300
300
  | Password-Reset Token Lifetime | `auth.passwordReset.tokenExpiresInMinutes` | **Numeric Sentinel — Family C** (see above) | **60 minutes since 11.38.0. Before that the legacy reset token NEVER expired** — `resetPassword()` looked it up by value and compared no time, while the exception it threw read "Invalid or expired password reset token", claiming a check that did not exist. A reset link takes over an EXISTING account, so an unbounded one means a mail in an archive or a restored backup opens that account years later. The IAM half already expired after an hour (Better-Auth's `resetPasswordTokenExpiresIn`); only the legacy half had nothing. `0` opts out; an invalid value falls back to 60, never to unbounded. **A token minted before 11.38.0 carries no timestamp and is treated as EXPIRED** — reading "no timestamp" as "valid forever" would preserve the defect permanently rather than for a migration window. An expired token is answered exactly like an unknown one (404, same message) and deleted on sight. Model field `passwordResetTokenExpiresAt`, `@Restricted(S_NO_ONE)`. Implementation: `core-user.service.ts` → `passwordResetTokenExpiryMinutes()` / `isPasswordResetTokenExpired()` |
301
301
  | Legacy Password-Reset Link | `email.passwordResetLink` | Explicit Value with derived default | **`<appUrl>/auth/reset-password?token={token}` since 11.38.0.** Two conventions live here and which applies depends on whether the option is set AT ALL: unset yields `?token=`, the same string written out yields a PATH segment. That is deliberate — a project that configures such a value has a page built for a path parameter, and moving it silently would break the flow this release repairs — and because it is not guessable, `CoreUserService` **warns once at boot** when a configured value carries no `{token}`. The warning names a precondition: `{token}` is substituted by `buildPasswordResetLink()` and nothing else, so a caller still concatenating by hand must switch FIRST or it mails the placeholder verbatim. Returns `null` rather than a string containing `undefined`; resolves `appUrl` through `resolveServerUrls` (localhost defaults, host-split `baseUrl`) and honours `cors.deriveAppUrl` |
302
302
  | SMTP TLS Mode | `email.smtp.secure` + `SMTP_REQUIRE_TLS` | Derived from the port | **`secure` follows `SMTP_PORT` unless set to `'true'`/`'false'`.** It is not an independent setting: 465 negotiates TLS immediately, everything else upgrades via STARTTLS. The production profile shipped 587 + `secure: true` — a pair that cannot connect — so a deployment configuring only host and credentials sent NO mail, invisibly, because authentication mail is not awaited. Only the two canonical values override; anything else defers to the port, which is the only rule under which no input produces an unconnectable pair. `requireTLS` defaults to **true**: `secure: false` alone means opportunistic STARTTLS, and an on-path attacker stripping the capability line gets credentials and a live reset link in plaintext. `EmailService` warns once when the resolved pair cannot connect — reported, not overruled. Implementation: `config.helper.ts` → `resolveSmtpSecure()` / `isImpossibleSmtpTlsCombination()` |
303
+ | Mail Reply-To | `email.defaultReplyTo` | Explicit Value — absent = no header | **Absent → no `Reply-To` header, exactly as before (12.3.2+).** A string (an address, or `"Name" <address>`) becomes the Reply-To of every mail `EmailService.sendMail()` sends; a call overrides it with `replyTo`, and `replyTo: false` (or `''`) sends that one mail without it. Env: `NSC__EMAIL__DEFAULT_REPLY_TO`. A value that is not a string is ignored with one warning — a misconfigured default must not stop password-reset or verification mail. SMTP path only (`email.smtp`, nodemailer, Hub capture unaffected): Brevo and Mailjet templates carry their own reply-to. Pinned by `tests/unit/email-smtp-roundtrip.spec.ts` (Reply-To block, real SMTP). Implementation: `common/services/email.service.ts` → `resolveReplyTo()` |
303
304
  | Legacy Auth Rate Limiting | `auth.rateLimit` | Presence Implies Enabled | `max: 10`, `windowSeconds: 60`. Counters live in a `RateLimitStore`: `RedisRateLimitStore` when `redis` is configured (limit enforced EXACTLY across replicas instead of `max × replicas`), else `InMemoryRateLimitStore` (previous behavior). On a Redis outage it degrades to the in-memory counter and logs once per transition — never a 500, never "allowed". `check()` / `reset()` / `clear()` are ASYNC since 11.33.0; `getStats().activeEntries` is `-1` on the Redis store |
304
305
  | BetterAuth Rate Limiting | `betterAuth.rateLimit` | Presence Implies Enabled | `max: 10`, `windowSeconds: 60`. Same `RateLimitStore` selection, degradation and async signatures as the Legacy Auth row (namespace `better-auth`) |
305
306
  | BetterAuth JWT Plugin | `betterAuth.jwt` | Boolean Shorthand | `expiresIn: '15m'` |
@@ -321,7 +322,7 @@ This pattern is currently applied to:
321
322
  | Response Model Interceptor | `security.responseModelInterceptor` | Boolean Shorthand | `true` (enabled), `debug: false` |
322
323
  | Translate Response Interceptor | `security.translateResponseInterceptor` | Boolean Shorthand | `true` (enabled) |
323
324
  | Mongoose CastError Filter | `security.mongooseCastErrorFilter` | Explicit Boolean — **safe default** | **`true` since 11.42.16.** `MongooseCastErrorFilter`, registered by `CoreModule` as `APP_FILTER` (so `main.ts` and `Test.createTestingModule()` setups need nothing). A malformed id reached Mongoose and its `CastError` — not an `HttpException` — escaped every `@Catch(HttpException)` filter, so `GET /users/<malformed-id>` and every other `:id` route answered **500**. The filter decides by WHERE the failing value came from: a route parameter or a top-level GraphQL argument → **404** `ErrorCode.RESOURCE_NOT_FOUND` (answered like an unknown id); the query string, an update or filter body, or a nested GraphQL input → **400** `ErrorCode.INVALID_FIELD_FORMAT [<path>]`; a value the request does not contain (a broken stored id, a server-computed value) → **stays a 500**, with Nest's own body and log line (context `ExceptionsHandler`), because that is a data or code defect monitoring must keep seeing — relabelling it as a client error is the mistake the refusal tests pin (mutations `cast-error-server-value-relabelled-*`). Only primitives and arrays of primitives (`$in`) are matched: an object cast as a whole yields no candidates, so its inner strings cannot match the body by coincidence. Never sends the Mongoose message (it names the model). REST bodies use the `HttpExceptionLogFilter` shape (`{ ...exception }`). A project's own catch-all filter via `app.useGlobalFilters()` is consulted first and wins. Covers casts Mongoose raises while running a QUERY or an UPDATE (`findById`, filters, `findByIdAndUpdate` — `CrudService.update()`). NOT covered, both stay a 500: a malformed id in a document being CREATED (`save()` / `create()` / `insertMany()` — `CrudService.create()`), which Mongoose reports as a `ValidationError` wrapping the CastError (validate in the input: `validator: () => [IsMongoId()]`); and a `BSONError` from `new Types.ObjectId(bad)`, which carries no value (check the id in the service, `CoreFileService.isMalformedFileId()`). `false` restores the 500. Implementation: `common/filters/mongoose-cast-error.filter.ts` |
324
- | Secret Fields Removal | `security.secretFields` | Array | `['password', 'verificationToken', ...]` |
325
+ | Secret Fields Removal | `security.secretFields` | Array | `['password', 'verificationToken', ...]`. A project list is a UNION with the defaults (it can add, never remove). `CheckSecurityInterceptor` strips each field under its SQL column name too since 12.3.1 (`passwordResetToken` and `password_reset_token`): a row read through `store.native()` / `store.raw()` carries snake_case columns, and a route returning it unchanged used to hand every secret but `password` to the client. Pinned by `tests/unit/check-security-secret-columns.spec.ts` (mutation `secret-columns-not-stripped`) |
325
326
  | Data Sources | `database` | Explicit Value — absent = today's `mongoose` config | **Absent → the `mongoose` configuration is the only data source, exactly as before; nothing SQL is loaded or installed.** A URL string (`'postgres://…'`) sets the default source (driver from the scheme, `sqlEngine` defaults to `typeorm`; `kysely` and `drizzle` are the alternatives — optional peers, each with `pg`); an object adds `ownerUrl` (default source), `sources` (name → URL or `{ url, ownerUrl, sqlEngine }`) and per-model exceptions (`models`); `false` means no database. Precedence for a model: `database.models` > the `dataSource` of a `CorePersistenceModule.forFeature()` definition > `@PersistedModel({ dataSource })` (read from the definition's `model:` class, otherwise from the decorated class named like the model; two such classes naming different sources refuse to guess) > default. When `database` sets a default and the project ALSO configures `mongoose` explicitly, that MongoDB becomes the source `mongoose` — only the project's own `mongoose` counts, because `CoreModule.forRoot()` always merges a fallback URI. **Since phase 1 (DEV-3829) PostgreSQL sources are wired**: only models registered with `CorePersistenceModule.forFeature()` are routed — **since phase 2 (DEV-3830) that includes the core's own models**: the user model (the reference `UserModule`), tenant memberships and API tokens, whose services switch to the routed store (a service that only received `@InjectModel()` follows its model's store; the Mongoose model of a model routed to SQL refuses every data access with a named error, so a direct `mainDbModel` call cannot split a model's data). **Since phase 3 (DEV-3831) Better-Auth follows the user model**: with the user model (table `users`) on a SQL source, Better-Auth runs its built-in Kysely adapter on that source's application pool — ONE `users` row per user shared with the user model (Better-Auth's own columns `name`, `email_verified`, `image` beside the framework's; its required ones are added nullable, so a row the user model writes alone stays valid), snake_case tables (`session`, `account`, `verification`, `jwks`, `two_factor`, `passkey`), ObjectId-hex ids. Its schema is applied as the OWNER at boot, under the same schema lock and grants as the framework's tables; without `ownerUrl` the application role only verifies and the boot stops while Better-Auth's migrations are pending. The framework's own reads and writes of Better-Auth's data follow it (session lookup by token, token service, JWKS, passkey challenge mappings — as Better-Auth verification values —, the e-mail-verified hook, user mapper, system setup, migration status — counted in SQL —, the MCP OAuth subject's roles); the MongoDB boot steps (indices, account-issuer backfill) are skipped there. Nothing is copied from MongoDB: a project that moves its users brings them over itself. **Since phase 4 (DEV-3832) the remaining core persistence follows too**: the AI module's eleven models and the three MCP OAuth stores (clients, codes, refresh tokens) are registered through `CorePersistenceModule.forFeature()` and run on their routed store (one code path; an upsert is update-then-insert with a retry on a duplicate, `sum()` replaces the budget aggregation, `find(…, { exclude })` the `-field` projection); the S3 and filesystem file metadata are two framework models (`CoreS3File`, `CoreFilesystemFile`, tables `s3_files` / `filesystem_files`) read and written through `fileMetadataCollection()` by the file service, the TUS hand-off and the Hub — GridFS stays MongoDB-only. A collection name with a hyphen becomes a table with an underscore. A TTL (`expires`, `index: { expireAfterSeconds }`) is a plain index on SQL; an **expiry sweep** (`scheduleExpirySweep()`, every 15 min, one replica per interval through a lease in the default SQL source's `lt_locks`, fail-open) deletes the expired rows of every routed TTL model, and — with Better-Auth on SQL — expired sessions and verification values. Nothing relies on it for correctness: every reader checks the expiry (an MCP authorization code older than ten minutes is refused on read on both databases). MongoDB keeps its TTL indexes and gets no sweep. The framework's leases (system-setup claim, cron, migrations) live in the default source: on MongoDB in the 12.0.0 documents (a rolling deploy with older replicas shares them), on SQL in `lt_locks`, namespaced, swept an hour after expiry. With `healthCheck.configs.database` every SQL source answers as `<key>:<source>`; `createMigrationStore(<owner URL>)` keeps the migration state in `lt_migrations` with an advisory run lock, on the first SQL engine installed (the CLI cannot read `database.sqlEngine`), and the Hub refuses to run migrations while that table is empty and the MongoDB collection is not (a `migrate.js` still writing MongoDB); the Hub's Persistence panel shows the routing. a SQL model's table is migrated as the OWNER (`ownerUrl`) when its store is created — without `ownerUrl` the application role only verifies and the boot stops while changes are pending; ONE owner connection per source, released once the application is bootstrapped — and the boot refuses an application role that is superuser, has `BYPASSRLS`, owns (or inherits the owner of) a framework table or may `TRUNCATE` it. Two roles in every environment (plan §3.9). Changes the framework never applies on its own (type change, new unique index, rename collision) stop the boot with the suggested statements; `migrate create <name> --sql` + `runSqlMigration()` apply them after review. **Since phase 5 (DEV-3833, 12.1.0) MongoDB is optional**: `mongoose`, `@nestjs/mongoose` and `mongodb` are optional peers, loaded through `common/persistence/mongo/mongo-packages.ts`; `CoreModule` connects MongoDB only when a source uses it (`usesMongoDb()` — `mongoose` configured explicitly, `database` naming MongoDB, or `database` absent), otherwise `@InjectConnection()` receives `null` and a model token without a connection is a stand-in that refuses data access. A configured MongoDB feature without the packages fails the boot with `MongoPackagesMissingError`. `database: false` runs a service without any database: a registered model's store refuses with the reason, Better-Auth is refused at boot. Proven by `pnpm run check:without-mongodb` (dist, packages hidden) and `check:without-mongodb:package` (the tarball installed without them, publish path). **Since phase 6 (DEV-3848) MySQL 8.4 and MariaDB 11.8 sources are wired** (`mysql://`, `mariadb://` — the scheme must name the server the URL reaches): `mysql2` is an optional peer beside the engine, all three engines run on one pool the framework creates (strict session with backslash escapes, UTC), `MysqlDataStore` writes the statements, the owner grants the application account `SELECT, INSERT, UPDATE, DELETE` on the database once and the boot refuses an application account that may alter, drop, index, trigger or grant; leases, migration state (`createMigrationStore()` / `runSqlMigration()` under `GET_LOCK`), the expiry sweep, health check and Hub work there. **Neither database has row-level security**: tenant isolation is the store's, the boot warns once per source, and native / raw access on a tenant table must filter by tenant itself. **Since 12.1.1 (DEV-3904) Better-Auth runs there too**: its Kysely adapter on the source's `mysql2` pool (the promise wrapper — Better-Auth builds `MysqlDialect` from it), its migrations as the owner under `GET_LOCK`, with the database's default collation switched to `utf8mb4_bin` while it creates a table and restored (`withFrameworkDefaultCollation()`; only on such a run and with a 5 s lock wait, because `ALTER DATABASE` locks every table) — Better-Auth names no collation, and MariaDB refuses a foreign key to `users.id` across collations; the database-level grant covers its tables. 12.1.0 refused it at boot. An indexed text field is `varchar(255)` (longer: 400); a DDL run is not transactional. Still refused with a named `DataSourceConfigError`: a second MongoDB source, and an `ownerUrl` without `url` — what `NSC__DATABASE__OWNER_URL` leaves of a `database` given as a URL string, because the environment merge replaces the string with an object (write `database: { url }`, or set `NSC__DATABASE__URL` too). An update path the model does not declare is dropped on SQL as by MongoDB's strict mode (`CrudService.update()` adds `updatedBy` to every update with a current user). URLs appear in errors and logs as scheme + host only. Implementation: `common/persistence/data-source.config.ts`, `data-source.runtime.ts`, `sql/` (db-agnostic plan §3.9) |
326
327
  | Multi-Tenancy | `multiTenancy` | Presence Implies Enabled | **`excludeSchemas` is an OFF SWITCH for isolation, per model** — a listed schema gets no tenant filter at all; since 11.35.0 the plugin WARNS once per model when the excluded schema declares `tenantId` (i.e. was built for isolation). The framework's own docs recommended `['User', 'Session']` until then; that is withdrawn — it is only right for the global-user model. Since 11.35.0 GraphQL operations over the WEBSOCKET also run inside a `RequestContext` (`CoreModule` installs a context-aware `execute`/`subscribe` pair inside `subscriptions`, where `ApolloDriver` forwards it): the tenant comes from the handshake header validated against an active membership, else from the subscriber's memberships, and an unresolvable tenant leaves the safety net to refuse the read rather than returning everything. `headerName: 'x-tenant-id'`, `membershipModel: 'TenantMember'`, `adminBypass: true`, `excludeSchemas: []`, `roleHierarchy: { member: 1, manager: 2, owner: 3 }`, `cacheTtlMs: 30000` (0 disables, process-local). System roles (`S_EVERYONE`, `S_USER`, `S_VERIFIED`) are checked as OR alternatives before real roles; method-level system roles take precedence; membership validated for context when system role grants access + header present. Hierarchy roles use level comparison, normal roles use exact match. Use `DefaultHR` or `createHierarchyRoles()` for type-safe role constants. Bypass: `RequestContext.runWithBypassTenantGuard()`. Cache invalidation: `invalidateUser(userId)` / `invalidateAll()` are **instance** methods on the singleton `CoreTenantGuard` — inject it and call `this.tenantGuard?.invalidateUser(userId)`, never `CoreTenantGuard.invalidateUser(...)` (there is no static). With `redis` configured, both additionally BROADCAST the invalidation to every replica (`<keyPrefix>:tenant-cache:invalidate` pub/sub); without Redis they clear the local process only, so other replicas stay stale until `cacheTtlMs`. A received broadcast clears locally without re-publishing. **`isTenantActive` (11.42.0)**: optional hook `(tenantId, { connection, store }) => boolean \| Promise<boolean>`, absent = every tenant active (no change). `store(modelName)` (12.x, db-agnostic) is the data store of a model registered with `CorePersistenceModule.forFeature()`, wherever `database` routes it, and THROWS for any other model — an `undefined` would read as "active" in a hook written with `?.` and open every deactivated tenant. Asked AFTER the membership check on every path that establishes a tenant: 403 on header paths and for tenant API tokens, no enrichment on `S_EVERYONE`, dropped from the header-less tenant list, no tenant for a NEW WebSocket subscription, and since 11.42.3 an OPEN one is closed with 4403 on `invalidateTenant()` (or at its next event once `graphQl.subscriptionRevalidationMs` has passed — see the GraphQL Subscription Re-check row); an admin under `adminBypass` is exempt (someone must be able to switch it back on). Only `false` deactivates. Cached for `cacheTtlMs`; `invalidateTenant(tenantId)` clears and broadcasts (`{ scope: 'tenant' }`) — since 12.3.0 together with the tenant's cached memberships and every cached tenant list holding it, so memberships removed without `invalidateUser()` (a deleted tenant) stop counting at once rather than after `cacheTtlMs` (a tenant switched off through `isTenantActive` was already refused at once, its answer being cleared). **Removing a tenant (12.3.0)**: `CoreTenantService.purgeTenantData(tenantId, { dryRun?, exclude? })` first ends every way in — the memberships (`deleteAllMembers()`) and the tenant's API tokens, which need no member — then deletes, in batches of 1000 ids, every registered model with a `tenantId` path (MongoDB and SQL), the core references without one (the AI settings with `scope: 'tenant'`) and the AI connections — one only this tenant could use is deleted, from a shared one the tenant is removed (an empty `tenantIds` means every tenant). `excludeSchemas` and `exclude` are left out, so are users and files; the protected `purgeTenantRecords()` is where a project adds its own references. A function, so `config.env.ts` only — not reachable through `NSC__*`. **`adminBypass: false` (11.42.0)** additionally withholds two things that went around it: `CoreUserService.update()` refuses changing another account's e-mail or password (`assertCredentialChangeAllowed()`, administrator targets included — promote-then-change — system work without a current user exempt), and the AI tool registry grants no ADMIN bypass |
327
328
  | GraphQL Subscription Re-check | `graphQl.subscriptionRevalidationMs` | Numeric — `0` = STRICTEST, `false` = off, invalid → default (a fifth shape: Family C's "invalid never means unbounded", but `0` asks for MORE checking, not less) | **30000 since 11.42.3.** Before, a WebSocket was authorized once, at the handshake, and every event and operation on it ran on that snapshot until the client reconnected. Every connection a `CoreModule` `onConnect` accepts is now registered (`registerWsConnection()`) and re-checked — at once when an invalidation names it (`CoreTenantGuard.invalidateUser()` / `invalidateTenant()` / `invalidateAll()`, `CoreUserService.setRoles()` and role/verification `update()`s, the legacy password reset, and Better-Auth deleting a session through `wsSessionRevocationPlugin()`), and otherwise before the next event or operation once the last check is older than this value. The check re-runs the handshake's own authentication (session store, Better-Auth JWT signature/expiry, or for legacy tokens `CoreAuthService.verifyJwt()` — signature/expiry, verified on the WebSocket since 11.42.3 — plus the device binding) and the tenant resolution; any difference in user id, roles, verification state or tenant scope closes the socket with **4403**, which the graphql-ws client retries — the user continues with current rights or is refused at the handshake. `0` re-checks on every event and operation (one session lookup each); `false` switches only the TIME-based check off, invalidations still apply. Process-local registry: an invalidation reaches other replicas only where a Redis broadcast carries it — the tenant guard's (memberships, tenants) and, since 12.1.1, the Better-Auth user mapper's (`invalidateUserCache()`: roles and verification of IAM users); everything else is bounded by the interval. A project that replaces `onConnect` through `graphQl.driver.subscriptions` must call `registerWsConnection()` itself to keep this. Implementation: `common/helpers/graphql-ws-connection.helper.ts` |
@@ -283,7 +283,11 @@ The reliable tells are narrower:
283
283
  cross-references every `overrides:` entry against a live `pnpm audit` report and reports four
284
284
  classes: **TOO LOW** (the override resolves and still delivers a version the advisory covers — modes
285
285
  1 and 2 above), **NOT MATCHING** (the selector no longer reaches the path it was written for), plus
286
- **NO FIX** and **UNUSED** as warnings. It runs inside `check`, `check:fix`, `check:naf` and
286
+ **NO FIX** and **UNUSED** as warnings. UNUSED means the entry changes nothing in the resolved tree:
287
+ its package left the lockfile, the parent of a `parent>pkg` key did (since 12.3.1 — before, the
288
+ package alone was looked up, so `archiver-utils>glob@<14.0.2` outlived archiver-utils while glob
289
+ stayed through other parents), or no edge resolves to its fixed target any more, i.e. the selector
290
+ matches nothing. It runs inside `check`, `check:fix`, `check:naf` and
287
291
  `check:raw`, and in CI on both `build.yml` and `publish.yml`. The three tells above are still how you
288
292
  *read* a report by hand; the guard is what makes sure somebody does. `--audit-file` and
289
293
  `--advisory-file` make a run reproducible offline, and CI passes `--audit-file` so the
@@ -410,7 +410,7 @@ pnpm run check:mutations -- --id=<id> # one mutation
410
410
  pnpm run check:mutations -- --list # the registry, without running anything
411
411
  pnpm run check:mutations -- --allow-dirty # when the fix and its evidence share a working tree
412
412
  pnpm run check:mutations -- --jobs=4 # N mutations at a time (default: 2, or 4 on >=12 cores)
413
- pnpm run check:mutations -- --no-infra # only the 311 that need no MongoDB
413
+ pnpm run check:mutations -- --no-infra # only the 316 that need no MongoDB
414
414
  pnpm run check:mutations -- --since=<ref> # only mutations touching files changed since <ref>
415
415
  pnpm run check:mutations -- --shard=2/4 # this job's quarter of the selection (CI splits the full run)
416
416
  ```
@@ -430,7 +430,7 @@ when the registry, a vitest config or a setup file changed, since those can move
430
430
  commit, and in CI alongside the publish without blocking it. The price of caching is a cache that
431
431
  has to model each spec's full dependency closure correctly, and getting that wrong produces a stale
432
432
  PASS for a test that has since gone vacuous — exactly what the gate is there to prevent. Bad trade
433
- at 530 mutations.
433
+ at 535 mutations.
434
434
 
435
435
  **Decided 2026-10-03 (repo owner): keep the full run.** Measured at 128 mutations, the CI job for
436
436
  11.41.6 took **14 minutes**. The trigger to revisit is that wall time, not the mutation count —
@@ -503,7 +503,7 @@ exactly the environment where the answer matters.
503
503
 
504
504
  Worth knowing before optimising the wrong thing: the specs behind all 219 e2e mutations add up to
505
505
  **~40 seconds**. The step takes ~740s. The remaining ~700s is paying vitest's startup — process
506
- spawn, transform, module graph, mongod connect, DB create and drop — once per mutation, 530 times.
506
+ spawn, transform, module graph, mongod connect, DB create and drop — once per mutation, 535 times.
507
507
  That work is largely single-threaded I/O and barely scales with cores: the full registry measures
508
508
  **744s on a 12-core laptop and 777s on a 4-vCPU CI runner**.
509
509
 
package/FRAMEWORK-API.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # @lenne.tech/nest-server — Framework API Reference
2
2
 
3
- > Auto-generated from source code as of 2026-11-03 (v12.3.0)
3
+ > Auto-generated from source code as of 2026-11-04 (v12.3.2)
4
4
  > File: `FRAMEWORK-API.md` — compact, machine-readable API surface for Claude Code
5
5
 
6
6
  ## CoreModule.forRoot()
@@ -27,7 +27,7 @@
27
27
  - `cronJobs?`: `Record<string, string | false | 0 | CronJobConfigWithTimeZone<null, null> | C...` — Cron jobs configuration object with the name of the cron job function as key
28
28
  - `database?`: `string | false | IDatabaseConfig` (default: `undefined (the `mongoose` configuration)`) — Data sources: where models are stored.
29
29
  - `debugProcessInput?`: `boolean` (default: `false`) — When true, logs a debug message when prepareInput() changes the input type during process().
30
- - `email?`: `{ defaultSender?: { email?: string; name?: string; }; mailjet?: MailjetOption...` — SMTP and template configuration for sending emails
30
+ - `email?`: `{ defaultReplyTo?: string; defaultSender?: { email?: string; name?: string; }...` — SMTP and template configuration for sending emails
31
31
  - `env?`: `string` — Environment
32
32
  - `version?`: `string` — Semantic version of the running build (e.g. from package.json / meta.json).
33
33
  - `errorCode?`: `IErrorCode` — Configuration for the error code module
@@ -13,7 +13,23 @@ import { getContextData } from '../helpers/context.helper.js';
13
13
  import { hasRestrictionsCheckedMarker } from '../decorators/restrictions-checked.marker.js';
14
14
  import { getStringIds } from '../helpers/db.helper.js';
15
15
  import { processDeep } from '../helpers/input.helper.js';
16
+ import { columnName } from '../persistence/sql/sql-naming.js';
16
17
  import { ConfigService } from '../services/config.service.js';
18
+ function secretFieldKeys(fields) {
19
+ const keys = new Set();
20
+ for (const field of fields) {
21
+ keys.add(field);
22
+ if (field === 'id' || field === '_id') {
23
+ continue;
24
+ }
25
+ try {
26
+ keys.add(columnName(field));
27
+ }
28
+ catch {
29
+ }
30
+ }
31
+ return keys;
32
+ }
17
33
  let CheckSecurityInterceptor = class CheckSecurityInterceptor {
18
34
  configService;
19
35
  config = {
@@ -104,6 +120,7 @@ let CheckSecurityInterceptor = class CheckSecurityInterceptor {
104
120
  return proto === null || proto === Object.prototype;
105
121
  };
106
122
  const visited = new WeakSet();
123
+ const secretKeys = secretFieldKeys(this.config.secretFields);
107
124
  const removeSecrets = (data) => {
108
125
  if (!this.config.removeSecretFields || !data || typeof data !== 'object') {
109
126
  return data;
@@ -122,14 +139,14 @@ let CheckSecurityInterceptor = class CheckSecurityInterceptor {
122
139
  return data;
123
140
  }
124
141
  visited.add(data);
125
- for (const field of this.config.secretFields) {
142
+ for (const field of secretKeys) {
126
143
  if (field in data && data[field] !== undefined) {
127
144
  data[field] = undefined;
128
145
  }
129
146
  }
130
147
  for (const key of Object.keys(data)) {
131
148
  const value = data[key];
132
- if (value && typeof value === 'object' && !this.config.secretFields.includes(key)) {
149
+ if (value && typeof value === 'object' && !secretKeys.has(key)) {
133
150
  removeSecrets(value);
134
151
  }
135
152
  }
@@ -1 +1 @@
1
- {"version":3,"file":"check-security.interceptor.js","sourceRoot":"","sources":["../../../../src/core/common/interceptors/check-security.interceptor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"check-security.interceptor.js","sourceRoot":"","sources":["../../../../src/core/common/interceptors/check-security.interceptor.ts"],"names":[],"mappings":"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"}
@@ -315,6 +315,7 @@ export interface IServerOptions {
315
315
  database?: false | IDatabaseConfig | string;
316
316
  debugProcessInput?: boolean;
317
317
  email?: {
318
+ defaultReplyTo?: string;
318
319
  defaultSender?: {
319
320
  email?: string;
320
321
  name?: string;
@@ -12,13 +12,16 @@ export declare class EmailService implements OnModuleDestroy {
12
12
  private cachedSmtpConfig;
13
13
  protected readonly emailServiceLogger: Logger;
14
14
  private smtpTlsWarningEmitted;
15
+ private replyToWarningEmitted;
15
16
  constructor(configService: ConfigService, templateService: TemplateService, emailCapture?: IHubEmailCapture);
16
17
  protected warnOnImpossibleSmtpTlsCombination(smtp: unknown): void;
18
+ protected resolveReplyTo(replyTo: false | string | undefined): string | undefined;
17
19
  onModuleDestroy(): void;
18
20
  sendMail(recipients: string | string[], subject: string, config: {
19
21
  attachments?: Attachment[];
20
22
  html?: string;
21
23
  htmlTemplate?: string;
24
+ replyTo?: false | string;
22
25
  senderEmail?: string;
23
26
  senderName?: string;
24
27
  smtp?: MailTransportOptions;
@@ -27,6 +27,7 @@ let EmailService = EmailService_1 = class EmailService {
27
27
  cachedSmtpConfig = null;
28
28
  emailServiceLogger = new Logger(EmailService_1.name);
29
29
  smtpTlsWarningEmitted = false;
30
+ replyToWarningEmitted = false;
30
31
  constructor(configService, templateService, emailCapture) {
31
32
  this.configService = configService;
32
33
  this.templateService = templateService;
@@ -50,6 +51,23 @@ let EmailService = EmailService_1 = class EmailService {
50
51
  '"wrong version number" from OpenSSL and NO outgoing mail — silently, because authentication mail ' +
51
52
  'is not awaited. Set SMTP_SECURE=false for port 587, or SMTP_PORT=465 to keep implicit TLS.');
52
53
  }
54
+ resolveReplyTo(replyTo) {
55
+ if (replyTo === false) {
56
+ return undefined;
57
+ }
58
+ const value = replyTo ?? this.configService.getFastButReadOnly('email.defaultReplyTo');
59
+ if (value === undefined || value === null) {
60
+ return undefined;
61
+ }
62
+ if (typeof value === 'string') {
63
+ return value.trim() || undefined;
64
+ }
65
+ if (!this.replyToWarningEmitted) {
66
+ this.replyToWarningEmitted = true;
67
+ this.emailServiceLogger.warn(`Reply-To ignored: expected an address string (email.defaultReplyTo / replyTo), got ${typeof value}.`);
68
+ }
69
+ return undefined;
70
+ }
53
71
  onModuleDestroy() {
54
72
  if (this.cachedTransporter) {
55
73
  this.cachedTransporter.close();
@@ -118,10 +136,12 @@ let EmailService = EmailService_1 = class EmailService {
118
136
  this.cachedTransporter = createTransport(smtp);
119
137
  this.cachedSmtpConfig = smtpKey;
120
138
  }
139
+ const replyTo = this.resolveReplyTo(config.replyTo);
121
140
  return this.cachedTransporter.sendMail({
122
141
  attachments,
123
142
  from: `"${senderName}" <${senderEmail}>`,
124
143
  html,
144
+ ...(replyTo ? { replyTo } : {}),
125
145
  subject,
126
146
  text,
127
147
  to: recipients,
@@ -1 +1 @@
1
- {"version":3,"file":"email.service.js","sourceRoot":"","sources":["../../../../src/core/common/services/email.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"email.service.js","sourceRoot":"","sources":["../../../../src/core/common/services/email.service.ts"],"names":[],"mappings":"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"}
@@ -26,3 +26,4 @@ export declare const AI_MCP_OAUTH_CLIENT_MODEL = "AiMcpOAuthClient";
26
26
  export declare const AI_MCP_OAUTH_CODE_MODEL = "AiMcpOAuthCode";
27
27
  export declare const AI_MCP_OAUTH_REFRESH_TOKEN_MODEL = "AiMcpOAuthRefreshToken";
28
28
  export declare const AI_MCP_OAUTH_CODE_TTL_SECONDS = 600;
29
+ export declare const AI_MCP_ENABLED = "AI_MCP_ENABLED";
@@ -26,4 +26,5 @@ export const AI_MCP_OAUTH_CLIENT_MODEL = 'AiMcpOAuthClient';
26
26
  export const AI_MCP_OAUTH_CODE_MODEL = 'AiMcpOAuthCode';
27
27
  export const AI_MCP_OAUTH_REFRESH_TOKEN_MODEL = 'AiMcpOAuthRefreshToken';
28
28
  export const AI_MCP_OAUTH_CODE_TTL_SECONDS = 600;
29
+ export const AI_MCP_ENABLED = 'AI_MCP_ENABLED';
29
30
  //# sourceMappingURL=core-ai.constants.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"core-ai.constants.js","sourceRoot":"","sources":["../../../../src/core/modules/ai/core-ai.constants.ts"],"names":[],"mappings":"AA6BA,MAAM,CAAC,MAAM,qBAAqB,GAAG,uBAAuB,CAAC;AAE7D,MAAM,CAAC,MAAM,qBAAqB,GAAG,eAAe,CAAC;AAIrD,MAAM,CAAC,MAAM,8BAA8B,GAAG,gCAAgC,CAAC;AAE/E,MAAM,CAAC,MAAM,8BAA8B,GAAG,wBAAwB,CAAC;AAIvE,MAAM,CAAC,MAAM,mBAAmB,GAAG,qBAAqB,CAAC;AAEzD,MAAM,CAAC,MAAM,mBAAmB,GAAG,cAAc,CAAC;AAIlD,MAAM,CAAC,MAAM,qBAAqB,GAAG,uBAAuB,CAAC;AAE7D,MAAM,CAAC,MAAM,qBAAqB,GAAG,gBAAgB,CAAC;AAItD,MAAM,CAAC,MAAM,oBAAoB,GAAG,sBAAsB,CAAC;AAE3D,MAAM,CAAC,MAAM,oBAAoB,GAAG,eAAe,CAAC;AAIpD,MAAM,CAAC,MAAM,aAAa,GAAG,eAAe,CAAC;AAE7C,MAAM,CAAC,MAAM,aAAa,GAAG,QAAQ,CAAC;AAItC,MAAM,CAAC,MAAM,oBAAoB,GAAG,sBAAsB,CAAC;AAE3D,MAAM,CAAC,MAAM,oBAAoB,GAAG,cAAc,CAAC;AAInD,MAAM,CAAC,MAAM,eAAe,GAAG,iBAAiB,CAAC;AAEjD,MAAM,CAAC,MAAM,eAAe,GAAG,UAAU,CAAC;AAI1C,MAAM,CAAC,MAAM,aAAa,GAAG,eAAe,CAAC;AAE7C,MAAM,CAAC,MAAM,aAAa,GAAG,QAAQ,CAAC;AAItC,MAAM,CAAC,MAAM,mBAAmB,GAAG,qBAAqB,CAAC;AAEzD,MAAM,CAAC,MAAM,mBAAmB,GAAG,aAAa,CAAC;AAIjD,MAAM,CAAC,MAAM,oBAAoB,GAAG,sBAAsB,CAAC;AAE3D,MAAM,CAAC,MAAM,oBAAoB,GAAG,cAAc,CAAC;AAInD,MAAM,CAAC,MAAM,qBAAqB,GAAG,uBAAuB,CAAC;AAE7D,MAAM,CAAC,MAAM,qBAAqB,GAAG,eAAe,CAAC;AAIrD,MAAM,CAAC,MAAM,yBAAyB,GAAG,kBAAkB,CAAC;AAE5D,MAAM,CAAC,MAAM,uBAAuB,GAAG,gBAAgB,CAAC;AAExD,MAAM,CAAC,MAAM,gCAAgC,GAAG,wBAAwB,CAAC;AAEzE,MAAM,CAAC,MAAM,6BAA6B,GAAG,GAAG,CAAC"}
1
+ {"version":3,"file":"core-ai.constants.js","sourceRoot":"","sources":["../../../../src/core/modules/ai/core-ai.constants.ts"],"names":[],"mappings":"AA6BA,MAAM,CAAC,MAAM,qBAAqB,GAAG,uBAAuB,CAAC;AAE7D,MAAM,CAAC,MAAM,qBAAqB,GAAG,eAAe,CAAC;AAIrD,MAAM,CAAC,MAAM,8BAA8B,GAAG,gCAAgC,CAAC;AAE/E,MAAM,CAAC,MAAM,8BAA8B,GAAG,wBAAwB,CAAC;AAIvE,MAAM,CAAC,MAAM,mBAAmB,GAAG,qBAAqB,CAAC;AAEzD,MAAM,CAAC,MAAM,mBAAmB,GAAG,cAAc,CAAC;AAIlD,MAAM,CAAC,MAAM,qBAAqB,GAAG,uBAAuB,CAAC;AAE7D,MAAM,CAAC,MAAM,qBAAqB,GAAG,gBAAgB,CAAC;AAItD,MAAM,CAAC,MAAM,oBAAoB,GAAG,sBAAsB,CAAC;AAE3D,MAAM,CAAC,MAAM,oBAAoB,GAAG,eAAe,CAAC;AAIpD,MAAM,CAAC,MAAM,aAAa,GAAG,eAAe,CAAC;AAE7C,MAAM,CAAC,MAAM,aAAa,GAAG,QAAQ,CAAC;AAItC,MAAM,CAAC,MAAM,oBAAoB,GAAG,sBAAsB,CAAC;AAE3D,MAAM,CAAC,MAAM,oBAAoB,GAAG,cAAc,CAAC;AAInD,MAAM,CAAC,MAAM,eAAe,GAAG,iBAAiB,CAAC;AAEjD,MAAM,CAAC,MAAM,eAAe,GAAG,UAAU,CAAC;AAI1C,MAAM,CAAC,MAAM,aAAa,GAAG,eAAe,CAAC;AAE7C,MAAM,CAAC,MAAM,aAAa,GAAG,QAAQ,CAAC;AAItC,MAAM,CAAC,MAAM,mBAAmB,GAAG,qBAAqB,CAAC;AAEzD,MAAM,CAAC,MAAM,mBAAmB,GAAG,aAAa,CAAC;AAIjD,MAAM,CAAC,MAAM,oBAAoB,GAAG,sBAAsB,CAAC;AAE3D,MAAM,CAAC,MAAM,oBAAoB,GAAG,cAAc,CAAC;AAInD,MAAM,CAAC,MAAM,qBAAqB,GAAG,uBAAuB,CAAC;AAE7D,MAAM,CAAC,MAAM,qBAAqB,GAAG,eAAe,CAAC;AAIrD,MAAM,CAAC,MAAM,yBAAyB,GAAG,kBAAkB,CAAC;AAE5D,MAAM,CAAC,MAAM,uBAAuB,GAAG,gBAAgB,CAAC;AAExD,MAAM,CAAC,MAAM,gCAAgC,GAAG,wBAAwB,CAAC;AAEzE,MAAM,CAAC,MAAM,6BAA6B,GAAG,GAAG,CAAC;AAIjD,MAAM,CAAC,MAAM,cAAc,GAAG,gBAAgB,CAAC"}
@@ -25,6 +25,7 @@ import { CoreAiPrompt } from './models/core-ai-prompt.model.js';
25
25
  import { CoreAiSlot } from './models/core-ai-slot.model.js';
26
26
  import { CoreAiResponse } from './models/core-ai-response.model.js';
27
27
  import { CoreAiSettings } from './models/core-ai-settings.model.js';
28
+ import { CoreAiStatus } from './models/core-ai-status.model.js';
28
29
  import { CoreAiUsageInfo } from './models/core-ai-usage-info.model.js';
29
30
  import { CoreAiBudgetService } from './services/core-ai-budget.service.js';
30
31
  import { CoreAiConnectionPreferenceService } from './services/core-ai-connection-preference.service.js';
@@ -52,6 +53,8 @@ export declare class CoreAiController {
52
53
  protected readonly placeholderRegistry: CoreAiPlaceholderRegistry;
53
54
  constructor(aiService: CoreAiService, connectionService: CoreAiConnectionService, conversationService: CoreAiConversationService, interactionService: CoreAiInteractionService, budgetService: CoreAiBudgetService, connectionResolver: CoreAiConnectionResolverService, preferenceService: CoreAiConnectionPreferenceService, slotService: CoreAiSlotService, promptHintService: CoreAiPromptHintService, promptService: CoreAiPromptService, placeholderRegistry: CoreAiPlaceholderRegistry);
54
55
  protected readonly userSettingService: CoreAiUserSettingService;
56
+ protected readonly mcpEnabled?: boolean;
57
+ status(): Promise<CoreAiStatus>;
55
58
  prompt(serviceOptions: ServiceOptions, input: CoreAiPromptInput): Promise<CoreAiResponse>;
56
59
  stream(serviceOptions: ServiceOptions, input: CoreAiPromptInput, res: Response): Promise<void>;
57
60
  availableConnections(serviceOptions: ServiceOptions): Promise<CoreAiAvailableConnection[]>;
@@ -10,11 +10,12 @@ var __metadata = (this && this.__metadata) || function (k, v) {
10
10
  var __param = (this && this.__param) || function (paramIndex, decorator) {
11
11
  return function (target, key) { decorator(target, key, paramIndex); }
12
12
  };
13
- import { Body, Controller, Delete, Get, Inject, Param, Post, Put, Query, Res } from '@nestjs/common';
13
+ import { Body, Controller, Delete, Get, Inject, Optional, Param, Post, Put, Query, Res } from '@nestjs/common';
14
14
  import { RESTServiceOptions } from '../../common/decorators/rest-service-options.decorator.js';
15
15
  import { Roles } from '../../common/decorators/roles.decorator.js';
16
16
  import { RoleEnum } from '../../common/enums/role.enum.js';
17
17
  import { RequestContext } from '../../common/services/request-context.service.js';
18
+ import { AI_MCP_ENABLED } from './core-ai.constants.js';
18
19
  import { CoreAiBudgetLimitCreateInput } from './inputs/core-ai-budget-limit-create.input.js';
19
20
  import { CoreAiBudgetLimitInput } from './inputs/core-ai-budget-limit.input.js';
20
21
  import { CoreAiConnectionCreateInput } from './inputs/core-ai-connection-create.input.js';
@@ -67,6 +68,10 @@ let CoreAiController = class CoreAiController {
67
68
  this.placeholderRegistry = placeholderRegistry;
68
69
  }
69
70
  userSettingService;
71
+ mcpEnabled;
72
+ async status() {
73
+ return { mcp: this.mcpEnabled === true };
74
+ }
70
75
  async prompt(serviceOptions, input) {
71
76
  return this.aiService.prompt(input, serviceOptions);
72
77
  }
@@ -228,6 +233,18 @@ __decorate([
228
233
  Inject(CoreAiUserSettingService),
229
234
  __metadata("design:type", CoreAiUserSettingService)
230
235
  ], CoreAiController.prototype, "userSettingService", void 0);
236
+ __decorate([
237
+ Optional(),
238
+ Inject(AI_MCP_ENABLED),
239
+ __metadata("design:type", Boolean)
240
+ ], CoreAiController.prototype, "mcpEnabled", void 0);
241
+ __decorate([
242
+ Get('status'),
243
+ Roles(RoleEnum.S_EVERYONE),
244
+ __metadata("design:type", Function),
245
+ __metadata("design:paramtypes", []),
246
+ __metadata("design:returntype", Promise)
247
+ ], CoreAiController.prototype, "status", null);
231
248
  __decorate([
232
249
  Post('prompt'),
233
250
  Roles(RoleEnum.S_USER),
@@ -1 +1 @@
1
- {"version":3,"file":"core-ai.controller.js","sourceRoot":"","sources":["../../../../src/core/modules/ai/core-ai.controller.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"core-ai.controller.js","sourceRoot":"","sources":["../../../../src/core/modules/ai/core-ai.controller.ts"],"names":[],"mappings":"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"}
@@ -13,7 +13,7 @@ import { CoreAiResolver } from './core-ai.resolver.js';
13
13
  import { CoreAiMcpOAuthService } from './services/core-ai-mcp-oauth.service.js';
14
14
  import { CoreAiMcpService } from './services/core-ai-mcp.service.js';
15
15
  import { CorePersistenceModule } from '../../common/persistence/core-persistence.module.js';
16
- import { AI_MCP_OAUTH_CLIENT_MODEL, AI_MCP_OAUTH_CODE_MODEL, AI_MCP_OAUTH_REFRESH_TOKEN_MODEL, AI_USER_SETTING_CLASS, AI_USER_SETTING_MODEL, } from './core-ai.constants.js';
16
+ import { AI_MCP_ENABLED, AI_MCP_OAUTH_CLIENT_MODEL, AI_MCP_OAUTH_CODE_MODEL, AI_MCP_OAUTH_REFRESH_TOKEN_MODEL, AI_USER_SETTING_CLASS, AI_USER_SETTING_MODEL, } from './core-ai.constants.js';
17
17
  import { AiBudgetLimitSchema, CoreAiBudgetLimit } from './models/core-ai-budget-limit.model.js';
18
18
  import { AiMcpOAuthClientSchema, AiMcpOAuthCodeSchema, AiMcpOAuthRefreshTokenSchema, } from './models/core-ai-mcp-oauth.models.js';
19
19
  import { AiConnectionPreferenceSchema, CoreAiConnectionPreference, } from './models/core-ai-connection-preference.model.js';
@@ -132,6 +132,7 @@ let CoreAiModule = CoreAiModule_1 = class CoreAiModule {
132
132
  AskUserQuestionAiTool,
133
133
  SearchToolsAiTool,
134
134
  LlmProviderFactory,
135
+ { provide: AI_MCP_ENABLED, useValue: options.mcpEnabled === true },
135
136
  { provide: AI_BUDGET_LIMIT_CLASS, useValue: CoreAiBudgetLimit },
136
137
  { provide: AI_CONNECTION_CLASS, useValue: CoreAiConnection },
137
138
  { provide: AI_CONNECTION_PREFERENCE_CLASS, useValue: CoreAiConnectionPreference },
@@ -1 +1 @@
1
- {"version":3,"file":"core-ai.module.js","sourceRoot":"","sources":["../../../../src/core/modules/ai/core-ai.module.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"core-ai.module.js","sourceRoot":"","sources":["../../../../src/core/modules/ai/core-ai.module.ts"],"names":[],"mappings":"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"}
@@ -45,6 +45,7 @@ export * from './models/core-ai-tool-grant.model.js';
45
45
  export * from './models/core-ai-mode.model.js';
46
46
  export * from './models/core-ai-tool-policy.model.js';
47
47
  export * from './models/core-ai-settings.model.js';
48
+ export * from './models/core-ai-status.model.js';
48
49
  export * from './models/core-ai-user-setting.model.js';
49
50
  export * from './models/core-ai-response.model.js';
50
51
  export * from './models/core-ai-usage-info.model.js';
@@ -44,6 +44,7 @@ export * from './models/core-ai-tool-grant.model.js';
44
44
  export * from './models/core-ai-mode.model.js';
45
45
  export * from './models/core-ai-tool-policy.model.js';
46
46
  export * from './models/core-ai-settings.model.js';
47
+ export * from './models/core-ai-status.model.js';
47
48
  export * from './models/core-ai-user-setting.model.js';
48
49
  export * from './models/core-ai-response.model.js';
49
50
  export * from './models/core-ai-usage-info.model.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/core/modules/ai/index.ts"],"names":[],"mappings":"AACA,cAAc,oCAAoC,CAAC;AACnD,cAAc,6BAA6B,CAAC;AAC5C,cAAc,kCAAkC,CAAC;AAEjD,OAAO,EACL,gCAAgC,EAChC,6BAA6B,EAC7B,qBAAqB,EACrB,yBAAyB,GAC1B,MAAM,0CAA0C,CAAC;AAOlD,cAAc,2CAA2C,CAAC;AAC1D,cAAc,yBAAyB,CAAC;AACxC,cAAc,qBAAqB,CAAC;AACpC,cAAc,uBAAuB,CAAC;AACtC,cAAc,+CAA+C,CAAC;AAC9D,cAAc,wCAAwC,CAAC;AACvD,cAAc,6CAA6C,CAAC;AAC5D,cAAc,iDAAiD,CAAC;AAChE,cAAc,sCAAsC,CAAC;AACrD,cAAc,+CAA+C,CAAC;AAC9D,cAAc,wCAAwC,CAAC;AACvD,cAAc,8CAA8C,CAAC;AAC7D,cAAc,uCAAuC,CAAC;AACtD,cAAc,yCAAyC,CAAC;AACxD,cAAc,yCAAyC,CAAC;AACxD,cAAc,uCAAuC,CAAC;AACtD,cAAc,uCAAuC,CAAC;AACtD,cAAc,kCAAkC,CAAC;AACjD,cAAc,oCAAoC,CAAC;AACnD,cAAc,yBAAyB,CAAC;AACxC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,iDAAiD,CAAC;AAChE,cAAc,mCAAmC,CAAC;AAClD,cAAc,0CAA0C,CAAC;AACzD,cAAc,mCAAmC,CAAC;AAClD,cAAc,wCAAwC,CAAC;AACvD,cAAc,kDAAkD,CAAC;AACjE,cAAc,kCAAkC,CAAC;AACjD,cAAc,gDAAgD,CAAC;AAC/D,cAAc,wCAAwC,CAAC;AACvD,cAAc,iDAAiD,CAAC;AAChE,cAAc,sCAAsC,CAAC;AACrD,cAAc,wCAAwC,CAAC;AACvD,cAAc,uCAAuC,CAAC;AACtD,cAAc,mCAAmC,CAAC;AAClD,cAAc,uCAAuC,CAAC;AACtD,cAAc,kCAAkC,CAAC;AACjD,cAAc,gCAAgC,CAAC;AAC/C,cAAc,sCAAsC,CAAC;AACrD,cAAc,gCAAgC,CAAC;AAC/C,cAAc,uCAAuC,CAAC;AACtD,cAAc,oCAAoC,CAAC;AACnD,cAAc,wCAAwC,CAAC;AACvD,cAAc,oCAAoC,CAAC;AACnD,cAAc,sCAAsC,CAAC;AACrD,cAAc,iCAAiC,CAAC;AAChD,cAAc,oCAAoC,CAAC;AACnD,cAAc,qCAAqC,CAAC;AACpD,cAAc,2CAA2C,CAAC;AAC1D,cAAc,iCAAiC,CAAC;AAChD,cAAc,sCAAsC,CAAC;AACrD,cAAc,qDAAqD,CAAC;AACpE,cAAc,mDAAmD,CAAC;AAClE,cAAc,0CAA0C,CAAC;AACzD,cAAc,4CAA4C,CAAC;AAC3D,cAAc,2CAA2C,CAAC;AAC1D,cAAc,yCAAyC,CAAC;AACxD,cAAc,mCAAmC,CAAC;AAClD,cAAc,4CAA4C,CAAC;AAC3D,cAAc,8CAA8C,CAAC;AAC7D,cAAc,2CAA2C,CAAC;AAC1D,cAAc,sCAAsC,CAAC;AACrD,cAAc,oCAAoC,CAAC;AACnD,cAAc,0CAA0C,CAAC;AACzD,cAAc,0CAA0C,CAAC;AACzD,cAAc,oCAAoC,CAAC;AACnD,cAAc,2CAA2C,CAAC;AAC1D,cAAc,4CAA4C,CAAC;AAC3D,cAAc,+BAA+B,CAAC;AAC9C,cAAc,yBAAyB,CAAC;AACxC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,mCAAmC,CAAC;AAClD,cAAc,8BAA8B,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/core/modules/ai/index.ts"],"names":[],"mappings":"AACA,cAAc,oCAAoC,CAAC;AACnD,cAAc,6BAA6B,CAAC;AAC5C,cAAc,kCAAkC,CAAC;AAEjD,OAAO,EACL,gCAAgC,EAChC,6BAA6B,EAC7B,qBAAqB,EACrB,yBAAyB,GAC1B,MAAM,0CAA0C,CAAC;AAOlD,cAAc,2CAA2C,CAAC;AAC1D,cAAc,yBAAyB,CAAC;AACxC,cAAc,qBAAqB,CAAC;AACpC,cAAc,uBAAuB,CAAC;AACtC,cAAc,+CAA+C,CAAC;AAC9D,cAAc,wCAAwC,CAAC;AACvD,cAAc,6CAA6C,CAAC;AAC5D,cAAc,iDAAiD,CAAC;AAChE,cAAc,sCAAsC,CAAC;AACrD,cAAc,+CAA+C,CAAC;AAC9D,cAAc,wCAAwC,CAAC;AACvD,cAAc,8CAA8C,CAAC;AAC7D,cAAc,uCAAuC,CAAC;AACtD,cAAc,yCAAyC,CAAC;AACxD,cAAc,yCAAyC,CAAC;AACxD,cAAc,uCAAuC,CAAC;AACtD,cAAc,uCAAuC,CAAC;AACtD,cAAc,kCAAkC,CAAC;AACjD,cAAc,oCAAoC,CAAC;AACnD,cAAc,yBAAyB,CAAC;AACxC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,iDAAiD,CAAC;AAChE,cAAc,mCAAmC,CAAC;AAClD,cAAc,0CAA0C,CAAC;AACzD,cAAc,mCAAmC,CAAC;AAClD,cAAc,wCAAwC,CAAC;AACvD,cAAc,kDAAkD,CAAC;AACjE,cAAc,kCAAkC,CAAC;AACjD,cAAc,gDAAgD,CAAC;AAC/D,cAAc,wCAAwC,CAAC;AACvD,cAAc,iDAAiD,CAAC;AAChE,cAAc,sCAAsC,CAAC;AACrD,cAAc,wCAAwC,CAAC;AACvD,cAAc,uCAAuC,CAAC;AACtD,cAAc,mCAAmC,CAAC;AAClD,cAAc,uCAAuC,CAAC;AACtD,cAAc,kCAAkC,CAAC;AACjD,cAAc,gCAAgC,CAAC;AAC/C,cAAc,sCAAsC,CAAC;AACrD,cAAc,gCAAgC,CAAC;AAC/C,cAAc,uCAAuC,CAAC;AACtD,cAAc,oCAAoC,CAAC;AACnD,cAAc,kCAAkC,CAAC;AACjD,cAAc,wCAAwC,CAAC;AACvD,cAAc,oCAAoC,CAAC;AACnD,cAAc,sCAAsC,CAAC;AACrD,cAAc,iCAAiC,CAAC;AAChD,cAAc,oCAAoC,CAAC;AACnD,cAAc,qCAAqC,CAAC;AACpD,cAAc,2CAA2C,CAAC;AAC1D,cAAc,iCAAiC,CAAC;AAChD,cAAc,sCAAsC,CAAC;AACrD,cAAc,qDAAqD,CAAC;AACpE,cAAc,mDAAmD,CAAC;AAClE,cAAc,0CAA0C,CAAC;AACzD,cAAc,4CAA4C,CAAC;AAC3D,cAAc,2CAA2C,CAAC;AAC1D,cAAc,yCAAyC,CAAC;AACxD,cAAc,mCAAmC,CAAC;AAClD,cAAc,4CAA4C,CAAC;AAC3D,cAAc,8CAA8C,CAAC;AAC7D,cAAc,2CAA2C,CAAC;AAC1D,cAAc,sCAAsC,CAAC;AACrD,cAAc,oCAAoC,CAAC;AACnD,cAAc,0CAA0C,CAAC;AACzD,cAAc,0CAA0C,CAAC;AACzD,cAAc,oCAAoC,CAAC;AACnD,cAAc,2CAA2C,CAAC;AAC1D,cAAc,4CAA4C,CAAC;AAC3D,cAAc,+BAA+B,CAAC;AAC9C,cAAc,yBAAyB,CAAC;AACxC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,mCAAmC,CAAC;AAClD,cAAc,8BAA8B,CAAC"}
@@ -0,0 +1,3 @@
1
+ export declare class CoreAiStatus {
2
+ mcp: boolean;
3
+ }
@@ -0,0 +1,25 @@
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
6
+ };
7
+ var __metadata = (this && this.__metadata) || function (k, v) {
8
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
9
+ };
10
+ import { Field, ObjectType } from '@nestjs/graphql';
11
+ import { Restricted } from '../../../common/decorators/restricted.decorator.js';
12
+ import { RoleEnum } from '../../../common/enums/role.enum.js';
13
+ let CoreAiStatus = class CoreAiStatus {
14
+ mcp;
15
+ };
16
+ __decorate([
17
+ Field(() => Boolean, { description: 'Whether the MCP server answers at /ai/mcp' }),
18
+ __metadata("design:type", Boolean)
19
+ ], CoreAiStatus.prototype, "mcp", void 0);
20
+ CoreAiStatus = __decorate([
21
+ ObjectType({ description: 'What the AI module offers on this server' }),
22
+ Restricted(RoleEnum.S_EVERYONE)
23
+ ], CoreAiStatus);
24
+ export { CoreAiStatus };
25
+ //# sourceMappingURL=core-ai-status.model.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"core-ai-status.model.js","sourceRoot":"","sources":["../../../../../src/core/modules/ai/models/core-ai-status.model.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAEpD,OAAO,EAAE,UAAU,EAAE,MAAM,oDAAoD,CAAC;AAChF,OAAO,EAAE,QAAQ,EAAE,MAAM,oCAAoC,CAAC;AAQvD,IAAM,YAAY,GAAlB,MAAM,YAAY;IAGvB,GAAG,CAAU;CACd,CAAA;AADC;IADC,KAAK,CAAC,GAAG,EAAE,CAAC,OAAO,EAAE,EAAE,WAAW,EAAE,2CAA2C,EAAE,CAAC;;yCACtE;AAHF,YAAY;IAFxB,UAAU,CAAC,EAAE,WAAW,EAAE,0CAA0C,EAAE,CAAC;IACvE,UAAU,CAAC,QAAQ,CAAC,UAAU,CAAC;GACnB,YAAY,CAIxB"}