Skip to content

Commit 96dd354

Browse files
committed
chore(spec): regenerate the protocol reference on the merged tree
Discharges the os-regen deferral recorded by the merge commit. Both routed paths are regenerated whole from the merged sources; no byte is hand-edited. Union proof, both directions, per path: content/docs/references/api/package-api.mdx regen vs this branch's side == main's delta (20 lines, identical) regen vs main's side == this branch's (14 lines, identical) content/docs/references/index.mdx regen vs this branch's side == main's delta (12 lines, identical) regen vs main's side == this branch's (6 lines, identical) The two lines excluded from that comparison carry the running schema TOTAL, which a union must move where neither side alone does: base 1533, each side alone 1534, merged tree 1535 — and 1535 is what the generator itself reports for the merged sources, so the total is measured rather than reconciled. main brought DatasetSelection/DatasetCompareTo/DatasetTotals into api/analytics and retired KernelSecurityScanResult/KernelSecurityVulnerability from kernel/plugin-security-advanced. this branch brought FlowFunctionLoweredDeclaration into automation/flow-function. Both survive in the merged output. The ledger's last header counter is the build's own reading of the merged tree: gen:schema measures 565 dropped sites across 205 published schemas, 366 projected, 9 with no JSON form — the first two already matched the union resolved in the merge commit, so only refinementSitesThatDidProject moved. Claude-Session: https://claude.ai/code/session_01LvwGppdonww4zGLWZo5rho Co-authored-by: Claude <noreply@anthropic.com>
1 parent 7ba5f7f commit 96dd354

3 files changed

Lines changed: 19 additions & 19 deletions

File tree

‎content/docs/references/api/package-api.mdx‎

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,7 @@ Installed package row whose manifest is the assembled package body
6464

6565
| Property | Type | Required | Description |
6666
| :--- | :--- | :--- | :--- |
67-
| **id** | `string` | ✅ | Unique package identifier (reverse domain style) |
67+
| **id** | `string` | ✅ | Unique package identifier — must match reverse-domain notation (e.g. com.acme.crm) |
6868
| **namespace** | `string` | optional | Short namespace identifier; also the mandatory prefix of every object name (e.g. "todo" → object names "todo_task", "todo_project") |
6969
| **defaultDatasource** | `string` | optional (default: `"default"`) | Default datasource for all objects in this package |
7070
| **version** | `string` | ✅ | Package version (semantic versioning) |
@@ -257,7 +257,7 @@ Installed package with runtime lifecycle state
257257

258258
| Property | Type | Required | Description |
259259
| :--- | :--- | :--- | :--- |
260-
| **id** | `string` | ✅ | Unique package identifier (reverse domain style) |
260+
| **id** | `string` | ✅ | Unique package identifier — must match reverse-domain notation (e.g. com.acme.crm) |
261261
| **namespace** | `string` | optional | Short namespace identifier; also the mandatory prefix of every object name (e.g. "todo" → object names "todo_task", "todo_project") |
262262
| **defaultDatasource** | `string` | optional (default: `"default"`) | Default datasource for all objects in this package |
263263
| **version** | `string` | ✅ | Package version (semantic versioning) |
@@ -320,7 +320,7 @@ Installed package row whose manifest is the assembled package body
320320

