@aotter/mantle 0.1.3-alpha.5 → 0.1.3-alpha.6
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 +11 -3
- package/dist/codegen/emitMantleModule.d.ts +8 -2
- package/dist/codegen/emitMantleModule.d.ts.map +1 -1
- package/dist/codegen/emitMantleModule.js +42 -12
- package/dist/codegen/emitMantleModule.js.map +1 -1
- package/docs/adr/0014-auth-better-auth-and-multi-tenant-mcp.md +2 -1
- package/docs/handbook/cloudflare/bindings.md +5 -3
- package/docs/handbook/cloudflare/deploy-and-operate.md +4 -0
- package/docs/handbook/reference/surface.md +1 -1
- package/docs/handbook/reference/view.md +4 -1
- package/docs/performance-harness.md +7 -0
- package/docs/spec-only-host-adoption.md +1 -1
- package/package.json +17 -17
package/README.md
CHANGED
|
@@ -16,7 +16,7 @@ npx skills add aotter/mantle --skill install
|
|
|
16
16
|
```
|
|
17
17
|
|
|
18
18
|
To depend on this package in an existing project, pin the exact version
|
|
19
|
-
from `package.json` (currently `0.1.3-alpha.
|
|
19
|
+
from `package.json` (currently `0.1.3-alpha.6`):
|
|
20
20
|
|
|
21
21
|
```bash
|
|
22
22
|
npm install @aotter/mantle
|
|
@@ -35,7 +35,7 @@ subpath. Every sub-package also remains directly installable.
|
|
|
35
35
|
| `@aotter/mantle/spec` (or root) | Manifest grammar, validators, JSON-Schema→Zod, diagnostic catalog (no env / no IO) |
|
|
36
36
|
| `@aotter/mantle/runtime` | Hexagonal runtime: domain ports, use cases, infrastructure helpers (no adapter deps) |
|
|
37
37
|
| `@aotter/mantle/runtime/testing` | Node-only crowded SQLite planner and HTTP sampling helpers |
|
|
38
|
-
| `@aotter/mantle/codegen` | Pure linked manifests → typed runtime module emitter (no IO) |
|
|
38
|
+
| `@aotter/mantle/codegen` | Pure linked manifests or compiled plan → typed runtime module emitter (no IO) |
|
|
39
39
|
| `@aotter/mantle/web` | Optional HTML, Markdown, `llms.txt`, sitemap, SEO, and preview composition (no routes or platform deps) |
|
|
40
40
|
| `@aotter/mantle/admin` | Optional Admin API, auth routes, and static-asset composition |
|
|
41
41
|
| `@aotter/mantle/auth` | Optional host-neutral Better Auth identity; adapters own IP headers and storage bindings |
|
|
@@ -73,7 +73,15 @@ installed, it also syncs the Admin SPA to `public/_mantle/admin/` (excluding
|
|
|
73
73
|
`server.*` package exports). Core-only installs skip that copy. It performs no
|
|
74
74
|
skill sync, package update, styling, provisioning, or deployment.
|
|
75
75
|
The same pure emitter is available from `@aotter/mantle/codegen` when a host
|
|
76
|
-
wants to own parsing and filesystem IO.
|
|
76
|
+
wants to own parsing and filesystem IO. TypeScript-authored manifests can pass
|
|
77
|
+
their already-compiled `plan` directly:
|
|
78
|
+
|
|
79
|
+
```ts
|
|
80
|
+
import { emitMantleModule } from "@aotter/mantle/codegen";
|
|
81
|
+
|
|
82
|
+
const emitted = emitMantleModule({ plan });
|
|
83
|
+
if (!emitted.ok) throw new Error(emitted.diagnostics.map(({ message }) => message).join("\n"));
|
|
84
|
+
```
|
|
77
85
|
|
|
78
86
|
```ts
|
|
79
87
|
import { createMantle } from "../.mantle/generated/mantle.js";
|
|
@@ -1,8 +1,14 @@
|
|
|
1
1
|
import { type Diagnostic, type LinkedManifestSet } from "@aotter/mantle-spec";
|
|
2
|
-
|
|
2
|
+
import { type RuntimePlan } from "@aotter/mantle-runtime";
|
|
3
|
+
export type EmitMantleModuleRequest = {
|
|
3
4
|
readonly linked: LinkedManifestSet;
|
|
5
|
+
readonly plan?: never;
|
|
4
6
|
readonly namespace?: string;
|
|
5
|
-
}
|
|
7
|
+
} | {
|
|
8
|
+
readonly plan: RuntimePlan;
|
|
9
|
+
readonly linked?: never;
|
|
10
|
+
readonly namespace?: string;
|
|
11
|
+
};
|
|
6
12
|
export type EmitMantleModuleResult = {
|
|
7
13
|
readonly ok: true;
|
|
8
14
|
readonly source: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"emitMantleModule.d.ts","sourceRoot":"","sources":["../../src/codegen/emitMantleModule.ts"],"names":[],"mappings":"AAAA,OAAO,EAIL,KAAK,UAAU,EACf,KAAK,iBAAiB,EACvB,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"emitMantleModule.d.ts","sourceRoot":"","sources":["../../src/codegen/emitMantleModule.ts"],"names":[],"mappings":"AAAA,OAAO,EAIL,KAAK,UAAU,EACf,KAAK,iBAAiB,EACvB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAsB,KAAK,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAE9E,MAAM,MAAM,uBAAuB,GAAG;IACpC,QAAQ,CAAC,MAAM,EAAE,iBAAiB,CAAC;IACnC,QAAQ,CAAC,IAAI,CAAC,EAAE,KAAK,CAAC;IACtB,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;CAC7B,GAAG;IACF,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAC;IAC3B,QAAQ,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC;IACxB,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;CAC7B,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAC9B;IAAE,QAAQ,CAAC,EAAE,EAAE,IAAI,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GAC9C;IAAE,QAAQ,CAAC,EAAE,EAAE,KAAK,CAAC;IAAC,QAAQ,CAAC,WAAW,EAAE,SAAS,UAAU,EAAE,CAAA;CAAE,CAAC;AAoBxE,wBAAgB,qBAAqB,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,SAAc,GAAG,IAAI,CAIlF;AAED,6EAA6E;AAC7E,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,uBAAuB,GAAG,sBAAsB,CA6HzF"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { emitTypesFromManifests, manifestTypeIdentifier, validateDiagnostic, } from "@aotter/mantle-spec";
|
|
2
2
|
import { compileRuntimePlan } from "@aotter/mantle-runtime";
|
|
3
3
|
const GENERATED_NAMES = new Set([
|
|
4
4
|
"BootMantleRuntimeArgs",
|
|
@@ -26,18 +26,41 @@ export function assertMantleNamespace(namespace, label = "namespace") {
|
|
|
26
26
|
export function emitMantleModule(request) {
|
|
27
27
|
const namespace = request.namespace ?? "Mantle";
|
|
28
28
|
assertMantleNamespace(namespace);
|
|
29
|
-
const
|
|
29
|
+
const entries = "linked" in request && request.linked
|
|
30
|
+
? request.linked
|
|
31
|
+
: request.plan;
|
|
32
|
+
const collision = findIdentifierCollision(entries);
|
|
30
33
|
if (collision)
|
|
31
34
|
return { ok: false, diagnostics: [collision] };
|
|
32
|
-
|
|
33
|
-
if (
|
|
34
|
-
|
|
35
|
-
|
|
35
|
+
let plan;
|
|
36
|
+
if ("plan" in request && request.plan) {
|
|
37
|
+
plan = request.plan;
|
|
38
|
+
}
|
|
39
|
+
else {
|
|
40
|
+
const compiled = compileRuntimePlan(request.linked);
|
|
41
|
+
if (!compiled.ok)
|
|
42
|
+
return { ok: false, diagnostics: compiled.diagnostics };
|
|
43
|
+
plan = compiled.value;
|
|
44
|
+
}
|
|
36
45
|
const schemas = sortedValues(plan.schemas);
|
|
37
46
|
const views = sortedValues(plan.views);
|
|
38
47
|
const procedures = sortedValues(plan.procedures);
|
|
39
48
|
const triggers = sortedValues(plan.triggers);
|
|
40
|
-
const
|
|
49
|
+
const typeSchemas = "linked" in request && request.linked
|
|
50
|
+
? request.linked.schemas.map(({ manifest }) => manifest)
|
|
51
|
+
: Object.values(plan.schemas).map(({ manifest }) => manifest);
|
|
52
|
+
const typeProcedures = "linked" in request && request.linked
|
|
53
|
+
? request.linked.procedures.map(({ manifest }) => manifest)
|
|
54
|
+
: Object.values(plan.procedures).map(({ manifest }) => manifest);
|
|
55
|
+
const typeViews = "linked" in request && request.linked
|
|
56
|
+
? request.linked.views.map(({ manifest }) => manifest)
|
|
57
|
+
: Object.values(plan.views).map(({ manifest }) => manifest);
|
|
58
|
+
const generatedTypes = emitTypesFromManifests({
|
|
59
|
+
schemas: typeSchemas,
|
|
60
|
+
procedures: typeProcedures,
|
|
61
|
+
views: typeViews,
|
|
62
|
+
namespace,
|
|
63
|
+
}).source
|
|
41
64
|
.replace(/^\/\/ Generated by `mantle-spec emit-types`\. Do not edit by hand\.\n\n/, "")
|
|
42
65
|
.trimEnd();
|
|
43
66
|
const handlerTypes = handlerContractLines(procedures, namespace);
|
|
@@ -215,10 +238,10 @@ function handlerContractLines(procedures, namespace) {
|
|
|
215
238
|
}
|
|
216
239
|
function findIdentifierCollision(linked) {
|
|
217
240
|
const groups = [
|
|
218
|
-
["entries", linked.schemas],
|
|
219
|
-
["views", linked.views],
|
|
220
|
-
["procedures", linked.procedures],
|
|
221
|
-
["triggers", linked.triggers],
|
|
241
|
+
["entries", values(linked.schemas)],
|
|
242
|
+
["views", values(linked.views)],
|
|
243
|
+
["procedures", values(linked.procedures)],
|
|
244
|
+
["triggers", values(linked.triggers)],
|
|
222
245
|
];
|
|
223
246
|
for (const [group, entries] of groups) {
|
|
224
247
|
const seen = new Map();
|
|
@@ -230,7 +253,11 @@ function findIdentifierCollision(linked) {
|
|
|
230
253
|
seen.set(identifier, name);
|
|
231
254
|
continue;
|
|
232
255
|
}
|
|
233
|
-
const
|
|
256
|
+
const authoredSource = "source" in entry ? entry.source : undefined;
|
|
257
|
+
const source = {
|
|
258
|
+
...(authoredSource ?? { sourceId: "runtime-plan", documentIndex: 0 }),
|
|
259
|
+
path: "/metadata/name",
|
|
260
|
+
};
|
|
234
261
|
return validateDiagnostic({
|
|
235
262
|
code: "CODEGEN_IDENTIFIER_COLLISION",
|
|
236
263
|
severity: "error",
|
|
@@ -245,6 +272,9 @@ function findIdentifierCollision(linked) {
|
|
|
245
272
|
}
|
|
246
273
|
return undefined;
|
|
247
274
|
}
|
|
275
|
+
function values(entries) {
|
|
276
|
+
return Array.isArray(entries) ? entries : Object.values(entries);
|
|
277
|
+
}
|
|
248
278
|
function sortedValues(record) {
|
|
249
279
|
return Object.values(record).sort((a, b) => compareText(a.name, b.name));
|
|
250
280
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"emitMantleModule.js","sourceRoot":"","sources":["../../src/codegen/emitMantleModule.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"emitMantleModule.js","sourceRoot":"","sources":["../../src/codegen/emitMantleModule.ts"],"names":[],"mappings":"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"}
|
|
@@ -724,7 +724,8 @@ Cloudflare deployments may pass their deployment-owned KV namespace as
|
|
|
724
724
|
keeping the canonical session row in D1. OTP verification remains D1-backed
|
|
725
725
|
and rate limiting remains isolate-local because Workers KV does not provide
|
|
726
726
|
the atomic consume or increment operations those paths require. Auth keys use
|
|
727
|
-
the `better-auth
|
|
727
|
+
the `better-auth:<store-instance-id>:` prefix so replacing D1 makes the old
|
|
728
|
+
store's cached sessions unreachable while the namespace can still hold Mantle projections.
|
|
728
729
|
Session revocation and user updates use Better Auth's cache invalidation and
|
|
729
730
|
therefore follow Workers KV's propagation model.
|
|
730
731
|
|
|
@@ -141,9 +141,11 @@ origin, the only column Analytics Engine filters cheaply. Columns, in order:
|
|
|
141
141
|
whatever identity the gate established. Its body goes through the same 1 MiB
|
|
142
142
|
bounded reader as an admitted call; a denied request whose body is oversized
|
|
143
143
|
or not JSON is still recorded, with `tool` set to `(unreadable)`, so padding a
|
|
144
|
-
body cannot hide a credential probe. `operationId` is the
|
|
145
|
-
|
|
146
|
-
|
|
144
|
+
body cannot hide a credential probe. `operationId` is the string argument whose
|
|
145
|
+
schema declares `x-mcp-hint: idempotency-key`, falling back to the conventional
|
|
146
|
+
`operationId` argument when the tool declares no hint. It is empty when that
|
|
147
|
+
argument is absent and is resolved the same way on admitted and denied calls.
|
|
148
|
+
Read it with the
|
|
147
149
|
[SQL API](https://developers.cloudflare.com/analytics/analytics-engine/sql-api/):
|
|
148
150
|
|
|
149
151
|
```sql
|
|
@@ -36,6 +36,10 @@ pnpm exec mantle-harness indexes --require-public --format text
|
|
|
36
36
|
|
|
37
37
|
A required path fails on a required Schema-table scan, a temporary sort or an unindexed data-field predicate. Then dry-run and deploy:
|
|
38
38
|
|
|
39
|
+
This local SQLite check intentionally runs without planner statistics. Treat it
|
|
40
|
+
as a conservative preflight; use post-deploy D1 metrics for production cost and
|
|
41
|
+
latency claims.
|
|
42
|
+
|
|
39
43
|
```sh
|
|
40
44
|
wrangler deploy --dry-run
|
|
41
45
|
wrangler deploy
|
|
@@ -165,7 +165,7 @@ The umbrella installs Spec and Runtime only. Web, Admin, Auth, Admin UI, Bun, Ve
|
|
|
165
165
|
| `@aotter/mantle-spec` | `/spec` | Manifest grammar, parser, validators, JSON Schema to zod, site-config contract, diagnostic catalog. No environment, no IO. |
|
|
166
166
|
| `@aotter/mantle-runtime` | `/runtime` | Hexagonal runtime: domain ports, use cases, MCP catalog, storage helpers. No adapter dependencies. |
|
|
167
167
|
| — | `/runtime/testing` | Node-only crowded-SQLite planner and HTTP sampling helpers used by `mantle-harness`. |
|
|
168
|
-
| — | `/codegen` | The pure linked-manifests to typed-module emitter, with no IO. |
|
|
168
|
+
| — | `/codegen` | The pure linked-manifests or compiled-plan to typed-module emitter, with no IO. |
|
|
169
169
|
| `@aotter/mantle-web` | `/web` | HTML, Markdown, `llms.txt`, sitemap, SEO and preview composition. No routes, no platform dependencies. |
|
|
170
170
|
| `@aotter/mantle-admin` | `/admin` | Admin API, auth route mounting, OAuth pages, static-asset composition. |
|
|
171
171
|
| `@aotter/mantle-auth` | `/auth` | Host-neutral Better Auth identity, staff roles, and OAuth 2.1 / MCP authorization. Adapters own IP headers and storage bindings. |
|
|
@@ -154,7 +154,7 @@ One statement, read-only, compiled and bound by the runtime.
|
|
|
154
154
|
Bound params are passed as positional values; caller input is never interpolated into the statement. SQLite JSON functions are available, so `json_each` and `json_extract` can unnest and project array or object members of `data` — the SQL example above does both.
|
|
155
155
|
|
|
156
156
|
> **Warning**
|
|
157
|
-
> `sql` Views are native SQLite.
|
|
157
|
+
> `sql` Views are native SQLite. `mantle validate` prepares each statement against an empty SQLite database containing only the declared Schema tables; an undeclared table, syntax error or unknown column is `INVALID_MANIFEST_ENVELOPE` at `/spec/sql`. Programmatic validation runs the same check when the host supplies `sqlViewSandbox`; without that port it is deferred to the host's admission gate. On a storage adapter that does not support the native dialect the View fails at prepare time with `VIEW_DIALECT_UNSUPPORTED`, naming the dialects that adapter does support.
|
|
158
158
|
|
|
159
159
|
## `params`
|
|
160
160
|
|
|
@@ -205,6 +205,9 @@ Admin applies search and filters before pagination, rejecting a search term or f
|
|
|
205
205
|
|---|---|---|---|
|
|
206
206
|
| `public` | `GET /api/views/<name>`, plus a catalog at `GET /api/views` | `query_view_<segment>` on `/mcp` | Also mounted at `GET /admin/api/views/<name>` and `/export` behind the staff gate |
|
|
207
207
|
| `staff` | `GET /admin/api/views/<name>` and `/admin/api/views/<name>/export` — not mounted publicly | `query_view_<segment>` on `/mcp/staff` | Report sidebar |
|
|
208
|
+
| `internal` | Not mounted | Not mounted | Not listed or mounted |
|
|
209
|
+
|
|
210
|
+
An `internal` View remains in the compiled plan for host code to call through `MantleRuntime.executeView`. It is an exposure policy, not an authorization bypass: `requires` and guards still evaluate against the `ctx` supplied by the host. Shared HTTP caching is invalid because no adapter owns an HTTP response for the View.
|
|
208
211
|
|
|
209
212
|
A `public` declarative View over a `publishing` Schema reads **published rows only**, on every transport. The runtime adds `status = published` to the compiled query whether or not the filter spells it out; writing it is allowed and redundant, and comparing `status` to any other value is rejected at validate time (`VIEW_PUBLIC_STATUS_INVALID`). Staff Views see every status. `operational` Schemas create rows as `published`, so nothing is added. SQL Views (`spec.sql`) are the author's own statement and receive no injected predicate. Decision record: ADR-0025.
|
|
210
213
|
|
|
@@ -55,6 +55,13 @@ data-field predicate/order that does not use a declared Schema index.
|
|
|
55
55
|
Projection alone does not require an index. `mantle validate` remains a pure
|
|
56
56
|
correctness check; no performance grammar or manifest atom was added.
|
|
57
57
|
|
|
58
|
+
The fixture follows each Schema lifecycle: operational rows are immediately
|
|
59
|
+
published, while publishing Schemas contain both draft and published rows. The
|
|
60
|
+
harness deliberately does not run `ANALYZE` or `PRAGMA optimize`, so it cannot
|
|
61
|
+
turn an unprepared production plan into a local pass. This is a conservative
|
|
62
|
+
SQLite preflight, not proof of D1 rows-read, Worker CPU, or IndexedDB behavior;
|
|
63
|
+
measure those on the target backend before making a performance claim.
|
|
64
|
+
|
|
58
65
|
Use the machine report in CI. It includes the compiled SQL and parameters,
|
|
59
66
|
query-plan details, named indexes, scan/sort flags, result count, SQLite
|
|
60
67
|
version, fixture row count, and required-failure summary.
|
|
@@ -6,7 +6,7 @@ Runtime. This Spec-only path is allowed by
|
|
|
6
6
|
[ADR-0019](adr/0019-sealed-manifest-runtime-pipeline.md), not a new adapter,
|
|
7
7
|
manifest grammar, or fork of Core.
|
|
8
8
|
|
|
9
|
-
This recipe targets `0.1.3-alpha.
|
|
9
|
+
This recipe targets `0.1.3-alpha.6`. Pin the package, record the tested version, and
|
|
10
10
|
rerun compatibility checks when upgrading.
|
|
11
11
|
|
|
12
12
|
## What stays with the host
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@aotter/mantle",
|
|
3
|
-
"version": "0.1.3-alpha.
|
|
3
|
+
"version": "0.1.3-alpha.6",
|
|
4
4
|
"description": "Embeddable Mantle Core umbrella with Spec and Runtime; Web, Admin, Auth, Bun, Vercel, Cloudflare, and Admin UI are optional peer packages.",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"homepage": "https://mantle.tools/",
|
|
@@ -83,8 +83,8 @@
|
|
|
83
83
|
"README.md"
|
|
84
84
|
],
|
|
85
85
|
"dependencies": {
|
|
86
|
-
"@aotter/mantle-runtime": "0.1.3-alpha.
|
|
87
|
-
"@aotter/mantle-spec": "0.1.3-alpha.
|
|
86
|
+
"@aotter/mantle-runtime": "0.1.3-alpha.6",
|
|
87
|
+
"@aotter/mantle-spec": "0.1.3-alpha.6"
|
|
88
88
|
},
|
|
89
89
|
"peerDependencies": {
|
|
90
90
|
"aws4fetch": "^1.0.20",
|
|
@@ -92,13 +92,13 @@
|
|
|
92
92
|
"hono": "^4.12.0",
|
|
93
93
|
"@libsql/client": "^0.17.4",
|
|
94
94
|
"zod": "^4.5.0",
|
|
95
|
-
"@aotter/mantle-admin": "0.1.3-alpha.
|
|
96
|
-
"@aotter/mantle-auth": "0.1.3-alpha.
|
|
97
|
-
"@aotter/mantle-
|
|
98
|
-
"@aotter/mantle-
|
|
99
|
-
"@aotter/mantle-vercel": "0.1.3-alpha.
|
|
100
|
-
"@aotter/mantle-cloudflare": "0.1.3-alpha.
|
|
101
|
-
"@aotter/mantle-web": "0.1.3-alpha.
|
|
95
|
+
"@aotter/mantle-admin": "0.1.3-alpha.6",
|
|
96
|
+
"@aotter/mantle-auth": "0.1.3-alpha.6",
|
|
97
|
+
"@aotter/mantle-admin-ui": "0.1.3-alpha.6",
|
|
98
|
+
"@aotter/mantle-bun": "0.1.3-alpha.6",
|
|
99
|
+
"@aotter/mantle-vercel": "0.1.3-alpha.6",
|
|
100
|
+
"@aotter/mantle-cloudflare": "0.1.3-alpha.6",
|
|
101
|
+
"@aotter/mantle-web": "0.1.3-alpha.6"
|
|
102
102
|
},
|
|
103
103
|
"peerDependenciesMeta": {
|
|
104
104
|
"@aotter/mantle-admin": {
|
|
@@ -144,13 +144,13 @@
|
|
|
144
144
|
"typescript": "^6.0.3",
|
|
145
145
|
"vitest": "^4.1.11",
|
|
146
146
|
"zod": "^4.5.4",
|
|
147
|
-
"@aotter/mantle-admin
|
|
148
|
-
"@aotter/mantle-
|
|
149
|
-
"@aotter/mantle-
|
|
150
|
-
"@aotter/mantle-
|
|
151
|
-
"@aotter/mantle-cloudflare": "0.1.3-alpha.
|
|
152
|
-
"@aotter/mantle-web": "0.1.3-alpha.
|
|
153
|
-
"@aotter/mantle-vercel": "0.1.3-alpha.
|
|
147
|
+
"@aotter/mantle-admin": "0.1.3-alpha.6",
|
|
148
|
+
"@aotter/mantle-admin-ui": "0.1.3-alpha.6",
|
|
149
|
+
"@aotter/mantle-auth": "0.1.3-alpha.6",
|
|
150
|
+
"@aotter/mantle-bun": "0.1.3-alpha.6",
|
|
151
|
+
"@aotter/mantle-cloudflare": "0.1.3-alpha.6",
|
|
152
|
+
"@aotter/mantle-web": "0.1.3-alpha.6",
|
|
153
|
+
"@aotter/mantle-vercel": "0.1.3-alpha.6"
|
|
154
154
|
},
|
|
155
155
|
"engines": {
|
|
156
156
|
"node": ">=22"
|