Skip to content

Commit 33d6c5c

Browse files
committed
feat: Refactor ObjectOS structure and update object registry references
1 parent 4c2128a commit 33d6c5c

31 files changed

Lines changed: 83 additions & 279 deletions

packages/objectos/package.json

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
{
22
"name": "@objectstack/objectos",
33
"version": "0.1.0",
4-
"description": "ObjectOS - System Runtime Object Definitions",
4+
"description": "ObjectOS runtime metadata object registry",
55
"license": "Apache-2.0",
66
"main": "dist/index.js",
77
"types": "dist/index.d.ts",
@@ -10,11 +10,6 @@
1010
"types": "./dist/index.d.ts",
1111
"import": "./dist/index.mjs",
1212
"require": "./dist/index.js"
13-
},
14-
"./objects": {
15-
"types": "./dist/objects/index.d.ts",
16-
"import": "./dist/objects/index.mjs",
17-
"require": "./dist/objects/index.js"
1813
}
1914
},
2015
"files": [

packages/objectos/src/index.ts

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -3,16 +3,16 @@
33
/**
44
* @objectstack/objectos
55
*
6-
* ObjectOS - System Runtime Object Definitions
6+
* ObjectOS - Runtime metadata object registry
77
*
8-
* This package contains the core system object definitions that form
9-
* the foundation of the ObjectStack platform. These objects represent
10-
* the metadata layer itself (objects, views, flows, agents, etc.) as
11-
* queryable data.
8+
* This package contains the runtime registry for ObjectOS metadata-layer
9+
* objects. Concrete platform object definitions live in
10+
* `@objectstack/platform-objects`.
1211
*
1312
* ## Architecture
1413
* - Protocol Layer: `@objectstack/spec` — Zod schemas (ObjectSchema, ViewSchema)
15-
* - Runtime Layer: `@objectstack/objectos` — Concrete system objects (SysObject, SysView)
14+
* - Platform Object Layer: `@objectstack/platform-objects` — Concrete platform objects
15+
* - Runtime Layer: `@objectstack/objectos` — Runtime-facing object registry
1616
* - Service Layer: `@objectstack/metadata` — Metadata management service
1717
*
1818
* ## Usage
@@ -37,5 +37,4 @@
3737
* @module @objectstack/objectos
3838
*/
3939

40-
export * from './objects';
4140
export * from './registry';

packages/objectos/src/objects/index.ts

Lines changed: 0 additions & 3 deletions
This file was deleted.

packages/objectos/src/objects/sys-metadata.object.test.ts

Lines changed: 0 additions & 26 deletions
This file was deleted.
Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
// Copyright (c) 2025 ObjectStack. Licensed under the Apache-2.0 license.
2+
3+
import { describe, expect, it } from 'vitest';
4+
import {
5+
getSystemObject,
6+
getSystemObjectNames,
7+
getSystemObjects,
8+
SystemObjects,
9+
SysMetadata,
10+
} from './registry';
11+
12+
describe('ObjectOS system object registry', () => {
13+
it('registers metadata-layer platform objects by canonical name', () => {
14+
expect(getSystemObjectNames()).toEqual([
15+
'sys_object',
16+
'sys_view',
17+
'sys_flow',
18+
'sys_agent',
19+
'sys_tool',
20+
]);
21+
expect(getSystemObject('sys_object')?.name).toBe('sys_object');
22+
expect(getSystemObjects()).toHaveLength(5);
23+
});
24+
25+
it('keeps sys_metadata separate from the queryable registry', () => {
26+
expect(SysMetadata.name).toBe('sys_metadata');
27+
expect(SystemObjects).not.toHaveProperty('sys_metadata');
28+
});
29+
});

packages/objectos/src/registry.ts

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ import {
88
SysAgent,
99
SysTool,
1010
SysFlow,
11-
} from './objects';
11+
} from '@objectstack/platform-objects/metadata';
1212

1313
/**
1414
* System Object Registry
@@ -94,4 +94,3 @@ export function getSystemObject(name: string): ServiceObject | undefined {
9494
export function getSystemObjectNames(): string[] {
9595
return Object.keys(SystemObjects);
9696
}
97-

packages/objectos/tsup.config.ts

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,6 @@ import { defineConfig } from 'tsup';
55
export default defineConfig({
66
entry: {
77
index: 'src/index.ts',
8-
'objects/index': 'src/objects/index.ts',
98
},
109
format: ['cjs', 'esm'],
1110
dts: true,

packages/platform-objects/src/platform-objects.test.ts

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,6 @@ import {
2525
SysProject,
2626
SysProjectCredential,
2727
SysProjectMember,
28-
SysTenantDatabase,
2928
} from './tenant/index.js';
3029
import {
3130
SysAgent,
@@ -61,7 +60,6 @@ const systemObjects = [
6160
['SysPackage', SysPackage, 'sys_package'],
6261
['SysPackageVersion', SysPackageVersion, 'sys_package_version'],
6362
['SysPackageInstallation', SysPackageInstallation, 'sys_package_installation'],
64-
['SysTenantDatabase', SysTenantDatabase, 'sys_tenant_database'],
6563
['SysMetadata', SysMetadata, 'sys_metadata'],
6664
['SysMetadataHistoryObject', SysMetadataHistoryObject, 'sys_metadata_history'],
6765
['SysObject', SysObject, 'sys_object'],

packages/platform-objects/src/tenant/index.ts

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,3 @@ export * from './sys-app.object.js';
1111
export * from './sys-package.object.js';
1212
export * from './sys-package-version.object.js';
1313
export * from './sys-package-installation.object.js';
14-
15-
// v4.x deprecation shim — removed in v5.0
16-
export * from './sys-tenant-database.object.js';

packages/platform-objects/src/tenant/sys-tenant-database.object.ts

Lines changed: 0 additions & 145 deletions
This file was deleted.

0 commit comments

Comments
 (0)