321321
| Property | Type | Required | Description |
322322
| :--- | :--- | :--- | :--- |
323-
| **id** | `string` | ✅ | Unique package identifier (reverse domain style) |
323+
| **id** | `string` | ✅ | Unique package identifier — must match reverse-domain notation (e.g. com.acme.crm) |
324324
| **namespace** | `string` | optional | Short namespace identifier; also the mandatory prefix of every object name (e.g. "todo" → object names "todo_task", "todo_project") |
325325
| **defaultDatasource** | `string` | optional (default: `"default"`) | Default datasource for all objects in this package |
326326
| **version** | `string` | ✅ | Package version (semantic versioning) |
@@ -402,8 +402,8 @@ List installed packages request
402402
| **status** | `Enum<'installed' \| 'disabled' \| 'installing' \| 'upgrading' \| 'uninstalling' \| 'error'>` | optional | Filter by package status |
403403
| **enabled** | `boolean` | optional | Filter by enabled state |
404404
| **type** | `string` | optional | Filter by the installed manifest's `type` — exact match, unmatched values select nothing |
405-
| **limit** | `never` | optional | [REMOVED] `limit` / `cursor` were removed from GET /api/v1/packages in @objectstack/spec 17.5.0 (ADR-0049 enforce-or-remove) — both were declared here and read by nothing: the serving door filters on `status` / `type` and then returns every remaining row, so no page was ever withheld and no continuation token was ever minted. `limit` also declared `.default(50)`, so a reader of the published schema was entitled to believe an unparameterised list is capped at 50 rows; it has never been capped at all, and nothing parses a query string through this schema, so that default has never been stamped onto anything. Delete the key. This route is NOT paginated — it answers the whole installed set, which is a bounded table of tens of rows, and `hasMore` on the response is a constant `false` that is now true by construction. Filter with `status` and `type` instead of asking for a window. A first-class package cursor, if one is ever designed, will be a response-minted opaque token, not this key. |
406-
| **cursor** | `never` | optional | [REMOVED] `limit` / `cursor` were removed from GET /api/v1/packages in @objectstack/spec 17.5.0 (ADR-0049 enforce-or-remove) — both were declared here and read by nothing: the serving door filters on `status` / `type` and then returns every remaining row, so no page was ever withheld and no continuation token was ever minted. `limit` also declared `.default(50)`, so a reader of the published schema was entitled to believe an unparameterised list is capped at 50 rows; it has never been capped at all, and nothing parses a query string through this schema, so that default has never been stamped onto anything. Delete the key. This route is NOT paginated — it answers the whole installed set, which is a bounded table of tens of rows, and `hasMore` on the response is a constant `false` that is now true by construction. Filter with `status` and `type` instead of asking for a window. A first-class package cursor, if one is ever designed, will be a response-minted opaque token, not this key. |
405+
| **limit** | `never` | optional | [REMOVED] `limit` / `cursor` were removed from GET /api/v1/packages in @objectstack/spec 17.5.0 (ADR-0049 enforce-or-remove) — both were declared here and read by nothing: the serving door filters on `status` / `type` / `enabled` and then returns every remaining row, so no page was ever withheld and no continuation token was ever minted. `limit` also declared `.default(50)`, so a reader of the published schema was entitled to believe an unparameterised list is capped at 50 rows; it has never been capped at all, and nothing parses a query string through this schema, so that default has never been stamped onto anything. Delete the key. This route is NOT paginated — it answers the whole installed set, which is a bounded table of tens of rows, and `hasMore` on the response is a constant `false` that is now true by construction. Filter with `status`, `type` and `enabled` instead of asking for a window. A first-class package cursor, if one is ever designed, will be a response-minted opaque token, not this key. |
406+
| **cursor** | `never` | optional | [REMOVED] `limit` / `cursor` were removed from GET /api/v1/packages in @objectstack/spec 17.5.0 (ADR-0049 enforce-or-remove) — both were declared here and read by nothing: the serving door filters on `status` / `type` / `enabled` and then returns every remaining row, so no page was ever withheld and no continuation token was ever minted. `limit` also declared `.default(50)`, so a reader of the published schema was entitled to believe an unparameterised list is capped at 50 rows; it has never been capped at all, and nothing parses a query string through this schema, so that default has never been stamped onto anything. Delete the key. This route is NOT paginated — it answers the whole installed set, which is a bounded table of tens of rows, and `hasMore` on the response is a constant `false` that is now true by construction. Filter with `status`, `type` and `enabled` instead of asking for a window. A first-class package cursor, if one is ever designed, will be a response-minted opaque token, not this key. |
407407

408408

409409
---
@@ -504,7 +504,7 @@ Install package request
504504

505505
| Property | Type | Required | Description |
506506
| :--- | :--- | :--- | :--- |
507-
| **id** | `string` | ✅ | Unique package identifier (reverse domain style) |
507+
| **id** | `string` | ✅ | Unique package identifier — must match reverse-domain notation (e.g. com.acme.crm) |
508508
| **namespace** | `string` | optional | Short namespace identifier; also the mandatory prefix of every object name (e.g. "todo" → object names "todo_task", "todo_project") |
509509
| **defaultDatasource** | `string` | optional (default: `"default"`) | Default datasource for all objects in this package |
510510
| **version** | `string` | ✅ | Package version (semantic versioning) |
@@ -548,7 +548,7 @@ Install package request
548548

