diff --git a/.changeset/safe-cache-resource-bounds.md b/.changeset/safe-cache-resource-bounds.md new file mode 100644 index 000000000..a6e6db45e --- /dev/null +++ b/.changeset/safe-cache-resource-bounds.md @@ -0,0 +1,6 @@ +--- +"@croco/cache-core": minor +"@croco/problems-core": patch +--- + +Reject unsafe in-memory cache capacity and cleanup interval values before allocating runtime resources. diff --git a/docs/problem-code-registry.json b/docs/problem-code-registry.json index a993604b9..ab90981a5 100644 --- a/docs/problem-code-registry.json +++ b/docs/problem-code-registry.json @@ -1,6 +1,6 @@ { "version": "croco.problem-code-registry.v1", - "problemCount": 584, + "problemCount": 585, "problems": [ { "code": "ACCESS_DENIED", @@ -3062,6 +3062,36 @@ } ] }, + { + "code": "cache-core/invalid-configuration", + "category": "InternalServerError", + "status": 500, + "title": "Internal Server Error", + "cookbookPath": "/reference/problem-recovery-cookbook/#cache-core-invalid-configuration", + "recovery": { + "cause": "Croco or an upstream dependency failed after accepting the request.", + "userAction": "Retry later only when the operation is idempotent or the caller owns retry safety.", + "operatorAction": "Use traces, logs, and upstream diagnostics to isolate the failing boundary.", + "retryability": "conditional", + "redactionPolicy": "operator-only", + "telemetry": { + "eventName": "croco.problem.error", + "severity": "error", + "attributes": ["problem.code", "problem.category", "problem.status"] + } + }, + "lifecycle": { + "status": "active" + }, + "sources": [ + { + "file": "packages/cache-core/src/libs/problems/CacheStoreProblems.ts", + "line": 12, + "column": 3, + "kind": "problem-class" + } + ] + }, { "code": "cache-core/invalid-decorator-config", "category": "InternalServerError", @@ -3116,7 +3146,7 @@ "sources": [ { "file": "packages/cache-core/src/libs/problems/CacheStoreProblems.ts", - "line": 7, + "line": 35, "column": 3, "kind": "problem-class" } diff --git a/packages/cache-core/README.md b/packages/cache-core/README.md index 79f01166f..fda0a092c 100644 --- a/packages/cache-core/README.md +++ b/packages/cache-core/README.md @@ -41,6 +41,10 @@ const value = await cache.get("user:1"); const stats = cache.getStats(); ``` +`maxEntries`는 1부터 `Number.MAX_SAFE_INTEGER` 사이의 정수여야 합니다. `cleanupIntervalMs`를 지정하면 Node.js가 +clamp하지 않는 1부터 2,147,483,647 사이의 정수 밀리초여야 합니다. 잘못된 값은 정리 타이머를 만들기 전에 +`InvalidCacheConfigurationProblem`으로 거부됩니다. + ### getOrSet으로 singleflight 로딩 ```typescript diff --git a/packages/cache-core/src/index.ts b/packages/cache-core/src/index.ts index 8abbcb693..8c6093ab7 100644 --- a/packages/cache-core/src/index.ts +++ b/packages/cache-core/src/index.ts @@ -68,4 +68,10 @@ export { UnknownCacheInvalidationEventProblem, UnsupportedCacheInvalidationCapabilityProblem, } from "./libs/problems/CacheDecoratorProblems"; -export { InvalidCacheTtlProblem } from "./libs/problems/CacheStoreProblems"; +export { + InvalidCacheConfigurationProblem, + InvalidCacheTtlProblem, + MAX_CACHE_ENTRIES, + MAX_CACHE_TIMER_DELAY_MS, +} from "./libs/problems/CacheStoreProblems"; +export type { CacheNumericOption } from "./libs/problems/CacheStoreProblems"; diff --git a/packages/cache-core/src/libs/InMemoryCacheStore.ts b/packages/cache-core/src/libs/InMemoryCacheStore.ts index a97f646ea..74d81132a 100644 --- a/packages/cache-core/src/libs/InMemoryCacheStore.ts +++ b/packages/cache-core/src/libs/InMemoryCacheStore.ts @@ -1,4 +1,5 @@ import type { ILogger } from "@croco/framework-context"; +import { assertValidCacheNumericOption } from "./numericValidation"; import { InvalidCacheTtlProblem } from "./problems/CacheStoreProblems"; import { type CacheGetOrSetOptions, @@ -21,7 +22,9 @@ type InFlightLoad = { }; export type InMemoryCacheStoreOptions = { + /** Positive safe integer. Defaults to 1000. */ maxEntries?: number; + /** Integer milliseconds from 1 through 2,147,483,647. Disabled by default. */ cleanupIntervalMs?: number; }; @@ -61,12 +64,20 @@ export class InMemoryCacheStore extends CacheStore { super(); void logger; - this.maxEntries = options.maxEntries ?? DEFAULT_MAX_ENTRIES; + const maxEntries = options.maxEntries === undefined ? DEFAULT_MAX_ENTRIES : options.maxEntries; + assertValidCacheNumericOption("maxEntries", maxEntries); - if (options.cleanupIntervalMs !== undefined) { + const cleanupIntervalMs = options.cleanupIntervalMs; + if (cleanupIntervalMs !== undefined) { + assertValidCacheNumericOption("cleanupIntervalMs", cleanupIntervalMs); + } + + this.maxEntries = maxEntries; + + if (cleanupIntervalMs !== undefined) { this.cleanupTimer = setInterval(() => { this.pruneExpiredSync(); - }, options.cleanupIntervalMs); + }, cleanupIntervalMs); this.cleanupTimer.unref?.(); } diff --git a/packages/cache-core/src/libs/numericValidation.ts b/packages/cache-core/src/libs/numericValidation.ts new file mode 100644 index 000000000..f2b59647c --- /dev/null +++ b/packages/cache-core/src/libs/numericValidation.ts @@ -0,0 +1,17 @@ +import { + InvalidCacheConfigurationProblem, + MAX_CACHE_ENTRIES, + MAX_CACHE_TIMER_DELAY_MS, +} from "./problems/CacheStoreProblems"; +import type { CacheNumericOption } from "./problems/CacheStoreProblems"; + +const CACHE_NUMERIC_OPTION_MAXIMUMS: Readonly> = { + maxEntries: MAX_CACHE_ENTRIES, + cleanupIntervalMs: MAX_CACHE_TIMER_DELAY_MS, +}; + +export function assertValidCacheNumericOption(option: CacheNumericOption, value: number): void { + if (!Number.isSafeInteger(value) || value <= 0 || value > CACHE_NUMERIC_OPTION_MAXIMUMS[option]) { + throw new InvalidCacheConfigurationProblem(option, value); + } +} diff --git a/packages/cache-core/src/libs/problems/CacheStoreProblems.ts b/packages/cache-core/src/libs/problems/CacheStoreProblems.ts index 95103b439..98f69e788 100644 --- a/packages/cache-core/src/libs/problems/CacheStoreProblems.ts +++ b/packages/cache-core/src/libs/problems/CacheStoreProblems.ts @@ -1,5 +1,33 @@ import { Problem, ProblemCategory } from "@croco/problems-core"; +/** Largest cache capacity that preserves exact integer eviction semantics. */ +export const MAX_CACHE_ENTRIES = Number.MAX_SAFE_INTEGER; +/** Largest cleanup interval that Node.js timers accept without clamping. */ +export const MAX_CACHE_TIMER_DELAY_MS = 2_147_483_647; + +export type CacheNumericOption = "maxEntries" | "cleanupIntervalMs"; + +/** In-memory cache numeric configuration cannot be represented with safe runtime semantics. */ +export class InvalidCacheConfigurationProblem extends Problem { + readonly code = "cache-core/invalid-configuration"; + readonly category = ProblemCategory.InternalServerError; + + constructor( + readonly option: CacheNumericOption, + readonly value: number, + ) { + const constraint = + option === "maxEntries" + ? `an integer between 1 and ${MAX_CACHE_ENTRIES}` + : `an integer between 1 and ${MAX_CACHE_TIMER_DELAY_MS} milliseconds`; + super( + undefined, + undefined, + `Invalid in-memory cache configuration: ${option} must be ${constraint}; received ${value}`, + ); + } +} + /** * RFC 7807 형식의 유효하지 않은 캐시 TTL 검증 문제입니다. */ diff --git a/packages/cache-core/src/tests/CacheExports.spec.ts b/packages/cache-core/src/tests/CacheExports.spec.ts index 07ed08bbd..219b7534a 100644 --- a/packages/cache-core/src/tests/CacheExports.spec.ts +++ b/packages/cache-core/src/tests/CacheExports.spec.ts @@ -17,13 +17,17 @@ import { invalidateCacheKey, invalidateCacheTag, InMemoryCacheStore, + InvalidCacheConfigurationProblem, InvalidCacheTtlProblem, + MAX_CACHE_ENTRIES, + MAX_CACHE_TIMER_DELAY_MS, serializeCacheInvalidationManifest, } from "../index"; import type { CacheGetOrSetOptions, CacheInvalidationAdapter, CacheInvalidationManifest, + CacheNumericOption, CachePattern, CacheStats, CacheWarmupEntry, @@ -92,12 +96,19 @@ class RootCache extends Cache { describe("cache-core public exports", () => { it("exports README-documented cache contracts from the package root", async () => { const cache = new RootCache(); + const numericOption: CacheNumericOption = "maxEntries"; const distributedLock: DistributedCacheLock | undefined = undefined; expect(cache).toBeInstanceOf(Cache); expect(DistributedCacheStore.prototype).toBeInstanceOf(CacheStore); expect(new InMemoryCacheStore()).toBeInstanceOf(CacheStore); + expect(new InvalidCacheConfigurationProblem("maxEntries", 0).code).toBe( + "cache-core/invalid-configuration", + ); expect(new InvalidCacheTtlProblem(-1).code).toBe("cache-core/invalid-ttl"); + expect(MAX_CACHE_ENTRIES).toBe(Number.MAX_SAFE_INTEGER); + expect(MAX_CACHE_TIMER_DELAY_MS).toBe(2_147_483_647); + expect(numericOption).toBe("maxEntries"); expect(distributedLock).toBeUndefined(); }); diff --git a/packages/cache-core/src/tests/InMemoryCacheStore.spec.ts b/packages/cache-core/src/tests/InMemoryCacheStore.spec.ts index ba34bb2b7..b696594ed 100644 --- a/packages/cache-core/src/tests/InMemoryCacheStore.spec.ts +++ b/packages/cache-core/src/tests/InMemoryCacheStore.spec.ts @@ -1,6 +1,11 @@ import { beforeEach, describe, expect, it, vi } from "vitest"; import { InMemoryCacheStore } from "../libs/InMemoryCacheStore"; -import { InvalidCacheTtlProblem } from "../libs/problems/CacheStoreProblems"; +import { + InvalidCacheConfigurationProblem, + InvalidCacheTtlProblem, + MAX_CACHE_ENTRIES, + MAX_CACHE_TIMER_DELAY_MS, +} from "../libs/problems/CacheStoreProblems"; describe("InMemoryCacheStore", () => { let cache!: InMemoryCacheStore; @@ -230,6 +235,45 @@ describe("InMemoryCacheStore", () => { }); describe("capacity management", () => { + it.each([ + Number.NaN, + Number.POSITIVE_INFINITY, + Number.NEGATIVE_INFINITY, + null as unknown as number, + -1, + 0, + 1.5, + MAX_CACHE_ENTRIES + 1, + ])("rejects invalid maxEntries %s before allocating a cleanup timer", (maxEntries) => { + vi.useFakeTimers(); + const setIntervalSpy = vi.spyOn(globalThis, "setInterval"); + + try { + expect(() => new InMemoryCacheStore({ maxEntries, cleanupIntervalMs: 1 })).toThrow( + InvalidCacheConfigurationProblem, + ); + + try { + new InMemoryCacheStore({ maxEntries, cleanupIntervalMs: 1 }); + } catch (error) { + expect(error).toMatchObject({ + code: "cache-core/invalid-configuration", + option: "maxEntries", + value: maxEntries, + }); + } + + expect(setIntervalSpy).not.toHaveBeenCalled(); + } finally { + setIntervalSpy.mockRestore(); + vi.useRealTimers(); + } + }); + + it.each([1, MAX_CACHE_ENTRIES])("accepts maxEntries boundary %s", (maxEntries) => { + expect(() => new InMemoryCacheStore({ maxEntries })).not.toThrow(); + }); + it("should apply default maxEntries of 1000 when not set", async () => { const defaultCache = new InMemoryCacheStore(); @@ -735,6 +779,55 @@ describe("InMemoryCacheStore", () => { }); describe("periodic cleanup", () => { + it.each([ + Number.NaN, + Number.POSITIVE_INFINITY, + Number.NEGATIVE_INFINITY, + null as unknown as number, + -1, + 0, + 1.5, + MAX_CACHE_TIMER_DELAY_MS + 1, + ])("rejects invalid cleanupIntervalMs %s before allocating a timer", (cleanupIntervalMs) => { + vi.useFakeTimers(); + const setIntervalSpy = vi.spyOn(globalThis, "setInterval"); + + try { + expect(() => new InMemoryCacheStore({ cleanupIntervalMs })).toThrow( + InvalidCacheConfigurationProblem, + ); + + try { + new InMemoryCacheStore({ cleanupIntervalMs }); + } catch (error) { + expect(error).toMatchObject({ + code: "cache-core/invalid-configuration", + option: "cleanupIntervalMs", + value: cleanupIntervalMs, + }); + } + + expect(setIntervalSpy).not.toHaveBeenCalled(); + } finally { + setIntervalSpy.mockRestore(); + vi.useRealTimers(); + } + }); + + it.each([1, MAX_CACHE_TIMER_DELAY_MS])( + "accepts cleanupIntervalMs boundary %s without timer clamping", + (cleanupIntervalMs) => { + vi.useFakeTimers(); + + try { + const periodicCache = new InMemoryCacheStore({ cleanupIntervalMs }); + periodicCache.close(); + } finally { + vi.useRealTimers(); + } + }, + ); + it("removes expired entries on cleanup interval without reads", async () => { vi.useFakeTimers(); diff --git a/packages/docs/src/content/docs/api/cache-core/src/classes/InvalidCacheConfigurationProblem.md b/packages/docs/src/content/docs/api/cache-core/src/classes/InvalidCacheConfigurationProblem.md new file mode 100644 index 000000000..d8370658d --- /dev/null +++ b/packages/docs/src/content/docs/api/cache-core/src/classes/InvalidCacheConfigurationProblem.md @@ -0,0 +1,310 @@ +--- +editUrl: false +next: false +prev: false +title: "InvalidCacheConfigurationProblem" +--- + +In-memory cache numeric configuration cannot be represented with safe runtime semantics. + +## Extends + +- [`Problem`](/api/problems-core/src/classes/problem/) + +## Constructors + +### Constructor + +> **new InvalidCacheConfigurationProblem**(`option`, `value`): `InvalidCacheConfigurationProblem` + +#### Parameters + +##### option + +[`CacheNumericOption`](/api/cache-core/src/type-aliases/cachenumericoption/) + +##### value + +`number` + +#### Returns + +`InvalidCacheConfigurationProblem` + +#### Overrides + +`Problem.constructor` + +## Properties + +### category + +> `readonly` **category**: [`InternalServerError`](/api/problems-core/src/enumerations/problemcategory/#internalservererror) = `ProblemCategory.InternalServerError` + +#### Overrides + +[`Problem`](/api/problems-core/src/classes/problem/).[`category`](/api/problems-core/src/classes/problem/#category) + +*** + +### cause? + +> `readonly` `optional` **cause?**: `Error` + +#### Inherited from + +[`Problem`](/api/problems-core/src/classes/problem/).[`cause`](/api/problems-core/src/classes/problem/#cause) + +*** + +### code + +> `readonly` **code**: `"cache-core/invalid-configuration"` = `"cache-core/invalid-configuration"` + +#### Overrides + +[`Problem`](/api/problems-core/src/classes/problem/).[`code`](/api/problems-core/src/classes/problem/#code) + +*** + +### detail? + +> `readonly` `optional` **detail?**: `string` + +#### Inherited from + +[`Problem`](/api/problems-core/src/classes/problem/).[`detail`](/api/problems-core/src/classes/problem/#detail) + +*** + +### extensions? + +> `readonly` `optional` **extensions?**: [`ProblemExtensions`](/api/problems-core/src/type-aliases/problemextensions/) + +#### Inherited from + +[`Problem`](/api/problems-core/src/classes/problem/).[`extensions`](/api/problems-core/src/classes/problem/#extensions) + +*** + +### instance? + +> `readonly` `optional` **instance?**: `string` + +#### Inherited from + +[`Problem`](/api/problems-core/src/classes/problem/).[`instance`](/api/problems-core/src/classes/problem/#instance) + +*** + +### message + +> **message**: `string` + +#### Inherited from + +[`Problem`](/api/problems-core/src/classes/problem/).[`message`](/api/problems-core/src/classes/problem/#message) + +*** + +### name + +> **name**: `string` + +#### Inherited from + +[`Problem`](/api/problems-core/src/classes/problem/).[`name`](/api/problems-core/src/classes/problem/#name) + +*** + +### option + +> `readonly` **option**: [`CacheNumericOption`](/api/cache-core/src/type-aliases/cachenumericoption/) + +*** + +### stack? + +> `optional` **stack?**: `string` + +#### Inherited from + +[`Problem`](/api/problems-core/src/classes/problem/).[`stack`](/api/problems-core/src/classes/problem/#stack) + +*** + +### type + +> `readonly` **type**: `string` + +#### Inherited from + +[`Problem`](/api/problems-core/src/classes/problem/).[`type`](/api/problems-core/src/classes/problem/#type) + +*** + +### value + +> `readonly` **value**: `number` + +*** + +### stackTraceLimit + +> `static` **stackTraceLimit**: `number` + +The `Error.stackTraceLimit` property specifies the number of stack frames +collected by a stack trace (whether generated by `new Error().stack` or +`Error.captureStackTrace(obj)`). + +The default value is `10` but may be set to any valid JavaScript number. Changes +will affect any stack trace captured _after_ the value has been changed. + +If set to a non-number value, or set to a negative number, stack traces will +not capture any frames. + +#### Inherited from + +[`Problem`](/api/problems-core/src/classes/problem/).[`stackTraceLimit`](/api/problems-core/src/classes/problem/#stacktracelimit) + +## Accessors + +### status + +#### Get Signature + +> **get** **status**(): `number` + +##### Returns + +`number` + +#### Inherited from + +[`Problem`](/api/problems-core/src/classes/problem/).[`status`](/api/problems-core/src/classes/problem/#status) + +*** + +### title + +#### Get Signature + +> **get** **title**(): `string` + +##### Returns + +`string` + +#### Inherited from + +[`Problem`](/api/problems-core/src/classes/problem/).[`title`](/api/problems-core/src/classes/problem/#title) + +## Methods + +### toJSON() + +> **toJSON**(): [`ProblemDetails`](/api/problems-core/src/type-aliases/problemdetails/) + +#### Returns + +[`ProblemDetails`](/api/problems-core/src/type-aliases/problemdetails/) + +#### Inherited from + +[`Problem`](/api/problems-core/src/classes/problem/).[`toJSON`](/api/problems-core/src/classes/problem/#tojson) + +*** + +### captureStackTrace() + +> `static` **captureStackTrace**(`targetObject`, `constructorOpt?`): `void` + +Creates a `.stack` property on `targetObject`, which when accessed returns +a string representing the location in the code at which +`Error.captureStackTrace()` was called. + +```js +const myObject = {}; +Error.captureStackTrace(myObject); +myObject.stack; // Similar to `new Error().stack` +``` + +The first line of the trace will be prefixed with +`${myObject.name}: ${myObject.message}`. + +The optional `constructorOpt` argument accepts a function. If given, all frames +above `constructorOpt`, including `constructorOpt`, will be omitted from the +generated stack trace. + +The `constructorOpt` argument is useful for hiding implementation +details of error generation from the user. For instance: + +```js +function a() { + b(); +} + +function b() { + c(); +} + +function c() { + // Create an error without stack trace to avoid calculating the stack trace twice. + const { stackTraceLimit } = Error; + Error.stackTraceLimit = 0; + const error = new Error(); + Error.stackTraceLimit = stackTraceLimit; + + // Capture the stack trace above function b + Error.captureStackTrace(error, b); // Neither function c, nor b is included in the stack trace + throw error; +} + +a(); +``` + +#### Parameters + +##### targetObject + +`object` + +##### constructorOpt? + +`Function` + +#### Returns + +`void` + +#### Inherited from + +[`Problem`](/api/problems-core/src/classes/problem/).[`captureStackTrace`](/api/problems-core/src/classes/problem/#capturestacktrace) + +*** + +### prepareStackTrace() + +> `static` **prepareStackTrace**(`err`, `stackTraces`): `any` + +#### Parameters + +##### err + +`Error` + +##### stackTraces + +`CallSite`[] + +#### Returns + +`any` + +#### See + +https://v8.dev/docs/stack-trace-api#customizing-stack-traces + +#### Inherited from + +[`Problem`](/api/problems-core/src/classes/problem/).[`prepareStackTrace`](/api/problems-core/src/classes/problem/#preparestacktrace) diff --git a/packages/docs/src/content/docs/api/cache-core/src/type-aliases/CacheNumericOption.md b/packages/docs/src/content/docs/api/cache-core/src/type-aliases/CacheNumericOption.md new file mode 100644 index 000000000..1a524f1c8 --- /dev/null +++ b/packages/docs/src/content/docs/api/cache-core/src/type-aliases/CacheNumericOption.md @@ -0,0 +1,8 @@ +--- +editUrl: false +next: false +prev: false +title: "CacheNumericOption" +--- + +> **CacheNumericOption** = `"maxEntries"` \| `"cleanupIntervalMs"` diff --git a/packages/docs/src/content/docs/api/cache-core/src/type-aliases/InMemoryCacheStoreOptions.md b/packages/docs/src/content/docs/api/cache-core/src/type-aliases/InMemoryCacheStoreOptions.md index 78d1594c8..22d3a749e 100644 --- a/packages/docs/src/content/docs/api/cache-core/src/type-aliases/InMemoryCacheStoreOptions.md +++ b/packages/docs/src/content/docs/api/cache-core/src/type-aliases/InMemoryCacheStoreOptions.md @@ -13,8 +13,12 @@ title: "InMemoryCacheStoreOptions" > `optional` **cleanupIntervalMs?**: `number` +Integer milliseconds from 1 through 2,147,483,647. Disabled by default. + *** ### maxEntries? > `optional` **maxEntries?**: `number` + +Positive safe integer. Defaults to 1000. diff --git a/packages/docs/src/content/docs/api/cache-core/src/variables/MAX_CACHE_ENTRIES.md b/packages/docs/src/content/docs/api/cache-core/src/variables/MAX_CACHE_ENTRIES.md new file mode 100644 index 000000000..f85c3c69a --- /dev/null +++ b/packages/docs/src/content/docs/api/cache-core/src/variables/MAX_CACHE_ENTRIES.md @@ -0,0 +1,10 @@ +--- +editUrl: false +next: false +prev: false +title: "MAX_CACHE_ENTRIES" +--- + +> `const` **MAX\_CACHE\_ENTRIES**: `number` = `Number.MAX_SAFE_INTEGER` + +Largest cache capacity that preserves exact integer eviction semantics. diff --git a/packages/docs/src/content/docs/api/cache-core/src/variables/MAX_CACHE_TIMER_DELAY_MS.md b/packages/docs/src/content/docs/api/cache-core/src/variables/MAX_CACHE_TIMER_DELAY_MS.md new file mode 100644 index 000000000..7e32ce73a --- /dev/null +++ b/packages/docs/src/content/docs/api/cache-core/src/variables/MAX_CACHE_TIMER_DELAY_MS.md @@ -0,0 +1,10 @@ +--- +editUrl: false +next: false +prev: false +title: "MAX_CACHE_TIMER_DELAY_MS" +--- + +> `const` **MAX\_CACHE\_TIMER\_DELAY\_MS**: `2147483647` = `2_147_483_647` + +Largest cleanup interval that Node.js timers accept without clamping. diff --git a/packages/docs/src/content/docs/api/problems-core/src/classes/Problem.md b/packages/docs/src/content/docs/api/problems-core/src/classes/Problem.md index d86c99d6c..474ad200b 100644 --- a/packages/docs/src/content/docs/api/problems-core/src/classes/Problem.md +++ b/packages/docs/src/content/docs/api/problems-core/src/classes/Problem.md @@ -140,6 +140,7 @@ RFC 7807 Problem Details를 표현하는 기본 추상 에러 클래스입니다 - [`CacheInvalidationGraphProblem`](/api/cache-core/src/classes/cacheinvalidationgraphproblem/) - [`UnknownCacheInvalidationEventProblem`](/api/cache-core/src/classes/unknowncacheinvalidationeventproblem/) - [`UnsupportedCacheInvalidationCapabilityProblem`](/api/cache-core/src/classes/unsupportedcacheinvalidationcapabilityproblem/) +- [`InvalidCacheConfigurationProblem`](/api/cache-core/src/classes/invalidcacheconfigurationproblem/) - [`InvalidCacheTtlProblem`](/api/cache-core/src/classes/invalidcachettlproblem/) - [`CreditAccountMismatchProblem`](/api/credits-core/src/classes/creditaccountmismatchproblem/) - [`CreditAccountNotFoundProblem`](/api/credits-core/src/classes/creditaccountnotfoundproblem/) diff --git a/packages/docs/src/content/docs/api/problems-core/src/variables/CROCO_PROBLEM_CODE_REGISTRY.md b/packages/docs/src/content/docs/api/problems-core/src/variables/CROCO_PROBLEM_CODE_REGISTRY.md index c9b179985..f6911fcd8 100644 --- a/packages/docs/src/content/docs/api/problems-core/src/variables/CROCO_PROBLEM_CODE_REGISTRY.md +++ b/packages/docs/src/content/docs/api/problems-core/src/variables/CROCO_PROBLEM_CODE_REGISTRY.md @@ -11,11 +11,11 @@ title: "CROCO_PROBLEM_CODE_REGISTRY" ### problemCount -> `readonly` **problemCount**: `584` = `584` +> `readonly` **problemCount**: `585` = `585` ### problems -> `readonly` **problems**: readonly \[\{ `category`: `"Forbidden"`; `code`: `"ACCESS_DENIED"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#access-denied"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The authenticated caller is not allowed to perform the requested action."`; `operatorAction`: `"Review policy, role, tenant, entitlement, and impersonation context."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Request the required permission or choose an allowed action."`; \}; `sources`: readonly \[\{ `column`: `15`; `file`: `"packages/transports-http/src/libs/PipelineRunner.ts"`; `kind`: `"problem-factory"`; `line`: `232`; \}\]; `status`: `403`; `title`: `"Forbidden"`; \}, \{ `category`: `"Forbidden"`; `code`: `"access-core/forbidden"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#access-core-forbidden"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The authenticated caller is not allowed to perform the requested action."`; `operatorAction`: `"Review policy, role, tenant, entitlement, and impersonation context."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Request the required permission or choose an allowed action."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/access-core/src/libs/guards/AccessGuard.ts"`; `kind`: `"problem-constructor"`; `line`: `17`; \}\]; `status`: `403`; `title`: `"Forbidden"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"ADMIN_LIFECYCLE_DEMO_INVARIANT"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#admin-lifecycle-demo-invariant"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/create-croco-app/templates/admin-console/apps/console-web/src/LifecycleAutomationDemo.tsx"`; `kind`: `"problem-constructor"`; `line`: `66`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"NotFound"`; `code`: `"admin-console/user-not-found"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#admin-console-user-not-found"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The requested resource or route-visible record does not exist."`; `operatorAction`: `"Confirm tenant scoping, data retention, and backing-store lookup behavior."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Verify the identifier and refresh the resource list before retrying."`; \}; `sources`: readonly \[\{ `column`: `79`; `file`: `"packages/create-croco-app/templates/admin-console/apps/api-server/src/controllers/adminSchemas.ts"`; `kind`: `"problem-metadata"`; `line`: `20`; \}\]; `status`: `404`; `title`: `"Not Found"`; \}, \{ `category`: `"Forbidden"`; `code`: `"admin-core/credit-operations-permission-denied"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#admin-core-credit-operations-permission-denied"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The authenticated caller is not allowed to perform the requested action."`; `operatorAction`: `"Review policy, role, tenant, entitlement, and impersonation context."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Request the required permission or choose an allowed action."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/create-croco-app/templates/admin-console/apps/api-server/src/controllers/adminSchemas.ts"`; `kind`: `"problem-metadata"`; `line`: `40`; \}\]; `status`: `403`; `title`: `"Forbidden"`; \}, \{ `category`: `"ValidationError"`; `code`: `"admin-core/credit-operations-validation-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#admin-core-credit-operations-validation-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/admin-core/src/libs/CreditOperations.ts"`; `kind`: `"problem-constructor"`; `line`: `286`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"ValidationError"`; `code`: `"admin-core/resource-validation-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#admin-core-resource-validation-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/admin-core/src/libs/AdminResource.ts"`; `kind`: `"problem-constructor"`; `line`: `79`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"ValidationError"`; `code`: `"admin-core/webhook-action-validation-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#admin-core-webhook-action-validation-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/admin-core/src/libs/WebhookOperations.ts"`; `kind`: `"problem-constructor"`; `line`: `187`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"ValidationError"`; `code`: `"admin-generated/contract-diagnostics"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#admin-generated-contract-diagnostics"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/admin-generated/src/libs/generate.ts"`; `kind`: `"problem-constructor"`; `line`: `55`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"NotFound"`; `code`: `"ai-saas/model-not-found"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#ai-saas-model-not-found"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The requested resource or route-visible record does not exist."`; `operatorAction`: `"Confirm tenant scoping, data retention, and backing-store lookup behavior."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Verify the identifier and refresh the resource list before retrying."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/create-croco-app/templates/ai-saas/apps/api-server/src/aiProblems.ts"`; `kind`: `"problem-class"`; `line`: `31`; \}\]; `status`: `404`; `title`: `"Not Found"`; \}, \{ `category`: `"ValidationError"`; `code`: `"ai-saas/model-required"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#ai-saas-model-required"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/create-croco-app/templates/ai-saas/apps/api-server/src/aiProblems.ts"`; `kind`: `"problem-class"`; `line`: `22`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"ai-saas/provider-unavailable"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#ai-saas-provider-unavailable"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/create-croco-app/templates/ai-saas/apps/api-server/src/aiProblems.ts"`; `kind`: `"problem-class"`; `line`: `62`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"TooManyRequests"`; `code`: `"ai-saas/quota-exceeded"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#ai-saas-quota-exceeded"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller exceeded a rate, quota, or concurrency limit."`; `operatorAction`: `"Check limiter state, quota configuration, and abuse signals."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Wait for the retry window or reduce request volume."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/create-croco-app/templates/ai-saas/apps/api-server/src/aiProblems.ts"`; `kind`: `"problem-class"`; `line`: `40`; \}\]; `status`: `429`; `title`: `"Too Many Requests"`; \}, \{ `category`: `"TooManyRequests"`; `code`: `"ai-saas/rate-limit-exceeded"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#ai-saas-rate-limit-exceeded"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller exceeded a rate, quota, or concurrency limit."`; `operatorAction`: `"Check limiter state, quota configuration, and abuse signals."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Wait for the retry window or reduce request volume."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/create-croco-app/templates/ai-saas/apps/api-server/src/aiProblems.ts"`; `kind`: `"problem-class"`; `line`: `53`; \}\]; `status`: `429`; `title`: `"Too Many Requests"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"ai-saas/smoke-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#ai-saas-smoke-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/create-croco-app/templates/ai-saas/apps/api-server/src/aiProblems.ts"`; `kind`: `"problem-class"`; `line`: `75`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"NotFound"`; `code`: `"ai-saas/tenant-not-found"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#ai-saas-tenant-not-found"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The requested resource or route-visible record does not exist."`; `operatorAction`: `"Confirm tenant scoping, data retention, and backing-store lookup behavior."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Verify the identifier and refresh the resource list before retrying."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/create-croco-app/templates/ai-saas/apps/api-server/src/aiProblems.ts"`; `kind`: `"problem-class"`; `line`: `13`; \}\]; `status`: `404`; `title`: `"Not Found"`; \}, \{ `category`: `"ValidationError"`; `code`: `"ai-saas/tenant-required"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#ai-saas-tenant-required"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/create-croco-app/templates/ai-saas/apps/api-server/src/aiProblems.ts"`; `kind`: `"problem-class"`; `line`: `4`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"Conflict"`; `code`: `"ALREADY_MEMBER"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#already-member"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request conflicts with current state or an idempotency constraint."`; `operatorAction`: `"Inspect concurrent writes, idempotency keys, and uniqueness constraints."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Refresh state, resolve the conflict, and retry with the updated intent."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/membership-core/src/libs/problems/MembershipProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `18`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"analytics-posthog/capture-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#analytics-posthog-capture-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/analytics-posthog/src/libs/problems/PostHogAnalyticsProblems.ts"`; `kind`: `"problem-class"`; `line`: `4`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"analytics-posthog/flush-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#analytics-posthog-flush-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/analytics-posthog/src/libs/problems/PostHogAnalyticsProblems.ts"`; `kind`: `"problem-class"`; `line`: `19`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"analytics-posthog/readiness-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#analytics-posthog-readiness-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/analytics-posthog/src/libs/problems/PostHogAnalyticsProblems.ts"`; `kind`: `"problem-class"`; `line`: `33`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"Unauthorized"`; `code`: `"API_KEY_EXPIRED"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#api-key-expired"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request did not include valid authentication credentials."`; `operatorAction`: `"Check authentication configuration, token issuer, and clock skew."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Sign in again or provide a valid credential."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/auth-core/src/libs/problems/AuthProblems.ts"`; `kind`: `"problem-class"`; `line`: `48`; \}\]; `status`: `401`; `title`: `"Unauthorized"`; \}, \{ `category`: `"NotFound"`; `code`: `"API_KEY_NOT_FOUND"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#api-key-not-found"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The requested resource or route-visible record does not exist."`; `operatorAction`: `"Confirm tenant scoping, data retention, and backing-store lookup behavior."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Verify the identifier and refresh the resource list before retrying."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/auth-core/src/libs/apikey/problems/ApiKeyNotFoundProblem.ts"`; `kind`: `"problem-class"`; `line`: `4`; \}\]; `status`: `404`; `title`: `"Not Found"`; \}, \{ `category`: `"Unauthorized"`; `code`: `"API_KEY_REVOKED"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#api-key-revoked"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request did not include valid authentication credentials."`; `operatorAction`: `"Check authentication configuration, token issuer, and clock skew."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Sign in again or provide a valid credential."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/auth-core/src/libs/problems/AuthProblems.ts"`; `kind`: `"problem-class"`; `line`: `56`; \}\]; `status`: `401`; `title`: `"Unauthorized"`; \}, \{ `category`: `"ValidationError"`; `code`: `"architecture-policy/manifest-json-parse"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#architecture-policy-manifest-json-parse"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/architecture-policy/src/index.ts"`; `kind`: `"problem-constructor"`; `line`: `19`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"ValidationError"`; `code`: `"architecture-policy/manifest-schema-version"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#architecture-policy-manifest-schema-version"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/architecture-policy/src/index.ts"`; `kind`: `"problem-constructor"`; `line`: `30`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"ValidationError"`; `code`: `"architecture-policy/manifest-shape"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#architecture-policy-manifest-shape"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/architecture-policy/src/index.ts"`; `kind`: `"problem-constructor"`; `line`: `9`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"ValidationError"`; `code`: `"architecture-policy/package-json-parse"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#architecture-policy-package-json-parse"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/architecture-policy/src/index.ts"`; `kind`: `"problem-constructor"`; `line`: `46`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"audit-core/auditable-decorator-misuse"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#audit-core-auditable-decorator-misuse"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/audit-core/src/libs/problems/AuditableDecoratorProblem.ts"`; `kind`: `"problem-class"`; `line`: `4`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"audit/insert-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#audit-insert-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `13`; `file`: `"packages/audit-drizzle/src/libs/DrizzleAuditLogRepository.ts"`; `kind`: `"problem-factory"`; `line`: `137`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"auth-better-auth/authentication-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#auth-better-auth-authentication-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/auth-better-auth/src/libs/problems/BetterAuthAuthenticationProblem.ts"`; `kind`: `"problem-class"`; `line`: `8`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"auth-better-auth/invalid-session-payload"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#auth-better-auth-invalid-session-payload"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/auth-better-auth/src/libs/problems/BetterAuthInvalidSessionProblem.ts"`; `kind`: `"problem-class"`; `line`: `7`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"BadRequest"`; `code`: `"auth-better-auth/invalid-webhook-payload"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#auth-better-auth-invalid-webhook-payload"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/auth-better-auth/src/libs/problems/WebhookProblems.ts"`; `kind`: `"problem-class"`; `line`: `23`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"Unauthorized"`; `code`: `"auth-better-auth/invalid-webhook-signature"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#auth-better-auth-invalid-webhook-signature"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request did not include valid authentication credentials."`; `operatorAction`: `"Check authentication configuration, token issuer, and clock skew."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Sign in again or provide a valid credential."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/auth-better-auth/src/libs/problems/WebhookProblems.ts"`; `kind`: `"problem-class"`; `line`: `7`; \}\]; `status`: `401`; `title`: `"Unauthorized"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"auth-better-auth/not-initialized"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#auth-better-auth-not-initialized"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/auth-better-auth/src/libs/problems/AuthProblems.ts"`; `kind`: `"problem-class"`; `line`: `7`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"auth-better-auth/session-lookup-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#auth-better-auth-session-lookup-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/auth-better-auth/src/libs/problems/BetterAuthSessionLookupProblem.ts"`; `kind`: `"problem-class"`; `line`: `7`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"NotFound"`; `code`: `"auth-better-auth/session-not-found"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#auth-better-auth-session-not-found"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The requested resource or route-visible record does not exist."`; `operatorAction`: `"Confirm tenant scoping, data retention, and backing-store lookup behavior."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Verify the identifier and refresh the resource list before retrying."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/auth-better-auth/src/libs/problems/AuthProblems.ts"`; `kind`: `"problem-class"`; `line`: `23`; \}\]; `status`: `404`; `title`: `"Not Found"`; \}, \{ `category`: `"NotFound"`; `code`: `"auth-better-auth/user-not-found"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#auth-better-auth-user-not-found"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The requested resource or route-visible record does not exist."`; `operatorAction`: `"Confirm tenant scoping, data retention, and backing-store lookup behavior."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Verify the identifier and refresh the resource list before retrying."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/auth-better-auth/src/libs/problems/AuthProblems.ts"`; `kind`: `"problem-class"`; `line`: `39`; \}\]; `status`: `404`; `title`: `"Not Found"`; \}, \{ `category`: `"Conflict"`; `code`: `"auth-clerk/duplicate-tenant-mapping"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#auth-clerk-duplicate-tenant-mapping"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request conflicts with current state or an idempotency constraint."`; `operatorAction`: `"Inspect concurrent writes, idempotency keys, and uniqueness constraints."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Refresh state, resolve the conflict, and retry with the updated intent."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/auth-clerk/src/libs/problems/ClerkProblems.ts"`; `kind`: `"problem-class"`; `line`: `94`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"auth-clerk/external-service-error"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#auth-clerk-external-service-error"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/auth-clerk/src/libs/problems/ClerkProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `121`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"ValidationError"`; `code`: `"auth-clerk/invalid-webhook-payload"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#auth-clerk-invalid-webhook-payload"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/auth-clerk/src/libs/problems/ClerkProblems.ts"`; `kind`: `"problem-class"`; `line`: `19`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"Unauthorized"`; `code`: `"auth-clerk/malformed-claim"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#auth-clerk-malformed-claim"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request did not include valid authentication credentials."`; `operatorAction`: `"Check authentication configuration, token issuer, and clock skew."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Sign in again or provide a valid credential."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/auth-clerk/src/libs/problems/ClerkProblems.ts"`; `kind`: `"problem-class"`; `line`: `83`; \}\]; `status`: `401`; `title`: `"Unauthorized"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"auth-clerk/public-user-data-missing"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#auth-clerk-public-user-data-missing"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/auth-clerk/src/libs/problems/ClerkProblems.ts"`; `kind`: `"problem-class"`; `line`: `109`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"Unauthorized"`; `code`: `"auth-clerk/token-verification-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#auth-clerk-token-verification-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request did not include valid authentication credentials."`; `operatorAction`: `"Check authentication configuration, token issuer, and clock skew."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Sign in again or provide a valid credential."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/auth-clerk/src/libs/problems/ClerkProblems.ts"`; `kind`: `"problem-class"`; `line`: `36`; \}\]; `status`: `401`; `title`: `"Unauthorized"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"auth-clerk/token-verification-upstream-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#auth-clerk-token-verification-upstream-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/auth-clerk/src/libs/problems/ClerkProblems.ts"`; `kind`: `"problem-class"`; `line`: `60`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"Unauthorized"`; `code`: `"auth-clerk/webhook-verification-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#auth-clerk-webhook-verification-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request did not include valid authentication credentials."`; `operatorAction`: `"Check authentication configuration, token issuer, and clock skew."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Sign in again or provide a valid credential."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/auth-clerk/src/libs/problems/ClerkProblems.ts"`; `kind`: `"problem-class"`; `line`: `8`; \}\]; `status`: `401`; `title`: `"Unauthorized"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"auth-core/api-key-creation-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#auth-core-api-key-creation-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/auth-core/src/libs/problems/AuthProblems.ts"`; `kind`: `"problem-class"`; `line`: `80`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"Conflict"`; `code`: `"auth-core/api-key-rotation-conflict"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#auth-core-api-key-rotation-conflict"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request conflicts with current state or an idempotency constraint."`; `operatorAction`: `"Inspect concurrent writes, idempotency keys, and uniqueness constraints."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Refresh state, resolve the conflict, and retry with the updated intent."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/auth-core/src/libs/problems/AuthProblems.ts"`; `kind`: `"problem-class"`; `line`: `88`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"auth-core/api-key-rotation-protection-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#auth-core-api-key-rotation-protection-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/auth-core/src/libs/apikey/ApiKeyRotationProtector.ts"`; `kind`: `"problem-constructor"`; `line`: `28`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"auth-core/auth-provider-unavailable"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#auth-core-auth-provider-unavailable"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/auth-core/src/libs/problems/AuthProblems.ts"`; `kind`: `"problem-class"`; `line`: `21`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"ValidationError"`; `code`: `"auth-core/invalid-api-key-rotation-idempotency-key"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#auth-core-invalid-api-key-rotation-idempotency-key"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/auth-core/src/libs/problems/AuthProblems.ts"`; `kind`: `"problem-class"`; `line`: `96`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"ValidationError"`; `code`: `"auth-core/invalid-permission-action"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#auth-core-invalid-permission-action"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/auth-core/src/libs/problems/AuthProblems.ts"`; `kind`: `"problem-class"`; `line`: `72`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"ValidationError"`; `code`: `"auth-core/invalid-permission-format"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#auth-core-invalid-permission-format"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/auth-core/src/libs/problems/AuthProblems.ts"`; `kind`: `"problem-class"`; `line`: `64`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"auth-core/invalid-route-metadata-target"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#auth-core-invalid-route-metadata-target"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"An authentication guard received a route metadata target that was neither an object nor a function."`; `operatorAction`: `"Inspect the route adapter metadata target and ensure it returns the controller object or constructor before handling requests."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Do not retry the unchanged request; ask the service operator to correct the route metadata configuration."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/auth-core/src/libs/problems/AuthProblems.ts"`; `kind`: `"problem-class"`; `line`: `35`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"BadRequest"`; `code`: `"BAD_REQUEST"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#bad-request"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/access-core/src/libs/guards/AccessGuard.ts"`; `kind`: `"problem-constructor"`; `line`: `11`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"BadRequest"`; `code`: `"batch-qstash/invalid-publish-request"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#batch-qstash-invalid-publish-request"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/batch-qstash/src/libs/problems/QStashBatchProblems.ts"`; `kind`: `"problem-class"`; `line`: `18`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"batch-qstash/missing-config"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#batch-qstash-missing-config"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/batch-qstash/src/libs/problems/QStashBatchProblems.ts"`; `kind`: `"problem-class"`; `line`: `4`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"BILLING_STATUS_MAPPING_FAILED"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#billing-status-mapping-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/billing-polar/src/libs/problems/BillingStatusMappingProblem.ts"`; `kind`: `"problem-class"`; `line`: `4`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"Conflict"`; `code`: `"billing-polar/checkout-idempotency-conflict"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#billing-polar-checkout-idempotency-conflict"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request conflicts with current state or an idempotency constraint."`; `operatorAction`: `"Inspect concurrent writes, idempotency keys, and uniqueness constraints."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Refresh state, resolve the conflict, and retry with the updated intent."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/billing-polar/src/libs/problems/PolarBillingProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `89`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"NotFound"`; `code`: `"billing-polar/customer-not-found"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#billing-polar-customer-not-found"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The requested resource or route-visible record does not exist."`; `operatorAction`: `"Confirm tenant scoping, data retention, and backing-store lookup behavior."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Verify the identifier and refresh the resource list before retrying."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/billing-polar/src/libs/problems/PolarBillingProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `107`; \}\]; `status`: `404`; `title`: `"Not Found"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"billing-polar/missing-config"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#billing-polar-missing-config"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/billing-polar/src/libs/problems/PolarBillingProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `18`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"billing-polar/retryable-upstream"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#billing-polar-retryable-upstream"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/billing-polar/src/libs/problems/PolarBillingProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `133`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"NotFound"`; `code`: `"billing-polar/subscription-not-found"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#billing-polar-subscription-not-found"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The requested resource or route-visible record does not exist."`; `operatorAction`: `"Confirm tenant scoping, data retention, and backing-store lookup behavior."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Verify the identifier and refresh the resource list before retrying."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/billing-polar/src/libs/problems/PolarBillingProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `120`; \}\]; `status`: `404`; `title`: `"Not Found"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"billing-polar/terminal-upstream"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#billing-polar-terminal-upstream"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/billing-polar/src/libs/problems/PolarBillingProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `149`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"NotFound"`; `code`: `"billing-polar/usage-customer-not-found"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#billing-polar-usage-customer-not-found"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The requested resource or route-visible record does not exist."`; `operatorAction`: `"Confirm tenant scoping, data retention, and backing-store lookup behavior."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Verify the identifier and refresh the resource list before retrying."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/billing-polar/src/libs/problems/PolarBillingProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `69`; \}\]; `status`: `404`; `title`: `"Not Found"`; \}, \{ `category`: `"ValidationError"`; `code`: `"billing-polar/usage-meter-mapping-not-found"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#billing-polar-usage-meter-mapping-not-found"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/billing-polar/src/libs/problems/PolarBillingProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `51`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"ValidationError"`; `code`: `"billing-polar/validation-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#billing-polar-validation-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/billing-polar/src/libs/problems/PolarBillingProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `38`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"NotFound"`; `code`: `"billing/account-not-found"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#billing-account-not-found"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The requested resource or route-visible record does not exist."`; `operatorAction`: `"Confirm tenant scoping, data retention, and backing-store lookup behavior."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Verify the identifier and refresh the resource list before retrying."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/billing-core/src/libs/problems/BillingProblems.ts"`; `kind`: `"problem-class"`; `line`: `32`; \}\]; `status`: `404`; `title`: `"Not Found"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"billing/checkout-creation-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#billing-checkout-creation-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/billing-core/src/libs/problems/BillingProblems.ts"`; `kind`: `"problem-class"`; `line`: `92`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"Conflict"`; `code`: `"billing/checkout-in-progress"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#billing-checkout-in-progress"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request conflicts with current state or an idempotency constraint."`; `operatorAction`: `"Inspect concurrent writes, idempotency keys, and uniqueness constraints."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Refresh state, resolve the conflict, and retry with the updated intent."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/billing-core/src/libs/problems/BillingProblems.ts"`; `kind`: `"problem-class"`; `line`: `100`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"BadRequest"`; `code`: `"billing/invalid-lifecycle-idempotency-key"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#billing-invalid-lifecycle-idempotency-key"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/billing-core/src/libs/problems/BillingProblems.ts"`; `kind`: `"problem-class"`; `line`: `80`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"BadRequest"`; `code`: `"billing/invalid-money-amount"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#billing-invalid-money-amount"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/billing-core/src/libs/problems/BillingProblems.ts"`; `kind`: `"problem-class"`; `line`: `113`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"BadRequest"`; `code`: `"billing/invalid-money-currency"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#billing-invalid-money-currency"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/billing-core/src/libs/problems/BillingProblems.ts"`; `kind`: `"problem-class"`; `line`: `121`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"BadRequest"`; `code`: `"billing/invalid-plan-release-schedule"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#billing-invalid-plan-release-schedule"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/billing-core/src/libs/problems/PlanReleaseProblems.ts"`; `kind`: `"problem-class"`; `line`: `69`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"BusinessRuleViolation"`; `code`: `"billing/invalid-plan-release-transition"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#billing-invalid-plan-release-transition"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request is syntactically valid but violates a domain rule."`; `operatorAction`: `"Review domain policy, entitlement, quota, and lifecycle rule evidence."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Change the workflow state or request values so the business rule is satisfied."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/billing-core/src/libs/problems/PlanReleaseProblems.ts"`; `kind`: `"problem-class"`; `line`: `21`; \}\]; `status`: `422`; `title`: `"Business Rule Violation"`; \}, \{ `category`: `"BadRequest"`; `code`: `"billing/invalid-plan-version-definition"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#billing-invalid-plan-version-definition"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/billing-core/src/libs/problems/BillingProblems.ts"`; `kind`: `"problem-class"`; `line`: `157`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"BadRequest"`; `code`: `"billing/invalid-plan-version-ref"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#billing-invalid-plan-version-ref"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/billing-core/src/libs/problems/BillingProblems.ts"`; `kind`: `"problem-class"`; `line`: `149`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"BadRequest"`; `code`: `"billing/invalid-subscription-quantity"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#billing-invalid-subscription-quantity"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/billing-core/src/libs/problems/BillingProblems.ts"`; `kind`: `"problem-class"`; `line`: `216`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"Conflict"`; `code`: `"billing/lifecycle-command-conflict"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#billing-lifecycle-command-conflict"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request conflicts with current state or an idempotency constraint."`; `operatorAction`: `"Inspect concurrent writes, idempotency keys, and uniqueness constraints."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Refresh state, resolve the conflict, and retry with the updated intent."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/billing-core/src/libs/problems/BillingProblems.ts"`; `kind`: `"problem-class"`; `line`: `48`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"Conflict"`; `code`: `"billing/lifecycle-command-in-progress"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#billing-lifecycle-command-in-progress"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request conflicts with current state or an idempotency constraint."`; `operatorAction`: `"Inspect concurrent writes, idempotency keys, and uniqueness constraints."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Refresh state, resolve the conflict, and retry with the updated intent."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/billing-core/src/libs/problems/BillingProblems.ts"`; `kind`: `"problem-class"`; `line`: `60`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"NotFound"`; `code`: `"billing/lifecycle-command-not-found"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#billing-lifecycle-command-not-found"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The requested resource or route-visible record does not exist."`; `operatorAction`: `"Confirm tenant scoping, data retention, and backing-store lookup behavior."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Verify the identifier and refresh the resource list before retrying."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/billing-core/src/libs/problems/BillingProblems.ts"`; `kind`: `"problem-class"`; `line`: `72`; \}\]; `status`: `404`; `title`: `"Not Found"`; \}, \{ `category`: `"BusinessRuleViolation"`; `code`: `"billing/money-currency-mismatch"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#billing-money-currency-mismatch"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request is syntactically valid but violates a domain rule."`; `operatorAction`: `"Review domain policy, entitlement, quota, and lifecycle rule evidence."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Change the workflow state or request values so the business rule is satisfied."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/billing-core/src/libs/problems/BillingProblems.ts"`; `kind`: `"problem-class"`; `line`: `129`; \}\]; `status`: `422`; `title`: `"Business Rule Violation"`; \}, \{ `category`: `"BadRequest"`; `code`: `"billing/money-division-by-zero"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#billing-money-division-by-zero"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/billing-core/src/libs/problems/BillingProblems.ts"`; `kind`: `"problem-class"`; `line`: `141`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"Conflict"`; `code`: `"billing/overlapping-plan-effective-period"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#billing-overlapping-plan-effective-period"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request conflicts with current state or an idempotency constraint."`; `operatorAction`: `"Inspect concurrent writes, idempotency keys, and uniqueness constraints."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Refresh state, resolve the conflict, and retry with the updated intent."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/billing-core/src/libs/problems/PlanReleaseProblems.ts"`; `kind`: `"problem-class"`; `line`: `34`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"ValidationError"`; `code`: `"billing/plan-release-provider-capability-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#billing-plan-release-provider-capability-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/billing-core/src/libs/problems/PlanReleaseProblems.ts"`; `kind`: `"problem-class"`; `line`: `58`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"Conflict"`; `code`: `"billing/plan-release-publish-conflict"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#billing-plan-release-publish-conflict"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request conflicts with current state or an idempotency constraint."`; `operatorAction`: `"Inspect concurrent writes, idempotency keys, and uniqueness constraints."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Refresh state, resolve the conflict, and retry with the updated intent."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/billing-core/src/libs/problems/PlanReleaseProblems.ts"`; `kind`: `"problem-class"`; `line`: `78`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"ValidationError"`; `code`: `"billing/plan-release-validation-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#billing-plan-release-validation-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/billing-core/src/libs/problems/PlanReleaseProblems.ts"`; `kind`: `"problem-class"`; `line`: `47`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"Conflict"`; `code`: `"billing/plan-version-already-published"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#billing-plan-version-already-published"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request conflicts with current state or an idempotency constraint."`; `operatorAction`: `"Inspect concurrent writes, idempotency keys, and uniqueness constraints."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Refresh state, resolve the conflict, and retry with the updated intent."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/billing-core/src/libs/problems/BillingProblems.ts"`; `kind`: `"problem-class"`; `line`: `165`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"Conflict"`; `code`: `"billing/plan-version-conflict"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#billing-plan-version-conflict"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request conflicts with current state or an idempotency constraint."`; `operatorAction`: `"Inspect concurrent writes, idempotency keys, and uniqueness constraints."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Refresh state, resolve the conflict, and retry with the updated intent."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/billing-core/src/libs/problems/BillingProblems.ts"`; `kind`: `"problem-class"`; `line`: `173`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"NotImplemented"`; `code`: `"billing/provider-capability-unavailable"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#billing-provider-capability-unavailable"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The requested capability is not supported by this runtime or adapter."`; `operatorAction`: `"Check runtime capability declarations and provider maturity documentation."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Use a supported capability or choose an adapter/runtime that provides it."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/billing-core/src/libs/problems/BillingProblems.ts"`; `kind`: `"problem-class"`; `line`: `6`; \}\]; `status`: `501`; `title`: `"Not Implemented"`; \}, \{ `category`: `"Conflict"`; `code`: `"billing/stale-plan-release-revision"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#billing-stale-plan-release-revision"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request conflicts with current state or an idempotency constraint."`; `operatorAction`: `"Inspect concurrent writes, idempotency keys, and uniqueness constraints."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Refresh state, resolve the conflict, and retry with the updated intent."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/billing-core/src/libs/problems/PlanReleaseProblems.ts"`; `kind`: `"problem-class"`; `line`: `7`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"NotFound"`; `code`: `"billing/subscription-not-found"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#billing-subscription-not-found"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The requested resource or route-visible record does not exist."`; `operatorAction`: `"Confirm tenant scoping, data retention, and backing-store lookup behavior."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Verify the identifier and refresh the resource list before retrying."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/billing-core/src/libs/problems/BillingProblems.ts"`; `kind`: `"problem-class"`; `line`: `24`; \}\]; `status`: `404`; `title`: `"Not Found"`; \}, \{ `category`: `"BusinessRuleViolation"`; `code`: `"billing/subscription-plan-version-mismatch"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#billing-subscription-plan-version-mismatch"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request is syntactically valid but violates a domain rule."`; `operatorAction`: `"Review domain policy, entitlement, quota, and lifecycle rule evidence."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Change the workflow state or request values so the business rule is satisfied."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/billing-core/src/libs/problems/BillingProblems.ts"`; `kind`: `"problem-class"`; `line`: `203`; \}\]; `status`: `422`; `title`: `"Business Rule Violation"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"billing/subscription-quantity-provider-mismatch"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#billing-subscription-quantity-provider-mismatch"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/billing-core/src/libs/problems/BillingProblems.ts"`; `kind`: `"problem-class"`; `line`: `262`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"Conflict"`; `code`: `"billing/subscription-quantity-provider-source-ahead"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#billing-subscription-quantity-provider-source-ahead"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request conflicts with current state or an idempotency constraint."`; `operatorAction`: `"Inspect concurrent writes, idempotency keys, and uniqueness constraints."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Refresh state, resolve the conflict, and retry with the updated intent."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/billing-core/src/libs/problems/BillingProblems.ts"`; `kind`: `"problem-class"`; `line`: `275`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"Conflict"`; `code`: `"billing/subscription-quantity-reconciliation-conflict"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#billing-subscription-quantity-reconciliation-conflict"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request conflicts with current state or an idempotency constraint."`; `operatorAction`: `"Inspect concurrent writes, idempotency keys, and uniqueness constraints."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Refresh state, resolve the conflict, and retry with the updated intent."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/billing-core/src/libs/problems/BillingProblems.ts"`; `kind`: `"problem-class"`; `line`: `241`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"billing/subscription-quantity-reconciliation-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#billing-subscription-quantity-reconciliation-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/billing-core/src/libs/problems/BillingProblems.ts"`; `kind`: `"problem-class"`; `line`: `251`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"Conflict"`; `code`: `"billing/subscription-quantity-source-mismatch"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#billing-subscription-quantity-source-mismatch"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request conflicts with current state or an idempotency constraint."`; `operatorAction`: `"Inspect concurrent writes, idempotency keys, and uniqueness constraints."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Refresh state, resolve the conflict, and retry with the updated intent."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/billing-core/src/libs/problems/BillingProblems.ts"`; `kind`: `"problem-class"`; `line`: `224`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"NotFound"`; `code`: `"billing/unknown-plan-version"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#billing-unknown-plan-version"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The requested resource or route-visible record does not exist."`; `operatorAction`: `"Confirm tenant scoping, data retention, and backing-store lookup behavior."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Verify the identifier and refresh the resource list before retrying."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/billing-core/src/libs/problems/BillingProblems.ts"`; `kind`: `"problem-class"`; `line`: `181`; \}\]; `status`: `404`; `title`: `"Not Found"`; \}, \{ `category`: `"NotFound"`; `code`: `"billing/unknown-provider-plan-mapping"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#billing-unknown-provider-plan-mapping"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The requested resource or route-visible record does not exist."`; `operatorAction`: `"Confirm tenant scoping, data retention, and backing-store lookup behavior."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Verify the identifier and refresh the resource list before retrying."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/billing-core/src/libs/problems/BillingProblems.ts"`; `kind`: `"problem-class"`; `line`: `189`; \}\]; `status`: `404`; `title`: `"Not Found"`; \}, \{ `category`: `"Conflict"`; `code`: `"billing/webhook-already-processed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#billing-webhook-already-processed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request conflicts with current state or an idempotency constraint."`; `operatorAction`: `"Inspect concurrent writes, idempotency keys, and uniqueness constraints."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Refresh state, resolve the conflict, and retry with the updated intent."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/billing-core/src/libs/problems/BillingProblems.ts"`; `kind`: `"problem-class"`; `line`: `40`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"Forbidden"`; `code`: `"BLOCKED_DURING_IMPERSONATION"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#blocked-during-impersonation"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The authenticated caller is not allowed to perform the requested action."`; `operatorAction`: `"Review policy, role, tenant, entitlement, and impersonation context."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Request the required permission or choose an allowed action."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/impersonation-core/src/libs/problems/ImpersonationProblems.ts"`; `kind`: `"problem-class"`; `line`: `49`; \}\]; `status`: `403`; `title`: `"Forbidden"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"cache-core/invalid-decorator-config"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#cache-core-invalid-decorator-config"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/cache-core/src/libs/problems/CacheDecoratorProblems.ts"`; `kind`: `"problem-class"`; `line`: `12`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"ValidationError"`; `code`: `"cache-core/invalid-ttl"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#cache-core-invalid-ttl"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/cache-core/src/libs/problems/CacheStoreProblems.ts"`; `kind`: `"problem-class"`; `line`: `7`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"cache-core/invalidation-assertion-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#cache-core-invalidation-assertion-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/cache-core/src/libs/problems/CacheDecoratorProblems.ts"`; `kind`: `"problem-class"`; `line`: `102`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"cache-core/invalidation-capability-unsupported"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#cache-core-invalidation-capability-unsupported"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/cache-core/src/libs/problems/CacheDecoratorProblems.ts"`; `kind`: `"problem-class"`; `line`: `55`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"ValidationError"`; `code`: `"cache-core/invalidation-event-unknown"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#cache-core-invalidation-event-unknown"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/cache-core/src/libs/problems/CacheDecoratorProblems.ts"`; `kind`: `"problem-class"`; `line`: `41`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"cache-core/invalidation-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#cache-core-invalidation-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/cache-core/src/libs/problems/CacheDecoratorProblems.ts"`; `kind`: `"problem-class"`; `line`: `72`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"ValidationError"`; `code`: `"cache-core/invalidation-graph-invalid"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#cache-core-invalidation-graph-invalid"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/cache-core/src/libs/problems/CacheDecoratorProblems.ts"`; `kind`: `"problem-class"`; `line`: `27`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"TooManyRequests"`; `code`: `"CIRCUIT_BREAKER_OPEN"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#circuit-breaker-open"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller exceeded a rate, quota, or concurrency limit."`; `operatorAction`: `"Check limiter state, quota configuration, and abuse signals."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Wait for the retry window or reduce request volume."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/retry-core/src/libs/errors/CircuitBreakerOpenProblem.ts"`; `kind`: `"problem-class"`; `line`: `7`; \}\]; `status`: `429`; `title`: `"Too Many Requests"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"cloudflare/images-invalid-ttl"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#cloudflare-images-invalid-ttl"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `13`; `file`: `"packages/storage-cloudflare/src/libs/CloudflareImagesProvider.ts"`; `kind`: `"problem-factory"`; `line`: `55`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"cloudflare/images-null-result"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#cloudflare-images-null-result"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `13`; `file`: `"packages/storage-cloudflare/src/libs/CloudflareImagesProvider.ts"`; `kind`: `"problem-factory"`; `line`: `278`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"cloudflare/images-upload-intent-null-result"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#cloudflare-images-upload-intent-null-result"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `13`; `file`: `"packages/storage-cloudflare/src/libs/CloudflareImagesProvider.ts"`; `kind`: `"problem-factory"`; `line`: `354`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"BadRequest"`; `code`: `"CONFLICTING_PAGINATION"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#conflicting-pagination"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/pagination-core/src/libs/problems.ts"`; `kind`: `"problem-class"`; `line`: `17`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"ValidationError"`; `code`: `"create-croco-app/directory-not-empty"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#create-croco-app-directory-not-empty"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/create-croco-app/src/libs/problems/DirectoryNotEmptyProblem.ts"`; `kind`: `"problem-class"`; `line`: `4`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"ValidationError"`; `code`: `"create-croco-app/invalid-cli-option"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#create-croco-app-invalid-cli-option"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/create-croco-app/src/libs/problems/InvalidCliOptionProblem.ts"`; `kind`: `"problem-class"`; `line`: `4`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"ValidationError"`; `code`: `"create-croco-app/invalid-goal-option"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#create-croco-app-invalid-goal-option"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/create-croco-app/src/libs/problems/InvalidGoalOptionProblem.ts"`; `kind`: `"problem-class"`; `line`: `5`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"ValidationError"`; `code`: `"create-croco-app/invalid-saas-preset-option"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#create-croco-app-invalid-saas-preset-option"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/create-croco-app/src/libs/problems/InvalidSaasPresetOptionProblem.ts"`; `kind`: `"problem-class"`; `line`: `4`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"create-croco-app/lambda-telemetry-boundary"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#create-croco-app-lambda-telemetry-boundary"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/create-croco-app/templates/addons/lambda/apps/graphql-api/src/telemetryFlush.ts"`; `kind`: `"problem-class"`; `line`: `10`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"create-croco-app/unexpected-failure"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#create-croco-app-unexpected-failure"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/create-croco-app/src/cli-result.ts"`; `kind`: `"problem-class"`; `line`: `28`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"ValidationError"`; `code`: `"create-croco-app/unsupported-node-version"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#create-croco-app-unsupported-node-version"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The detected Node.js version is outside the supported generated-app toolchain train."`; `operatorAction`: `"Compare the reported actual Node.js version with the supported Node.js 22 train and verify the active version-manager configuration."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `` "Install and activate Node.js 22 with `nvm install 22 && nvm use 22`, then rerun the command." ``; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/create-croco-app/src/libs/problems/UnsupportedNodeVersionProblem.ts"`; `kind`: `"problem-class"`; `line`: `4`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"ValidationError"`; `code`: `"create-croco-app/web-meta-vite-fullstack-missing-hydration-root"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#create-croco-app-web-meta-vite-fullstack-missing-hydration-root"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/create-croco-app/templates/addons/web-meta-vite-fullstack/ssr-worker/src/client.tsx"`; `kind`: `"problem-constructor"`; `line`: `11`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"ValidationError"`; `code`: `"create-croco-app/web-meta-vite-missing-hydration-root"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#create-croco-app-web-meta-vite-missing-hydration-root"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/create-croco-app/templates/addons/web-meta-vite/src/client.tsx"`; `kind`: `"problem-constructor"`; `line`: `11`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"Conflict"`; `code`: `"credits-core/account-mismatch"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#credits-core-account-mismatch"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request conflicts with current state or an idempotency constraint."`; `operatorAction`: `"Inspect concurrent writes, idempotency keys, and uniqueness constraints."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Refresh state, resolve the conflict, and retry with the updated intent."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/credits-core/src/libs/problems.ts"`; `kind`: `"problem-class"`; `line`: `81`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"NotFound"`; `code`: `"credits-core/account-not-found"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#credits-core-account-not-found"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The requested resource or route-visible record does not exist."`; `operatorAction`: `"Confirm tenant scoping, data retention, and backing-store lookup behavior."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Verify the identifier and refresh the resource list before retrying."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/credits-core/src/libs/problems.ts"`; `kind`: `"problem-class"`; `line`: `15`; \}\]; `status`: `404`; `title`: `"Not Found"`; \}, \{ `category`: `"Conflict"`; `code`: `"credits-core/duplicate-conflict"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#credits-core-duplicate-conflict"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request conflicts with current state or an idempotency constraint."`; `operatorAction`: `"Inspect concurrent writes, idempotency keys, and uniqueness constraints."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Refresh state, resolve the conflict, and retry with the updated intent."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/credits-core/src/libs/problems.ts"`; `kind`: `"problem-class"`; `line`: `67`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"credits-core/event-publication-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#credits-core-event-publication-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/credits-core/src/libs/problems.ts"`; `kind`: `"problem-class"`; `line`: `143`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"BusinessRuleViolation"`; `code`: `"credits-core/expired-grant"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#credits-core-expired-grant"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request is syntactically valid but violates a domain rule."`; `operatorAction`: `"Review domain policy, entitlement, quota, and lifecycle rule evidence."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Change the workflow state or request values so the business rule is satisfied."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/credits-core/src/libs/problems.ts"`; `kind`: `"problem-class"`; `line`: `39`; \}\]; `status`: `422`; `title`: `"Business Rule Violation"`; \}, \{ `category`: `"BusinessRuleViolation"`; `code`: `"credits-core/insufficient-credits"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#credits-core-insufficient-credits"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request is syntactically valid but violates a domain rule."`; `operatorAction`: `"Review domain policy, entitlement, quota, and lifecycle rule evidence."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Change the workflow state or request values so the business rule is satisfied."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/credits-core/src/libs/problems.ts"`; `kind`: `"problem-class"`; `line`: `25`; \}\]; `status`: `422`; `title`: `"Business Rule Violation"`; \}, \{ `category`: `"ValidationError"`; `code`: `"credits-core/invalid-amount"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#credits-core-invalid-amount"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/credits-core/src/libs/problems.ts"`; `kind`: `"problem-class"`; `line`: `5`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"ValidationError"`; `code`: `"credits-core/invalid-command"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#credits-core-invalid-command"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/credits-core/src/libs/problems.ts"`; `kind`: `"problem-class"`; `line`: `109`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"BusinessRuleViolation"`; `code`: `"credits-core/refund-mismatch"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#credits-core-refund-mismatch"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request is syntactically valid but violates a domain rule."`; `operatorAction`: `"Review domain policy, entitlement, quota, and lifecycle rule evidence."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Change the workflow state or request values so the business rule is satisfied."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/credits-core/src/libs/problems.ts"`; `kind`: `"problem-class"`; `line`: `129`; \}\]; `status`: `422`; `title`: `"Business Rule Violation"`; \}, \{ `category`: `"BusinessRuleViolation"`; `code`: `"credits-core/reservation-mismatch"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#credits-core-reservation-mismatch"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request is syntactically valid but violates a domain rule."`; `operatorAction`: `"Review domain policy, entitlement, quota, and lifecycle rule evidence."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Change the workflow state or request values so the business rule is satisfied."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/credits-core/src/libs/problems.ts"`; `kind`: `"problem-class"`; `line`: `53`; \}\]; `status`: `422`; `title`: `"Business Rule Violation"`; \}, \{ `category`: `"Conflict"`; `code`: `"credits-core/stale-ledger-position"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#credits-core-stale-ledger-position"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request conflicts with current state or an idempotency constraint."`; `operatorAction`: `"Inspect concurrent writes, idempotency keys, and uniqueness constraints."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Refresh state, resolve the conflict, and retry with the updated intent."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/credits-core/src/libs/problems.ts"`; `kind`: `"problem-class"`; `line`: `95`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"NotFound"`; `code`: `"credits-core/transaction-not-found"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#credits-core-transaction-not-found"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The requested resource or route-visible record does not exist."`; `operatorAction`: `"Confirm tenant scoping, data retention, and backing-store lookup behavior."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Verify the identifier and refresh the resource list before retrying."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/credits-core/src/libs/problems.ts"`; `kind`: `"problem-class"`; `line`: `119`; \}\]; `status`: `404`; `title`: `"Not Found"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"credits-drizzle/persistence-failure"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#credits-drizzle-persistence-failure"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/credits-drizzle/src/libs/problems.ts"`; `kind`: `"problem-class"`; `line`: `5`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"BadRequest"`; `code`: `"CROCO_CLI_JOBS_001"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#croco-cli-jobs-001"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/cli/src/commands/jobs.ts"`; `kind`: `"problem-constructor"`; `line`: `88`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"BadRequest"`; `code`: `"CROCO_CLI_JOBS_002"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#croco-cli-jobs-002"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/cli/src/commands/jobs.ts"`; `kind`: `"problem-constructor"`; `line`: `99`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"BadRequest"`; `code`: `"CROCO_CLI_JOBS_003"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#croco-cli-jobs-003"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/cli/src/commands/jobs.ts"`; `kind`: `"problem-constructor"`; `line`: `110`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"Conflict"`; `code`: `"CROCO_CLI_JOBS_004"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#croco-cli-jobs-004"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request conflicts with current state or an idempotency constraint."`; `operatorAction`: `"Inspect concurrent writes, idempotency keys, and uniqueness constraints."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Refresh state, resolve the conflict, and retry with the updated intent."`; \}; `sources`: readonly \[\{ `column`: `49`; `file`: `"packages/cli/src/commands/jobs.ts"`; `kind`: `"problem-metadata"`; `line`: `137`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"NotFound"`; `code`: `"CROCO_CLI_JOBS_005"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#croco-cli-jobs-005"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The requested resource or route-visible record does not exist."`; `operatorAction`: `"Confirm tenant scoping, data retention, and backing-store lookup behavior."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Verify the identifier and refresh the resource list before retrying."`; \}; `sources`: readonly \[\{ `column`: `63`; `file`: `"packages/cli/src/commands/jobs.ts"`; `kind`: `"problem-metadata"`; `line`: `132`; \}\]; `status`: `404`; `title`: `"Not Found"`; \}, \{ `category`: `"BadRequest"`; `code`: `"CROCO_CLI_OPS_001"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#croco-cli-ops-001"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/cli/src/libs/ops.ts"`; `kind`: `"problem-constructor"`; `line`: `66`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"BadRequest"`; `code`: `"CROCO_CLI_OPS_002"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#croco-cli-ops-002"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/cli/src/libs/ops.ts"`; `kind`: `"problem-constructor"`; `line`: `55`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"BadRequest"`; `code`: `"CROCO_CLI_USAGE_DASHBOARD_005"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#croco-cli-usage-dashboard-005"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/cli/src/commands/generateUsageDashboard.ts"`; `kind`: `"problem-constructor"`; `line`: `24`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"CROCO_HTTP_MIDDLEWARE_001"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#croco-http-middleware-001"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"HTTP middleware returned without a Response, without shortCircuit(reason), and without calling next() exactly once."`; `operatorAction`: `"Update the named @croco/transports-http middleware to return next(), await next() once, return a Response, or return shortCircuit(reason) for intentional termination."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry only after the service owner ships a middleware contract fix."`; \}; `sources`: readonly \[\{ `column`: `12`; `file`: `"packages/transports-http/src/libs/CrocoRouteRegistrar.ts"`; `kind`: `"problem-factory"`; `line`: `367`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"CROCO_HTTP_MIDDLEWARE_002"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#croco-http-middleware-002"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"HTTP middleware attempted to resume the downstream pipeline more than once."`; `operatorAction`: `"Store the Response from a single next() call and reuse or transform it instead of calling next() again."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry only after the service owner ships a middleware contract fix."`; \}; `sources`: readonly \[\{ `column`: `15`; `file`: `"packages/transports-http/src/libs/CrocoRouteRegistrar.ts"`; `kind`: `"problem-factory"`; `line`: `272`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"CROCO_HTTP_SECURITY_001"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#croco-http-security-001"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"HTTP bootstrap validation found a generated or application app without the required security middleware set."`; `operatorAction`: `"Add the missing @croco/transports-http middleware or keep securityValidation disabled only in an explicit local migration/testing fixture."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Use an app build that registers security headers, CORS, body limit, and rate-limit middleware before first run."`; \}; `sources`: readonly \[\{ `column`: `11`; `file`: `"packages/transports-http/src/libs/CrocoApp.ts"`; `kind`: `"problem-factory"`; `line`: `278`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"BadRequest"`; `code`: `"CROCO_HTTP_SECURITY_002"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#croco-http-security-002"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `11`; `file`: `"packages/transports-http/src/libs/middleware/SecurityMiddlewareMarker.ts"`; `kind`: `"problem-factory"`; `line`: `154`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"ValidationError"`; `code`: `"CROCO_TEST_EVIDENCE_CONTRACT_INVALID"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#croco-test-evidence-contract-invalid"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/testing/src/libs/test-evidence.mts"`; `kind`: `"problem-constructor"`; `line`: `159`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"ValidationError"`; `code`: `"CROCO_TEST_EVIDENCE_FIDELITY_UNSATISFIED"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#croco-test-evidence-fidelity-unsatisfied"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/testing/src/libs/test-evidence.mts"`; `kind`: `"problem-constructor"`; `line`: `173`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"dataloader-core/batch-result-length-mismatch"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#dataloader-core-batch-result-length-mismatch"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/dataloader-core/src/libs/problems/BatchLoaderProblems.ts"`; `kind`: `"problem-class"`; `line`: `4`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"diagnostics-core/duplicate-provider"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#diagnostics-core-duplicate-provider"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/diagnostics-core/src/libs/problems/DiagnosticsProblems.ts"`; `kind`: `"problem-class"`; `line`: `25`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"ValidationError"`; `code`: `"diagnostics-core/invalid-timeout"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#diagnostics-core-invalid-timeout"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/diagnostics-core/src/libs/problems/DiagnosticsProblems.ts"`; `kind`: `"problem-class"`; `line`: `9`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"Conflict"`; `code`: `"DUPLICATE_INVITATION"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#duplicate-invitation"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request conflicts with current state or an idempotency constraint."`; `operatorAction`: `"Inspect concurrent writes, idempotency keys, and uniqueness constraints."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Refresh state, resolve the conflict, and retry with the updated intent."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/invitation-core/src/libs/problems/RateLimitProblems.ts"`; `kind`: `"problem-class"`; `line`: `13`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"DUPLICATE_RECOVER_HANDLER"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#duplicate-recover-handler"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/retry-core/src/libs/errors/DuplicateRecoverHandlerProblem.ts"`; `kind`: `"problem-class"`; `line`: `7`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"BadRequest"`; `code`: `"DURATION_PARSE_ERROR"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#duration-parse-error"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/framework-context/src/libs/problems/ContextProblems.ts"`; `kind`: `"problem-class"`; `line`: `15`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"EMBEDDING_ERROR"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#embedding-error"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/llm-core/src/libs/problems/LlmServiceProblem.ts"`; `kind`: `"problem-constructor"`; `line`: `43`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"Forbidden"`; `code`: `"ENTITLEMENT_DENIED"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#entitlement-denied"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The authenticated caller is not allowed to perform the requested action."`; `operatorAction`: `"Review policy, role, tenant, entitlement, and impersonation context."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Request the required permission or choose an allowed action."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/entitlements-core/src/libs/problems/EntitlementProblems.ts"`; `kind`: `"problem-class"`; `line`: `20`; \}\]; `status`: `403`; `title`: `"Forbidden"`; \}, \{ `category`: `"Forbidden"`; `code`: `"ENTITLEMENT_INACTIVE_SUBSCRIPTION"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#entitlement-inactive-subscription"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The authenticated caller is not allowed to perform the requested action."`; `operatorAction`: `"Review policy, role, tenant, entitlement, and impersonation context."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Request the required permission or choose an allowed action."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/entitlements-core/src/libs/problems/EntitlementProblems.ts"`; `kind`: `"problem-class"`; `line`: `46`; \}\]; `status`: `403`; `title`: `"Forbidden"`; \}, \{ `category`: `"Forbidden"`; `code`: `"ENTITLEMENT_MISSING_PLAN"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#entitlement-missing-plan"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The authenticated caller is not allowed to perform the requested action."`; `operatorAction`: `"Review policy, role, tenant, entitlement, and impersonation context."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Request the required permission or choose an allowed action."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/entitlements-core/src/libs/problems/EntitlementProblems.ts"`; `kind`: `"problem-class"`; `line`: `32`; \}\]; `status`: `403`; `title`: `"Forbidden"`; \}, \{ `category`: `"NotFound"`; `code`: `"ENTITLEMENT_NOT_FOUND"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#entitlement-not-found"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The requested resource or route-visible record does not exist."`; `operatorAction`: `"Confirm tenant scoping, data retention, and backing-store lookup behavior."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Verify the identifier and refresh the resource list before retrying."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/entitlements-core/src/libs/problems/EntitlementProblems.ts"`; `kind`: `"problem-class"`; `line`: `86`; \}\]; `status`: `404`; `title`: `"Not Found"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"ENTITLEMENT_PROVIDER_UNAVAILABLE"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#entitlement-provider-unavailable"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/entitlements-core/src/libs/problems/EntitlementProblems.ts"`; `kind`: `"problem-class"`; `line`: `74`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"TooManyRequests"`; `code`: `"ENTITLEMENT_QUOTA_EXCEEDED"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#entitlement-quota-exceeded"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller exceeded a rate, quota, or concurrency limit."`; `operatorAction`: `"Check limiter state, quota configuration, and abuse signals."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Wait for the retry window or reduce request volume."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/entitlements-core/src/libs/problems/EntitlementProblems.ts"`; `kind`: `"problem-class"`; `line`: `60`; \}\]; `status`: `429`; `title`: `"Too Many Requests"`; \}, \{ `category`: `"ValidationError"`; `code`: `"ENTITLEMENT_REQUIREMENT_INVALID"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#entitlement-requirement-invalid"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/entitlements-core/src/libs/problems/EntitlementProblems.ts"`; `kind`: `"problem-class"`; `line`: `11`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"ValidationError"`; `code`: `"entitlements-core/definition-invalid"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#entitlements-core-definition-invalid"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/entitlements-core/src/libs/problems/EntitlementProblems.ts"`; `kind`: `"problem-class"`; `line`: `95`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"Conflict"`; `code`: `"entitlements-core/plan-version-already-registered"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#entitlements-core-plan-version-already-registered"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request conflicts with current state or an idempotency constraint."`; `operatorAction`: `"Inspect concurrent writes, idempotency keys, and uniqueness constraints."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Refresh state, resolve the conflict, and retry with the updated intent."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/entitlements-core/src/libs/problems/EntitlementProblems.ts"`; `kind`: `"problem-class"`; `line`: `113`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"Conflict"`; `code`: `"entitlements-core/plan-version-mismatch"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#entitlements-core-plan-version-mismatch"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request conflicts with current state or an idempotency constraint."`; `operatorAction`: `"Inspect concurrent writes, idempotency keys, and uniqueness constraints."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Refresh state, resolve the conflict, and retry with the updated intent."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/entitlements-core/src/libs/problems/EntitlementProblems.ts"`; `kind`: `"problem-class"`; `line`: `122`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"NotFound"`; `code`: `"entitlements-core/plan-version-not-found"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#entitlements-core-plan-version-not-found"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The requested resource or route-visible record does not exist."`; `operatorAction`: `"Confirm tenant scoping, data retention, and backing-store lookup behavior."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Verify the identifier and refresh the resource list before retrying."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/entitlements-core/src/libs/problems/EntitlementProblems.ts"`; `kind`: `"problem-class"`; `line`: `104`; \}\]; `status`: `404`; `title`: `"Not Found"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"events-core/after-commit-outcome-required"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#events-core-after-commit-outcome-required"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/events-core/src/libs/problems/EventsProblems.ts"`; `kind`: `"problem-class"`; `line`: `107`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"events-core/after-commit-requires-active-transaction"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#events-core-after-commit-requires-active-transaction"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/events-core/src/libs/problems/EventsProblems.ts"`; `kind`: `"problem-class"`; `line`: `96`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"events-core/deserialization-error"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#events-core-deserialization-error"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/events-core/src/libs/problems/EventsProblems.ts"`; `kind`: `"problem-class"`; `line`: `40`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"events-core/duplicate-event-field"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#events-core-duplicate-event-field"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/events-core/src/libs/problems/EventsProblems.ts"`; `kind`: `"problem-class"`; `line`: `51`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"events-core/duplicate-event-name"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#events-core-duplicate-event-name"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/events-core/src/libs/problems/EventsProblems.ts"`; `kind`: `"problem-class"`; `line`: `66`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"events-core/event-bus-not-set"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#events-core-event-bus-not-set"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/events-core/src/libs/problems/EventsProblems.ts"`; `kind`: `"problem-class"`; `line`: `7`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"events-core/event-definition-error"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#events-core-event-definition-error"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/events-core/src/libs/problems/EventsProblems.ts"`; `kind`: `"problem-class"`; `line`: `18`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"events-core/transaction-context-unavailable"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#events-core-transaction-context-unavailable"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/events-core/src/libs/problems/EventsProblems.ts"`; `kind`: `"problem-class"`; `line`: `81`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"events-core/unknown-event-type"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#events-core-unknown-event-type"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/events-core/src/libs/problems/EventsProblems.ts"`; `kind`: `"problem-class"`; `line`: `29`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"TooManyRequests"`; `code`: `"events-inmemory/backpressure-exceeded"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#events-inmemory-backpressure-exceeded"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller exceeded a rate, quota, or concurrency limit."`; `operatorAction`: `"Check limiter state, quota configuration, and abuse signals."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Wait for the retry window or reduce request volume."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/events-inmemory/src/libs/problems/EventsInmemoryProblems.ts"`; `kind`: `"problem-class"`; `line`: `35`; \}\]; `status`: `429`; `title`: `"Too Many Requests"`; \}, \{ `category`: `"TooManyRequests"`; `code`: `"events-inmemory/backpressure-timeout"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#events-inmemory-backpressure-timeout"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller exceeded a rate, quota, or concurrency limit."`; `operatorAction`: `"Check limiter state, quota configuration, and abuse signals."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Wait for the retry window or reduce request volume."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/events-inmemory/src/libs/problems/EventsInmemoryProblems.ts"`; `kind`: `"problem-class"`; `line`: `51`; \}\]; `status`: `429`; `title`: `"Too Many Requests"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"events-inmemory/invalid-configuration"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#events-inmemory-invalid-configuration"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/events-inmemory/src/libs/problems/EventsInmemoryProblems.ts"`; `kind`: `"problem-class"`; `line`: `12`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"events-inmemory/publish-dropped"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#events-inmemory-publish-dropped"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/events-inmemory/src/libs/InmemoryEventBus.ts"`; `kind`: `"problem-class"`; `line`: `54`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"events-inmemory/publish-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#events-inmemory-publish-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/events-inmemory/src/libs/InmemoryEventBus.ts"`; `kind`: `"problem-class"`; `line`: `37`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"events-tx/configuration-invalid"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#events-tx-configuration-invalid"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/events-tx/src/libs/problems/EventsTxProblems.ts"`; `kind`: `"problem-class"`; `line`: `36`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"Conflict"`; `code`: `"events-tx/inbox-claim-conflict"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#events-tx-inbox-claim-conflict"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"An inbox completion request no longer owns the processing attempt it started."`; `operatorAction`: `"Inspect concurrent writes, idempotency keys, and uniqueness constraints, then verify workers complete only the attempt they claimed."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Acquire a new inbox claim before retrying processing; discard the stale completion when a new claim cannot be acquired."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/events-tx/src/libs/problems/EventsTxProblems.ts"`; `kind`: `"problem-class"`; `line`: `120`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"Conflict"`; `code`: `"events-tx/outbox-idempotency-conflict"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#events-tx-outbox-idempotency-conflict"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request conflicts with current state or an idempotency constraint."`; `operatorAction`: `"Inspect concurrent writes, idempotency keys, and uniqueness constraints."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Refresh state, resolve the conflict, and retry with the updated intent."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/events-tx/src/libs/problems/EventsTxProblems.ts"`; `kind`: `"problem-class"`; `line`: `83`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"events-tx/outbox-publish-exhausted"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#events-tx-outbox-publish-exhausted"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/events-tx/src/libs/problems/EventsTxProblems.ts"`; `kind`: `"problem-class"`; `line`: `105`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"events-tx/outbox-transaction-required"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#events-tx-outbox-transaction-required"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/events-tx/src/libs/problems/EventsTxProblems.ts"`; `kind`: `"problem-class"`; `line`: `64`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"events-tx/storage-error"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#events-tx-storage-error"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/events-tx/src/libs/problems/EventsTxProblems.ts"`; `kind`: `"problem-class"`; `line`: `73`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"events-tx/transaction-state-error"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#events-tx-transaction-state-error"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/events-tx/src/libs/problems/EventsTxProblems.ts"`; `kind`: `"problem-class"`; `line`: `56`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"execution/checkpoint-store-conformance"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#execution-checkpoint-store-conformance"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `12`; `file`: `"packages/execution-core/src/libs/ExecutionProblem.ts"`; `kind`: `"problem-constructor"`; `line`: `138`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"Conflict"`; `code`: `"execution/conflict"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#execution-conflict"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request conflicts with current state or an idempotency constraint."`; `operatorAction`: `"Inspect concurrent writes, idempotency keys, and uniqueness constraints."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Refresh state, resolve the conflict, and retry with the updated intent."`; \}; `sources`: readonly \[\{ `column`: `12`; `file`: `"packages/execution-core/src/libs/ExecutionProblem.ts"`; `kind`: `"problem-constructor"`; `line`: `90`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"Conflict"`; `code`: `"execution/continuation-conflict"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#execution-continuation-conflict"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request conflicts with current state or an idempotency constraint."`; `operatorAction`: `"Inspect concurrent writes, idempotency keys, and uniqueness constraints."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Refresh state, resolve the conflict, and retry with the updated intent."`; \}; `sources`: readonly \[\{ `column`: `12`; `file`: `"packages/execution-core/src/libs/ExecutionProblem.ts"`; `kind`: `"problem-constructor"`; `line`: `129`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"execution/continuation-unsupported"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#execution-continuation-unsupported"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `12`; `file`: `"packages/execution-core/src/libs/ExecutionProblem.ts"`; `kind`: `"problem-constructor"`; `line`: `118`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"Conflict"`; `code`: `"execution/idempotency-conflict"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#execution-idempotency-conflict"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request conflicts with current state or an idempotency constraint."`; `operatorAction`: `"Inspect concurrent writes, idempotency keys, and uniqueness constraints."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Refresh state, resolve the conflict, and retry with the updated intent."`; \}; `sources`: readonly \[\{ `column`: `12`; `file`: `"packages/execution-core/src/libs/ExecutionProblem.ts"`; `kind`: `"problem-constructor"`; `line`: `94`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"ValidationError"`; `code`: `"execution/invalid-continuation-lease-duration"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#execution-invalid-continuation-lease-duration"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/execution-core/src/libs/ExecutionProblem.ts"`; `kind`: `"problem-class"`; `line`: `29`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"Conflict"`; `code`: `"execution/invalid-state-transition"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#execution-invalid-state-transition"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request conflicts with current state or an idempotency constraint."`; `operatorAction`: `"Inspect concurrent writes, idempotency keys, and uniqueness constraints."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Refresh state, resolve the conflict, and retry with the updated intent."`; \}; `sources`: readonly \[\{ `column`: `12`; `file`: `"packages/execution-core/src/libs/ExecutionProblem.ts"`; `kind`: `"problem-constructor"`; `line`: `110`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"Conflict"`; `code`: `"execution/max-retries-exceeded"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#execution-max-retries-exceeded"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request conflicts with current state or an idempotency constraint."`; `operatorAction`: `"Inspect concurrent writes, idempotency keys, and uniqueness constraints."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Refresh state, resolve the conflict, and retry with the updated intent."`; \}; `sources`: readonly \[\{ `column`: `12`; `file`: `"packages/execution-core/src/libs/ExecutionProblem.ts"`; `kind`: `"problem-constructor"`; `line`: `102`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"NotFound"`; `code`: `"execution/not-found"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#execution-not-found"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The requested resource or route-visible record does not exist."`; `operatorAction`: `"Confirm tenant scoping, data retention, and backing-store lookup behavior."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Verify the identifier and refresh the resource list before retrying."`; \}; `sources`: readonly \[\{ `column`: `12`; `file`: `"packages/execution-core/src/libs/ExecutionProblem.ts"`; `kind`: `"problem-constructor"`; `line`: `86`; \}\]; `status`: `404`; `title`: `"Not Found"`; \}, \{ `category`: `"Forbidden"`; `code`: `"FORBIDDEN"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#forbidden"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The authenticated caller is not allowed to perform the requested action."`; `operatorAction`: `"Review policy, role, tenant, entitlement, and impersonation context."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Request the required permission or choose an allowed action."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/auth-core/src/libs/problems/AuthProblems.ts"`; `kind`: `"problem-class"`; `line`: `13`; \}\]; `status`: `403`; `title`: `"Forbidden"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"framework-config/config-schema-not-found"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#framework-config-config-schema-not-found"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/framework-config/src/libs/problems/ConfigProblems.ts"`; `kind`: `"problem-class"`; `line`: `4`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"ValidationError"`; `code`: `"framework-config/config-validation-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#framework-config-config-validation-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/framework-config/src/libs/problems/ConfigProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `15`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"ValidationError"`; `code`: `"framework-config/invalid-boolean-env"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#framework-config-invalid-boolean-env"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/framework-config/src/libs/problems/ConfigProblems.ts"`; `kind`: `"problem-class"`; `line`: `24`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"framework-context/circular-dependency"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#framework-context-circular-dependency"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/framework-context/src/libs/problems/CircularDependencyProblem.ts"`; `kind`: `"problem-class"`; `line`: `7`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"framework-context/container-scope-disposed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#framework-context-container-scope-disposed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `10`; `file`: `"packages/framework-context/src/libs/Container.ts"`; `kind`: `"problem-factory"`; `line`: `65`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"framework-context/context-middleware-execution-error"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#framework-context-context-middleware-execution-error"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/framework-context/src/libs/problems/ContextProblems.ts"`; `kind`: `"problem-class"`; `line`: `7`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"framework-context/di-resolution-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#framework-context-di-resolution-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/framework-context/src/libs/problems/ContainerResolutionProblem.ts"`; `kind`: `"problem-class"`; `line`: `10`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"framework-context/di-scope-mismatch"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#framework-context-di-scope-mismatch"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/framework-context/src/libs/problems/ContainerResolutionProblem.ts"`; `kind`: `"problem-class"`; `line`: `31`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"ValidationError"`; `code`: `"framework-context/on-shutdown-decorator-invalid"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#framework-context-on-shutdown-decorator-invalid"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/framework-context/src/libs/problems/ShutdownProblems.ts"`; `kind`: `"problem-class"`; `line`: `9`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"Conflict"`; `code`: `"framework-context/pipeline-graph-invalid"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#framework-context-pipeline-graph-invalid"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request conflicts with current state or an idempotency constraint."`; `operatorAction`: `"Inspect concurrent writes, idempotency keys, and uniqueness constraints."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Refresh state, resolve the conflict, and retry with the updated intent."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/framework-context/src/libs/problems/PipelineGraphProblems.ts"`; `kind`: `"problem-class"`; `line`: `7`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"Conflict"`; `code`: `"framework-context/policy-capability-unavailable"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#framework-context-policy-capability-unavailable"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request conflicts with current state or an idempotency constraint."`; `operatorAction`: `"Inspect concurrent writes, idempotency keys, and uniqueness constraints."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Refresh state, resolve the conflict, and retry with the updated intent."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/framework-context/src/libs/problems/RuntimePolicyProblems.ts"`; `kind`: `"problem-class"`; `line`: `33`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"Conflict"`; `code`: `"framework-context/policy-conflict"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#framework-context-policy-conflict"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request conflicts with current state or an idempotency constraint."`; `operatorAction`: `"Inspect concurrent writes, idempotency keys, and uniqueness constraints."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Refresh state, resolve the conflict, and retry with the updated intent."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/framework-context/src/libs/problems/RuntimePolicyProblems.ts"`; `kind`: `"problem-class"`; `line`: `9`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"ValidationError"`; `code`: `"framework-context/policy-definition-invalid"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#framework-context-policy-definition-invalid"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/framework-context/src/libs/problems/RuntimePolicyProblems.ts"`; `kind`: `"problem-class"`; `line`: `21`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"framework-context/request-scope-outside-context"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#framework-context-request-scope-outside-context"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `13`; `file`: `"packages/framework-context/src/libs/Container.ts"`; `kind`: `"problem-factory"`; `line`: `1705`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"Conflict"`; `code`: `"framework-context/shutdown-configuration-conflict"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#framework-context-shutdown-configuration-conflict"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request conflicts with current state or an idempotency constraint."`; `operatorAction`: `"Inspect concurrent writes, idempotency keys, and uniqueness constraints."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Refresh state, resolve the conflict, and retry with the updated intent."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/framework-context/src/libs/problems/ShutdownProblems.ts"`; `kind`: `"problem-class"`; `line`: `97`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"framework-context/shutdown-hook-execution-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#framework-context-shutdown-hook-execution-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/framework-context/src/libs/problems/ShutdownProblems.ts"`; `kind`: `"problem-class"`; `line`: `112`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"framework-context/shutdown-timeout"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#framework-context-shutdown-timeout"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/framework-context/src/libs/problems/ShutdownProblems.ts"`; `kind`: `"problem-class"`; `line`: `73`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"framework-module/circular-dependency"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#framework-module-circular-dependency"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/framework-module/src/problems.ts"`; `kind`: `"problem-constructor"`; `line`: `26`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"ValidationError"`; `code`: `"framework-module/invalid-module-definition"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#framework-module-invalid-module-definition"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/framework-module/src/problems.ts"`; `kind`: `"problem-constructor"`; `line`: `16`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"framework-module/lifecycle-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#framework-module-lifecycle-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/framework-module/src/problems.ts"`; `kind`: `"problem-constructor"`; `line`: `42`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"framework-module/provider-not-visible"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#framework-module-provider-not-visible"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/framework-module/src/problems.ts"`; `kind`: `"problem-constructor"`; `line`: `70`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"Conflict"`; `code`: `"framework-module/provider-ownership-conflict"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#framework-module-provider-ownership-conflict"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request conflicts with current state or an idempotency constraint."`; `operatorAction`: `"Inspect concurrent writes, idempotency keys, and uniqueness constraints."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Refresh state, resolve the conflict, and retry with the updated intent."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/framework-module/src/problems.ts"`; `kind`: `"problem-constructor"`; `line`: `92`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"Conflict"`; `code`: `"framework-module/provider-write-not-owned"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#framework-module-provider-write-not-owned"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request conflicts with current state or an idempotency constraint."`; `operatorAction`: `"Inspect concurrent writes, idempotency keys, and uniqueness constraints."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Refresh state, resolve the conflict, and retry with the updated intent."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/framework-module/src/problems.ts"`; `kind`: `"problem-constructor"`; `line`: `108`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"frontend-problems/fetch-unavailable"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#frontend-problems-fetch-unavailable"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/frontend-problems/src/index.ts"`; `kind`: `"problem-class"`; `line`: `204`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"ValidationError"`; `code`: `"frontend-vite/missing-cloudflare-vite-plugin"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#frontend-vite-missing-cloudflare-vite-plugin"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/frontend-vite/src/libs/problems/MissingCloudflareVitePluginProblem.ts"`; `kind`: `"problem-constructor"`; `line`: `14`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"GENERATION_ERROR"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#generation-error"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/llm-core/src/libs/problems/LlmServiceProblem.ts"`; `kind`: `"problem-constructor"`; `line`: `34`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"gid-core/id-type-only-property"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#gid-core-id-type-only-property"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/gid-core/src/libs/problems/GidProblems.ts"`; `kind`: `"problem-class"`; `line`: `17`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"ValidationError"`; `code`: `"gid-core/invalid-id-prefix"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#gid-core-invalid-id-prefix"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/gid-core/src/libs/problems/GidProblems.ts"`; `kind`: `"problem-class"`; `line`: `4`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"NotImplemented"`; `code`: `"governance-core/delete-not-supported"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#governance-core-delete-not-supported"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The requested capability is not supported by this runtime or adapter."`; `operatorAction`: `"Check runtime capability declarations and provider maturity documentation."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Use a supported capability or choose an adapter/runtime that provides it."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/governance-core/src/libs/problems/DataGovernanceProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `34`; \}\]; `status`: `501`; `title`: `"Not Implemented"`; \}, \{ `category`: `"NotImplemented"`; `code`: `"governance-core/export-not-supported"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#governance-core-export-not-supported"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The requested capability is not supported by this runtime or adapter."`; `operatorAction`: `"Check runtime capability declarations and provider maturity documentation."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Use a supported capability or choose an adapter/runtime that provides it."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/governance-core/src/libs/problems/DataGovernanceProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `15`; \}\]; `status`: `501`; `title`: `"Not Implemented"`; \}, \{ `category`: `"ValidationError"`; `code`: `"governance-core/resource-validation-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#governance-core-resource-validation-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/governance-core/src/libs/DataGovernanceResource.ts"`; `kind`: `"problem-constructor"`; `line`: `102`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"BusinessRuleViolation"`; `code`: `"governance-core/retention-policy-violation"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#governance-core-retention-policy-violation"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request is syntactically valid but violates a domain rule."`; `operatorAction`: `"Review domain policy, entitlement, quota, and lifecycle rule evidence."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Change the workflow state or request values so the business rule is satisfied."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/governance-core/src/libs/problems/DataGovernanceProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `59`; \}\]; `status`: `422`; `title`: `"Business Rule Violation"`; \}, \{ `category`: `"NotFound"`; `code`: `"GRAPHQL_NOT_FOUND"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#graphql-not-found"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The requested resource or route-visible record does not exist."`; `operatorAction`: `"Confirm tenant scoping, data retention, and backing-store lookup behavior."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Verify the identifier and refresh the resource list before retrying."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/protocols-graphql/src/libs/errors/GraphQLProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `23`; \}\]; `status`: `404`; `title`: `"Not Found"`; \}, \{ `category`: `"NotFound"`; `code`: `"HEALTH_SCORE_NOT_FOUND"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#health-score-not-found"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The requested resource or route-visible record does not exist."`; `operatorAction`: `"Confirm tenant scoping, data retention, and backing-store lookup behavior."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Verify the identifier and refresh the resource list before retrying."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/customer-health-core/src/libs/problems/HealthProblems.ts"`; `kind`: `"problem-class"`; `line`: `4`; \}\]; `status`: `404`; `title`: `"Not Found"`; \}, \{ `category`: `"ValidationError"`; `code`: `"health-core/invalid-timeout"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#health-core-invalid-timeout"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/health-core/src/libs/problems/HealthProblems.ts"`; `kind`: `"problem-class"`; `line`: `9`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"BadRequest"`; `code`: `"idempotency-core/invalid-key"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#idempotency-core-invalid-key"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `11`; `file`: `"packages/idempotency-core/src/libs/problems/IdempotencyProblems.ts"`; `kind`: `"problem-metadata"`; `line`: `53`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"BadRequest"`; `code`: `"idempotency-core/invalid-ttl"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#idempotency-core-invalid-ttl"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `11`; `file`: `"packages/idempotency-core/src/libs/problems/IdempotencyProblems.ts"`; `kind`: `"problem-metadata"`; `line`: `72`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"Conflict"`; `code`: `"idempotency-core/key-conflict"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#idempotency-core-key-conflict"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request conflicts with current state or an idempotency constraint."`; `operatorAction`: `"Inspect concurrent writes, idempotency keys, and uniqueness constraints."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Refresh state, resolve the conflict, and retry with the updated intent."`; \}; `sources`: readonly \[\{ `column`: `11`; `file`: `"packages/idempotency-core/src/libs/problems/IdempotencyProblems.ts"`; `kind`: `"problem-metadata"`; `line`: `37`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"Conflict"`; `code`: `"idempotency-core/reservation-expired"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#idempotency-core-reservation-expired"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request conflicts with current state or an idempotency constraint."`; `operatorAction`: `"Inspect concurrent writes, idempotency keys, and uniqueness constraints."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Refresh state, resolve the conflict, and retry with the updated intent."`; \}; `sources`: readonly \[\{ `column`: `11`; `file`: `"packages/idempotency-core/src/libs/problems/IdempotencyProblems.ts"`; `kind`: `"problem-metadata"`; `line`: `101`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"Conflict"`; `code`: `"idempotency-core/reservation-not-found"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#idempotency-core-reservation-not-found"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request conflicts with current state or an idempotency constraint."`; `operatorAction`: `"Inspect concurrent writes, idempotency keys, and uniqueness constraints."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Refresh state, resolve the conflict, and retry with the updated intent."`; \}; `sources`: readonly \[\{ `column`: `11`; `file`: `"packages/idempotency-core/src/libs/problems/IdempotencyProblems.ts"`; `kind`: `"problem-metadata"`; `line`: `87`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"Conflict"`; `code`: `"idempotency-core/reservation-state"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#idempotency-core-reservation-state"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request conflicts with current state or an idempotency constraint."`; `operatorAction`: `"Inspect concurrent writes, idempotency keys, and uniqueness constraints."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Refresh state, resolve the conflict, and retry with the updated intent."`; \}; `sources`: readonly \[\{ `column`: `11`; `file`: `"packages/idempotency-core/src/libs/problems/IdempotencyProblems.ts"`; `kind`: `"problem-metadata"`; `line`: `120`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"Forbidden"`; `code`: `"IMPERSONATION_IDENTITY_CONFLICT"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#impersonation-identity-conflict"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The authenticated caller is not allowed to perform the requested action."`; `operatorAction`: `"Review policy, role, tenant, entitlement, and impersonation context."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Request the required permission or choose an allowed action."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/impersonation-core/src/libs/problems/ImpersonationProblems.ts"`; `kind`: `"problem-class"`; `line`: `13`; \}\]; `status`: `403`; `title`: `"Forbidden"`; \}, \{ `category`: `"BadRequest"`; `code`: `"IMPERSONATION_REASON_REQUIRED"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#impersonation-reason-required"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/impersonation-core/src/libs/problems/ImpersonationProblems.ts"`; `kind`: `"problem-class"`; `line`: `40`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"NotFound"`; `code`: `"IMPERSONATION_SESSION_NOT_FOUND"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#impersonation-session-not-found"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The requested resource or route-visible record does not exist."`; `operatorAction`: `"Confirm tenant scoping, data retention, and backing-store lookup behavior."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Verify the identifier and refresh the resource list before retrying."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/impersonation-core/src/libs/problems/ImpersonationProblems.ts"`; `kind`: `"problem-class"`; `line`: `58`; \}\]; `status`: `404`; `title`: `"Not Found"`; \}, \{ `category`: `"NotFound"`; `code`: `"IMPERSONATION_TARGET_NOT_FOUND"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#impersonation-target-not-found"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The requested resource or route-visible record does not exist."`; `operatorAction`: `"Confirm tenant scoping, data retention, and backing-store lookup behavior."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Verify the identifier and refresh the resource list before retrying."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/impersonation-core/src/libs/problems/ImpersonationProblems.ts"`; `kind`: `"problem-class"`; `line`: `22`; \}\]; `status`: `404`; `title`: `"Not Found"`; \}, \{ `category`: `"NotFound"`; `code`: `"INDEX_NOT_FOUND"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#index-not-found"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The requested resource or route-visible record does not exist."`; `operatorAction`: `"Confirm tenant scoping, data retention, and backing-store lookup behavior."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Verify the identifier and refresh the resource list before retrying."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/search-core/src/libs/problems/SearchProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `57`; \}\]; `status`: `404`; `title`: `"Not Found"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"integrations-posthog/missing-config"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#integrations-posthog-missing-config"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/integrations-posthog/src/libs/problems/PostHogProblems.ts"`; `kind`: `"problem-class"`; `line`: `4`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"BadRequest"`; `code`: `"INVALID_AUTO_JOIN_ROLE"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#invalid-auto-join-role"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/invitation-core/src/libs/problems/DomainPolicyProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `18`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"BadRequest"`; `code`: `"INVALID_CURSOR"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#invalid-cursor"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/pagination-core/src/libs/problems.ts"`; `kind`: `"problem-class"`; `line`: `4`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"ValidationError"`; `code`: `"INVALID_INVITATION_EXPIRY_DURATION"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#invalid-invitation-expiry-duration"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/invitation-core/src/libs/problems/InvitationProblems.ts"`; `kind`: `"problem-class"`; `line`: `32`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"BadRequest"`; `code`: `"INVALID_PAGINATION_DIRECTION"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#invalid-pagination-direction"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/pagination-core/src/libs/problems.ts"`; `kind`: `"problem-class"`; `line`: `40`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"ValidationError"`; `code`: `"INVALID_RETRY_CONFIGURATION"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#invalid-retry-configuration"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/retry-core/src/libs/errors/RetryInfrastructureProblem.ts"`; `kind`: `"problem-class"`; `line`: `52`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"BadRequest"`; `code`: `"INVALID_ROLE"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#invalid-role"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/membership-core/src/libs/problems/MembershipProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `44`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"Conflict"`; `code`: `"INVITATION_ALREADY_ACCEPTED"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#invitation-already-accepted"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request conflicts with current state or an idempotency constraint."`; `operatorAction`: `"Inspect concurrent writes, idempotency keys, and uniqueness constraints."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Refresh state, resolve the conflict, and retry with the updated intent."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/invitation-core/src/libs/problems/InvitationProblems.ts"`; `kind`: `"problem-class"`; `line`: `73`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"INVITATION_CREATION_FAILED"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#invitation-creation-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/invitation-core/src/libs/problems/InvitationProblems.ts"`; `kind`: `"problem-class"`; `line`: `4`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"Forbidden"`; `code`: `"INVITATION_EMAIL_MISMATCH"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#invitation-email-mismatch"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The authenticated caller is not allowed to perform the requested action."`; `operatorAction`: `"Review policy, role, tenant, entitlement, and impersonation context."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Request the required permission or choose an allowed action."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/invitation-core/src/libs/problems/InvitationProblems.ts"`; `kind`: `"problem-class"`; `line`: `84`; \}\]; `status`: `403`; `title`: `"Forbidden"`; \}, \{ `category`: `"Gone"`; `code`: `"INVITATION_EXPIRED"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#invitation-expired"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The requested resource is no longer available through this API surface."`; `operatorAction`: `"Verify lifecycle, migration, deprecation, and retention state."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Stop using the stale reference and follow the replacement flow when available."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/invitation-core/src/libs/problems/InvitationProblems.ts"`; `kind`: `"problem-class"`; `line`: `62`; \}\]; `status`: `410`; `title`: `"Gone"`; \}, \{ `category`: `"Conflict"`; `code`: `"INVITATION_IDEMPOTENCY_CONFLICT"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#invitation-idempotency-conflict"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request conflicts with current state or an idempotency constraint."`; `operatorAction`: `"Inspect concurrent writes, idempotency keys, and uniqueness constraints."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Refresh state, resolve the conflict, and retry with the updated intent."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/invitation-core/src/libs/problems/InvitationProblems.ts"`; `kind`: `"problem-class"`; `line`: `19`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"Conflict"`; `code`: `"INVITATION_INVALID_STATUS"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#invitation-invalid-status"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request conflicts with current state or an idempotency constraint."`; `operatorAction`: `"Inspect concurrent writes, idempotency keys, and uniqueness constraints."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Refresh state, resolve the conflict, and retry with the updated intent."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/invitation-core/src/libs/problems/InvitationProblems.ts"`; `kind`: `"problem-class"`; `line`: `95`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"NotFound"`; `code`: `"INVITATION_NOT_FOUND"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#invitation-not-found"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The requested resource or route-visible record does not exist."`; `operatorAction`: `"Confirm tenant scoping, data retention, and backing-store lookup behavior."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Verify the identifier and refresh the resource list before retrying."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/invitation-core/src/libs/problems/InvitationProblems.ts"`; `kind`: `"problem-class"`; `line`: `51`; \}\]; `status`: `404`; `title`: `"Not Found"`; \}, \{ `category`: `"TooManyRequests"`; `code`: `"INVITATION_RATE_LIMIT_EXCEEDED"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#invitation-rate-limit-exceeded"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller exceeded a rate, quota, or concurrency limit."`; `operatorAction`: `"Check limiter state, quota configuration, and abuse signals."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Wait for the retry window or reduce request volume."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/invitation-core/src/libs/problems/RateLimitProblems.ts"`; `kind`: `"problem-class"`; `line`: `4`; \}\]; `status`: `429`; `title`: `"Too Many Requests"`; \}, \{ `category`: `"BadRequest"`; `code`: `"invitation-core/batch-size-exceeded"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#invitation-core-batch-size-exceeded"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/invitation-core/src/libs/problems/BatchInviteProblems.ts"`; `kind`: `"problem-class"`; `line`: `4`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"invitation-drizzle/token-cipher-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#invitation-drizzle-token-cipher-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/invitation-drizzle/src/libs/InvitationTokenCipher.ts"`; `kind`: `"problem-constructor"`; `line`: `25`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"LAMBDA_TIMEOUT_GUARD"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#lambda-timeout-guard"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/retry-core/src/libs/errors/RetryInfrastructureProblem.ts"`; `kind`: `"problem-class"`; `line`: `39`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"Forbidden"`; `code`: `"LAST_OWNER"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#last-owner"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The authenticated caller is not allowed to perform the requested action."`; `operatorAction`: `"Review policy, role, tenant, entitlement, and impersonation context."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Request the required permission or choose an allowed action."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/membership-core/src/libs/problems/MembershipProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `31`; \}\]; `status`: `403`; `title`: `"Forbidden"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"lifecycle-core/action-adapter-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#lifecycle-core-action-adapter-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/lifecycle-core/src/libs/problems/LifecycleProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `38`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"lifecycle-core/duplicate-rule"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#lifecycle-core-duplicate-rule"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/lifecycle-core/src/libs/problems/LifecycleProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `6`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"Conflict"`; `code`: `"lifecycle-core/monetization-recipe-capability-missing"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#lifecycle-core-monetization-recipe-capability-missing"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request conflicts with current state or an idempotency constraint."`; `operatorAction`: `"Inspect concurrent writes, idempotency keys, and uniqueness constraints."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Refresh state, resolve the conflict, and retry with the updated intent."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/lifecycle-core/src/libs/problems/LifecycleProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `191`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"ValidationError"`; `code`: `"lifecycle-core/monetization-signal-invalid"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#lifecycle-core-monetization-signal-invalid"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/lifecycle-core/src/libs/problems/LifecycleProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `174`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"Conflict"`; `code`: `"lifecycle-core/monetization-threshold-claim-unavailable"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#lifecycle-core-monetization-threshold-claim-unavailable"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request conflicts with current state or an idempotency constraint."`; `operatorAction`: `"Inspect concurrent writes, idempotency keys, and uniqueness constraints."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Refresh state, resolve the conflict, and retry with the updated intent."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/lifecycle-core/src/libs/problems/LifecycleProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `209`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"lifecycle-core/rule-action-contract-mismatch"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#lifecycle-core-rule-action-contract-mismatch"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/lifecycle-core/src/libs/problems/LifecycleProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `156`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"Conflict"`; `code`: `"lifecycle-core/rule-command-conflict"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#lifecycle-core-rule-command-conflict"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request conflicts with current state or an idempotency constraint."`; `operatorAction`: `"Inspect concurrent writes, idempotency keys, and uniqueness constraints."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Refresh state, resolve the conflict, and retry with the updated intent."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/lifecycle-core/src/libs/problems/LifecycleProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `103`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"lifecycle-core/rule-definition-invalid"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#lifecycle-core-rule-definition-invalid"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/lifecycle-core/src/libs/problems/LifecycleProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `22`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"Conflict"`; `code`: `"lifecycle-core/rule-transition-invalid"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#lifecycle-core-rule-transition-invalid"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request conflicts with current state or an idempotency constraint."`; `operatorAction`: `"Inspect concurrent writes, idempotency keys, and uniqueness constraints."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Refresh state, resolve the conflict, and retry with the updated intent."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/lifecycle-core/src/libs/problems/LifecycleProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `119`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"Conflict"`; `code`: `"lifecycle-core/rule-version-conflict"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#lifecycle-core-rule-version-conflict"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request conflicts with current state or an idempotency constraint."`; `operatorAction`: `"Inspect concurrent writes, idempotency keys, and uniqueness constraints."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Refresh state, resolve the conflict, and retry with the updated intent."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/lifecycle-core/src/libs/problems/LifecycleProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `85`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"lifecycle-core/rule-version-definition-invalid"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#lifecycle-core-rule-version-definition-invalid"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/lifecycle-core/src/libs/problems/LifecycleProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `139`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"Conflict"`; `code`: `"lifecycle-core/rule-version-unavailable"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#lifecycle-core-rule-version-unavailable"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request conflicts with current state or an idempotency constraint."`; `operatorAction`: `"Inspect concurrent writes, idempotency keys, and uniqueness constraints."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Refresh state, resolve the conflict, and retry with the updated intent."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/lifecycle-core/src/libs/problems/LifecycleProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `67`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"NotFound"`; `code`: `"lifecycle-core/rule-version-unknown"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#lifecycle-core-rule-version-unknown"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The requested resource or route-visible record does not exist."`; `operatorAction`: `"Confirm tenant scoping, data retention, and backing-store lookup behavior."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Verify the identifier and refresh the resource list before retrying."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/lifecycle-core/src/libs/problems/LifecycleProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `49`; \}\]; `status`: `404`; `title`: `"Not Found"`; \}, \{ `category`: `"NotFound"`; `code`: `"LLM_PROVIDER_NOT_FOUND"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#llm-provider-not-found"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The requested resource or route-visible record does not exist."`; `operatorAction`: `"Confirm tenant scoping, data retention, and backing-store lookup behavior."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Verify the identifier and refresh the resource list before retrying."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/llm-core/src/libs/problems/LlmProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `26`; \}\]; `status`: `404`; `title`: `"Not Found"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"LLM_SERVICE_ERROR"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#llm-service-error"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/llm-core/src/libs/problems/LlmServiceProblem.ts"`; `kind`: `"problem-constructor"`; `line`: `8`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"BadRequest"`; `code`: `"llm-core/invalid-llm-prompt"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#llm-core-invalid-llm-prompt"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/llm-core/src/libs/problems/LlmProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `102`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"llm-core/invalid-llm-response"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#llm-core-invalid-llm-response"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/llm-core/src/libs/problems/LlmProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `82`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"llm-core/llm-service-not-initialized"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#llm-core-llm-service-not-initialized"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/llm-core/src/libs/problems/LlmProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `92`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"BadRequest"`; `code`: `"llm-core/operation-aborted"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#llm-core-operation-aborted"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/llm-core/src/libs/problems/LlmProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `9`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"TooManyRequests"`; `code`: `"llm-core/rate-limit-exceeded"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#llm-core-rate-limit-exceeded"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller exceeded a rate, quota, or concurrency limit."`; `operatorAction`: `"Check limiter state, quota configuration, and abuse signals."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Wait for the retry window or reduce request volume."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/llm-core/src/libs/problems/LlmProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `60`; \}\]; `status`: `429`; `title`: `"Too Many Requests"`; \}, \{ `category`: `"Forbidden"`; `code`: `"llm-metering/cost-limit-exceeded"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#llm-metering-cost-limit-exceeded"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The authenticated caller is not allowed to perform the requested action."`; `operatorAction`: `"Review policy, role, tenant, entitlement, and impersonation context."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Request the required permission or choose an allowed action."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/llm-metering/src/libs/problems/LlmMeteringProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `41`; \}\]; `status`: `403`; `title`: `"Forbidden"`; \}, \{ `category`: `"NotFound"`; `code`: `"llm-metering/pricing-not-found"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#llm-metering-pricing-not-found"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The requested resource or route-visible record does not exist."`; `operatorAction`: `"Confirm tenant scoping, data retention, and backing-store lookup behavior."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Verify the identifier and refresh the resource list before retrying."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/llm-metering/src/libs/problems/LlmMeteringProblems.ts"`; `kind`: `"problem-class"`; `line`: `58`; \}\]; `status`: `404`; `title`: `"Not Found"`; \}, \{ `category`: `"Conflict"`; `code`: `"llm-metering/pricing-registry-conflict"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#llm-metering-pricing-registry-conflict"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request conflicts with current state or an idempotency constraint."`; `operatorAction`: `"Inspect concurrent writes, idempotency keys, and uniqueness constraints."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Refresh state, resolve the conflict, and retry with the updated intent."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/llm-metering/src/libs/problems/LlmMeteringProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `71`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"Forbidden"`; `code`: `"llm-metering/quota-exceeded"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#llm-metering-quota-exceeded"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The authenticated caller is not allowed to perform the requested action."`; `operatorAction`: `"Review policy, role, tenant, entitlement, and impersonation context."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Request the required permission or choose an allowed action."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/llm-metering/src/libs/problems/LlmMeteringProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `24`; \}\]; `status`: `403`; `title`: `"Forbidden"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"llm-metering/record-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#llm-metering-record-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/llm-metering/src/libs/problems/LlmMeteringProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `7`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"BadRequest"`; `code`: `"llm-openai/aborted"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#llm-openai-aborted"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/llm-openai/src/libs/problems/OpenAiProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `117`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"Unauthorized"`; `code`: `"llm-openai/authentication-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#llm-openai-authentication-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request did not include valid authentication credentials."`; `operatorAction`: `"Check authentication configuration, token issuer, and clock skew."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Sign in again or provide a valid credential."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/llm-openai/src/libs/problems/OpenAiProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `42`; \}\]; `status`: `401`; `title`: `"Unauthorized"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"llm-openai/invalid-response"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#llm-openai-invalid-response"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/llm-openai/src/libs/problems/OpenAiProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `135`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"llm-openai/missing-config"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#llm-openai-missing-config"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/llm-openai/src/libs/problems/OpenAiProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `24`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"TooManyRequests"`; `code`: `"llm-openai/rate-limited"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#llm-openai-rate-limited"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller exceeded a rate, quota, or concurrency limit."`; `operatorAction`: `"Check limiter state, quota configuration, and abuse signals."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Wait for the retry window or reduce request volume."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/llm-openai/src/libs/problems/OpenAiProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `57`; \}\]; `status`: `429`; `title`: `"Too Many Requests"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"llm-openai/retryable-upstream"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#llm-openai-retryable-upstream"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/llm-openai/src/libs/problems/OpenAiProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `72`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"llm-openai/terminal-upstream"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#llm-openai-terminal-upstream"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/llm-openai/src/libs/problems/OpenAiProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `87`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"BadRequest"`; `code`: `"llm-openai/validation-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#llm-openai-validation-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/llm-openai/src/libs/problems/OpenAiProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `102`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"Forbidden"`; `code`: `"MEMBERSHIP_CONSTRAINT"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#membership-constraint"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The authenticated caller is not allowed to perform the requested action."`; `operatorAction`: `"Review policy, role, tenant, entitlement, and impersonation context."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Request the required permission or choose an allowed action."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/membership-core/src/libs/problems/MembershipConstraintProblem.ts"`; `kind`: `"problem-constructor"`; `line`: `9`; \}\]; `status`: `403`; `title`: `"Forbidden"`; \}, \{ `category`: `"NotFound"`; `code`: `"MEMBERSHIP_NOT_FOUND"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#membership-not-found"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The requested resource or route-visible record does not exist."`; `operatorAction`: `"Confirm tenant scoping, data retention, and backing-store lookup behavior."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Verify the identifier and refresh the resource list before retrying."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/membership-core/src/libs/problems/MembershipProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `5`; \}\]; `status`: `404`; `title`: `"Not Found"`; \}, \{ `category`: `"BadRequest"`; `code`: `"meta-vite/server-action-invalid-path"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#meta-vite-server-action-invalid-path"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/meta-vite/src/libs/actions/serverActions.ts"`; `kind`: `"problem-class"`; `line`: `80`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"NotFound"`; `code`: `"meta-vite/server-action-not-found"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#meta-vite-server-action-not-found"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The requested resource or route-visible record does not exist."`; `operatorAction`: `"Confirm tenant scoping, data retention, and backing-store lookup behavior."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Verify the identifier and refresh the resource list before retrying."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/meta-vite/src/libs/actions/serverActions.ts"`; `kind`: `"problem-class"`; `line`: `66`; \}\]; `status`: `404`; `title`: `"Not Found"`; \}, \{ `category`: `"ValidationError"`; `code`: `"meta-vite/server-action-validation-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#meta-vite-server-action-validation-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/meta-vite/src/libs/actions/serverActions.ts"`; `kind`: `"problem-class"`; `line`: `94`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"meter/insert-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#meter-insert-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `13`; `file`: `"packages/metering-drizzle/src/libs/DrizzleMeterRepository.ts"`; `kind`: `"problem-factory"`; `line`: `146`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"metering-drizzle/migration-query-result-unsupported"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#metering-drizzle-migration-query-result-unsupported"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `9`; `file`: `"packages/metering-drizzle/src/migrations/addUsageEnvelopeFields.ts"`; `kind`: `"problem-factory"`; `line`: `125`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"metering-drizzle/usage-envelope-not-configured"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#metering-drizzle-usage-envelope-not-configured"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/metering-drizzle/src/libs/problems/UsageEnvelopeConfigurationProblem.ts"`; `kind`: `"problem-constructor"`; `line`: `6`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"metering-upstash/missing-config"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#metering-upstash-missing-config"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/metering-upstash/src/libs/problems/UpstashMeteringProblems.ts"`; `kind`: `"problem-class"`; `line`: `4`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"metering/atomic-quota-not-supported"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#metering-atomic-quota-not-supported"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/metering-core/src/libs/problems/AtomicQuotaNotSupportedProblem.ts"`; `kind`: `"problem-class"`; `line`: `4`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"metering/billable-usage-journal-required"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#metering-billable-usage-journal-required"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"A meter declares billing as required, but MeterRegistry validation cannot find a persistent BillableUsageJournal."`; `operatorAction`: `"Configure a persistent BillableUsageJournal before loadAll, lazy meter lookup, or registration validates a billing-required meter."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Do not retry with the same configuration; connect a persistent journal or change the meter billing contract first."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/metering-core/src/libs/problems/BillableUsageJournalRequiredProblem.ts"`; `kind`: `"problem-constructor"`; `line`: `5`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"Conflict"`; `code`: `"metering/duplicate-record"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#metering-duplicate-record"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request conflicts with current state or an idempotency constraint."`; `operatorAction`: `"Inspect concurrent writes, idempotency keys, and uniqueness constraints."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Refresh state, resolve the conflict, and retry with the updated intent."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/metering-core/src/libs/problems/DuplicateRecordProblem.ts"`; `kind`: `"problem-constructor"`; `line`: `5`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"NotFound"`; `code`: `"metering/invalid-meter"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#metering-invalid-meter"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The requested resource or route-visible record does not exist."`; `operatorAction`: `"Confirm tenant scoping, data retention, and backing-store lookup behavior."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Verify the identifier and refresh the resource list before retrying."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/metering-core/src/libs/problems/InvalidMeterProblem.ts"`; `kind`: `"problem-constructor"`; `line`: `5`; \}\]; `status`: `404`; `title`: `"Not Found"`; \}, \{ `category`: `"ValidationError"`; `code`: `"metering/invalid-meter-dimension"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#metering-invalid-meter-dimension"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/metering-core/src/libs/problems/InvalidMeterDimensionProblem.ts"`; `kind`: `"problem-constructor"`; `line`: `6`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"ValidationError"`; `code`: `"metering/invalid-usage-envelope"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#metering-invalid-usage-envelope"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/metering-core/src/libs/problems/InvalidUsageEnvelopeProblem.ts"`; `kind`: `"problem-constructor"`; `line`: `6`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"ValidationError"`; `code`: `"metering/invalid-usage-query"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#metering-invalid-usage-query"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/metering-core/src/libs/problems/InvalidUsageQueryProblem.ts"`; `kind`: `"problem-constructor"`; `line`: `6`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"TooManyRequests"`; `code`: `"metering/quota-exceeded"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#metering-quota-exceeded"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller exceeded a rate, quota, or concurrency limit."`; `operatorAction`: `"Check limiter state, quota configuration, and abuse signals."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Wait for the retry window or reduce request volume."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/metering-core/src/libs/problems/QuotaExceededProblem.ts"`; `kind`: `"problem-constructor"`; `line`: `9`; \}\]; `status`: `429`; `title`: `"Too Many Requests"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"metering/redis-error"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#metering-redis-error"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/metering-core/src/libs/problems/RedisProblem.ts"`; `kind`: `"problem-constructor"`; `line`: `8`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"Conflict"`; `code`: `"metering/transition-conflict"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#metering-transition-conflict"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request conflicts with current state or an idempotency constraint."`; `operatorAction`: `"Inspect concurrent writes, idempotency keys, and uniqueness constraints."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Refresh state, resolve the conflict, and retry with the updated intent."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/metering-core/src/libs/problems/MeteringTransitionProblem.ts"`; `kind`: `"problem-constructor"`; `line`: `5`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"metrics-billing/metric-dropped"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#metrics-billing-metric-dropped"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Billing metrics could not be recorded because the referenced account, subscription, or plan evidence was missing."`; `operatorAction`: `"Use extensions.reason, tenantId, resourceId, and eventKey to rebuild the missing account, subscription, or plan before replay."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Restore the missing billing state identified by reason/resourceId, then replay the same billing event with the same event key."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/metrics-billing/src/libs/problems/BillingMetricsProblems.ts"`; `kind`: `"problem-class"`; `line`: `17`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"metrics-billing/recording-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#metrics-billing-recording-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/metrics-billing/src/libs/problems/BillingMetricsProblems.ts"`; `kind`: `"problem-class"`; `line`: `46`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"BusinessRuleViolation"`; `code`: `"metrics-core/carrying-capacity-simulation-error"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#metrics-core-carrying-capacity-simulation-error"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request is syntactically valid but violates a domain rule."`; `operatorAction`: `"Review domain policy, entitlement, quota, and lifecycle rule evidence."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Change the workflow state or request values so the business rule is satisfied."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/metrics-core/src/libs/problems/MetricsProblems.ts"`; `kind`: `"problem-class"`; `line`: `4`; \}\]; `status`: `422`; `title`: `"Business Rule Violation"`; \}, \{ `category`: `"ValidationError"`; `code`: `"metrics-core/carrying-capacity-tenant-required"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#metrics-core-carrying-capacity-tenant-required"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/metrics-core/src/libs/problems/MetricsProblems.ts"`; `kind`: `"problem-class"`; `line`: `12`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"ValidationError"`; `code`: `"metrics-core/gross-margin-required"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#metrics-core-gross-margin-required"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/metrics-core/src/libs/problems/MetricsProblems.ts"`; `kind`: `"problem-class"`; `line`: `42`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"ValidationError"`; `code`: `"metrics-core/invalid-retention-movement"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#metrics-core-invalid-retention-movement"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/metrics-core/src/libs/problems/MetricsProblems.ts"`; `kind`: `"problem-class"`; `line`: `30`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"ValidationError"`; `code`: `"metrics-core/mixed-currency-mrr"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#metrics-core-mixed-currency-mrr"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/metrics-core/src/libs/problems/MetricsProblems.ts"`; `kind`: `"problem-class"`; `line`: `50`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"NotImplemented"`; `code`: `"metrics-core/retention-metrics-unavailable"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#metrics-core-retention-metrics-unavailable"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The requested capability is not supported by this runtime or adapter."`; `operatorAction`: `"Check runtime capability declarations and provider maturity documentation."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Use a supported capability or choose an adapter/runtime that provides it."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/metrics-core/src/libs/problems/MetricsProblems.ts"`; `kind`: `"problem-class"`; `line`: `20`; \}\]; `status`: `501`; `title`: `"Not Implemented"`; \}, \{ `category`: `"ValidationError"`; `code`: `"metrics-core/snapshot-tenant-required"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#metrics-core-snapshot-tenant-required"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/metrics-core/src/libs/SnapshotScheduler.ts"`; `kind`: `"problem-class"`; `line`: `19`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"MIDDLEWARE_EXECUTION_ERROR"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#middleware-execution-error"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/framework-context/src/libs/problems/MiddlewareProblems.ts"`; `kind`: `"problem-class"`; `line`: `7`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"BadRequest"`; `code`: `"migration-runner/database-url-required"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#migration-runner-database-url-required"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/migration-runner/src/libs/problems/DatabaseUrlRequiredProblem.ts"`; `kind`: `"problem-class"`; `line`: `4`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"migration-runner/file-load-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#migration-runner-file-load-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/migration-runner/src/libs/problems/MigrationFileLoadProblem.ts"`; `kind`: `"problem-class"`; `line`: `5`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"Conflict"`; `code`: `"migration-runner/history-drift"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#migration-runner-history-drift"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Recorded migration history no longer matches the available migration files by stable id and name."`; `operatorAction`: `"Compare the checkpoint rows with version-controlled migration files, restore missing or renamed files when possible, and repair history only after verifying the deployed schema."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Restore the original migration file identity or ask an operator to perform an explicitly verified history repair."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/migration-runner/src/libs/problems/MigrationHistoryDriftProblem.ts"`; `kind`: `"problem-class"`; `line`: `16`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"BadRequest"`; `code`: `"migration-runner/invalid-count"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#migration-runner-invalid-count"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/migration-runner/src/libs/problems/InvalidMigrationCountProblem.ts"`; `kind`: `"problem-class"`; `line`: `4`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"ValidationError"`; `code`: `"migration-runner/missing-down-function"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#migration-runner-missing-down-function"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/migration-runner/src/libs/problems/MissingDownFunctionProblem.ts"`; `kind`: `"problem-class"`; `line`: `4`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"ValidationError"`; `code`: `"migration-runner/missing-up-function"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#migration-runner-missing-up-function"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/migration-runner/src/libs/problems/MissingUpFunctionProblem.ts"`; `kind`: `"problem-class"`; `line`: `4`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"ValidationError"`; `code`: `"migration-runner/transaction-required"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#migration-runner-transaction-required"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/migration-runner/src/libs/problems/MigrationTransactionRequiredProblem.ts"`; `kind`: `"problem-class"`; `line`: `4`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"BadRequest"`; `code`: `"migration-runner/unsupported-dialect"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#migration-runner-unsupported-dialect"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/migration-runner/src/libs/problems/UnsupportedDialectProblem.ts"`; `kind`: `"problem-class"`; `line`: `4`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"migration-runner/unsupported-query-result"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#migration-runner-unsupported-query-result"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/migration-runner/src/libs/problems/UnsupportedMigrationQueryResultProblem.ts"`; `kind`: `"problem-class"`; `line`: `11`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"BadRequest"`; `code`: `"MISSING_TENANT"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#missing-tenant"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/search-core/src/libs/problems/SearchProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `5`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"NotFound"`; `code`: `"MODEL_NOT_FOUND"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#model-not-found"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The requested resource or route-visible record does not exist."`; `operatorAction`: `"Confirm tenant scoping, data retention, and backing-store lookup behavior."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Verify the identifier and refresh the resource list before retrying."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/llm-core/src/libs/problems/LlmServiceProblem.ts"`; `kind`: `"problem-constructor"`; `line`: `25`; \}\]; `status`: `404`; `title`: `"Not Found"`; \}, \{ `category`: `"Forbidden"`; `code`: `"NESTED_IMPERSONATION_NOT_ALLOWED"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#nested-impersonation-not-allowed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The authenticated caller is not allowed to perform the requested action."`; `operatorAction`: `"Review policy, role, tenant, entitlement, and impersonation context."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Request the required permission or choose an allowed action."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/impersonation-core/src/libs/problems/ImpersonationProblems.ts"`; `kind`: `"problem-class"`; `line`: `31`; \}\]; `status`: `403`; `title`: `"Forbidden"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"notifications-core/default-provider-conflict"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#notifications-core-default-provider-conflict"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/notifications-core/src/libs/problems/NotificationProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `80`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"notifications-core/delivery-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#notifications-core-delivery-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/notifications-core/src/libs/problems/NotificationProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `169`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"ValidationError"`; `code`: `"notifications-core/idempotency-key-required"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#notifications-core-idempotency-key-required"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/notifications-core/src/libs/problems/NotificationProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `241`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"ValidationError"`; `code`: `"notifications-core/outbox-idempotency-mismatch"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#notifications-core-outbox-idempotency-mismatch"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/notifications-core/src/libs/problems/NotificationProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `257`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"ValidationError"`; `code`: `"notifications-core/preference-channel-mismatch"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#notifications-core-preference-channel-mismatch"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/notifications-core/src/libs/problems/NotificationProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `224`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"ValidationError"`; `code`: `"notifications-core/preference-context-required"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#notifications-core-preference-context-required"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/notifications-core/src/libs/problems/NotificationProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `208`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"BusinessRuleViolation"`; `code`: `"notifications-core/preference-denied"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#notifications-core-preference-denied"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request is syntactically valid but violates a domain rule."`; `operatorAction`: `"Review domain policy, entitlement, quota, and lifecycle rule evidence."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Change the workflow state or request values so the business rule is satisfied."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/notifications-core/src/libs/problems/NotificationProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `186`; \}\]; `status`: `422`; `title`: `"Business Rule Violation"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"notifications-core/provider-already-registered"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#notifications-core-provider-already-registered"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/notifications-core/src/libs/problems/NotificationProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `64`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"notifications-core/provider-channel-mismatch"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#notifications-core-provider-channel-mismatch"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/notifications-core/src/libs/problems/NotificationProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `102`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"notifications-core/provider-idempotency-unsupported"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#notifications-core-provider-idempotency-unsupported"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/notifications-core/src/libs/problems/NotificationProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `136`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"notifications-core/provider-not-configured"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#notifications-core-provider-not-configured"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/notifications-core/src/libs/problems/NotificationProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `32`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"notifications-core/provider-not-found"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#notifications-core-provider-not-found"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/notifications-core/src/libs/problems/NotificationProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `120`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"notifications-core/provider-not-registered"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#notifications-core-provider-not-registered"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/notifications-core/src/libs/problems/NotificationProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `48`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"notifications-core/send-max-attempts-invalid"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#notifications-core-send-max-attempts-invalid"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/notifications-core/src/libs/problems/NotificationProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `153`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"Conflict"`; `code`: `"notifications-core/template-already-registered"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#notifications-core-template-already-registered"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request conflicts with current state or an idempotency constraint."`; `operatorAction`: `"Inspect concurrent writes, idempotency keys, and uniqueness constraints."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Refresh state, resolve the conflict, and retry with the updated intent."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/notifications-core/src/libs/problems/NotificationProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `273`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"NotFound"`; `code`: `"notifications-core/template-not-found"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#notifications-core-template-not-found"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The requested resource or route-visible record does not exist."`; `operatorAction`: `"Confirm tenant scoping, data retention, and backing-store lookup behavior."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Verify the identifier and refresh the resource list before retrying."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/notifications-core/src/libs/problems/NotificationProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `291`; \}\]; `status`: `404`; `title`: `"Not Found"`; \}, \{ `category`: `"ValidationError"`; `code`: `"notifications-core/template-variables-invalid"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#notifications-core-template-variables-invalid"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/notifications-core/src/libs/problems/NotificationProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `310`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"Conflict"`; `code`: `"notifications-resend/idempotency-conflict"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#notifications-resend-idempotency-conflict"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Resend rejected reuse of an idempotency key for a different send request."`; `operatorAction`: `"Audit callers so each business send intent has one stable idempotency key."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Replay the original payload with the same key or use a new key for a changed send intent."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/notifications-resend/src/libs/problems/ResendNotificationProblem.ts"`; `kind`: `"problem-constructor"`; `line`: `54`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"notifications-resend/missing-config"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#notifications-resend-missing-config"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Required Resend configuration is absent or blank before provider readiness can be proven."`; `operatorAction`: `"Check deployment env/config injection and verify diagnostics do not expose the raw key."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Configure RESEND_API_KEY and a verified default sender, then rerun diagnostics."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/notifications-resend/src/libs/problems/ResendNotificationProblem.ts"`; `kind`: `"problem-constructor"`; `line`: `19`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"notifications-resend/retryable-upstream"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#notifications-resend-retryable-upstream"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Resend returned a transient status, rate limit, or network timeout."`; `operatorAction`: `"Check Resend status, rate limits, and retry-after/upstream status in telemetry."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry with the same idempotency key when the send intent is unchanged."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/notifications-resend/src/libs/problems/ResendNotificationProblem.ts"`; `kind`: `"problem-constructor"`; `line`: `65`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"notifications-resend/terminal-upstream"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#notifications-resend-terminal-upstream"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Resend rejected the request with a non-retryable upstream failure."`; `operatorAction`: `"Inspect redacted upstream code/status and fix provider configuration before retrying."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Do not retry unchanged input; correct the API key, domain, sender verification, or request content."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/notifications-resend/src/libs/problems/ResendNotificationProblem.ts"`; `kind`: `"problem-constructor"`; `line`: `76`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"ValidationError"`; `code`: `"notifications-resend/validation-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#notifications-resend-validation-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/notifications-resend/src/libs/problems/ResendNotificationProblem.ts"`; `kind`: `"problem-constructor"`; `line`: `40`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"Unauthorized"`; `code`: `"onboarding/context-required"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#onboarding-context-required"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request did not include valid authentication credentials."`; `operatorAction`: `"Check authentication configuration, token issuer, and clock skew."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Sign in again or provide a valid credential."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/onboarding-core/src/libs/problems/OnboardingProblems.ts"`; `kind`: `"problem-class"`; `line`: `29`; \}\]; `status`: `401`; `title`: `"Unauthorized"`; \}, \{ `category`: `"NotFound"`; `code`: `"onboarding/definition-not-found"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#onboarding-definition-not-found"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The requested resource or route-visible record does not exist."`; `operatorAction`: `"Confirm tenant scoping, data retention, and backing-store lookup behavior."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Verify the identifier and refresh the resource list before retrying."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/onboarding-core/src/libs/problems/OnboardingProblems.ts"`; `kind`: `"problem-class"`; `line`: `7`; \}\]; `status`: `404`; `title`: `"Not Found"`; \}, \{ `category`: `"NotFound"`; `code`: `"onboarding/step-not-found"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#onboarding-step-not-found"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The requested resource or route-visible record does not exist."`; `operatorAction`: `"Confirm tenant scoping, data retention, and backing-store lookup behavior."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Verify the identifier and refresh the resource list before retrying."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/onboarding-core/src/libs/problems/OnboardingProblems.ts"`; `kind`: `"problem-class"`; `line`: `18`; \}\]; `status`: `404`; `title`: `"Not Found"`; \}, \{ `category`: `"ValidationError"`; `code`: `"openapi-spec/controller-typescript-diagnostics"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#openapi-spec-controller-typescript-diagnostics"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/openapi-spec/src/libs/loadControllers.ts"`; `kind`: `"problem-constructor"`; `line`: `70`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"ValidationError"`; `code`: `"openapi-spec/invalid-contract"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#openapi-spec-invalid-contract"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/openapi-spec/src/libs/emitOpenAPI.ts"`; `kind`: `"problem-constructor"`; `line`: `106`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"BadRequest"`; `code`: `"openapi-spec/no-rest-controllers-found"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#openapi-spec-no-rest-controllers-found"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/openapi-spec/src/libs/loadControllers.ts"`; `kind`: `"problem-constructor"`; `line`: `31`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"OTLP_ENDPOINT_REQUIRED"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#otlp-endpoint-required"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/telemetry-sdk-node/src/libs/problems/TelemetryProblems.ts"`; `kind`: `"problem-class"`; `line`: `19`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"outbox-core/dispatch-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#outbox-core-dispatch-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/outbox-core/src/libs/problems/OutboxProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `86`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"outbox-core/failure-metadata-missing"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#outbox-core-failure-metadata-missing"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"A dispatcher attempted to mark an outbox record failed without the required retry metadata extensions."`; `operatorAction`: `"Audit dispatcher error mapping so every failure path preserves attempt, retryability, terminal state, and failedAt metadata."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Abort the dispatch attempt and pass an OutboxDispatchProblem or equivalent Problem with outbox retry metadata."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/outbox-core/src/libs/problems/OutboxProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `116`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"Conflict"`; `code`: `"outbox-core/record-id-conflict"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#outbox-core-record-id-conflict"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"A caller tried to create an outbox record with an explicit id that already belongs to another idempotency scope."`; `operatorAction`: `"Inspect the producer id/idempotency assignment path and remove any shared id generator or manual id reuse."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Reuse the original idempotency key for the same intent or choose a new record id for a different intent."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/outbox-core/src/libs/problems/OutboxProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `103`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"outbox-core/unit-of-work-context-invalid"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#outbox-core-unit-of-work-context-invalid"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"An outbox write received a Unit of Work context that was missing, malformed, or created by another store instance."`; `operatorAction`: `"Check transaction boundary wiring so repository and outbox writes share the same store-owned Unit of Work client."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Abort the write and use the context supplied by the active TransactionalOutboxStore.runInUnitOfWork callback."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/outbox-core/src/libs/problems/OutboxProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `129`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"Forbidden"`; `code`: `"OWNERSHIP_TRANSFER_REQUIRED"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#ownership-transfer-required"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The authenticated caller is not allowed to perform the requested action."`; `operatorAction`: `"Review policy, role, tenant, entitlement, and impersonation context."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Request the required permission or choose an allowed action."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/membership-core/src/libs/problems/MembershipProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `65`; \}\]; `status`: `403`; `title`: `"Forbidden"`; \}, \{ `category`: `"BadRequest"`; `code`: `"problems-core/invalid-extensions"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#problems-core-invalid-extensions"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/problems-core/src/libs/problems/InvalidExtensionsProblem.ts"`; `kind`: `"problem-class"`; `line`: `5`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"BadRequest"`; `code`: `"problems-core/parse-error"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#problems-core-parse-error"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/problems-core/src/libs/problems/ProblemDetailsParseProblem.ts"`; `kind`: `"problem-class"`; `line`: `5`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"ValidationError"`; `code`: `"problems-core/problem-registry-invalid"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#problems-core-problem-registry-invalid"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/problems-core/src/libs/ProblemRegistry.ts"`; `kind`: `"problem-constructor"`; `line`: `210`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"problems-core/unhandled-category"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#problems-core-unhandled-category"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/problems-core/src/libs/ProblemCategoryMapper.ts"`; `kind`: `"problem-class"`; `line`: `19`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"ValidationError"`; `code`: `"protocols-core/contract-graph-diagnostics"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#protocols-core-contract-graph-diagnostics"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/protocols-core/src/libs/ContractGraph.ts"`; `kind`: `"problem-constructor"`; `line`: `160`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"BadRequest"`; `code`: `"protocols-graphql/auth-invalid-header-format"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#protocols-graphql-auth-invalid-header-format"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `13`; `file`: `"packages/protocols-graphql/src/libs/guards/AuthGuard.ts"`; `kind`: `"problem-factory"`; `line`: `71`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"BadRequest"`; `code`: `"protocols-graphql/auth-invalid-request"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#protocols-graphql-auth-invalid-request"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `13`; `file`: `"packages/protocols-graphql/src/libs/guards/AuthGuard.ts"`; `kind`: `"problem-factory"`; `line`: `54`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"Unauthorized"`; `code`: `"protocols-graphql/auth-invalid-token"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#protocols-graphql-auth-invalid-token"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request did not include valid authentication credentials."`; `operatorAction`: `"Check authentication configuration, token issuer, and clock skew."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Sign in again or provide a valid credential."`; \}; `sources`: readonly \[\{ `column`: `10`; `file`: `"packages/protocols-graphql/src/libs/guards/AuthGuard.ts"`; `kind`: `"problem-factory"`; `line`: `14`; \}\]; `status`: `401`; `title`: `"Unauthorized"`; \}, \{ `category`: `"Unauthorized"`; `code`: `"protocols-graphql/auth-missing-header"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#protocols-graphql-auth-missing-header"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request did not include valid authentication credentials."`; `operatorAction`: `"Check authentication configuration, token issuer, and clock skew."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Sign in again or provide a valid credential."`; \}; `sources`: readonly \[\{ `column`: `13`; `file`: `"packages/protocols-graphql/src/libs/guards/AuthGuard.ts"`; `kind`: `"problem-factory"`; `line`: `63`; \}\]; `status`: `401`; `title`: `"Unauthorized"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"protocols-graphql/auth-verifier-unavailable"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#protocols-graphql-auth-verifier-unavailable"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `13`; `file`: `"packages/protocols-graphql/src/libs/guards/AuthGuard.ts"`; `kind`: `"problem-factory"`; `line`: `97`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"Forbidden"`; `code`: `"protocols-graphql/guard-denied"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#protocols-graphql-guard-denied"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The authenticated caller is not allowed to perform the requested action."`; `operatorAction`: `"Review policy, role, tenant, entitlement, and impersonation context."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Request the required permission or choose an allowed action."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/protocols-graphql/src/libs/problems/GuardProblems.ts"`; `kind`: `"problem-class"`; `line`: `4`; \}\]; `status`: `403`; `title`: `"Forbidden"`; \}, \{ `category`: `"BadRequest"`; `code`: `"protocols-rest/auth-invalid-header-format"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#protocols-rest-auth-invalid-header-format"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `13`; `file`: `"packages/protocols-rest/src/libs/guards/AuthGuard.ts"`; `kind`: `"problem-factory"`; `line`: `77`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"BadRequest"`; `code`: `"protocols-rest/auth-invalid-request"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#protocols-rest-auth-invalid-request"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `13`; `file`: `"packages/protocols-rest/src/libs/guards/AuthGuard.ts"`; `kind`: `"problem-factory"`; `line`: `59`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"Unauthorized"`; `code`: `"protocols-rest/auth-invalid-token"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#protocols-rest-auth-invalid-token"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request did not include valid authentication credentials."`; `operatorAction`: `"Check authentication configuration, token issuer, and clock skew."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Sign in again or provide a valid credential."`; \}; `sources`: readonly \[\{ `column`: `10`; `file`: `"packages/protocols-rest/src/libs/guards/AuthGuard.ts"`; `kind`: `"problem-factory"`; `line`: `15`; \}\]; `status`: `401`; `title`: `"Unauthorized"`; \}, \{ `category`: `"Unauthorized"`; `code`: `"protocols-rest/auth-missing-header"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#protocols-rest-auth-missing-header"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request did not include valid authentication credentials."`; `operatorAction`: `"Check authentication configuration, token issuer, and clock skew."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Sign in again or provide a valid credential."`; \}; `sources`: readonly \[\{ `column`: `13`; `file`: `"packages/protocols-rest/src/libs/guards/AuthGuard.ts"`; `kind`: `"problem-factory"`; `line`: `69`; \}\]; `status`: `401`; `title`: `"Unauthorized"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"protocols-rest/auth-verifier-unavailable"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#protocols-rest-auth-verifier-unavailable"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `13`; `file`: `"packages/protocols-rest/src/libs/guards/AuthGuard.ts"`; `kind`: `"problem-factory"`; `line`: `102`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"protocols-rest/duplicate-parameter-index"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#protocols-rest-duplicate-parameter-index"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `13`; `file`: `"packages/protocols-rest/src/libs/metadata/MetadataReader.ts"`; `kind`: `"problem-factory"`; `line`: `48`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"ValidationError"`; `code`: `"protocols-rest/request-validation-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#protocols-rest-request-validation-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/protocols-rest/src/libs/validators/ValidationProblem.ts"`; `kind`: `"problem-class"`; `line`: `31`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"protocols-rest/response-validation-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#protocols-rest-response-validation-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/protocols-rest/src/libs/validators/ValidationProblem.ts"`; `kind`: `"problem-class"`; `line`: `54`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"ValidationError"`; `code`: `"protocols-rest/validation-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#protocols-rest-validation-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/protocols-rest/src/libs/validators/ValidationProblem.ts"`; `kind`: `"problem-class"`; `line`: `12`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"protocols-trpc/duplicate-parameter-index"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#protocols-trpc-duplicate-parameter-index"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `13`; `file`: `"packages/protocols-trpc/src/libs/TrpcParamResolver.ts"`; `kind`: `"problem-factory"`; `line`: `71`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"protocols-trpc/duplicate-procedure-name"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#protocols-trpc-duplicate-procedure-name"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Two controller routes resolve to the same tRPC domain and procedure name."`; `operatorAction`: `"Inspect the duplicate-procedure diagnostic for the existing and conflicting controller routes and their decorator source locations, then change one domain or controller method name."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Use an application build where every tRPC procedure has a unique domain and controller method name combination."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/protocols-trpc/src/libs/createTrpcRouter.ts"`; `kind`: `"problem-class"`; `line`: `93`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"protocols-trpc/provider-container-required"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#protocols-trpc-provider-container-required"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/protocols-trpc/src/libs/createTrpcRouter.ts"`; `kind`: `"problem-class"`; `line`: `77`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"protocols-trpc/request-normalization-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#protocols-trpc-request-normalization-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/protocols-trpc/src/libs/TrpcExecutionContext.ts"`; `kind`: `"problem-class"`; `line`: `51`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"protocols-trpc/request-unavailable"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#protocols-trpc-request-unavailable"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/protocols-trpc/src/libs/TrpcExecutionContext.ts"`; `kind`: `"problem-class"`; `line`: `42`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"protocols-trpc/route-handler-not-callable"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#protocols-trpc-route-handler-not-callable"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/protocols-trpc/src/libs/createTrpcRouter.ts"`; `kind`: `"problem-class"`; `line`: `64`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"BadRequest"`; `code`: `"PUBLIC_EMAIL_DOMAIN_NOT_ALLOWED"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#public-email-domain-not-allowed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/invitation-core/src/libs/problems/DomainPolicyProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `5`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"TooManyRequests"`; `code`: `"RATE_LIMIT_EXCEEDED"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#rate-limit-exceeded"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller exceeded a rate, quota, or concurrency limit."`; `operatorAction`: `"Check limiter state, quota configuration, and abuse signals."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Wait for the retry window or reduce request volume."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/ratelimit-core/src/libs/problems/RateLimitExceededProblem.ts"`; `kind`: `"problem-constructor"`; `line`: `15`; \}\]; `status`: `429`; `title`: `"Too Many Requests"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"RATE_LIMIT_KEY_BUILDER_ERROR"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#rate-limit-key-builder-error"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/ratelimit-core/src/libs/problems/RateLimitConfigProblems.ts"`; `kind`: `"problem-class"`; `line`: `6`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"RATE_LIMIT_REFUND_UNSUPPORTED"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#rate-limit-refund-unsupported"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/ratelimit-core/src/libs/problems/RateLimitConfigProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `43`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"BadRequest"`; `code`: `"RATE_LIMIT_WINDOW_ERROR"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#rate-limit-window-error"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/ratelimit-core/src/libs/problems/RateLimitConfigProblems.ts"`; `kind`: `"problem-class"`; `line`: `16`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"ratelimit-upstash/invalid-policy"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#ratelimit-upstash-invalid-policy"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/ratelimit-upstash/src/libs/problems/RateLimitUpstashProblems.ts"`; `kind`: `"problem-class"`; `line`: `7`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"ratelimit-upstash/missing-config"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#ratelimit-upstash-missing-config"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/ratelimit-upstash/src/libs/problems/RateLimitUpstashProblems.ts"`; `kind`: `"problem-class"`; `line`: `21`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"ValidationError"`; `code`: `"ratelimit/prune-interval"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#ratelimit-prune-interval"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/ratelimit-core/src/libs/problems/RateLimitConfigProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `27`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"repository-core/batch-load-result-identity-mismatch"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#repository-core-batch-load-result-identity-mismatch"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/repository-core/src/libs/problems/BatchLoadProblems.ts"`; `kind`: `"problem-class"`; `line`: `77`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"repository-core/batch-load-result-key-duplicate"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#repository-core-batch-load-result-key-duplicate"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/repository-core/src/libs/problems/BatchLoadProblems.ts"`; `kind`: `"problem-class"`; `line`: `57`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"repository-core/batch-load-result-key-unexpected"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#repository-core-batch-load-result-key-unexpected"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/repository-core/src/libs/problems/BatchLoadProblems.ts"`; `kind`: `"problem-class"`; `line`: `67`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"repository-core/batch-load-result-unkeyed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#repository-core-batch-load-result-unkeyed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/repository-core/src/libs/problems/BatchLoadProblems.ts"`; `kind`: `"problem-class"`; `line`: `43`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"repository-core/batch-loader-factory-not-registered"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#repository-core-batch-loader-factory-not-registered"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/repository-core/src/libs/problems/BatchLoadProblems.ts"`; `kind`: `"problem-class"`; `line`: `4`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"repository-core/batch-loader-factory-resolution-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#repository-core-batch-loader-factory-resolution-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/repository-core/src/libs/problems/BatchLoadProblems.ts"`; `kind`: `"problem-class"`; `line`: `17`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"repository-core/batch-loader-scope-collision"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#repository-core-batch-loader-scope-collision"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/repository-core/src/libs/problems/BatchLoadProblems.ts"`; `kind`: `"problem-class"`; `line`: `29`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"RESEND_NOTIFICATION_FAILED"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#resend-notification-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/notifications-resend/src/libs/problems/ResendNotificationProblem.ts"`; `kind`: `"problem-constructor"`; `line`: `87`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"RETRY_ABORTED"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#retry-aborted"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/retry-core/src/libs/errors/RetryAbortedProblem.ts"`; `kind`: `"problem-class"`; `line`: `7`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"RETRY_CIRCUIT_BREAKER_INVALID_STATE"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#retry-circuit-breaker-invalid-state"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/retry-core/src/libs/errors/RetryInfrastructureProblem.ts"`; `kind`: `"problem-class"`; `line`: `13`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"RETRY_CIRCUIT_BREAKER_LOCK_FAILED"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#retry-circuit-breaker-lock-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/retry-core/src/libs/errors/RetryInfrastructureProblem.ts"`; `kind`: `"problem-class"`; `line`: `26`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"RETRY_EXHAUSTED"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#retry-exhausted"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/retry-core/src/libs/errors/RetryExhaustedProblem.ts"`; `kind`: `"problem-class"`; `line`: `7`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"ValidationError"`; `code`: `"retry-core/backoff-cancellation-unsupported"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#retry-core-backoff-cancellation-unsupported"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/retry-core/src/libs/errors/RetryCancellationUnsupportedProblem.ts"`; `kind`: `"problem-class"`; `line`: `7`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"retry-core/circuit-breaker-unexpected-state"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#retry-core-circuit-breaker-unexpected-state"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/retry-core/src/libs/problems/CircuitBreakerProblems.ts"`; `kind`: `"problem-class"`; `line`: `7`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"retry-core/success-hook-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#retry-core-success-hook-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The business callback completed successfully, but its onSuccess observation hook failed afterward."`; `operatorAction`: `"Inspect the original cause and repair the named onSuccess listener or telemetry path without replaying the completed callback."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Do not repeat the business operation from this failure; report the hook failure while preserving the successful callback outcome."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/retry-core/src/libs/errors/RetryInfrastructureProblem.ts"`; `kind`: `"problem-class"`; `line`: `75`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"Forbidden"`; `code`: `"ROLE_HIERARCHY_VIOLATION"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#role-hierarchy-violation"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The authenticated caller is not allowed to perform the requested action."`; `operatorAction`: `"Review policy, role, tenant, entitlement, and impersonation context."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Request the required permission or choose an allowed action."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/membership-core/src/libs/problems/MembershipProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `52`; \}\]; `status`: `403`; `title`: `"Forbidden"`; \}, \{ `category`: `"ValidationError"`; `code`: `"rpc-codegen/controller-typescript-diagnostics"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#rpc-codegen-controller-typescript-diagnostics"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/rpc-codegen/src/libs/loadRoutes.ts"`; `kind`: `"problem-constructor"`; `line`: `75`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"ValidationError"`; `code`: `"rpc-codegen/invalid-contract"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#rpc-codegen-invalid-contract"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/rpc-codegen/src/libs/generate.ts"`; `kind`: `"problem-constructor"`; `line`: `110`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"BadRequest"`; `code`: `"rpc-codegen/no-rest-controllers-found"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#rpc-codegen-no-rest-controllers-found"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/rpc-codegen/src/libs/loadRoutes.ts"`; `kind`: `"problem-constructor"`; `line`: `36`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"ValidationError"`; `code`: `"rpc-codegen/unsupported-form-schema"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#rpc-codegen-unsupported-form-schema"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/rpc-codegen/src/libs/generate.ts"`; `kind`: `"problem-constructor"`; `line`: `116`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"Forbidden"`; `code`: `"saas-demo/demo-endpoint-disabled"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#saas-demo-demo-endpoint-disabled"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The authenticated caller is not allowed to perform the requested action."`; `operatorAction`: `"Review policy, role, tenant, entitlement, and impersonation context."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Request the required permission or choose an allowed action."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/create-croco-app/templates/saas/apps/api-server/src/problems.ts"`; `kind`: `"problem-class"`; `line`: `4`; \}\]; `status`: `403`; `title`: `"Forbidden"`; \}, \{ `category`: `"ValidationError"`; `code`: `"saas-demo/invalid-jobs-query"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#saas-demo-invalid-jobs-query"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/create-croco-app/templates/saas/apps/api-server/src/problems.ts"`; `kind`: `"problem-class"`; `line`: `30`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"ValidationError"`; `code`: `"saas-demo/invalid-port"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#saas-demo-invalid-port"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/create-croco-app/templates/saas/apps/api-server/src/problems.ts"`; `kind`: `"problem-class"`; `line`: `17`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"NotFound"`; `code`: `"saas-demo/job-not-found"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#saas-demo-job-not-found"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The requested resource or route-visible record does not exist."`; `operatorAction`: `"Confirm tenant scoping, data retention, and backing-store lookup behavior."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Verify the identifier and refresh the resource list before retrying."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/create-croco-app/templates/saas/apps/api-server/src/problems.ts"`; `kind`: `"problem-class"`; `line`: `39`; \}\]; `status`: `404`; `title`: `"Not Found"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"saas-demo/smoke-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#saas-demo-smoke-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/create-croco-app/templates/saas/apps/api-server/src/problems.ts"`; `kind`: `"problem-class"`; `line`: `66`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"Conflict"`; `code`: `"saas-demo/tenant-already-exists"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#saas-demo-tenant-already-exists"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request conflicts with current state or an idempotency constraint."`; `operatorAction`: `"Inspect concurrent writes, idempotency keys, and uniqueness constraints."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Refresh state, resolve the conflict, and retry with the updated intent."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/create-croco-app/templates/saas/apps/api-server/src/problems.ts"`; `kind`: `"problem-class"`; `line`: `48`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"NotFound"`; `code`: `"saas-demo/tenant-not-found"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#saas-demo-tenant-not-found"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The requested resource or route-visible record does not exist."`; `operatorAction`: `"Confirm tenant scoping, data retention, and backing-store lookup behavior."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Verify the identifier and refresh the resource list before retrying."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/create-croco-app/templates/saas/apps/api-server/src/problems.ts"`; `kind`: `"problem-class"`; `line`: `57`; \}\]; `status`: `404`; `title`: `"Not Found"`; \}, \{ `category`: `"NotImplemented"`; `code`: `"SEARCH_CAPABILITY_UNAVAILABLE"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#search-capability-unavailable"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The requested capability is not supported by this runtime or adapter."`; `operatorAction`: `"Check runtime capability declarations and provider maturity documentation."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Use a supported capability or choose an adapter/runtime that provides it."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/search-core/src/libs/problems/SearchProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `65`; \}\]; `status`: `501`; `title`: `"Not Implemented"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"SEARCH_DRIZZLE_INVALID_ROW"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#search-drizzle-invalid-row"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/search-drizzle/src/libs/problems/InvalidSearchRowProblem.ts"`; `kind`: `"problem-class"`; `line`: `7`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"Conflict"`; `code`: `"search-core/sync-identity-conflict"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#search-core-sync-identity-conflict"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The event envelope tenant or document identity conflicts with context.tenantId, payload.id, or payload.tenantId."`; `operatorAction`: `"Use extensions.source to identify the conflicting field and verify envelope-authoritative tenant and document identity propagation."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Correct the conflicting event or execution context, then replay the event."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/search-core/src/libs/problems/SearchProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `23`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"NotFound"`; `code`: `"search-core/transform-not-found"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#search-core-transform-not-found"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The requested resource or route-visible record does not exist."`; `operatorAction`: `"Confirm tenant scoping, data retention, and backing-store lookup behavior."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Verify the identifier and refresh the resource list before retrying."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/search-core/src/libs/problems/SearchProblems.ts"`; `kind`: `"problem-class"`; `line`: `35`; \}\]; `status`: `404`; `title`: `"Not Found"`; \}, \{ `category`: `"NotFound"`; `code`: `"search-meilisearch/index-not-found"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#search-meilisearch-index-not-found"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The requested resource or route-visible record does not exist."`; `operatorAction`: `"Confirm tenant scoping, data retention, and backing-store lookup behavior."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Verify the identifier and refresh the resource list before retrying."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/search-meilisearch/src/libs/problems/MeilisearchProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `80`; \}\]; `status`: `404`; `title`: `"Not Found"`; \}, \{ `category`: `"ValidationError"`; `code`: `"search-meilisearch/invalid-request"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#search-meilisearch-invalid-request"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/search-meilisearch/src/libs/problems/MeilisearchProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `60`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"search-meilisearch/missing-config"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#search-meilisearch-missing-config"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/search-meilisearch/src/libs/problems/MeilisearchProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `39`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"search-meilisearch/retryable-upstream"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#search-meilisearch-retryable-upstream"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/search-meilisearch/src/libs/problems/MeilisearchProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `100`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"search-meilisearch/tenant-token-not-configured"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#search-meilisearch-tenant-token-not-configured"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/search-meilisearch/src/libs/problems/MeilisearchProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `140`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"search-meilisearch/terminal-upstream"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#search-meilisearch-terminal-upstream"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/search-meilisearch/src/libs/problems/MeilisearchProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `120`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"Forbidden"`; `code`: `"SEAT_LIMIT_EXCEEDED"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#seat-limit-exceeded"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The authenticated caller is not allowed to perform the requested action."`; `operatorAction`: `"Review policy, role, tenant, entitlement, and impersonation context."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Request the required permission or choose an allowed action."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/membership-core/src/libs/problems/MembershipProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `78`; \}\]; `status`: `403`; `title`: `"Forbidden"`; \}, \{ `category`: `"Forbidden"`; `code`: `"SELF_IMPERSONATION_NOT_ALLOWED"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#self-impersonation-not-allowed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The authenticated caller is not allowed to perform the requested action."`; `operatorAction`: `"Review policy, role, tenant, entitlement, and impersonation context."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Request the required permission or choose an allowed action."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/impersonation-core/src/libs/problems/ImpersonationProblems.ts"`; `kind`: `"problem-class"`; `line`: `4`; \}\]; `status`: `403`; `title`: `"Forbidden"`; \}, \{ `category`: `"ValidationError"`; `code`: `"starter/invalid-environment"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#starter-invalid-environment"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/create-croco-app/templates/spa-be-split/apps/api-server/src/problems.ts"`; `kind`: `"problem-class"`; `line`: `4`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"starter/unhandled-api-request"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#starter-unhandled-api-request"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/create-croco-app/templates/spa-be-split/apps/console-web/src/test/browser.ts"`; `kind`: `"problem-class"`; `line`: `8`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"NotFound"`; `code`: `"starter/user-not-found"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#starter-user-not-found"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The requested resource or route-visible record does not exist."`; `operatorAction`: `"Confirm tenant scoping, data retention, and backing-store lookup behavior."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Verify the identifier and refresh the resource list before retrying."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/create-croco-app/templates/spa-be-split/apps/api-server/src/problems.ts"`; `kind`: `"problem-class"`; `line`: `13`; \}\]; `status`: `404`; `title`: `"Not Found"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"STORAGE_DELETE_FAILED"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#storage-delete-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/storage-core/src/libs/problems/DeleteFailedProblem.ts"`; `kind`: `"problem-constructor"`; `line`: `8`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"NotFound"`; `code`: `"STORAGE_FILE_NOT_FOUND"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#storage-file-not-found"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The requested resource or route-visible record does not exist."`; `operatorAction`: `"Confirm tenant scoping, data retention, and backing-store lookup behavior."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Verify the identifier and refresh the resource list before retrying."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/storage-core/src/libs/problems/FileNotFoundProblem.ts"`; `kind`: `"problem-constructor"`; `line`: `11`; \}\]; `status`: `404`; `title`: `"Not Found"`; \}, \{ `category`: `"BadRequest"`; `code`: `"STORAGE_INVALID_KEY"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#storage-invalid-key"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/storage-core/src/libs/problems/InvalidKeyProblem.ts"`; `kind`: `"problem-class"`; `line`: `5`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"BadRequest"`; `code`: `"STORAGE_INVALID_SIGNED_URL_EXPIRY"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#storage-invalid-signed-url-expiry"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/storage-core/src/libs/problems/InvalidSignedUrlExpiryProblem.ts"`; `kind`: `"problem-class"`; `line`: `9`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"STORAGE_R2_EMPTY_BODY"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#storage-r2-empty-body"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/storage-r2/src/libs/problems/EmptyR2BodyProblem.ts"`; `kind`: `"problem-constructor"`; `line`: `9`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"STORAGE_R2_MISSING_CONFIG"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#storage-r2-missing-config"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/storage-r2/src/libs/problems/MissingR2ConfigProblem.ts"`; `kind`: `"problem-class"`; `line`: `8`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"STORAGE_R2_OBJECT_TOO_LARGE"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#storage-r2-object-too-large"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/storage-r2/src/libs/problems/R2ObjectTooLargeProblem.ts"`; `kind`: `"problem-class"`; `line`: `8`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"STORAGE_R2_READINESS_FAILED"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#storage-r2-readiness-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/storage-r2/src/libs/problems/R2ReadinessProblem.ts"`; `kind`: `"problem-class"`; `line`: `14`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"STORAGE_UPLOAD_FAILED"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#storage-upload-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/storage-core/src/libs/problems/UploadFailedProblem.ts"`; `kind`: `"problem-constructor"`; `line`: `11`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"storage-cloudflare/missing-config"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#storage-cloudflare-missing-config"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/storage-cloudflare/src/libs/CloudflareImagesDiagnosticsProvider.ts"`; `kind`: `"problem-constructor"`; `line`: `37`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"storage-cloudflare/retryable-upstream"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#storage-cloudflare-retryable-upstream"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/storage-cloudflare/src/libs/CloudflareImagesDiagnosticsProvider.ts"`; `kind`: `"problem-constructor"`; `line`: `70`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"storage-cloudflare/terminal-upstream"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#storage-cloudflare-terminal-upstream"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/storage-cloudflare/src/libs/CloudflareImagesDiagnosticsProvider.ts"`; `kind`: `"problem-constructor"`; `line`: `86`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"ValidationError"`; `code`: `"storage-cloudflare/validation-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#storage-cloudflare-validation-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/storage-cloudflare/src/libs/CloudflareImagesDiagnosticsProvider.ts"`; `kind`: `"problem-constructor"`; `line`: `57`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"BadRequest"`; `code`: `"storage-cloudinary/invalid-upload-intent-ttl"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#storage-cloudinary-invalid-upload-intent-ttl"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `13`; `file`: `"packages/storage-cloudinary/src/libs/CloudinaryProvider.ts"`; `kind`: `"problem-factory"`; `line`: `332`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"storage-cloudinary/missing-config"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#storage-cloudinary-missing-config"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/storage-cloudinary/src/libs/CloudinaryDiagnosticsProvider.ts"`; `kind`: `"problem-constructor"`; `line`: `51`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"storage-cloudinary/retryable-upstream"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#storage-cloudinary-retryable-upstream"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/storage-cloudinary/src/libs/CloudinaryDiagnosticsProvider.ts"`; `kind`: `"problem-constructor"`; `line`: `84`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"storage-cloudinary/terminal-upstream"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#storage-cloudinary-terminal-upstream"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/storage-cloudinary/src/libs/CloudinaryDiagnosticsProvider.ts"`; `kind`: `"problem-constructor"`; `line`: `100`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"ValidationError"`; `code`: `"storage-cloudinary/validation-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#storage-cloudinary-validation-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/storage-cloudinary/src/libs/CloudinaryDiagnosticsProvider.ts"`; `kind`: `"problem-constructor"`; `line`: `71`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"BadRequest"`; `code`: `"storage/invalid-upload-intent-ttl"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#storage-invalid-upload-intent-ttl"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `13`; `file`: `"packages/storage-cloudflare/src/libs/CloudflareImagesProvider.ts"`; `kind`: `"problem-factory"`; `line`: `306`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"STRATEGY_UNAVAILABLE"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#strategy-unavailable"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/search-core/src/libs/problems/SearchProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `44`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"STRUCTURED_OUTPUT_ERROR"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#structured-output-error"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/llm-core/src/libs/problems/LlmServiceProblem.ts"`; `kind`: `"problem-constructor"`; `line`: `52`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"tasks-core/duplicate-task-registration"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#tasks-core-duplicate-task-registration"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/tasks-core/src/libs/problems/TasksProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `13`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"tasks-core/execution-timeout"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#tasks-core-execution-timeout"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/tasks-core/src/libs/problems/TasksProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `46`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"NotFound"`; `code`: `"tasks-core/task-not-found"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#tasks-core-task-not-found"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The requested resource or route-visible record does not exist."`; `operatorAction`: `"Confirm tenant scoping, data retention, and backing-store lookup behavior."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Verify the identifier and refresh the resource list before retrying."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/tasks-core/src/libs/problems/TasksProblems.ts"`; `kind`: `"problem-class"`; `line`: `4`; \}\]; `status`: `404`; `title`: `"Not Found"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"tasks-core/task-runner-di-failure"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#tasks-core-task-runner-di-failure"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/tasks-core/src/libs/problems/TasksProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `29`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"BadRequest"`; `code`: `"tasks-qstash/invalid-publish-request"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#tasks-qstash-invalid-publish-request"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/tasks-qstash/src/libs/problems/QStashTaskProblems.ts"`; `kind`: `"problem-class"`; `line`: `18`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"tasks-qstash/missing-config"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#tasks-qstash-missing-config"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/tasks-qstash/src/libs/problems/QStashTaskProblems.ts"`; `kind`: `"problem-class"`; `line`: `4`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"ValidationError"`; `code`: `"TELEMETRY_AUTO_INSTRUMENTATION_INVALID_CONFIG"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#telemetry-auto-instrumentation-invalid-config"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/telemetry-sdk-node/src/libs/problems/TelemetryAutoInstrumentationProblem.ts"`; `kind`: `"problem-class"`; `line`: `7`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"NotImplemented"`; `code`: `"TELEMETRY_FORCE_FLUSH_UNSUPPORTED"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#telemetry-force-flush-unsupported"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The requested capability is not supported by this runtime or adapter."`; `operatorAction`: `"Check runtime capability declarations and provider maturity documentation."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Use a supported capability or choose an adapter/runtime that provides it."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/telemetry-sdk-node/src/libs/problems/TelemetryProblems.ts"`; `kind`: `"problem-class"`; `line`: `56`; \}\]; `status`: `501`; `title`: `"Not Implemented"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"TELEMETRY_RUNTIME_ERROR"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#telemetry-runtime-error"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/telemetry-sdk-node/src/libs/problems/TelemetryProblems.ts"`; `kind`: `"problem-class"`; `line`: `69`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"BadRequest"`; `code`: `"TELEMETRY_SAMPLER_INVALID_CONFIG"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#telemetry-sampler-invalid-config"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/telemetry-sdk-node/src/libs/problems/TelemetryProblems.ts"`; `kind`: `"problem-class"`; `line`: `7`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"BadRequest"`; `code`: `"TELEMETRY_SIGNAL_UNSUPPORTED"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#telemetry-signal-unsupported"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/telemetry-sdk-node/src/libs/problems/TelemetryProblems.ts"`; `kind`: `"problem-class"`; `line`: `38`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"Forbidden"`; `code`: `"tenant-core/admin-bypass-reason-required"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#tenant-core-admin-bypass-reason-required"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The authenticated caller is not allowed to perform the requested action."`; `operatorAction`: `"Review policy, role, tenant, entitlement, and impersonation context."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Request the required permission or choose an allowed action."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/tenant-core/src/libs/problems/TenantIsolationProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `60`; \}\]; `status`: `403`; `title`: `"Forbidden"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"tenant-core/cross-tenant-leak"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#tenant-core-cross-tenant-leak"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/tenant-core/src/libs/problems/TenantIsolationProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `79`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"BadRequest"`; `code`: `"tenant-core/default-tenant-fallback"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#tenant-core-default-tenant-fallback"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/tenant-core/src/libs/problems/TenantIsolationProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `48`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"tenant-core/duplicate-tenant-manager-registration"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#tenant-core-duplicate-tenant-manager-registration"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/tenant-core/src/libs/problems/DuplicateTenantManagerRegistrationProblem.ts"`; `kind`: `"problem-class"`; `line`: `4`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"Unauthorized"`; `code`: `"tenant-core/isolation-context-missing"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#tenant-core-isolation-context-missing"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request did not include valid authentication credentials."`; `operatorAction`: `"Check authentication configuration, token issuer, and clock skew."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Sign in again or provide a valid credential."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/tenant-core/src/libs/problems/TenantIsolationProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `39`; \}\]; `status`: `401`; `title`: `"Unauthorized"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"tenant-core/tenant-manager-not-registered"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#tenant-core-tenant-manager-not-registered"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/tenant-core/src/libs/problems/TenantManagerNotRegisteredProblem.ts"`; `kind`: `"problem-class"`; `line`: `4`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"Forbidden"`; `code`: `"tenant-core/unsafe-query"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#tenant-core-unsafe-query"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The authenticated caller is not allowed to perform the requested action."`; `operatorAction`: `"Review policy, role, tenant, entitlement, and impersonation context."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Request the required permission or choose an allowed action."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/tenant-core/src/libs/problems/TenantIsolationProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `69`; \}\]; `status`: `403`; `title`: `"Forbidden"`; \}, \{ `category`: `"NotFound"`; `code`: `"tenant/not-found"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#tenant-not-found"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The requested resource or route-visible record does not exist."`; `operatorAction`: `"Confirm tenant scoping, data retention, and backing-store lookup behavior."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Verify the identifier and refresh the resource list before retrying."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/tenant-core/src/libs/problems/TenantNotFoundProblem.ts"`; `kind`: `"problem-class"`; `line`: `7`; \}\]; `status`: `404`; `title`: `"Not Found"`; \}, \{ `category`: `"Unauthorized"`; `code`: `"tenant/required"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#tenant-required"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request did not include valid authentication credentials."`; `operatorAction`: `"Check authentication configuration, token issuer, and clock skew."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Sign in again or provide a valid credential."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/tenant-core/src/libs/problems/TenantRequiredProblem.ts"`; `kind`: `"problem-class"`; `line`: `7`; \}\]; `status`: `401`; `title`: `"Unauthorized"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"testing-resources/cleanup-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#testing-resources-cleanup-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `12`; `file`: `"packages/testing-resources/src/libs/problems.ts"`; `kind`: `"problem-metadata"`; `line`: `17`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"testing-resources/health-check-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#testing-resources-health-check-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `19`; `file`: `"packages/testing-resources/src/libs/problems.ts"`; `kind`: `"problem-metadata"`; `line`: `13`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"testing-resources/invalid-configuration"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#testing-resources-invalid-configuration"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/testing-resources/src/libs/problems.ts"`; `kind`: `"problem-constructor"`; `line`: `25`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"testing-resources/migration-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#testing-resources-migration-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `14`; `file`: `"packages/testing-resources/src/libs/problems.ts"`; `kind`: `"problem-metadata"`; `line`: `9`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"testing-resources/startup-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#testing-resources-startup-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `12`; `file`: `"packages/testing-resources/src/libs/problems.ts"`; `kind`: `"problem-metadata"`; `line`: `5`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"testing/after-commit-hooks-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#testing-after-commit-hooks-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/testing/src/libs/testing.ts"`; `kind`: `"problem-constructor"`; `line`: `184`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"testing/telemetry-provider-already-installed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#testing-telemetry-provider-already-installed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/testing/src/libs/telemetry-testing.ts"`; `kind`: `"problem-constructor"`; `line`: `54`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"testing/test-kernel-disposal-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#testing-test-kernel-disposal-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/testing/src/libs/TestKernel.ts"`; `kind`: `"problem-constructor"`; `line`: `189`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"testing/test-kernel-disposed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#testing-test-kernel-disposed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/testing/src/libs/TestKernel.ts"`; `kind`: `"problem-constructor"`; `line`: `217`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"testing/test-kernel-leak"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#testing-test-kernel-leak"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/testing/src/libs/TestKernel.ts"`; `kind`: `"problem-constructor"`; `line`: `227`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"testing/test-kernel-outbound-call"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#testing-test-kernel-outbound-call"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/testing/src/libs/TestRuntime.ts"`; `kind`: `"problem-constructor"`; `line`: `49`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"testing/test-kernel-resource-fidelity"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#testing-test-kernel-resource-fidelity"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/testing/src/libs/TestKernel.ts"`; `kind`: `"problem-constructor"`; `line`: `238`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"testing/test-kernel-resource-not-found"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#testing-test-kernel-resource-not-found"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/testing/src/libs/TestKernel.ts"`; `kind`: `"problem-constructor"`; `line`: `254`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"testing/test-kernel-resource-registration"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#testing-test-kernel-resource-registration"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/testing/src/libs/TestKernel.ts"`; `kind`: `"problem-constructor"`; `line`: `267`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"testing/test-kernel-validation-policy"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#testing-test-kernel-validation-policy"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/testing/src/libs/TestKernel.ts"`; `kind`: `"problem-constructor"`; `line`: `176`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"ValidationError"`; `code`: `"testing/test-runtime-configuration"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#testing-test-runtime-configuration"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/testing/src/libs/TestRuntime.ts"`; `kind`: `"problem-constructor"`; `line`: `65`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"testing/test-runtime-drain-limit"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#testing-test-runtime-drain-limit"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/testing/src/libs/TestRuntime.ts"`; `kind`: `"problem-constructor"`; `line`: `76`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"testing/transaction-context-not-active"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#testing-transaction-context-not-active"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/testing/src/libs/testing.ts"`; `kind`: `"problem-constructor"`; `line`: `171`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"BadRequest"`; `code`: `"TOKEN_LIMIT_EXCEEDED"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#token-limit-exceeded"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/llm-core/src/libs/problems/LlmProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `38`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"TOOL_EXECUTION_ERROR"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#tool-execution-error"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/llm-core/src/libs/problems/LlmServiceProblem.ts"`; `kind`: `"problem-constructor"`; `line`: `61`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"BadRequest"`; `code`: `"transports-graphql/request-body-aborted"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#transports-graphql-request-body-aborted"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/transports-graphql/src/libs/problems/GraphQLTransportProblems.ts"`; `kind`: `"problem-class"`; `line`: `47`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"PayloadTooLarge"`; `code`: `"transports-graphql/request-body-too-large"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#transports-graphql-request-body-too-large"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request body exceeded the configured byte limit."`; `operatorAction`: `"Confirm route body limits and upstream proxy limits match the intended upload policy."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Reduce the request body and retry."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/transports-graphql/src/libs/problems/GraphQLTransportProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `33`; \}\]; `status`: `413`; `title`: `"Payload Too Large"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"transports-graphql/resolvers-not-configured"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#transports-graphql-resolvers-not-configured"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/transports-graphql/src/libs/problems/GraphQLTransportProblems.ts"`; `kind`: `"problem-class"`; `line`: `4`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"transports-graphql/schema-not-configured"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#transports-graphql-schema-not-configured"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/transports-graphql/src/libs/problems/GraphQLTransportProblems.ts"`; `kind`: `"problem-class"`; `line`: `16`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"transports-graphql/server-not-initialized"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#transports-graphql-server-not-initialized"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/transports-graphql/src/libs/problems/GraphQLTransportProblems.ts"`; `kind`: `"problem-class"`; `line`: `24`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"transports-http/body-limit-invalid-configuration"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#transports-http-body-limit-invalid-configuration"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The HTTP body-limit middleware was configured with an invalid byte boundary."`; `operatorAction`: `"Set the body-limit value to a finite, nonnegative safe integer and restart the service."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Ask the operator to correct the service configuration before retrying."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/transports-http/src/libs/problems/HttpRequestBodyProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `15`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"transports-http/di-bootstrap-validation"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#transports-http-di-bootstrap-validation"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `11`; `file`: `"packages/transports-http/src/libs/CrocoApp.ts"`; `kind`: `"problem-factory"`; `line`: `315`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"transports-http/duplicate-health-check"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#transports-http-duplicate-health-check"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `10`; `file`: `"packages/transports-http/src/libs/HealthCheckRegistry.ts"`; `kind`: `"problem-factory"`; `line`: `71`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"transports-http/duplicate-route-definition"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#transports-http-duplicate-route-definition"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Two REST controller methods compile to the same HTTP method and runtime path."`; `operatorAction`: `"Inspect the duplicate-route diagnostic for the existing and conflicting controller methods and their route decorator source locations, then rename one route path or change one HTTP method."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Use an application build where every route decorator has a unique HTTP method and path combination."`; \}; `sources`: readonly \[\{ `column`: `15`; `file`: `"packages/transports-http/src/libs/RouteCompiler.ts"`; `kind`: `"problem-factory"`; `line`: `118`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"transports-http/graceful-shutdown-configuration"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#transports-http-graceful-shutdown-configuration"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Graceful shutdown was configured with a non-finite total or event-bus drain timeout."`; `operatorAction`: `"Set timeoutMs and eventBusDrainTimeoutMs to finite numbers, then reconstruct the middleware or controller before retrying shutdown."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Ask the operator to correct the graceful shutdown timeout configuration before reconstructing the HTTP application."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/transports-http/src/libs/problems/GracefulShutdownProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `20`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"transports-http/graceful-shutdown-timeout"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#transports-http-graceful-shutdown-timeout"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Graceful shutdown did not finish a phase before that phase's configured deadline elapsed."`; `operatorAction`: `"Inspect the reported phase, timeoutMs, and elapsedMs extensions, then investigate slow request handlers, event-bus draining, or shutdown hooks."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Wait for the stalled shutdown phase to be investigated before retrying; active requests or cleanup work may still be settling."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/transports-http/src/libs/problems/GracefulShutdownProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `47`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"transports-http/middleware-next-called-multiple-times"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#transports-http-middleware-next-called-multiple-times"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Compatibility metadata for the previous HTTP middleware multiple-next code. New runtime failures use CROCO_HTTP_MIDDLEWARE_002 and preserve this value as extensions.legacyCode."`; `operatorAction`: `"Update dashboards, alerts, and runbooks from transports-http/middleware-next-called-multiple-times to CROCO_HTTP_MIDDLEWARE_002 before removing legacy-code matching."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Migrate Problem.code matchers to CROCO_HTTP_MIDDLEWARE_002; use extensions.legacyCode only while rolling out compatibility changes."`; \}; `sources`: readonly \[\{ `column`: `49`; `file`: `"packages/transports-http/src/libs/CrocoRouteRegistrar.ts"`; `kind`: `"problem-metadata"`; `line`: `39`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"transports-http/pipe-resolution-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#transports-http-pipe-resolution-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `13`; `file`: `"packages/transports-http/src/libs/ParamResolver.ts"`; `kind`: `"problem-factory"`; `line`: `184`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"transports-http/provider-resolution-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#transports-http-provider-resolution-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `11`; `file`: `"packages/transports-http/src/libs/RouteCompiler.ts"`; `kind`: `"problem-factory"`; `line`: `70`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"BadRequest"`; `code`: `"transports-http/request-body-read-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#transports-http-request-body-read-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/transports-http/src/libs/problems/HttpRequestBodyProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `67`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"PayloadTooLarge"`; `code`: `"transports-http/request-body-too-large"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#transports-http-request-body-too-large"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request body exceeded the configured byte limit."`; `operatorAction`: `"Confirm route body limits and upstream proxy limits match the intended upload policy."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Reduce the request body and retry."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/transports-http/src/libs/problems/HttpRequestBodyProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `31`; \}\]; `status`: `413`; `statusPolicy`: \{ `configuration`: `"bodyLimitMiddleware.statusCode"`; `defaultStatus`: `413`; `kind`: `"runtime-configurable"`; \}; `title`: `"Payload Too Large"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"transports-http/request-body-unavailable"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#transports-http-request-body-unavailable"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/transports-http/src/libs/problems/HttpRequestBodyProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `52`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"transports-http/route-method-not-function"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#transports-http-route-method-not-function"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `17`; `file`: `"packages/transports-http/src/libs/RouteCompiler.ts"`; `kind`: `"problem-factory"`; `line`: `193`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"Conflict"`; `code`: `"transports-http/runtime-capability-invalid"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#transports-http-runtime-capability-invalid"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request conflicts with current state or an idempotency constraint."`; `operatorAction`: `"Inspect concurrent writes, idempotency keys, and uniqueness constraints."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Refresh state, resolve the conflict, and retry with the updated intent."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/transports-http/src/libs/runtimeContext.ts"`; `kind`: `"problem-class"`; `line`: `101`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"transports-http/security-middleware-validation"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#transports-http-security-middleware-validation"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Compatibility metadata for the previous HTTP security middleware validation code. New runtime failures use CROCO_HTTP_SECURITY_001 and preserve this value as extensions.legacyCode."`; `operatorAction`: `"Update dashboards, alerts, and runbooks from transports-http/security-middleware-validation to CROCO_HTTP_SECURITY_001 before removing legacy-code matching."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Migrate Problem.code matchers to CROCO_HTTP_SECURITY_001; use extensions.legacyCode only while rolling out compatibility changes."`; \}; `sources`: readonly \[\{ `column`: `55`; `file`: `"packages/transports-http/src/libs/CrocoApp.ts"`; `kind`: `"problem-metadata"`; `line`: `88`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"transports-http/unsupported-route-method"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#transports-http-unsupported-route-method"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `15`; `file`: `"packages/transports-http/src/libs/CrocoRouteRegistrar.ts"`; `kind`: `"problem-factory"`; `line`: `245`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"triggers-core/duplicate-trigger-metadata"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#triggers-core-duplicate-trigger-metadata"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `17`; `file`: `"packages/triggers-core/src/libs/TriggerRegistry.ts"`; `kind`: `"problem-factory"`; `line`: `69`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"triggers-core/duplicate-trigger-metadata-entry"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#triggers-core-duplicate-trigger-metadata-entry"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `17`; `file`: `"packages/triggers-core/src/libs/TriggerRegistry.ts"`; `kind`: `"problem-factory"`; `line`: `121`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"triggers-qstash/duplicate-schedule-id"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#triggers-qstash-duplicate-schedule-id"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `15`; `file`: `"packages/triggers-qstash/src/libs/QStashScheduler.ts"`; `kind`: `"problem-factory"`; `line`: `253`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"triggers-qstash/execution-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#triggers-qstash-execution-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `13`; `file`: `"packages/triggers-qstash/src/libs/QStashTriggerHandler.ts"`; `kind`: `"problem-metadata"`; `line`: `264`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"triggers-qstash/service-resolution-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#triggers-qstash-service-resolution-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `15`; `file`: `"packages/triggers-qstash/src/libs/QStashTriggerHandler.ts"`; `kind`: `"problem-metadata"`; `line`: `254`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"Forbidden"`; `code`: `"TRPC_ACCESS_DENIED"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#trpc-access-denied"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The authenticated caller is not allowed to perform the requested action."`; `operatorAction`: `"Review policy, role, tenant, entitlement, and impersonation context."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Request the required permission or choose an allowed action."`; \}; `sources`: readonly \[\{ `column`: `15`; `file`: `"packages/protocols-trpc/src/libs/TrpcExecutionPipeline.ts"`; `kind`: `"problem-factory"`; `line`: `40`; \}\]; `status`: `403`; `title`: `"Forbidden"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"tx-core/after-commit-hooks-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#tx-core-after-commit-hooks-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/tx-core/src/libs/problems/TransactionProblems.ts"`; `kind`: `"problem-class"`; `line`: `103`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"tx-core/after-commit-outcome-required"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#tx-core-after-commit-outcome-required"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/tx-core/src/libs/problems/TransactionProblems.ts"`; `kind`: `"problem-class"`; `line`: `35`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"tx-core/after-commit-registration-closed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#tx-core-after-commit-registration-closed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/tx-core/src/libs/problems/TransactionProblems.ts"`; `kind`: `"problem-class"`; `line`: `50`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"tx-core/decorator-misuse"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#tx-core-decorator-misuse"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/tx-core/src/libs/problems/TransactionProblems.ts"`; `kind`: `"problem-class"`; `line`: `13`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"tx-core/detached-transaction-operation"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#tx-core-detached-transaction-operation"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/tx-core/src/libs/problems/TransactionProblems.ts"`; `kind`: `"problem-class"`; `line`: `61`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"tx-core/duplicate-tx-manager-registration"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#tx-core-duplicate-tx-manager-registration"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/tx-core/src/libs/errors.ts"`; `kind`: `"problem-class"`; `line`: `7`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"ValidationError"`; `code`: `"tx-core/invalid-transaction-timeout"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#tx-core-invalid-transaction-timeout"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/tx-core/src/libs/problems/TransactionProblems.ts"`; `kind`: `"problem-class"`; `line`: `87`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"tx-core/manager-not-registered"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#tx-core-manager-not-registered"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/tx-core/src/libs/errors.ts"`; `kind`: `"problem-class"`; `line`: `23`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"tx-core/missing-transaction-context"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#tx-core-missing-transaction-context"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/tx-core/src/libs/problems/TransactionProblems.ts"`; `kind`: `"problem-class"`; `line`: `24`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"tx-core/outcome-requires-root"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#tx-core-outcome-requires-root"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/tx-core/src/libs/problems/TransactionProblems.ts"`; `kind`: `"problem-class"`; `line`: `76`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"BusinessRuleViolation"`; `code`: `"tx-core/propagation-error"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#tx-core-propagation-error"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request is syntactically valid but violates a domain rule."`; `operatorAction`: `"Review domain policy, entitlement, quota, and lifecycle rule evidence."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Change the workflow state or request values so the business rule is satisfied."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/tx-core/src/libs/errors.ts"`; `kind`: `"problem-class"`; `line`: `34`; \}\]; `status`: `422`; `title`: `"Business Rule Violation"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"tx-core/transaction-outcome-unknown"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#tx-core-transaction-outcome-unknown"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/tx-core/src/libs/problems/TransactionProblems.ts"`; `kind`: `"problem-class"`; `line`: `165`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"tx-core/transaction-rollback-confirmed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#tx-core-transaction-rollback-confirmed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/tx-core/src/libs/problems/TransactionProblems.ts"`; `kind`: `"problem-class"`; `line`: `147`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"tx-core/transaction-timeout"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#tx-core-transaction-timeout"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/tx-core/src/libs/problems/TransactionProblems.ts"`; `kind`: `"problem-class"`; `line`: `130`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"tx-drizzle/rls-configuration-invalid"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#tx-drizzle-rls-configuration-invalid"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"A PostgreSQL RLS helper received malformed static identifier or setting-key configuration."`; `operatorAction`: `"Use the reported field name and the @croco/tx-drizzle RLS contract to correct the configuration, then restart the service."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Ask the operator to correct the RLS configuration before retrying."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/tx-drizzle/src/libs/problems/TxDrizzleProblems.ts"`; `kind`: `"problem-class"`; `line`: `7`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"tx-drizzle/rls-debug-logging-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#tx-drizzle-rls-debug-logging-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Requested RLS debug logging could not initialize or write its diagnostic event."`; `operatorAction`: `"Provide an RlsLogger or register the framework Logger, then verify its info() output path before retrying the transaction."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Ask the operator to restore the configured logger before retrying."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/tx-drizzle/src/libs/problems/TxDrizzleProblems.ts"`; `kind`: `"problem-class"`; `line`: `57`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"tx-drizzle/rls-execute-unsupported"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#tx-drizzle-rls-execute-unsupported"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/tx-drizzle/src/libs/problems/TxDrizzleProblems.ts"`; `kind`: `"problem-class"`; `line`: `29`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"tx-drizzle/savepoint-unsupported"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#tx-drizzle-savepoint-unsupported"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/tx-drizzle/src/libs/problems/TxDrizzleProblems.ts"`; `kind`: `"problem-class"`; `line`: `76`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"tx-drizzle/tenant-context-required"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#tx-drizzle-tenant-context-required"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/tx-drizzle/src/libs/problems/TxDrizzleProblems.ts"`; `kind`: `"problem-class"`; `line`: `21`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"Unauthorized"`; `code`: `"UNAUTHORIZED"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#unauthorized"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request did not include valid authentication credentials."`; `operatorAction`: `"Check authentication configuration, token issuer, and clock skew."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Sign in again or provide a valid credential."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/auth-core/src/libs/problems/AuthProblems.ts"`; `kind`: `"problem-class"`; `line`: `5`; \}\]; `status`: `401`; `title`: `"Unauthorized"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"WEBHOOK_PROCESSING_FAILED"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#webhook-processing-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/billing-polar/src/libs/problems/WebhookProcessingProblem.ts"`; `kind`: `"problem-class"`; `line`: `4`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"BadRequest"`; `code`: `"WEBHOOK_VALIDATION_FAILED"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#webhook-validation-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/billing-polar/src/libs/problems/WebhookValidationProblem.ts"`; `kind`: `"problem-class"`; `line`: `4`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"webhooks-core/configuration"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#webhooks-core-configuration"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `11`; `file`: `"packages/webhooks-core/src/libs/problems/WebhookProblems.ts"`; `kind`: `"problem-metadata"`; `line`: `38`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"webhooks-core/dispatch-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#webhooks-core-dispatch-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `11`; `file`: `"packages/webhooks-core/src/libs/problems/WebhookProblems.ts"`; `kind`: `"problem-metadata"`; `line`: `117`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"Conflict"`; `code`: `"webhooks-core/duplicate-event"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#webhooks-core-duplicate-event"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request conflicts with current state or an idempotency constraint."`; `operatorAction`: `"Inspect concurrent writes, idempotency keys, and uniqueness constraints."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Refresh state, resolve the conflict, and retry with the updated intent."`; \}; `sources`: readonly \[\{ `column`: `11`; `file`: `"packages/webhooks-core/src/libs/problems/WebhookProblems.ts"`; `kind`: `"problem-metadata"`; `line`: `139`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"BadRequest"`; `code`: `"webhooks-core/invalid-envelope"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#webhooks-core-invalid-envelope"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `11`; `file`: `"packages/webhooks-core/src/libs/problems/WebhookProblems.ts"`; `kind`: `"problem-metadata"`; `line`: `74`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"BadRequest"`; `code`: `"webhooks-core/invalid-fixture"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#webhooks-core-invalid-fixture"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `11`; `file`: `"packages/webhooks-core/src/libs/problems/WebhookProblems.ts"`; `kind`: `"problem-metadata"`; `line`: `178`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"BadRequest"`; `code`: `"webhooks-core/invalid-signature"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#webhooks-core-invalid-signature"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `11`; `file`: `"packages/webhooks-core/src/libs/problems/WebhookProblems.ts"`; `kind`: `"problem-metadata"`; `line`: `54`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"Conflict"`; `code`: `"webhooks-core/outbound-acceptance-unknown"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#webhooks-core-outbound-acceptance-unknown"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request conflicts with current state or an idempotency constraint."`; `operatorAction`: `"Inspect concurrent writes, idempotency keys, and uniqueness constraints."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Refresh state, resolve the conflict, and retry with the updated intent."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/webhooks-core/src/libs/outbound/OutboundWebhookProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `97`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"webhooks-core/outbound-configuration"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#webhooks-core-outbound-configuration"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/webhooks-core/src/libs/outbound/OutboundWebhookProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `119`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"NotFound"`; `code`: `"webhooks-core/outbound-endpoint-not-found"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#webhooks-core-outbound-endpoint-not-found"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The requested resource or route-visible record does not exist."`; `operatorAction`: `"Confirm tenant scoping, data retention, and backing-store lookup behavior."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Verify the identifier and refresh the resource list before retrying."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/webhooks-core/src/libs/outbound/OutboundWebhookProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `53`; \}\]; `status`: `404`; `title`: `"Not Found"`; \}, \{ `category`: `"ValidationError"`; `code`: `"webhooks-core/outbound-invalid-event"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#webhooks-core-outbound-invalid-event"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/webhooks-core/src/libs/outbound/OutboundWebhookProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `31`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"ValidationError"`; `code`: `"webhooks-core/outbound-invalid-secret-version"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#webhooks-core-outbound-invalid-secret-version"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/webhooks-core/src/libs/outbound/OutboundWebhookProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `64`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"ValidationError"`; `code`: `"webhooks-core/outbound-invalid-url"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#webhooks-core-outbound-invalid-url"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/webhooks-core/src/libs/outbound/OutboundWebhookProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `42`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"BusinessRuleViolation"`; `code`: `"webhooks-core/outbound-permanent-failure"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#webhooks-core-outbound-permanent-failure"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request is syntactically valid but violates a domain rule."`; `operatorAction`: `"Review domain policy, entitlement, quota, and lifecycle rule evidence."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Change the workflow state or request values so the business rule is satisfied."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/webhooks-core/src/libs/outbound/OutboundWebhookProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `86`; \}\]; `status`: `422`; `title`: `"Business Rule Violation"`; \}, \{ `category`: `"Conflict"`; `code`: `"webhooks-core/outbound-replay-not-allowed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#webhooks-core-outbound-replay-not-allowed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request conflicts with current state or an idempotency constraint."`; `operatorAction`: `"Inspect concurrent writes, idempotency keys, and uniqueness constraints."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Refresh state, resolve the conflict, and retry with the updated intent."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/webhooks-core/src/libs/outbound/OutboundWebhookProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `108`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"webhooks-core/outbound-retryable-failure"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#webhooks-core-outbound-retryable-failure"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/webhooks-core/src/libs/outbound/OutboundWebhookProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `75`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"webhooks-core/reporter-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#webhooks-core-reporter-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `11`; `file`: `"packages/webhooks-core/src/libs/problems/WebhookProblems.ts"`; `kind`: `"problem-metadata"`; `line`: `162`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"BadRequest"`; `code`: `"webhooks-core/unknown-event"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#webhooks-core-unknown-event"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `11`; `file`: `"packages/webhooks-core/src/libs/problems/WebhookProblems.ts"`; `kind`: `"problem-metadata"`; `line`: `94`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"workflow-core/duplicate-workflow-registration"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#workflow-core-duplicate-workflow-registration"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/workflow-core/src/libs/problems/WorkflowProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `15`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"workflow-core/replay-unsupported"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#workflow-core-replay-unsupported"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/workflow-core/src/libs/problems/WorkflowProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `47`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"workflow-core/saga-definition-invalid"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#workflow-core-saga-definition-invalid"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/workflow-core/src/libs/problems/WorkflowProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `62`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"workflow-core/saga-execution-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#workflow-core-saga-execution-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/workflow-core/src/libs/problems/WorkflowProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `127`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"NotFound"`; `code`: `"workflow-core/saga-execution-not-found"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#workflow-core-saga-execution-not-found"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The requested resource or route-visible record does not exist."`; `operatorAction`: `"Confirm tenant scoping, data retention, and backing-store lookup behavior."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Verify the identifier and refresh the resource list before retrying."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/workflow-core/src/libs/problems/WorkflowProblems.ts"`; `kind`: `"problem-class"`; `line`: `77`; \}\]; `status`: `404`; `title`: `"Not Found"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"workflow-core/saga-replay-invalid"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#workflow-core-saga-replay-invalid"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/workflow-core/src/libs/problems/WorkflowProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `103`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"Conflict"`; `code`: `"workflow-core/saga-store-conflict"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#workflow-core-saga-store-conflict"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request conflicts with current state or an idempotency constraint."`; `operatorAction`: `"Inspect concurrent writes, idempotency keys, and uniqueness constraints."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Refresh state, resolve the conflict, and retry with the updated intent."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/workflow-core/src/libs/problems/WorkflowProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `92`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"workflow-core/workflow-definition-invalid"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#workflow-core-workflow-definition-invalid"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/workflow-core/src/libs/problems/WorkflowProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `31`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"NotFound"`; `code`: `"workflow-core/workflow-not-found"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#workflow-core-workflow-not-found"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The requested resource or route-visible record does not exist."`; `operatorAction`: `"Confirm tenant scoping, data retention, and backing-store lookup behavior."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Verify the identifier and refresh the resource list before retrying."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/workflow-core/src/libs/problems/WorkflowProblems.ts"`; `kind`: `"problem-class"`; `line`: `5`; \}\]; `status`: `404`; `title`: `"Not Found"`; \}\] +> `readonly` **problems**: readonly \[\{ `category`: `"Forbidden"`; `code`: `"ACCESS_DENIED"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#access-denied"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The authenticated caller is not allowed to perform the requested action."`; `operatorAction`: `"Review policy, role, tenant, entitlement, and impersonation context."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Request the required permission or choose an allowed action."`; \}; `sources`: readonly \[\{ `column`: `15`; `file`: `"packages/transports-http/src/libs/PipelineRunner.ts"`; `kind`: `"problem-factory"`; `line`: `232`; \}\]; `status`: `403`; `title`: `"Forbidden"`; \}, \{ `category`: `"Forbidden"`; `code`: `"access-core/forbidden"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#access-core-forbidden"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The authenticated caller is not allowed to perform the requested action."`; `operatorAction`: `"Review policy, role, tenant, entitlement, and impersonation context."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Request the required permission or choose an allowed action."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/access-core/src/libs/guards/AccessGuard.ts"`; `kind`: `"problem-constructor"`; `line`: `17`; \}\]; `status`: `403`; `title`: `"Forbidden"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"ADMIN_LIFECYCLE_DEMO_INVARIANT"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#admin-lifecycle-demo-invariant"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/create-croco-app/templates/admin-console/apps/console-web/src/LifecycleAutomationDemo.tsx"`; `kind`: `"problem-constructor"`; `line`: `66`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"NotFound"`; `code`: `"admin-console/user-not-found"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#admin-console-user-not-found"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The requested resource or route-visible record does not exist."`; `operatorAction`: `"Confirm tenant scoping, data retention, and backing-store lookup behavior."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Verify the identifier and refresh the resource list before retrying."`; \}; `sources`: readonly \[\{ `column`: `79`; `file`: `"packages/create-croco-app/templates/admin-console/apps/api-server/src/controllers/adminSchemas.ts"`; `kind`: `"problem-metadata"`; `line`: `20`; \}\]; `status`: `404`; `title`: `"Not Found"`; \}, \{ `category`: `"Forbidden"`; `code`: `"admin-core/credit-operations-permission-denied"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#admin-core-credit-operations-permission-denied"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The authenticated caller is not allowed to perform the requested action."`; `operatorAction`: `"Review policy, role, tenant, entitlement, and impersonation context."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Request the required permission or choose an allowed action."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/create-croco-app/templates/admin-console/apps/api-server/src/controllers/adminSchemas.ts"`; `kind`: `"problem-metadata"`; `line`: `40`; \}\]; `status`: `403`; `title`: `"Forbidden"`; \}, \{ `category`: `"ValidationError"`; `code`: `"admin-core/credit-operations-validation-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#admin-core-credit-operations-validation-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/admin-core/src/libs/CreditOperations.ts"`; `kind`: `"problem-constructor"`; `line`: `286`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"ValidationError"`; `code`: `"admin-core/resource-validation-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#admin-core-resource-validation-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/admin-core/src/libs/AdminResource.ts"`; `kind`: `"problem-constructor"`; `line`: `79`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"ValidationError"`; `code`: `"admin-core/webhook-action-validation-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#admin-core-webhook-action-validation-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/admin-core/src/libs/WebhookOperations.ts"`; `kind`: `"problem-constructor"`; `line`: `187`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"ValidationError"`; `code`: `"admin-generated/contract-diagnostics"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#admin-generated-contract-diagnostics"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/admin-generated/src/libs/generate.ts"`; `kind`: `"problem-constructor"`; `line`: `55`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"NotFound"`; `code`: `"ai-saas/model-not-found"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#ai-saas-model-not-found"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The requested resource or route-visible record does not exist."`; `operatorAction`: `"Confirm tenant scoping, data retention, and backing-store lookup behavior."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Verify the identifier and refresh the resource list before retrying."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/create-croco-app/templates/ai-saas/apps/api-server/src/aiProblems.ts"`; `kind`: `"problem-class"`; `line`: `31`; \}\]; `status`: `404`; `title`: `"Not Found"`; \}, \{ `category`: `"ValidationError"`; `code`: `"ai-saas/model-required"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#ai-saas-model-required"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/create-croco-app/templates/ai-saas/apps/api-server/src/aiProblems.ts"`; `kind`: `"problem-class"`; `line`: `22`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"ai-saas/provider-unavailable"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#ai-saas-provider-unavailable"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/create-croco-app/templates/ai-saas/apps/api-server/src/aiProblems.ts"`; `kind`: `"problem-class"`; `line`: `62`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"TooManyRequests"`; `code`: `"ai-saas/quota-exceeded"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#ai-saas-quota-exceeded"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller exceeded a rate, quota, or concurrency limit."`; `operatorAction`: `"Check limiter state, quota configuration, and abuse signals."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Wait for the retry window or reduce request volume."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/create-croco-app/templates/ai-saas/apps/api-server/src/aiProblems.ts"`; `kind`: `"problem-class"`; `line`: `40`; \}\]; `status`: `429`; `title`: `"Too Many Requests"`; \}, \{ `category`: `"TooManyRequests"`; `code`: `"ai-saas/rate-limit-exceeded"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#ai-saas-rate-limit-exceeded"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller exceeded a rate, quota, or concurrency limit."`; `operatorAction`: `"Check limiter state, quota configuration, and abuse signals."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Wait for the retry window or reduce request volume."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/create-croco-app/templates/ai-saas/apps/api-server/src/aiProblems.ts"`; `kind`: `"problem-class"`; `line`: `53`; \}\]; `status`: `429`; `title`: `"Too Many Requests"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"ai-saas/smoke-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#ai-saas-smoke-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/create-croco-app/templates/ai-saas/apps/api-server/src/aiProblems.ts"`; `kind`: `"problem-class"`; `line`: `75`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"NotFound"`; `code`: `"ai-saas/tenant-not-found"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#ai-saas-tenant-not-found"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The requested resource or route-visible record does not exist."`; `operatorAction`: `"Confirm tenant scoping, data retention, and backing-store lookup behavior."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Verify the identifier and refresh the resource list before retrying."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/create-croco-app/templates/ai-saas/apps/api-server/src/aiProblems.ts"`; `kind`: `"problem-class"`; `line`: `13`; \}\]; `status`: `404`; `title`: `"Not Found"`; \}, \{ `category`: `"ValidationError"`; `code`: `"ai-saas/tenant-required"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#ai-saas-tenant-required"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/create-croco-app/templates/ai-saas/apps/api-server/src/aiProblems.ts"`; `kind`: `"problem-class"`; `line`: `4`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"Conflict"`; `code`: `"ALREADY_MEMBER"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#already-member"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request conflicts with current state or an idempotency constraint."`; `operatorAction`: `"Inspect concurrent writes, idempotency keys, and uniqueness constraints."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Refresh state, resolve the conflict, and retry with the updated intent."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/membership-core/src/libs/problems/MembershipProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `18`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"analytics-posthog/capture-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#analytics-posthog-capture-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/analytics-posthog/src/libs/problems/PostHogAnalyticsProblems.ts"`; `kind`: `"problem-class"`; `line`: `4`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"analytics-posthog/flush-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#analytics-posthog-flush-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/analytics-posthog/src/libs/problems/PostHogAnalyticsProblems.ts"`; `kind`: `"problem-class"`; `line`: `19`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"analytics-posthog/readiness-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#analytics-posthog-readiness-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/analytics-posthog/src/libs/problems/PostHogAnalyticsProblems.ts"`; `kind`: `"problem-class"`; `line`: `33`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"Unauthorized"`; `code`: `"API_KEY_EXPIRED"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#api-key-expired"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request did not include valid authentication credentials."`; `operatorAction`: `"Check authentication configuration, token issuer, and clock skew."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Sign in again or provide a valid credential."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/auth-core/src/libs/problems/AuthProblems.ts"`; `kind`: `"problem-class"`; `line`: `48`; \}\]; `status`: `401`; `title`: `"Unauthorized"`; \}, \{ `category`: `"NotFound"`; `code`: `"API_KEY_NOT_FOUND"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#api-key-not-found"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The requested resource or route-visible record does not exist."`; `operatorAction`: `"Confirm tenant scoping, data retention, and backing-store lookup behavior."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Verify the identifier and refresh the resource list before retrying."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/auth-core/src/libs/apikey/problems/ApiKeyNotFoundProblem.ts"`; `kind`: `"problem-class"`; `line`: `4`; \}\]; `status`: `404`; `title`: `"Not Found"`; \}, \{ `category`: `"Unauthorized"`; `code`: `"API_KEY_REVOKED"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#api-key-revoked"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request did not include valid authentication credentials."`; `operatorAction`: `"Check authentication configuration, token issuer, and clock skew."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Sign in again or provide a valid credential."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/auth-core/src/libs/problems/AuthProblems.ts"`; `kind`: `"problem-class"`; `line`: `56`; \}\]; `status`: `401`; `title`: `"Unauthorized"`; \}, \{ `category`: `"ValidationError"`; `code`: `"architecture-policy/manifest-json-parse"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#architecture-policy-manifest-json-parse"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/architecture-policy/src/index.ts"`; `kind`: `"problem-constructor"`; `line`: `19`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"ValidationError"`; `code`: `"architecture-policy/manifest-schema-version"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#architecture-policy-manifest-schema-version"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/architecture-policy/src/index.ts"`; `kind`: `"problem-constructor"`; `line`: `30`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"ValidationError"`; `code`: `"architecture-policy/manifest-shape"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#architecture-policy-manifest-shape"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/architecture-policy/src/index.ts"`; `kind`: `"problem-constructor"`; `line`: `9`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"ValidationError"`; `code`: `"architecture-policy/package-json-parse"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#architecture-policy-package-json-parse"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/architecture-policy/src/index.ts"`; `kind`: `"problem-constructor"`; `line`: `46`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"audit-core/auditable-decorator-misuse"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#audit-core-auditable-decorator-misuse"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/audit-core/src/libs/problems/AuditableDecoratorProblem.ts"`; `kind`: `"problem-class"`; `line`: `4`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"audit/insert-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#audit-insert-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `13`; `file`: `"packages/audit-drizzle/src/libs/DrizzleAuditLogRepository.ts"`; `kind`: `"problem-factory"`; `line`: `137`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"auth-better-auth/authentication-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#auth-better-auth-authentication-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/auth-better-auth/src/libs/problems/BetterAuthAuthenticationProblem.ts"`; `kind`: `"problem-class"`; `line`: `8`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"auth-better-auth/invalid-session-payload"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#auth-better-auth-invalid-session-payload"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/auth-better-auth/src/libs/problems/BetterAuthInvalidSessionProblem.ts"`; `kind`: `"problem-class"`; `line`: `7`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"BadRequest"`; `code`: `"auth-better-auth/invalid-webhook-payload"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#auth-better-auth-invalid-webhook-payload"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/auth-better-auth/src/libs/problems/WebhookProblems.ts"`; `kind`: `"problem-class"`; `line`: `23`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"Unauthorized"`; `code`: `"auth-better-auth/invalid-webhook-signature"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#auth-better-auth-invalid-webhook-signature"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request did not include valid authentication credentials."`; `operatorAction`: `"Check authentication configuration, token issuer, and clock skew."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Sign in again or provide a valid credential."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/auth-better-auth/src/libs/problems/WebhookProblems.ts"`; `kind`: `"problem-class"`; `line`: `7`; \}\]; `status`: `401`; `title`: `"Unauthorized"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"auth-better-auth/not-initialized"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#auth-better-auth-not-initialized"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/auth-better-auth/src/libs/problems/AuthProblems.ts"`; `kind`: `"problem-class"`; `line`: `7`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"auth-better-auth/session-lookup-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#auth-better-auth-session-lookup-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/auth-better-auth/src/libs/problems/BetterAuthSessionLookupProblem.ts"`; `kind`: `"problem-class"`; `line`: `7`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"NotFound"`; `code`: `"auth-better-auth/session-not-found"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#auth-better-auth-session-not-found"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The requested resource or route-visible record does not exist."`; `operatorAction`: `"Confirm tenant scoping, data retention, and backing-store lookup behavior."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Verify the identifier and refresh the resource list before retrying."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/auth-better-auth/src/libs/problems/AuthProblems.ts"`; `kind`: `"problem-class"`; `line`: `23`; \}\]; `status`: `404`; `title`: `"Not Found"`; \}, \{ `category`: `"NotFound"`; `code`: `"auth-better-auth/user-not-found"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#auth-better-auth-user-not-found"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The requested resource or route-visible record does not exist."`; `operatorAction`: `"Confirm tenant scoping, data retention, and backing-store lookup behavior."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Verify the identifier and refresh the resource list before retrying."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/auth-better-auth/src/libs/problems/AuthProblems.ts"`; `kind`: `"problem-class"`; `line`: `39`; \}\]; `status`: `404`; `title`: `"Not Found"`; \}, \{ `category`: `"Conflict"`; `code`: `"auth-clerk/duplicate-tenant-mapping"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#auth-clerk-duplicate-tenant-mapping"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request conflicts with current state or an idempotency constraint."`; `operatorAction`: `"Inspect concurrent writes, idempotency keys, and uniqueness constraints."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Refresh state, resolve the conflict, and retry with the updated intent."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/auth-clerk/src/libs/problems/ClerkProblems.ts"`; `kind`: `"problem-class"`; `line`: `94`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"auth-clerk/external-service-error"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#auth-clerk-external-service-error"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/auth-clerk/src/libs/problems/ClerkProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `121`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"ValidationError"`; `code`: `"auth-clerk/invalid-webhook-payload"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#auth-clerk-invalid-webhook-payload"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/auth-clerk/src/libs/problems/ClerkProblems.ts"`; `kind`: `"problem-class"`; `line`: `19`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"Unauthorized"`; `code`: `"auth-clerk/malformed-claim"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#auth-clerk-malformed-claim"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request did not include valid authentication credentials."`; `operatorAction`: `"Check authentication configuration, token issuer, and clock skew."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Sign in again or provide a valid credential."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/auth-clerk/src/libs/problems/ClerkProblems.ts"`; `kind`: `"problem-class"`; `line`: `83`; \}\]; `status`: `401`; `title`: `"Unauthorized"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"auth-clerk/public-user-data-missing"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#auth-clerk-public-user-data-missing"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/auth-clerk/src/libs/problems/ClerkProblems.ts"`; `kind`: `"problem-class"`; `line`: `109`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"Unauthorized"`; `code`: `"auth-clerk/token-verification-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#auth-clerk-token-verification-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request did not include valid authentication credentials."`; `operatorAction`: `"Check authentication configuration, token issuer, and clock skew."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Sign in again or provide a valid credential."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/auth-clerk/src/libs/problems/ClerkProblems.ts"`; `kind`: `"problem-class"`; `line`: `36`; \}\]; `status`: `401`; `title`: `"Unauthorized"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"auth-clerk/token-verification-upstream-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#auth-clerk-token-verification-upstream-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/auth-clerk/src/libs/problems/ClerkProblems.ts"`; `kind`: `"problem-class"`; `line`: `60`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"Unauthorized"`; `code`: `"auth-clerk/webhook-verification-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#auth-clerk-webhook-verification-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request did not include valid authentication credentials."`; `operatorAction`: `"Check authentication configuration, token issuer, and clock skew."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Sign in again or provide a valid credential."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/auth-clerk/src/libs/problems/ClerkProblems.ts"`; `kind`: `"problem-class"`; `line`: `8`; \}\]; `status`: `401`; `title`: `"Unauthorized"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"auth-core/api-key-creation-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#auth-core-api-key-creation-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/auth-core/src/libs/problems/AuthProblems.ts"`; `kind`: `"problem-class"`; `line`: `80`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"Conflict"`; `code`: `"auth-core/api-key-rotation-conflict"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#auth-core-api-key-rotation-conflict"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request conflicts with current state or an idempotency constraint."`; `operatorAction`: `"Inspect concurrent writes, idempotency keys, and uniqueness constraints."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Refresh state, resolve the conflict, and retry with the updated intent."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/auth-core/src/libs/problems/AuthProblems.ts"`; `kind`: `"problem-class"`; `line`: `88`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"auth-core/api-key-rotation-protection-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#auth-core-api-key-rotation-protection-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/auth-core/src/libs/apikey/ApiKeyRotationProtector.ts"`; `kind`: `"problem-constructor"`; `line`: `28`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"auth-core/auth-provider-unavailable"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#auth-core-auth-provider-unavailable"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/auth-core/src/libs/problems/AuthProblems.ts"`; `kind`: `"problem-class"`; `line`: `21`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"ValidationError"`; `code`: `"auth-core/invalid-api-key-rotation-idempotency-key"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#auth-core-invalid-api-key-rotation-idempotency-key"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/auth-core/src/libs/problems/AuthProblems.ts"`; `kind`: `"problem-class"`; `line`: `96`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"ValidationError"`; `code`: `"auth-core/invalid-permission-action"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#auth-core-invalid-permission-action"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/auth-core/src/libs/problems/AuthProblems.ts"`; `kind`: `"problem-class"`; `line`: `72`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"ValidationError"`; `code`: `"auth-core/invalid-permission-format"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#auth-core-invalid-permission-format"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/auth-core/src/libs/problems/AuthProblems.ts"`; `kind`: `"problem-class"`; `line`: `64`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"auth-core/invalid-route-metadata-target"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#auth-core-invalid-route-metadata-target"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"An authentication guard received a route metadata target that was neither an object nor a function."`; `operatorAction`: `"Inspect the route adapter metadata target and ensure it returns the controller object or constructor before handling requests."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Do not retry the unchanged request; ask the service operator to correct the route metadata configuration."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/auth-core/src/libs/problems/AuthProblems.ts"`; `kind`: `"problem-class"`; `line`: `35`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"BadRequest"`; `code`: `"BAD_REQUEST"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#bad-request"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/access-core/src/libs/guards/AccessGuard.ts"`; `kind`: `"problem-constructor"`; `line`: `11`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"BadRequest"`; `code`: `"batch-qstash/invalid-publish-request"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#batch-qstash-invalid-publish-request"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/batch-qstash/src/libs/problems/QStashBatchProblems.ts"`; `kind`: `"problem-class"`; `line`: `18`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"batch-qstash/missing-config"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#batch-qstash-missing-config"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/batch-qstash/src/libs/problems/QStashBatchProblems.ts"`; `kind`: `"problem-class"`; `line`: `4`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"BILLING_STATUS_MAPPING_FAILED"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#billing-status-mapping-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/billing-polar/src/libs/problems/BillingStatusMappingProblem.ts"`; `kind`: `"problem-class"`; `line`: `4`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"Conflict"`; `code`: `"billing-polar/checkout-idempotency-conflict"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#billing-polar-checkout-idempotency-conflict"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request conflicts with current state or an idempotency constraint."`; `operatorAction`: `"Inspect concurrent writes, idempotency keys, and uniqueness constraints."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Refresh state, resolve the conflict, and retry with the updated intent."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/billing-polar/src/libs/problems/PolarBillingProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `89`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"NotFound"`; `code`: `"billing-polar/customer-not-found"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#billing-polar-customer-not-found"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The requested resource or route-visible record does not exist."`; `operatorAction`: `"Confirm tenant scoping, data retention, and backing-store lookup behavior."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Verify the identifier and refresh the resource list before retrying."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/billing-polar/src/libs/problems/PolarBillingProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `107`; \}\]; `status`: `404`; `title`: `"Not Found"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"billing-polar/missing-config"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#billing-polar-missing-config"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/billing-polar/src/libs/problems/PolarBillingProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `18`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"billing-polar/retryable-upstream"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#billing-polar-retryable-upstream"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/billing-polar/src/libs/problems/PolarBillingProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `133`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"NotFound"`; `code`: `"billing-polar/subscription-not-found"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#billing-polar-subscription-not-found"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The requested resource or route-visible record does not exist."`; `operatorAction`: `"Confirm tenant scoping, data retention, and backing-store lookup behavior."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Verify the identifier and refresh the resource list before retrying."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/billing-polar/src/libs/problems/PolarBillingProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `120`; \}\]; `status`: `404`; `title`: `"Not Found"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"billing-polar/terminal-upstream"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#billing-polar-terminal-upstream"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/billing-polar/src/libs/problems/PolarBillingProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `149`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"NotFound"`; `code`: `"billing-polar/usage-customer-not-found"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#billing-polar-usage-customer-not-found"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The requested resource or route-visible record does not exist."`; `operatorAction`: `"Confirm tenant scoping, data retention, and backing-store lookup behavior."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Verify the identifier and refresh the resource list before retrying."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/billing-polar/src/libs/problems/PolarBillingProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `69`; \}\]; `status`: `404`; `title`: `"Not Found"`; \}, \{ `category`: `"ValidationError"`; `code`: `"billing-polar/usage-meter-mapping-not-found"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#billing-polar-usage-meter-mapping-not-found"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/billing-polar/src/libs/problems/PolarBillingProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `51`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"ValidationError"`; `code`: `"billing-polar/validation-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#billing-polar-validation-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/billing-polar/src/libs/problems/PolarBillingProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `38`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"NotFound"`; `code`: `"billing/account-not-found"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#billing-account-not-found"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The requested resource or route-visible record does not exist."`; `operatorAction`: `"Confirm tenant scoping, data retention, and backing-store lookup behavior."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Verify the identifier and refresh the resource list before retrying."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/billing-core/src/libs/problems/BillingProblems.ts"`; `kind`: `"problem-class"`; `line`: `32`; \}\]; `status`: `404`; `title`: `"Not Found"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"billing/checkout-creation-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#billing-checkout-creation-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/billing-core/src/libs/problems/BillingProblems.ts"`; `kind`: `"problem-class"`; `line`: `92`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"Conflict"`; `code`: `"billing/checkout-in-progress"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#billing-checkout-in-progress"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request conflicts with current state or an idempotency constraint."`; `operatorAction`: `"Inspect concurrent writes, idempotency keys, and uniqueness constraints."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Refresh state, resolve the conflict, and retry with the updated intent."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/billing-core/src/libs/problems/BillingProblems.ts"`; `kind`: `"problem-class"`; `line`: `100`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"BadRequest"`; `code`: `"billing/invalid-lifecycle-idempotency-key"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#billing-invalid-lifecycle-idempotency-key"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/billing-core/src/libs/problems/BillingProblems.ts"`; `kind`: `"problem-class"`; `line`: `80`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"BadRequest"`; `code`: `"billing/invalid-money-amount"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#billing-invalid-money-amount"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/billing-core/src/libs/problems/BillingProblems.ts"`; `kind`: `"problem-class"`; `line`: `113`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"BadRequest"`; `code`: `"billing/invalid-money-currency"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#billing-invalid-money-currency"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/billing-core/src/libs/problems/BillingProblems.ts"`; `kind`: `"problem-class"`; `line`: `121`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"BadRequest"`; `code`: `"billing/invalid-plan-release-schedule"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#billing-invalid-plan-release-schedule"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/billing-core/src/libs/problems/PlanReleaseProblems.ts"`; `kind`: `"problem-class"`; `line`: `69`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"BusinessRuleViolation"`; `code`: `"billing/invalid-plan-release-transition"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#billing-invalid-plan-release-transition"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request is syntactically valid but violates a domain rule."`; `operatorAction`: `"Review domain policy, entitlement, quota, and lifecycle rule evidence."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Change the workflow state or request values so the business rule is satisfied."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/billing-core/src/libs/problems/PlanReleaseProblems.ts"`; `kind`: `"problem-class"`; `line`: `21`; \}\]; `status`: `422`; `title`: `"Business Rule Violation"`; \}, \{ `category`: `"BadRequest"`; `code`: `"billing/invalid-plan-version-definition"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#billing-invalid-plan-version-definition"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/billing-core/src/libs/problems/BillingProblems.ts"`; `kind`: `"problem-class"`; `line`: `157`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"BadRequest"`; `code`: `"billing/invalid-plan-version-ref"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#billing-invalid-plan-version-ref"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/billing-core/src/libs/problems/BillingProblems.ts"`; `kind`: `"problem-class"`; `line`: `149`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"BadRequest"`; `code`: `"billing/invalid-subscription-quantity"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#billing-invalid-subscription-quantity"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/billing-core/src/libs/problems/BillingProblems.ts"`; `kind`: `"problem-class"`; `line`: `216`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"Conflict"`; `code`: `"billing/lifecycle-command-conflict"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#billing-lifecycle-command-conflict"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request conflicts with current state or an idempotency constraint."`; `operatorAction`: `"Inspect concurrent writes, idempotency keys, and uniqueness constraints."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Refresh state, resolve the conflict, and retry with the updated intent."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/billing-core/src/libs/problems/BillingProblems.ts"`; `kind`: `"problem-class"`; `line`: `48`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"Conflict"`; `code`: `"billing/lifecycle-command-in-progress"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#billing-lifecycle-command-in-progress"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request conflicts with current state or an idempotency constraint."`; `operatorAction`: `"Inspect concurrent writes, idempotency keys, and uniqueness constraints."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Refresh state, resolve the conflict, and retry with the updated intent."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/billing-core/src/libs/problems/BillingProblems.ts"`; `kind`: `"problem-class"`; `line`: `60`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"NotFound"`; `code`: `"billing/lifecycle-command-not-found"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#billing-lifecycle-command-not-found"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The requested resource or route-visible record does not exist."`; `operatorAction`: `"Confirm tenant scoping, data retention, and backing-store lookup behavior."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Verify the identifier and refresh the resource list before retrying."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/billing-core/src/libs/problems/BillingProblems.ts"`; `kind`: `"problem-class"`; `line`: `72`; \}\]; `status`: `404`; `title`: `"Not Found"`; \}, \{ `category`: `"BusinessRuleViolation"`; `code`: `"billing/money-currency-mismatch"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#billing-money-currency-mismatch"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request is syntactically valid but violates a domain rule."`; `operatorAction`: `"Review domain policy, entitlement, quota, and lifecycle rule evidence."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Change the workflow state or request values so the business rule is satisfied."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/billing-core/src/libs/problems/BillingProblems.ts"`; `kind`: `"problem-class"`; `line`: `129`; \}\]; `status`: `422`; `title`: `"Business Rule Violation"`; \}, \{ `category`: `"BadRequest"`; `code`: `"billing/money-division-by-zero"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#billing-money-division-by-zero"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/billing-core/src/libs/problems/BillingProblems.ts"`; `kind`: `"problem-class"`; `line`: `141`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"Conflict"`; `code`: `"billing/overlapping-plan-effective-period"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#billing-overlapping-plan-effective-period"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request conflicts with current state or an idempotency constraint."`; `operatorAction`: `"Inspect concurrent writes, idempotency keys, and uniqueness constraints."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Refresh state, resolve the conflict, and retry with the updated intent."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/billing-core/src/libs/problems/PlanReleaseProblems.ts"`; `kind`: `"problem-class"`; `line`: `34`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"ValidationError"`; `code`: `"billing/plan-release-provider-capability-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#billing-plan-release-provider-capability-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/billing-core/src/libs/problems/PlanReleaseProblems.ts"`; `kind`: `"problem-class"`; `line`: `58`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"Conflict"`; `code`: `"billing/plan-release-publish-conflict"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#billing-plan-release-publish-conflict"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request conflicts with current state or an idempotency constraint."`; `operatorAction`: `"Inspect concurrent writes, idempotency keys, and uniqueness constraints."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Refresh state, resolve the conflict, and retry with the updated intent."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/billing-core/src/libs/problems/PlanReleaseProblems.ts"`; `kind`: `"problem-class"`; `line`: `78`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"ValidationError"`; `code`: `"billing/plan-release-validation-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#billing-plan-release-validation-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/billing-core/src/libs/problems/PlanReleaseProblems.ts"`; `kind`: `"problem-class"`; `line`: `47`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"Conflict"`; `code`: `"billing/plan-version-already-published"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#billing-plan-version-already-published"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request conflicts with current state or an idempotency constraint."`; `operatorAction`: `"Inspect concurrent writes, idempotency keys, and uniqueness constraints."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Refresh state, resolve the conflict, and retry with the updated intent."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/billing-core/src/libs/problems/BillingProblems.ts"`; `kind`: `"problem-class"`; `line`: `165`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"Conflict"`; `code`: `"billing/plan-version-conflict"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#billing-plan-version-conflict"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request conflicts with current state or an idempotency constraint."`; `operatorAction`: `"Inspect concurrent writes, idempotency keys, and uniqueness constraints."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Refresh state, resolve the conflict, and retry with the updated intent."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/billing-core/src/libs/problems/BillingProblems.ts"`; `kind`: `"problem-class"`; `line`: `173`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"NotImplemented"`; `code`: `"billing/provider-capability-unavailable"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#billing-provider-capability-unavailable"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The requested capability is not supported by this runtime or adapter."`; `operatorAction`: `"Check runtime capability declarations and provider maturity documentation."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Use a supported capability or choose an adapter/runtime that provides it."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/billing-core/src/libs/problems/BillingProblems.ts"`; `kind`: `"problem-class"`; `line`: `6`; \}\]; `status`: `501`; `title`: `"Not Implemented"`; \}, \{ `category`: `"Conflict"`; `code`: `"billing/stale-plan-release-revision"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#billing-stale-plan-release-revision"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request conflicts with current state or an idempotency constraint."`; `operatorAction`: `"Inspect concurrent writes, idempotency keys, and uniqueness constraints."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Refresh state, resolve the conflict, and retry with the updated intent."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/billing-core/src/libs/problems/PlanReleaseProblems.ts"`; `kind`: `"problem-class"`; `line`: `7`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"NotFound"`; `code`: `"billing/subscription-not-found"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#billing-subscription-not-found"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The requested resource or route-visible record does not exist."`; `operatorAction`: `"Confirm tenant scoping, data retention, and backing-store lookup behavior."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Verify the identifier and refresh the resource list before retrying."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/billing-core/src/libs/problems/BillingProblems.ts"`; `kind`: `"problem-class"`; `line`: `24`; \}\]; `status`: `404`; `title`: `"Not Found"`; \}, \{ `category`: `"BusinessRuleViolation"`; `code`: `"billing/subscription-plan-version-mismatch"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#billing-subscription-plan-version-mismatch"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request is syntactically valid but violates a domain rule."`; `operatorAction`: `"Review domain policy, entitlement, quota, and lifecycle rule evidence."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Change the workflow state or request values so the business rule is satisfied."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/billing-core/src/libs/problems/BillingProblems.ts"`; `kind`: `"problem-class"`; `line`: `203`; \}\]; `status`: `422`; `title`: `"Business Rule Violation"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"billing/subscription-quantity-provider-mismatch"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#billing-subscription-quantity-provider-mismatch"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/billing-core/src/libs/problems/BillingProblems.ts"`; `kind`: `"problem-class"`; `line`: `262`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"Conflict"`; `code`: `"billing/subscription-quantity-provider-source-ahead"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#billing-subscription-quantity-provider-source-ahead"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request conflicts with current state or an idempotency constraint."`; `operatorAction`: `"Inspect concurrent writes, idempotency keys, and uniqueness constraints."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Refresh state, resolve the conflict, and retry with the updated intent."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/billing-core/src/libs/problems/BillingProblems.ts"`; `kind`: `"problem-class"`; `line`: `275`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"Conflict"`; `code`: `"billing/subscription-quantity-reconciliation-conflict"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#billing-subscription-quantity-reconciliation-conflict"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request conflicts with current state or an idempotency constraint."`; `operatorAction`: `"Inspect concurrent writes, idempotency keys, and uniqueness constraints."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Refresh state, resolve the conflict, and retry with the updated intent."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/billing-core/src/libs/problems/BillingProblems.ts"`; `kind`: `"problem-class"`; `line`: `241`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"billing/subscription-quantity-reconciliation-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#billing-subscription-quantity-reconciliation-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/billing-core/src/libs/problems/BillingProblems.ts"`; `kind`: `"problem-class"`; `line`: `251`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"Conflict"`; `code`: `"billing/subscription-quantity-source-mismatch"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#billing-subscription-quantity-source-mismatch"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request conflicts with current state or an idempotency constraint."`; `operatorAction`: `"Inspect concurrent writes, idempotency keys, and uniqueness constraints."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Refresh state, resolve the conflict, and retry with the updated intent."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/billing-core/src/libs/problems/BillingProblems.ts"`; `kind`: `"problem-class"`; `line`: `224`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"NotFound"`; `code`: `"billing/unknown-plan-version"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#billing-unknown-plan-version"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The requested resource or route-visible record does not exist."`; `operatorAction`: `"Confirm tenant scoping, data retention, and backing-store lookup behavior."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Verify the identifier and refresh the resource list before retrying."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/billing-core/src/libs/problems/BillingProblems.ts"`; `kind`: `"problem-class"`; `line`: `181`; \}\]; `status`: `404`; `title`: `"Not Found"`; \}, \{ `category`: `"NotFound"`; `code`: `"billing/unknown-provider-plan-mapping"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#billing-unknown-provider-plan-mapping"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The requested resource or route-visible record does not exist."`; `operatorAction`: `"Confirm tenant scoping, data retention, and backing-store lookup behavior."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Verify the identifier and refresh the resource list before retrying."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/billing-core/src/libs/problems/BillingProblems.ts"`; `kind`: `"problem-class"`; `line`: `189`; \}\]; `status`: `404`; `title`: `"Not Found"`; \}, \{ `category`: `"Conflict"`; `code`: `"billing/webhook-already-processed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#billing-webhook-already-processed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request conflicts with current state or an idempotency constraint."`; `operatorAction`: `"Inspect concurrent writes, idempotency keys, and uniqueness constraints."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Refresh state, resolve the conflict, and retry with the updated intent."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/billing-core/src/libs/problems/BillingProblems.ts"`; `kind`: `"problem-class"`; `line`: `40`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"Forbidden"`; `code`: `"BLOCKED_DURING_IMPERSONATION"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#blocked-during-impersonation"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The authenticated caller is not allowed to perform the requested action."`; `operatorAction`: `"Review policy, role, tenant, entitlement, and impersonation context."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Request the required permission or choose an allowed action."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/impersonation-core/src/libs/problems/ImpersonationProblems.ts"`; `kind`: `"problem-class"`; `line`: `49`; \}\]; `status`: `403`; `title`: `"Forbidden"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"cache-core/invalid-configuration"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#cache-core-invalid-configuration"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/cache-core/src/libs/problems/CacheStoreProblems.ts"`; `kind`: `"problem-class"`; `line`: `12`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"cache-core/invalid-decorator-config"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#cache-core-invalid-decorator-config"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/cache-core/src/libs/problems/CacheDecoratorProblems.ts"`; `kind`: `"problem-class"`; `line`: `12`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"ValidationError"`; `code`: `"cache-core/invalid-ttl"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#cache-core-invalid-ttl"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/cache-core/src/libs/problems/CacheStoreProblems.ts"`; `kind`: `"problem-class"`; `line`: `35`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"cache-core/invalidation-assertion-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#cache-core-invalidation-assertion-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/cache-core/src/libs/problems/CacheDecoratorProblems.ts"`; `kind`: `"problem-class"`; `line`: `102`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"cache-core/invalidation-capability-unsupported"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#cache-core-invalidation-capability-unsupported"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/cache-core/src/libs/problems/CacheDecoratorProblems.ts"`; `kind`: `"problem-class"`; `line`: `55`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"ValidationError"`; `code`: `"cache-core/invalidation-event-unknown"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#cache-core-invalidation-event-unknown"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/cache-core/src/libs/problems/CacheDecoratorProblems.ts"`; `kind`: `"problem-class"`; `line`: `41`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"cache-core/invalidation-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#cache-core-invalidation-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/cache-core/src/libs/problems/CacheDecoratorProblems.ts"`; `kind`: `"problem-class"`; `line`: `72`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"ValidationError"`; `code`: `"cache-core/invalidation-graph-invalid"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#cache-core-invalidation-graph-invalid"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/cache-core/src/libs/problems/CacheDecoratorProblems.ts"`; `kind`: `"problem-class"`; `line`: `27`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"TooManyRequests"`; `code`: `"CIRCUIT_BREAKER_OPEN"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#circuit-breaker-open"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller exceeded a rate, quota, or concurrency limit."`; `operatorAction`: `"Check limiter state, quota configuration, and abuse signals."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Wait for the retry window or reduce request volume."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/retry-core/src/libs/errors/CircuitBreakerOpenProblem.ts"`; `kind`: `"problem-class"`; `line`: `7`; \}\]; `status`: `429`; `title`: `"Too Many Requests"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"cloudflare/images-invalid-ttl"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#cloudflare-images-invalid-ttl"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `13`; `file`: `"packages/storage-cloudflare/src/libs/CloudflareImagesProvider.ts"`; `kind`: `"problem-factory"`; `line`: `55`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"cloudflare/images-null-result"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#cloudflare-images-null-result"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `13`; `file`: `"packages/storage-cloudflare/src/libs/CloudflareImagesProvider.ts"`; `kind`: `"problem-factory"`; `line`: `278`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"cloudflare/images-upload-intent-null-result"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#cloudflare-images-upload-intent-null-result"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `13`; `file`: `"packages/storage-cloudflare/src/libs/CloudflareImagesProvider.ts"`; `kind`: `"problem-factory"`; `line`: `354`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"BadRequest"`; `code`: `"CONFLICTING_PAGINATION"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#conflicting-pagination"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/pagination-core/src/libs/problems.ts"`; `kind`: `"problem-class"`; `line`: `17`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"ValidationError"`; `code`: `"create-croco-app/directory-not-empty"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#create-croco-app-directory-not-empty"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/create-croco-app/src/libs/problems/DirectoryNotEmptyProblem.ts"`; `kind`: `"problem-class"`; `line`: `4`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"ValidationError"`; `code`: `"create-croco-app/invalid-cli-option"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#create-croco-app-invalid-cli-option"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/create-croco-app/src/libs/problems/InvalidCliOptionProblem.ts"`; `kind`: `"problem-class"`; `line`: `4`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"ValidationError"`; `code`: `"create-croco-app/invalid-goal-option"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#create-croco-app-invalid-goal-option"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/create-croco-app/src/libs/problems/InvalidGoalOptionProblem.ts"`; `kind`: `"problem-class"`; `line`: `5`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"ValidationError"`; `code`: `"create-croco-app/invalid-saas-preset-option"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#create-croco-app-invalid-saas-preset-option"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/create-croco-app/src/libs/problems/InvalidSaasPresetOptionProblem.ts"`; `kind`: `"problem-class"`; `line`: `4`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"create-croco-app/lambda-telemetry-boundary"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#create-croco-app-lambda-telemetry-boundary"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/create-croco-app/templates/addons/lambda/apps/graphql-api/src/telemetryFlush.ts"`; `kind`: `"problem-class"`; `line`: `10`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"create-croco-app/unexpected-failure"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#create-croco-app-unexpected-failure"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/create-croco-app/src/cli-result.ts"`; `kind`: `"problem-class"`; `line`: `28`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"ValidationError"`; `code`: `"create-croco-app/unsupported-node-version"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#create-croco-app-unsupported-node-version"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The detected Node.js version is outside the supported generated-app toolchain train."`; `operatorAction`: `"Compare the reported actual Node.js version with the supported Node.js 22 train and verify the active version-manager configuration."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `` "Install and activate Node.js 22 with `nvm install 22 && nvm use 22`, then rerun the command." ``; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/create-croco-app/src/libs/problems/UnsupportedNodeVersionProblem.ts"`; `kind`: `"problem-class"`; `line`: `4`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"ValidationError"`; `code`: `"create-croco-app/web-meta-vite-fullstack-missing-hydration-root"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#create-croco-app-web-meta-vite-fullstack-missing-hydration-root"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/create-croco-app/templates/addons/web-meta-vite-fullstack/ssr-worker/src/client.tsx"`; `kind`: `"problem-constructor"`; `line`: `11`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"ValidationError"`; `code`: `"create-croco-app/web-meta-vite-missing-hydration-root"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#create-croco-app-web-meta-vite-missing-hydration-root"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/create-croco-app/templates/addons/web-meta-vite/src/client.tsx"`; `kind`: `"problem-constructor"`; `line`: `11`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"Conflict"`; `code`: `"credits-core/account-mismatch"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#credits-core-account-mismatch"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request conflicts with current state or an idempotency constraint."`; `operatorAction`: `"Inspect concurrent writes, idempotency keys, and uniqueness constraints."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Refresh state, resolve the conflict, and retry with the updated intent."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/credits-core/src/libs/problems.ts"`; `kind`: `"problem-class"`; `line`: `81`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"NotFound"`; `code`: `"credits-core/account-not-found"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#credits-core-account-not-found"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The requested resource or route-visible record does not exist."`; `operatorAction`: `"Confirm tenant scoping, data retention, and backing-store lookup behavior."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Verify the identifier and refresh the resource list before retrying."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/credits-core/src/libs/problems.ts"`; `kind`: `"problem-class"`; `line`: `15`; \}\]; `status`: `404`; `title`: `"Not Found"`; \}, \{ `category`: `"Conflict"`; `code`: `"credits-core/duplicate-conflict"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#credits-core-duplicate-conflict"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request conflicts with current state or an idempotency constraint."`; `operatorAction`: `"Inspect concurrent writes, idempotency keys, and uniqueness constraints."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Refresh state, resolve the conflict, and retry with the updated intent."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/credits-core/src/libs/problems.ts"`; `kind`: `"problem-class"`; `line`: `67`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"credits-core/event-publication-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#credits-core-event-publication-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/credits-core/src/libs/problems.ts"`; `kind`: `"problem-class"`; `line`: `143`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"BusinessRuleViolation"`; `code`: `"credits-core/expired-grant"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#credits-core-expired-grant"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request is syntactically valid but violates a domain rule."`; `operatorAction`: `"Review domain policy, entitlement, quota, and lifecycle rule evidence."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Change the workflow state or request values so the business rule is satisfied."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/credits-core/src/libs/problems.ts"`; `kind`: `"problem-class"`; `line`: `39`; \}\]; `status`: `422`; `title`: `"Business Rule Violation"`; \}, \{ `category`: `"BusinessRuleViolation"`; `code`: `"credits-core/insufficient-credits"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#credits-core-insufficient-credits"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request is syntactically valid but violates a domain rule."`; `operatorAction`: `"Review domain policy, entitlement, quota, and lifecycle rule evidence."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Change the workflow state or request values so the business rule is satisfied."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/credits-core/src/libs/problems.ts"`; `kind`: `"problem-class"`; `line`: `25`; \}\]; `status`: `422`; `title`: `"Business Rule Violation"`; \}, \{ `category`: `"ValidationError"`; `code`: `"credits-core/invalid-amount"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#credits-core-invalid-amount"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/credits-core/src/libs/problems.ts"`; `kind`: `"problem-class"`; `line`: `5`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"ValidationError"`; `code`: `"credits-core/invalid-command"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#credits-core-invalid-command"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/credits-core/src/libs/problems.ts"`; `kind`: `"problem-class"`; `line`: `109`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"BusinessRuleViolation"`; `code`: `"credits-core/refund-mismatch"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#credits-core-refund-mismatch"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request is syntactically valid but violates a domain rule."`; `operatorAction`: `"Review domain policy, entitlement, quota, and lifecycle rule evidence."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Change the workflow state or request values so the business rule is satisfied."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/credits-core/src/libs/problems.ts"`; `kind`: `"problem-class"`; `line`: `129`; \}\]; `status`: `422`; `title`: `"Business Rule Violation"`; \}, \{ `category`: `"BusinessRuleViolation"`; `code`: `"credits-core/reservation-mismatch"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#credits-core-reservation-mismatch"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request is syntactically valid but violates a domain rule."`; `operatorAction`: `"Review domain policy, entitlement, quota, and lifecycle rule evidence."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Change the workflow state or request values so the business rule is satisfied."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/credits-core/src/libs/problems.ts"`; `kind`: `"problem-class"`; `line`: `53`; \}\]; `status`: `422`; `title`: `"Business Rule Violation"`; \}, \{ `category`: `"Conflict"`; `code`: `"credits-core/stale-ledger-position"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#credits-core-stale-ledger-position"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request conflicts with current state or an idempotency constraint."`; `operatorAction`: `"Inspect concurrent writes, idempotency keys, and uniqueness constraints."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Refresh state, resolve the conflict, and retry with the updated intent."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/credits-core/src/libs/problems.ts"`; `kind`: `"problem-class"`; `line`: `95`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"NotFound"`; `code`: `"credits-core/transaction-not-found"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#credits-core-transaction-not-found"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The requested resource or route-visible record does not exist."`; `operatorAction`: `"Confirm tenant scoping, data retention, and backing-store lookup behavior."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Verify the identifier and refresh the resource list before retrying."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/credits-core/src/libs/problems.ts"`; `kind`: `"problem-class"`; `line`: `119`; \}\]; `status`: `404`; `title`: `"Not Found"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"credits-drizzle/persistence-failure"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#credits-drizzle-persistence-failure"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/credits-drizzle/src/libs/problems.ts"`; `kind`: `"problem-class"`; `line`: `5`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"BadRequest"`; `code`: `"CROCO_CLI_JOBS_001"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#croco-cli-jobs-001"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/cli/src/commands/jobs.ts"`; `kind`: `"problem-constructor"`; `line`: `88`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"BadRequest"`; `code`: `"CROCO_CLI_JOBS_002"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#croco-cli-jobs-002"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/cli/src/commands/jobs.ts"`; `kind`: `"problem-constructor"`; `line`: `99`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"BadRequest"`; `code`: `"CROCO_CLI_JOBS_003"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#croco-cli-jobs-003"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/cli/src/commands/jobs.ts"`; `kind`: `"problem-constructor"`; `line`: `110`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"Conflict"`; `code`: `"CROCO_CLI_JOBS_004"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#croco-cli-jobs-004"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request conflicts with current state or an idempotency constraint."`; `operatorAction`: `"Inspect concurrent writes, idempotency keys, and uniqueness constraints."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Refresh state, resolve the conflict, and retry with the updated intent."`; \}; `sources`: readonly \[\{ `column`: `49`; `file`: `"packages/cli/src/commands/jobs.ts"`; `kind`: `"problem-metadata"`; `line`: `137`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"NotFound"`; `code`: `"CROCO_CLI_JOBS_005"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#croco-cli-jobs-005"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The requested resource or route-visible record does not exist."`; `operatorAction`: `"Confirm tenant scoping, data retention, and backing-store lookup behavior."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Verify the identifier and refresh the resource list before retrying."`; \}; `sources`: readonly \[\{ `column`: `63`; `file`: `"packages/cli/src/commands/jobs.ts"`; `kind`: `"problem-metadata"`; `line`: `132`; \}\]; `status`: `404`; `title`: `"Not Found"`; \}, \{ `category`: `"BadRequest"`; `code`: `"CROCO_CLI_OPS_001"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#croco-cli-ops-001"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/cli/src/libs/ops.ts"`; `kind`: `"problem-constructor"`; `line`: `66`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"BadRequest"`; `code`: `"CROCO_CLI_OPS_002"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#croco-cli-ops-002"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/cli/src/libs/ops.ts"`; `kind`: `"problem-constructor"`; `line`: `55`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"BadRequest"`; `code`: `"CROCO_CLI_USAGE_DASHBOARD_005"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#croco-cli-usage-dashboard-005"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/cli/src/commands/generateUsageDashboard.ts"`; `kind`: `"problem-constructor"`; `line`: `24`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"CROCO_HTTP_MIDDLEWARE_001"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#croco-http-middleware-001"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"HTTP middleware returned without a Response, without shortCircuit(reason), and without calling next() exactly once."`; `operatorAction`: `"Update the named @croco/transports-http middleware to return next(), await next() once, return a Response, or return shortCircuit(reason) for intentional termination."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry only after the service owner ships a middleware contract fix."`; \}; `sources`: readonly \[\{ `column`: `12`; `file`: `"packages/transports-http/src/libs/CrocoRouteRegistrar.ts"`; `kind`: `"problem-factory"`; `line`: `367`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"CROCO_HTTP_MIDDLEWARE_002"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#croco-http-middleware-002"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"HTTP middleware attempted to resume the downstream pipeline more than once."`; `operatorAction`: `"Store the Response from a single next() call and reuse or transform it instead of calling next() again."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry only after the service owner ships a middleware contract fix."`; \}; `sources`: readonly \[\{ `column`: `15`; `file`: `"packages/transports-http/src/libs/CrocoRouteRegistrar.ts"`; `kind`: `"problem-factory"`; `line`: `272`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"CROCO_HTTP_SECURITY_001"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#croco-http-security-001"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"HTTP bootstrap validation found a generated or application app without the required security middleware set."`; `operatorAction`: `"Add the missing @croco/transports-http middleware or keep securityValidation disabled only in an explicit local migration/testing fixture."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Use an app build that registers security headers, CORS, body limit, and rate-limit middleware before first run."`; \}; `sources`: readonly \[\{ `column`: `11`; `file`: `"packages/transports-http/src/libs/CrocoApp.ts"`; `kind`: `"problem-factory"`; `line`: `278`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"BadRequest"`; `code`: `"CROCO_HTTP_SECURITY_002"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#croco-http-security-002"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `11`; `file`: `"packages/transports-http/src/libs/middleware/SecurityMiddlewareMarker.ts"`; `kind`: `"problem-factory"`; `line`: `154`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"ValidationError"`; `code`: `"CROCO_TEST_EVIDENCE_CONTRACT_INVALID"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#croco-test-evidence-contract-invalid"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/testing/src/libs/test-evidence.mts"`; `kind`: `"problem-constructor"`; `line`: `159`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"ValidationError"`; `code`: `"CROCO_TEST_EVIDENCE_FIDELITY_UNSATISFIED"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#croco-test-evidence-fidelity-unsatisfied"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/testing/src/libs/test-evidence.mts"`; `kind`: `"problem-constructor"`; `line`: `173`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"dataloader-core/batch-result-length-mismatch"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#dataloader-core-batch-result-length-mismatch"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/dataloader-core/src/libs/problems/BatchLoaderProblems.ts"`; `kind`: `"problem-class"`; `line`: `4`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"diagnostics-core/duplicate-provider"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#diagnostics-core-duplicate-provider"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/diagnostics-core/src/libs/problems/DiagnosticsProblems.ts"`; `kind`: `"problem-class"`; `line`: `25`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"ValidationError"`; `code`: `"diagnostics-core/invalid-timeout"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#diagnostics-core-invalid-timeout"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/diagnostics-core/src/libs/problems/DiagnosticsProblems.ts"`; `kind`: `"problem-class"`; `line`: `9`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"Conflict"`; `code`: `"DUPLICATE_INVITATION"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#duplicate-invitation"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request conflicts with current state or an idempotency constraint."`; `operatorAction`: `"Inspect concurrent writes, idempotency keys, and uniqueness constraints."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Refresh state, resolve the conflict, and retry with the updated intent."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/invitation-core/src/libs/problems/RateLimitProblems.ts"`; `kind`: `"problem-class"`; `line`: `13`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"DUPLICATE_RECOVER_HANDLER"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#duplicate-recover-handler"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/retry-core/src/libs/errors/DuplicateRecoverHandlerProblem.ts"`; `kind`: `"problem-class"`; `line`: `7`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"BadRequest"`; `code`: `"DURATION_PARSE_ERROR"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#duration-parse-error"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/framework-context/src/libs/problems/ContextProblems.ts"`; `kind`: `"problem-class"`; `line`: `15`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"EMBEDDING_ERROR"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#embedding-error"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/llm-core/src/libs/problems/LlmServiceProblem.ts"`; `kind`: `"problem-constructor"`; `line`: `43`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"Forbidden"`; `code`: `"ENTITLEMENT_DENIED"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#entitlement-denied"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The authenticated caller is not allowed to perform the requested action."`; `operatorAction`: `"Review policy, role, tenant, entitlement, and impersonation context."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Request the required permission or choose an allowed action."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/entitlements-core/src/libs/problems/EntitlementProblems.ts"`; `kind`: `"problem-class"`; `line`: `20`; \}\]; `status`: `403`; `title`: `"Forbidden"`; \}, \{ `category`: `"Forbidden"`; `code`: `"ENTITLEMENT_INACTIVE_SUBSCRIPTION"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#entitlement-inactive-subscription"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The authenticated caller is not allowed to perform the requested action."`; `operatorAction`: `"Review policy, role, tenant, entitlement, and impersonation context."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Request the required permission or choose an allowed action."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/entitlements-core/src/libs/problems/EntitlementProblems.ts"`; `kind`: `"problem-class"`; `line`: `46`; \}\]; `status`: `403`; `title`: `"Forbidden"`; \}, \{ `category`: `"Forbidden"`; `code`: `"ENTITLEMENT_MISSING_PLAN"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#entitlement-missing-plan"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The authenticated caller is not allowed to perform the requested action."`; `operatorAction`: `"Review policy, role, tenant, entitlement, and impersonation context."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Request the required permission or choose an allowed action."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/entitlements-core/src/libs/problems/EntitlementProblems.ts"`; `kind`: `"problem-class"`; `line`: `32`; \}\]; `status`: `403`; `title`: `"Forbidden"`; \}, \{ `category`: `"NotFound"`; `code`: `"ENTITLEMENT_NOT_FOUND"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#entitlement-not-found"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The requested resource or route-visible record does not exist."`; `operatorAction`: `"Confirm tenant scoping, data retention, and backing-store lookup behavior."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Verify the identifier and refresh the resource list before retrying."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/entitlements-core/src/libs/problems/EntitlementProblems.ts"`; `kind`: `"problem-class"`; `line`: `86`; \}\]; `status`: `404`; `title`: `"Not Found"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"ENTITLEMENT_PROVIDER_UNAVAILABLE"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#entitlement-provider-unavailable"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/entitlements-core/src/libs/problems/EntitlementProblems.ts"`; `kind`: `"problem-class"`; `line`: `74`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"TooManyRequests"`; `code`: `"ENTITLEMENT_QUOTA_EXCEEDED"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#entitlement-quota-exceeded"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller exceeded a rate, quota, or concurrency limit."`; `operatorAction`: `"Check limiter state, quota configuration, and abuse signals."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Wait for the retry window or reduce request volume."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/entitlements-core/src/libs/problems/EntitlementProblems.ts"`; `kind`: `"problem-class"`; `line`: `60`; \}\]; `status`: `429`; `title`: `"Too Many Requests"`; \}, \{ `category`: `"ValidationError"`; `code`: `"ENTITLEMENT_REQUIREMENT_INVALID"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#entitlement-requirement-invalid"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/entitlements-core/src/libs/problems/EntitlementProblems.ts"`; `kind`: `"problem-class"`; `line`: `11`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"ValidationError"`; `code`: `"entitlements-core/definition-invalid"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#entitlements-core-definition-invalid"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/entitlements-core/src/libs/problems/EntitlementProblems.ts"`; `kind`: `"problem-class"`; `line`: `95`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"Conflict"`; `code`: `"entitlements-core/plan-version-already-registered"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#entitlements-core-plan-version-already-registered"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request conflicts with current state or an idempotency constraint."`; `operatorAction`: `"Inspect concurrent writes, idempotency keys, and uniqueness constraints."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Refresh state, resolve the conflict, and retry with the updated intent."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/entitlements-core/src/libs/problems/EntitlementProblems.ts"`; `kind`: `"problem-class"`; `line`: `113`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"Conflict"`; `code`: `"entitlements-core/plan-version-mismatch"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#entitlements-core-plan-version-mismatch"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request conflicts with current state or an idempotency constraint."`; `operatorAction`: `"Inspect concurrent writes, idempotency keys, and uniqueness constraints."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Refresh state, resolve the conflict, and retry with the updated intent."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/entitlements-core/src/libs/problems/EntitlementProblems.ts"`; `kind`: `"problem-class"`; `line`: `122`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"NotFound"`; `code`: `"entitlements-core/plan-version-not-found"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#entitlements-core-plan-version-not-found"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The requested resource or route-visible record does not exist."`; `operatorAction`: `"Confirm tenant scoping, data retention, and backing-store lookup behavior."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Verify the identifier and refresh the resource list before retrying."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/entitlements-core/src/libs/problems/EntitlementProblems.ts"`; `kind`: `"problem-class"`; `line`: `104`; \}\]; `status`: `404`; `title`: `"Not Found"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"events-core/after-commit-outcome-required"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#events-core-after-commit-outcome-required"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/events-core/src/libs/problems/EventsProblems.ts"`; `kind`: `"problem-class"`; `line`: `107`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"events-core/after-commit-requires-active-transaction"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#events-core-after-commit-requires-active-transaction"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/events-core/src/libs/problems/EventsProblems.ts"`; `kind`: `"problem-class"`; `line`: `96`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"events-core/deserialization-error"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#events-core-deserialization-error"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/events-core/src/libs/problems/EventsProblems.ts"`; `kind`: `"problem-class"`; `line`: `40`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"events-core/duplicate-event-field"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#events-core-duplicate-event-field"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/events-core/src/libs/problems/EventsProblems.ts"`; `kind`: `"problem-class"`; `line`: `51`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"events-core/duplicate-event-name"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#events-core-duplicate-event-name"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/events-core/src/libs/problems/EventsProblems.ts"`; `kind`: `"problem-class"`; `line`: `66`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"events-core/event-bus-not-set"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#events-core-event-bus-not-set"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/events-core/src/libs/problems/EventsProblems.ts"`; `kind`: `"problem-class"`; `line`: `7`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"events-core/event-definition-error"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#events-core-event-definition-error"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/events-core/src/libs/problems/EventsProblems.ts"`; `kind`: `"problem-class"`; `line`: `18`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"events-core/transaction-context-unavailable"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#events-core-transaction-context-unavailable"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/events-core/src/libs/problems/EventsProblems.ts"`; `kind`: `"problem-class"`; `line`: `81`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"events-core/unknown-event-type"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#events-core-unknown-event-type"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/events-core/src/libs/problems/EventsProblems.ts"`; `kind`: `"problem-class"`; `line`: `29`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"TooManyRequests"`; `code`: `"events-inmemory/backpressure-exceeded"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#events-inmemory-backpressure-exceeded"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller exceeded a rate, quota, or concurrency limit."`; `operatorAction`: `"Check limiter state, quota configuration, and abuse signals."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Wait for the retry window or reduce request volume."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/events-inmemory/src/libs/problems/EventsInmemoryProblems.ts"`; `kind`: `"problem-class"`; `line`: `35`; \}\]; `status`: `429`; `title`: `"Too Many Requests"`; \}, \{ `category`: `"TooManyRequests"`; `code`: `"events-inmemory/backpressure-timeout"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#events-inmemory-backpressure-timeout"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller exceeded a rate, quota, or concurrency limit."`; `operatorAction`: `"Check limiter state, quota configuration, and abuse signals."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Wait for the retry window or reduce request volume."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/events-inmemory/src/libs/problems/EventsInmemoryProblems.ts"`; `kind`: `"problem-class"`; `line`: `51`; \}\]; `status`: `429`; `title`: `"Too Many Requests"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"events-inmemory/invalid-configuration"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#events-inmemory-invalid-configuration"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/events-inmemory/src/libs/problems/EventsInmemoryProblems.ts"`; `kind`: `"problem-class"`; `line`: `12`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"events-inmemory/publish-dropped"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#events-inmemory-publish-dropped"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/events-inmemory/src/libs/InmemoryEventBus.ts"`; `kind`: `"problem-class"`; `line`: `54`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"events-inmemory/publish-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#events-inmemory-publish-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/events-inmemory/src/libs/InmemoryEventBus.ts"`; `kind`: `"problem-class"`; `line`: `37`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"events-tx/configuration-invalid"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#events-tx-configuration-invalid"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/events-tx/src/libs/problems/EventsTxProblems.ts"`; `kind`: `"problem-class"`; `line`: `36`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"Conflict"`; `code`: `"events-tx/inbox-claim-conflict"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#events-tx-inbox-claim-conflict"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"An inbox completion request no longer owns the processing attempt it started."`; `operatorAction`: `"Inspect concurrent writes, idempotency keys, and uniqueness constraints, then verify workers complete only the attempt they claimed."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Acquire a new inbox claim before retrying processing; discard the stale completion when a new claim cannot be acquired."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/events-tx/src/libs/problems/EventsTxProblems.ts"`; `kind`: `"problem-class"`; `line`: `120`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"Conflict"`; `code`: `"events-tx/outbox-idempotency-conflict"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#events-tx-outbox-idempotency-conflict"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request conflicts with current state or an idempotency constraint."`; `operatorAction`: `"Inspect concurrent writes, idempotency keys, and uniqueness constraints."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Refresh state, resolve the conflict, and retry with the updated intent."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/events-tx/src/libs/problems/EventsTxProblems.ts"`; `kind`: `"problem-class"`; `line`: `83`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"events-tx/outbox-publish-exhausted"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#events-tx-outbox-publish-exhausted"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/events-tx/src/libs/problems/EventsTxProblems.ts"`; `kind`: `"problem-class"`; `line`: `105`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"events-tx/outbox-transaction-required"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#events-tx-outbox-transaction-required"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/events-tx/src/libs/problems/EventsTxProblems.ts"`; `kind`: `"problem-class"`; `line`: `64`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"events-tx/storage-error"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#events-tx-storage-error"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/events-tx/src/libs/problems/EventsTxProblems.ts"`; `kind`: `"problem-class"`; `line`: `73`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"events-tx/transaction-state-error"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#events-tx-transaction-state-error"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/events-tx/src/libs/problems/EventsTxProblems.ts"`; `kind`: `"problem-class"`; `line`: `56`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"execution/checkpoint-store-conformance"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#execution-checkpoint-store-conformance"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `12`; `file`: `"packages/execution-core/src/libs/ExecutionProblem.ts"`; `kind`: `"problem-constructor"`; `line`: `138`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"Conflict"`; `code`: `"execution/conflict"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#execution-conflict"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request conflicts with current state or an idempotency constraint."`; `operatorAction`: `"Inspect concurrent writes, idempotency keys, and uniqueness constraints."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Refresh state, resolve the conflict, and retry with the updated intent."`; \}; `sources`: readonly \[\{ `column`: `12`; `file`: `"packages/execution-core/src/libs/ExecutionProblem.ts"`; `kind`: `"problem-constructor"`; `line`: `90`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"Conflict"`; `code`: `"execution/continuation-conflict"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#execution-continuation-conflict"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request conflicts with current state or an idempotency constraint."`; `operatorAction`: `"Inspect concurrent writes, idempotency keys, and uniqueness constraints."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Refresh state, resolve the conflict, and retry with the updated intent."`; \}; `sources`: readonly \[\{ `column`: `12`; `file`: `"packages/execution-core/src/libs/ExecutionProblem.ts"`; `kind`: `"problem-constructor"`; `line`: `129`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"execution/continuation-unsupported"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#execution-continuation-unsupported"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `12`; `file`: `"packages/execution-core/src/libs/ExecutionProblem.ts"`; `kind`: `"problem-constructor"`; `line`: `118`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"Conflict"`; `code`: `"execution/idempotency-conflict"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#execution-idempotency-conflict"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request conflicts with current state or an idempotency constraint."`; `operatorAction`: `"Inspect concurrent writes, idempotency keys, and uniqueness constraints."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Refresh state, resolve the conflict, and retry with the updated intent."`; \}; `sources`: readonly \[\{ `column`: `12`; `file`: `"packages/execution-core/src/libs/ExecutionProblem.ts"`; `kind`: `"problem-constructor"`; `line`: `94`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"ValidationError"`; `code`: `"execution/invalid-continuation-lease-duration"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#execution-invalid-continuation-lease-duration"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/execution-core/src/libs/ExecutionProblem.ts"`; `kind`: `"problem-class"`; `line`: `29`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"Conflict"`; `code`: `"execution/invalid-state-transition"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#execution-invalid-state-transition"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request conflicts with current state or an idempotency constraint."`; `operatorAction`: `"Inspect concurrent writes, idempotency keys, and uniqueness constraints."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Refresh state, resolve the conflict, and retry with the updated intent."`; \}; `sources`: readonly \[\{ `column`: `12`; `file`: `"packages/execution-core/src/libs/ExecutionProblem.ts"`; `kind`: `"problem-constructor"`; `line`: `110`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"Conflict"`; `code`: `"execution/max-retries-exceeded"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#execution-max-retries-exceeded"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request conflicts with current state or an idempotency constraint."`; `operatorAction`: `"Inspect concurrent writes, idempotency keys, and uniqueness constraints."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Refresh state, resolve the conflict, and retry with the updated intent."`; \}; `sources`: readonly \[\{ `column`: `12`; `file`: `"packages/execution-core/src/libs/ExecutionProblem.ts"`; `kind`: `"problem-constructor"`; `line`: `102`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"NotFound"`; `code`: `"execution/not-found"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#execution-not-found"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The requested resource or route-visible record does not exist."`; `operatorAction`: `"Confirm tenant scoping, data retention, and backing-store lookup behavior."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Verify the identifier and refresh the resource list before retrying."`; \}; `sources`: readonly \[\{ `column`: `12`; `file`: `"packages/execution-core/src/libs/ExecutionProblem.ts"`; `kind`: `"problem-constructor"`; `line`: `86`; \}\]; `status`: `404`; `title`: `"Not Found"`; \}, \{ `category`: `"Forbidden"`; `code`: `"FORBIDDEN"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#forbidden"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The authenticated caller is not allowed to perform the requested action."`; `operatorAction`: `"Review policy, role, tenant, entitlement, and impersonation context."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Request the required permission or choose an allowed action."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/auth-core/src/libs/problems/AuthProblems.ts"`; `kind`: `"problem-class"`; `line`: `13`; \}\]; `status`: `403`; `title`: `"Forbidden"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"framework-config/config-schema-not-found"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#framework-config-config-schema-not-found"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/framework-config/src/libs/problems/ConfigProblems.ts"`; `kind`: `"problem-class"`; `line`: `4`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"ValidationError"`; `code`: `"framework-config/config-validation-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#framework-config-config-validation-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/framework-config/src/libs/problems/ConfigProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `15`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"ValidationError"`; `code`: `"framework-config/invalid-boolean-env"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#framework-config-invalid-boolean-env"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/framework-config/src/libs/problems/ConfigProblems.ts"`; `kind`: `"problem-class"`; `line`: `24`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"framework-context/circular-dependency"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#framework-context-circular-dependency"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/framework-context/src/libs/problems/CircularDependencyProblem.ts"`; `kind`: `"problem-class"`; `line`: `7`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"framework-context/container-scope-disposed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#framework-context-container-scope-disposed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `10`; `file`: `"packages/framework-context/src/libs/Container.ts"`; `kind`: `"problem-factory"`; `line`: `65`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"framework-context/context-middleware-execution-error"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#framework-context-context-middleware-execution-error"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/framework-context/src/libs/problems/ContextProblems.ts"`; `kind`: `"problem-class"`; `line`: `7`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"framework-context/di-resolution-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#framework-context-di-resolution-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/framework-context/src/libs/problems/ContainerResolutionProblem.ts"`; `kind`: `"problem-class"`; `line`: `10`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"framework-context/di-scope-mismatch"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#framework-context-di-scope-mismatch"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/framework-context/src/libs/problems/ContainerResolutionProblem.ts"`; `kind`: `"problem-class"`; `line`: `31`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"ValidationError"`; `code`: `"framework-context/on-shutdown-decorator-invalid"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#framework-context-on-shutdown-decorator-invalid"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/framework-context/src/libs/problems/ShutdownProblems.ts"`; `kind`: `"problem-class"`; `line`: `9`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"Conflict"`; `code`: `"framework-context/pipeline-graph-invalid"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#framework-context-pipeline-graph-invalid"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request conflicts with current state or an idempotency constraint."`; `operatorAction`: `"Inspect concurrent writes, idempotency keys, and uniqueness constraints."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Refresh state, resolve the conflict, and retry with the updated intent."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/framework-context/src/libs/problems/PipelineGraphProblems.ts"`; `kind`: `"problem-class"`; `line`: `7`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"Conflict"`; `code`: `"framework-context/policy-capability-unavailable"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#framework-context-policy-capability-unavailable"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request conflicts with current state or an idempotency constraint."`; `operatorAction`: `"Inspect concurrent writes, idempotency keys, and uniqueness constraints."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Refresh state, resolve the conflict, and retry with the updated intent."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/framework-context/src/libs/problems/RuntimePolicyProblems.ts"`; `kind`: `"problem-class"`; `line`: `33`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"Conflict"`; `code`: `"framework-context/policy-conflict"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#framework-context-policy-conflict"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request conflicts with current state or an idempotency constraint."`; `operatorAction`: `"Inspect concurrent writes, idempotency keys, and uniqueness constraints."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Refresh state, resolve the conflict, and retry with the updated intent."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/framework-context/src/libs/problems/RuntimePolicyProblems.ts"`; `kind`: `"problem-class"`; `line`: `9`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"ValidationError"`; `code`: `"framework-context/policy-definition-invalid"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#framework-context-policy-definition-invalid"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/framework-context/src/libs/problems/RuntimePolicyProblems.ts"`; `kind`: `"problem-class"`; `line`: `21`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"framework-context/request-scope-outside-context"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#framework-context-request-scope-outside-context"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `13`; `file`: `"packages/framework-context/src/libs/Container.ts"`; `kind`: `"problem-factory"`; `line`: `1705`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"Conflict"`; `code`: `"framework-context/shutdown-configuration-conflict"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#framework-context-shutdown-configuration-conflict"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request conflicts with current state or an idempotency constraint."`; `operatorAction`: `"Inspect concurrent writes, idempotency keys, and uniqueness constraints."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Refresh state, resolve the conflict, and retry with the updated intent."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/framework-context/src/libs/problems/ShutdownProblems.ts"`; `kind`: `"problem-class"`; `line`: `97`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"framework-context/shutdown-hook-execution-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#framework-context-shutdown-hook-execution-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/framework-context/src/libs/problems/ShutdownProblems.ts"`; `kind`: `"problem-class"`; `line`: `112`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"framework-context/shutdown-timeout"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#framework-context-shutdown-timeout"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/framework-context/src/libs/problems/ShutdownProblems.ts"`; `kind`: `"problem-class"`; `line`: `73`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"framework-module/circular-dependency"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#framework-module-circular-dependency"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/framework-module/src/problems.ts"`; `kind`: `"problem-constructor"`; `line`: `26`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"ValidationError"`; `code`: `"framework-module/invalid-module-definition"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#framework-module-invalid-module-definition"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/framework-module/src/problems.ts"`; `kind`: `"problem-constructor"`; `line`: `16`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"framework-module/lifecycle-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#framework-module-lifecycle-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/framework-module/src/problems.ts"`; `kind`: `"problem-constructor"`; `line`: `42`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"framework-module/provider-not-visible"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#framework-module-provider-not-visible"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/framework-module/src/problems.ts"`; `kind`: `"problem-constructor"`; `line`: `70`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"Conflict"`; `code`: `"framework-module/provider-ownership-conflict"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#framework-module-provider-ownership-conflict"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request conflicts with current state or an idempotency constraint."`; `operatorAction`: `"Inspect concurrent writes, idempotency keys, and uniqueness constraints."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Refresh state, resolve the conflict, and retry with the updated intent."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/framework-module/src/problems.ts"`; `kind`: `"problem-constructor"`; `line`: `92`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"Conflict"`; `code`: `"framework-module/provider-write-not-owned"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#framework-module-provider-write-not-owned"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request conflicts with current state or an idempotency constraint."`; `operatorAction`: `"Inspect concurrent writes, idempotency keys, and uniqueness constraints."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Refresh state, resolve the conflict, and retry with the updated intent."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/framework-module/src/problems.ts"`; `kind`: `"problem-constructor"`; `line`: `108`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"frontend-problems/fetch-unavailable"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#frontend-problems-fetch-unavailable"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/frontend-problems/src/index.ts"`; `kind`: `"problem-class"`; `line`: `204`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"ValidationError"`; `code`: `"frontend-vite/missing-cloudflare-vite-plugin"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#frontend-vite-missing-cloudflare-vite-plugin"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/frontend-vite/src/libs/problems/MissingCloudflareVitePluginProblem.ts"`; `kind`: `"problem-constructor"`; `line`: `14`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"GENERATION_ERROR"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#generation-error"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/llm-core/src/libs/problems/LlmServiceProblem.ts"`; `kind`: `"problem-constructor"`; `line`: `34`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"gid-core/id-type-only-property"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#gid-core-id-type-only-property"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/gid-core/src/libs/problems/GidProblems.ts"`; `kind`: `"problem-class"`; `line`: `17`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"ValidationError"`; `code`: `"gid-core/invalid-id-prefix"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#gid-core-invalid-id-prefix"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/gid-core/src/libs/problems/GidProblems.ts"`; `kind`: `"problem-class"`; `line`: `4`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"NotImplemented"`; `code`: `"governance-core/delete-not-supported"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#governance-core-delete-not-supported"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The requested capability is not supported by this runtime or adapter."`; `operatorAction`: `"Check runtime capability declarations and provider maturity documentation."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Use a supported capability or choose an adapter/runtime that provides it."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/governance-core/src/libs/problems/DataGovernanceProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `34`; \}\]; `status`: `501`; `title`: `"Not Implemented"`; \}, \{ `category`: `"NotImplemented"`; `code`: `"governance-core/export-not-supported"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#governance-core-export-not-supported"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The requested capability is not supported by this runtime or adapter."`; `operatorAction`: `"Check runtime capability declarations and provider maturity documentation."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Use a supported capability or choose an adapter/runtime that provides it."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/governance-core/src/libs/problems/DataGovernanceProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `15`; \}\]; `status`: `501`; `title`: `"Not Implemented"`; \}, \{ `category`: `"ValidationError"`; `code`: `"governance-core/resource-validation-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#governance-core-resource-validation-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/governance-core/src/libs/DataGovernanceResource.ts"`; `kind`: `"problem-constructor"`; `line`: `102`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"BusinessRuleViolation"`; `code`: `"governance-core/retention-policy-violation"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#governance-core-retention-policy-violation"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request is syntactically valid but violates a domain rule."`; `operatorAction`: `"Review domain policy, entitlement, quota, and lifecycle rule evidence."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Change the workflow state or request values so the business rule is satisfied."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/governance-core/src/libs/problems/DataGovernanceProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `59`; \}\]; `status`: `422`; `title`: `"Business Rule Violation"`; \}, \{ `category`: `"NotFound"`; `code`: `"GRAPHQL_NOT_FOUND"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#graphql-not-found"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The requested resource or route-visible record does not exist."`; `operatorAction`: `"Confirm tenant scoping, data retention, and backing-store lookup behavior."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Verify the identifier and refresh the resource list before retrying."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/protocols-graphql/src/libs/errors/GraphQLProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `23`; \}\]; `status`: `404`; `title`: `"Not Found"`; \}, \{ `category`: `"NotFound"`; `code`: `"HEALTH_SCORE_NOT_FOUND"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#health-score-not-found"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The requested resource or route-visible record does not exist."`; `operatorAction`: `"Confirm tenant scoping, data retention, and backing-store lookup behavior."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Verify the identifier and refresh the resource list before retrying."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/customer-health-core/src/libs/problems/HealthProblems.ts"`; `kind`: `"problem-class"`; `line`: `4`; \}\]; `status`: `404`; `title`: `"Not Found"`; \}, \{ `category`: `"ValidationError"`; `code`: `"health-core/invalid-timeout"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#health-core-invalid-timeout"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/health-core/src/libs/problems/HealthProblems.ts"`; `kind`: `"problem-class"`; `line`: `9`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"BadRequest"`; `code`: `"idempotency-core/invalid-key"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#idempotency-core-invalid-key"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `11`; `file`: `"packages/idempotency-core/src/libs/problems/IdempotencyProblems.ts"`; `kind`: `"problem-metadata"`; `line`: `53`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"BadRequest"`; `code`: `"idempotency-core/invalid-ttl"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#idempotency-core-invalid-ttl"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `11`; `file`: `"packages/idempotency-core/src/libs/problems/IdempotencyProblems.ts"`; `kind`: `"problem-metadata"`; `line`: `72`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"Conflict"`; `code`: `"idempotency-core/key-conflict"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#idempotency-core-key-conflict"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request conflicts with current state or an idempotency constraint."`; `operatorAction`: `"Inspect concurrent writes, idempotency keys, and uniqueness constraints."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Refresh state, resolve the conflict, and retry with the updated intent."`; \}; `sources`: readonly \[\{ `column`: `11`; `file`: `"packages/idempotency-core/src/libs/problems/IdempotencyProblems.ts"`; `kind`: `"problem-metadata"`; `line`: `37`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"Conflict"`; `code`: `"idempotency-core/reservation-expired"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#idempotency-core-reservation-expired"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request conflicts with current state or an idempotency constraint."`; `operatorAction`: `"Inspect concurrent writes, idempotency keys, and uniqueness constraints."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Refresh state, resolve the conflict, and retry with the updated intent."`; \}; `sources`: readonly \[\{ `column`: `11`; `file`: `"packages/idempotency-core/src/libs/problems/IdempotencyProblems.ts"`; `kind`: `"problem-metadata"`; `line`: `101`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"Conflict"`; `code`: `"idempotency-core/reservation-not-found"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#idempotency-core-reservation-not-found"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request conflicts with current state or an idempotency constraint."`; `operatorAction`: `"Inspect concurrent writes, idempotency keys, and uniqueness constraints."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Refresh state, resolve the conflict, and retry with the updated intent."`; \}; `sources`: readonly \[\{ `column`: `11`; `file`: `"packages/idempotency-core/src/libs/problems/IdempotencyProblems.ts"`; `kind`: `"problem-metadata"`; `line`: `87`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"Conflict"`; `code`: `"idempotency-core/reservation-state"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#idempotency-core-reservation-state"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request conflicts with current state or an idempotency constraint."`; `operatorAction`: `"Inspect concurrent writes, idempotency keys, and uniqueness constraints."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Refresh state, resolve the conflict, and retry with the updated intent."`; \}; `sources`: readonly \[\{ `column`: `11`; `file`: `"packages/idempotency-core/src/libs/problems/IdempotencyProblems.ts"`; `kind`: `"problem-metadata"`; `line`: `120`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"Forbidden"`; `code`: `"IMPERSONATION_IDENTITY_CONFLICT"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#impersonation-identity-conflict"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The authenticated caller is not allowed to perform the requested action."`; `operatorAction`: `"Review policy, role, tenant, entitlement, and impersonation context."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Request the required permission or choose an allowed action."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/impersonation-core/src/libs/problems/ImpersonationProblems.ts"`; `kind`: `"problem-class"`; `line`: `13`; \}\]; `status`: `403`; `title`: `"Forbidden"`; \}, \{ `category`: `"BadRequest"`; `code`: `"IMPERSONATION_REASON_REQUIRED"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#impersonation-reason-required"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/impersonation-core/src/libs/problems/ImpersonationProblems.ts"`; `kind`: `"problem-class"`; `line`: `40`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"NotFound"`; `code`: `"IMPERSONATION_SESSION_NOT_FOUND"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#impersonation-session-not-found"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The requested resource or route-visible record does not exist."`; `operatorAction`: `"Confirm tenant scoping, data retention, and backing-store lookup behavior."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Verify the identifier and refresh the resource list before retrying."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/impersonation-core/src/libs/problems/ImpersonationProblems.ts"`; `kind`: `"problem-class"`; `line`: `58`; \}\]; `status`: `404`; `title`: `"Not Found"`; \}, \{ `category`: `"NotFound"`; `code`: `"IMPERSONATION_TARGET_NOT_FOUND"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#impersonation-target-not-found"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The requested resource or route-visible record does not exist."`; `operatorAction`: `"Confirm tenant scoping, data retention, and backing-store lookup behavior."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Verify the identifier and refresh the resource list before retrying."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/impersonation-core/src/libs/problems/ImpersonationProblems.ts"`; `kind`: `"problem-class"`; `line`: `22`; \}\]; `status`: `404`; `title`: `"Not Found"`; \}, \{ `category`: `"NotFound"`; `code`: `"INDEX_NOT_FOUND"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#index-not-found"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The requested resource or route-visible record does not exist."`; `operatorAction`: `"Confirm tenant scoping, data retention, and backing-store lookup behavior."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Verify the identifier and refresh the resource list before retrying."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/search-core/src/libs/problems/SearchProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `57`; \}\]; `status`: `404`; `title`: `"Not Found"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"integrations-posthog/missing-config"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#integrations-posthog-missing-config"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/integrations-posthog/src/libs/problems/PostHogProblems.ts"`; `kind`: `"problem-class"`; `line`: `4`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"BadRequest"`; `code`: `"INVALID_AUTO_JOIN_ROLE"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#invalid-auto-join-role"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/invitation-core/src/libs/problems/DomainPolicyProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `18`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"BadRequest"`; `code`: `"INVALID_CURSOR"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#invalid-cursor"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/pagination-core/src/libs/problems.ts"`; `kind`: `"problem-class"`; `line`: `4`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"ValidationError"`; `code`: `"INVALID_INVITATION_EXPIRY_DURATION"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#invalid-invitation-expiry-duration"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/invitation-core/src/libs/problems/InvitationProblems.ts"`; `kind`: `"problem-class"`; `line`: `32`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"BadRequest"`; `code`: `"INVALID_PAGINATION_DIRECTION"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#invalid-pagination-direction"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/pagination-core/src/libs/problems.ts"`; `kind`: `"problem-class"`; `line`: `40`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"ValidationError"`; `code`: `"INVALID_RETRY_CONFIGURATION"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#invalid-retry-configuration"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/retry-core/src/libs/errors/RetryInfrastructureProblem.ts"`; `kind`: `"problem-class"`; `line`: `52`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"BadRequest"`; `code`: `"INVALID_ROLE"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#invalid-role"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/membership-core/src/libs/problems/MembershipProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `44`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"Conflict"`; `code`: `"INVITATION_ALREADY_ACCEPTED"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#invitation-already-accepted"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request conflicts with current state or an idempotency constraint."`; `operatorAction`: `"Inspect concurrent writes, idempotency keys, and uniqueness constraints."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Refresh state, resolve the conflict, and retry with the updated intent."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/invitation-core/src/libs/problems/InvitationProblems.ts"`; `kind`: `"problem-class"`; `line`: `73`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"INVITATION_CREATION_FAILED"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#invitation-creation-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/invitation-core/src/libs/problems/InvitationProblems.ts"`; `kind`: `"problem-class"`; `line`: `4`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"Forbidden"`; `code`: `"INVITATION_EMAIL_MISMATCH"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#invitation-email-mismatch"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The authenticated caller is not allowed to perform the requested action."`; `operatorAction`: `"Review policy, role, tenant, entitlement, and impersonation context."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Request the required permission or choose an allowed action."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/invitation-core/src/libs/problems/InvitationProblems.ts"`; `kind`: `"problem-class"`; `line`: `84`; \}\]; `status`: `403`; `title`: `"Forbidden"`; \}, \{ `category`: `"Gone"`; `code`: `"INVITATION_EXPIRED"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#invitation-expired"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The requested resource is no longer available through this API surface."`; `operatorAction`: `"Verify lifecycle, migration, deprecation, and retention state."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Stop using the stale reference and follow the replacement flow when available."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/invitation-core/src/libs/problems/InvitationProblems.ts"`; `kind`: `"problem-class"`; `line`: `62`; \}\]; `status`: `410`; `title`: `"Gone"`; \}, \{ `category`: `"Conflict"`; `code`: `"INVITATION_IDEMPOTENCY_CONFLICT"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#invitation-idempotency-conflict"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request conflicts with current state or an idempotency constraint."`; `operatorAction`: `"Inspect concurrent writes, idempotency keys, and uniqueness constraints."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Refresh state, resolve the conflict, and retry with the updated intent."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/invitation-core/src/libs/problems/InvitationProblems.ts"`; `kind`: `"problem-class"`; `line`: `19`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"Conflict"`; `code`: `"INVITATION_INVALID_STATUS"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#invitation-invalid-status"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request conflicts with current state or an idempotency constraint."`; `operatorAction`: `"Inspect concurrent writes, idempotency keys, and uniqueness constraints."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Refresh state, resolve the conflict, and retry with the updated intent."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/invitation-core/src/libs/problems/InvitationProblems.ts"`; `kind`: `"problem-class"`; `line`: `95`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"NotFound"`; `code`: `"INVITATION_NOT_FOUND"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#invitation-not-found"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The requested resource or route-visible record does not exist."`; `operatorAction`: `"Confirm tenant scoping, data retention, and backing-store lookup behavior."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Verify the identifier and refresh the resource list before retrying."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/invitation-core/src/libs/problems/InvitationProblems.ts"`; `kind`: `"problem-class"`; `line`: `51`; \}\]; `status`: `404`; `title`: `"Not Found"`; \}, \{ `category`: `"TooManyRequests"`; `code`: `"INVITATION_RATE_LIMIT_EXCEEDED"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#invitation-rate-limit-exceeded"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller exceeded a rate, quota, or concurrency limit."`; `operatorAction`: `"Check limiter state, quota configuration, and abuse signals."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Wait for the retry window or reduce request volume."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/invitation-core/src/libs/problems/RateLimitProblems.ts"`; `kind`: `"problem-class"`; `line`: `4`; \}\]; `status`: `429`; `title`: `"Too Many Requests"`; \}, \{ `category`: `"BadRequest"`; `code`: `"invitation-core/batch-size-exceeded"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#invitation-core-batch-size-exceeded"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/invitation-core/src/libs/problems/BatchInviteProblems.ts"`; `kind`: `"problem-class"`; `line`: `4`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"invitation-drizzle/token-cipher-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#invitation-drizzle-token-cipher-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/invitation-drizzle/src/libs/InvitationTokenCipher.ts"`; `kind`: `"problem-constructor"`; `line`: `25`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"LAMBDA_TIMEOUT_GUARD"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#lambda-timeout-guard"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/retry-core/src/libs/errors/RetryInfrastructureProblem.ts"`; `kind`: `"problem-class"`; `line`: `39`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"Forbidden"`; `code`: `"LAST_OWNER"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#last-owner"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The authenticated caller is not allowed to perform the requested action."`; `operatorAction`: `"Review policy, role, tenant, entitlement, and impersonation context."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Request the required permission or choose an allowed action."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/membership-core/src/libs/problems/MembershipProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `31`; \}\]; `status`: `403`; `title`: `"Forbidden"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"lifecycle-core/action-adapter-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#lifecycle-core-action-adapter-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/lifecycle-core/src/libs/problems/LifecycleProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `38`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"lifecycle-core/duplicate-rule"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#lifecycle-core-duplicate-rule"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/lifecycle-core/src/libs/problems/LifecycleProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `6`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"Conflict"`; `code`: `"lifecycle-core/monetization-recipe-capability-missing"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#lifecycle-core-monetization-recipe-capability-missing"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request conflicts with current state or an idempotency constraint."`; `operatorAction`: `"Inspect concurrent writes, idempotency keys, and uniqueness constraints."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Refresh state, resolve the conflict, and retry with the updated intent."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/lifecycle-core/src/libs/problems/LifecycleProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `191`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"ValidationError"`; `code`: `"lifecycle-core/monetization-signal-invalid"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#lifecycle-core-monetization-signal-invalid"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/lifecycle-core/src/libs/problems/LifecycleProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `174`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"Conflict"`; `code`: `"lifecycle-core/monetization-threshold-claim-unavailable"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#lifecycle-core-monetization-threshold-claim-unavailable"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request conflicts with current state or an idempotency constraint."`; `operatorAction`: `"Inspect concurrent writes, idempotency keys, and uniqueness constraints."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Refresh state, resolve the conflict, and retry with the updated intent."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/lifecycle-core/src/libs/problems/LifecycleProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `209`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"lifecycle-core/rule-action-contract-mismatch"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#lifecycle-core-rule-action-contract-mismatch"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/lifecycle-core/src/libs/problems/LifecycleProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `156`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"Conflict"`; `code`: `"lifecycle-core/rule-command-conflict"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#lifecycle-core-rule-command-conflict"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request conflicts with current state or an idempotency constraint."`; `operatorAction`: `"Inspect concurrent writes, idempotency keys, and uniqueness constraints."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Refresh state, resolve the conflict, and retry with the updated intent."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/lifecycle-core/src/libs/problems/LifecycleProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `103`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"lifecycle-core/rule-definition-invalid"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#lifecycle-core-rule-definition-invalid"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/lifecycle-core/src/libs/problems/LifecycleProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `22`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"Conflict"`; `code`: `"lifecycle-core/rule-transition-invalid"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#lifecycle-core-rule-transition-invalid"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request conflicts with current state or an idempotency constraint."`; `operatorAction`: `"Inspect concurrent writes, idempotency keys, and uniqueness constraints."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Refresh state, resolve the conflict, and retry with the updated intent."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/lifecycle-core/src/libs/problems/LifecycleProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `119`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"Conflict"`; `code`: `"lifecycle-core/rule-version-conflict"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#lifecycle-core-rule-version-conflict"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request conflicts with current state or an idempotency constraint."`; `operatorAction`: `"Inspect concurrent writes, idempotency keys, and uniqueness constraints."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Refresh state, resolve the conflict, and retry with the updated intent."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/lifecycle-core/src/libs/problems/LifecycleProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `85`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"lifecycle-core/rule-version-definition-invalid"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#lifecycle-core-rule-version-definition-invalid"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/lifecycle-core/src/libs/problems/LifecycleProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `139`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"Conflict"`; `code`: `"lifecycle-core/rule-version-unavailable"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#lifecycle-core-rule-version-unavailable"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request conflicts with current state or an idempotency constraint."`; `operatorAction`: `"Inspect concurrent writes, idempotency keys, and uniqueness constraints."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Refresh state, resolve the conflict, and retry with the updated intent."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/lifecycle-core/src/libs/problems/LifecycleProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `67`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"NotFound"`; `code`: `"lifecycle-core/rule-version-unknown"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#lifecycle-core-rule-version-unknown"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The requested resource or route-visible record does not exist."`; `operatorAction`: `"Confirm tenant scoping, data retention, and backing-store lookup behavior."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Verify the identifier and refresh the resource list before retrying."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/lifecycle-core/src/libs/problems/LifecycleProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `49`; \}\]; `status`: `404`; `title`: `"Not Found"`; \}, \{ `category`: `"NotFound"`; `code`: `"LLM_PROVIDER_NOT_FOUND"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#llm-provider-not-found"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The requested resource or route-visible record does not exist."`; `operatorAction`: `"Confirm tenant scoping, data retention, and backing-store lookup behavior."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Verify the identifier and refresh the resource list before retrying."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/llm-core/src/libs/problems/LlmProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `26`; \}\]; `status`: `404`; `title`: `"Not Found"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"LLM_SERVICE_ERROR"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#llm-service-error"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/llm-core/src/libs/problems/LlmServiceProblem.ts"`; `kind`: `"problem-constructor"`; `line`: `8`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"BadRequest"`; `code`: `"llm-core/invalid-llm-prompt"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#llm-core-invalid-llm-prompt"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/llm-core/src/libs/problems/LlmProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `102`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"llm-core/invalid-llm-response"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#llm-core-invalid-llm-response"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/llm-core/src/libs/problems/LlmProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `82`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"llm-core/llm-service-not-initialized"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#llm-core-llm-service-not-initialized"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/llm-core/src/libs/problems/LlmProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `92`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"BadRequest"`; `code`: `"llm-core/operation-aborted"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#llm-core-operation-aborted"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/llm-core/src/libs/problems/LlmProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `9`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"TooManyRequests"`; `code`: `"llm-core/rate-limit-exceeded"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#llm-core-rate-limit-exceeded"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller exceeded a rate, quota, or concurrency limit."`; `operatorAction`: `"Check limiter state, quota configuration, and abuse signals."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Wait for the retry window or reduce request volume."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/llm-core/src/libs/problems/LlmProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `60`; \}\]; `status`: `429`; `title`: `"Too Many Requests"`; \}, \{ `category`: `"Forbidden"`; `code`: `"llm-metering/cost-limit-exceeded"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#llm-metering-cost-limit-exceeded"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The authenticated caller is not allowed to perform the requested action."`; `operatorAction`: `"Review policy, role, tenant, entitlement, and impersonation context."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Request the required permission or choose an allowed action."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/llm-metering/src/libs/problems/LlmMeteringProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `41`; \}\]; `status`: `403`; `title`: `"Forbidden"`; \}, \{ `category`: `"NotFound"`; `code`: `"llm-metering/pricing-not-found"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#llm-metering-pricing-not-found"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The requested resource or route-visible record does not exist."`; `operatorAction`: `"Confirm tenant scoping, data retention, and backing-store lookup behavior."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Verify the identifier and refresh the resource list before retrying."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/llm-metering/src/libs/problems/LlmMeteringProblems.ts"`; `kind`: `"problem-class"`; `line`: `58`; \}\]; `status`: `404`; `title`: `"Not Found"`; \}, \{ `category`: `"Conflict"`; `code`: `"llm-metering/pricing-registry-conflict"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#llm-metering-pricing-registry-conflict"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request conflicts with current state or an idempotency constraint."`; `operatorAction`: `"Inspect concurrent writes, idempotency keys, and uniqueness constraints."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Refresh state, resolve the conflict, and retry with the updated intent."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/llm-metering/src/libs/problems/LlmMeteringProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `71`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"Forbidden"`; `code`: `"llm-metering/quota-exceeded"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#llm-metering-quota-exceeded"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The authenticated caller is not allowed to perform the requested action."`; `operatorAction`: `"Review policy, role, tenant, entitlement, and impersonation context."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Request the required permission or choose an allowed action."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/llm-metering/src/libs/problems/LlmMeteringProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `24`; \}\]; `status`: `403`; `title`: `"Forbidden"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"llm-metering/record-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#llm-metering-record-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/llm-metering/src/libs/problems/LlmMeteringProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `7`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"BadRequest"`; `code`: `"llm-openai/aborted"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#llm-openai-aborted"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/llm-openai/src/libs/problems/OpenAiProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `117`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"Unauthorized"`; `code`: `"llm-openai/authentication-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#llm-openai-authentication-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request did not include valid authentication credentials."`; `operatorAction`: `"Check authentication configuration, token issuer, and clock skew."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Sign in again or provide a valid credential."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/llm-openai/src/libs/problems/OpenAiProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `42`; \}\]; `status`: `401`; `title`: `"Unauthorized"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"llm-openai/invalid-response"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#llm-openai-invalid-response"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/llm-openai/src/libs/problems/OpenAiProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `135`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"llm-openai/missing-config"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#llm-openai-missing-config"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/llm-openai/src/libs/problems/OpenAiProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `24`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"TooManyRequests"`; `code`: `"llm-openai/rate-limited"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#llm-openai-rate-limited"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller exceeded a rate, quota, or concurrency limit."`; `operatorAction`: `"Check limiter state, quota configuration, and abuse signals."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Wait for the retry window or reduce request volume."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/llm-openai/src/libs/problems/OpenAiProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `57`; \}\]; `status`: `429`; `title`: `"Too Many Requests"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"llm-openai/retryable-upstream"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#llm-openai-retryable-upstream"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/llm-openai/src/libs/problems/OpenAiProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `72`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"llm-openai/terminal-upstream"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#llm-openai-terminal-upstream"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/llm-openai/src/libs/problems/OpenAiProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `87`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"BadRequest"`; `code`: `"llm-openai/validation-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#llm-openai-validation-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/llm-openai/src/libs/problems/OpenAiProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `102`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"Forbidden"`; `code`: `"MEMBERSHIP_CONSTRAINT"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#membership-constraint"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The authenticated caller is not allowed to perform the requested action."`; `operatorAction`: `"Review policy, role, tenant, entitlement, and impersonation context."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Request the required permission or choose an allowed action."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/membership-core/src/libs/problems/MembershipConstraintProblem.ts"`; `kind`: `"problem-constructor"`; `line`: `9`; \}\]; `status`: `403`; `title`: `"Forbidden"`; \}, \{ `category`: `"NotFound"`; `code`: `"MEMBERSHIP_NOT_FOUND"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#membership-not-found"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The requested resource or route-visible record does not exist."`; `operatorAction`: `"Confirm tenant scoping, data retention, and backing-store lookup behavior."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Verify the identifier and refresh the resource list before retrying."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/membership-core/src/libs/problems/MembershipProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `5`; \}\]; `status`: `404`; `title`: `"Not Found"`; \}, \{ `category`: `"BadRequest"`; `code`: `"meta-vite/server-action-invalid-path"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#meta-vite-server-action-invalid-path"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/meta-vite/src/libs/actions/serverActions.ts"`; `kind`: `"problem-class"`; `line`: `80`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"NotFound"`; `code`: `"meta-vite/server-action-not-found"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#meta-vite-server-action-not-found"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The requested resource or route-visible record does not exist."`; `operatorAction`: `"Confirm tenant scoping, data retention, and backing-store lookup behavior."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Verify the identifier and refresh the resource list before retrying."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/meta-vite/src/libs/actions/serverActions.ts"`; `kind`: `"problem-class"`; `line`: `66`; \}\]; `status`: `404`; `title`: `"Not Found"`; \}, \{ `category`: `"ValidationError"`; `code`: `"meta-vite/server-action-validation-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#meta-vite-server-action-validation-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/meta-vite/src/libs/actions/serverActions.ts"`; `kind`: `"problem-class"`; `line`: `94`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"meter/insert-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#meter-insert-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `13`; `file`: `"packages/metering-drizzle/src/libs/DrizzleMeterRepository.ts"`; `kind`: `"problem-factory"`; `line`: `146`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"metering-drizzle/migration-query-result-unsupported"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#metering-drizzle-migration-query-result-unsupported"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `9`; `file`: `"packages/metering-drizzle/src/migrations/addUsageEnvelopeFields.ts"`; `kind`: `"problem-factory"`; `line`: `125`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"metering-drizzle/usage-envelope-not-configured"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#metering-drizzle-usage-envelope-not-configured"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/metering-drizzle/src/libs/problems/UsageEnvelopeConfigurationProblem.ts"`; `kind`: `"problem-constructor"`; `line`: `6`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"metering-upstash/missing-config"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#metering-upstash-missing-config"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/metering-upstash/src/libs/problems/UpstashMeteringProblems.ts"`; `kind`: `"problem-class"`; `line`: `4`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"metering/atomic-quota-not-supported"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#metering-atomic-quota-not-supported"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/metering-core/src/libs/problems/AtomicQuotaNotSupportedProblem.ts"`; `kind`: `"problem-class"`; `line`: `4`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"metering/billable-usage-journal-required"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#metering-billable-usage-journal-required"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"A meter declares billing as required, but MeterRegistry validation cannot find a persistent BillableUsageJournal."`; `operatorAction`: `"Configure a persistent BillableUsageJournal before loadAll, lazy meter lookup, or registration validates a billing-required meter."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Do not retry with the same configuration; connect a persistent journal or change the meter billing contract first."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/metering-core/src/libs/problems/BillableUsageJournalRequiredProblem.ts"`; `kind`: `"problem-constructor"`; `line`: `5`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"Conflict"`; `code`: `"metering/duplicate-record"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#metering-duplicate-record"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request conflicts with current state or an idempotency constraint."`; `operatorAction`: `"Inspect concurrent writes, idempotency keys, and uniqueness constraints."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Refresh state, resolve the conflict, and retry with the updated intent."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/metering-core/src/libs/problems/DuplicateRecordProblem.ts"`; `kind`: `"problem-constructor"`; `line`: `5`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"NotFound"`; `code`: `"metering/invalid-meter"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#metering-invalid-meter"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The requested resource or route-visible record does not exist."`; `operatorAction`: `"Confirm tenant scoping, data retention, and backing-store lookup behavior."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Verify the identifier and refresh the resource list before retrying."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/metering-core/src/libs/problems/InvalidMeterProblem.ts"`; `kind`: `"problem-constructor"`; `line`: `5`; \}\]; `status`: `404`; `title`: `"Not Found"`; \}, \{ `category`: `"ValidationError"`; `code`: `"metering/invalid-meter-dimension"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#metering-invalid-meter-dimension"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/metering-core/src/libs/problems/InvalidMeterDimensionProblem.ts"`; `kind`: `"problem-constructor"`; `line`: `6`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"ValidationError"`; `code`: `"metering/invalid-usage-envelope"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#metering-invalid-usage-envelope"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/metering-core/src/libs/problems/InvalidUsageEnvelopeProblem.ts"`; `kind`: `"problem-constructor"`; `line`: `6`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"ValidationError"`; `code`: `"metering/invalid-usage-query"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#metering-invalid-usage-query"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/metering-core/src/libs/problems/InvalidUsageQueryProblem.ts"`; `kind`: `"problem-constructor"`; `line`: `6`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"TooManyRequests"`; `code`: `"metering/quota-exceeded"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#metering-quota-exceeded"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller exceeded a rate, quota, or concurrency limit."`; `operatorAction`: `"Check limiter state, quota configuration, and abuse signals."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Wait for the retry window or reduce request volume."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/metering-core/src/libs/problems/QuotaExceededProblem.ts"`; `kind`: `"problem-constructor"`; `line`: `9`; \}\]; `status`: `429`; `title`: `"Too Many Requests"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"metering/redis-error"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#metering-redis-error"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/metering-core/src/libs/problems/RedisProblem.ts"`; `kind`: `"problem-constructor"`; `line`: `8`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"Conflict"`; `code`: `"metering/transition-conflict"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#metering-transition-conflict"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request conflicts with current state or an idempotency constraint."`; `operatorAction`: `"Inspect concurrent writes, idempotency keys, and uniqueness constraints."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Refresh state, resolve the conflict, and retry with the updated intent."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/metering-core/src/libs/problems/MeteringTransitionProblem.ts"`; `kind`: `"problem-constructor"`; `line`: `5`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"metrics-billing/metric-dropped"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#metrics-billing-metric-dropped"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Billing metrics could not be recorded because the referenced account, subscription, or plan evidence was missing."`; `operatorAction`: `"Use extensions.reason, tenantId, resourceId, and eventKey to rebuild the missing account, subscription, or plan before replay."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Restore the missing billing state identified by reason/resourceId, then replay the same billing event with the same event key."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/metrics-billing/src/libs/problems/BillingMetricsProblems.ts"`; `kind`: `"problem-class"`; `line`: `17`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"metrics-billing/recording-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#metrics-billing-recording-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/metrics-billing/src/libs/problems/BillingMetricsProblems.ts"`; `kind`: `"problem-class"`; `line`: `46`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"BusinessRuleViolation"`; `code`: `"metrics-core/carrying-capacity-simulation-error"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#metrics-core-carrying-capacity-simulation-error"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request is syntactically valid but violates a domain rule."`; `operatorAction`: `"Review domain policy, entitlement, quota, and lifecycle rule evidence."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Change the workflow state or request values so the business rule is satisfied."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/metrics-core/src/libs/problems/MetricsProblems.ts"`; `kind`: `"problem-class"`; `line`: `4`; \}\]; `status`: `422`; `title`: `"Business Rule Violation"`; \}, \{ `category`: `"ValidationError"`; `code`: `"metrics-core/carrying-capacity-tenant-required"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#metrics-core-carrying-capacity-tenant-required"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/metrics-core/src/libs/problems/MetricsProblems.ts"`; `kind`: `"problem-class"`; `line`: `12`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"ValidationError"`; `code`: `"metrics-core/gross-margin-required"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#metrics-core-gross-margin-required"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/metrics-core/src/libs/problems/MetricsProblems.ts"`; `kind`: `"problem-class"`; `line`: `42`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"ValidationError"`; `code`: `"metrics-core/invalid-retention-movement"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#metrics-core-invalid-retention-movement"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/metrics-core/src/libs/problems/MetricsProblems.ts"`; `kind`: `"problem-class"`; `line`: `30`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"ValidationError"`; `code`: `"metrics-core/mixed-currency-mrr"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#metrics-core-mixed-currency-mrr"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/metrics-core/src/libs/problems/MetricsProblems.ts"`; `kind`: `"problem-class"`; `line`: `50`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"NotImplemented"`; `code`: `"metrics-core/retention-metrics-unavailable"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#metrics-core-retention-metrics-unavailable"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The requested capability is not supported by this runtime or adapter."`; `operatorAction`: `"Check runtime capability declarations and provider maturity documentation."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Use a supported capability or choose an adapter/runtime that provides it."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/metrics-core/src/libs/problems/MetricsProblems.ts"`; `kind`: `"problem-class"`; `line`: `20`; \}\]; `status`: `501`; `title`: `"Not Implemented"`; \}, \{ `category`: `"ValidationError"`; `code`: `"metrics-core/snapshot-tenant-required"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#metrics-core-snapshot-tenant-required"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/metrics-core/src/libs/SnapshotScheduler.ts"`; `kind`: `"problem-class"`; `line`: `19`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"MIDDLEWARE_EXECUTION_ERROR"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#middleware-execution-error"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/framework-context/src/libs/problems/MiddlewareProblems.ts"`; `kind`: `"problem-class"`; `line`: `7`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"BadRequest"`; `code`: `"migration-runner/database-url-required"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#migration-runner-database-url-required"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/migration-runner/src/libs/problems/DatabaseUrlRequiredProblem.ts"`; `kind`: `"problem-class"`; `line`: `4`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"migration-runner/file-load-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#migration-runner-file-load-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/migration-runner/src/libs/problems/MigrationFileLoadProblem.ts"`; `kind`: `"problem-class"`; `line`: `5`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"Conflict"`; `code`: `"migration-runner/history-drift"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#migration-runner-history-drift"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Recorded migration history no longer matches the available migration files by stable id and name."`; `operatorAction`: `"Compare the checkpoint rows with version-controlled migration files, restore missing or renamed files when possible, and repair history only after verifying the deployed schema."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Restore the original migration file identity or ask an operator to perform an explicitly verified history repair."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/migration-runner/src/libs/problems/MigrationHistoryDriftProblem.ts"`; `kind`: `"problem-class"`; `line`: `16`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"BadRequest"`; `code`: `"migration-runner/invalid-count"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#migration-runner-invalid-count"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/migration-runner/src/libs/problems/InvalidMigrationCountProblem.ts"`; `kind`: `"problem-class"`; `line`: `4`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"ValidationError"`; `code`: `"migration-runner/missing-down-function"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#migration-runner-missing-down-function"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/migration-runner/src/libs/problems/MissingDownFunctionProblem.ts"`; `kind`: `"problem-class"`; `line`: `4`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"ValidationError"`; `code`: `"migration-runner/missing-up-function"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#migration-runner-missing-up-function"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/migration-runner/src/libs/problems/MissingUpFunctionProblem.ts"`; `kind`: `"problem-class"`; `line`: `4`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"ValidationError"`; `code`: `"migration-runner/transaction-required"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#migration-runner-transaction-required"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/migration-runner/src/libs/problems/MigrationTransactionRequiredProblem.ts"`; `kind`: `"problem-class"`; `line`: `4`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"BadRequest"`; `code`: `"migration-runner/unsupported-dialect"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#migration-runner-unsupported-dialect"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/migration-runner/src/libs/problems/UnsupportedDialectProblem.ts"`; `kind`: `"problem-class"`; `line`: `4`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"migration-runner/unsupported-query-result"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#migration-runner-unsupported-query-result"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/migration-runner/src/libs/problems/UnsupportedMigrationQueryResultProblem.ts"`; `kind`: `"problem-class"`; `line`: `11`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"BadRequest"`; `code`: `"MISSING_TENANT"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#missing-tenant"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/search-core/src/libs/problems/SearchProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `5`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"NotFound"`; `code`: `"MODEL_NOT_FOUND"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#model-not-found"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The requested resource or route-visible record does not exist."`; `operatorAction`: `"Confirm tenant scoping, data retention, and backing-store lookup behavior."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Verify the identifier and refresh the resource list before retrying."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/llm-core/src/libs/problems/LlmServiceProblem.ts"`; `kind`: `"problem-constructor"`; `line`: `25`; \}\]; `status`: `404`; `title`: `"Not Found"`; \}, \{ `category`: `"Forbidden"`; `code`: `"NESTED_IMPERSONATION_NOT_ALLOWED"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#nested-impersonation-not-allowed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The authenticated caller is not allowed to perform the requested action."`; `operatorAction`: `"Review policy, role, tenant, entitlement, and impersonation context."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Request the required permission or choose an allowed action."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/impersonation-core/src/libs/problems/ImpersonationProblems.ts"`; `kind`: `"problem-class"`; `line`: `31`; \}\]; `status`: `403`; `title`: `"Forbidden"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"notifications-core/default-provider-conflict"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#notifications-core-default-provider-conflict"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/notifications-core/src/libs/problems/NotificationProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `80`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"notifications-core/delivery-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#notifications-core-delivery-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/notifications-core/src/libs/problems/NotificationProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `169`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"ValidationError"`; `code`: `"notifications-core/idempotency-key-required"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#notifications-core-idempotency-key-required"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/notifications-core/src/libs/problems/NotificationProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `241`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"ValidationError"`; `code`: `"notifications-core/outbox-idempotency-mismatch"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#notifications-core-outbox-idempotency-mismatch"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/notifications-core/src/libs/problems/NotificationProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `257`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"ValidationError"`; `code`: `"notifications-core/preference-channel-mismatch"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#notifications-core-preference-channel-mismatch"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/notifications-core/src/libs/problems/NotificationProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `224`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"ValidationError"`; `code`: `"notifications-core/preference-context-required"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#notifications-core-preference-context-required"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/notifications-core/src/libs/problems/NotificationProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `208`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"BusinessRuleViolation"`; `code`: `"notifications-core/preference-denied"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#notifications-core-preference-denied"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request is syntactically valid but violates a domain rule."`; `operatorAction`: `"Review domain policy, entitlement, quota, and lifecycle rule evidence."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Change the workflow state or request values so the business rule is satisfied."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/notifications-core/src/libs/problems/NotificationProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `186`; \}\]; `status`: `422`; `title`: `"Business Rule Violation"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"notifications-core/provider-already-registered"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#notifications-core-provider-already-registered"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/notifications-core/src/libs/problems/NotificationProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `64`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"notifications-core/provider-channel-mismatch"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#notifications-core-provider-channel-mismatch"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/notifications-core/src/libs/problems/NotificationProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `102`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"notifications-core/provider-idempotency-unsupported"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#notifications-core-provider-idempotency-unsupported"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/notifications-core/src/libs/problems/NotificationProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `136`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"notifications-core/provider-not-configured"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#notifications-core-provider-not-configured"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/notifications-core/src/libs/problems/NotificationProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `32`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"notifications-core/provider-not-found"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#notifications-core-provider-not-found"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/notifications-core/src/libs/problems/NotificationProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `120`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"notifications-core/provider-not-registered"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#notifications-core-provider-not-registered"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/notifications-core/src/libs/problems/NotificationProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `48`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"notifications-core/send-max-attempts-invalid"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#notifications-core-send-max-attempts-invalid"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/notifications-core/src/libs/problems/NotificationProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `153`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"Conflict"`; `code`: `"notifications-core/template-already-registered"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#notifications-core-template-already-registered"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request conflicts with current state or an idempotency constraint."`; `operatorAction`: `"Inspect concurrent writes, idempotency keys, and uniqueness constraints."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Refresh state, resolve the conflict, and retry with the updated intent."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/notifications-core/src/libs/problems/NotificationProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `273`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"NotFound"`; `code`: `"notifications-core/template-not-found"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#notifications-core-template-not-found"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The requested resource or route-visible record does not exist."`; `operatorAction`: `"Confirm tenant scoping, data retention, and backing-store lookup behavior."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Verify the identifier and refresh the resource list before retrying."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/notifications-core/src/libs/problems/NotificationProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `291`; \}\]; `status`: `404`; `title`: `"Not Found"`; \}, \{ `category`: `"ValidationError"`; `code`: `"notifications-core/template-variables-invalid"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#notifications-core-template-variables-invalid"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/notifications-core/src/libs/problems/NotificationProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `310`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"Conflict"`; `code`: `"notifications-resend/idempotency-conflict"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#notifications-resend-idempotency-conflict"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Resend rejected reuse of an idempotency key for a different send request."`; `operatorAction`: `"Audit callers so each business send intent has one stable idempotency key."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Replay the original payload with the same key or use a new key for a changed send intent."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/notifications-resend/src/libs/problems/ResendNotificationProblem.ts"`; `kind`: `"problem-constructor"`; `line`: `54`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"notifications-resend/missing-config"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#notifications-resend-missing-config"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Required Resend configuration is absent or blank before provider readiness can be proven."`; `operatorAction`: `"Check deployment env/config injection and verify diagnostics do not expose the raw key."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Configure RESEND_API_KEY and a verified default sender, then rerun diagnostics."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/notifications-resend/src/libs/problems/ResendNotificationProblem.ts"`; `kind`: `"problem-constructor"`; `line`: `19`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"notifications-resend/retryable-upstream"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#notifications-resend-retryable-upstream"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Resend returned a transient status, rate limit, or network timeout."`; `operatorAction`: `"Check Resend status, rate limits, and retry-after/upstream status in telemetry."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry with the same idempotency key when the send intent is unchanged."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/notifications-resend/src/libs/problems/ResendNotificationProblem.ts"`; `kind`: `"problem-constructor"`; `line`: `65`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"notifications-resend/terminal-upstream"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#notifications-resend-terminal-upstream"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Resend rejected the request with a non-retryable upstream failure."`; `operatorAction`: `"Inspect redacted upstream code/status and fix provider configuration before retrying."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Do not retry unchanged input; correct the API key, domain, sender verification, or request content."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/notifications-resend/src/libs/problems/ResendNotificationProblem.ts"`; `kind`: `"problem-constructor"`; `line`: `76`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"ValidationError"`; `code`: `"notifications-resend/validation-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#notifications-resend-validation-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/notifications-resend/src/libs/problems/ResendNotificationProblem.ts"`; `kind`: `"problem-constructor"`; `line`: `40`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"Unauthorized"`; `code`: `"onboarding/context-required"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#onboarding-context-required"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request did not include valid authentication credentials."`; `operatorAction`: `"Check authentication configuration, token issuer, and clock skew."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Sign in again or provide a valid credential."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/onboarding-core/src/libs/problems/OnboardingProblems.ts"`; `kind`: `"problem-class"`; `line`: `29`; \}\]; `status`: `401`; `title`: `"Unauthorized"`; \}, \{ `category`: `"NotFound"`; `code`: `"onboarding/definition-not-found"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#onboarding-definition-not-found"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The requested resource or route-visible record does not exist."`; `operatorAction`: `"Confirm tenant scoping, data retention, and backing-store lookup behavior."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Verify the identifier and refresh the resource list before retrying."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/onboarding-core/src/libs/problems/OnboardingProblems.ts"`; `kind`: `"problem-class"`; `line`: `7`; \}\]; `status`: `404`; `title`: `"Not Found"`; \}, \{ `category`: `"NotFound"`; `code`: `"onboarding/step-not-found"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#onboarding-step-not-found"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The requested resource or route-visible record does not exist."`; `operatorAction`: `"Confirm tenant scoping, data retention, and backing-store lookup behavior."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Verify the identifier and refresh the resource list before retrying."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/onboarding-core/src/libs/problems/OnboardingProblems.ts"`; `kind`: `"problem-class"`; `line`: `18`; \}\]; `status`: `404`; `title`: `"Not Found"`; \}, \{ `category`: `"ValidationError"`; `code`: `"openapi-spec/controller-typescript-diagnostics"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#openapi-spec-controller-typescript-diagnostics"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/openapi-spec/src/libs/loadControllers.ts"`; `kind`: `"problem-constructor"`; `line`: `70`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"ValidationError"`; `code`: `"openapi-spec/invalid-contract"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#openapi-spec-invalid-contract"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/openapi-spec/src/libs/emitOpenAPI.ts"`; `kind`: `"problem-constructor"`; `line`: `106`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"BadRequest"`; `code`: `"openapi-spec/no-rest-controllers-found"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#openapi-spec-no-rest-controllers-found"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/openapi-spec/src/libs/loadControllers.ts"`; `kind`: `"problem-constructor"`; `line`: `31`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"OTLP_ENDPOINT_REQUIRED"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#otlp-endpoint-required"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/telemetry-sdk-node/src/libs/problems/TelemetryProblems.ts"`; `kind`: `"problem-class"`; `line`: `19`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"outbox-core/dispatch-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#outbox-core-dispatch-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/outbox-core/src/libs/problems/OutboxProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `86`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"outbox-core/failure-metadata-missing"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#outbox-core-failure-metadata-missing"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"A dispatcher attempted to mark an outbox record failed without the required retry metadata extensions."`; `operatorAction`: `"Audit dispatcher error mapping so every failure path preserves attempt, retryability, terminal state, and failedAt metadata."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Abort the dispatch attempt and pass an OutboxDispatchProblem or equivalent Problem with outbox retry metadata."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/outbox-core/src/libs/problems/OutboxProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `116`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"Conflict"`; `code`: `"outbox-core/record-id-conflict"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#outbox-core-record-id-conflict"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"A caller tried to create an outbox record with an explicit id that already belongs to another idempotency scope."`; `operatorAction`: `"Inspect the producer id/idempotency assignment path and remove any shared id generator or manual id reuse."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Reuse the original idempotency key for the same intent or choose a new record id for a different intent."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/outbox-core/src/libs/problems/OutboxProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `103`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"outbox-core/unit-of-work-context-invalid"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#outbox-core-unit-of-work-context-invalid"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"An outbox write received a Unit of Work context that was missing, malformed, or created by another store instance."`; `operatorAction`: `"Check transaction boundary wiring so repository and outbox writes share the same store-owned Unit of Work client."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Abort the write and use the context supplied by the active TransactionalOutboxStore.runInUnitOfWork callback."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/outbox-core/src/libs/problems/OutboxProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `129`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"Forbidden"`; `code`: `"OWNERSHIP_TRANSFER_REQUIRED"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#ownership-transfer-required"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The authenticated caller is not allowed to perform the requested action."`; `operatorAction`: `"Review policy, role, tenant, entitlement, and impersonation context."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Request the required permission or choose an allowed action."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/membership-core/src/libs/problems/MembershipProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `65`; \}\]; `status`: `403`; `title`: `"Forbidden"`; \}, \{ `category`: `"BadRequest"`; `code`: `"problems-core/invalid-extensions"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#problems-core-invalid-extensions"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/problems-core/src/libs/problems/InvalidExtensionsProblem.ts"`; `kind`: `"problem-class"`; `line`: `5`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"BadRequest"`; `code`: `"problems-core/parse-error"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#problems-core-parse-error"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/problems-core/src/libs/problems/ProblemDetailsParseProblem.ts"`; `kind`: `"problem-class"`; `line`: `5`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"ValidationError"`; `code`: `"problems-core/problem-registry-invalid"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#problems-core-problem-registry-invalid"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/problems-core/src/libs/ProblemRegistry.ts"`; `kind`: `"problem-constructor"`; `line`: `210`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"problems-core/unhandled-category"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#problems-core-unhandled-category"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/problems-core/src/libs/ProblemCategoryMapper.ts"`; `kind`: `"problem-class"`; `line`: `19`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"ValidationError"`; `code`: `"protocols-core/contract-graph-diagnostics"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#protocols-core-contract-graph-diagnostics"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/protocols-core/src/libs/ContractGraph.ts"`; `kind`: `"problem-constructor"`; `line`: `160`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"BadRequest"`; `code`: `"protocols-graphql/auth-invalid-header-format"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#protocols-graphql-auth-invalid-header-format"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `13`; `file`: `"packages/protocols-graphql/src/libs/guards/AuthGuard.ts"`; `kind`: `"problem-factory"`; `line`: `71`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"BadRequest"`; `code`: `"protocols-graphql/auth-invalid-request"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#protocols-graphql-auth-invalid-request"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `13`; `file`: `"packages/protocols-graphql/src/libs/guards/AuthGuard.ts"`; `kind`: `"problem-factory"`; `line`: `54`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"Unauthorized"`; `code`: `"protocols-graphql/auth-invalid-token"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#protocols-graphql-auth-invalid-token"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request did not include valid authentication credentials."`; `operatorAction`: `"Check authentication configuration, token issuer, and clock skew."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Sign in again or provide a valid credential."`; \}; `sources`: readonly \[\{ `column`: `10`; `file`: `"packages/protocols-graphql/src/libs/guards/AuthGuard.ts"`; `kind`: `"problem-factory"`; `line`: `14`; \}\]; `status`: `401`; `title`: `"Unauthorized"`; \}, \{ `category`: `"Unauthorized"`; `code`: `"protocols-graphql/auth-missing-header"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#protocols-graphql-auth-missing-header"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request did not include valid authentication credentials."`; `operatorAction`: `"Check authentication configuration, token issuer, and clock skew."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Sign in again or provide a valid credential."`; \}; `sources`: readonly \[\{ `column`: `13`; `file`: `"packages/protocols-graphql/src/libs/guards/AuthGuard.ts"`; `kind`: `"problem-factory"`; `line`: `63`; \}\]; `status`: `401`; `title`: `"Unauthorized"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"protocols-graphql/auth-verifier-unavailable"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#protocols-graphql-auth-verifier-unavailable"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `13`; `file`: `"packages/protocols-graphql/src/libs/guards/AuthGuard.ts"`; `kind`: `"problem-factory"`; `line`: `97`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"Forbidden"`; `code`: `"protocols-graphql/guard-denied"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#protocols-graphql-guard-denied"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The authenticated caller is not allowed to perform the requested action."`; `operatorAction`: `"Review policy, role, tenant, entitlement, and impersonation context."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Request the required permission or choose an allowed action."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/protocols-graphql/src/libs/problems/GuardProblems.ts"`; `kind`: `"problem-class"`; `line`: `4`; \}\]; `status`: `403`; `title`: `"Forbidden"`; \}, \{ `category`: `"BadRequest"`; `code`: `"protocols-rest/auth-invalid-header-format"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#protocols-rest-auth-invalid-header-format"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `13`; `file`: `"packages/protocols-rest/src/libs/guards/AuthGuard.ts"`; `kind`: `"problem-factory"`; `line`: `77`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"BadRequest"`; `code`: `"protocols-rest/auth-invalid-request"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#protocols-rest-auth-invalid-request"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `13`; `file`: `"packages/protocols-rest/src/libs/guards/AuthGuard.ts"`; `kind`: `"problem-factory"`; `line`: `59`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"Unauthorized"`; `code`: `"protocols-rest/auth-invalid-token"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#protocols-rest-auth-invalid-token"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request did not include valid authentication credentials."`; `operatorAction`: `"Check authentication configuration, token issuer, and clock skew."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Sign in again or provide a valid credential."`; \}; `sources`: readonly \[\{ `column`: `10`; `file`: `"packages/protocols-rest/src/libs/guards/AuthGuard.ts"`; `kind`: `"problem-factory"`; `line`: `15`; \}\]; `status`: `401`; `title`: `"Unauthorized"`; \}, \{ `category`: `"Unauthorized"`; `code`: `"protocols-rest/auth-missing-header"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#protocols-rest-auth-missing-header"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request did not include valid authentication credentials."`; `operatorAction`: `"Check authentication configuration, token issuer, and clock skew."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Sign in again or provide a valid credential."`; \}; `sources`: readonly \[\{ `column`: `13`; `file`: `"packages/protocols-rest/src/libs/guards/AuthGuard.ts"`; `kind`: `"problem-factory"`; `line`: `69`; \}\]; `status`: `401`; `title`: `"Unauthorized"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"protocols-rest/auth-verifier-unavailable"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#protocols-rest-auth-verifier-unavailable"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `13`; `file`: `"packages/protocols-rest/src/libs/guards/AuthGuard.ts"`; `kind`: `"problem-factory"`; `line`: `102`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"protocols-rest/duplicate-parameter-index"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#protocols-rest-duplicate-parameter-index"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `13`; `file`: `"packages/protocols-rest/src/libs/metadata/MetadataReader.ts"`; `kind`: `"problem-factory"`; `line`: `48`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"ValidationError"`; `code`: `"protocols-rest/request-validation-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#protocols-rest-request-validation-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/protocols-rest/src/libs/validators/ValidationProblem.ts"`; `kind`: `"problem-class"`; `line`: `31`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"protocols-rest/response-validation-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#protocols-rest-response-validation-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/protocols-rest/src/libs/validators/ValidationProblem.ts"`; `kind`: `"problem-class"`; `line`: `54`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"ValidationError"`; `code`: `"protocols-rest/validation-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#protocols-rest-validation-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/protocols-rest/src/libs/validators/ValidationProblem.ts"`; `kind`: `"problem-class"`; `line`: `12`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"protocols-trpc/duplicate-parameter-index"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#protocols-trpc-duplicate-parameter-index"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `13`; `file`: `"packages/protocols-trpc/src/libs/TrpcParamResolver.ts"`; `kind`: `"problem-factory"`; `line`: `71`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"protocols-trpc/duplicate-procedure-name"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#protocols-trpc-duplicate-procedure-name"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Two controller routes resolve to the same tRPC domain and procedure name."`; `operatorAction`: `"Inspect the duplicate-procedure diagnostic for the existing and conflicting controller routes and their decorator source locations, then change one domain or controller method name."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Use an application build where every tRPC procedure has a unique domain and controller method name combination."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/protocols-trpc/src/libs/createTrpcRouter.ts"`; `kind`: `"problem-class"`; `line`: `93`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"protocols-trpc/provider-container-required"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#protocols-trpc-provider-container-required"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/protocols-trpc/src/libs/createTrpcRouter.ts"`; `kind`: `"problem-class"`; `line`: `77`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"protocols-trpc/request-normalization-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#protocols-trpc-request-normalization-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/protocols-trpc/src/libs/TrpcExecutionContext.ts"`; `kind`: `"problem-class"`; `line`: `51`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"protocols-trpc/request-unavailable"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#protocols-trpc-request-unavailable"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/protocols-trpc/src/libs/TrpcExecutionContext.ts"`; `kind`: `"problem-class"`; `line`: `42`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"protocols-trpc/route-handler-not-callable"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#protocols-trpc-route-handler-not-callable"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/protocols-trpc/src/libs/createTrpcRouter.ts"`; `kind`: `"problem-class"`; `line`: `64`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"BadRequest"`; `code`: `"PUBLIC_EMAIL_DOMAIN_NOT_ALLOWED"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#public-email-domain-not-allowed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/invitation-core/src/libs/problems/DomainPolicyProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `5`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"TooManyRequests"`; `code`: `"RATE_LIMIT_EXCEEDED"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#rate-limit-exceeded"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller exceeded a rate, quota, or concurrency limit."`; `operatorAction`: `"Check limiter state, quota configuration, and abuse signals."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Wait for the retry window or reduce request volume."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/ratelimit-core/src/libs/problems/RateLimitExceededProblem.ts"`; `kind`: `"problem-constructor"`; `line`: `15`; \}\]; `status`: `429`; `title`: `"Too Many Requests"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"RATE_LIMIT_KEY_BUILDER_ERROR"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#rate-limit-key-builder-error"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/ratelimit-core/src/libs/problems/RateLimitConfigProblems.ts"`; `kind`: `"problem-class"`; `line`: `6`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"RATE_LIMIT_REFUND_UNSUPPORTED"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#rate-limit-refund-unsupported"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/ratelimit-core/src/libs/problems/RateLimitConfigProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `43`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"BadRequest"`; `code`: `"RATE_LIMIT_WINDOW_ERROR"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#rate-limit-window-error"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/ratelimit-core/src/libs/problems/RateLimitConfigProblems.ts"`; `kind`: `"problem-class"`; `line`: `16`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"ratelimit-upstash/invalid-policy"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#ratelimit-upstash-invalid-policy"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/ratelimit-upstash/src/libs/problems/RateLimitUpstashProblems.ts"`; `kind`: `"problem-class"`; `line`: `7`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"ratelimit-upstash/missing-config"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#ratelimit-upstash-missing-config"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/ratelimit-upstash/src/libs/problems/RateLimitUpstashProblems.ts"`; `kind`: `"problem-class"`; `line`: `21`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"ValidationError"`; `code`: `"ratelimit/prune-interval"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#ratelimit-prune-interval"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/ratelimit-core/src/libs/problems/RateLimitConfigProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `27`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"repository-core/batch-load-result-identity-mismatch"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#repository-core-batch-load-result-identity-mismatch"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/repository-core/src/libs/problems/BatchLoadProblems.ts"`; `kind`: `"problem-class"`; `line`: `77`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"repository-core/batch-load-result-key-duplicate"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#repository-core-batch-load-result-key-duplicate"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/repository-core/src/libs/problems/BatchLoadProblems.ts"`; `kind`: `"problem-class"`; `line`: `57`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"repository-core/batch-load-result-key-unexpected"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#repository-core-batch-load-result-key-unexpected"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/repository-core/src/libs/problems/BatchLoadProblems.ts"`; `kind`: `"problem-class"`; `line`: `67`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"repository-core/batch-load-result-unkeyed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#repository-core-batch-load-result-unkeyed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/repository-core/src/libs/problems/BatchLoadProblems.ts"`; `kind`: `"problem-class"`; `line`: `43`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"repository-core/batch-loader-factory-not-registered"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#repository-core-batch-loader-factory-not-registered"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/repository-core/src/libs/problems/BatchLoadProblems.ts"`; `kind`: `"problem-class"`; `line`: `4`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"repository-core/batch-loader-factory-resolution-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#repository-core-batch-loader-factory-resolution-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/repository-core/src/libs/problems/BatchLoadProblems.ts"`; `kind`: `"problem-class"`; `line`: `17`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"repository-core/batch-loader-scope-collision"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#repository-core-batch-loader-scope-collision"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/repository-core/src/libs/problems/BatchLoadProblems.ts"`; `kind`: `"problem-class"`; `line`: `29`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"RESEND_NOTIFICATION_FAILED"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#resend-notification-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/notifications-resend/src/libs/problems/ResendNotificationProblem.ts"`; `kind`: `"problem-constructor"`; `line`: `87`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"RETRY_ABORTED"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#retry-aborted"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/retry-core/src/libs/errors/RetryAbortedProblem.ts"`; `kind`: `"problem-class"`; `line`: `7`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"RETRY_CIRCUIT_BREAKER_INVALID_STATE"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#retry-circuit-breaker-invalid-state"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/retry-core/src/libs/errors/RetryInfrastructureProblem.ts"`; `kind`: `"problem-class"`; `line`: `13`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"RETRY_CIRCUIT_BREAKER_LOCK_FAILED"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#retry-circuit-breaker-lock-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/retry-core/src/libs/errors/RetryInfrastructureProblem.ts"`; `kind`: `"problem-class"`; `line`: `26`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"RETRY_EXHAUSTED"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#retry-exhausted"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/retry-core/src/libs/errors/RetryExhaustedProblem.ts"`; `kind`: `"problem-class"`; `line`: `7`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"ValidationError"`; `code`: `"retry-core/backoff-cancellation-unsupported"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#retry-core-backoff-cancellation-unsupported"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/retry-core/src/libs/errors/RetryCancellationUnsupportedProblem.ts"`; `kind`: `"problem-class"`; `line`: `7`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"retry-core/circuit-breaker-unexpected-state"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#retry-core-circuit-breaker-unexpected-state"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/retry-core/src/libs/problems/CircuitBreakerProblems.ts"`; `kind`: `"problem-class"`; `line`: `7`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"retry-core/success-hook-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#retry-core-success-hook-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The business callback completed successfully, but its onSuccess observation hook failed afterward."`; `operatorAction`: `"Inspect the original cause and repair the named onSuccess listener or telemetry path without replaying the completed callback."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Do not repeat the business operation from this failure; report the hook failure while preserving the successful callback outcome."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/retry-core/src/libs/errors/RetryInfrastructureProblem.ts"`; `kind`: `"problem-class"`; `line`: `75`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"Forbidden"`; `code`: `"ROLE_HIERARCHY_VIOLATION"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#role-hierarchy-violation"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The authenticated caller is not allowed to perform the requested action."`; `operatorAction`: `"Review policy, role, tenant, entitlement, and impersonation context."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Request the required permission or choose an allowed action."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/membership-core/src/libs/problems/MembershipProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `52`; \}\]; `status`: `403`; `title`: `"Forbidden"`; \}, \{ `category`: `"ValidationError"`; `code`: `"rpc-codegen/controller-typescript-diagnostics"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#rpc-codegen-controller-typescript-diagnostics"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/rpc-codegen/src/libs/loadRoutes.ts"`; `kind`: `"problem-constructor"`; `line`: `75`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"ValidationError"`; `code`: `"rpc-codegen/invalid-contract"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#rpc-codegen-invalid-contract"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/rpc-codegen/src/libs/generate.ts"`; `kind`: `"problem-constructor"`; `line`: `110`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"BadRequest"`; `code`: `"rpc-codegen/no-rest-controllers-found"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#rpc-codegen-no-rest-controllers-found"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/rpc-codegen/src/libs/loadRoutes.ts"`; `kind`: `"problem-constructor"`; `line`: `36`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"ValidationError"`; `code`: `"rpc-codegen/unsupported-form-schema"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#rpc-codegen-unsupported-form-schema"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/rpc-codegen/src/libs/generate.ts"`; `kind`: `"problem-constructor"`; `line`: `116`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"Forbidden"`; `code`: `"saas-demo/demo-endpoint-disabled"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#saas-demo-demo-endpoint-disabled"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The authenticated caller is not allowed to perform the requested action."`; `operatorAction`: `"Review policy, role, tenant, entitlement, and impersonation context."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Request the required permission or choose an allowed action."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/create-croco-app/templates/saas/apps/api-server/src/problems.ts"`; `kind`: `"problem-class"`; `line`: `4`; \}\]; `status`: `403`; `title`: `"Forbidden"`; \}, \{ `category`: `"ValidationError"`; `code`: `"saas-demo/invalid-jobs-query"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#saas-demo-invalid-jobs-query"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/create-croco-app/templates/saas/apps/api-server/src/problems.ts"`; `kind`: `"problem-class"`; `line`: `30`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"ValidationError"`; `code`: `"saas-demo/invalid-port"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#saas-demo-invalid-port"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/create-croco-app/templates/saas/apps/api-server/src/problems.ts"`; `kind`: `"problem-class"`; `line`: `17`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"NotFound"`; `code`: `"saas-demo/job-not-found"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#saas-demo-job-not-found"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The requested resource or route-visible record does not exist."`; `operatorAction`: `"Confirm tenant scoping, data retention, and backing-store lookup behavior."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Verify the identifier and refresh the resource list before retrying."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/create-croco-app/templates/saas/apps/api-server/src/problems.ts"`; `kind`: `"problem-class"`; `line`: `39`; \}\]; `status`: `404`; `title`: `"Not Found"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"saas-demo/smoke-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#saas-demo-smoke-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/create-croco-app/templates/saas/apps/api-server/src/problems.ts"`; `kind`: `"problem-class"`; `line`: `66`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"Conflict"`; `code`: `"saas-demo/tenant-already-exists"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#saas-demo-tenant-already-exists"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request conflicts with current state or an idempotency constraint."`; `operatorAction`: `"Inspect concurrent writes, idempotency keys, and uniqueness constraints."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Refresh state, resolve the conflict, and retry with the updated intent."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/create-croco-app/templates/saas/apps/api-server/src/problems.ts"`; `kind`: `"problem-class"`; `line`: `48`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"NotFound"`; `code`: `"saas-demo/tenant-not-found"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#saas-demo-tenant-not-found"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The requested resource or route-visible record does not exist."`; `operatorAction`: `"Confirm tenant scoping, data retention, and backing-store lookup behavior."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Verify the identifier and refresh the resource list before retrying."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/create-croco-app/templates/saas/apps/api-server/src/problems.ts"`; `kind`: `"problem-class"`; `line`: `57`; \}\]; `status`: `404`; `title`: `"Not Found"`; \}, \{ `category`: `"NotImplemented"`; `code`: `"SEARCH_CAPABILITY_UNAVAILABLE"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#search-capability-unavailable"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The requested capability is not supported by this runtime or adapter."`; `operatorAction`: `"Check runtime capability declarations and provider maturity documentation."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Use a supported capability or choose an adapter/runtime that provides it."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/search-core/src/libs/problems/SearchProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `65`; \}\]; `status`: `501`; `title`: `"Not Implemented"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"SEARCH_DRIZZLE_INVALID_ROW"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#search-drizzle-invalid-row"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/search-drizzle/src/libs/problems/InvalidSearchRowProblem.ts"`; `kind`: `"problem-class"`; `line`: `7`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"Conflict"`; `code`: `"search-core/sync-identity-conflict"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#search-core-sync-identity-conflict"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The event envelope tenant or document identity conflicts with context.tenantId, payload.id, or payload.tenantId."`; `operatorAction`: `"Use extensions.source to identify the conflicting field and verify envelope-authoritative tenant and document identity propagation."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Correct the conflicting event or execution context, then replay the event."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/search-core/src/libs/problems/SearchProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `23`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"NotFound"`; `code`: `"search-core/transform-not-found"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#search-core-transform-not-found"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The requested resource or route-visible record does not exist."`; `operatorAction`: `"Confirm tenant scoping, data retention, and backing-store lookup behavior."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Verify the identifier and refresh the resource list before retrying."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/search-core/src/libs/problems/SearchProblems.ts"`; `kind`: `"problem-class"`; `line`: `35`; \}\]; `status`: `404`; `title`: `"Not Found"`; \}, \{ `category`: `"NotFound"`; `code`: `"search-meilisearch/index-not-found"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#search-meilisearch-index-not-found"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The requested resource or route-visible record does not exist."`; `operatorAction`: `"Confirm tenant scoping, data retention, and backing-store lookup behavior."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Verify the identifier and refresh the resource list before retrying."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/search-meilisearch/src/libs/problems/MeilisearchProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `80`; \}\]; `status`: `404`; `title`: `"Not Found"`; \}, \{ `category`: `"ValidationError"`; `code`: `"search-meilisearch/invalid-request"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#search-meilisearch-invalid-request"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/search-meilisearch/src/libs/problems/MeilisearchProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `60`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"search-meilisearch/missing-config"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#search-meilisearch-missing-config"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/search-meilisearch/src/libs/problems/MeilisearchProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `39`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"search-meilisearch/retryable-upstream"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#search-meilisearch-retryable-upstream"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/search-meilisearch/src/libs/problems/MeilisearchProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `100`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"search-meilisearch/tenant-token-not-configured"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#search-meilisearch-tenant-token-not-configured"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/search-meilisearch/src/libs/problems/MeilisearchProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `140`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"search-meilisearch/terminal-upstream"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#search-meilisearch-terminal-upstream"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/search-meilisearch/src/libs/problems/MeilisearchProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `120`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"Forbidden"`; `code`: `"SEAT_LIMIT_EXCEEDED"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#seat-limit-exceeded"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The authenticated caller is not allowed to perform the requested action."`; `operatorAction`: `"Review policy, role, tenant, entitlement, and impersonation context."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Request the required permission or choose an allowed action."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/membership-core/src/libs/problems/MembershipProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `78`; \}\]; `status`: `403`; `title`: `"Forbidden"`; \}, \{ `category`: `"Forbidden"`; `code`: `"SELF_IMPERSONATION_NOT_ALLOWED"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#self-impersonation-not-allowed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The authenticated caller is not allowed to perform the requested action."`; `operatorAction`: `"Review policy, role, tenant, entitlement, and impersonation context."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Request the required permission or choose an allowed action."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/impersonation-core/src/libs/problems/ImpersonationProblems.ts"`; `kind`: `"problem-class"`; `line`: `4`; \}\]; `status`: `403`; `title`: `"Forbidden"`; \}, \{ `category`: `"ValidationError"`; `code`: `"starter/invalid-environment"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#starter-invalid-environment"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/create-croco-app/templates/spa-be-split/apps/api-server/src/problems.ts"`; `kind`: `"problem-class"`; `line`: `4`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"starter/unhandled-api-request"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#starter-unhandled-api-request"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/create-croco-app/templates/spa-be-split/apps/console-web/src/test/browser.ts"`; `kind`: `"problem-class"`; `line`: `8`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"NotFound"`; `code`: `"starter/user-not-found"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#starter-user-not-found"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The requested resource or route-visible record does not exist."`; `operatorAction`: `"Confirm tenant scoping, data retention, and backing-store lookup behavior."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Verify the identifier and refresh the resource list before retrying."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/create-croco-app/templates/spa-be-split/apps/api-server/src/problems.ts"`; `kind`: `"problem-class"`; `line`: `13`; \}\]; `status`: `404`; `title`: `"Not Found"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"STORAGE_DELETE_FAILED"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#storage-delete-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/storage-core/src/libs/problems/DeleteFailedProblem.ts"`; `kind`: `"problem-constructor"`; `line`: `8`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"NotFound"`; `code`: `"STORAGE_FILE_NOT_FOUND"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#storage-file-not-found"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The requested resource or route-visible record does not exist."`; `operatorAction`: `"Confirm tenant scoping, data retention, and backing-store lookup behavior."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Verify the identifier and refresh the resource list before retrying."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/storage-core/src/libs/problems/FileNotFoundProblem.ts"`; `kind`: `"problem-constructor"`; `line`: `11`; \}\]; `status`: `404`; `title`: `"Not Found"`; \}, \{ `category`: `"BadRequest"`; `code`: `"STORAGE_INVALID_KEY"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#storage-invalid-key"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/storage-core/src/libs/problems/InvalidKeyProblem.ts"`; `kind`: `"problem-class"`; `line`: `5`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"BadRequest"`; `code`: `"STORAGE_INVALID_SIGNED_URL_EXPIRY"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#storage-invalid-signed-url-expiry"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/storage-core/src/libs/problems/InvalidSignedUrlExpiryProblem.ts"`; `kind`: `"problem-class"`; `line`: `9`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"STORAGE_R2_EMPTY_BODY"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#storage-r2-empty-body"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/storage-r2/src/libs/problems/EmptyR2BodyProblem.ts"`; `kind`: `"problem-constructor"`; `line`: `9`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"STORAGE_R2_MISSING_CONFIG"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#storage-r2-missing-config"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/storage-r2/src/libs/problems/MissingR2ConfigProblem.ts"`; `kind`: `"problem-class"`; `line`: `8`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"STORAGE_R2_OBJECT_TOO_LARGE"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#storage-r2-object-too-large"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/storage-r2/src/libs/problems/R2ObjectTooLargeProblem.ts"`; `kind`: `"problem-class"`; `line`: `8`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"STORAGE_R2_READINESS_FAILED"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#storage-r2-readiness-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/storage-r2/src/libs/problems/R2ReadinessProblem.ts"`; `kind`: `"problem-class"`; `line`: `14`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"STORAGE_UPLOAD_FAILED"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#storage-upload-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/storage-core/src/libs/problems/UploadFailedProblem.ts"`; `kind`: `"problem-constructor"`; `line`: `11`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"storage-cloudflare/missing-config"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#storage-cloudflare-missing-config"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/storage-cloudflare/src/libs/CloudflareImagesDiagnosticsProvider.ts"`; `kind`: `"problem-constructor"`; `line`: `37`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"storage-cloudflare/retryable-upstream"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#storage-cloudflare-retryable-upstream"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/storage-cloudflare/src/libs/CloudflareImagesDiagnosticsProvider.ts"`; `kind`: `"problem-constructor"`; `line`: `70`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"storage-cloudflare/terminal-upstream"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#storage-cloudflare-terminal-upstream"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/storage-cloudflare/src/libs/CloudflareImagesDiagnosticsProvider.ts"`; `kind`: `"problem-constructor"`; `line`: `86`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"ValidationError"`; `code`: `"storage-cloudflare/validation-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#storage-cloudflare-validation-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/storage-cloudflare/src/libs/CloudflareImagesDiagnosticsProvider.ts"`; `kind`: `"problem-constructor"`; `line`: `57`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"BadRequest"`; `code`: `"storage-cloudinary/invalid-upload-intent-ttl"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#storage-cloudinary-invalid-upload-intent-ttl"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `13`; `file`: `"packages/storage-cloudinary/src/libs/CloudinaryProvider.ts"`; `kind`: `"problem-factory"`; `line`: `332`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"storage-cloudinary/missing-config"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#storage-cloudinary-missing-config"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/storage-cloudinary/src/libs/CloudinaryDiagnosticsProvider.ts"`; `kind`: `"problem-constructor"`; `line`: `51`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"storage-cloudinary/retryable-upstream"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#storage-cloudinary-retryable-upstream"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/storage-cloudinary/src/libs/CloudinaryDiagnosticsProvider.ts"`; `kind`: `"problem-constructor"`; `line`: `84`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"storage-cloudinary/terminal-upstream"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#storage-cloudinary-terminal-upstream"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/storage-cloudinary/src/libs/CloudinaryDiagnosticsProvider.ts"`; `kind`: `"problem-constructor"`; `line`: `100`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"ValidationError"`; `code`: `"storage-cloudinary/validation-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#storage-cloudinary-validation-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/storage-cloudinary/src/libs/CloudinaryDiagnosticsProvider.ts"`; `kind`: `"problem-constructor"`; `line`: `71`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"BadRequest"`; `code`: `"storage/invalid-upload-intent-ttl"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#storage-invalid-upload-intent-ttl"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `13`; `file`: `"packages/storage-cloudflare/src/libs/CloudflareImagesProvider.ts"`; `kind`: `"problem-factory"`; `line`: `306`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"STRATEGY_UNAVAILABLE"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#strategy-unavailable"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/search-core/src/libs/problems/SearchProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `44`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"STRUCTURED_OUTPUT_ERROR"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#structured-output-error"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/llm-core/src/libs/problems/LlmServiceProblem.ts"`; `kind`: `"problem-constructor"`; `line`: `52`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"tasks-core/duplicate-task-registration"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#tasks-core-duplicate-task-registration"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/tasks-core/src/libs/problems/TasksProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `13`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"tasks-core/execution-timeout"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#tasks-core-execution-timeout"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/tasks-core/src/libs/problems/TasksProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `46`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"NotFound"`; `code`: `"tasks-core/task-not-found"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#tasks-core-task-not-found"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The requested resource or route-visible record does not exist."`; `operatorAction`: `"Confirm tenant scoping, data retention, and backing-store lookup behavior."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Verify the identifier and refresh the resource list before retrying."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/tasks-core/src/libs/problems/TasksProblems.ts"`; `kind`: `"problem-class"`; `line`: `4`; \}\]; `status`: `404`; `title`: `"Not Found"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"tasks-core/task-runner-di-failure"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#tasks-core-task-runner-di-failure"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/tasks-core/src/libs/problems/TasksProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `29`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"BadRequest"`; `code`: `"tasks-qstash/invalid-publish-request"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#tasks-qstash-invalid-publish-request"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/tasks-qstash/src/libs/problems/QStashTaskProblems.ts"`; `kind`: `"problem-class"`; `line`: `18`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"tasks-qstash/missing-config"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#tasks-qstash-missing-config"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/tasks-qstash/src/libs/problems/QStashTaskProblems.ts"`; `kind`: `"problem-class"`; `line`: `4`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"ValidationError"`; `code`: `"TELEMETRY_AUTO_INSTRUMENTATION_INVALID_CONFIG"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#telemetry-auto-instrumentation-invalid-config"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/telemetry-sdk-node/src/libs/problems/TelemetryAutoInstrumentationProblem.ts"`; `kind`: `"problem-class"`; `line`: `7`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"NotImplemented"`; `code`: `"TELEMETRY_FORCE_FLUSH_UNSUPPORTED"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#telemetry-force-flush-unsupported"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The requested capability is not supported by this runtime or adapter."`; `operatorAction`: `"Check runtime capability declarations and provider maturity documentation."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Use a supported capability or choose an adapter/runtime that provides it."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/telemetry-sdk-node/src/libs/problems/TelemetryProblems.ts"`; `kind`: `"problem-class"`; `line`: `56`; \}\]; `status`: `501`; `title`: `"Not Implemented"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"TELEMETRY_RUNTIME_ERROR"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#telemetry-runtime-error"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/telemetry-sdk-node/src/libs/problems/TelemetryProblems.ts"`; `kind`: `"problem-class"`; `line`: `69`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"BadRequest"`; `code`: `"TELEMETRY_SAMPLER_INVALID_CONFIG"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#telemetry-sampler-invalid-config"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/telemetry-sdk-node/src/libs/problems/TelemetryProblems.ts"`; `kind`: `"problem-class"`; `line`: `7`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"BadRequest"`; `code`: `"TELEMETRY_SIGNAL_UNSUPPORTED"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#telemetry-signal-unsupported"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/telemetry-sdk-node/src/libs/problems/TelemetryProblems.ts"`; `kind`: `"problem-class"`; `line`: `38`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"Forbidden"`; `code`: `"tenant-core/admin-bypass-reason-required"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#tenant-core-admin-bypass-reason-required"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The authenticated caller is not allowed to perform the requested action."`; `operatorAction`: `"Review policy, role, tenant, entitlement, and impersonation context."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Request the required permission or choose an allowed action."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/tenant-core/src/libs/problems/TenantIsolationProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `60`; \}\]; `status`: `403`; `title`: `"Forbidden"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"tenant-core/cross-tenant-leak"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#tenant-core-cross-tenant-leak"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/tenant-core/src/libs/problems/TenantIsolationProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `79`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"BadRequest"`; `code`: `"tenant-core/default-tenant-fallback"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#tenant-core-default-tenant-fallback"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/tenant-core/src/libs/problems/TenantIsolationProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `48`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"tenant-core/duplicate-tenant-manager-registration"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#tenant-core-duplicate-tenant-manager-registration"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/tenant-core/src/libs/problems/DuplicateTenantManagerRegistrationProblem.ts"`; `kind`: `"problem-class"`; `line`: `4`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"Unauthorized"`; `code`: `"tenant-core/isolation-context-missing"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#tenant-core-isolation-context-missing"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request did not include valid authentication credentials."`; `operatorAction`: `"Check authentication configuration, token issuer, and clock skew."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Sign in again or provide a valid credential."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/tenant-core/src/libs/problems/TenantIsolationProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `39`; \}\]; `status`: `401`; `title`: `"Unauthorized"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"tenant-core/tenant-manager-not-registered"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#tenant-core-tenant-manager-not-registered"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/tenant-core/src/libs/problems/TenantManagerNotRegisteredProblem.ts"`; `kind`: `"problem-class"`; `line`: `4`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"Forbidden"`; `code`: `"tenant-core/unsafe-query"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#tenant-core-unsafe-query"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The authenticated caller is not allowed to perform the requested action."`; `operatorAction`: `"Review policy, role, tenant, entitlement, and impersonation context."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Request the required permission or choose an allowed action."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/tenant-core/src/libs/problems/TenantIsolationProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `69`; \}\]; `status`: `403`; `title`: `"Forbidden"`; \}, \{ `category`: `"NotFound"`; `code`: `"tenant/not-found"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#tenant-not-found"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The requested resource or route-visible record does not exist."`; `operatorAction`: `"Confirm tenant scoping, data retention, and backing-store lookup behavior."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Verify the identifier and refresh the resource list before retrying."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/tenant-core/src/libs/problems/TenantNotFoundProblem.ts"`; `kind`: `"problem-class"`; `line`: `7`; \}\]; `status`: `404`; `title`: `"Not Found"`; \}, \{ `category`: `"Unauthorized"`; `code`: `"tenant/required"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#tenant-required"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request did not include valid authentication credentials."`; `operatorAction`: `"Check authentication configuration, token issuer, and clock skew."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Sign in again or provide a valid credential."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/tenant-core/src/libs/problems/TenantRequiredProblem.ts"`; `kind`: `"problem-class"`; `line`: `7`; \}\]; `status`: `401`; `title`: `"Unauthorized"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"testing-resources/cleanup-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#testing-resources-cleanup-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `12`; `file`: `"packages/testing-resources/src/libs/problems.ts"`; `kind`: `"problem-metadata"`; `line`: `17`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"testing-resources/health-check-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#testing-resources-health-check-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `19`; `file`: `"packages/testing-resources/src/libs/problems.ts"`; `kind`: `"problem-metadata"`; `line`: `13`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"testing-resources/invalid-configuration"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#testing-resources-invalid-configuration"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/testing-resources/src/libs/problems.ts"`; `kind`: `"problem-constructor"`; `line`: `25`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"testing-resources/migration-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#testing-resources-migration-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `14`; `file`: `"packages/testing-resources/src/libs/problems.ts"`; `kind`: `"problem-metadata"`; `line`: `9`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"testing-resources/startup-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#testing-resources-startup-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `12`; `file`: `"packages/testing-resources/src/libs/problems.ts"`; `kind`: `"problem-metadata"`; `line`: `5`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"testing/after-commit-hooks-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#testing-after-commit-hooks-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/testing/src/libs/testing.ts"`; `kind`: `"problem-constructor"`; `line`: `184`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"testing/telemetry-provider-already-installed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#testing-telemetry-provider-already-installed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/testing/src/libs/telemetry-testing.ts"`; `kind`: `"problem-constructor"`; `line`: `54`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"testing/test-kernel-disposal-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#testing-test-kernel-disposal-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/testing/src/libs/TestKernel.ts"`; `kind`: `"problem-constructor"`; `line`: `189`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"testing/test-kernel-disposed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#testing-test-kernel-disposed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/testing/src/libs/TestKernel.ts"`; `kind`: `"problem-constructor"`; `line`: `217`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"testing/test-kernel-leak"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#testing-test-kernel-leak"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/testing/src/libs/TestKernel.ts"`; `kind`: `"problem-constructor"`; `line`: `227`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"testing/test-kernel-outbound-call"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#testing-test-kernel-outbound-call"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/testing/src/libs/TestRuntime.ts"`; `kind`: `"problem-constructor"`; `line`: `49`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"testing/test-kernel-resource-fidelity"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#testing-test-kernel-resource-fidelity"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/testing/src/libs/TestKernel.ts"`; `kind`: `"problem-constructor"`; `line`: `238`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"testing/test-kernel-resource-not-found"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#testing-test-kernel-resource-not-found"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/testing/src/libs/TestKernel.ts"`; `kind`: `"problem-constructor"`; `line`: `254`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"testing/test-kernel-resource-registration"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#testing-test-kernel-resource-registration"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/testing/src/libs/TestKernel.ts"`; `kind`: `"problem-constructor"`; `line`: `267`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"testing/test-kernel-validation-policy"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#testing-test-kernel-validation-policy"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/testing/src/libs/TestKernel.ts"`; `kind`: `"problem-constructor"`; `line`: `176`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"ValidationError"`; `code`: `"testing/test-runtime-configuration"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#testing-test-runtime-configuration"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/testing/src/libs/TestRuntime.ts"`; `kind`: `"problem-constructor"`; `line`: `65`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"testing/test-runtime-drain-limit"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#testing-test-runtime-drain-limit"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/testing/src/libs/TestRuntime.ts"`; `kind`: `"problem-constructor"`; `line`: `76`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"testing/transaction-context-not-active"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#testing-transaction-context-not-active"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/testing/src/libs/testing.ts"`; `kind`: `"problem-constructor"`; `line`: `171`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"BadRequest"`; `code`: `"TOKEN_LIMIT_EXCEEDED"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#token-limit-exceeded"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/llm-core/src/libs/problems/LlmProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `38`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"TOOL_EXECUTION_ERROR"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#tool-execution-error"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/llm-core/src/libs/problems/LlmServiceProblem.ts"`; `kind`: `"problem-constructor"`; `line`: `61`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"BadRequest"`; `code`: `"transports-graphql/request-body-aborted"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#transports-graphql-request-body-aborted"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/transports-graphql/src/libs/problems/GraphQLTransportProblems.ts"`; `kind`: `"problem-class"`; `line`: `47`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"PayloadTooLarge"`; `code`: `"transports-graphql/request-body-too-large"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#transports-graphql-request-body-too-large"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request body exceeded the configured byte limit."`; `operatorAction`: `"Confirm route body limits and upstream proxy limits match the intended upload policy."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Reduce the request body and retry."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/transports-graphql/src/libs/problems/GraphQLTransportProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `33`; \}\]; `status`: `413`; `title`: `"Payload Too Large"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"transports-graphql/resolvers-not-configured"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#transports-graphql-resolvers-not-configured"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/transports-graphql/src/libs/problems/GraphQLTransportProblems.ts"`; `kind`: `"problem-class"`; `line`: `4`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"transports-graphql/schema-not-configured"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#transports-graphql-schema-not-configured"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/transports-graphql/src/libs/problems/GraphQLTransportProblems.ts"`; `kind`: `"problem-class"`; `line`: `16`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"transports-graphql/server-not-initialized"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#transports-graphql-server-not-initialized"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/transports-graphql/src/libs/problems/GraphQLTransportProblems.ts"`; `kind`: `"problem-class"`; `line`: `24`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"transports-http/body-limit-invalid-configuration"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#transports-http-body-limit-invalid-configuration"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The HTTP body-limit middleware was configured with an invalid byte boundary."`; `operatorAction`: `"Set the body-limit value to a finite, nonnegative safe integer and restart the service."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Ask the operator to correct the service configuration before retrying."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/transports-http/src/libs/problems/HttpRequestBodyProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `15`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"transports-http/di-bootstrap-validation"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#transports-http-di-bootstrap-validation"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `11`; `file`: `"packages/transports-http/src/libs/CrocoApp.ts"`; `kind`: `"problem-factory"`; `line`: `315`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"transports-http/duplicate-health-check"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#transports-http-duplicate-health-check"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `10`; `file`: `"packages/transports-http/src/libs/HealthCheckRegistry.ts"`; `kind`: `"problem-factory"`; `line`: `71`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"transports-http/duplicate-route-definition"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#transports-http-duplicate-route-definition"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Two REST controller methods compile to the same HTTP method and runtime path."`; `operatorAction`: `"Inspect the duplicate-route diagnostic for the existing and conflicting controller methods and their route decorator source locations, then rename one route path or change one HTTP method."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Use an application build where every route decorator has a unique HTTP method and path combination."`; \}; `sources`: readonly \[\{ `column`: `15`; `file`: `"packages/transports-http/src/libs/RouteCompiler.ts"`; `kind`: `"problem-factory"`; `line`: `118`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"transports-http/graceful-shutdown-configuration"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#transports-http-graceful-shutdown-configuration"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Graceful shutdown was configured with a non-finite total or event-bus drain timeout."`; `operatorAction`: `"Set timeoutMs and eventBusDrainTimeoutMs to finite numbers, then reconstruct the middleware or controller before retrying shutdown."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Ask the operator to correct the graceful shutdown timeout configuration before reconstructing the HTTP application."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/transports-http/src/libs/problems/GracefulShutdownProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `20`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"transports-http/graceful-shutdown-timeout"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#transports-http-graceful-shutdown-timeout"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Graceful shutdown did not finish a phase before that phase's configured deadline elapsed."`; `operatorAction`: `"Inspect the reported phase, timeoutMs, and elapsedMs extensions, then investigate slow request handlers, event-bus draining, or shutdown hooks."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Wait for the stalled shutdown phase to be investigated before retrying; active requests or cleanup work may still be settling."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/transports-http/src/libs/problems/GracefulShutdownProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `47`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"transports-http/middleware-next-called-multiple-times"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#transports-http-middleware-next-called-multiple-times"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Compatibility metadata for the previous HTTP middleware multiple-next code. New runtime failures use CROCO_HTTP_MIDDLEWARE_002 and preserve this value as extensions.legacyCode."`; `operatorAction`: `"Update dashboards, alerts, and runbooks from transports-http/middleware-next-called-multiple-times to CROCO_HTTP_MIDDLEWARE_002 before removing legacy-code matching."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Migrate Problem.code matchers to CROCO_HTTP_MIDDLEWARE_002; use extensions.legacyCode only while rolling out compatibility changes."`; \}; `sources`: readonly \[\{ `column`: `49`; `file`: `"packages/transports-http/src/libs/CrocoRouteRegistrar.ts"`; `kind`: `"problem-metadata"`; `line`: `39`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"transports-http/pipe-resolution-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#transports-http-pipe-resolution-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `13`; `file`: `"packages/transports-http/src/libs/ParamResolver.ts"`; `kind`: `"problem-factory"`; `line`: `184`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"transports-http/provider-resolution-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#transports-http-provider-resolution-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `11`; `file`: `"packages/transports-http/src/libs/RouteCompiler.ts"`; `kind`: `"problem-factory"`; `line`: `70`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"BadRequest"`; `code`: `"transports-http/request-body-read-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#transports-http-request-body-read-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/transports-http/src/libs/problems/HttpRequestBodyProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `67`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"PayloadTooLarge"`; `code`: `"transports-http/request-body-too-large"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#transports-http-request-body-too-large"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request body exceeded the configured byte limit."`; `operatorAction`: `"Confirm route body limits and upstream proxy limits match the intended upload policy."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Reduce the request body and retry."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/transports-http/src/libs/problems/HttpRequestBodyProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `31`; \}\]; `status`: `413`; `statusPolicy`: \{ `configuration`: `"bodyLimitMiddleware.statusCode"`; `defaultStatus`: `413`; `kind`: `"runtime-configurable"`; \}; `title`: `"Payload Too Large"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"transports-http/request-body-unavailable"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#transports-http-request-body-unavailable"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/transports-http/src/libs/problems/HttpRequestBodyProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `52`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"transports-http/route-method-not-function"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#transports-http-route-method-not-function"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `17`; `file`: `"packages/transports-http/src/libs/RouteCompiler.ts"`; `kind`: `"problem-factory"`; `line`: `193`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"Conflict"`; `code`: `"transports-http/runtime-capability-invalid"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#transports-http-runtime-capability-invalid"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request conflicts with current state or an idempotency constraint."`; `operatorAction`: `"Inspect concurrent writes, idempotency keys, and uniqueness constraints."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Refresh state, resolve the conflict, and retry with the updated intent."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/transports-http/src/libs/runtimeContext.ts"`; `kind`: `"problem-class"`; `line`: `101`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"transports-http/security-middleware-validation"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#transports-http-security-middleware-validation"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Compatibility metadata for the previous HTTP security middleware validation code. New runtime failures use CROCO_HTTP_SECURITY_001 and preserve this value as extensions.legacyCode."`; `operatorAction`: `"Update dashboards, alerts, and runbooks from transports-http/security-middleware-validation to CROCO_HTTP_SECURITY_001 before removing legacy-code matching."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Migrate Problem.code matchers to CROCO_HTTP_SECURITY_001; use extensions.legacyCode only while rolling out compatibility changes."`; \}; `sources`: readonly \[\{ `column`: `55`; `file`: `"packages/transports-http/src/libs/CrocoApp.ts"`; `kind`: `"problem-metadata"`; `line`: `88`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"transports-http/unsupported-route-method"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#transports-http-unsupported-route-method"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `15`; `file`: `"packages/transports-http/src/libs/CrocoRouteRegistrar.ts"`; `kind`: `"problem-factory"`; `line`: `245`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"triggers-core/duplicate-trigger-metadata"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#triggers-core-duplicate-trigger-metadata"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `17`; `file`: `"packages/triggers-core/src/libs/TriggerRegistry.ts"`; `kind`: `"problem-factory"`; `line`: `69`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"triggers-core/duplicate-trigger-metadata-entry"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#triggers-core-duplicate-trigger-metadata-entry"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `17`; `file`: `"packages/triggers-core/src/libs/TriggerRegistry.ts"`; `kind`: `"problem-factory"`; `line`: `121`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"triggers-qstash/duplicate-schedule-id"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#triggers-qstash-duplicate-schedule-id"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `15`; `file`: `"packages/triggers-qstash/src/libs/QStashScheduler.ts"`; `kind`: `"problem-factory"`; `line`: `253`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"triggers-qstash/execution-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#triggers-qstash-execution-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `13`; `file`: `"packages/triggers-qstash/src/libs/QStashTriggerHandler.ts"`; `kind`: `"problem-metadata"`; `line`: `264`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"triggers-qstash/service-resolution-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#triggers-qstash-service-resolution-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `15`; `file`: `"packages/triggers-qstash/src/libs/QStashTriggerHandler.ts"`; `kind`: `"problem-metadata"`; `line`: `254`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"Forbidden"`; `code`: `"TRPC_ACCESS_DENIED"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#trpc-access-denied"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The authenticated caller is not allowed to perform the requested action."`; `operatorAction`: `"Review policy, role, tenant, entitlement, and impersonation context."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Request the required permission or choose an allowed action."`; \}; `sources`: readonly \[\{ `column`: `15`; `file`: `"packages/protocols-trpc/src/libs/TrpcExecutionPipeline.ts"`; `kind`: `"problem-factory"`; `line`: `40`; \}\]; `status`: `403`; `title`: `"Forbidden"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"tx-core/after-commit-hooks-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#tx-core-after-commit-hooks-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/tx-core/src/libs/problems/TransactionProblems.ts"`; `kind`: `"problem-class"`; `line`: `103`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"tx-core/after-commit-outcome-required"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#tx-core-after-commit-outcome-required"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/tx-core/src/libs/problems/TransactionProblems.ts"`; `kind`: `"problem-class"`; `line`: `35`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"tx-core/after-commit-registration-closed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#tx-core-after-commit-registration-closed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/tx-core/src/libs/problems/TransactionProblems.ts"`; `kind`: `"problem-class"`; `line`: `50`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"tx-core/decorator-misuse"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#tx-core-decorator-misuse"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/tx-core/src/libs/problems/TransactionProblems.ts"`; `kind`: `"problem-class"`; `line`: `13`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"tx-core/detached-transaction-operation"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#tx-core-detached-transaction-operation"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/tx-core/src/libs/problems/TransactionProblems.ts"`; `kind`: `"problem-class"`; `line`: `61`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"tx-core/duplicate-tx-manager-registration"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#tx-core-duplicate-tx-manager-registration"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/tx-core/src/libs/errors.ts"`; `kind`: `"problem-class"`; `line`: `7`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"ValidationError"`; `code`: `"tx-core/invalid-transaction-timeout"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#tx-core-invalid-transaction-timeout"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/tx-core/src/libs/problems/TransactionProblems.ts"`; `kind`: `"problem-class"`; `line`: `87`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"tx-core/manager-not-registered"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#tx-core-manager-not-registered"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/tx-core/src/libs/errors.ts"`; `kind`: `"problem-class"`; `line`: `23`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"tx-core/missing-transaction-context"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#tx-core-missing-transaction-context"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/tx-core/src/libs/problems/TransactionProblems.ts"`; `kind`: `"problem-class"`; `line`: `24`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"tx-core/outcome-requires-root"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#tx-core-outcome-requires-root"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/tx-core/src/libs/problems/TransactionProblems.ts"`; `kind`: `"problem-class"`; `line`: `76`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"BusinessRuleViolation"`; `code`: `"tx-core/propagation-error"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#tx-core-propagation-error"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request is syntactically valid but violates a domain rule."`; `operatorAction`: `"Review domain policy, entitlement, quota, and lifecycle rule evidence."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Change the workflow state or request values so the business rule is satisfied."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/tx-core/src/libs/errors.ts"`; `kind`: `"problem-class"`; `line`: `34`; \}\]; `status`: `422`; `title`: `"Business Rule Violation"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"tx-core/transaction-outcome-unknown"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#tx-core-transaction-outcome-unknown"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/tx-core/src/libs/problems/TransactionProblems.ts"`; `kind`: `"problem-class"`; `line`: `165`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"tx-core/transaction-rollback-confirmed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#tx-core-transaction-rollback-confirmed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/tx-core/src/libs/problems/TransactionProblems.ts"`; `kind`: `"problem-class"`; `line`: `147`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"tx-core/transaction-timeout"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#tx-core-transaction-timeout"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/tx-core/src/libs/problems/TransactionProblems.ts"`; `kind`: `"problem-class"`; `line`: `130`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"tx-drizzle/rls-configuration-invalid"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#tx-drizzle-rls-configuration-invalid"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"A PostgreSQL RLS helper received malformed static identifier or setting-key configuration."`; `operatorAction`: `"Use the reported field name and the @croco/tx-drizzle RLS contract to correct the configuration, then restart the service."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Ask the operator to correct the RLS configuration before retrying."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/tx-drizzle/src/libs/problems/TxDrizzleProblems.ts"`; `kind`: `"problem-class"`; `line`: `7`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"tx-drizzle/rls-debug-logging-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#tx-drizzle-rls-debug-logging-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Requested RLS debug logging could not initialize or write its diagnostic event."`; `operatorAction`: `"Provide an RlsLogger or register the framework Logger, then verify its info() output path before retrying the transaction."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Ask the operator to restore the configured logger before retrying."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/tx-drizzle/src/libs/problems/TxDrizzleProblems.ts"`; `kind`: `"problem-class"`; `line`: `57`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"tx-drizzle/rls-execute-unsupported"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#tx-drizzle-rls-execute-unsupported"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/tx-drizzle/src/libs/problems/TxDrizzleProblems.ts"`; `kind`: `"problem-class"`; `line`: `29`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"tx-drizzle/savepoint-unsupported"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#tx-drizzle-savepoint-unsupported"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/tx-drizzle/src/libs/problems/TxDrizzleProblems.ts"`; `kind`: `"problem-class"`; `line`: `76`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"tx-drizzle/tenant-context-required"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#tx-drizzle-tenant-context-required"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/tx-drizzle/src/libs/problems/TxDrizzleProblems.ts"`; `kind`: `"problem-class"`; `line`: `21`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"Unauthorized"`; `code`: `"UNAUTHORIZED"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#unauthorized"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request did not include valid authentication credentials."`; `operatorAction`: `"Check authentication configuration, token issuer, and clock skew."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Sign in again or provide a valid credential."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/auth-core/src/libs/problems/AuthProblems.ts"`; `kind`: `"problem-class"`; `line`: `5`; \}\]; `status`: `401`; `title`: `"Unauthorized"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"WEBHOOK_PROCESSING_FAILED"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#webhook-processing-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/billing-polar/src/libs/problems/WebhookProcessingProblem.ts"`; `kind`: `"problem-class"`; `line`: `4`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"BadRequest"`; `code`: `"WEBHOOK_VALIDATION_FAILED"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#webhook-validation-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/billing-polar/src/libs/problems/WebhookValidationProblem.ts"`; `kind`: `"problem-class"`; `line`: `4`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"webhooks-core/configuration"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#webhooks-core-configuration"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `11`; `file`: `"packages/webhooks-core/src/libs/problems/WebhookProblems.ts"`; `kind`: `"problem-metadata"`; `line`: `38`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"webhooks-core/dispatch-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#webhooks-core-dispatch-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `11`; `file`: `"packages/webhooks-core/src/libs/problems/WebhookProblems.ts"`; `kind`: `"problem-metadata"`; `line`: `117`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"Conflict"`; `code`: `"webhooks-core/duplicate-event"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#webhooks-core-duplicate-event"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request conflicts with current state or an idempotency constraint."`; `operatorAction`: `"Inspect concurrent writes, idempotency keys, and uniqueness constraints."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Refresh state, resolve the conflict, and retry with the updated intent."`; \}; `sources`: readonly \[\{ `column`: `11`; `file`: `"packages/webhooks-core/src/libs/problems/WebhookProblems.ts"`; `kind`: `"problem-metadata"`; `line`: `139`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"BadRequest"`; `code`: `"webhooks-core/invalid-envelope"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#webhooks-core-invalid-envelope"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `11`; `file`: `"packages/webhooks-core/src/libs/problems/WebhookProblems.ts"`; `kind`: `"problem-metadata"`; `line`: `74`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"BadRequest"`; `code`: `"webhooks-core/invalid-fixture"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#webhooks-core-invalid-fixture"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `11`; `file`: `"packages/webhooks-core/src/libs/problems/WebhookProblems.ts"`; `kind`: `"problem-metadata"`; `line`: `178`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"BadRequest"`; `code`: `"webhooks-core/invalid-signature"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#webhooks-core-invalid-signature"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `11`; `file`: `"packages/webhooks-core/src/libs/problems/WebhookProblems.ts"`; `kind`: `"problem-metadata"`; `line`: `54`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"Conflict"`; `code`: `"webhooks-core/outbound-acceptance-unknown"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#webhooks-core-outbound-acceptance-unknown"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request conflicts with current state or an idempotency constraint."`; `operatorAction`: `"Inspect concurrent writes, idempotency keys, and uniqueness constraints."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Refresh state, resolve the conflict, and retry with the updated intent."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/webhooks-core/src/libs/outbound/OutboundWebhookProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `97`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"webhooks-core/outbound-configuration"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#webhooks-core-outbound-configuration"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/webhooks-core/src/libs/outbound/OutboundWebhookProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `119`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"NotFound"`; `code`: `"webhooks-core/outbound-endpoint-not-found"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#webhooks-core-outbound-endpoint-not-found"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The requested resource or route-visible record does not exist."`; `operatorAction`: `"Confirm tenant scoping, data retention, and backing-store lookup behavior."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Verify the identifier and refresh the resource list before retrying."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/webhooks-core/src/libs/outbound/OutboundWebhookProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `53`; \}\]; `status`: `404`; `title`: `"Not Found"`; \}, \{ `category`: `"ValidationError"`; `code`: `"webhooks-core/outbound-invalid-event"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#webhooks-core-outbound-invalid-event"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/webhooks-core/src/libs/outbound/OutboundWebhookProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `31`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"ValidationError"`; `code`: `"webhooks-core/outbound-invalid-secret-version"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#webhooks-core-outbound-invalid-secret-version"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/webhooks-core/src/libs/outbound/OutboundWebhookProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `64`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"ValidationError"`; `code`: `"webhooks-core/outbound-invalid-url"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#webhooks-core-outbound-invalid-url"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request or generated contract failed schema or semantic validation."`; `operatorAction`: `"Inspect schema diagnostics, generated contracts, and validation metadata."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Fix the invalid fields and retry with schema-conformant input."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/webhooks-core/src/libs/outbound/OutboundWebhookProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `42`; \}\]; `status`: `422`; `title`: `"Validation Error"`; \}, \{ `category`: `"BusinessRuleViolation"`; `code`: `"webhooks-core/outbound-permanent-failure"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#webhooks-core-outbound-permanent-failure"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request is syntactically valid but violates a domain rule."`; `operatorAction`: `"Review domain policy, entitlement, quota, and lifecycle rule evidence."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Change the workflow state or request values so the business rule is satisfied."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/webhooks-core/src/libs/outbound/OutboundWebhookProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `86`; \}\]; `status`: `422`; `title`: `"Business Rule Violation"`; \}, \{ `category`: `"Conflict"`; `code`: `"webhooks-core/outbound-replay-not-allowed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#webhooks-core-outbound-replay-not-allowed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request conflicts with current state or an idempotency constraint."`; `operatorAction`: `"Inspect concurrent writes, idempotency keys, and uniqueness constraints."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Refresh state, resolve the conflict, and retry with the updated intent."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/webhooks-core/src/libs/outbound/OutboundWebhookProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `108`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"webhooks-core/outbound-retryable-failure"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#webhooks-core-outbound-retryable-failure"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/webhooks-core/src/libs/outbound/OutboundWebhookProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `75`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"webhooks-core/reporter-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#webhooks-core-reporter-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `11`; `file`: `"packages/webhooks-core/src/libs/problems/WebhookProblems.ts"`; `kind`: `"problem-metadata"`; `line`: `162`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"BadRequest"`; `code`: `"webhooks-core/unknown-event"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#webhooks-core-unknown-event"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The caller sent malformed input or unsupported request options."`; `operatorAction`: `"Inspect validation details and request logs; do not retry unchanged input."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Correct the request input and retry after validation passes."`; \}; `sources`: readonly \[\{ `column`: `11`; `file`: `"packages/webhooks-core/src/libs/problems/WebhookProblems.ts"`; `kind`: `"problem-metadata"`; `line`: `94`; \}\]; `status`: `400`; `title`: `"Bad Request"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"workflow-core/duplicate-workflow-registration"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#workflow-core-duplicate-workflow-registration"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/workflow-core/src/libs/problems/WorkflowProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `15`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"workflow-core/replay-unsupported"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#workflow-core-replay-unsupported"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/workflow-core/src/libs/problems/WorkflowProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `47`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"workflow-core/saga-definition-invalid"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#workflow-core-saga-definition-invalid"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/workflow-core/src/libs/problems/WorkflowProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `62`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"workflow-core/saga-execution-failed"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#workflow-core-saga-execution-failed"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/workflow-core/src/libs/problems/WorkflowProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `127`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"NotFound"`; `code`: `"workflow-core/saga-execution-not-found"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#workflow-core-saga-execution-not-found"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The requested resource or route-visible record does not exist."`; `operatorAction`: `"Confirm tenant scoping, data retention, and backing-store lookup behavior."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Verify the identifier and refresh the resource list before retrying."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/workflow-core/src/libs/problems/WorkflowProblems.ts"`; `kind`: `"problem-class"`; `line`: `77`; \}\]; `status`: `404`; `title`: `"Not Found"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"workflow-core/saga-replay-invalid"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#workflow-core-saga-replay-invalid"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/workflow-core/src/libs/problems/WorkflowProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `103`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"Conflict"`; `code`: `"workflow-core/saga-store-conflict"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#workflow-core-saga-store-conflict"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The request conflicts with current state or an idempotency constraint."`; `operatorAction`: `"Inspect concurrent writes, idempotency keys, and uniqueness constraints."`; `redactionPolicy`: `"safe-message"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.warning"`; `severity`: `"warning"`; \}; `userAction`: `"Refresh state, resolve the conflict, and retry with the updated intent."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/workflow-core/src/libs/problems/WorkflowProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `92`; \}\]; `status`: `409`; `title`: `"Conflict"`; \}, \{ `category`: `"InternalServerError"`; `code`: `"workflow-core/workflow-definition-invalid"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#workflow-core-workflow-definition-invalid"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"Croco or an upstream dependency failed after accepting the request."`; `operatorAction`: `"Use traces, logs, and upstream diagnostics to isolate the failing boundary."`; `redactionPolicy`: `"operator-only"`; `retryability`: `"conditional"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.error"`; `severity`: `"error"`; \}; `userAction`: `"Retry later only when the operation is idempotent or the caller owns retry safety."`; \}; `sources`: readonly \[\{ `column`: `5`; `file`: `"packages/workflow-core/src/libs/problems/WorkflowProblems.ts"`; `kind`: `"problem-constructor"`; `line`: `31`; \}\]; `status`: `500`; `title`: `"Internal Server Error"`; \}, \{ `category`: `"NotFound"`; `code`: `"workflow-core/workflow-not-found"`; `cookbookPath`: `"/reference/problem-recovery-cookbook/#workflow-core-workflow-not-found"`; `lifecycle`: \{ `status`: `"active"`; \}; `recovery`: \{ `cause`: `"The requested resource or route-visible record does not exist."`; `operatorAction`: `"Confirm tenant scoping, data retention, and backing-store lookup behavior."`; `redactionPolicy`: `"public"`; `retryability`: `"not-retryable"`; `telemetry`: \{ `attributes`: readonly \[`"problem.code"`, `"problem.category"`, `"problem.status"`\]; `eventName`: `"croco.problem.info"`; `severity`: `"info"`; \}; `userAction`: `"Verify the identifier and refresh the resource list before retrying."`; \}; `sources`: readonly \[\{ `column`: `3`; `file`: `"packages/workflow-core/src/libs/problems/WorkflowProblems.ts"`; `kind`: `"problem-class"`; `line`: `5`; \}\]; `status`: `404`; `title`: `"Not Found"`; \}\] ### version diff --git a/packages/docs/src/content/docs/en/reference/problem-recovery-cookbook.md b/packages/docs/src/content/docs/en/reference/problem-recovery-cookbook.md index bfeb06e09..36e559d90 100644 --- a/packages/docs/src/content/docs/en/reference/problem-recovery-cookbook.md +++ b/packages/docs/src/content/docs/en/reference/problem-recovery-cookbook.md @@ -7,7 +7,7 @@ description: Generated Croco Problem code registry with recovery and telemetry m > Generated by `pnpm problem-registry:write`. Do not edit this file by hand. -This cookbook documents 584 public Croco Problem codes. The deterministic JSON registry is generated at `docs/problem-code-registry.json`, and generated client union types are emitted at `packages/problems-core/src/generated/problem-code-registry.ts`. +This cookbook documents 585 public Croco Problem codes. The deterministic JSON registry is generated at `docs/problem-code-registry.json`, and generated client union types are emitted at `packages/problems-core/src/generated/problem-code-registry.ts`. ## Index @@ -115,6 +115,7 @@ This cookbook documents 584 public Croco Problem codes. The deterministic JSON r | [`billing/unknown-provider-plan-mapping`](#billing-unknown-provider-plan-mapping) | NotFound | 404 | not-retryable | public | active | 1 | | [`billing/webhook-already-processed`](#billing-webhook-already-processed) | Conflict | 409 | conditional | safe-message | active | 1 | | [`BLOCKED_DURING_IMPERSONATION`](#blocked-during-impersonation) | Forbidden | 403 | not-retryable | safe-message | active | 1 | +| [`cache-core/invalid-configuration`](#cache-core-invalid-configuration) | InternalServerError | 500 | conditional | operator-only | active | 1 | | [`cache-core/invalid-decorator-config`](#cache-core-invalid-decorator-config) | InternalServerError | 500 | conditional | operator-only | active | 1 | | [`cache-core/invalid-ttl`](#cache-core-invalid-ttl) | ValidationError | 422 | not-retryable | public | active | 1 | | [`cache-core/invalidation-assertion-failed`](#cache-core-invalidation-assertion-failed) | InternalServerError | 500 | conditional | operator-only | active | 1 | @@ -2436,6 +2437,24 @@ Sources: - `packages/impersonation-core/src/libs/problems/ImpersonationProblems.ts:49:3` (problem-class) + + +## `cache-core/invalid-configuration` + +- Category: `InternalServerError` +- HTTP status: `500` Internal Server Error +- Retryability: `conditional` +- Redaction policy: `operator-only` +- Lifecycle: `active` +- Cause: Croco or an upstream dependency failed after accepting the request. +- User action: Retry later only when the operation is idempotent or the caller owns retry safety. +- Operator action: Use traces, logs, and upstream diagnostics to isolate the failing boundary. +- Telemetry: `croco.problem.error` (error) with `problem.code`, `problem.category`, `problem.status` + +Sources: + +- `packages/cache-core/src/libs/problems/CacheStoreProblems.ts:12:3` (problem-class) + ## `cache-core/invalid-decorator-config` @@ -2470,7 +2489,7 @@ Sources: Sources: -- `packages/cache-core/src/libs/problems/CacheStoreProblems.ts:7:3` (problem-class) +- `packages/cache-core/src/libs/problems/CacheStoreProblems.ts:35:3` (problem-class) diff --git a/packages/problems-core/src/generated/problem-code-registry.ts b/packages/problems-core/src/generated/problem-code-registry.ts index 499964dad..762fd3751 100644 --- a/packages/problems-core/src/generated/problem-code-registry.ts +++ b/packages/problems-core/src/generated/problem-code-registry.ts @@ -3,7 +3,7 @@ import type { ProblemCodeRegistry } from "../libs/ProblemRegistry"; export const CROCO_PROBLEM_CODE_REGISTRY = { version: "croco.problem-code-registry.v1", - problemCount: 584, + problemCount: 585, problems: [ { code: "ACCESS_DENIED", @@ -3170,6 +3170,38 @@ export const CROCO_PROBLEM_CODE_REGISTRY = { }, ], }, + { + code: "cache-core/invalid-configuration", + category: "InternalServerError", + status: 500, + title: "Internal Server Error", + cookbookPath: "/reference/problem-recovery-cookbook/#cache-core-invalid-configuration", + recovery: { + cause: "Croco or an upstream dependency failed after accepting the request.", + userAction: + "Retry later only when the operation is idempotent or the caller owns retry safety.", + operatorAction: + "Use traces, logs, and upstream diagnostics to isolate the failing boundary.", + retryability: "conditional", + redactionPolicy: "operator-only", + telemetry: { + eventName: "croco.problem.error", + severity: "error", + attributes: ["problem.code", "problem.category", "problem.status"], + }, + }, + lifecycle: { + status: "active", + }, + sources: [ + { + file: "packages/cache-core/src/libs/problems/CacheStoreProblems.ts", + line: 12, + column: 3, + kind: "problem-class", + }, + ], + }, { code: "cache-core/invalid-decorator-config", category: "InternalServerError", @@ -3226,7 +3258,7 @@ export const CROCO_PROBLEM_CODE_REGISTRY = { sources: [ { file: "packages/cache-core/src/libs/problems/CacheStoreProblems.ts", - line: 7, + line: 35, column: 3, kind: "problem-class", }, diff --git a/public-api-surface.snapshot.json b/public-api-surface.snapshot.json index 3e5027773..a8a26cf01 100644 --- a/public-api-surface.snapshot.json +++ b/public-api-surface.snapshot.json @@ -5676,12 +5676,30 @@ "source": "./libs/CacheInvalidationGraph", "declarationKind": "function" }, + { + "name": "InvalidCacheConfigurationProblem", + "exportKind": "named", + "source": "./libs/problems/CacheStoreProblems", + "declarationKind": "class" + }, { "name": "InvalidCacheTtlProblem", "exportKind": "named", "source": "./libs/problems/CacheStoreProblems", "declarationKind": "class" }, + { + "name": "MAX_CACHE_ENTRIES", + "exportKind": "named", + "source": "./libs/problems/CacheStoreProblems", + "declarationKind": "const" + }, + { + "name": "MAX_CACHE_TIMER_DELAY_MS", + "exportKind": "named", + "source": "./libs/problems/CacheStoreProblems", + "declarationKind": "const" + }, { "name": "serializeCacheInvalidationManifest", "exportKind": "named", @@ -5832,6 +5850,11 @@ "exportKind": "named", "source": "./libs/CacheInvalidationGraph" }, + { + "name": "CacheNumericOption", + "exportKind": "named", + "source": "./libs/problems/CacheStoreProblems" + }, { "name": "CachePattern", "exportKind": "named",