@aotter/mantle-runtime 0.0.11-alpha.58 → 0.0.11-alpha.60
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +5 -0
- package/dist/domain/model/HandlerContext.d.ts +7 -1
- package/dist/domain/model/HandlerContext.d.ts.map +1 -1
- package/dist/domain/port/DeferredHookDispatcher.d.ts +21 -17
- package/dist/domain/port/DeferredHookDispatcher.d.ts.map +1 -1
- package/dist/domain/port/DeferredHookDispatcher.js +17 -1
- package/dist/domain/port/DeferredHookDispatcher.js.map +1 -1
- package/dist/domain/port/EntryRepository.d.ts +6 -1
- package/dist/domain/port/EntryRepository.d.ts.map +1 -1
- package/dist/domain/port/IdGenerator.d.ts +2 -1
- package/dist/domain/port/IdGenerator.d.ts.map +1 -1
- package/dist/domain/port/IdGenerator.js.map +1 -1
- package/dist/domain/port/index.d.ts +2 -2
- package/dist/domain/port/index.d.ts.map +1 -1
- package/dist/domain/port/index.js +1 -1
- package/dist/domain/port/index.js.map +1 -1
- package/dist/domain/service/BuiltinProjector.d.ts +2 -2
- package/dist/domain/service/EntryMutationDiagnostics.d.ts +5 -0
- package/dist/domain/service/EntryMutationDiagnostics.d.ts.map +1 -0
- package/dist/domain/service/EntryMutationDiagnostics.js +42 -0
- package/dist/domain/service/EntryMutationDiagnostics.js.map +1 -0
- package/dist/domain/service/PublishKeys.d.ts +2 -2
- package/dist/domain/service/PublishKeys.d.ts.map +1 -1
- package/dist/domain/service/PublishKeys.js +5 -3
- package/dist/domain/service/PublishKeys.js.map +1 -1
- package/dist/domain/service/TriggerIndex.d.ts +0 -4
- package/dist/domain/service/TriggerIndex.d.ts.map +1 -1
- package/dist/domain/service/TriggerIndex.js +0 -6
- package/dist/domain/service/TriggerIndex.js.map +1 -1
- package/dist/domain/service/ViewSqlCompiler.d.ts +7 -6
- package/dist/domain/service/ViewSqlCompiler.d.ts.map +1 -1
- package/dist/domain/service/ViewSqlCompiler.js +31 -18
- package/dist/domain/service/ViewSqlCompiler.js.map +1 -1
- package/dist/domain/service/io/EntryDeleteGuard.d.ts +11 -0
- package/dist/domain/service/io/EntryDeleteGuard.d.ts.map +1 -0
- package/dist/domain/service/io/EntryDeleteGuard.js +20 -0
- package/dist/domain/service/io/EntryDeleteGuard.js.map +1 -0
- package/dist/domain/service/io/index.d.ts +1 -0
- package/dist/domain/service/io/index.d.ts.map +1 -1
- package/dist/domain/service/io/index.js +1 -0
- package/dist/domain/service/io/index.js.map +1 -1
- package/dist/index.d.ts +3 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/infrastructure/boot/canonicalMigrations.d.ts +1 -1
- package/dist/infrastructure/boot/canonicalMigrations.d.ts.map +1 -1
- package/dist/infrastructure/boot/canonicalMigrations.js +80 -19
- package/dist/infrastructure/boot/canonicalMigrations.js.map +1 -1
- package/dist/infrastructure/boot/index.d.ts +1 -1
- package/dist/infrastructure/boot/index.d.ts.map +1 -1
- package/dist/infrastructure/boot/index.js +1 -1
- package/dist/infrastructure/boot/index.js.map +1 -1
- package/dist/infrastructure/mcp/McpJsonRpcDispatcher.d.ts.map +1 -1
- package/dist/infrastructure/mcp/McpJsonRpcDispatcher.js +27 -10
- package/dist/infrastructure/mcp/McpJsonRpcDispatcher.js.map +1 -1
- package/dist/infrastructure/persistence/DatabaseEntryRepository.d.ts +3 -1
- package/dist/infrastructure/persistence/DatabaseEntryRepository.d.ts.map +1 -1
- package/dist/infrastructure/persistence/DatabaseEntryRepository.js +49 -23
- package/dist/infrastructure/persistence/DatabaseEntryRepository.js.map +1 -1
- package/dist/infrastructure/persistence/LifecycleHookingEntryRepository.d.ts +9 -46
- package/dist/infrastructure/persistence/LifecycleHookingEntryRepository.d.ts.map +1 -1
- package/dist/infrastructure/persistence/LifecycleHookingEntryRepository.js +82 -99
- package/dist/infrastructure/persistence/LifecycleHookingEntryRepository.js.map +1 -1
- package/dist/infrastructure/render/HtmlPublishOrchestrator.d.ts.map +1 -1
- package/dist/infrastructure/render/HtmlPublishOrchestrator.js +2 -0
- package/dist/infrastructure/render/HtmlPublishOrchestrator.js.map +1 -1
- package/dist/runtime.d.ts +6 -9
- package/dist/runtime.d.ts.map +1 -1
- package/dist/runtime.js +10 -11
- package/dist/runtime.js.map +1 -1
- package/dist/usecase/boot/ValidateBootUseCase.d.ts +1 -0
- package/dist/usecase/boot/ValidateBootUseCase.d.ts.map +1 -1
- package/dist/usecase/boot/ValidateBootUseCase.js +13 -1
- package/dist/usecase/boot/ValidateBootUseCase.js.map +1 -1
- package/dist/usecase/content/DeleteEntryUseCase.d.ts +3 -1
- package/dist/usecase/content/DeleteEntryUseCase.d.ts.map +1 -1
- package/dist/usecase/content/DeleteEntryUseCase.js +16 -5
- package/dist/usecase/content/DeleteEntryUseCase.js.map +1 -1
- package/dist/usecase/content/diagnostics.d.ts +1 -9
- package/dist/usecase/content/diagnostics.d.ts.map +1 -1
- package/dist/usecase/content/diagnostics.js +2 -47
- package/dist/usecase/content/diagnostics.js.map +1 -1
- package/dist/usecase/dto/content/index.d.ts +5 -5
- package/dist/usecase/dto/content/index.d.ts.map +1 -1
- package/dist/usecase/dto/lifecycle/index.d.ts +3 -2
- package/dist/usecase/dto/lifecycle/index.d.ts.map +1 -1
- package/dist/usecase/lifecycle/RunDeferredHookUseCase.d.ts +7 -15
- package/dist/usecase/lifecycle/RunDeferredHookUseCase.d.ts.map +1 -1
- package/dist/usecase/lifecycle/RunDeferredHookUseCase.js +96 -24
- package/dist/usecase/lifecycle/RunDeferredHookUseCase.js.map +1 -1
- package/dist/usecase/lifecycle/RunLifecycleHooksUseCase.d.ts +15 -26
- package/dist/usecase/lifecycle/RunLifecycleHooksUseCase.d.ts.map +1 -1
- package/dist/usecase/lifecycle/RunLifecycleHooksUseCase.js +66 -31
- package/dist/usecase/lifecycle/RunLifecycleHooksUseCase.js.map +1 -1
- package/dist/usecase/procedure/InvokeBuiltinUseCase.d.ts +4 -4
- package/dist/usecase/procedure/InvokeBuiltinUseCase.d.ts.map +1 -1
- package/dist/usecase/procedure/InvokeBuiltinUseCase.js +22 -7
- package/dist/usecase/procedure/InvokeBuiltinUseCase.js.map +1 -1
- package/dist/usecase/render/ComposeLlmsTxtUseCase.d.ts +1 -1
- package/dist/usecase/render/ComposeLlmsTxtUseCase.js +1 -1
- package/dist/usecase/view/ExecuteViewUseCase.d.ts +3 -2
- package/dist/usecase/view/ExecuteViewUseCase.d.ts.map +1 -1
- package/dist/usecase/view/ExecuteViewUseCase.js +4 -2
- package/dist/usecase/view/ExecuteViewUseCase.js.map +1 -1
- package/package.json +2 -2
package/dist/runtime.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runtime.js","sourceRoot":"","sources":["../src/runtime.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,kBAAkB,EAClB,iBAAiB,GAOlB,MAAM,qBAAqB,CAAC;AAW7B,OAAO,EAAE,WAAW,EAAc,MAAM,wBAAwB,CAAC;AACjE,OAAO,EACL,mBAAmB,GAEpB,MAAM,8BAA8B,CAAC;AACtC,OAAO,EACL,oBAAoB,GAErB,MAAM,kCAAkC,CAAC;AAE1C,OAAO,EACL,cAAc,EACd,kBAAkB,EAClB,kBAAkB,EAClB,eAAe,EACf,kBAAkB,EAClB,qBAAqB,EACrB,gBAAgB,EAChB,kBAAkB,GACnB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EACL,oBAAoB,EACpB,sBAAsB,GACvB,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,EACL,sBAAsB,EACtB,wBAAwB,GACzB,MAAM,8BAA8B,CAAC;AACtC,OAAO,EACL,0BAA0B,EAC1B,qBAAqB,EACrB,qBAAqB,EACrB,mBAAmB,EACnB,sBAAsB,EACtB,qBAAqB,GACtB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EACL,wBAAwB,EACxB,wBAAwB,EACxB,sBAAsB,EACtB,oBAAoB,EACpB,uBAAuB,EACvB,uBAAuB,GACxB,MAAM,0BAA0B,CAAC;AAIlC,OAAO,EAAE,gBAAgB,IAAI,oBAAoB,EAAE,MAAM,oCAAoC,CAAC;AAC9F,OAAO,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAC;AAChE,OAAO,EAAE,uBAAuB,EAAE,MAAM,yDAAyD,CAAC;AAClG,OAAO,EAAE,4BAA4B,EAAE,MAAM,8DAA8D,CAAC;AAC5G,OAAO,EAAE,4BAA4B,EAAE,MAAM,8DAA8D,CAAC;AAC5G,OAAO,EAAE,+BAA+B,EAAE,MAAM,iEAAiE,CAAC;AAClH,OAAO,EAAE,uBAAuB,EAAE,MAAM,kCAAkC,CAAC;AAC3E,OAAO,EACL,oBAAoB,EACpB,
|
|
1
|
+
{"version":3,"file":"runtime.js","sourceRoot":"","sources":["../src/runtime.ts"],"names":[],"mappings":"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"}
|
|
@@ -24,6 +24,7 @@ import type { HandlerRegistry } from "../../domain/port/HandlerRegistry.js";
|
|
|
24
24
|
* - Every `Trigger.source.kind: lifecycle` watches a declared Schema
|
|
25
25
|
* (`LIFECYCLE_SCHEMA_UNKNOWN`). The hook runtime is the
|
|
26
26
|
* `LifecycleHookingEntryRepository` decorator.
|
|
27
|
+
* - Schema index declarations resolve to supported scalar fields.
|
|
27
28
|
* - Locale + translates cross-Schema invariants (ADR-0010) hold.
|
|
28
29
|
*/
|
|
29
30
|
export type ValidateBootResponse = {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ValidateBootUseCase.d.ts","sourceRoot":"","sources":["../../../src/usecase/boot/ValidateBootUseCase.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"ValidateBootUseCase.d.ts","sourceRoot":"","sources":["../../../src/usecase/boot/ValidateBootUseCase.ts"],"names":[],"mappings":"AAAA,OAAO,EAKL,KAAK,UAAU,EACf,KAAK,QAAQ,EAId,MAAM,qBAAqB,CAAC;AAC7B,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sCAAsC,CAAC;AAO5E;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,MAAM,MAAM,oBAAoB,GAC5B;IAAE,QAAQ,CAAC,EAAE,EAAE,IAAI,CAAA;CAAE,GACrB;IAAE,QAAQ,CAAC,EAAE,EAAE,KAAK,CAAC;IAAC,QAAQ,CAAC,WAAW,EAAE,SAAS,UAAU,EAAE,CAAA;CAAE,CAAC;AAExE,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,SAAS,EAAE,SAAS,QAAQ,EAAE,CAAC;IACxC,QAAQ,CAAC,QAAQ,EAAE,eAAe,CAAC;IACnC;;;oEAGgE;IAChE,QAAQ,CAAC,WAAW,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CAC1C;AAED,qBAAa,mBAAmB;IAC9B,OAAO,CAAC,OAAO,EAAE,mBAAmB,GAAG,oBAAoB;IAyK3D,yDAAyD;IACzD,MAAM,CAAC,OAAO,EAAE,mBAAmB,GAAG,IAAI;CAI3C;AA2ID;;;GAGG;AACH,qBAAa,mBAAoB,SAAQ,KAAK;aAChB,WAAW,EAAE,SAAS,UAAU,EAAE;gBAAlC,WAAW,EAAE,SAAS,UAAU,EAAE;CAW/D"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { bootDiagnostic, partitionManifests, checkLocaleAndTranslates, } from "@aotter/mantle-spec";
|
|
1
|
+
import { bootDiagnostic, partitionManifests, checkLocaleAndTranslates, ValidateManifestsUseCase, } from "@aotter/mantle-spec";
|
|
2
2
|
import { mcpToolNameSegment, RESERVED_MCP_GENERIC_TOOL_NAMES, RESERVED_MCP_TOOL_PREFIXES, } from "../../domain/service/McpToolNaming.js";
|
|
3
3
|
export class ValidateBootUseCase {
|
|
4
4
|
execute(request) {
|
|
@@ -13,6 +13,13 @@ export class ValidateBootUseCase {
|
|
|
13
13
|
const procedureCandidates = [...proceduresByName.keys()];
|
|
14
14
|
const schemaCandidates = [...schemasByName.keys()];
|
|
15
15
|
const handlerCandidates = request.registry.list();
|
|
16
|
+
for (const diagnostic of ValidateManifestsUseCase.run({
|
|
17
|
+
manifests: request.manifests,
|
|
18
|
+
}).diagnostics) {
|
|
19
|
+
if (isSchemaIndexDiagnostic(diagnostic)) {
|
|
20
|
+
diagnostics.push({ ...diagnostic, phase: "boot" });
|
|
21
|
+
}
|
|
22
|
+
}
|
|
16
23
|
// 1. Procedure handler refs + builtin schema cross-resolution.
|
|
17
24
|
for (const p of partitioned.procedures) {
|
|
18
25
|
const h = p.spec.handler;
|
|
@@ -144,6 +151,11 @@ export class ValidateBootUseCase {
|
|
|
144
151
|
throw new BootValidationError(result.diagnostics);
|
|
145
152
|
}
|
|
146
153
|
}
|
|
154
|
+
function isSchemaIndexDiagnostic(diagnostic) {
|
|
155
|
+
return diagnostic.code === "SCHEMA_INDEX_INVALID" ||
|
|
156
|
+
diagnostic.code === "SCHEMA_INDEX_FIELD_UNKNOWN" ||
|
|
157
|
+
diagnostic.code === "UNIQUE_INDEX_FIELD_UNKNOWN";
|
|
158
|
+
}
|
|
147
159
|
function checkHttpRouteCollisions(triggers) {
|
|
148
160
|
const seen = new Map();
|
|
149
161
|
const out = [];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ValidateBootUseCase.js","sourceRoot":"","sources":["../../../src/usecase/boot/ValidateBootUseCase.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ValidateBootUseCase.js","sourceRoot":"","sources":["../../../src/usecase/boot/ValidateBootUseCase.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { type SchemaManifest } from "@aotter/mantle-spec";
|
|
1
2
|
import type { EntryRepository } from "../../domain/port/EntryRepository.js";
|
|
2
3
|
import type { DeleteEntryRequest, DeleteEntryResponse } from "../dto/content/index.js";
|
|
3
4
|
/**
|
|
@@ -14,7 +15,8 @@ import type { DeleteEntryRequest, DeleteEntryResponse } from "../dto/content/ind
|
|
|
14
15
|
*/
|
|
15
16
|
export declare class DeleteEntryUseCase {
|
|
16
17
|
private readonly entries;
|
|
17
|
-
|
|
18
|
+
private readonly schemas;
|
|
19
|
+
constructor(entries: EntryRepository, schemas: ReadonlyMap<string, SchemaManifest>);
|
|
18
20
|
execute(request: DeleteEntryRequest): Promise<DeleteEntryResponse>;
|
|
19
21
|
}
|
|
20
22
|
//# sourceMappingURL=DeleteEntryUseCase.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DeleteEntryUseCase.d.ts","sourceRoot":"","sources":["../../../src/usecase/content/DeleteEntryUseCase.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"DeleteEntryUseCase.d.ts","sourceRoot":"","sources":["../../../src/usecase/content/DeleteEntryUseCase.ts"],"names":[],"mappings":"AAAA,OAAO,EAAmB,KAAK,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAC3E,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sCAAsC,CAAC;AAE5E,OAAO,KAAK,EACV,kBAAkB,EAClB,mBAAmB,EACpB,MAAM,yBAAyB,CAAC;AAGjC;;;;;;;;;;;GAWG;AACH,qBAAa,kBAAkB;IAE3B,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,OAAO;gBADP,OAAO,EAAE,eAAe,EACxB,OAAO,EAAE,WAAW,CAAC,MAAM,EAAE,cAAc,CAAC;IAGzD,OAAO,CAAC,OAAO,EAAE,kBAAkB,GAAG,OAAO,CAAC,mBAAmB,CAAC;CAyBzE"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { DiagnosticError } from "@aotter/mantle-spec";
|
|
2
|
-
import {
|
|
2
|
+
import { assertEntryDeletable } from "../../domain/service/io/EntryDeleteGuard.js";
|
|
3
|
+
import { notFoundDiagnostic, withConflictDiagnostic } from "./diagnostics.js";
|
|
3
4
|
/**
|
|
4
5
|
* `DeleteEntryUseCase` — permanently delete an entry + cascade
|
|
5
6
|
* revisions / approvals. Distinct from `Archive` — archive is a
|
|
@@ -14,21 +15,31 @@ import { notFoundDiagnostic } from "./diagnostics.js";
|
|
|
14
15
|
*/
|
|
15
16
|
export class DeleteEntryUseCase {
|
|
16
17
|
entries;
|
|
17
|
-
|
|
18
|
+
schemas;
|
|
19
|
+
constructor(entries, schemas) {
|
|
18
20
|
this.entries = entries;
|
|
21
|
+
this.schemas = schemas;
|
|
19
22
|
}
|
|
20
23
|
async execute(request) {
|
|
21
24
|
const opPath = `usecase/DeleteEntry/${request.id}`;
|
|
22
25
|
const existing = await this.entries.get(request.id);
|
|
23
26
|
if (!existing) {
|
|
24
|
-
throw new DiagnosticError(notFoundDiagnostic(opPath, "<unknown>", request.id));
|
|
27
|
+
throw new DiagnosticError(notFoundDiagnostic(opPath, request.collection ?? "<unknown>", request.id));
|
|
25
28
|
}
|
|
26
|
-
|
|
29
|
+
assertEntryDeletable({
|
|
30
|
+
entry: existing,
|
|
31
|
+
schema: this.schemas.get(existing.collection),
|
|
32
|
+
expectedCollection: request.collection,
|
|
33
|
+
opPath,
|
|
34
|
+
});
|
|
35
|
+
return withConflictDiagnostic(opPath, () => this.entries.delete({
|
|
27
36
|
id: request.id,
|
|
28
37
|
collection: existing.collection,
|
|
38
|
+
expectedStatus: existing.status,
|
|
39
|
+
expectedVersion: existing.version,
|
|
29
40
|
hookContext: request.ctx,
|
|
30
41
|
originalInput: request.originalInput,
|
|
31
|
-
});
|
|
42
|
+
}));
|
|
32
43
|
}
|
|
33
44
|
}
|
|
34
45
|
//# sourceMappingURL=DeleteEntryUseCase.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DeleteEntryUseCase.js","sourceRoot":"","sources":["../../../src/usecase/content/DeleteEntryUseCase.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,
|
|
1
|
+
{"version":3,"file":"DeleteEntryUseCase.js","sourceRoot":"","sources":["../../../src/usecase/content/DeleteEntryUseCase.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAuB,MAAM,qBAAqB,CAAC;AAE3E,OAAO,EAAE,oBAAoB,EAAE,MAAM,6CAA6C,CAAC;AAKnF,OAAO,EAAE,kBAAkB,EAAE,sBAAsB,EAAE,MAAM,kBAAkB,CAAC;AAE9E;;;;;;;;;;;GAWG;AACH,MAAM,OAAO,kBAAkB;IAEV;IACA;IAFnB,YACmB,OAAwB,EACxB,OAA4C;QAD5C,YAAO,GAAP,OAAO,CAAiB;QACxB,YAAO,GAAP,OAAO,CAAqC;IAC5D,CAAC;IAEJ,KAAK,CAAC,OAAO,CAAC,OAA2B;QACvC,MAAM,MAAM,GAAG,uBAAuB,OAAO,CAAC,EAAE,EAAE,CAAC;QACnD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QACpD,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,MAAM,IAAI,eAAe,CACvB,kBAAkB,CAAC,MAAM,EAAE,OAAO,CAAC,UAAU,IAAI,WAAW,EAAE,OAAO,CAAC,EAAE,CAAC,CAC1E,CAAC;QACJ,CAAC;QACD,oBAAoB,CAAC;YACnB,KAAK,EAAE,QAAQ;YACf,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC;YAC7C,kBAAkB,EAAE,OAAO,CAAC,UAAU;YACtC,MAAM;SACP,CAAC,CAAC;QACH,OAAO,sBAAsB,CAAC,MAAM,EAAE,GAAG,EAAE,CACzC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC;YAClB,EAAE,EAAE,OAAO,CAAC,EAAE;YACd,UAAU,EAAE,QAAQ,CAAC,UAAU;YAC/B,cAAc,EAAE,QAAQ,CAAC,MAAM;YAC/B,eAAe,EAAE,QAAQ,CAAC,OAAO;YACjC,WAAW,EAAE,OAAO,CAAC,GAAG;YACxB,aAAa,EAAE,OAAO,CAAC,aAAa;SACrC,CAAC,CACH,CAAC;IACJ,CAAC;CACF"}
|
|
@@ -1,13 +1,5 @@
|
|
|
1
1
|
import { type ContentState, type Diagnostic } from "@aotter/mantle-spec";
|
|
2
|
-
|
|
3
|
-
* Wrap a content-op repository call: convert chokepoint conflict
|
|
4
|
-
* throws into structured `CONFLICT` diagnostics. Other throws
|
|
5
|
-
* propagate.
|
|
6
|
-
*
|
|
7
|
-
* Used by every content-op use case so the catch shape stays uniform.
|
|
8
|
-
*/
|
|
9
|
-
export declare function withConflictDiagnostic<T>(path: string, fn: () => Promise<T>): Promise<T>;
|
|
10
|
-
export declare function notFoundDiagnostic(path: string, collection: string, id: string): Diagnostic;
|
|
2
|
+
export { notFoundDiagnostic, withConflictDiagnostic, } from "../../domain/service/EntryMutationDiagnostics.js";
|
|
11
3
|
export declare function illegalTransitionDiagnostic(path: string, from: ContentState, to: ContentState): Diagnostic;
|
|
12
4
|
export declare function schemaUnknownDiagnostic(path: string, collection: string, candidates: readonly string[]): Diagnostic;
|
|
13
5
|
//# sourceMappingURL=diagnostics.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"diagnostics.d.ts","sourceRoot":"","sources":["../../../src/usecase/content/diagnostics.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"diagnostics.d.ts","sourceRoot":"","sources":["../../../src/usecase/content/diagnostics.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,YAAY,EACjB,KAAK,UAAU,EAChB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,kBAAkB,EAClB,sBAAsB,GACvB,MAAM,kDAAkD,CAAC;AAE1D,wBAAgB,2BAA2B,CACzC,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,YAAY,EAClB,EAAE,EAAE,YAAY,GACf,UAAU,CASZ;AAED,wBAAgB,uBAAuB,CACrC,IAAI,EAAE,MAAM,EACZ,UAAU,EAAE,MAAM,EAClB,UAAU,EAAE,SAAS,MAAM,EAAE,GAC5B,UAAU,CAUZ"}
|
|
@@ -1,50 +1,5 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
/**
|
|
4
|
-
* Wrap a content-op repository call: convert chokepoint conflict
|
|
5
|
-
* throws into structured `CONFLICT` diagnostics. Other throws
|
|
6
|
-
* propagate.
|
|
7
|
-
*
|
|
8
|
-
* Used by every content-op use case so the catch shape stays uniform.
|
|
9
|
-
*/
|
|
10
|
-
export async function withConflictDiagnostic(path, fn) {
|
|
11
|
-
try {
|
|
12
|
-
return await fn();
|
|
13
|
-
}
|
|
14
|
-
catch (err) {
|
|
15
|
-
if (err instanceof EntryVersionConflict) {
|
|
16
|
-
throw new DiagnosticError(runtimeDiagnostic({
|
|
17
|
-
code: "CONFLICT",
|
|
18
|
-
severity: "error",
|
|
19
|
-
path,
|
|
20
|
-
value: { expected: err.expected, found: err.actual },
|
|
21
|
-
expected: `version === ${err.expected}`,
|
|
22
|
-
message: `Version mismatch on entry '${err.id}': expected ${err.expected}, found ${err.actual}.`,
|
|
23
|
-
}));
|
|
24
|
-
}
|
|
25
|
-
if (err instanceof EntryStatusConflict) {
|
|
26
|
-
throw new DiagnosticError(runtimeDiagnostic({
|
|
27
|
-
code: "CONFLICT",
|
|
28
|
-
severity: "error",
|
|
29
|
-
path,
|
|
30
|
-
value: err.actual,
|
|
31
|
-
expected: `status === '${err.expected}'`,
|
|
32
|
-
message: `Status mismatch on entry '${err.id}': expected '${err.expected}', found '${err.actual}'. Probably a concurrent state change.`,
|
|
33
|
-
}));
|
|
34
|
-
}
|
|
35
|
-
throw err;
|
|
36
|
-
}
|
|
37
|
-
}
|
|
38
|
-
export function notFoundDiagnostic(path, collection, id) {
|
|
39
|
-
return runtimeDiagnostic({
|
|
40
|
-
code: "NOT_FOUND",
|
|
41
|
-
severity: "error",
|
|
42
|
-
path,
|
|
43
|
-
value: id,
|
|
44
|
-
expected: `existing entry id in collection '${collection}'`,
|
|
45
|
-
message: `No entry with id '${id}' in collection '${collection}'.`,
|
|
46
|
-
});
|
|
47
|
-
}
|
|
1
|
+
import { runtimeDiagnostic, } from "@aotter/mantle-spec";
|
|
2
|
+
export { notFoundDiagnostic, withConflictDiagnostic, } from "../../domain/service/EntryMutationDiagnostics.js";
|
|
48
3
|
export function illegalTransitionDiagnostic(path, from, to) {
|
|
49
4
|
return runtimeDiagnostic({
|
|
50
5
|
code: "CONFLICT",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"diagnostics.js","sourceRoot":"","sources":["../../../src/usecase/content/diagnostics.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,
|
|
1
|
+
{"version":3,"file":"diagnostics.js","sourceRoot":"","sources":["../../../src/usecase/content/diagnostics.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,iBAAiB,GAGlB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,kBAAkB,EAClB,sBAAsB,GACvB,MAAM,kDAAkD,CAAC;AAE1D,MAAM,UAAU,2BAA2B,CACzC,IAAY,EACZ,IAAkB,EAClB,EAAgB;IAEhB,OAAO,iBAAiB,CAAC;QACvB,IAAI,EAAE,UAAU;QAChB,QAAQ,EAAE,OAAO;QACjB,IAAI;QACJ,KAAK,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE;QACnB,QAAQ,EAAE,0BAA0B,IAAI,0BAA0B;QAClE,OAAO,EAAE,6BAA6B,IAAI,MAAM,EAAE,GAAG;KACtD,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,uBAAuB,CACrC,IAAY,EACZ,UAAkB,EAClB,UAA6B;IAE7B,OAAO,iBAAiB,CAAC;QACvB,IAAI,EAAE,WAAW;QACjB,QAAQ,EAAE,OAAO;QACjB,IAAI;QACJ,KAAK,EAAE,UAAU;QACjB,QAAQ,EAAE,2BAA2B;QACrC,UAAU;QACV,OAAO,EAAE,wBAAwB,UAAU,IAAI;KAChD,CAAC,CAAC;AACL,CAAC"}
|
|
@@ -14,11 +14,9 @@ import type { HandlerContext } from "../../../domain/model/HandlerContext.js";
|
|
|
14
14
|
*/
|
|
15
15
|
export interface ContentMutationFields {
|
|
16
16
|
readonly ctx?: HandlerContext;
|
|
17
|
-
/** Pre-projection
|
|
18
|
-
*
|
|
19
|
-
*
|
|
20
|
-
* populates this with the full procedure input so hooks can read
|
|
21
|
-
* side-channel fields like CAPTCHA tokens. */
|
|
17
|
+
/** Pre-projection input forwarded only to synchronous `before_*`
|
|
18
|
+
* hooks. Deferred `after_*` delivery uses persisted row data and
|
|
19
|
+
* never retains side-channel fields such as CAPTCHA tokens. */
|
|
22
20
|
readonly originalInput?: unknown;
|
|
23
21
|
}
|
|
24
22
|
export interface CreateDraftRequest extends ContentMutationFields {
|
|
@@ -58,6 +56,8 @@ export interface ArchiveRequest extends ContentMutationFields {
|
|
|
58
56
|
}
|
|
59
57
|
export interface DeleteEntryRequest extends ContentMutationFields {
|
|
60
58
|
readonly id: string;
|
|
59
|
+
/** Optional collection assertion for schema-bound callers. */
|
|
60
|
+
readonly collection?: string;
|
|
61
61
|
}
|
|
62
62
|
export interface DeleteEntryResponse {
|
|
63
63
|
readonly removed: boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/usecase/dto/content/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yCAAyC,CAAC;AAE9E;;;;;;;;;;;GAWG;AACH,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,GAAG,CAAC,EAAE,cAAc,CAAC;IAC9B
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/usecase/dto/content/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yCAAyC,CAAC;AAE9E;;;;;;;;;;;GAWG;AACH,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,GAAG,CAAC,EAAE,cAAc,CAAC;IAC9B;;oEAEgE;IAChE,QAAQ,CAAC,aAAa,CAAC,EAAE,OAAO,CAAC;CAClC;AAED,MAAM,WAAW,kBAAmB,SAAQ,qBAAqB;IAC/D,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACvC,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;CAClC;AAED,MAAM,WAAW,kBAAmB,SAAQ,qBAAqB;IAC/D,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IACjC,iEAAiE;IACjE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACxC;AAED,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB;iCAC6B;IAC7B,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;CAC9B;AAED,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,MAAM,CAAC,EAAE,YAAY,CAAC;IAC/B,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,iEAAiE;IACjE,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,mEAAmE;IACnE,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,qBAAsB,SAAQ,qBAAqB;IAClE,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,gBAAiB,SAAQ,qBAAqB;IAC7D,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,cAAe,SAAQ,qBAAqB;IAC3D,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,kBAAmB,SAAQ,qBAAqB;IAC/D,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,8DAA8D;IAC9D,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;CAC9B;AAED,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;CAC3B"}
|
|
@@ -1,11 +1,12 @@
|
|
|
1
|
-
import type { DeferredHookEnvelope } from "../../../domain/port/DeferredHookDispatcher.js";
|
|
2
1
|
/**
|
|
3
2
|
* Lifecycle use-case request DTOs. Per the clean-arch rule, every
|
|
4
3
|
* use-case `execute` takes a single named DTO — no loose positional
|
|
5
4
|
* primitives.
|
|
6
5
|
*/
|
|
7
6
|
export interface RunDeferredHookRequest {
|
|
8
|
-
|
|
7
|
+
/** Untrusted Queue body. The use case validates the versioned wire
|
|
8
|
+
* contract before reading any field. */
|
|
9
|
+
readonly envelope: unknown;
|
|
9
10
|
/** Adapter binding bag from the consume-side invocation. Threaded
|
|
10
11
|
* into the rebuilt `HandlerContext` so handlers reach platform
|
|
11
12
|
* resources (D1, KV, queues, …) the same way they do on the
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/usecase/dto/lifecycle/index.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/usecase/dto/lifecycle/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,MAAM,WAAW,sBAAsB;IACrC;6CACyC;IACzC,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;IAC3B;;;oEAGgE;IAChE,QAAQ,CAAC,GAAG,EAAE,OAAO,CAAC;CACvB"}
|
|
@@ -1,22 +1,14 @@
|
|
|
1
1
|
import type { RunDeferredHookRequest } from "../dto/lifecycle/index.js";
|
|
2
2
|
import type { RunLifecycleHooksUseCase } from "./RunLifecycleHooksUseCase.js";
|
|
3
3
|
/**
|
|
4
|
-
* Consume side of
|
|
5
|
-
*
|
|
6
|
-
*
|
|
7
|
-
*
|
|
4
|
+
* Consume side of deferred lifecycle delivery. Queue bodies are
|
|
5
|
+
* untrusted: the versioned envelope is validated before any field is
|
|
6
|
+
* read, then the original identity snapshot is rebuilt with the
|
|
7
|
+
* consume invocation's fresh adapter bindings.
|
|
8
8
|
*
|
|
9
|
-
*
|
|
10
|
-
*
|
|
11
|
-
*
|
|
12
|
-
* absent — the consume invocation owns its own request lifetime, and
|
|
13
|
-
* chaining another fire-and-forget here would just reintroduce the
|
|
14
|
-
* durability gap the deferred path closes.
|
|
15
|
-
*
|
|
16
|
-
* Errors from the underlying hook surface per the Trigger's
|
|
17
|
-
* `errorPolicy`. The adapter is expected to translate a throw into
|
|
18
|
-
* the platform's retry signal (e.g. `message.retry()` on CF Queues)
|
|
19
|
-
* so the hook eventually succeeds or hits the dead-letter queue.
|
|
9
|
+
* Deferred failures intentionally escape. The Queue adapter converts
|
|
10
|
+
* a throw into retry/DLQ behavior; the already-committed entry
|
|
11
|
+
* mutation is unaffected.
|
|
20
12
|
*/
|
|
21
13
|
export declare class RunDeferredHookUseCase {
|
|
22
14
|
private readonly hooks;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RunDeferredHookUseCase.d.ts","sourceRoot":"","sources":["../../../src/usecase/lifecycle/RunDeferredHookUseCase.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"RunDeferredHookUseCase.d.ts","sourceRoot":"","sources":["../../../src/usecase/lifecycle/RunDeferredHookUseCase.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AACxE,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AAqE9E;;;;;;;;;GASG;AACH,qBAAa,sBAAsB;IACrB,OAAO,CAAC,QAAQ,CAAC,KAAK;gBAAL,KAAK,EAAE,IAAI,CAAC,wBAAwB,EAAE,KAAK,CAAC;IAEnE,OAAO,CAAC,OAAO,EAAE,sBAAsB,GAAG,OAAO,CAAC,IAAI,CAAC;CAqB9D"}
|
|
@@ -1,20 +1,78 @@
|
|
|
1
|
+
import { ContentState, DiagnosticError, STAFF_ROLES, firstZodIssueAsJsonPointer, runtimeDiagnostic, } from "@aotter/mantle-spec";
|
|
2
|
+
import { z } from "zod";
|
|
3
|
+
import { DEFERRED_HOOK_ENVELOPE_VERSION, } from "../../domain/port/DeferredHookDispatcher.js";
|
|
4
|
+
const nonEmpty = z.string().min(1);
|
|
5
|
+
const authSchema = z.object({
|
|
6
|
+
credential: z.enum(["session", "oauth", "api-key", "personal-token"]),
|
|
7
|
+
credentialId: nonEmpty.nullable(),
|
|
8
|
+
clientId: nonEmpty.nullable(),
|
|
9
|
+
scopes: z.array(nonEmpty),
|
|
10
|
+
}).strict();
|
|
11
|
+
const ctxSnapshotSchema = z.object({
|
|
12
|
+
userId: nonEmpty.nullable(),
|
|
13
|
+
staffId: nonEmpty.nullable(),
|
|
14
|
+
staffRole: z.enum(STAFF_ROLES).nullable(),
|
|
15
|
+
auth: authSchema.nullable(),
|
|
16
|
+
}).strict().superRefine((snapshot, ctx) => {
|
|
17
|
+
if ((snapshot.staffId === null) !== (snapshot.staffRole === null)) {
|
|
18
|
+
ctx.addIssue({
|
|
19
|
+
code: "custom",
|
|
20
|
+
path: ["staffId"],
|
|
21
|
+
message: "staffId and staffRole must both be null or both be set",
|
|
22
|
+
});
|
|
23
|
+
}
|
|
24
|
+
if (snapshot.staffId !== null && snapshot.staffId !== snapshot.userId) {
|
|
25
|
+
ctx.addIssue({
|
|
26
|
+
code: "custom",
|
|
27
|
+
path: ["staffId"],
|
|
28
|
+
message: "staffId must match userId",
|
|
29
|
+
});
|
|
30
|
+
}
|
|
31
|
+
});
|
|
32
|
+
const entrySchema = z.object({
|
|
33
|
+
id: nonEmpty,
|
|
34
|
+
collection: nonEmpty,
|
|
35
|
+
locale: nonEmpty.optional(),
|
|
36
|
+
status: z.enum(ContentState),
|
|
37
|
+
version: z.number().int().positive(),
|
|
38
|
+
data: z.record(z.string(), z.json()),
|
|
39
|
+
authorId: nonEmpty.nullable(),
|
|
40
|
+
createdAt: z.number().finite(),
|
|
41
|
+
updatedAt: z.number().finite(),
|
|
42
|
+
}).strict();
|
|
43
|
+
const envelopeSchema = z.object({
|
|
44
|
+
version: z.literal(DEFERRED_HOOK_ENVELOPE_VERSION),
|
|
45
|
+
eventId: nonEmpty,
|
|
46
|
+
triggerNames: z.array(nonEmpty).min(1),
|
|
47
|
+
hook: z.enum(["after_create", "after_update", "after_delete", "after_publish"]),
|
|
48
|
+
schema: nonEmpty,
|
|
49
|
+
entry: entrySchema,
|
|
50
|
+
ctxSnapshot: ctxSnapshotSchema.nullable(),
|
|
51
|
+
}).strict().superRefine((envelope, ctx) => {
|
|
52
|
+
if (new Set(envelope.triggerNames).size !== envelope.triggerNames.length) {
|
|
53
|
+
ctx.addIssue({
|
|
54
|
+
code: "custom",
|
|
55
|
+
path: ["triggerNames"],
|
|
56
|
+
message: "triggerNames must be unique",
|
|
57
|
+
});
|
|
58
|
+
}
|
|
59
|
+
if (envelope.entry.collection !== envelope.schema) {
|
|
60
|
+
ctx.addIssue({
|
|
61
|
+
code: "custom",
|
|
62
|
+
path: ["entry", "collection"],
|
|
63
|
+
message: "entry.collection must match schema",
|
|
64
|
+
});
|
|
65
|
+
}
|
|
66
|
+
});
|
|
1
67
|
/**
|
|
2
|
-
* Consume side of
|
|
3
|
-
*
|
|
4
|
-
*
|
|
5
|
-
*
|
|
6
|
-
*
|
|
7
|
-
* Reconstructs a `HandlerContext` mirroring the original firing
|
|
8
|
-
* context's identity (user / staff snapshot from the envelope), with
|
|
9
|
-
* `env` filled by the consume invocation. `waitUntil` is intentionally
|
|
10
|
-
* absent — the consume invocation owns its own request lifetime, and
|
|
11
|
-
* chaining another fire-and-forget here would just reintroduce the
|
|
12
|
-
* durability gap the deferred path closes.
|
|
68
|
+
* Consume side of deferred lifecycle delivery. Queue bodies are
|
|
69
|
+
* untrusted: the versioned envelope is validated before any field is
|
|
70
|
+
* read, then the original identity snapshot is rebuilt with the
|
|
71
|
+
* consume invocation's fresh adapter bindings.
|
|
13
72
|
*
|
|
14
|
-
*
|
|
15
|
-
*
|
|
16
|
-
*
|
|
17
|
-
* so the hook eventually succeeds or hits the dead-letter queue.
|
|
73
|
+
* Deferred failures intentionally escape. The Queue adapter converts
|
|
74
|
+
* a throw into retry/DLQ behavior; the already-committed entry
|
|
75
|
+
* mutation is unaffected.
|
|
18
76
|
*/
|
|
19
77
|
export class RunDeferredHookUseCase {
|
|
20
78
|
hooks;
|
|
@@ -22,24 +80,38 @@ export class RunDeferredHookUseCase {
|
|
|
22
80
|
this.hooks = hooks;
|
|
23
81
|
}
|
|
24
82
|
async execute(request) {
|
|
25
|
-
const
|
|
83
|
+
const envelope = parseEnvelope(request.envelope);
|
|
84
|
+
const snapshot = envelope.ctxSnapshot;
|
|
26
85
|
const ctx = {
|
|
27
|
-
user:
|
|
28
|
-
|
|
86
|
+
user: snapshot?.userId ? { id: snapshot.userId } : null,
|
|
87
|
+
staff: snapshot?.staffId && snapshot.staffRole
|
|
88
|
+
? { id: snapshot.staffId, role: snapshot.staffRole }
|
|
29
89
|
: null,
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
: null,
|
|
33
|
-
auth: envelope.ctxSnapshot?.auth ?? undefined,
|
|
34
|
-
env,
|
|
90
|
+
...(snapshot?.auth ? { auth: snapshot.auth } : {}),
|
|
91
|
+
env: request.env,
|
|
35
92
|
};
|
|
36
93
|
await this.hooks.run({
|
|
94
|
+
eventId: envelope.eventId,
|
|
95
|
+
triggerNames: envelope.triggerNames,
|
|
96
|
+
delivery: "deferred",
|
|
37
97
|
hook: envelope.hook,
|
|
38
98
|
schema: envelope.schema,
|
|
39
99
|
entry: envelope.entry,
|
|
40
100
|
ctx,
|
|
41
|
-
originalInput: envelope.originalInput,
|
|
42
101
|
});
|
|
43
102
|
}
|
|
44
103
|
}
|
|
104
|
+
function parseEnvelope(value) {
|
|
105
|
+
const result = envelopeSchema.safeParse(value);
|
|
106
|
+
if (result.success)
|
|
107
|
+
return result.data;
|
|
108
|
+
const { instancePath, message } = firstZodIssueAsJsonPointer(result.error);
|
|
109
|
+
throw new DiagnosticError(runtimeDiagnostic({
|
|
110
|
+
code: "INPUT_VALIDATION_FAILED",
|
|
111
|
+
severity: "error",
|
|
112
|
+
path: `usecase/RunDeferredHook/envelope${instancePath}`,
|
|
113
|
+
expected: message,
|
|
114
|
+
message: `Deferred lifecycle envelope rejected at '${instancePath || "/"}': ${message}.`,
|
|
115
|
+
}));
|
|
116
|
+
}
|
|
45
117
|
//# sourceMappingURL=RunDeferredHookUseCase.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RunDeferredHookUseCase.js","sourceRoot":"","sources":["../../../src/usecase/lifecycle/RunDeferredHookUseCase.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"RunDeferredHookUseCase.js","sourceRoot":"","sources":["../../../src/usecase/lifecycle/RunDeferredHookUseCase.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,46 +3,35 @@ import type { EntryRow } from "../../domain/model/EntryRow.js";
|
|
|
3
3
|
import type { HandlerContext } from "../../domain/model/HandlerContext.js";
|
|
4
4
|
import type { TriggerIndex } from "../../domain/service/TriggerIndex.js";
|
|
5
5
|
import type { InvokeProcedureRequest, InvokeProcedureResponse } from "../dto/procedure/index.js";
|
|
6
|
-
/**
|
|
7
|
-
* Resolves matching Triggers via `TriggerIndex`, dispatches each
|
|
8
|
-
* to its target Procedure through the injected invoker (so input
|
|
9
|
-
* validation, auth, output validation all reuse the shared pipeline),
|
|
10
|
-
* and applies per-Trigger `errorPolicy`.
|
|
11
|
-
*
|
|
12
|
-
* The invoker is taken as a function rather than a concrete class so
|
|
13
|
-
* this use case does NOT import from a sibling under `usecase/` —
|
|
14
|
-
* `usecase → usecase` coupling would bypass the port boundary.
|
|
15
|
-
* Assembly root passes `(req) => invokeProcedure.execute(req)`.
|
|
16
|
-
*
|
|
17
|
-
* Defaults from the parser-locked grammar (POC ADR-0014):
|
|
18
|
-
* - before_*: errorPolicy default `abort` — handler failure throws
|
|
19
|
-
* a `DiagnosticError` and the chokepoint decorator cancels the
|
|
20
|
-
* mutation.
|
|
21
|
-
* - after_*: errorPolicy default `continue` — handler failure is
|
|
22
|
-
* logged via `console.error` and swallowed; the mutation already
|
|
23
|
-
* succeeded. Author override (`errorPolicy: continue` on a
|
|
24
|
-
* before_* hook) is honored.
|
|
25
|
-
*
|
|
26
|
-
* `Trigger.errorPolicy: 'abort'` on after_* is parser-rejected, so the
|
|
27
|
-
* use case never has to reconcile that combination.
|
|
28
|
-
*/
|
|
29
6
|
export type InvokeProcedureFn = (request: InvokeProcedureRequest) => Promise<InvokeProcedureResponse>;
|
|
30
7
|
export interface RunLifecycleHookRequest {
|
|
8
|
+
/** One event id is shared by every captured Trigger. */
|
|
9
|
+
readonly eventId: string;
|
|
10
|
+
/** Ordered Trigger names captured before dispatch. */
|
|
11
|
+
readonly triggerNames: readonly string[];
|
|
12
|
+
readonly delivery: "inline" | "deferred";
|
|
31
13
|
readonly hook: LifecycleHook;
|
|
32
14
|
readonly schema: string;
|
|
33
|
-
/** Pre-mutation row for `before_
|
|
34
|
-
*
|
|
15
|
+
/** Pre-mutation row for `before_*`; persisted row for `after_*`.
|
|
16
|
+
* `null` only on `before_create`. */
|
|
35
17
|
readonly entry: EntryRow | null;
|
|
36
18
|
readonly ctx: HandlerContext;
|
|
37
|
-
/** Pre-projection input
|
|
19
|
+
/** Pre-projection caller input. Used only by `before_*` hooks. */
|
|
38
20
|
readonly originalInput?: unknown;
|
|
39
21
|
}
|
|
22
|
+
/**
|
|
23
|
+
* Runs one captured lifecycle event. Inline `continue` failures are
|
|
24
|
+
* logged and swallowed so the mutation result stands. Deferred runs
|
|
25
|
+
* still execute every captured Trigger, then throw an aggregate so
|
|
26
|
+
* the delivery adapter retries the event.
|
|
27
|
+
*/
|
|
40
28
|
export declare class RunLifecycleHooksUseCase {
|
|
41
29
|
private readonly triggers;
|
|
42
30
|
private readonly proceduresByName;
|
|
43
31
|
private readonly invoke;
|
|
44
32
|
constructor(triggers: TriggerIndex, proceduresByName: ReadonlyMap<string, ProcedureManifest>, invoke: InvokeProcedureFn);
|
|
45
33
|
run(request: RunLifecycleHookRequest): Promise<void>;
|
|
34
|
+
private resolveCapturedTriggers;
|
|
46
35
|
private runOne;
|
|
47
36
|
}
|
|
48
37
|
//# sourceMappingURL=RunLifecycleHooksUseCase.d.ts.map
|