549549
| Property | Type | Required | Description |
550550
| :--- | :--- | :--- | :--- |
551-
| **id** | `string` | ✅ | Unique package identifier (reverse domain style) |
551+
| **id** | `string` | ✅ | Unique package identifier — must match reverse-domain notation (e.g. com.acme.crm) |
552552
| **namespace** | `string` | optional | Short namespace identifier; also the mandatory prefix of every object name (e.g. "todo" → object names "todo_task", "todo_project") |
553553
| **defaultDatasource** | `string` | optional (default: `"default"`) | Default datasource for all objects in this package |
554554
| **version** | `string` | ✅ | Package version (semantic versioning) |
@@ -667,7 +667,7 @@ Install package request
667667

668668
| Property | Type | Required | Description |
669669
| :--- | :--- | :--- | :--- |
670-
| **id** | `string` | ✅ | Unique package identifier (reverse domain style) |
670+
| **id** | `string` | ✅ | Unique package identifier — must match reverse-domain notation (e.g. com.acme.crm) |
671671
| **namespace** | `string` | optional | Short namespace identifier; also the mandatory prefix of every object name (e.g. "todo" → object names "todo_task", "todo_project") |
672672
| **defaultDatasource** | `string` | optional (default: `"default"`) | Default datasource for all objects in this package |
673673
| **version** | `string` | ✅ | Package version (semantic versioning) |
@@ -800,7 +800,7 @@ Upgrade package request
800800

801801
| Property | Type | Required | Description |
802802
| :--- | :--- | :--- | :--- |
803-
| **id** | `string` | ✅ | Unique package identifier (reverse domain style) |
803+
| **id** | `string` | ✅ | Unique package identifier — must match reverse-domain notation (e.g. com.acme.crm) |
804804
| **namespace** | `string` | optional | Short namespace identifier; also the mandatory prefix of every object name (e.g. "todo" → object names "todo_task", "todo_project") |
805805
| **defaultDatasource** | `string` | optional (default: `"default"`) | Default datasource for all objects in this package |
806806
| **version** | `string` | ✅ | Package version (semantic versioning) |
@@ -895,7 +895,7 @@ Resolve dependencies request
895895

896896
| Property | Type | Required | Description |
897897
| :--- | :--- | :--- | :--- |
898-
| **id** | `string` | ✅ | Unique package identifier (reverse domain style) |
898+
| **id** | `string` | ✅ | Unique package identifier — must match reverse-domain notation (e.g. com.acme.crm) |
899899
| **namespace** | `string` | optional | Short namespace identifier; also the mandatory prefix of every object name (e.g. "todo" → object names "todo_task", "todo_project") |
900900
| **defaultDatasource** | `string` | optional (default: `"default"`) | Default datasource for all objects in this package |
901901
| **version** | `string` | ✅ | Package version (semantic versioning) |

‎content/docs/references/index.mdx‎

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
---
22
title: Protocol Reference
3-
description: Every schema published by @objectstack/spec — 1534 schemas across 14 protocol modules
3+
description: Every schema published by @objectstack/spec — 1535 schemas across 14 protocol modules
44
---
55

