@aotter/mantle-runtime 0.0.11-alpha.11 → 0.0.11-alpha.12
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/dist/domain/port/HandlerRegistry.d.ts +1 -1
- package/dist/domain/service/BuiltinProjector.d.ts +3 -3
- package/dist/domain/service/BuiltinProjector.js +4 -4
- package/dist/domain/service/BuiltinProjector.js.map +1 -1
- package/dist/domain/service/io/EntryWriteGuard.d.ts +1 -1
- package/dist/domain/service/io/EntryWriteGuard.js +5 -5
- package/dist/domain/service/io/EntryWriteGuard.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.js +1 -1
- package/dist/infrastructure/mcp/McpToolCatalog.d.ts +1 -1
- package/dist/infrastructure/mcp/McpToolCatalog.js +5 -5
- package/dist/infrastructure/mcp/McpToolCatalog.js.map +1 -1
- package/dist/infrastructure/persistence/DatabaseSiteConfigRepository.js +1 -1
- package/dist/usecase/content/ListEntriesUseCase.d.ts +1 -1
- package/dist/usecase/content/ListEntriesUseCase.js +1 -1
- package/dist/usecase/dto/index.d.ts +1 -1
- package/dist/usecase/dto/index.js +1 -1
- package/dist/usecase/media/diagnostics.js +1 -1
- package/dist/usecase/media/diagnostics.js.map +1 -1
- package/dist/usecase/procedure/InvokeBuiltinUseCase.d.ts +1 -1
- package/dist/usecase/procedure/InvokeBuiltinUseCase.js +1 -1
- package/dist/usecase/render/RenderEntryLiveUseCase.d.ts +1 -1
- package/dist/usecase/render/RenderEntryLiveUseCase.js +1 -1
- package/package.json +2 -2
|
@@ -7,7 +7,7 @@ import type { AnyHandler, HandlerFn } from "../model/HandlerContext.js";
|
|
|
7
7
|
*
|
|
8
8
|
* The registry is a usecase-level port: use cases (specifically
|
|
9
9
|
* `InvokeProcedureUseCase`) depend on it; the consumer's
|
|
10
|
-
* `
|
|
10
|
+
* `mantleConfig.ts` populates it. Lives here in `domain/port/` (not
|
|
11
11
|
* `usecase/port/`) because the implementation IS the port — there's
|
|
12
12
|
* no separate adapter for it.
|
|
13
13
|
*
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { type SchemaManifest } from "@aotter/mantle-spec";
|
|
2
2
|
import type { HandlerContext } from "../model/HandlerContext.js";
|
|
3
3
|
/**
|
|
4
|
-
* Builtin op input projection + `x-
|
|
4
|
+
* Builtin op input projection + `x-mantle-bind` stamping (POC ADR-0014).
|
|
5
5
|
*
|
|
6
6
|
* Two transforms applied to `Procedure.input` before it lands in
|
|
7
7
|
* `EntryRepository`:
|
|
@@ -13,7 +13,7 @@ import type { HandlerContext } from "../model/HandlerContext.js";
|
|
|
13
13
|
* from the row. They remain available to lifecycle hooks via
|
|
14
14
|
* `ctx.event.originalInput`.
|
|
15
15
|
*
|
|
16
|
-
* 2. **Stamping**: any Schema property carrying `x-
|
|
16
|
+
* 2. **Stamping**: any Schema property carrying `x-mantle-bind: <value>`
|
|
17
17
|
* gets its value computed at write time:
|
|
18
18
|
* - `ctx.user` → `ctx.user?.id ?? null`
|
|
19
19
|
* - `ctx.staff` → `ctx.staff?.id ?? null`
|
|
@@ -43,7 +43,7 @@ export interface ProjectUpdateAndStampArgs {
|
|
|
43
43
|
* Project update data through the same Schema-declared field allowlist
|
|
44
44
|
* while preserving existing server-stamped values. This keeps direct
|
|
45
45
|
* authoring paths (MCP/admin) from accepting arbitrary blob keys, but
|
|
46
|
-
* avoids turning `x-
|
|
46
|
+
* avoids turning `x-mantle-bind: now` fields into "update timestamp"
|
|
47
47
|
* fields on every draft edit.
|
|
48
48
|
*/
|
|
49
49
|
export declare function projectUpdateAndStamp(args: ProjectUpdateAndStampArgs): Record<string, unknown>;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { MANTLE_BIND_KEYWORD, MANTLE_BIND_VALUES, } from "@aotter/mantle-spec";
|
|
2
2
|
export function projectAndStamp(args) {
|
|
3
3
|
const properties = args.schema.spec.schema.properties ?? {};
|
|
4
4
|
const out = {};
|
|
@@ -18,7 +18,7 @@ export function projectAndStamp(args) {
|
|
|
18
18
|
* Project update data through the same Schema-declared field allowlist
|
|
19
19
|
* while preserving existing server-stamped values. This keeps direct
|
|
20
20
|
* authoring paths (MCP/admin) from accepting arbitrary blob keys, but
|
|
21
|
-
* avoids turning `x-
|
|
21
|
+
* avoids turning `x-mantle-bind: now` fields into "update timestamp"
|
|
22
22
|
* fields on every draft edit.
|
|
23
23
|
*/
|
|
24
24
|
export function projectUpdateAndStamp(args) {
|
|
@@ -42,8 +42,8 @@ export function projectUpdateAndStamp(args) {
|
|
|
42
42
|
function bindValueOf(propDef) {
|
|
43
43
|
if (typeof propDef !== "object" || propDef === null)
|
|
44
44
|
return undefined;
|
|
45
|
-
const v = propDef[
|
|
46
|
-
if (typeof v === "string" &&
|
|
45
|
+
const v = propDef[MANTLE_BIND_KEYWORD];
|
|
46
|
+
if (typeof v === "string" && MANTLE_BIND_VALUES.includes(v)) {
|
|
47
47
|
return v;
|
|
48
48
|
}
|
|
49
49
|
return undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BuiltinProjector.js","sourceRoot":"","sources":["../../../src/domain/service/BuiltinProjector.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,
|
|
1
|
+
{"version":3,"file":"BuiltinProjector.js","sourceRoot":"","sources":["../../../src/domain/service/BuiltinProjector.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,mBAAmB,EACnB,kBAAkB,GAGnB,MAAM,qBAAqB,CAAC;AAmC7B,MAAM,UAAU,eAAe,CAAC,IAAyB;IACvD,MAAM,UAAU,GACb,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,MAAmD,CAAC,UAAU,IAAI,EAAE,CAAC;IACzF,MAAM,GAAG,GAA4B,EAAE,CAAC;IACxC,KAAK,MAAM,CAAC,GAAG,EAAE,OAAO,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC;QACxD,MAAM,IAAI,GAAG,WAAW,CAAC,OAAO,CAAC,CAAC;QAClC,IAAI,IAAI,EAAE,CAAC;YACT,GAAG,CAAC,GAAG,CAAC,GAAG,WAAW,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;YACtD,SAAS;QACX,CAAC;QACD,IAAI,GAAG,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YACtB,GAAG,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC7B,CAAC;IACH,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAUD;;;;;;GAMG;AACH,MAAM,UAAU,qBAAqB,CAAC,IAA+B;IACnE,MAAM,UAAU,GACb,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,MAAmD,CAAC,UAAU,IAAI,EAAE,CAAC;IACzF,MAAM,MAAM,GAAG,EAAE,GAAG,IAAI,CAAC,QAAQ,EAAE,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC;IACnD,MAAM,GAAG,GAA4B,EAAE,CAAC;IACxC,KAAK,MAAM,CAAC,GAAG,EAAE,OAAO,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC;QACxD,MAAM,IAAI,GAAG,WAAW,CAAC,OAAO,CAAC,CAAC;QAClC,IAAI,IAAI,EAAE,CAAC;YACT,GAAG,CAAC,GAAG,CAAC,GAAG,GAAG,IAAI,IAAI,CAAC,QAAQ;gBAC7B,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC;gBACpB,CAAC,CAAC,WAAW,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;YAC/C,SAAS;QACX,CAAC;QACD,IAAI,GAAG,IAAI,MAAM,EAAE,CAAC;YAClB,GAAG,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;QACzB,CAAC;IACH,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,SAAS,WAAW,CAAC,OAAgB;IACnC,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,OAAO,KAAK,IAAI;QAAE,OAAO,SAAS,CAAC;IACtE,MAAM,CAAC,GAAI,OAAmC,CAAC,mBAAmB,CAAC,CAAC;IACpE,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAK,kBAAwC,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;QACnF,OAAO,CAAoB,CAAC;IAC9B,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAS,WAAW,CAAC,IAAqB,EAAE,GAAmB,EAAE,QAAgB;IAC/E,QAAQ,IAAI,EAAE,CAAC;QACb,KAAK,UAAU;YACb,OAAO,GAAG,CAAC,IAAI,EAAE,EAAE,IAAI,IAAI,CAAC;QAC9B,KAAK,WAAW;YACd,OAAO,GAAG,CAAC,KAAK,EAAE,EAAE,IAAI,IAAI,CAAC;QAC/B,KAAK,KAAK;YACR,OAAO,QAAQ,CAAC;IACpB,CAAC;AACH,CAAC"}
|
|
@@ -12,7 +12,7 @@ export interface AssertEntryWritableArgs {
|
|
|
12
12
|
/** Shared post-projection guard for every authoring path.
|
|
13
13
|
*
|
|
14
14
|
* MCP, admin/API, and builtin Procedure writes all land here after
|
|
15
|
-
* `x-
|
|
15
|
+
* `x-mantle-bind` stamping, so schema validation and unique-index
|
|
16
16
|
* semantics cannot drift by transport.
|
|
17
17
|
*/
|
|
18
18
|
export declare function assertEntryWritable(args: AssertEntryWritableArgs): Promise<void>;
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { DiagnosticError, EntryDataValidator,
|
|
1
|
+
import { DiagnosticError, EntryDataValidator, MANTLE_BIND_KEYWORD, runtimeDiagnostic, } from "@aotter/mantle-spec";
|
|
2
2
|
/** Shared post-projection guard for every authoring path.
|
|
3
3
|
*
|
|
4
4
|
* MCP, admin/API, and builtin Procedure writes all land here after
|
|
5
|
-
* `x-
|
|
5
|
+
* `x-mantle-bind` stamping, so schema validation and unique-index
|
|
6
6
|
* semantics cannot drift by transport.
|
|
7
7
|
*/
|
|
8
8
|
export async function assertEntryWritable(args) {
|
|
@@ -62,7 +62,7 @@ function dataForValidation(schema, data) {
|
|
|
62
62
|
const properties = schema.spec.schema.properties ?? {};
|
|
63
63
|
let out = null;
|
|
64
64
|
for (const [key, propDef] of Object.entries(properties)) {
|
|
65
|
-
if (!
|
|
65
|
+
if (!isMantleBindProperty(propDef) || data[key] !== null)
|
|
66
66
|
continue;
|
|
67
67
|
if (!out)
|
|
68
68
|
out = { ...data };
|
|
@@ -70,8 +70,8 @@ function dataForValidation(schema, data) {
|
|
|
70
70
|
}
|
|
71
71
|
return out ?? data;
|
|
72
72
|
}
|
|
73
|
-
function
|
|
74
|
-
return typeof propDef === "object" && propDef !== null &&
|
|
73
|
+
function isMantleBindProperty(propDef) {
|
|
74
|
+
return typeof propDef === "object" && propDef !== null && MANTLE_BIND_KEYWORD in propDef;
|
|
75
75
|
}
|
|
76
76
|
async function assertUniqueIndexes(args) {
|
|
77
77
|
const indexes = args.schema.spec.uniqueIndexes ?? [];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EntryWriteGuard.js","sourceRoot":"","sources":["../../../../src/domain/service/io/EntryWriteGuard.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,eAAe,EACf,kBAAkB,EAClB,
|
|
1
|
+
{"version":3,"file":"EntryWriteGuard.js","sourceRoot":"","sources":["../../../../src/domain/service/io/EntryWriteGuard.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* `@aotter/mantle-runtime` — public surface.
|
|
3
3
|
*
|
|
4
4
|
* Adapter-agnostic runtime engine for mantle. Layered per the
|
|
5
|
-
* Aotter clean-architecture convention (mirrors `aotter-
|
|
5
|
+
* Aotter clean-architecture convention (mirrors `aotter-mantle/mantle/core`):
|
|
6
6
|
*
|
|
7
7
|
* domain ← usecase ← infrastructure ← runtime.ts (assembly root)
|
|
8
8
|
*
|
package/dist/index.js
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* `@aotter/mantle-runtime` — public surface.
|
|
3
3
|
*
|
|
4
4
|
* Adapter-agnostic runtime engine for mantle. Layered per the
|
|
5
|
-
* Aotter clean-architecture convention (mirrors `aotter-
|
|
5
|
+
* Aotter clean-architecture convention (mirrors `aotter-mantle/mantle/core`):
|
|
6
6
|
*
|
|
7
7
|
* domain ← usecase ← infrastructure ← runtime.ts (assembly root)
|
|
8
8
|
*
|
|
@@ -13,7 +13,7 @@ import { mcpToolNameSegment } from "../../domain/service/McpToolNaming.js";
|
|
|
13
13
|
* - tool name suffix = `Schema.metadata.name` lowercased + `kebab-`
|
|
14
14
|
* to-`snake_` (`post-translations` → `post_translations`)
|
|
15
15
|
* - input schema = `Schema.spec.schema.properties` minus any
|
|
16
|
-
* property carrying `x-
|
|
16
|
+
* property carrying `x-mantle-bind` (those are server-stamped and
|
|
17
17
|
* the agent must not send them)
|
|
18
18
|
* - `required` = intersection of `Schema.spec.schema.required` with
|
|
19
19
|
* the surviving authoring fields
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { MANTLE_BIND_KEYWORD, } from "@aotter/mantle-spec";
|
|
2
2
|
import { mcpToolNameSegment } from "../../domain/service/McpToolNaming.js";
|
|
3
3
|
export const MEDIA_TOOLS = [
|
|
4
4
|
buildCreateMediaUploadTool(),
|
|
@@ -201,7 +201,7 @@ function describeUpdateTool(schema) {
|
|
|
201
201
|
return `Update a draft entry in '${schema.metadata.name}' with optimistic-concurrency check.`;
|
|
202
202
|
}
|
|
203
203
|
/**
|
|
204
|
-
* Strip server-stamped properties (those carrying `x-
|
|
204
|
+
* Strip server-stamped properties (those carrying `x-mantle-bind`) from
|
|
205
205
|
* the Schema's authoring surface. The agent must not send these — the
|
|
206
206
|
* builtin op projection drops them anyway, but exposing them in the
|
|
207
207
|
* tool schema would invite confusion.
|
|
@@ -215,7 +215,7 @@ function filterAuthoringFields(schema) {
|
|
|
215
215
|
const properties = {};
|
|
216
216
|
const required = [];
|
|
217
217
|
for (const [key, propDef] of Object.entries(props)) {
|
|
218
|
-
if (
|
|
218
|
+
if (hasMantleBind(propDef))
|
|
219
219
|
continue;
|
|
220
220
|
properties[key] = propDef;
|
|
221
221
|
if (originalRequired.includes(key))
|
|
@@ -223,9 +223,9 @@ function filterAuthoringFields(schema) {
|
|
|
223
223
|
}
|
|
224
224
|
return { properties, required };
|
|
225
225
|
}
|
|
226
|
-
function
|
|
226
|
+
function hasMantleBind(propDef) {
|
|
227
227
|
if (typeof propDef !== "object" || propDef === null)
|
|
228
228
|
return false;
|
|
229
|
-
return
|
|
229
|
+
return MANTLE_BIND_KEYWORD in propDef;
|
|
230
230
|
}
|
|
231
231
|
//# sourceMappingURL=McpToolCatalog.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"McpToolCatalog.js","sourceRoot":"","sources":["../../../src/infrastructure/mcp/McpToolCatalog.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,
|
|
1
|
+
{"version":3,"file":"McpToolCatalog.js","sourceRoot":"","sources":["../../../src/infrastructure/mcp/McpToolCatalog.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,mBAAmB,GAGpB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,kBAAkB,EAAE,MAAM,uCAAuC,CAAC;AAmC3E,MAAM,CAAC,MAAM,WAAW,GAAiC;IACvD,0BAA0B,EAAE;IAC5B;QACE,IAAI,EAAE,qBAAqB;QAC3B,WAAW,EACT,mRAAmR;QACrR,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,kCAAkC,EAAE;gBAC7E,GAAG,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gBACvB,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gBAC3B,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,2EAA2E,EAAE;aACvH;YACD,QAAQ,EAAE,CAAC,UAAU,CAAC;SACvB;KACF;CACF,CAAC;AAEF,SAAS,eAAe,CAAC,aAAgC;IACvD,OAAO;QACL,0BAA0B,CAAC,aAAa,CAAC;QACzC,WAAW,CAAC,CAAC,CAAE;KAChB,CAAC;AACJ,CAAC;AAED,SAAS,0BAA0B,CACjC,gBAAmC,EAAE;IAErC,MAAM,OAAO,GAA4B;QACvC,IAAI,EAAE,QAAQ;QACd,WAAW,EAAE,gDAAgD;KAC9D,CAAC;IACF,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC;QAAE,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,aAAa,CAAC,CAAC;IACnE,OAAO;QACL,IAAI,EAAE,qBAAqB;QAC3B,WAAW,EACT,mTAAmT;QACrT,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,wFAAwF,EAAE;gBACnI,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,sGAAsG,EAAE;gBACjJ,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,uHAAuH,EAAE;gBAClK,GAAG,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gBACvB,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gBAC3B,OAAO;aACR;YACD,QAAQ,EAAE,CAAC,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,SAAS,CAAC;SAC1D;KACF,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,MAAM,aAAa,GAAiC;IACzD;QACE,IAAI,EAAE,cAAc;QACpB,WAAW,EAAE,2NAA2N;QACxO,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,UAAU,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gBAC9B,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,OAAO,EAAE,WAAW,EAAE,UAAU,CAAC,EAAE;gBACpE,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gBACzB,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,kEAAkE,EAAE;aAC5G;YACD,QAAQ,EAAE,CAAC,YAAY,CAAC;SACzB;KACF;IACD;QACE,IAAI,EAAE,WAAW;QACjB,WAAW,EAAE,6BAA6B;QAC1C,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE;YACtC,QAAQ,EAAE,CAAC,IAAI,CAAC;SACjB;KACF;IACD;QACE,IAAI,EAAE,iBAAiB;QACvB,WAAW,EAAE,kEAAkE;QAC/E,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE;YACtC,QAAQ,EAAE,CAAC,IAAI,CAAC;SACjB;KACF;IACD;QACE,IAAI,EAAE,iBAAiB;QACvB,WAAW,EAAE,uEAAuE;QACpF,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE;YACtC,QAAQ,EAAE,CAAC,IAAI,CAAC;SACjB;KACF;IACD;QACE,IAAI,EAAE,eAAe;QACrB,WAAW,EAAE,oDAAoD;QACjE,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gBACtB,gBAAgB,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;aACrC;YACD,QAAQ,EAAE,CAAC,IAAI,EAAE,kBAAkB,CAAC;SACrC;KACF;IACD;QACE,IAAI,EAAE,cAAc;QACpB,WAAW,EAAE,wHAAwH;QACrI,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE;YACtC,QAAQ,EAAE,CAAC,IAAI,CAAC;SACjB;KACF;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,mBAAmB,GAAG,eAAe,CAAC;AACnD,MAAM,CAAC,MAAM,mBAAmB,GAAG,eAAe,CAAC;AACnD,MAAM,CAAC,MAAM,iBAAiB,GAAG,aAAa,CAAC;AAwB/C,MAAM,UAAU,mBAAmB,CACjC,OAAsC,EACtC,OAAgC,EAAE;IAElC,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC;IACxC,IAAI,OAAO,KAAK,QAAQ,EAAE,CAAC;QACzB,OAAO,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC;IACpD,CAAC;IACD,MAAM,GAAG,GAAwB,CAAC,GAAG,aAAa,CAAC,CAAC;IACpD,IAAI,IAAI,CAAC,YAAY;QAAE,GAAG,CAAC,IAAI,CAAC,GAAG,eAAe,CAAC,IAAI,CAAC,aAAa,IAAI,EAAE,CAAC,CAAC,CAAC;IAC9E,KAAK,MAAM,CAAC,IAAI,OAAO,EAAE,CAAC;QACxB,GAAG,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC;QAC7B,GAAG,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC;IAC/B,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED;;sBAEsB;AACtB,OAAO,EAAE,kBAAkB,IAAI,eAAe,EAAE,CAAC;AAEjD;oEACoE;AACpE,MAAM,UAAU,wBAAwB,CACtC,QAAgB,EAChB,MAAc;IAEd,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,MAAM,CAAC;QAAE,OAAO,IAAI,CAAC;IAC9C,MAAM,OAAO,GAAG,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAC9C,OAAO,OAAO,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC;AAC/C,CAAC;AAED,SAAS,eAAe,CAAC,MAAsB;IAC7C,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,GAAG,qBAAqB,CAAC,MAAM,CAAC,CAAC;IAC/D,MAAM,WAAW,GAA4B;QAC3C,IAAI,EAAE,QAAQ;QACd,UAAU;KACX,CAAC;IACF,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC;QAAE,WAAW,CAAC,UAAU,CAAC,GAAG,QAAQ,CAAC;IAC5D,OAAO;QACL,IAAI,EAAE,GAAG,mBAAmB,GAAG,kBAAkB,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE;QACzE,WAAW,EAAE,kBAAkB,CAAC,MAAM,CAAC;QACvC,WAAW;KACZ,CAAC;AACJ,CAAC;AAED,SAAS,eAAe,CAAC,MAAsB;IAC7C,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,GAAG,qBAAqB,CAAC,MAAM,CAAC,CAAC;IAC/D,MAAM,WAAW,GAA4B;QAC3C,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,qBAAqB,EAAE;YAC1D,gBAAgB,EAAE;gBAChB,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,+CAA+C;aAC7D;YACD,GAAG,UAAU;SACd;QACD,QAAQ,EAAE,CAAC,IAAI,EAAE,kBAAkB,EAAE,GAAG,QAAQ,CAAC;KAClD,CAAC;IACF,OAAO;QACL,IAAI,EAAE,GAAG,mBAAmB,GAAG,kBAAkB,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE;QACzE,WAAW,EAAE,kBAAkB,CAAC,MAAM,CAAC;QACvC,WAAW;KACZ,CAAC;AACJ,CAAC;AAED,SAAS,kBAAkB,CAAC,IAAkB;IAC5C,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,MAEZ,CAAC;IACd,MAAM,UAAU,GAA4B;QAC1C,GAAG,CAAC,MAAM,EAAE,UAAU,IAAI,EAAE,CAAC;QAC7B,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,+BAA+B,EAAE;QACtE,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,+CAA+C,EAAE;KACvF,CAAC;IACF,MAAM,WAAW,GAA4B;QAC3C,IAAI,EAAE,QAAQ;QACd,UAAU;KACX,CAAC;IACF,IAAI,MAAM,EAAE,QAAQ,EAAE,MAAM;QAAE,WAAW,CAAC,UAAU,CAAC,GAAG,MAAM,CAAC,QAAQ,CAAC;IACxE,OAAO;QACL,IAAI,EAAE,GAAG,iBAAiB,GAAG,kBAAkB,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE;QACrE,WAAW,EAAE,sBAAsB,IAAI,CAAC,QAAQ,CAAC,IAAI,IAAI;QACzD,WAAW;KACZ,CAAC;AACJ,CAAC;AAED,SAAS,kBAAkB,CAAC,MAAsB;IAChD,MAAM,IAAI,GAAG,gCAAgC,MAAM,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC;IACtE,OAAO,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,GAAG,IAAI,IAAI,MAAM,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;AACtF,CAAC;AAED,SAAS,kBAAkB,CAAC,MAAsB;IAChD,OAAO,4BAA4B,MAAM,CAAC,QAAQ,CAAC,IAAI,sCAAsC,CAAC;AAChG,CAAC;AAOD;;;;;;;;GAQG;AACH,SAAS,qBAAqB,CAAC,MAAsB;IACnD,MAAM,KAAK,GACR,MAAM,CAAC,IAAI,CAAC,MAAmD,CAAC,UAAU,IAAI,EAAE,CAAC;IACpF,MAAM,gBAAgB,GACnB,MAAM,CAAC,IAAI,CAAC,MAA2C,CAAC,QAAQ,IAAI,EAAE,CAAC;IAC1E,MAAM,UAAU,GAA4B,EAAE,CAAC;IAC/C,MAAM,QAAQ,GAAa,EAAE,CAAC;IAC9B,KAAK,MAAM,CAAC,GAAG,EAAE,OAAO,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACnD,IAAI,aAAa,CAAC,OAAO,CAAC;YAAE,SAAS;QACrC,UAAU,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC;QAC1B,IAAI,gBAAgB,CAAC,QAAQ,CAAC,GAAG,CAAC;YAAE,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACzD,CAAC;IACD,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,CAAC;AAClC,CAAC;AAED,SAAS,aAAa,CAAC,OAAgB;IACrC,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,OAAO,KAAK,IAAI;QAAE,OAAO,KAAK,CAAC;IAClE,OAAO,mBAAmB,IAAK,OAAmC,CAAC;AACrE,CAAC"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { assertSiteDefaultsCanonical, } from "@aotter/mantle-spec";
|
|
2
2
|
/**
|
|
3
3
|
* `site_config` row read/write. Ships the seed declared by
|
|
4
|
-
* `
|
|
4
|
+
* `mantleConfig.ts > siteDefaults` on first deploy via INSERT … ON
|
|
5
5
|
* CONFLICT DO NOTHING so operator edits are never overwritten on
|
|
6
6
|
* subsequent deploys.
|
|
7
7
|
*
|
|
@@ -18,7 +18,7 @@ import type { ListEntriesRequest, ListEntriesResponse } from "../dto/content/ind
|
|
|
18
18
|
* cursor-aware callers (MCP `list_entries`, admin pagination,
|
|
19
19
|
* long-tail walkers) want. Returns `{ rows, nextCursor? }`.
|
|
20
20
|
*
|
|
21
|
-
* Why split: the
|
|
21
|
+
* Why split: the Mantle thesis says the runtime should carry complexity
|
|
22
22
|
* away from authors. Asking a starter author to write
|
|
23
23
|
* `runtime.listEntries.execute(...).rows.find(...)` for the 99% case
|
|
24
24
|
* (small collection, single page is enough) is the runtime pushing
|
|
@@ -17,7 +17,7 @@ import { schemaUnknownDiagnostic } from "./diagnostics.js";
|
|
|
17
17
|
* cursor-aware callers (MCP `list_entries`, admin pagination,
|
|
18
18
|
* long-tail walkers) want. Returns `{ rows, nextCursor? }`.
|
|
19
19
|
*
|
|
20
|
-
* Why split: the
|
|
20
|
+
* Why split: the Mantle thesis says the runtime should carry complexity
|
|
21
21
|
* away from authors. Asking a starter author to write
|
|
22
22
|
* `runtime.listEntries.execute(...).rows.find(...)` for the 99% case
|
|
23
23
|
* (small collection, single page is enough) is the runtime pushing
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* `usecase/dto/` — request and response shapes use cases consume.
|
|
3
|
-
* Per the Aotter clean-arch convention (mirrors
|
|
3
|
+
* Per the Aotter clean-arch convention (mirrors mantle/core), each use
|
|
4
4
|
* case takes a request DTO + returns a response DTO; no loose
|
|
5
5
|
* primitives.
|
|
6
6
|
*/
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* `usecase/dto/` — request and response shapes use cases consume.
|
|
3
|
-
* Per the Aotter clean-arch convention (mirrors
|
|
3
|
+
* Per the Aotter clean-arch convention (mirrors mantle/core), each use
|
|
4
4
|
* case takes a request DTO + returns a response DTO; no loose
|
|
5
5
|
* primitives.
|
|
6
6
|
*/
|
|
@@ -82,7 +82,7 @@ export function mediaPurposeRejectedDiagnostic(opPath, purpose, declared) {
|
|
|
82
82
|
expected,
|
|
83
83
|
suggestion: declared.length > 0
|
|
84
84
|
? "pass one of the declared purposes; starters own the taxonomy"
|
|
85
|
-
: "add `media.purposes` to `siteDefaults` in
|
|
85
|
+
: "add `media.purposes` to `siteDefaults` in mantleConfig.ts to enable uploads",
|
|
86
86
|
});
|
|
87
87
|
}
|
|
88
88
|
//# sourceMappingURL=diagnostics.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"diagnostics.js","sourceRoot":"","sources":["../../../src/usecase/media/diagnostics.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAmB,MAAM,qBAAqB,CAAC;AAEtE,MAAM,KAAK,GAAG,SAAkB,CAAC;AAEjC,MAAM,UAAU,4BAA4B,CAAC,MAAc;IACzD,OAAO,cAAc,CAAC;QACpB,IAAI,EAAE,sBAAsB;QAC5B,KAAK,EAAE,KAAK;QACZ,QAAQ,EAAE,OAAO;QACjB,IAAI,EAAE,MAAM;QACZ,QAAQ,EAAE,wCAAwC;QAClD,OAAO,EACL,kHAAkH;KACrH,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,2BAA2B,CAAC,MAAc,EAAE,IAAY;IACtE,OAAO,cAAc,CAAC;QACpB,IAAI,EAAE,qBAAqB;QAC3B,KAAK,EAAE,KAAK;QACZ,QAAQ,EAAE,OAAO;QACjB,IAAI,EAAE,MAAM;QACZ,KAAK,EAAE,IAAI;QACX,QAAQ,EAAE,sDAAsD;KACjE,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,0BAA0B,CAAC,MAAc;IACvD,OAAO,cAAc,CAAC;QACpB,IAAI,EAAE,oBAAoB;QAC1B,KAAK,EAAE,KAAK;QACZ,QAAQ,EAAE,OAAO;QACjB,IAAI,EAAE,MAAM;QACZ,KAAK,EAAE,eAAe;QACtB,QAAQ,EAAE,+DAA+D;QACzE,UAAU,EAAE,yDAAyD;KACtE,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,2BAA2B,CACzC,MAAc,EACd,QAAgB,EAChB,QAAgB;IAEhB,OAAO,cAAc,CAAC;QACpB,IAAI,EAAE,qBAAqB;QAC3B,KAAK,EAAE,KAAK;QACZ,QAAQ,EAAE,OAAO;QACjB,IAAI,EAAE,MAAM;QACZ,KAAK,EAAE,QAAQ;QACf,QAAQ,EAAE,eAAe,QAAQ,EAAE;KACpC,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,4BAA4B,CAAC,MAAc,EAAE,QAAgB;IAC3E,OAAO,cAAc,CAAC;QACpB,IAAI,EAAE,sBAAsB;QAC5B,KAAK,EAAE,KAAK;QACZ,QAAQ,EAAE,OAAO;QACjB,IAAI,EAAE,MAAM;QACZ,KAAK,EAAE,QAAQ;QACf,QAAQ,EAAE,4DAA4D;QACtE,UAAU,EAAE,0DAA0D;KACvE,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,6BAA6B,CAAC,MAAc,EAAE,QAAgB;IAC5E,OAAO,cAAc,CAAC;QACpB,IAAI,EAAE,wBAAwB;QAC9B,KAAK,EAAE,KAAK;QACZ,QAAQ,EAAE,OAAO;QACjB,IAAI,EAAE,MAAM;QACZ,KAAK,EAAE,QAAQ;QACf,QAAQ,EAAE,oDAAoD;QAC9D,UAAU,EAAE,mEAAmE;KAChF,CAAC,CAAC;AACL,CAAC;AAED;;;;;0BAK0B;AAC1B,MAAM,UAAU,8BAA8B,CAC5C,MAAc,EACd,OAA2B,EAC3B,QAA2B;IAE3B,MAAM,QAAQ,GACZ,QAAQ,CAAC,MAAM,GAAG,CAAC;QACjB,CAAC,CAAC,cAAc,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG;QAC3D,CAAC,CAAC,iGAAiG,CAAC;IACxG,OAAO,cAAc,CAAC;QACpB,IAAI,EAAE,wBAAwB;QAC9B,KAAK,EAAE,KAAK;QACZ,QAAQ,EAAE,OAAO;QACjB,IAAI,EAAE,MAAM;QACZ,KAAK,EAAE,OAAO,IAAI,WAAW;QAC7B,QAAQ;QACR,UAAU,EACR,QAAQ,CAAC,MAAM,GAAG,CAAC;YACjB,CAAC,CAAC,8DAA8D;YAChE,CAAC,CAAC,
|
|
1
|
+
{"version":3,"file":"diagnostics.js","sourceRoot":"","sources":["../../../src/usecase/media/diagnostics.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAmB,MAAM,qBAAqB,CAAC;AAEtE,MAAM,KAAK,GAAG,SAAkB,CAAC;AAEjC,MAAM,UAAU,4BAA4B,CAAC,MAAc;IACzD,OAAO,cAAc,CAAC;QACpB,IAAI,EAAE,sBAAsB;QAC5B,KAAK,EAAE,KAAK;QACZ,QAAQ,EAAE,OAAO;QACjB,IAAI,EAAE,MAAM;QACZ,QAAQ,EAAE,wCAAwC;QAClD,OAAO,EACL,kHAAkH;KACrH,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,2BAA2B,CAAC,MAAc,EAAE,IAAY;IACtE,OAAO,cAAc,CAAC;QACpB,IAAI,EAAE,qBAAqB;QAC3B,KAAK,EAAE,KAAK;QACZ,QAAQ,EAAE,OAAO;QACjB,IAAI,EAAE,MAAM;QACZ,KAAK,EAAE,IAAI;QACX,QAAQ,EAAE,sDAAsD;KACjE,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,0BAA0B,CAAC,MAAc;IACvD,OAAO,cAAc,CAAC;QACpB,IAAI,EAAE,oBAAoB;QAC1B,KAAK,EAAE,KAAK;QACZ,QAAQ,EAAE,OAAO;QACjB,IAAI,EAAE,MAAM;QACZ,KAAK,EAAE,eAAe;QACtB,QAAQ,EAAE,+DAA+D;QACzE,UAAU,EAAE,yDAAyD;KACtE,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,2BAA2B,CACzC,MAAc,EACd,QAAgB,EAChB,QAAgB;IAEhB,OAAO,cAAc,CAAC;QACpB,IAAI,EAAE,qBAAqB;QAC3B,KAAK,EAAE,KAAK;QACZ,QAAQ,EAAE,OAAO;QACjB,IAAI,EAAE,MAAM;QACZ,KAAK,EAAE,QAAQ;QACf,QAAQ,EAAE,eAAe,QAAQ,EAAE;KACpC,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,4BAA4B,CAAC,MAAc,EAAE,QAAgB;IAC3E,OAAO,cAAc,CAAC;QACpB,IAAI,EAAE,sBAAsB;QAC5B,KAAK,EAAE,KAAK;QACZ,QAAQ,EAAE,OAAO;QACjB,IAAI,EAAE,MAAM;QACZ,KAAK,EAAE,QAAQ;QACf,QAAQ,EAAE,4DAA4D;QACtE,UAAU,EAAE,0DAA0D;KACvE,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,6BAA6B,CAAC,MAAc,EAAE,QAAgB;IAC5E,OAAO,cAAc,CAAC;QACpB,IAAI,EAAE,wBAAwB;QAC9B,KAAK,EAAE,KAAK;QACZ,QAAQ,EAAE,OAAO;QACjB,IAAI,EAAE,MAAM;QACZ,KAAK,EAAE,QAAQ;QACf,QAAQ,EAAE,oDAAoD;QAC9D,UAAU,EAAE,mEAAmE;KAChF,CAAC,CAAC;AACL,CAAC;AAED;;;;;0BAK0B;AAC1B,MAAM,UAAU,8BAA8B,CAC5C,MAAc,EACd,OAA2B,EAC3B,QAA2B;IAE3B,MAAM,QAAQ,GACZ,QAAQ,CAAC,MAAM,GAAG,CAAC;QACjB,CAAC,CAAC,cAAc,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG;QAC3D,CAAC,CAAC,iGAAiG,CAAC;IACxG,OAAO,cAAc,CAAC;QACpB,IAAI,EAAE,wBAAwB;QAC9B,KAAK,EAAE,KAAK;QACZ,QAAQ,EAAE,OAAO;QACjB,IAAI,EAAE,MAAM;QACZ,KAAK,EAAE,OAAO,IAAI,WAAW;QAC7B,QAAQ;QACR,UAAU,EACR,QAAQ,CAAC,MAAM,GAAG,CAAC;YACjB,CAAC,CAAC,8DAA8D;YAChE,CAAC,CAAC,6EAA6E;KACpF,CAAC,CAAC;AACL,CAAC"}
|
|
@@ -11,7 +11,7 @@ import type { InvokeBuiltinRequest } from "../dto/procedure/index.js";
|
|
|
11
11
|
* - `create` → `entries.create({ ..., status: 'draft' })` with a
|
|
12
12
|
* generated id. Input is projected through
|
|
13
13
|
* `domain/service/BuiltinProjector.projectAndStamp` so only
|
|
14
|
-
* Schema-declared keys land in `data` and `x-
|
|
14
|
+
* Schema-declared keys land in `data` and `x-mantle-bind` fields are
|
|
15
15
|
* server-stamped from `ctx`.
|
|
16
16
|
* - `update` → `entries.update`. Caller supplies `id` +
|
|
17
17
|
* `expectedVersion` in the input; OCC enforced at the chokepoint.
|
|
@@ -8,7 +8,7 @@ import { assertEntryWritable } from "../../domain/service/io/EntryWriteGuard.js"
|
|
|
8
8
|
* - `create` → `entries.create({ ..., status: 'draft' })` with a
|
|
9
9
|
* generated id. Input is projected through
|
|
10
10
|
* `domain/service/BuiltinProjector.projectAndStamp` so only
|
|
11
|
-
* Schema-declared keys land in `data` and `x-
|
|
11
|
+
* Schema-declared keys land in `data` and `x-mantle-bind` fields are
|
|
12
12
|
* server-stamped from `ctx`.
|
|
13
13
|
* - `update` → `entries.update`. Caller supplies `id` +
|
|
14
14
|
* `expectedVersion` in the input; OCC enforced at the chokepoint.
|
|
@@ -6,7 +6,7 @@ import type { RenderEntryLiveRequest } from "../dto/render/RenderEntryLiveReques
|
|
|
6
6
|
import { type SeoComposer } from "../../domain/service/EntrySeoSupport.js";
|
|
7
7
|
/**
|
|
8
8
|
* Render a single entry from current DB state. Used by adapter live-
|
|
9
|
-
* dev routes (`
|
|
9
|
+
* dev routes (`MANTLE_LOCAL_DEV=1`) to bypass the KV cache and pick up
|
|
10
10
|
* template / chrome edits without re-running the publish pipeline.
|
|
11
11
|
*
|
|
12
12
|
* When the runtime was built with a `publicPathResolver`, the SEO/AEO
|
|
@@ -4,7 +4,7 @@ import { renderEntryHtml } from "../../domain/service/HtmlRenderer.js";
|
|
|
4
4
|
import { composeSeoIfPathed, } from "../../domain/service/EntrySeoSupport.js";
|
|
5
5
|
/**
|
|
6
6
|
* Render a single entry from current DB state. Used by adapter live-
|
|
7
|
-
* dev routes (`
|
|
7
|
+
* dev routes (`MANTLE_LOCAL_DEV=1`) to bypass the KV cache and pick up
|
|
8
8
|
* template / chrome edits without re-running the publish pipeline.
|
|
9
9
|
*
|
|
10
10
|
* When the runtime was built with a `publicPathResolver`, the SEO/AEO
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@aotter/mantle-runtime",
|
|
3
|
-
"version": "0.0.11-alpha.
|
|
3
|
+
"version": "0.0.11-alpha.12",
|
|
4
4
|
"description": "Runtime engine for mantle: dispatcher + entry-writer + view executor + content-ops + render pipeline + auth + MCP. Defines adapter-agnostic ports. MUST NOT import D1Database / KVNamespace types.",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"homepage": "https://github.com/aotter/mantle/tree/develop/packages/mantle-runtime",
|
|
@@ -29,7 +29,7 @@
|
|
|
29
29
|
"README.md"
|
|
30
30
|
],
|
|
31
31
|
"dependencies": {
|
|
32
|
-
"@aotter/mantle-spec": "0.0.11-alpha.
|
|
32
|
+
"@aotter/mantle-spec": "0.0.11-alpha.12"
|
|
33
33
|
},
|
|
34
34
|
"peerDependencies": {
|
|
35
35
|
"zod": "^4.0.0"
|