You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
|**cacheTtl**|`never`| optional |[REMOVED]`metadata.cacheTtl` was removed in @objectstack/spec 17 (ADR-0049 enforce-or-remove) — nothing ever read it: `metadata.enableCache` selects the protocol's `getMetaItemCached` read path, which takes no TTL, and no Cache-Control / ETag header was ever built from this value. Delete the key; `metadata.enableCache` is the live switch, and a declarative `api` endpoint's `cacheTtl` is the key that does reach the wire. |
177
177
|**maskObjectFields**|`boolean`| optional (default: `true`) |[ADR-0106 D8] Mask served object schemas to the caller's readable fields |
|**types**|`boolean`| optional (default: `true`) | GET /meta - List all metadata types |
185
-
|**items**|`boolean`| optional (default: `true`) | GET /meta/:type - List items of type |
186
-
|**item**|`boolean`| optional (default: `true`) | GET /meta/:type/:name - Get specific item |
187
-
|**schema**|`never`| optional |[REMOVED]`metadata.endpoints.schema` was removed in @objectstack/spec 17 (ADR-0049 enforce-or-remove) — it gated a route that does not exist: the REST server mounts no `GET /meta/:type/:name/schema`, so `false` removed nothing and `true` added nothing. Delete the key; `endpoints.types` / `items` / `item` are the switches that gate real mounts. |
184
+
|**types**|`boolean`| optional (default: `true`) | Mount the metadata type list — `GET /meta` and `GET /meta/types` (one handler, two paths) |
185
+
|**items**|`boolean`| optional (default: `true`) | Mount the per-type item list — `GET /meta/:type`, and nothing else |
186
+
|**item**|`boolean`| optional (default: `true`) | Mount the whole per-item face — `GET`, `PUT` and `DELETE /meta/:type/:name`, its `/references` and `/layers` reads, the history family (`/history`, `/audit`, `/diff`, `/published`, `/publish`, `/rollback`) and `GET /meta/book/:name/tree`|
187
+
|**maintenance**|`boolean`| optional (default: `true`) | Mount the whole-store maintenance operations — `GET /meta/diagnostics`, `GET /meta/_drafts` and the `POST /meta/_migrate-stored` write door |
188
+
|**schema**|`never`| optional |[REMOVED]`metadata.endpoints.schema` was removed in @objectstack/spec 17 (ADR-0049 enforce-or-remove) — it gated a route that does not exist: the REST server mounts no `GET /meta/:type/:name/schema`, so `false` removed nothing and `true` added nothing. Delete the key; `endpoints.types` / `items` / `item` / `maintenance` are the switches that gate real mounts. |
188
189
189
190
190
191
---
@@ -284,7 +285,7 @@ const result = BatchEndpointsConfigSchema.parse(data);
|**cacheTtl**|`never`| optional |[REMOVED]`metadata.cacheTtl` was removed in @objectstack/spec 17 (ADR-0049 enforce-or-remove) — nothing ever read it: `metadata.enableCache` selects the protocol's `getMetaItemCached` read path, which takes no TTL, and no Cache-Control / ETag header was ever built from this value. Delete the key; `metadata.enableCache` is the live switch, and a declarative `api` endpoint's `cacheTtl` is the key that does reach the wire. |
286
287
|**maskObjectFields**|`boolean`| optional (default: `true`) |[ADR-0106 D8] Mask served object schemas to the caller's readable fields |
0 commit comments