66
{/* ⚠️ AUTO-GENERATED — DO NOT EDIT. Run build-docs.ts to regenerate. Hand-written docs live in the module folders under content/docs/. */}
@@ -20,20 +20,20 @@ counts are sums of the rows they head. Regenerate with
2020
| Module | Pages | Schemas | Description |
2121
| :--- | ---: | ---: | :--- |
2222
| [AI Protocol](/docs/references/ai) | 12 | 68 | Agents, tools, skills, RAG and knowledge sources, model registry, conversations. |
23-
| [API Protocol](/docs/references/api) | 31 | 441 | REST contracts, endpoints, routing, realtime, batch, discovery. |
23+
| [API Protocol](/docs/references/api) | 31 | 444 | REST contracts, endpoints, routing, realtime, batch, discovery. |
2424
| [Automation Protocol](/docs/references/automation) | 14 | 75 | Flows and their nodes, approvals, ETL pipelines, webhooks, state machines, execution records. |
2525
| [Data Protocol](/docs/references/data) | 29 | 175 | Objects, fields, queries, filters, datasources and drivers — the ObjectQL layer. |
2626
| [Identity Protocol](/docs/references/identity) | 5 | 27 | Users and accounts, organizations, positions, SCIM provisioning. |
2727
| [Integration Protocol](/docs/references/integration) | 1 | 24 | The single connector protocol (ADR-0097) — catalog descriptors and provider-bound instances. |
28-
| [Kernel Protocol](/docs/references/kernel) | 30 | 159 | Plugin lifecycle and manifests, capabilities and security, metadata loading, service registry. |
28+
| [Kernel Protocol](/docs/references/kernel) | 30 | 157 | Plugin lifecycle and manifests, capabilities and security, metadata loading, service registry. |
2929
| [Marketplace Protocol](/docs/references/marketplace) | 4 | 30 | The package & marketplace format — package identity and versions, listing, publish, review, search, install, template manifests. |
3030
| [QA Protocol](/docs/references/qa) | 1 | 8 | Declarative test suites — scenarios, steps, actions and assertions. |
3131
| [Security Protocol](/docs/references/security) | 5 | 30 | Permission sets, row-level security, sharing rules, tenancy posture. |
3232
| [Shared Protocol](/docs/references/shared) | 10 | 31 | Primitives used across every protocol — identifiers, HTTP, expressions, error maps, enums. |
3333
| [Studio Protocol](/docs/references/studio) | 3 | 35 | Studio designer metadata — the authoring surfaces for the protocols above. |
3434
| [System Protocol](/docs/references/system) | 34 | 273 | The runtime environment — logging, jobs, cache, metrics, notifications, i18n and compliance. |
3535
| [UI Protocol](/docs/references/ui) | 16 | 158 | Apps, pages, views, dashboards, reports, actions and themes — the ObjectUI layer. |
36-
| **Total** | **195** | **1534** | 14 protocol modules |
36+
| **Total** | **195** | **1535** | 14 protocol modules |
3737

3838
---
3939

@@ -62,13 +62,13 @@ Agents, tools, skills, RAG and knowledge sources, model registry, conversations.
6262

6363
## API Protocol
6464

65-
**Source:** `packages/spec/src/api/` · **Import:** `@objectstack/spec/api` · **31 pages, 441 schemas**
65+
**Source:** `packages/spec/src/api/` · **Import:** `@objectstack/spec/api` · **31 pages, 444 schemas**
6666

6767
REST contracts, endpoints, routing, realtime, batch, discovery.
6868

6969
| File | Schemas |
7070
| :--- | :--- |
71-
| [`analytics.zod.ts`](/docs/references/api/analytics) | `AnalyticsEndpoint`, `AnalyticsMetadataResponse`, `AnalyticsQueryRequest`, `AnalyticsResultResponse`, `AnalyticsSqlResponse`, `GetAnalyticsMetaRequest` |
71+
| [`analytics.zod.ts`](/docs/references/api/analytics) | `AnalyticsEndpoint`, `AnalyticsMetadataResponse`, `AnalyticsQueryRequest`, `AnalyticsResultResponse`, `AnalyticsSqlResponse`, `DatasetCompareTo`, `DatasetSelection`, `DatasetTotals`, `GetAnalyticsMetaRequest` |
7272
| [`auth.zod.ts`](/docs/references/api/auth) | `AuthProvider`, `LoginRequest`, `LoginType`, `RefreshTokenRequest`, `RegisterRequest`, `Session`, `SessionResponse`, `SessionUser`, `UserProfileResponse` |
7373
| [`auth-endpoints.zod.ts`](/docs/references/api/auth-endpoints) | `AuthEndpoint`, `AuthFeaturesConfig`, `AuthProviderInfo`, `DeviceRequestResponse`, `DeviceTokenResponse`, `EmailPasswordConfigPublic`, `GetAuthConfigResponse` |
7474
| [`automation-api.zod.ts`](/docs/references/api/automation-api) | `AutomationApiErrorCode`, `AutomationFlowPathParams`, `AutomationRunPathParams`, `CreateFlowRequest`, `CreateFlowResponse`, `DeleteFlowRequest`, `DeleteFlowResponse`, `FlowSummary`, `GetFlowRequest`, `GetFlowResponse`, `GetRunRequest`, `GetRunResponse`, `ListFlowsRequest`, `ListFlowsResponse`, `ListRunsRequest`, `ListRunsResponse`, `ResumeFailureDetails`, `ToggleFlowRequest`, `ToggleFlowResponse`, `TriggerFlowRequest`, `TriggerFlowResponse`, `UpdateFlowRequest`, `UpdateFlowResponse` |
@@ -197,7 +197,7 @@ The single connector protocol (ADR-0097) — catalog descriptors and provider-bo
197197

198198
## Kernel Protocol
199199

200-
**Source:** `packages/spec/src/kernel/` · **Import:** `@objectstack/spec/kernel` · **30 pages, 159 schemas**
200+
**Source:** `packages/spec/src/kernel/` · **Import:** `@objectstack/spec/kernel` · **30 pages, 157 schemas**
201201

202202
Plugin lifecycle and manifests, capabilities and security, metadata loading, service registry.
203203

@@ -227,7 +227,7 @@ Plugin lifecycle and manifests, capabilities and security, metadata loading, ser
227227
| [`plugin-loading.zod.ts`](/docs/references/kernel/plugin-loading) | `PluginLoadingEvent`, `PluginLoadingState` |
228228
| [`plugin-registry.zod.ts`](/docs/references/kernel/plugin-registry) | `PluginInstallConfig`, `PluginQualityMetrics`, `PluginRegistryEntry`, `PluginSearchFilters`, `PluginStatistics`, `PluginVendor` |
229229
| [`plugin-security.zod.ts`](/docs/references/kernel/plugin-security) | `DependencyGraph`, `DependencyGraphNode`, `PackageDependencyConflict`, `PackageDependencyResolutionResult`, `PluginProvenance`, `PluginTrustScore`, `ResolvedPackageDependency`, `SBOM`, `SBOMEntry`, `SecurityPolicy`, `SecurityScanResult`, `SecurityVulnerability`, `VulnerabilitySeverity` |
230-
| [`plugin-security-advanced.zod.ts`](/docs/references/kernel/plugin-security-advanced) | `KernelSecurityPolicy`, `KernelSecurityScanResult`, `KernelSecurityVulnerability`, `PermissionAction`, `PermissionScope`, `PluginPermission`, `PluginPermissionSet`, `PluginSecurityManifest`, `PluginTrustLevel`, `ResourceType`, `RuntimeConfig`, `SandboxConfig` |
230+
| [`plugin-security-advanced.zod.ts`](/docs/references/kernel/plugin-security-advanced) | `KernelSecurityPolicy`, `PermissionAction`, `PermissionScope`, `PluginPermission`, `PluginPermissionSet`, `PluginSecurityManifest`, `PluginTrustLevel`, `ResourceType`, `RuntimeConfig`, `SandboxConfig` |
231231
| [`plugin-structure.zod.ts`](/docs/references/kernel/plugin-structure) | `OpsDomainModule`, `OpsFilePath`, `OpsPluginStructure` |
232232
| [`plugin-validator.zod.ts`](/docs/references/kernel/plugin-validator) | `PluginMetadata`, `ValidationError`, `ValidationResult`, `ValidationWarning` |
233233
| [`plugin-versioning.zod.ts`](/docs/references/kernel/plugin-versioning) | `BreakingChange`, `CompatibilityLevel`, `CompatibilityMatrixEntry`, `DependencyConflict`, `DeprecationNotice`, `MultiVersionSupport`, `PluginCompatibilityMatrix`, `PluginDependencyResolutionResult`, `PluginVersionMetadata`, `SemanticVersion`, `VersionConstraint` |

‎packages/spec/dropped-refinements.baseline.json‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
"zod": "4.4.3",
55
"publishedSchemasWithDroppedRefinements": 205,
66
"droppedRefinementSites": 565,
7-
"refinementSitesThatDidProject": 357,
7+
"refinementSitesThatDidProject": 366,
88
"refinementSitesWithNoJsonFormToCompare": 9
99
},
1010
"entries": {

0 commit comments

Comments
 (0)