@objectstack/spec 1.0.5 → 1.0.7
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/ai/index.d.mts +1 -1
- package/dist/ai/index.d.ts +1 -1
- package/dist/api/index.d.mts +2 -2
- package/dist/api/index.d.ts +2 -2
- package/dist/api/index.js +1880 -1784
- package/dist/api/index.js.map +1 -1
- package/dist/api/index.mjs +1880 -1784
- package/dist/api/index.mjs.map +1 -1
- package/dist/automation/index.d.mts +1 -1
- package/dist/automation/index.d.ts +1 -1
- package/dist/contracts/index.d.mts +3 -3
- package/dist/contracts/index.d.ts +3 -3
- package/dist/data/index.d.mts +3 -3
- package/dist/data/index.d.ts +3 -3
- package/dist/data/index.js +5 -1
- package/dist/data/index.js.map +1 -1
- package/dist/data/index.mjs +5 -1
- package/dist/data/index.mjs.map +1 -1
- package/dist/{driver.zod-YoPJRbBk.d.mts → driver.zod-BOM_Etco.d.mts} +164 -3467
- package/dist/{driver.zod-B0DitHQ2.d.ts → driver.zod-lfi00zVT.d.ts} +164 -3467
- package/dist/{field.zod-Da5S-hAo.d.mts → field.zod-B_lzVsuC.d.ts} +871 -1
- package/dist/{field.zod-Da5S-hAo.d.ts → field.zod-dhbAw0SA.d.mts} +871 -1
- package/dist/hub/index.d.mts +1 -1
- package/dist/hub/index.d.ts +1 -1
- package/dist/hub/index.js +796 -707
- package/dist/hub/index.js.map +1 -1
- package/dist/hub/index.mjs +796 -707
- package/dist/hub/index.mjs.map +1 -1
- package/dist/{index-DSLwt2M_.d.ts → index-C67cfwmW.d.ts} +6 -355
- package/dist/{index-BMqjuD4e.d.ts → index-CH5zloR3.d.ts} +2 -2
- package/dist/{index-CIBOjiZG.d.mts → index-CU4m6noq.d.mts} +2 -2
- package/dist/{index-BeFe7iF_.d.mts → index-CyognKSZ.d.ts} +268 -1565
- package/dist/{index-CFaoWA3X.d.ts → index-DE_lJ11p.d.mts} +268 -1565
- package/dist/{index-C34qbBQr.d.mts → index-DLcySG7U.d.mts} +262 -241
- package/dist/{index-C34qbBQr.d.ts → index-DLcySG7U.d.ts} +262 -241
- package/dist/{index-BYtinxqf.d.mts → index-Dp7GFJ8V.d.mts} +6 -355
- package/dist/{index-D8XFyX0x.d.mts → index-Os7lItRe.d.mts} +108 -108
- package/dist/{index-D8XFyX0x.d.ts → index-Os7lItRe.d.ts} +108 -108
- package/dist/{index-CsF8m5Wj.d.mts → index-l6WIlmOD.d.mts} +39 -39
- package/dist/{index-CsF8m5Wj.d.ts → index-l6WIlmOD.d.ts} +39 -39
- package/dist/index.d.mts +162 -162
- package/dist/index.d.ts +162 -162
- package/dist/index.js +714 -672
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +714 -672
- package/dist/index.mjs.map +1 -1
- package/dist/kernel/index.d.mts +1 -1
- package/dist/kernel/index.d.ts +1 -1
- package/dist/kernel/index.js +705 -669
- package/dist/kernel/index.js.map +1 -1
- package/dist/kernel/index.mjs +704 -669
- package/dist/kernel/index.mjs.map +1 -1
- package/json-schema/api/CompileManifestResponse.json +6 -2
- package/json-schema/api/ExportRequest.json +419 -758
- package/json-schema/api/FindDataRequest.json +9 -0
- package/json-schema/data/JoinNode.json +9 -0
- package/json-schema/data/Mapping.json +9 -0
- package/json-schema/data/Query.json +9 -0
- package/json-schema/hub/ComposerResponse.json +6 -2
- package/json-schema/kernel/Manifest.json +6 -2
- package/json-schema/kernel/Plugin.json +28 -0
- package/package.json +1 -1
- package/dist/{index-iGrpxfqq.d.mts → index-D12rNohm.d.mts} +1 -1
- package/dist/{index-iGrpxfqq.d.ts → index-D12rNohm.d.ts} +1 -1
package/dist/index.js
CHANGED
|
@@ -534,7 +534,7 @@ var FullTextSearchSchema = import_zod5.z.object({
|
|
|
534
534
|
language: import_zod5.z.string().optional().describe('Language for text analysis (e.g., "en", "zh", "es")'),
|
|
535
535
|
highlight: import_zod5.z.boolean().optional().default(false).describe("Enable search result highlighting")
|
|
536
536
|
});
|
|
537
|
-
var
|
|
537
|
+
var BaseQuerySchema = import_zod5.z.object({
|
|
538
538
|
/** Target Entity */
|
|
539
539
|
object: import_zod5.z.string().describe("Object name (e.g. account)"),
|
|
540
540
|
/** Select Clause */
|
|
@@ -548,6 +548,7 @@ var QuerySchema = import_zod5.z.object({
|
|
|
548
548
|
/** Pagination */
|
|
549
549
|
limit: import_zod5.z.number().optional().describe("Max records to return (LIMIT)"),
|
|
550
550
|
offset: import_zod5.z.number().optional().describe("Records to skip (OFFSET)"),
|
|
551
|
+
top: import_zod5.z.number().optional().describe("Alias for limit (OData compatibility)"),
|
|
551
552
|
cursor: import_zod5.z.record(import_zod5.z.string(), import_zod5.z.any()).optional().describe("Cursor for keyset pagination"),
|
|
552
553
|
/** Joins */
|
|
553
554
|
joins: import_zod5.z.array(JoinNodeSchema).optional().describe("Explicit Table Joins"),
|
|
@@ -562,6 +563,9 @@ var QuerySchema = import_zod5.z.object({
|
|
|
562
563
|
/** Subquery flag */
|
|
563
564
|
distinct: import_zod5.z.boolean().optional().describe("SELECT DISTINCT flag")
|
|
564
565
|
});
|
|
566
|
+
var QuerySchema = BaseQuerySchema.extend({
|
|
567
|
+
expand: import_zod5.z.lazy(() => import_zod5.z.record(import_zod5.z.string(), QuerySchema)).optional().describe("Recursive relation loading (nested queries)")
|
|
568
|
+
});
|
|
565
569
|
|
|
566
570
|
// src/data/object.zod.ts
|
|
567
571
|
var import_zod10 = require("zod");
|
|
@@ -9544,6 +9548,7 @@ var kernel_exports = {};
|
|
|
9544
9548
|
__export(kernel_exports, {
|
|
9545
9549
|
AdvancedPluginLifecycleConfigSchema: () => AdvancedPluginLifecycleConfigSchema,
|
|
9546
9550
|
BreakingChangeSchema: () => BreakingChangeSchema,
|
|
9551
|
+
CORE_PLUGIN_TYPES: () => CORE_PLUGIN_TYPES,
|
|
9547
9552
|
CapabilityConformanceLevelSchema: () => CapabilityConformanceLevelSchema,
|
|
9548
9553
|
CompatibilityLevelSchema: () => CompatibilityLevelSchema,
|
|
9549
9554
|
CompatibilityMatrixEntrySchema: () => CompatibilityMatrixEntrySchema,
|
|
@@ -10172,7 +10177,7 @@ var FeatureFlag = Object.assign(FeatureFlagSchema, {
|
|
|
10172
10177
|
});
|
|
10173
10178
|
|
|
10174
10179
|
// src/kernel/manifest.zod.ts
|
|
10175
|
-
var
|
|
10180
|
+
var import_zod63 = require("zod");
|
|
10176
10181
|
|
|
10177
10182
|
// src/kernel/plugin-capability.zod.ts
|
|
10178
10183
|
var import_zod60 = require("zod");
|
|
@@ -10987,8 +10992,90 @@ var PluginLoadingStateSchema = import_zod61.z.object({
|
|
|
10987
10992
|
retryCount: import_zod61.z.number().int().min(0).default(0)
|
|
10988
10993
|
}).describe("Plugin loading state");
|
|
10989
10994
|
|
|
10995
|
+
// src/kernel/plugin.zod.ts
|
|
10996
|
+
var import_zod62 = require("zod");
|
|
10997
|
+
var PluginContextSchema = import_zod62.z.object({
|
|
10998
|
+
ql: import_zod62.z.object({
|
|
10999
|
+
object: import_zod62.z.function().returns(import_zod62.z.any()),
|
|
11000
|
+
// Return any to allow method chaining
|
|
11001
|
+
query: import_zod62.z.function().returns(import_zod62.z.any())
|
|
11002
|
+
}).passthrough().describe("ObjectQL Engine Interface"),
|
|
11003
|
+
os: import_zod62.z.object({
|
|
11004
|
+
getCurrentUser: import_zod62.z.function().returns(import_zod62.z.any()),
|
|
11005
|
+
getConfig: import_zod62.z.function().returns(import_zod62.z.any())
|
|
11006
|
+
}).passthrough().describe("ObjectStack Kernel Interface"),
|
|
11007
|
+
logger: import_zod62.z.object({
|
|
11008
|
+
debug: import_zod62.z.function().returns(import_zod62.z.void()),
|
|
11009
|
+
info: import_zod62.z.function().returns(import_zod62.z.void()),
|
|
11010
|
+
warn: import_zod62.z.function().returns(import_zod62.z.void()),
|
|
11011
|
+
error: import_zod62.z.function().returns(import_zod62.z.void())
|
|
11012
|
+
}).passthrough().describe("Logger Interface"),
|
|
11013
|
+
storage: import_zod62.z.object({
|
|
11014
|
+
get: import_zod62.z.function().returns(import_zod62.z.any()),
|
|
11015
|
+
set: import_zod62.z.function().returns(import_zod62.z.promise(import_zod62.z.void())),
|
|
11016
|
+
delete: import_zod62.z.function().returns(import_zod62.z.promise(import_zod62.z.void()))
|
|
11017
|
+
}).passthrough().describe("Storage Interface"),
|
|
11018
|
+
i18n: import_zod62.z.object({
|
|
11019
|
+
t: import_zod62.z.function().returns(import_zod62.z.string()),
|
|
11020
|
+
getLocale: import_zod62.z.function().returns(import_zod62.z.string())
|
|
11021
|
+
}).passthrough().describe("Internationalization Interface"),
|
|
11022
|
+
metadata: import_zod62.z.record(import_zod62.z.string(), import_zod62.z.any()),
|
|
11023
|
+
events: import_zod62.z.record(import_zod62.z.string(), import_zod62.z.any()),
|
|
11024
|
+
app: import_zod62.z.object({
|
|
11025
|
+
router: import_zod62.z.object({
|
|
11026
|
+
get: import_zod62.z.function().returns(import_zod62.z.any()),
|
|
11027
|
+
post: import_zod62.z.function().returns(import_zod62.z.any()),
|
|
11028
|
+
use: import_zod62.z.function().returns(import_zod62.z.any())
|
|
11029
|
+
}).passthrough()
|
|
11030
|
+
}).passthrough().describe("App Framework Interface"),
|
|
11031
|
+
drivers: import_zod62.z.object({
|
|
11032
|
+
register: import_zod62.z.function().returns(import_zod62.z.void())
|
|
11033
|
+
}).passthrough().describe("Driver Registry")
|
|
11034
|
+
});
|
|
11035
|
+
var PluginLifecycleSchema = import_zod62.z.object({
|
|
11036
|
+
onInstall: import_zod62.z.function().args(PluginContextSchema).returns(import_zod62.z.promise(import_zod62.z.void())).optional(),
|
|
11037
|
+
onEnable: import_zod62.z.function().args(PluginContextSchema).returns(import_zod62.z.promise(import_zod62.z.void())).optional(),
|
|
11038
|
+
onDisable: import_zod62.z.function().args(PluginContextSchema).returns(import_zod62.z.promise(import_zod62.z.void())).optional(),
|
|
11039
|
+
onUninstall: import_zod62.z.function().args(PluginContextSchema).returns(import_zod62.z.promise(import_zod62.z.void())).optional(),
|
|
11040
|
+
onUpgrade: import_zod62.z.function().args(PluginContextSchema, import_zod62.z.string(), import_zod62.z.string()).returns(import_zod62.z.promise(import_zod62.z.void())).optional()
|
|
11041
|
+
});
|
|
11042
|
+
var CORE_PLUGIN_TYPES = [
|
|
11043
|
+
"ui",
|
|
11044
|
+
// Frontend: Serves static assets/SPA (e.g. Console, Studio)
|
|
11045
|
+
"driver",
|
|
11046
|
+
// Connectivity: Database or Storage adapters (e.g. SQL, S3)
|
|
11047
|
+
"server",
|
|
11048
|
+
// Protocol: HTTP/RPC Servers (e.g. Hono, GraphQL)
|
|
11049
|
+
"app",
|
|
11050
|
+
// Business: Vertical Solution Bundle (Metadata + Logic)
|
|
11051
|
+
"theme",
|
|
11052
|
+
// Appearance: UI Overrides & CSS Variables
|
|
11053
|
+
"agent",
|
|
11054
|
+
// AI: Autonomous Agent & Tool Definitions
|
|
11055
|
+
"objectql"
|
|
11056
|
+
// Core: ObjectQL Engine Data Provider
|
|
11057
|
+
];
|
|
11058
|
+
var PluginSchema = PluginLifecycleSchema.extend({
|
|
11059
|
+
id: import_zod62.z.string().min(1).optional().describe("Unique Plugin ID (e.g. com.example.crm)"),
|
|
11060
|
+
type: import_zod62.z.enum([
|
|
11061
|
+
"standard",
|
|
11062
|
+
// Default: General purpose backend logic (Service, Hook, etc.)
|
|
11063
|
+
...CORE_PLUGIN_TYPES
|
|
11064
|
+
]).default("standard").optional().describe("Plugin Type categorization for runtime behavior"),
|
|
11065
|
+
staticPath: import_zod62.z.string().optional().describe('Absolute path to static assets (Required for type="ui-plugin")'),
|
|
11066
|
+
slug: import_zod62.z.string().regex(/^[a-z0-9-_]+$/).optional().describe('URL path segment (Required for type="ui-plugin")'),
|
|
11067
|
+
default: import_zod62.z.boolean().optional().describe('Serve at root path (Only one "ui-plugin" can be default)'),
|
|
11068
|
+
version: import_zod62.z.string().regex(/^\d+\.\d+\.\d+$/).optional().describe("Semantic Version"),
|
|
11069
|
+
description: import_zod62.z.string().optional(),
|
|
11070
|
+
author: import_zod62.z.string().optional(),
|
|
11071
|
+
homepage: import_zod62.z.string().url().optional()
|
|
11072
|
+
});
|
|
11073
|
+
function definePlugin(config) {
|
|
11074
|
+
return config;
|
|
11075
|
+
}
|
|
11076
|
+
|
|
10990
11077
|
// src/kernel/manifest.zod.ts
|
|
10991
|
-
var ManifestSchema =
|
|
11078
|
+
var ManifestSchema = import_zod63.z.object({
|
|
10992
11079
|
/**
|
|
10993
11080
|
* Unique package identifier using reverse domain notation.
|
|
10994
11081
|
* Must be unique across the entire ecosystem.
|
|
@@ -10996,65 +11083,75 @@ var ManifestSchema = import_zod62.z.object({
|
|
|
10996
11083
|
* @example "com.steedos.crm"
|
|
10997
11084
|
* @example "org.apache.superset"
|
|
10998
11085
|
*/
|
|
10999
|
-
id:
|
|
11086
|
+
id: import_zod63.z.string().describe("Unique package identifier (reverse domain style)"),
|
|
11000
11087
|
/**
|
|
11001
11088
|
* Package version following semantic versioning (major.minor.patch).
|
|
11002
11089
|
*
|
|
11003
11090
|
* @example "1.0.0"
|
|
11004
11091
|
* @example "2.1.0-beta.1"
|
|
11005
11092
|
*/
|
|
11006
|
-
version:
|
|
11093
|
+
version: import_zod63.z.string().regex(/^\d+\.\d+\.\d+$/).describe("Package version (semantic versioning)"),
|
|
11007
11094
|
/**
|
|
11008
11095
|
* Type of the package in the ObjectStack ecosystem.
|
|
11009
|
-
* -
|
|
11010
|
-
* -
|
|
11011
|
-
* - driver:
|
|
11096
|
+
* - plugin: General-purpose functionality extension (Runtime: standard)
|
|
11097
|
+
* - app: Business application package
|
|
11098
|
+
* - driver: Connectivity adapter
|
|
11099
|
+
* - server: Protocol gateway (Hono, GraphQL)
|
|
11100
|
+
* - ui: Frontend package (Static/SPA)
|
|
11101
|
+
* - theme: UI Theme
|
|
11102
|
+
* - agent: AI Agent
|
|
11012
11103
|
* - module: Reusable code library/shared module
|
|
11013
|
-
* - objectql: Core engine
|
|
11014
|
-
* -
|
|
11015
|
-
* - adapter: Host adapter - Runtime container (Express, Hono, Fastify, Serverless)
|
|
11104
|
+
* - objectql: Core engine
|
|
11105
|
+
* - adapter: Host adapter (Express, Fastify)
|
|
11016
11106
|
*/
|
|
11017
|
-
type:
|
|
11107
|
+
type: import_zod63.z.enum([
|
|
11108
|
+
"plugin",
|
|
11109
|
+
...CORE_PLUGIN_TYPES,
|
|
11110
|
+
"module",
|
|
11111
|
+
"gateway",
|
|
11112
|
+
// Deprecated: use 'server'
|
|
11113
|
+
"adapter"
|
|
11114
|
+
]).describe("Type of package"),
|
|
11018
11115
|
/**
|
|
11019
11116
|
* Human-readable name of the package.
|
|
11020
11117
|
* Displayed in the UI for users.
|
|
11021
11118
|
*
|
|
11022
11119
|
* @example "Project Management"
|
|
11023
11120
|
*/
|
|
11024
|
-
name:
|
|
11121
|
+
name: import_zod63.z.string().describe("Human-readable package name"),
|
|
11025
11122
|
/**
|
|
11026
11123
|
* Brief description of the package functionality.
|
|
11027
11124
|
* Displayed in the marketplace and plugin manager.
|
|
11028
11125
|
*/
|
|
11029
|
-
description:
|
|
11126
|
+
description: import_zod63.z.string().optional().describe("Package description"),
|
|
11030
11127
|
/**
|
|
11031
11128
|
* Array of permission strings that the package requires.
|
|
11032
11129
|
* These form the "Scope" requested by the package at installation.
|
|
11033
11130
|
*
|
|
11034
11131
|
* @example ["system.user.read", "system.data.write"]
|
|
11035
11132
|
*/
|
|
11036
|
-
permissions:
|
|
11133
|
+
permissions: import_zod63.z.array(import_zod63.z.string()).optional().describe("Array of required permission strings"),
|
|
11037
11134
|
/**
|
|
11038
11135
|
* Glob patterns specifying ObjectQL schemas files.
|
|
11039
11136
|
* Matches `*.object.yml` or `*.object.ts` files to load business objects.
|
|
11040
11137
|
*
|
|
11041
11138
|
* @example ["./src/objects/*.object.yml"]
|
|
11042
11139
|
*/
|
|
11043
|
-
objects:
|
|
11140
|
+
objects: import_zod63.z.array(import_zod63.z.string()).optional().describe("Glob patterns for ObjectQL schemas files"),
|
|
11044
11141
|
/**
|
|
11045
11142
|
* Defines system level DataSources.
|
|
11046
11143
|
* Matches `*.datasource.yml` files.
|
|
11047
11144
|
*
|
|
11048
11145
|
* @example ["./src/datasources/*.datasource.mongo.yml"]
|
|
11049
11146
|
*/
|
|
11050
|
-
datasources:
|
|
11147
|
+
datasources: import_zod63.z.array(import_zod63.z.string()).optional().describe("Glob patterns for Datasource definitions"),
|
|
11051
11148
|
/**
|
|
11052
11149
|
* Package Dependencies.
|
|
11053
11150
|
* Map of package IDs to version requirements.
|
|
11054
11151
|
*
|
|
11055
11152
|
* @example { "@steedos/plugin-auth": "^2.0.0" }
|
|
11056
11153
|
*/
|
|
11057
|
-
dependencies:
|
|
11154
|
+
dependencies: import_zod63.z.record(import_zod63.z.string(), import_zod63.z.string()).optional().describe("Package dependencies"),
|
|
11058
11155
|
/**
|
|
11059
11156
|
* Plugin Configuration Schema.
|
|
11060
11157
|
* Defines the settings this plugin exposes to the user via UI/ENV.
|
|
@@ -11069,109 +11166,109 @@ var ManifestSchema = import_zod62.z.object({
|
|
|
11069
11166
|
* }
|
|
11070
11167
|
* }
|
|
11071
11168
|
*/
|
|
11072
|
-
configuration:
|
|
11073
|
-
title:
|
|
11074
|
-
properties:
|
|
11075
|
-
type:
|
|
11076
|
-
default:
|
|
11077
|
-
description:
|
|
11078
|
-
required:
|
|
11079
|
-
secret:
|
|
11080
|
-
enum:
|
|
11169
|
+
configuration: import_zod63.z.object({
|
|
11170
|
+
title: import_zod63.z.string().optional(),
|
|
11171
|
+
properties: import_zod63.z.record(import_zod63.z.string(), import_zod63.z.object({
|
|
11172
|
+
type: import_zod63.z.enum(["string", "number", "boolean", "array", "object"]).describe("Data type of the setting"),
|
|
11173
|
+
default: import_zod63.z.any().optional().describe("Default value"),
|
|
11174
|
+
description: import_zod63.z.string().optional().describe("Tooltip description"),
|
|
11175
|
+
required: import_zod63.z.boolean().optional().describe("Is this setting required?"),
|
|
11176
|
+
secret: import_zod63.z.boolean().optional().describe("If true, value is encrypted/masked (e.g. API Keys)"),
|
|
11177
|
+
enum: import_zod63.z.array(import_zod63.z.string()).optional().describe("Allowed values for select inputs")
|
|
11081
11178
|
})).describe("Map of configuration keys to their definitions")
|
|
11082
11179
|
}).optional().describe("Plugin configuration settings"),
|
|
11083
11180
|
/**
|
|
11084
11181
|
* Contribution Points (VS Code Style).
|
|
11085
11182
|
* formalized way to extend the platform capabilities.
|
|
11086
11183
|
*/
|
|
11087
|
-
contributes:
|
|
11184
|
+
contributes: import_zod63.z.object({
|
|
11088
11185
|
/**
|
|
11089
11186
|
* Register new Metadata Kinds (CRDs).
|
|
11090
11187
|
* Enables the system to parse and validate new file types.
|
|
11091
11188
|
* Example: Registering a BI plugin to handle *.report.ts
|
|
11092
11189
|
*/
|
|
11093
|
-
kinds:
|
|
11094
|
-
id:
|
|
11095
|
-
globs:
|
|
11096
|
-
description:
|
|
11190
|
+
kinds: import_zod63.z.array(import_zod63.z.object({
|
|
11191
|
+
id: import_zod63.z.string().describe('The generic identifier of the kind (e.g., "sys.bi.report")'),
|
|
11192
|
+
globs: import_zod63.z.array(import_zod63.z.string()).describe('File patterns to watch (e.g., ["**/*.report.ts"])'),
|
|
11193
|
+
description: import_zod63.z.string().optional().describe("Description of what this kind represents")
|
|
11097
11194
|
})).optional().describe("New Metadata Types to recognize"),
|
|
11098
11195
|
/**
|
|
11099
11196
|
* Register System Hooks.
|
|
11100
11197
|
* Declares that this plugin listens to specific system events.
|
|
11101
11198
|
*/
|
|
11102
|
-
events:
|
|
11199
|
+
events: import_zod63.z.array(import_zod63.z.string()).optional().describe("Events this plugin listens to"),
|
|
11103
11200
|
/**
|
|
11104
11201
|
* Register UI Menus.
|
|
11105
11202
|
*/
|
|
11106
|
-
menus:
|
|
11107
|
-
id:
|
|
11108
|
-
label:
|
|
11109
|
-
command:
|
|
11203
|
+
menus: import_zod63.z.record(import_zod63.z.string(), import_zod63.z.array(import_zod63.z.object({
|
|
11204
|
+
id: import_zod63.z.string(),
|
|
11205
|
+
label: import_zod63.z.string(),
|
|
11206
|
+
command: import_zod63.z.string().optional()
|
|
11110
11207
|
}))).optional().describe("UI Menu contributions"),
|
|
11111
11208
|
/**
|
|
11112
11209
|
* Register Custom Themes.
|
|
11113
11210
|
*/
|
|
11114
|
-
themes:
|
|
11115
|
-
id:
|
|
11116
|
-
label:
|
|
11117
|
-
path:
|
|
11211
|
+
themes: import_zod63.z.array(import_zod63.z.object({
|
|
11212
|
+
id: import_zod63.z.string(),
|
|
11213
|
+
label: import_zod63.z.string(),
|
|
11214
|
+
path: import_zod63.z.string()
|
|
11118
11215
|
})).optional().describe("Theme contributions"),
|
|
11119
11216
|
/**
|
|
11120
11217
|
* Register Translations.
|
|
11121
11218
|
* Path to translation files (e.g. "locales/en.json").
|
|
11122
11219
|
*/
|
|
11123
|
-
translations:
|
|
11124
|
-
locale:
|
|
11125
|
-
path:
|
|
11220
|
+
translations: import_zod63.z.array(import_zod63.z.object({
|
|
11221
|
+
locale: import_zod63.z.string(),
|
|
11222
|
+
path: import_zod63.z.string()
|
|
11126
11223
|
})).optional().describe("Translation resources"),
|
|
11127
11224
|
/**
|
|
11128
11225
|
* Register Server Actions.
|
|
11129
11226
|
* Invocable functions exposed to Flows or API.
|
|
11130
11227
|
*/
|
|
11131
|
-
actions:
|
|
11132
|
-
name:
|
|
11133
|
-
label:
|
|
11134
|
-
description:
|
|
11135
|
-
input:
|
|
11136
|
-
output:
|
|
11228
|
+
actions: import_zod63.z.array(import_zod63.z.object({
|
|
11229
|
+
name: import_zod63.z.string().describe("Unique action name"),
|
|
11230
|
+
label: import_zod63.z.string().optional(),
|
|
11231
|
+
description: import_zod63.z.string().optional(),
|
|
11232
|
+
input: import_zod63.z.any().optional().describe("Input validation schema"),
|
|
11233
|
+
output: import_zod63.z.any().optional().describe("Output schema")
|
|
11137
11234
|
})).optional().describe("Exposed server actions"),
|
|
11138
11235
|
/**
|
|
11139
11236
|
* Register Storage Drivers.
|
|
11140
11237
|
* Enables connecting to new types of datasources.
|
|
11141
11238
|
*/
|
|
11142
|
-
drivers:
|
|
11143
|
-
id:
|
|
11144
|
-
label:
|
|
11145
|
-
description:
|
|
11239
|
+
drivers: import_zod63.z.array(import_zod63.z.object({
|
|
11240
|
+
id: import_zod63.z.string().describe('Driver unique identifier (e.g. "postgres", "mongo")'),
|
|
11241
|
+
label: import_zod63.z.string().describe("Human readable name"),
|
|
11242
|
+
description: import_zod63.z.string().optional()
|
|
11146
11243
|
})).optional().describe("Driver contributions"),
|
|
11147
11244
|
/**
|
|
11148
11245
|
* Register Custom Field Types.
|
|
11149
11246
|
* Extends the data model with new widget types.
|
|
11150
11247
|
*/
|
|
11151
|
-
fieldTypes:
|
|
11152
|
-
name:
|
|
11153
|
-
label:
|
|
11154
|
-
description:
|
|
11248
|
+
fieldTypes: import_zod63.z.array(import_zod63.z.object({
|
|
11249
|
+
name: import_zod63.z.string().describe('Unique field type name (e.g. "vector")'),
|
|
11250
|
+
label: import_zod63.z.string().describe("Display label"),
|
|
11251
|
+
description: import_zod63.z.string().optional()
|
|
11155
11252
|
})).optional().describe("Field Type contributions"),
|
|
11156
11253
|
/**
|
|
11157
11254
|
* Register Custom Query Operators/Functions.
|
|
11158
11255
|
* Extends ObjectQL with new functions (e.g. distance()).
|
|
11159
11256
|
*/
|
|
11160
|
-
functions:
|
|
11161
|
-
name:
|
|
11162
|
-
description:
|
|
11163
|
-
args:
|
|
11164
|
-
returnType:
|
|
11257
|
+
functions: import_zod63.z.array(import_zod63.z.object({
|
|
11258
|
+
name: import_zod63.z.string().describe('Function name (e.g. "distance")'),
|
|
11259
|
+
description: import_zod63.z.string().optional(),
|
|
11260
|
+
args: import_zod63.z.array(import_zod63.z.string()).optional().describe("Argument types"),
|
|
11261
|
+
returnType: import_zod63.z.string().optional()
|
|
11165
11262
|
})).optional().describe("Query Function contributions")
|
|
11166
11263
|
}).optional().describe("Platform contributions"),
|
|
11167
11264
|
/**
|
|
11168
11265
|
* Initial data seeding configuration.
|
|
11169
11266
|
* Defines default records to be inserted when the package is installed.
|
|
11170
11267
|
*/
|
|
11171
|
-
data:
|
|
11172
|
-
object:
|
|
11173
|
-
records:
|
|
11174
|
-
mode:
|
|
11268
|
+
data: import_zod63.z.array(import_zod63.z.object({
|
|
11269
|
+
object: import_zod63.z.string().describe("Target Object Name"),
|
|
11270
|
+
records: import_zod63.z.array(import_zod63.z.record(import_zod63.z.string(), import_zod63.z.any())).describe("List of records to insert"),
|
|
11271
|
+
mode: import_zod63.z.enum(["upsert", "insert", "ignore"]).default("upsert").describe("Seeding mode")
|
|
11175
11272
|
})).optional().describe("Initial seed data"),
|
|
11176
11273
|
/**
|
|
11177
11274
|
* Plugin Capability Manifest.
|
|
@@ -11183,7 +11280,7 @@ var ManifestSchema = import_zod62.z.object({
|
|
|
11183
11280
|
* Extension points contributed by this package.
|
|
11184
11281
|
* Allows packages to extend UI components, add functionality, etc.
|
|
11185
11282
|
*/
|
|
11186
|
-
extensions:
|
|
11283
|
+
extensions: import_zod63.z.record(import_zod63.z.string(), import_zod63.z.any()).optional().describe("Extension points and contributions"),
|
|
11187
11284
|
/**
|
|
11188
11285
|
* Plugin Loading Configuration.
|
|
11189
11286
|
* Configures how the plugin is loaded, initialized, and managed at runtime.
|
|
@@ -11193,22 +11290,22 @@ var ManifestSchema = import_zod62.z.object({
|
|
|
11193
11290
|
});
|
|
11194
11291
|
|
|
11195
11292
|
// src/kernel/metadata-loader.zod.ts
|
|
11196
|
-
var
|
|
11197
|
-
var MetadataFormatSchema2 =
|
|
11198
|
-
var MetadataStatsSchema2 =
|
|
11293
|
+
var import_zod64 = require("zod");
|
|
11294
|
+
var MetadataFormatSchema2 = import_zod64.z.enum(["json", "yaml", "typescript", "javascript"]);
|
|
11295
|
+
var MetadataStatsSchema2 = import_zod64.z.object({
|
|
11199
11296
|
/**
|
|
11200
11297
|
* Size of the metadata file in bytes
|
|
11201
11298
|
*/
|
|
11202
|
-
size:
|
|
11299
|
+
size: import_zod64.z.number().int().min(0).describe("File size in bytes"),
|
|
11203
11300
|
/**
|
|
11204
11301
|
* Last modification timestamp
|
|
11205
11302
|
*/
|
|
11206
|
-
modifiedAt:
|
|
11303
|
+
modifiedAt: import_zod64.z.date().describe("Last modified date"),
|
|
11207
11304
|
/**
|
|
11208
11305
|
* ETag for cache validation
|
|
11209
11306
|
* Used for conditional requests (If-None-Match header)
|
|
11210
11307
|
*/
|
|
11211
|
-
etag:
|
|
11308
|
+
etag: import_zod64.z.string().describe("Entity tag for cache validation"),
|
|
11212
11309
|
/**
|
|
11213
11310
|
* Serialization format
|
|
11214
11311
|
*/
|
|
@@ -11216,50 +11313,50 @@ var MetadataStatsSchema2 = import_zod63.z.object({
|
|
|
11216
11313
|
/**
|
|
11217
11314
|
* Full file path (if applicable)
|
|
11218
11315
|
*/
|
|
11219
|
-
path:
|
|
11316
|
+
path: import_zod64.z.string().optional().describe("File system path"),
|
|
11220
11317
|
/**
|
|
11221
11318
|
* Additional metadata provider-specific properties
|
|
11222
11319
|
*/
|
|
11223
|
-
metadata:
|
|
11320
|
+
metadata: import_zod64.z.record(import_zod64.z.string(), import_zod64.z.any()).optional().describe("Provider-specific metadata")
|
|
11224
11321
|
});
|
|
11225
|
-
var MetadataLoadOptionsSchema2 =
|
|
11322
|
+
var MetadataLoadOptionsSchema2 = import_zod64.z.object({
|
|
11226
11323
|
/**
|
|
11227
11324
|
* Glob patterns to match files
|
|
11228
11325
|
* Example: ["**\/*.object.ts", "**\/*.object.json"]
|
|
11229
11326
|
*/
|
|
11230
|
-
patterns:
|
|
11327
|
+
patterns: import_zod64.z.array(import_zod64.z.string()).optional().describe("File glob patterns"),
|
|
11231
11328
|
/**
|
|
11232
11329
|
* If-None-Match header for conditional loading
|
|
11233
11330
|
* Only load if ETag doesn't match
|
|
11234
11331
|
*/
|
|
11235
|
-
ifNoneMatch:
|
|
11332
|
+
ifNoneMatch: import_zod64.z.string().optional().describe("ETag for conditional request"),
|
|
11236
11333
|
/**
|
|
11237
11334
|
* If-Modified-Since header for conditional loading
|
|
11238
11335
|
*/
|
|
11239
|
-
ifModifiedSince:
|
|
11336
|
+
ifModifiedSince: import_zod64.z.date().optional().describe("Only load if modified after this date"),
|
|
11240
11337
|
/**
|
|
11241
11338
|
* Whether to validate against Zod schema
|
|
11242
11339
|
*/
|
|
11243
|
-
validate:
|
|
11340
|
+
validate: import_zod64.z.boolean().default(true).describe("Validate against schema"),
|
|
11244
11341
|
/**
|
|
11245
11342
|
* Whether to use cache if available
|
|
11246
11343
|
*/
|
|
11247
|
-
useCache:
|
|
11344
|
+
useCache: import_zod64.z.boolean().default(true).describe("Enable caching"),
|
|
11248
11345
|
/**
|
|
11249
11346
|
* Filter function (serialized as string)
|
|
11250
11347
|
* Example: "(item) => item.name.startsWith('sys_')"
|
|
11251
11348
|
*/
|
|
11252
|
-
filter:
|
|
11349
|
+
filter: import_zod64.z.string().optional().describe("Filter predicate as string"),
|
|
11253
11350
|
/**
|
|
11254
11351
|
* Maximum number of items to load
|
|
11255
11352
|
*/
|
|
11256
|
-
limit:
|
|
11353
|
+
limit: import_zod64.z.number().int().min(1).optional().describe("Maximum items to load"),
|
|
11257
11354
|
/**
|
|
11258
11355
|
* Recursively search subdirectories
|
|
11259
11356
|
*/
|
|
11260
|
-
recursive:
|
|
11357
|
+
recursive: import_zod64.z.boolean().default(true).describe("Search subdirectories")
|
|
11261
11358
|
});
|
|
11262
|
-
var MetadataSaveOptionsSchema2 =
|
|
11359
|
+
var MetadataSaveOptionsSchema2 = import_zod64.z.object({
|
|
11263
11360
|
/**
|
|
11264
11361
|
* Serialization format
|
|
11265
11362
|
*/
|
|
@@ -11267,41 +11364,41 @@ var MetadataSaveOptionsSchema2 = import_zod63.z.object({
|
|
|
11267
11364
|
/**
|
|
11268
11365
|
* Prettify output (formatted with indentation)
|
|
11269
11366
|
*/
|
|
11270
|
-
prettify:
|
|
11367
|
+
prettify: import_zod64.z.boolean().default(true).describe("Format with indentation"),
|
|
11271
11368
|
/**
|
|
11272
11369
|
* Indentation size (spaces)
|
|
11273
11370
|
*/
|
|
11274
|
-
indent:
|
|
11371
|
+
indent: import_zod64.z.number().int().min(0).max(8).default(2).describe("Indentation spaces"),
|
|
11275
11372
|
/**
|
|
11276
11373
|
* Sort object keys alphabetically
|
|
11277
11374
|
*/
|
|
11278
|
-
sortKeys:
|
|
11375
|
+
sortKeys: import_zod64.z.boolean().default(false).describe("Sort object keys"),
|
|
11279
11376
|
/**
|
|
11280
11377
|
* Include default values in output
|
|
11281
11378
|
*/
|
|
11282
|
-
includeDefaults:
|
|
11379
|
+
includeDefaults: import_zod64.z.boolean().default(false).describe("Include default values"),
|
|
11283
11380
|
/**
|
|
11284
11381
|
* Create backup before overwriting
|
|
11285
11382
|
*/
|
|
11286
|
-
backup:
|
|
11383
|
+
backup: import_zod64.z.boolean().default(false).describe("Create backup file"),
|
|
11287
11384
|
/**
|
|
11288
11385
|
* Overwrite if exists
|
|
11289
11386
|
*/
|
|
11290
|
-
overwrite:
|
|
11387
|
+
overwrite: import_zod64.z.boolean().default(true).describe("Overwrite existing file"),
|
|
11291
11388
|
/**
|
|
11292
11389
|
* Atomic write (write to temp file, then rename)
|
|
11293
11390
|
*/
|
|
11294
|
-
atomic:
|
|
11391
|
+
atomic: import_zod64.z.boolean().default(true).describe("Use atomic write operation"),
|
|
11295
11392
|
/**
|
|
11296
11393
|
* Custom file path (overrides default location)
|
|
11297
11394
|
*/
|
|
11298
|
-
path:
|
|
11395
|
+
path: import_zod64.z.string().optional().describe("Custom output path")
|
|
11299
11396
|
});
|
|
11300
|
-
var MetadataExportOptionsSchema2 =
|
|
11397
|
+
var MetadataExportOptionsSchema2 = import_zod64.z.object({
|
|
11301
11398
|
/**
|
|
11302
11399
|
* Output file path
|
|
11303
11400
|
*/
|
|
11304
|
-
output:
|
|
11401
|
+
output: import_zod64.z.string().describe("Output file path"),
|
|
11305
11402
|
/**
|
|
11306
11403
|
* Export format
|
|
11307
11404
|
*/
|
|
@@ -11309,60 +11406,60 @@ var MetadataExportOptionsSchema2 = import_zod63.z.object({
|
|
|
11309
11406
|
/**
|
|
11310
11407
|
* Filter predicate as string
|
|
11311
11408
|
*/
|
|
11312
|
-
filter:
|
|
11409
|
+
filter: import_zod64.z.string().optional().describe("Filter items to export"),
|
|
11313
11410
|
/**
|
|
11314
11411
|
* Include statistics in export
|
|
11315
11412
|
*/
|
|
11316
|
-
includeStats:
|
|
11413
|
+
includeStats: import_zod64.z.boolean().default(false).describe("Include metadata statistics"),
|
|
11317
11414
|
/**
|
|
11318
11415
|
* Compress output
|
|
11319
11416
|
*/
|
|
11320
|
-
compress:
|
|
11417
|
+
compress: import_zod64.z.boolean().default(false).describe("Compress output (gzip)"),
|
|
11321
11418
|
/**
|
|
11322
11419
|
* Pretty print output
|
|
11323
11420
|
*/
|
|
11324
|
-
prettify:
|
|
11421
|
+
prettify: import_zod64.z.boolean().default(true).describe("Pretty print output")
|
|
11325
11422
|
});
|
|
11326
|
-
var MetadataImportOptionsSchema2 =
|
|
11423
|
+
var MetadataImportOptionsSchema2 = import_zod64.z.object({
|
|
11327
11424
|
/**
|
|
11328
11425
|
* Conflict resolution strategy
|
|
11329
11426
|
*/
|
|
11330
|
-
conflictResolution:
|
|
11427
|
+
conflictResolution: import_zod64.z.enum(["skip", "overwrite", "merge", "fail"]).default("merge").describe("How to handle existing items"),
|
|
11331
11428
|
/**
|
|
11332
11429
|
* Validate items against schema
|
|
11333
11430
|
*/
|
|
11334
|
-
validate:
|
|
11431
|
+
validate: import_zod64.z.boolean().default(true).describe("Validate before import"),
|
|
11335
11432
|
/**
|
|
11336
11433
|
* Dry run (don't actually save)
|
|
11337
11434
|
*/
|
|
11338
|
-
dryRun:
|
|
11435
|
+
dryRun: import_zod64.z.boolean().default(false).describe("Simulate import without saving"),
|
|
11339
11436
|
/**
|
|
11340
11437
|
* Continue on errors
|
|
11341
11438
|
*/
|
|
11342
|
-
continueOnError:
|
|
11439
|
+
continueOnError: import_zod64.z.boolean().default(false).describe("Continue if validation fails"),
|
|
11343
11440
|
/**
|
|
11344
11441
|
* Transform function (as string)
|
|
11345
11442
|
* Example: "(item) => ({ ...item, imported: true })"
|
|
11346
11443
|
*/
|
|
11347
|
-
transform:
|
|
11444
|
+
transform: import_zod64.z.string().optional().describe("Transform items before import")
|
|
11348
11445
|
});
|
|
11349
|
-
var MetadataLoadResultSchema2 =
|
|
11446
|
+
var MetadataLoadResultSchema2 = import_zod64.z.object({
|
|
11350
11447
|
/**
|
|
11351
11448
|
* Loaded data
|
|
11352
11449
|
*/
|
|
11353
|
-
data:
|
|
11450
|
+
data: import_zod64.z.any().nullable().describe("Loaded metadata"),
|
|
11354
11451
|
/**
|
|
11355
11452
|
* Whether data came from cache (304 Not Modified)
|
|
11356
11453
|
*/
|
|
11357
|
-
fromCache:
|
|
11454
|
+
fromCache: import_zod64.z.boolean().default(false).describe("Loaded from cache"),
|
|
11358
11455
|
/**
|
|
11359
11456
|
* Not modified (conditional request matched)
|
|
11360
11457
|
*/
|
|
11361
|
-
notModified:
|
|
11458
|
+
notModified: import_zod64.z.boolean().default(false).describe("Not modified since last request"),
|
|
11362
11459
|
/**
|
|
11363
11460
|
* ETag of loaded data
|
|
11364
11461
|
*/
|
|
11365
|
-
etag:
|
|
11462
|
+
etag: import_zod64.z.string().optional().describe("Entity tag"),
|
|
11366
11463
|
/**
|
|
11367
11464
|
* Statistics about loaded data
|
|
11368
11465
|
*/
|
|
@@ -11370,166 +11467,166 @@ var MetadataLoadResultSchema2 = import_zod63.z.object({
|
|
|
11370
11467
|
/**
|
|
11371
11468
|
* Load time in milliseconds
|
|
11372
11469
|
*/
|
|
11373
|
-
loadTime:
|
|
11470
|
+
loadTime: import_zod64.z.number().min(0).optional().describe("Load duration in ms")
|
|
11374
11471
|
});
|
|
11375
|
-
var MetadataSaveResultSchema2 =
|
|
11472
|
+
var MetadataSaveResultSchema2 = import_zod64.z.object({
|
|
11376
11473
|
/**
|
|
11377
11474
|
* Whether save was successful
|
|
11378
11475
|
*/
|
|
11379
|
-
success:
|
|
11476
|
+
success: import_zod64.z.boolean().describe("Save successful"),
|
|
11380
11477
|
/**
|
|
11381
11478
|
* Path where file was saved
|
|
11382
11479
|
*/
|
|
11383
|
-
path:
|
|
11480
|
+
path: import_zod64.z.string().describe("Output path"),
|
|
11384
11481
|
/**
|
|
11385
11482
|
* Generated ETag
|
|
11386
11483
|
*/
|
|
11387
|
-
etag:
|
|
11484
|
+
etag: import_zod64.z.string().optional().describe("Generated entity tag"),
|
|
11388
11485
|
/**
|
|
11389
11486
|
* File size in bytes
|
|
11390
11487
|
*/
|
|
11391
|
-
size:
|
|
11488
|
+
size: import_zod64.z.number().int().min(0).optional().describe("File size"),
|
|
11392
11489
|
/**
|
|
11393
11490
|
* Save time in milliseconds
|
|
11394
11491
|
*/
|
|
11395
|
-
saveTime:
|
|
11492
|
+
saveTime: import_zod64.z.number().min(0).optional().describe("Save duration in ms"),
|
|
11396
11493
|
/**
|
|
11397
11494
|
* Backup path (if created)
|
|
11398
11495
|
*/
|
|
11399
|
-
backupPath:
|
|
11496
|
+
backupPath: import_zod64.z.string().optional().describe("Backup file path")
|
|
11400
11497
|
});
|
|
11401
|
-
var MetadataWatchEventSchema2 =
|
|
11498
|
+
var MetadataWatchEventSchema2 = import_zod64.z.object({
|
|
11402
11499
|
/**
|
|
11403
11500
|
* Event type
|
|
11404
11501
|
*/
|
|
11405
|
-
type:
|
|
11502
|
+
type: import_zod64.z.enum(["added", "changed", "deleted"]).describe("Event type"),
|
|
11406
11503
|
/**
|
|
11407
11504
|
* Metadata type (e.g., 'object', 'view', 'app')
|
|
11408
11505
|
*/
|
|
11409
|
-
metadataType:
|
|
11506
|
+
metadataType: import_zod64.z.string().describe("Type of metadata"),
|
|
11410
11507
|
/**
|
|
11411
11508
|
* Item name/identifier
|
|
11412
11509
|
*/
|
|
11413
|
-
name:
|
|
11510
|
+
name: import_zod64.z.string().describe("Item identifier"),
|
|
11414
11511
|
/**
|
|
11415
11512
|
* Full file path
|
|
11416
11513
|
*/
|
|
11417
|
-
path:
|
|
11514
|
+
path: import_zod64.z.string().describe("File path"),
|
|
11418
11515
|
/**
|
|
11419
11516
|
* Loaded item data (for added/changed events)
|
|
11420
11517
|
*/
|
|
11421
|
-
data:
|
|
11518
|
+
data: import_zod64.z.any().optional().describe("Item data"),
|
|
11422
11519
|
/**
|
|
11423
11520
|
* Timestamp
|
|
11424
11521
|
*/
|
|
11425
|
-
timestamp:
|
|
11522
|
+
timestamp: import_zod64.z.date().describe("Event timestamp")
|
|
11426
11523
|
});
|
|
11427
|
-
var MetadataCollectionInfoSchema2 =
|
|
11524
|
+
var MetadataCollectionInfoSchema2 = import_zod64.z.object({
|
|
11428
11525
|
/**
|
|
11429
11526
|
* Collection type (e.g., 'object', 'view', 'app')
|
|
11430
11527
|
*/
|
|
11431
|
-
type:
|
|
11528
|
+
type: import_zod64.z.string().describe("Collection type"),
|
|
11432
11529
|
/**
|
|
11433
11530
|
* Total items in collection
|
|
11434
11531
|
*/
|
|
11435
|
-
count:
|
|
11532
|
+
count: import_zod64.z.number().int().min(0).describe("Number of items"),
|
|
11436
11533
|
/**
|
|
11437
11534
|
* Formats found in collection
|
|
11438
11535
|
*/
|
|
11439
|
-
formats:
|
|
11536
|
+
formats: import_zod64.z.array(MetadataFormatSchema2).describe("Formats in collection"),
|
|
11440
11537
|
/**
|
|
11441
11538
|
* Total size in bytes
|
|
11442
11539
|
*/
|
|
11443
|
-
totalSize:
|
|
11540
|
+
totalSize: import_zod64.z.number().int().min(0).optional().describe("Total size in bytes"),
|
|
11444
11541
|
/**
|
|
11445
11542
|
* Last modified timestamp
|
|
11446
11543
|
*/
|
|
11447
|
-
lastModified:
|
|
11544
|
+
lastModified: import_zod64.z.date().optional().describe("Last modification date"),
|
|
11448
11545
|
/**
|
|
11449
11546
|
* Collection location (path or URL)
|
|
11450
11547
|
*/
|
|
11451
|
-
location:
|
|
11548
|
+
location: import_zod64.z.string().optional().describe("Collection location")
|
|
11452
11549
|
});
|
|
11453
|
-
var MetadataLoaderContractSchema2 =
|
|
11550
|
+
var MetadataLoaderContractSchema2 = import_zod64.z.object({
|
|
11454
11551
|
/**
|
|
11455
11552
|
* Loader name/identifier
|
|
11456
11553
|
*/
|
|
11457
|
-
name:
|
|
11554
|
+
name: import_zod64.z.string().describe("Loader identifier"),
|
|
11458
11555
|
/**
|
|
11459
11556
|
* Protocol handled by this loader (e.g. 'file', 'http', 's3')
|
|
11460
11557
|
*/
|
|
11461
|
-
protocol:
|
|
11558
|
+
protocol: import_zod64.z.string().describe("Protocol identifier"),
|
|
11462
11559
|
/**
|
|
11463
11560
|
* Detailed capabilities
|
|
11464
11561
|
*/
|
|
11465
|
-
capabilities:
|
|
11466
|
-
read:
|
|
11467
|
-
write:
|
|
11468
|
-
watch:
|
|
11469
|
-
list:
|
|
11562
|
+
capabilities: import_zod64.z.object({
|
|
11563
|
+
read: import_zod64.z.boolean().default(true),
|
|
11564
|
+
write: import_zod64.z.boolean().default(false),
|
|
11565
|
+
watch: import_zod64.z.boolean().default(false),
|
|
11566
|
+
list: import_zod64.z.boolean().default(true)
|
|
11470
11567
|
}).describe("Loader capabilities"),
|
|
11471
11568
|
/**
|
|
11472
11569
|
* Supported formats
|
|
11473
11570
|
*/
|
|
11474
|
-
supportedFormats:
|
|
11571
|
+
supportedFormats: import_zod64.z.array(MetadataFormatSchema2).describe("Supported formats"),
|
|
11475
11572
|
/**
|
|
11476
11573
|
* Whether loader supports watching for changes
|
|
11477
11574
|
*/
|
|
11478
|
-
supportsWatch:
|
|
11575
|
+
supportsWatch: import_zod64.z.boolean().default(false).describe("Supports file watching"),
|
|
11479
11576
|
/**
|
|
11480
11577
|
* Whether loader supports saving
|
|
11481
11578
|
*/
|
|
11482
|
-
supportsWrite:
|
|
11579
|
+
supportsWrite: import_zod64.z.boolean().default(true).describe("Supports write operations"),
|
|
11483
11580
|
/**
|
|
11484
11581
|
* Whether loader supports caching
|
|
11485
11582
|
*/
|
|
11486
|
-
supportsCache:
|
|
11583
|
+
supportsCache: import_zod64.z.boolean().default(true).describe("Supports caching")
|
|
11487
11584
|
});
|
|
11488
|
-
var MetadataManagerConfigSchema2 =
|
|
11585
|
+
var MetadataManagerConfigSchema2 = import_zod64.z.object({
|
|
11489
11586
|
/**
|
|
11490
11587
|
* Root directory for metadata (for filesystem loaders)
|
|
11491
11588
|
*/
|
|
11492
|
-
rootDir:
|
|
11589
|
+
rootDir: import_zod64.z.string().optional().describe("Root directory path"),
|
|
11493
11590
|
/**
|
|
11494
11591
|
* Enabled serialization formats
|
|
11495
11592
|
*/
|
|
11496
|
-
formats:
|
|
11593
|
+
formats: import_zod64.z.array(MetadataFormatSchema2).default(["typescript", "json", "yaml"]).describe("Enabled formats"),
|
|
11497
11594
|
/**
|
|
11498
11595
|
* Cache configuration
|
|
11499
11596
|
*/
|
|
11500
|
-
cache:
|
|
11501
|
-
enabled:
|
|
11502
|
-
ttl:
|
|
11503
|
-
maxSize:
|
|
11597
|
+
cache: import_zod64.z.object({
|
|
11598
|
+
enabled: import_zod64.z.boolean().default(true).describe("Enable caching"),
|
|
11599
|
+
ttl: import_zod64.z.number().int().min(0).default(3600).describe("Cache TTL in seconds"),
|
|
11600
|
+
maxSize: import_zod64.z.number().int().min(0).optional().describe("Max cache size in bytes")
|
|
11504
11601
|
}).optional().describe("Cache settings"),
|
|
11505
11602
|
/**
|
|
11506
11603
|
* Watch for file changes
|
|
11507
11604
|
*/
|
|
11508
|
-
watch:
|
|
11605
|
+
watch: import_zod64.z.boolean().default(false).describe("Enable file watching"),
|
|
11509
11606
|
/**
|
|
11510
11607
|
* Watch options
|
|
11511
11608
|
*/
|
|
11512
|
-
watchOptions:
|
|
11513
|
-
ignored:
|
|
11514
|
-
persistent:
|
|
11515
|
-
ignoreInitial:
|
|
11609
|
+
watchOptions: import_zod64.z.object({
|
|
11610
|
+
ignored: import_zod64.z.array(import_zod64.z.string()).optional().describe("Patterns to ignore"),
|
|
11611
|
+
persistent: import_zod64.z.boolean().default(true).describe("Keep process running"),
|
|
11612
|
+
ignoreInitial: import_zod64.z.boolean().default(true).describe("Ignore initial add events")
|
|
11516
11613
|
}).optional().describe("File watcher options"),
|
|
11517
11614
|
/**
|
|
11518
11615
|
* Validation settings
|
|
11519
11616
|
*/
|
|
11520
|
-
validation:
|
|
11521
|
-
strict:
|
|
11522
|
-
throwOnError:
|
|
11617
|
+
validation: import_zod64.z.object({
|
|
11618
|
+
strict: import_zod64.z.boolean().default(true).describe("Strict validation"),
|
|
11619
|
+
throwOnError: import_zod64.z.boolean().default(true).describe("Throw on validation error")
|
|
11523
11620
|
}).optional().describe("Validation settings"),
|
|
11524
11621
|
/**
|
|
11525
11622
|
* Loader-specific options
|
|
11526
11623
|
*/
|
|
11527
|
-
loaderOptions:
|
|
11624
|
+
loaderOptions: import_zod64.z.record(import_zod64.z.string(), import_zod64.z.any()).optional().describe("Loader-specific configuration")
|
|
11528
11625
|
});
|
|
11529
11626
|
|
|
11530
11627
|
// src/kernel/plugin-lifecycle-advanced.zod.ts
|
|
11531
|
-
var
|
|
11532
|
-
var PluginHealthStatusSchema =
|
|
11628
|
+
var import_zod65 = require("zod");
|
|
11629
|
+
var PluginHealthStatusSchema = import_zod65.z.enum([
|
|
11533
11630
|
"healthy",
|
|
11534
11631
|
// Plugin is operating normally
|
|
11535
11632
|
"degraded",
|
|
@@ -11543,41 +11640,41 @@ var PluginHealthStatusSchema = import_zod64.z.enum([
|
|
|
11543
11640
|
"unknown"
|
|
11544
11641
|
// Health status cannot be determined
|
|
11545
11642
|
]).describe("Current health status of the plugin");
|
|
11546
|
-
var PluginHealthCheckSchema =
|
|
11643
|
+
var PluginHealthCheckSchema = import_zod65.z.object({
|
|
11547
11644
|
/**
|
|
11548
11645
|
* Health check interval in milliseconds
|
|
11549
11646
|
*/
|
|
11550
|
-
interval:
|
|
11647
|
+
interval: import_zod65.z.number().int().min(1e3).default(3e4).describe("How often to perform health checks (default: 30s)"),
|
|
11551
11648
|
/**
|
|
11552
11649
|
* Timeout for health check in milliseconds
|
|
11553
11650
|
*/
|
|
11554
|
-
timeout:
|
|
11651
|
+
timeout: import_zod65.z.number().int().min(100).default(5e3).describe("Maximum time to wait for health check response"),
|
|
11555
11652
|
/**
|
|
11556
11653
|
* Number of consecutive failures before marking as unhealthy
|
|
11557
11654
|
*/
|
|
11558
|
-
failureThreshold:
|
|
11655
|
+
failureThreshold: import_zod65.z.number().int().min(1).default(3).describe("Consecutive failures needed to mark unhealthy"),
|
|
11559
11656
|
/**
|
|
11560
11657
|
* Number of consecutive successes to recover from unhealthy state
|
|
11561
11658
|
*/
|
|
11562
|
-
successThreshold:
|
|
11659
|
+
successThreshold: import_zod65.z.number().int().min(1).default(1).describe("Consecutive successes needed to mark healthy"),
|
|
11563
11660
|
/**
|
|
11564
11661
|
* Custom health check function name or endpoint
|
|
11565
11662
|
*/
|
|
11566
|
-
checkMethod:
|
|
11663
|
+
checkMethod: import_zod65.z.string().optional().describe("Method name to call for health check"),
|
|
11567
11664
|
/**
|
|
11568
11665
|
* Enable automatic restart on failure
|
|
11569
11666
|
*/
|
|
11570
|
-
autoRestart:
|
|
11667
|
+
autoRestart: import_zod65.z.boolean().default(false).describe("Automatically restart plugin on health check failure"),
|
|
11571
11668
|
/**
|
|
11572
11669
|
* Maximum number of restart attempts
|
|
11573
11670
|
*/
|
|
11574
|
-
maxRestartAttempts:
|
|
11671
|
+
maxRestartAttempts: import_zod65.z.number().int().min(0).default(3).describe("Maximum restart attempts before giving up"),
|
|
11575
11672
|
/**
|
|
11576
11673
|
* Backoff strategy for restarts
|
|
11577
11674
|
*/
|
|
11578
|
-
restartBackoff:
|
|
11675
|
+
restartBackoff: import_zod65.z.enum(["fixed", "linear", "exponential"]).default("exponential").describe("Backoff strategy for restart delays")
|
|
11579
11676
|
});
|
|
11580
|
-
var PluginHealthReportSchema =
|
|
11677
|
+
var PluginHealthReportSchema = import_zod65.z.object({
|
|
11581
11678
|
/**
|
|
11582
11679
|
* Overall health status
|
|
11583
11680
|
*/
|
|
@@ -11585,99 +11682,99 @@ var PluginHealthReportSchema = import_zod64.z.object({
|
|
|
11585
11682
|
/**
|
|
11586
11683
|
* Timestamp of the health check
|
|
11587
11684
|
*/
|
|
11588
|
-
timestamp:
|
|
11685
|
+
timestamp: import_zod65.z.string().datetime(),
|
|
11589
11686
|
/**
|
|
11590
11687
|
* Human-readable message about health status
|
|
11591
11688
|
*/
|
|
11592
|
-
message:
|
|
11689
|
+
message: import_zod65.z.string().optional(),
|
|
11593
11690
|
/**
|
|
11594
11691
|
* Detailed metrics
|
|
11595
11692
|
*/
|
|
11596
|
-
metrics:
|
|
11597
|
-
uptime:
|
|
11598
|
-
memoryUsage:
|
|
11599
|
-
cpuUsage:
|
|
11600
|
-
activeConnections:
|
|
11601
|
-
errorRate:
|
|
11602
|
-
responseTime:
|
|
11693
|
+
metrics: import_zod65.z.object({
|
|
11694
|
+
uptime: import_zod65.z.number().describe("Plugin uptime in milliseconds"),
|
|
11695
|
+
memoryUsage: import_zod65.z.number().optional().describe("Memory usage in bytes"),
|
|
11696
|
+
cpuUsage: import_zod65.z.number().optional().describe("CPU usage percentage"),
|
|
11697
|
+
activeConnections: import_zod65.z.number().optional().describe("Number of active connections"),
|
|
11698
|
+
errorRate: import_zod65.z.number().optional().describe("Error rate (errors per minute)"),
|
|
11699
|
+
responseTime: import_zod65.z.number().optional().describe("Average response time in ms")
|
|
11603
11700
|
}).partial().optional(),
|
|
11604
11701
|
/**
|
|
11605
11702
|
* List of checks performed
|
|
11606
11703
|
*/
|
|
11607
|
-
checks:
|
|
11608
|
-
name:
|
|
11609
|
-
status:
|
|
11610
|
-
message:
|
|
11611
|
-
data:
|
|
11704
|
+
checks: import_zod65.z.array(import_zod65.z.object({
|
|
11705
|
+
name: import_zod65.z.string().describe("Check name"),
|
|
11706
|
+
status: import_zod65.z.enum(["passed", "failed", "warning"]),
|
|
11707
|
+
message: import_zod65.z.string().optional(),
|
|
11708
|
+
data: import_zod65.z.record(import_zod65.z.string(), import_zod65.z.any()).optional()
|
|
11612
11709
|
})).optional(),
|
|
11613
11710
|
/**
|
|
11614
11711
|
* Dependencies health
|
|
11615
11712
|
*/
|
|
11616
|
-
dependencies:
|
|
11617
|
-
pluginId:
|
|
11713
|
+
dependencies: import_zod65.z.array(import_zod65.z.object({
|
|
11714
|
+
pluginId: import_zod65.z.string(),
|
|
11618
11715
|
status: PluginHealthStatusSchema,
|
|
11619
|
-
message:
|
|
11716
|
+
message: import_zod65.z.string().optional()
|
|
11620
11717
|
})).optional()
|
|
11621
11718
|
});
|
|
11622
|
-
var DistributedStateConfigSchema =
|
|
11719
|
+
var DistributedStateConfigSchema = import_zod65.z.object({
|
|
11623
11720
|
/**
|
|
11624
11721
|
* Distributed cache provider
|
|
11625
11722
|
*/
|
|
11626
|
-
provider:
|
|
11723
|
+
provider: import_zod65.z.enum(["redis", "etcd", "custom"]).describe("Distributed state backend provider"),
|
|
11627
11724
|
/**
|
|
11628
11725
|
* Connection URL or endpoints
|
|
11629
11726
|
*/
|
|
11630
|
-
endpoints:
|
|
11727
|
+
endpoints: import_zod65.z.array(import_zod65.z.string()).optional().describe("Backend connection endpoints"),
|
|
11631
11728
|
/**
|
|
11632
11729
|
* Key prefix for namespacing
|
|
11633
11730
|
*/
|
|
11634
|
-
keyPrefix:
|
|
11731
|
+
keyPrefix: import_zod65.z.string().optional().describe('Prefix for all keys (e.g., "plugin:my-plugin:")'),
|
|
11635
11732
|
/**
|
|
11636
11733
|
* Time to live in seconds
|
|
11637
11734
|
*/
|
|
11638
|
-
ttl:
|
|
11735
|
+
ttl: import_zod65.z.number().int().min(0).optional().describe("State expiration time in seconds"),
|
|
11639
11736
|
/**
|
|
11640
11737
|
* Authentication configuration
|
|
11641
11738
|
*/
|
|
11642
|
-
auth:
|
|
11643
|
-
username:
|
|
11644
|
-
password:
|
|
11645
|
-
token:
|
|
11646
|
-
certificate:
|
|
11739
|
+
auth: import_zod65.z.object({
|
|
11740
|
+
username: import_zod65.z.string().optional(),
|
|
11741
|
+
password: import_zod65.z.string().optional(),
|
|
11742
|
+
token: import_zod65.z.string().optional(),
|
|
11743
|
+
certificate: import_zod65.z.string().optional()
|
|
11647
11744
|
}).optional(),
|
|
11648
11745
|
/**
|
|
11649
11746
|
* Replication settings
|
|
11650
11747
|
*/
|
|
11651
|
-
replication:
|
|
11652
|
-
enabled:
|
|
11653
|
-
minReplicas:
|
|
11748
|
+
replication: import_zod65.z.object({
|
|
11749
|
+
enabled: import_zod65.z.boolean().default(true),
|
|
11750
|
+
minReplicas: import_zod65.z.number().int().min(1).default(1)
|
|
11654
11751
|
}).optional(),
|
|
11655
11752
|
/**
|
|
11656
11753
|
* Custom provider configuration
|
|
11657
11754
|
*/
|
|
11658
|
-
customConfig:
|
|
11755
|
+
customConfig: import_zod65.z.record(import_zod65.z.string(), import_zod65.z.any()).optional().describe("Provider-specific configuration")
|
|
11659
11756
|
});
|
|
11660
|
-
var HotReloadConfigSchema =
|
|
11757
|
+
var HotReloadConfigSchema = import_zod65.z.object({
|
|
11661
11758
|
/**
|
|
11662
11759
|
* Enable hot reload capability
|
|
11663
11760
|
*/
|
|
11664
|
-
enabled:
|
|
11761
|
+
enabled: import_zod65.z.boolean().default(false),
|
|
11665
11762
|
/**
|
|
11666
11763
|
* Watch file patterns for auto-reload
|
|
11667
11764
|
*/
|
|
11668
|
-
watchPatterns:
|
|
11765
|
+
watchPatterns: import_zod65.z.array(import_zod65.z.string()).optional().describe("Glob patterns to watch for changes"),
|
|
11669
11766
|
/**
|
|
11670
11767
|
* Debounce delay before reloading (milliseconds)
|
|
11671
11768
|
*/
|
|
11672
|
-
debounceDelay:
|
|
11769
|
+
debounceDelay: import_zod65.z.number().int().min(0).default(1e3).describe("Wait time after change detection before reload"),
|
|
11673
11770
|
/**
|
|
11674
11771
|
* Preserve plugin state during reload
|
|
11675
11772
|
*/
|
|
11676
|
-
preserveState:
|
|
11773
|
+
preserveState: import_zod65.z.boolean().default(true).describe("Keep plugin state across reloads"),
|
|
11677
11774
|
/**
|
|
11678
11775
|
* State serialization strategy
|
|
11679
11776
|
*/
|
|
11680
|
-
stateStrategy:
|
|
11777
|
+
stateStrategy: import_zod65.z.enum(["memory", "disk", "distributed", "none"]).default("memory").describe("How to preserve state during reload"),
|
|
11681
11778
|
/**
|
|
11682
11779
|
* Distributed state configuration (required when stateStrategy is "distributed")
|
|
11683
11780
|
*/
|
|
@@ -11685,25 +11782,25 @@ var HotReloadConfigSchema = import_zod64.z.object({
|
|
|
11685
11782
|
/**
|
|
11686
11783
|
* Graceful shutdown timeout
|
|
11687
11784
|
*/
|
|
11688
|
-
shutdownTimeout:
|
|
11785
|
+
shutdownTimeout: import_zod65.z.number().int().min(0).default(3e4).describe("Maximum time to wait for graceful shutdown"),
|
|
11689
11786
|
/**
|
|
11690
11787
|
* Pre-reload hooks
|
|
11691
11788
|
*/
|
|
11692
|
-
beforeReload:
|
|
11789
|
+
beforeReload: import_zod65.z.array(import_zod65.z.string()).optional().describe("Hook names to call before reload"),
|
|
11693
11790
|
/**
|
|
11694
11791
|
* Post-reload hooks
|
|
11695
11792
|
*/
|
|
11696
|
-
afterReload:
|
|
11793
|
+
afterReload: import_zod65.z.array(import_zod65.z.string()).optional().describe("Hook names to call after reload")
|
|
11697
11794
|
});
|
|
11698
|
-
var GracefulDegradationSchema =
|
|
11795
|
+
var GracefulDegradationSchema = import_zod65.z.object({
|
|
11699
11796
|
/**
|
|
11700
11797
|
* Enable graceful degradation
|
|
11701
11798
|
*/
|
|
11702
|
-
enabled:
|
|
11799
|
+
enabled: import_zod65.z.boolean().default(true),
|
|
11703
11800
|
/**
|
|
11704
11801
|
* Fallback mode when dependencies fail
|
|
11705
11802
|
*/
|
|
11706
|
-
fallbackMode:
|
|
11803
|
+
fallbackMode: import_zod65.z.enum([
|
|
11707
11804
|
"minimal",
|
|
11708
11805
|
// Provide minimal functionality
|
|
11709
11806
|
"cached",
|
|
@@ -11718,33 +11815,33 @@ var GracefulDegradationSchema = import_zod64.z.object({
|
|
|
11718
11815
|
/**
|
|
11719
11816
|
* Critical dependencies that must be available
|
|
11720
11817
|
*/
|
|
11721
|
-
criticalDependencies:
|
|
11818
|
+
criticalDependencies: import_zod65.z.array(import_zod65.z.string()).optional().describe("Plugin IDs that are required for operation"),
|
|
11722
11819
|
/**
|
|
11723
11820
|
* Optional dependencies that can fail
|
|
11724
11821
|
*/
|
|
11725
|
-
optionalDependencies:
|
|
11822
|
+
optionalDependencies: import_zod65.z.array(import_zod65.z.string()).optional().describe("Plugin IDs that are nice to have but not required"),
|
|
11726
11823
|
/**
|
|
11727
11824
|
* Feature flags for degraded mode
|
|
11728
11825
|
*/
|
|
11729
|
-
degradedFeatures:
|
|
11730
|
-
feature:
|
|
11731
|
-
enabled:
|
|
11732
|
-
reason:
|
|
11826
|
+
degradedFeatures: import_zod65.z.array(import_zod65.z.object({
|
|
11827
|
+
feature: import_zod65.z.string().describe("Feature name"),
|
|
11828
|
+
enabled: import_zod65.z.boolean().describe("Whether feature is available in degraded mode"),
|
|
11829
|
+
reason: import_zod65.z.string().optional()
|
|
11733
11830
|
})).optional(),
|
|
11734
11831
|
/**
|
|
11735
11832
|
* Automatic recovery attempts
|
|
11736
11833
|
*/
|
|
11737
|
-
autoRecovery:
|
|
11738
|
-
enabled:
|
|
11739
|
-
retryInterval:
|
|
11740
|
-
maxAttempts:
|
|
11834
|
+
autoRecovery: import_zod65.z.object({
|
|
11835
|
+
enabled: import_zod65.z.boolean().default(true),
|
|
11836
|
+
retryInterval: import_zod65.z.number().int().min(1e3).default(6e4).describe("Interval between recovery attempts (ms)"),
|
|
11837
|
+
maxAttempts: import_zod65.z.number().int().min(0).default(5).describe("Maximum recovery attempts before giving up")
|
|
11741
11838
|
}).optional()
|
|
11742
11839
|
});
|
|
11743
|
-
var PluginUpdateStrategySchema =
|
|
11840
|
+
var PluginUpdateStrategySchema = import_zod65.z.object({
|
|
11744
11841
|
/**
|
|
11745
11842
|
* Update mode
|
|
11746
11843
|
*/
|
|
11747
|
-
mode:
|
|
11844
|
+
mode: import_zod65.z.enum([
|
|
11748
11845
|
"manual",
|
|
11749
11846
|
// Manual updates only
|
|
11750
11847
|
"automatic",
|
|
@@ -11757,91 +11854,91 @@ var PluginUpdateStrategySchema = import_zod64.z.object({
|
|
|
11757
11854
|
/**
|
|
11758
11855
|
* Version constraints for automatic updates
|
|
11759
11856
|
*/
|
|
11760
|
-
autoUpdateConstraints:
|
|
11761
|
-
major:
|
|
11762
|
-
minor:
|
|
11763
|
-
patch:
|
|
11857
|
+
autoUpdateConstraints: import_zod65.z.object({
|
|
11858
|
+
major: import_zod65.z.boolean().default(false).describe("Allow major version updates"),
|
|
11859
|
+
minor: import_zod65.z.boolean().default(true).describe("Allow minor version updates"),
|
|
11860
|
+
patch: import_zod65.z.boolean().default(true).describe("Allow patch version updates")
|
|
11764
11861
|
}).optional(),
|
|
11765
11862
|
/**
|
|
11766
11863
|
* Update schedule (for scheduled mode)
|
|
11767
11864
|
*/
|
|
11768
|
-
schedule:
|
|
11865
|
+
schedule: import_zod65.z.object({
|
|
11769
11866
|
/**
|
|
11770
11867
|
* Cron expression for update window
|
|
11771
11868
|
*/
|
|
11772
|
-
cron:
|
|
11869
|
+
cron: import_zod65.z.string().optional(),
|
|
11773
11870
|
/**
|
|
11774
11871
|
* Timezone for schedule
|
|
11775
11872
|
*/
|
|
11776
|
-
timezone:
|
|
11873
|
+
timezone: import_zod65.z.string().default("UTC"),
|
|
11777
11874
|
/**
|
|
11778
11875
|
* Maintenance window duration in minutes
|
|
11779
11876
|
*/
|
|
11780
|
-
maintenanceWindow:
|
|
11877
|
+
maintenanceWindow: import_zod65.z.number().int().min(1).default(60)
|
|
11781
11878
|
}).optional(),
|
|
11782
11879
|
/**
|
|
11783
11880
|
* Rollback configuration
|
|
11784
11881
|
*/
|
|
11785
|
-
rollback:
|
|
11786
|
-
enabled:
|
|
11882
|
+
rollback: import_zod65.z.object({
|
|
11883
|
+
enabled: import_zod65.z.boolean().default(true),
|
|
11787
11884
|
/**
|
|
11788
11885
|
* Automatic rollback on failure
|
|
11789
11886
|
*/
|
|
11790
|
-
automatic:
|
|
11887
|
+
automatic: import_zod65.z.boolean().default(true),
|
|
11791
11888
|
/**
|
|
11792
11889
|
* Keep N previous versions for rollback
|
|
11793
11890
|
*/
|
|
11794
|
-
keepVersions:
|
|
11891
|
+
keepVersions: import_zod65.z.number().int().min(1).default(3),
|
|
11795
11892
|
/**
|
|
11796
11893
|
* Rollback timeout in milliseconds
|
|
11797
11894
|
*/
|
|
11798
|
-
timeout:
|
|
11895
|
+
timeout: import_zod65.z.number().int().min(1e3).default(3e4)
|
|
11799
11896
|
}).optional(),
|
|
11800
11897
|
/**
|
|
11801
11898
|
* Pre-update validation
|
|
11802
11899
|
*/
|
|
11803
|
-
validation:
|
|
11900
|
+
validation: import_zod65.z.object({
|
|
11804
11901
|
/**
|
|
11805
11902
|
* Run compatibility checks before update
|
|
11806
11903
|
*/
|
|
11807
|
-
checkCompatibility:
|
|
11904
|
+
checkCompatibility: import_zod65.z.boolean().default(true),
|
|
11808
11905
|
/**
|
|
11809
11906
|
* Run tests before applying update
|
|
11810
11907
|
*/
|
|
11811
|
-
runTests:
|
|
11908
|
+
runTests: import_zod65.z.boolean().default(false),
|
|
11812
11909
|
/**
|
|
11813
11910
|
* Test suite to run
|
|
11814
11911
|
*/
|
|
11815
|
-
testSuite:
|
|
11912
|
+
testSuite: import_zod65.z.string().optional()
|
|
11816
11913
|
}).optional()
|
|
11817
11914
|
});
|
|
11818
|
-
var PluginStateSnapshotSchema =
|
|
11915
|
+
var PluginStateSnapshotSchema = import_zod65.z.object({
|
|
11819
11916
|
/**
|
|
11820
11917
|
* Plugin identifier
|
|
11821
11918
|
*/
|
|
11822
|
-
pluginId:
|
|
11919
|
+
pluginId: import_zod65.z.string(),
|
|
11823
11920
|
/**
|
|
11824
11921
|
* Version at time of snapshot
|
|
11825
11922
|
*/
|
|
11826
|
-
version:
|
|
11923
|
+
version: import_zod65.z.string(),
|
|
11827
11924
|
/**
|
|
11828
11925
|
* Snapshot timestamp
|
|
11829
11926
|
*/
|
|
11830
|
-
timestamp:
|
|
11927
|
+
timestamp: import_zod65.z.string().datetime(),
|
|
11831
11928
|
/**
|
|
11832
11929
|
* Serialized state data
|
|
11833
11930
|
*/
|
|
11834
|
-
state:
|
|
11931
|
+
state: import_zod65.z.record(import_zod65.z.string(), import_zod65.z.any()),
|
|
11835
11932
|
/**
|
|
11836
11933
|
* State metadata
|
|
11837
11934
|
*/
|
|
11838
|
-
metadata:
|
|
11839
|
-
checksum:
|
|
11840
|
-
compressed:
|
|
11841
|
-
encryption:
|
|
11935
|
+
metadata: import_zod65.z.object({
|
|
11936
|
+
checksum: import_zod65.z.string().optional().describe("State checksum for verification"),
|
|
11937
|
+
compressed: import_zod65.z.boolean().default(false),
|
|
11938
|
+
encryption: import_zod65.z.string().optional().describe("Encryption algorithm if encrypted")
|
|
11842
11939
|
}).optional()
|
|
11843
11940
|
});
|
|
11844
|
-
var AdvancedPluginLifecycleConfigSchema =
|
|
11941
|
+
var AdvancedPluginLifecycleConfigSchema = import_zod65.z.object({
|
|
11845
11942
|
/**
|
|
11846
11943
|
* Health monitoring configuration
|
|
11847
11944
|
*/
|
|
@@ -11861,47 +11958,47 @@ var AdvancedPluginLifecycleConfigSchema = import_zod64.z.object({
|
|
|
11861
11958
|
/**
|
|
11862
11959
|
* Resource limits
|
|
11863
11960
|
*/
|
|
11864
|
-
resources:
|
|
11865
|
-
maxMemory:
|
|
11866
|
-
maxCpu:
|
|
11867
|
-
maxConnections:
|
|
11868
|
-
timeout:
|
|
11961
|
+
resources: import_zod65.z.object({
|
|
11962
|
+
maxMemory: import_zod65.z.number().int().optional().describe("Maximum memory in bytes"),
|
|
11963
|
+
maxCpu: import_zod65.z.number().min(0).max(100).optional().describe("Maximum CPU percentage"),
|
|
11964
|
+
maxConnections: import_zod65.z.number().int().optional().describe("Maximum concurrent connections"),
|
|
11965
|
+
timeout: import_zod65.z.number().int().optional().describe("Operation timeout in milliseconds")
|
|
11869
11966
|
}).optional(),
|
|
11870
11967
|
/**
|
|
11871
11968
|
* Monitoring and observability
|
|
11872
11969
|
*/
|
|
11873
|
-
observability:
|
|
11874
|
-
enableMetrics:
|
|
11875
|
-
enableTracing:
|
|
11876
|
-
enableProfiling:
|
|
11877
|
-
metricsInterval:
|
|
11970
|
+
observability: import_zod65.z.object({
|
|
11971
|
+
enableMetrics: import_zod65.z.boolean().default(true),
|
|
11972
|
+
enableTracing: import_zod65.z.boolean().default(true),
|
|
11973
|
+
enableProfiling: import_zod65.z.boolean().default(false),
|
|
11974
|
+
metricsInterval: import_zod65.z.number().int().min(1e3).default(6e4).describe("Metrics collection interval in ms")
|
|
11878
11975
|
}).optional()
|
|
11879
11976
|
});
|
|
11880
11977
|
|
|
11881
11978
|
// src/kernel/plugin-lifecycle-events.zod.ts
|
|
11882
|
-
var
|
|
11883
|
-
var EventPhaseSchema =
|
|
11884
|
-
var PluginEventBaseSchema =
|
|
11979
|
+
var import_zod66 = require("zod");
|
|
11980
|
+
var EventPhaseSchema = import_zod66.z.enum(["init", "start", "destroy"]).describe("Plugin lifecycle phase");
|
|
11981
|
+
var PluginEventBaseSchema = import_zod66.z.object({
|
|
11885
11982
|
/**
|
|
11886
11983
|
* Plugin name
|
|
11887
11984
|
*/
|
|
11888
|
-
pluginName:
|
|
11985
|
+
pluginName: import_zod66.z.string().describe("Name of the plugin"),
|
|
11889
11986
|
/**
|
|
11890
11987
|
* Event timestamp (Unix milliseconds)
|
|
11891
11988
|
*/
|
|
11892
|
-
timestamp:
|
|
11989
|
+
timestamp: import_zod66.z.number().int().describe("Unix timestamp in milliseconds when event occurred")
|
|
11893
11990
|
});
|
|
11894
11991
|
var PluginRegisteredEventSchema = PluginEventBaseSchema.extend({
|
|
11895
11992
|
/**
|
|
11896
11993
|
* Plugin version (optional)
|
|
11897
11994
|
*/
|
|
11898
|
-
version:
|
|
11995
|
+
version: import_zod66.z.string().optional().describe("Plugin version")
|
|
11899
11996
|
});
|
|
11900
11997
|
var PluginLifecyclePhaseEventSchema = PluginEventBaseSchema.extend({
|
|
11901
11998
|
/**
|
|
11902
11999
|
* Duration of the phase (milliseconds)
|
|
11903
12000
|
*/
|
|
11904
|
-
duration:
|
|
12001
|
+
duration: import_zod66.z.number().min(0).optional().describe("Duration of the lifecycle phase in milliseconds"),
|
|
11905
12002
|
/**
|
|
11906
12003
|
* Lifecycle phase
|
|
11907
12004
|
*/
|
|
@@ -11911,7 +12008,7 @@ var PluginErrorEventSchema = PluginEventBaseSchema.extend({
|
|
|
11911
12008
|
/**
|
|
11912
12009
|
* Error object
|
|
11913
12010
|
*/
|
|
11914
|
-
error:
|
|
12011
|
+
error: import_zod66.z.instanceof(Error).describe("Error object"),
|
|
11915
12012
|
/**
|
|
11916
12013
|
* Lifecycle phase where error occurred
|
|
11917
12014
|
*/
|
|
@@ -11919,91 +12016,91 @@ var PluginErrorEventSchema = PluginEventBaseSchema.extend({
|
|
|
11919
12016
|
/**
|
|
11920
12017
|
* Error message (for serialization)
|
|
11921
12018
|
*/
|
|
11922
|
-
errorMessage:
|
|
12019
|
+
errorMessage: import_zod66.z.string().optional().describe("Error message"),
|
|
11923
12020
|
/**
|
|
11924
12021
|
* Error stack trace (for debugging)
|
|
11925
12022
|
*/
|
|
11926
|
-
errorStack:
|
|
12023
|
+
errorStack: import_zod66.z.string().optional().describe("Error stack trace")
|
|
11927
12024
|
});
|
|
11928
|
-
var ServiceRegisteredEventSchema =
|
|
12025
|
+
var ServiceRegisteredEventSchema = import_zod66.z.object({
|
|
11929
12026
|
/**
|
|
11930
12027
|
* Service name
|
|
11931
12028
|
*/
|
|
11932
|
-
serviceName:
|
|
12029
|
+
serviceName: import_zod66.z.string().describe("Name of the registered service"),
|
|
11933
12030
|
/**
|
|
11934
12031
|
* Event timestamp (Unix milliseconds)
|
|
11935
12032
|
*/
|
|
11936
|
-
timestamp:
|
|
12033
|
+
timestamp: import_zod66.z.number().int().describe("Unix timestamp in milliseconds"),
|
|
11937
12034
|
/**
|
|
11938
12035
|
* Service type (optional)
|
|
11939
12036
|
*/
|
|
11940
|
-
serviceType:
|
|
12037
|
+
serviceType: import_zod66.z.string().optional().describe("Type or interface name of the service")
|
|
11941
12038
|
});
|
|
11942
|
-
var ServiceUnregisteredEventSchema =
|
|
12039
|
+
var ServiceUnregisteredEventSchema = import_zod66.z.object({
|
|
11943
12040
|
/**
|
|
11944
12041
|
* Service name
|
|
11945
12042
|
*/
|
|
11946
|
-
serviceName:
|
|
12043
|
+
serviceName: import_zod66.z.string().describe("Name of the unregistered service"),
|
|
11947
12044
|
/**
|
|
11948
12045
|
* Event timestamp (Unix milliseconds)
|
|
11949
12046
|
*/
|
|
11950
|
-
timestamp:
|
|
12047
|
+
timestamp: import_zod66.z.number().int().describe("Unix timestamp in milliseconds")
|
|
11951
12048
|
});
|
|
11952
|
-
var HookRegisteredEventSchema =
|
|
12049
|
+
var HookRegisteredEventSchema = import_zod66.z.object({
|
|
11953
12050
|
/**
|
|
11954
12051
|
* Hook name
|
|
11955
12052
|
*/
|
|
11956
|
-
hookName:
|
|
12053
|
+
hookName: import_zod66.z.string().describe("Name of the hook"),
|
|
11957
12054
|
/**
|
|
11958
12055
|
* Event timestamp (Unix milliseconds)
|
|
11959
12056
|
*/
|
|
11960
|
-
timestamp:
|
|
12057
|
+
timestamp: import_zod66.z.number().int().describe("Unix timestamp in milliseconds"),
|
|
11961
12058
|
/**
|
|
11962
12059
|
* Number of handlers registered for this hook
|
|
11963
12060
|
*/
|
|
11964
|
-
handlerCount:
|
|
12061
|
+
handlerCount: import_zod66.z.number().int().min(0).describe("Number of handlers registered for this hook")
|
|
11965
12062
|
});
|
|
11966
|
-
var HookTriggeredEventSchema =
|
|
12063
|
+
var HookTriggeredEventSchema = import_zod66.z.object({
|
|
11967
12064
|
/**
|
|
11968
12065
|
* Hook name
|
|
11969
12066
|
*/
|
|
11970
|
-
hookName:
|
|
12067
|
+
hookName: import_zod66.z.string().describe("Name of the hook"),
|
|
11971
12068
|
/**
|
|
11972
12069
|
* Event timestamp (Unix milliseconds)
|
|
11973
12070
|
*/
|
|
11974
|
-
timestamp:
|
|
12071
|
+
timestamp: import_zod66.z.number().int().describe("Unix timestamp in milliseconds"),
|
|
11975
12072
|
/**
|
|
11976
12073
|
* Arguments passed to the hook
|
|
11977
12074
|
*/
|
|
11978
|
-
args:
|
|
12075
|
+
args: import_zod66.z.array(import_zod66.z.any()).describe("Arguments passed to the hook handlers"),
|
|
11979
12076
|
/**
|
|
11980
12077
|
* Number of handlers that will handle this event
|
|
11981
12078
|
*/
|
|
11982
|
-
handlerCount:
|
|
12079
|
+
handlerCount: import_zod66.z.number().int().min(0).optional().describe("Number of handlers that will handle this event")
|
|
11983
12080
|
});
|
|
11984
|
-
var KernelEventBaseSchema =
|
|
12081
|
+
var KernelEventBaseSchema = import_zod66.z.object({
|
|
11985
12082
|
/**
|
|
11986
12083
|
* Event timestamp (Unix milliseconds)
|
|
11987
12084
|
*/
|
|
11988
|
-
timestamp:
|
|
12085
|
+
timestamp: import_zod66.z.number().int().describe("Unix timestamp in milliseconds")
|
|
11989
12086
|
});
|
|
11990
12087
|
var KernelReadyEventSchema = KernelEventBaseSchema.extend({
|
|
11991
12088
|
/**
|
|
11992
12089
|
* Total initialization duration (milliseconds)
|
|
11993
12090
|
*/
|
|
11994
|
-
duration:
|
|
12091
|
+
duration: import_zod66.z.number().min(0).optional().describe("Total initialization duration in milliseconds"),
|
|
11995
12092
|
/**
|
|
11996
12093
|
* Number of plugins initialized
|
|
11997
12094
|
*/
|
|
11998
|
-
pluginCount:
|
|
12095
|
+
pluginCount: import_zod66.z.number().int().min(0).optional().describe("Number of plugins initialized")
|
|
11999
12096
|
});
|
|
12000
12097
|
var KernelShutdownEventSchema = KernelEventBaseSchema.extend({
|
|
12001
12098
|
/**
|
|
12002
12099
|
* Shutdown reason (optional)
|
|
12003
12100
|
*/
|
|
12004
|
-
reason:
|
|
12101
|
+
reason: import_zod66.z.string().optional().describe("Reason for kernel shutdown")
|
|
12005
12102
|
});
|
|
12006
|
-
var PluginLifecycleEventType =
|
|
12103
|
+
var PluginLifecycleEventType = import_zod66.z.enum([
|
|
12007
12104
|
"kernel:ready",
|
|
12008
12105
|
"kernel:shutdown",
|
|
12009
12106
|
"kernel:before-init",
|
|
@@ -12026,8 +12123,8 @@ var PluginLifecycleEventType = import_zod65.z.enum([
|
|
|
12026
12123
|
]).describe("Plugin lifecycle event type");
|
|
12027
12124
|
|
|
12028
12125
|
// src/kernel/plugin-security-advanced.zod.ts
|
|
12029
|
-
var
|
|
12030
|
-
var PermissionScopeSchema =
|
|
12126
|
+
var import_zod67 = require("zod");
|
|
12127
|
+
var PermissionScopeSchema = import_zod67.z.enum([
|
|
12031
12128
|
"global",
|
|
12032
12129
|
// Applies to entire system
|
|
12033
12130
|
"tenant",
|
|
@@ -12039,7 +12136,7 @@ var PermissionScopeSchema = import_zod66.z.enum([
|
|
|
12039
12136
|
"plugin"
|
|
12040
12137
|
// Applies within plugin boundaries
|
|
12041
12138
|
]).describe("Scope of permission application");
|
|
12042
|
-
var PermissionActionSchema =
|
|
12139
|
+
var PermissionActionSchema = import_zod67.z.enum([
|
|
12043
12140
|
"create",
|
|
12044
12141
|
// Create new resources
|
|
12045
12142
|
"read",
|
|
@@ -12063,7 +12160,7 @@ var PermissionActionSchema = import_zod66.z.enum([
|
|
|
12063
12160
|
"admin"
|
|
12064
12161
|
// Administrative access
|
|
12065
12162
|
]).describe("Type of action being permitted");
|
|
12066
|
-
var ResourceTypeSchema =
|
|
12163
|
+
var ResourceTypeSchema = import_zod67.z.enum([
|
|
12067
12164
|
"data.object",
|
|
12068
12165
|
// ObjectQL objects
|
|
12069
12166
|
"data.record",
|
|
@@ -12097,11 +12194,11 @@ var ResourceTypeSchema = import_zod66.z.enum([
|
|
|
12097
12194
|
"process.env"
|
|
12098
12195
|
// Environment variables
|
|
12099
12196
|
]).describe("Type of resource being accessed");
|
|
12100
|
-
var PermissionSchema =
|
|
12197
|
+
var PermissionSchema = import_zod67.z.object({
|
|
12101
12198
|
/**
|
|
12102
12199
|
* Permission identifier
|
|
12103
12200
|
*/
|
|
12104
|
-
id:
|
|
12201
|
+
id: import_zod67.z.string().describe("Unique permission identifier"),
|
|
12105
12202
|
/**
|
|
12106
12203
|
* Resource type
|
|
12107
12204
|
*/
|
|
@@ -12109,7 +12206,7 @@ var PermissionSchema = import_zod66.z.object({
|
|
|
12109
12206
|
/**
|
|
12110
12207
|
* Allowed actions
|
|
12111
12208
|
*/
|
|
12112
|
-
actions:
|
|
12209
|
+
actions: import_zod67.z.array(PermissionActionSchema),
|
|
12113
12210
|
/**
|
|
12114
12211
|
* Permission scope
|
|
12115
12212
|
*/
|
|
@@ -12117,50 +12214,50 @@ var PermissionSchema = import_zod66.z.object({
|
|
|
12117
12214
|
/**
|
|
12118
12215
|
* Resource filter
|
|
12119
12216
|
*/
|
|
12120
|
-
filter:
|
|
12217
|
+
filter: import_zod67.z.object({
|
|
12121
12218
|
/**
|
|
12122
12219
|
* Specific resource IDs
|
|
12123
12220
|
*/
|
|
12124
|
-
resourceIds:
|
|
12221
|
+
resourceIds: import_zod67.z.array(import_zod67.z.string()).optional(),
|
|
12125
12222
|
/**
|
|
12126
12223
|
* Filter condition
|
|
12127
12224
|
*/
|
|
12128
|
-
condition:
|
|
12225
|
+
condition: import_zod67.z.string().optional().describe("Filter expression (e.g., owner = currentUser)"),
|
|
12129
12226
|
/**
|
|
12130
12227
|
* Field-level access
|
|
12131
12228
|
*/
|
|
12132
|
-
fields:
|
|
12229
|
+
fields: import_zod67.z.array(import_zod67.z.string()).optional().describe("Allowed fields for data resources")
|
|
12133
12230
|
}).optional(),
|
|
12134
12231
|
/**
|
|
12135
12232
|
* Human-readable description
|
|
12136
12233
|
*/
|
|
12137
|
-
description:
|
|
12234
|
+
description: import_zod67.z.string(),
|
|
12138
12235
|
/**
|
|
12139
12236
|
* Whether this permission is required or optional
|
|
12140
12237
|
*/
|
|
12141
|
-
required:
|
|
12238
|
+
required: import_zod67.z.boolean().default(true),
|
|
12142
12239
|
/**
|
|
12143
12240
|
* Justification for permission
|
|
12144
12241
|
*/
|
|
12145
|
-
justification:
|
|
12242
|
+
justification: import_zod67.z.string().optional().describe("Why this permission is needed")
|
|
12146
12243
|
});
|
|
12147
|
-
var PermissionSetSchema2 =
|
|
12244
|
+
var PermissionSetSchema2 = import_zod67.z.object({
|
|
12148
12245
|
/**
|
|
12149
12246
|
* All permissions required by plugin
|
|
12150
12247
|
*/
|
|
12151
|
-
permissions:
|
|
12248
|
+
permissions: import_zod67.z.array(PermissionSchema),
|
|
12152
12249
|
/**
|
|
12153
12250
|
* Permission groups for easier management
|
|
12154
12251
|
*/
|
|
12155
|
-
groups:
|
|
12156
|
-
name:
|
|
12157
|
-
description:
|
|
12158
|
-
permissions:
|
|
12252
|
+
groups: import_zod67.z.array(import_zod67.z.object({
|
|
12253
|
+
name: import_zod67.z.string().describe("Group name"),
|
|
12254
|
+
description: import_zod67.z.string(),
|
|
12255
|
+
permissions: import_zod67.z.array(import_zod67.z.string()).describe("Permission IDs in this group")
|
|
12159
12256
|
})).optional(),
|
|
12160
12257
|
/**
|
|
12161
12258
|
* Default grant strategy
|
|
12162
12259
|
*/
|
|
12163
|
-
defaultGrant:
|
|
12260
|
+
defaultGrant: import_zod67.z.enum([
|
|
12164
12261
|
"prompt",
|
|
12165
12262
|
// Always prompt user
|
|
12166
12263
|
"allow",
|
|
@@ -12171,11 +12268,11 @@ var PermissionSetSchema2 = import_zod66.z.object({
|
|
|
12171
12268
|
// Inherit from parent
|
|
12172
12269
|
]).default("prompt")
|
|
12173
12270
|
});
|
|
12174
|
-
var RuntimeConfigSchema =
|
|
12271
|
+
var RuntimeConfigSchema = import_zod67.z.object({
|
|
12175
12272
|
/**
|
|
12176
12273
|
* Runtime engine type
|
|
12177
12274
|
*/
|
|
12178
|
-
engine:
|
|
12275
|
+
engine: import_zod67.z.enum([
|
|
12179
12276
|
"v8-isolate",
|
|
12180
12277
|
// V8 isolate-based isolation (lightweight, fast)
|
|
12181
12278
|
"wasm",
|
|
@@ -12188,97 +12285,97 @@ var RuntimeConfigSchema = import_zod66.z.object({
|
|
|
12188
12285
|
/**
|
|
12189
12286
|
* Engine-specific configuration
|
|
12190
12287
|
*/
|
|
12191
|
-
engineConfig:
|
|
12288
|
+
engineConfig: import_zod67.z.object({
|
|
12192
12289
|
/**
|
|
12193
12290
|
* WASM-specific settings (when engine is "wasm")
|
|
12194
12291
|
*/
|
|
12195
|
-
wasm:
|
|
12292
|
+
wasm: import_zod67.z.object({
|
|
12196
12293
|
/**
|
|
12197
12294
|
* Maximum memory pages (64KB per page)
|
|
12198
12295
|
*/
|
|
12199
|
-
maxMemoryPages:
|
|
12296
|
+
maxMemoryPages: import_zod67.z.number().int().min(1).max(65536).optional().describe("Maximum WASM memory pages (64KB each)"),
|
|
12200
12297
|
/**
|
|
12201
12298
|
* Instruction execution limit
|
|
12202
12299
|
*/
|
|
12203
|
-
instructionLimit:
|
|
12300
|
+
instructionLimit: import_zod67.z.number().int().min(1).optional().describe("Maximum instructions before timeout"),
|
|
12204
12301
|
/**
|
|
12205
12302
|
* Enable SIMD instructions
|
|
12206
12303
|
*/
|
|
12207
|
-
enableSimd:
|
|
12304
|
+
enableSimd: import_zod67.z.boolean().default(false).describe("Enable WebAssembly SIMD support"),
|
|
12208
12305
|
/**
|
|
12209
12306
|
* Enable threads
|
|
12210
12307
|
*/
|
|
12211
|
-
enableThreads:
|
|
12308
|
+
enableThreads: import_zod67.z.boolean().default(false).describe("Enable WebAssembly threads"),
|
|
12212
12309
|
/**
|
|
12213
12310
|
* Enable bulk memory operations
|
|
12214
12311
|
*/
|
|
12215
|
-
enableBulkMemory:
|
|
12312
|
+
enableBulkMemory: import_zod67.z.boolean().default(true).describe("Enable bulk memory operations")
|
|
12216
12313
|
}).optional(),
|
|
12217
12314
|
/**
|
|
12218
12315
|
* Container-specific settings (when engine is "container")
|
|
12219
12316
|
*/
|
|
12220
|
-
container:
|
|
12317
|
+
container: import_zod67.z.object({
|
|
12221
12318
|
/**
|
|
12222
12319
|
* Container image
|
|
12223
12320
|
*/
|
|
12224
|
-
image:
|
|
12321
|
+
image: import_zod67.z.string().optional().describe("Container image to use"),
|
|
12225
12322
|
/**
|
|
12226
12323
|
* Container runtime
|
|
12227
12324
|
*/
|
|
12228
|
-
runtime:
|
|
12325
|
+
runtime: import_zod67.z.enum(["docker", "podman", "containerd"]).default("docker"),
|
|
12229
12326
|
/**
|
|
12230
12327
|
* Resource limits
|
|
12231
12328
|
*/
|
|
12232
|
-
resources:
|
|
12233
|
-
cpuLimit:
|
|
12234
|
-
memoryLimit:
|
|
12329
|
+
resources: import_zod67.z.object({
|
|
12330
|
+
cpuLimit: import_zod67.z.string().optional().describe('CPU limit (e.g., "0.5", "2")'),
|
|
12331
|
+
memoryLimit: import_zod67.z.string().optional().describe('Memory limit (e.g., "512m", "1g")')
|
|
12235
12332
|
}).optional(),
|
|
12236
12333
|
/**
|
|
12237
12334
|
* Network mode
|
|
12238
12335
|
*/
|
|
12239
|
-
networkMode:
|
|
12336
|
+
networkMode: import_zod67.z.enum(["none", "bridge", "host"]).default("bridge")
|
|
12240
12337
|
}).optional(),
|
|
12241
12338
|
/**
|
|
12242
12339
|
* V8 Isolate-specific settings (when engine is "v8-isolate")
|
|
12243
12340
|
*/
|
|
12244
|
-
v8Isolate:
|
|
12341
|
+
v8Isolate: import_zod67.z.object({
|
|
12245
12342
|
/**
|
|
12246
12343
|
* Heap size limit in MB
|
|
12247
12344
|
*/
|
|
12248
|
-
heapSizeMb:
|
|
12345
|
+
heapSizeMb: import_zod67.z.number().int().min(1).optional(),
|
|
12249
12346
|
/**
|
|
12250
12347
|
* Enable snapshot
|
|
12251
12348
|
*/
|
|
12252
|
-
enableSnapshot:
|
|
12349
|
+
enableSnapshot: import_zod67.z.boolean().default(true)
|
|
12253
12350
|
}).optional()
|
|
12254
12351
|
}).optional(),
|
|
12255
12352
|
/**
|
|
12256
12353
|
* General resource limits (applies to all engines)
|
|
12257
12354
|
*/
|
|
12258
|
-
resourceLimits:
|
|
12355
|
+
resourceLimits: import_zod67.z.object({
|
|
12259
12356
|
/**
|
|
12260
12357
|
* Maximum memory in bytes
|
|
12261
12358
|
*/
|
|
12262
|
-
maxMemory:
|
|
12359
|
+
maxMemory: import_zod67.z.number().int().optional().describe("Maximum memory allocation"),
|
|
12263
12360
|
/**
|
|
12264
12361
|
* Maximum CPU percentage
|
|
12265
12362
|
*/
|
|
12266
|
-
maxCpu:
|
|
12363
|
+
maxCpu: import_zod67.z.number().min(0).max(100).optional().describe("Maximum CPU usage percentage"),
|
|
12267
12364
|
/**
|
|
12268
12365
|
* Execution timeout in milliseconds
|
|
12269
12366
|
*/
|
|
12270
|
-
timeout:
|
|
12367
|
+
timeout: import_zod67.z.number().int().min(0).optional().describe("Maximum execution time")
|
|
12271
12368
|
}).optional()
|
|
12272
12369
|
});
|
|
12273
|
-
var SandboxConfigSchema =
|
|
12370
|
+
var SandboxConfigSchema = import_zod67.z.object({
|
|
12274
12371
|
/**
|
|
12275
12372
|
* Enable sandboxing
|
|
12276
12373
|
*/
|
|
12277
|
-
enabled:
|
|
12374
|
+
enabled: import_zod67.z.boolean().default(true),
|
|
12278
12375
|
/**
|
|
12279
12376
|
* Sandboxing level
|
|
12280
12377
|
*/
|
|
12281
|
-
level:
|
|
12378
|
+
level: import_zod67.z.enum([
|
|
12282
12379
|
"none",
|
|
12283
12380
|
// No sandboxing
|
|
12284
12381
|
"minimal",
|
|
@@ -12297,239 +12394,239 @@ var SandboxConfigSchema = import_zod66.z.object({
|
|
|
12297
12394
|
/**
|
|
12298
12395
|
* File system access
|
|
12299
12396
|
*/
|
|
12300
|
-
filesystem:
|
|
12301
|
-
mode:
|
|
12302
|
-
allowedPaths:
|
|
12303
|
-
deniedPaths:
|
|
12304
|
-
maxFileSize:
|
|
12397
|
+
filesystem: import_zod67.z.object({
|
|
12398
|
+
mode: import_zod67.z.enum(["none", "readonly", "restricted", "full"]).default("restricted"),
|
|
12399
|
+
allowedPaths: import_zod67.z.array(import_zod67.z.string()).optional().describe("Whitelisted paths"),
|
|
12400
|
+
deniedPaths: import_zod67.z.array(import_zod67.z.string()).optional().describe("Blacklisted paths"),
|
|
12401
|
+
maxFileSize: import_zod67.z.number().int().optional().describe("Maximum file size in bytes")
|
|
12305
12402
|
}).optional(),
|
|
12306
12403
|
/**
|
|
12307
12404
|
* Network access
|
|
12308
12405
|
*/
|
|
12309
|
-
network:
|
|
12310
|
-
mode:
|
|
12311
|
-
allowedHosts:
|
|
12312
|
-
deniedHosts:
|
|
12313
|
-
allowedPorts:
|
|
12314
|
-
maxConnections:
|
|
12406
|
+
network: import_zod67.z.object({
|
|
12407
|
+
mode: import_zod67.z.enum(["none", "local", "restricted", "full"]).default("restricted"),
|
|
12408
|
+
allowedHosts: import_zod67.z.array(import_zod67.z.string()).optional().describe("Whitelisted hosts"),
|
|
12409
|
+
deniedHosts: import_zod67.z.array(import_zod67.z.string()).optional().describe("Blacklisted hosts"),
|
|
12410
|
+
allowedPorts: import_zod67.z.array(import_zod67.z.number()).optional().describe("Allowed port numbers"),
|
|
12411
|
+
maxConnections: import_zod67.z.number().int().optional()
|
|
12315
12412
|
}).optional(),
|
|
12316
12413
|
/**
|
|
12317
12414
|
* Process execution
|
|
12318
12415
|
*/
|
|
12319
|
-
process:
|
|
12320
|
-
allowSpawn:
|
|
12321
|
-
allowedCommands:
|
|
12322
|
-
timeout:
|
|
12416
|
+
process: import_zod67.z.object({
|
|
12417
|
+
allowSpawn: import_zod67.z.boolean().default(false).describe("Allow spawning child processes"),
|
|
12418
|
+
allowedCommands: import_zod67.z.array(import_zod67.z.string()).optional().describe("Whitelisted commands"),
|
|
12419
|
+
timeout: import_zod67.z.number().int().optional().describe("Process timeout in ms")
|
|
12323
12420
|
}).optional(),
|
|
12324
12421
|
/**
|
|
12325
12422
|
* Memory limits
|
|
12326
12423
|
*/
|
|
12327
|
-
memory:
|
|
12328
|
-
maxHeap:
|
|
12329
|
-
maxStack:
|
|
12424
|
+
memory: import_zod67.z.object({
|
|
12425
|
+
maxHeap: import_zod67.z.number().int().optional().describe("Maximum heap size in bytes"),
|
|
12426
|
+
maxStack: import_zod67.z.number().int().optional().describe("Maximum stack size in bytes")
|
|
12330
12427
|
}).optional(),
|
|
12331
12428
|
/**
|
|
12332
12429
|
* CPU limits
|
|
12333
12430
|
*/
|
|
12334
|
-
cpu:
|
|
12335
|
-
maxCpuPercent:
|
|
12336
|
-
maxThreads:
|
|
12431
|
+
cpu: import_zod67.z.object({
|
|
12432
|
+
maxCpuPercent: import_zod67.z.number().min(0).max(100).optional(),
|
|
12433
|
+
maxThreads: import_zod67.z.number().int().optional()
|
|
12337
12434
|
}).optional(),
|
|
12338
12435
|
/**
|
|
12339
12436
|
* Environment variables
|
|
12340
12437
|
*/
|
|
12341
|
-
environment:
|
|
12342
|
-
mode:
|
|
12343
|
-
allowedVars:
|
|
12344
|
-
deniedVars:
|
|
12438
|
+
environment: import_zod67.z.object({
|
|
12439
|
+
mode: import_zod67.z.enum(["none", "readonly", "restricted", "full"]).default("readonly"),
|
|
12440
|
+
allowedVars: import_zod67.z.array(import_zod67.z.string()).optional(),
|
|
12441
|
+
deniedVars: import_zod67.z.array(import_zod67.z.string()).optional()
|
|
12345
12442
|
}).optional()
|
|
12346
12443
|
});
|
|
12347
|
-
var SecurityVulnerabilitySchema =
|
|
12444
|
+
var SecurityVulnerabilitySchema = import_zod67.z.object({
|
|
12348
12445
|
/**
|
|
12349
12446
|
* CVE identifier
|
|
12350
12447
|
*/
|
|
12351
|
-
cve:
|
|
12448
|
+
cve: import_zod67.z.string().optional(),
|
|
12352
12449
|
/**
|
|
12353
12450
|
* Vulnerability identifier
|
|
12354
12451
|
*/
|
|
12355
|
-
id:
|
|
12452
|
+
id: import_zod67.z.string(),
|
|
12356
12453
|
/**
|
|
12357
12454
|
* Severity level
|
|
12358
12455
|
*/
|
|
12359
|
-
severity:
|
|
12456
|
+
severity: import_zod67.z.enum(["critical", "high", "medium", "low", "info"]),
|
|
12360
12457
|
/**
|
|
12361
12458
|
* Category (e.g., SAST, DAST, Dependency)
|
|
12362
12459
|
*/
|
|
12363
|
-
category:
|
|
12460
|
+
category: import_zod67.z.string().optional(),
|
|
12364
12461
|
/**
|
|
12365
12462
|
* Title
|
|
12366
12463
|
*/
|
|
12367
|
-
title:
|
|
12464
|
+
title: import_zod67.z.string(),
|
|
12368
12465
|
/**
|
|
12369
12466
|
* Location of the vulnerability
|
|
12370
12467
|
*/
|
|
12371
|
-
location:
|
|
12468
|
+
location: import_zod67.z.string().optional(),
|
|
12372
12469
|
/**
|
|
12373
12470
|
* Remediation steps
|
|
12374
12471
|
*/
|
|
12375
|
-
remediation:
|
|
12472
|
+
remediation: import_zod67.z.string().optional(),
|
|
12376
12473
|
/**
|
|
12377
12474
|
* Description
|
|
12378
12475
|
*/
|
|
12379
|
-
description:
|
|
12476
|
+
description: import_zod67.z.string(),
|
|
12380
12477
|
/**
|
|
12381
12478
|
* Affected versions
|
|
12382
12479
|
*/
|
|
12383
|
-
affectedVersions:
|
|
12480
|
+
affectedVersions: import_zod67.z.array(import_zod67.z.string()),
|
|
12384
12481
|
/**
|
|
12385
12482
|
* Fixed in versions
|
|
12386
12483
|
*/
|
|
12387
|
-
fixedIn:
|
|
12484
|
+
fixedIn: import_zod67.z.array(import_zod67.z.string()).optional(),
|
|
12388
12485
|
/**
|
|
12389
12486
|
* CVSS score
|
|
12390
12487
|
*/
|
|
12391
|
-
cvssScore:
|
|
12488
|
+
cvssScore: import_zod67.z.number().min(0).max(10).optional(),
|
|
12392
12489
|
/**
|
|
12393
12490
|
* Exploit availability
|
|
12394
12491
|
*/
|
|
12395
|
-
exploitAvailable:
|
|
12492
|
+
exploitAvailable: import_zod67.z.boolean().default(false),
|
|
12396
12493
|
/**
|
|
12397
12494
|
* Patch available
|
|
12398
12495
|
*/
|
|
12399
|
-
patchAvailable:
|
|
12496
|
+
patchAvailable: import_zod67.z.boolean().default(false),
|
|
12400
12497
|
/**
|
|
12401
12498
|
* Workaround
|
|
12402
12499
|
*/
|
|
12403
|
-
workaround:
|
|
12500
|
+
workaround: import_zod67.z.string().optional(),
|
|
12404
12501
|
/**
|
|
12405
12502
|
* References
|
|
12406
12503
|
*/
|
|
12407
|
-
references:
|
|
12504
|
+
references: import_zod67.z.array(import_zod67.z.string()).optional(),
|
|
12408
12505
|
/**
|
|
12409
12506
|
* Discovered date
|
|
12410
12507
|
*/
|
|
12411
|
-
discoveredDate:
|
|
12508
|
+
discoveredDate: import_zod67.z.string().datetime().optional(),
|
|
12412
12509
|
/**
|
|
12413
12510
|
* Published date
|
|
12414
12511
|
*/
|
|
12415
|
-
publishedDate:
|
|
12512
|
+
publishedDate: import_zod67.z.string().datetime().optional()
|
|
12416
12513
|
});
|
|
12417
|
-
var SecurityScanResultSchema =
|
|
12514
|
+
var SecurityScanResultSchema = import_zod67.z.object({
|
|
12418
12515
|
/**
|
|
12419
12516
|
* Scan timestamp
|
|
12420
12517
|
*/
|
|
12421
|
-
timestamp:
|
|
12518
|
+
timestamp: import_zod67.z.string().datetime(),
|
|
12422
12519
|
/**
|
|
12423
12520
|
* Scanner information
|
|
12424
12521
|
*/
|
|
12425
|
-
scanner:
|
|
12426
|
-
name:
|
|
12427
|
-
version:
|
|
12522
|
+
scanner: import_zod67.z.object({
|
|
12523
|
+
name: import_zod67.z.string(),
|
|
12524
|
+
version: import_zod67.z.string()
|
|
12428
12525
|
}),
|
|
12429
12526
|
/**
|
|
12430
12527
|
* Overall status
|
|
12431
12528
|
*/
|
|
12432
|
-
status:
|
|
12529
|
+
status: import_zod67.z.enum(["passed", "failed", "warning"]),
|
|
12433
12530
|
/**
|
|
12434
12531
|
* Vulnerabilities found
|
|
12435
12532
|
*/
|
|
12436
|
-
vulnerabilities:
|
|
12533
|
+
vulnerabilities: import_zod67.z.array(SecurityVulnerabilitySchema).optional(),
|
|
12437
12534
|
/**
|
|
12438
12535
|
* Code quality issues
|
|
12439
12536
|
*/
|
|
12440
|
-
codeIssues:
|
|
12441
|
-
severity:
|
|
12442
|
-
type:
|
|
12443
|
-
file:
|
|
12444
|
-
line:
|
|
12445
|
-
message:
|
|
12446
|
-
suggestion:
|
|
12537
|
+
codeIssues: import_zod67.z.array(import_zod67.z.object({
|
|
12538
|
+
severity: import_zod67.z.enum(["error", "warning", "info"]),
|
|
12539
|
+
type: import_zod67.z.string().describe("Issue type (e.g., sql-injection, xss)"),
|
|
12540
|
+
file: import_zod67.z.string(),
|
|
12541
|
+
line: import_zod67.z.number().int().optional(),
|
|
12542
|
+
message: import_zod67.z.string(),
|
|
12543
|
+
suggestion: import_zod67.z.string().optional()
|
|
12447
12544
|
})).optional(),
|
|
12448
12545
|
/**
|
|
12449
12546
|
* Dependency vulnerabilities
|
|
12450
12547
|
*/
|
|
12451
|
-
dependencyVulnerabilities:
|
|
12452
|
-
package:
|
|
12453
|
-
version:
|
|
12548
|
+
dependencyVulnerabilities: import_zod67.z.array(import_zod67.z.object({
|
|
12549
|
+
package: import_zod67.z.string(),
|
|
12550
|
+
version: import_zod67.z.string(),
|
|
12454
12551
|
vulnerability: SecurityVulnerabilitySchema
|
|
12455
12552
|
})).optional(),
|
|
12456
12553
|
/**
|
|
12457
12554
|
* License compliance
|
|
12458
12555
|
*/
|
|
12459
|
-
licenseCompliance:
|
|
12460
|
-
status:
|
|
12461
|
-
issues:
|
|
12462
|
-
package:
|
|
12463
|
-
license:
|
|
12464
|
-
reason:
|
|
12556
|
+
licenseCompliance: import_zod67.z.object({
|
|
12557
|
+
status: import_zod67.z.enum(["compliant", "non-compliant", "unknown"]),
|
|
12558
|
+
issues: import_zod67.z.array(import_zod67.z.object({
|
|
12559
|
+
package: import_zod67.z.string(),
|
|
12560
|
+
license: import_zod67.z.string(),
|
|
12561
|
+
reason: import_zod67.z.string()
|
|
12465
12562
|
})).optional()
|
|
12466
12563
|
}).optional(),
|
|
12467
12564
|
/**
|
|
12468
12565
|
* Summary statistics
|
|
12469
12566
|
*/
|
|
12470
|
-
summary:
|
|
12471
|
-
totalVulnerabilities:
|
|
12472
|
-
criticalCount:
|
|
12473
|
-
highCount:
|
|
12474
|
-
mediumCount:
|
|
12475
|
-
lowCount:
|
|
12476
|
-
infoCount:
|
|
12567
|
+
summary: import_zod67.z.object({
|
|
12568
|
+
totalVulnerabilities: import_zod67.z.number().int(),
|
|
12569
|
+
criticalCount: import_zod67.z.number().int(),
|
|
12570
|
+
highCount: import_zod67.z.number().int(),
|
|
12571
|
+
mediumCount: import_zod67.z.number().int(),
|
|
12572
|
+
lowCount: import_zod67.z.number().int(),
|
|
12573
|
+
infoCount: import_zod67.z.number().int()
|
|
12477
12574
|
})
|
|
12478
12575
|
});
|
|
12479
|
-
var SecurityPolicySchema =
|
|
12576
|
+
var SecurityPolicySchema = import_zod67.z.object({
|
|
12480
12577
|
/**
|
|
12481
12578
|
* Content Security Policy
|
|
12482
12579
|
*/
|
|
12483
|
-
csp:
|
|
12484
|
-
directives:
|
|
12485
|
-
reportOnly:
|
|
12580
|
+
csp: import_zod67.z.object({
|
|
12581
|
+
directives: import_zod67.z.record(import_zod67.z.string(), import_zod67.z.array(import_zod67.z.string())).optional(),
|
|
12582
|
+
reportOnly: import_zod67.z.boolean().default(false)
|
|
12486
12583
|
}).optional(),
|
|
12487
12584
|
/**
|
|
12488
12585
|
* CORS policy
|
|
12489
12586
|
*/
|
|
12490
|
-
cors:
|
|
12491
|
-
allowedOrigins:
|
|
12492
|
-
allowedMethods:
|
|
12493
|
-
allowedHeaders:
|
|
12494
|
-
allowCredentials:
|
|
12495
|
-
maxAge:
|
|
12587
|
+
cors: import_zod67.z.object({
|
|
12588
|
+
allowedOrigins: import_zod67.z.array(import_zod67.z.string()),
|
|
12589
|
+
allowedMethods: import_zod67.z.array(import_zod67.z.string()),
|
|
12590
|
+
allowedHeaders: import_zod67.z.array(import_zod67.z.string()),
|
|
12591
|
+
allowCredentials: import_zod67.z.boolean().default(false),
|
|
12592
|
+
maxAge: import_zod67.z.number().int().optional()
|
|
12496
12593
|
}).optional(),
|
|
12497
12594
|
/**
|
|
12498
12595
|
* Rate limiting
|
|
12499
12596
|
*/
|
|
12500
|
-
rateLimit:
|
|
12501
|
-
enabled:
|
|
12502
|
-
maxRequests:
|
|
12503
|
-
windowMs:
|
|
12504
|
-
strategy:
|
|
12597
|
+
rateLimit: import_zod67.z.object({
|
|
12598
|
+
enabled: import_zod67.z.boolean().default(true),
|
|
12599
|
+
maxRequests: import_zod67.z.number().int(),
|
|
12600
|
+
windowMs: import_zod67.z.number().int().describe("Time window in milliseconds"),
|
|
12601
|
+
strategy: import_zod67.z.enum(["fixed", "sliding", "token-bucket"]).default("sliding")
|
|
12505
12602
|
}).optional(),
|
|
12506
12603
|
/**
|
|
12507
12604
|
* Authentication requirements
|
|
12508
12605
|
*/
|
|
12509
|
-
authentication:
|
|
12510
|
-
required:
|
|
12511
|
-
methods:
|
|
12512
|
-
tokenExpiration:
|
|
12606
|
+
authentication: import_zod67.z.object({
|
|
12607
|
+
required: import_zod67.z.boolean().default(true),
|
|
12608
|
+
methods: import_zod67.z.array(import_zod67.z.enum(["jwt", "oauth2", "api-key", "session", "certificate"])),
|
|
12609
|
+
tokenExpiration: import_zod67.z.number().int().optional().describe("Token expiration in seconds")
|
|
12513
12610
|
}).optional(),
|
|
12514
12611
|
/**
|
|
12515
12612
|
* Encryption requirements
|
|
12516
12613
|
*/
|
|
12517
|
-
encryption:
|
|
12518
|
-
dataAtRest:
|
|
12519
|
-
dataInTransit:
|
|
12520
|
-
algorithm:
|
|
12521
|
-
minKeyLength:
|
|
12614
|
+
encryption: import_zod67.z.object({
|
|
12615
|
+
dataAtRest: import_zod67.z.boolean().default(false).describe("Encrypt data at rest"),
|
|
12616
|
+
dataInTransit: import_zod67.z.boolean().default(true).describe("Enforce HTTPS/TLS"),
|
|
12617
|
+
algorithm: import_zod67.z.string().optional().describe("Encryption algorithm"),
|
|
12618
|
+
minKeyLength: import_zod67.z.number().int().optional().describe("Minimum key length in bits")
|
|
12522
12619
|
}).optional(),
|
|
12523
12620
|
/**
|
|
12524
12621
|
* Audit logging
|
|
12525
12622
|
*/
|
|
12526
|
-
auditLog:
|
|
12527
|
-
enabled:
|
|
12528
|
-
events:
|
|
12529
|
-
retention:
|
|
12623
|
+
auditLog: import_zod67.z.object({
|
|
12624
|
+
enabled: import_zod67.z.boolean().default(true),
|
|
12625
|
+
events: import_zod67.z.array(import_zod67.z.string()).optional().describe("Events to log"),
|
|
12626
|
+
retention: import_zod67.z.number().int().optional().describe("Log retention in days")
|
|
12530
12627
|
}).optional()
|
|
12531
12628
|
});
|
|
12532
|
-
var PluginTrustLevelSchema =
|
|
12629
|
+
var PluginTrustLevelSchema = import_zod67.z.enum([
|
|
12533
12630
|
"verified",
|
|
12534
12631
|
// Official/verified plugin
|
|
12535
12632
|
"trusted",
|
|
@@ -12541,11 +12638,11 @@ var PluginTrustLevelSchema = import_zod66.z.enum([
|
|
|
12541
12638
|
"blocked"
|
|
12542
12639
|
// Blocked/malicious
|
|
12543
12640
|
]).describe("Trust level of the plugin");
|
|
12544
|
-
var PluginSecurityManifestSchema =
|
|
12641
|
+
var PluginSecurityManifestSchema = import_zod67.z.object({
|
|
12545
12642
|
/**
|
|
12546
12643
|
* Plugin identifier
|
|
12547
12644
|
*/
|
|
12548
|
-
pluginId:
|
|
12645
|
+
pluginId: import_zod67.z.string(),
|
|
12549
12646
|
/**
|
|
12550
12647
|
* Trust level
|
|
12551
12648
|
*/
|
|
@@ -12565,54 +12662,54 @@ var PluginSecurityManifestSchema = import_zod66.z.object({
|
|
|
12565
12662
|
/**
|
|
12566
12663
|
* Security scan results
|
|
12567
12664
|
*/
|
|
12568
|
-
scanResults:
|
|
12665
|
+
scanResults: import_zod67.z.array(SecurityScanResultSchema).optional(),
|
|
12569
12666
|
/**
|
|
12570
12667
|
* Known vulnerabilities
|
|
12571
12668
|
*/
|
|
12572
|
-
vulnerabilities:
|
|
12669
|
+
vulnerabilities: import_zod67.z.array(SecurityVulnerabilitySchema).optional(),
|
|
12573
12670
|
/**
|
|
12574
12671
|
* Code signing
|
|
12575
12672
|
*/
|
|
12576
|
-
codeSigning:
|
|
12577
|
-
signed:
|
|
12578
|
-
signature:
|
|
12579
|
-
certificate:
|
|
12580
|
-
algorithm:
|
|
12581
|
-
timestamp:
|
|
12673
|
+
codeSigning: import_zod67.z.object({
|
|
12674
|
+
signed: import_zod67.z.boolean(),
|
|
12675
|
+
signature: import_zod67.z.string().optional(),
|
|
12676
|
+
certificate: import_zod67.z.string().optional(),
|
|
12677
|
+
algorithm: import_zod67.z.string().optional(),
|
|
12678
|
+
timestamp: import_zod67.z.string().datetime().optional()
|
|
12582
12679
|
}).optional(),
|
|
12583
12680
|
/**
|
|
12584
12681
|
* Security certifications
|
|
12585
12682
|
*/
|
|
12586
|
-
certifications:
|
|
12587
|
-
name:
|
|
12588
|
-
issuer:
|
|
12589
|
-
issuedDate:
|
|
12590
|
-
expiryDate:
|
|
12591
|
-
certificateUrl:
|
|
12683
|
+
certifications: import_zod67.z.array(import_zod67.z.object({
|
|
12684
|
+
name: import_zod67.z.string().describe("Certification name (e.g., SOC 2, ISO 27001)"),
|
|
12685
|
+
issuer: import_zod67.z.string(),
|
|
12686
|
+
issuedDate: import_zod67.z.string().datetime(),
|
|
12687
|
+
expiryDate: import_zod67.z.string().datetime().optional(),
|
|
12688
|
+
certificateUrl: import_zod67.z.string().url().optional()
|
|
12592
12689
|
})).optional(),
|
|
12593
12690
|
/**
|
|
12594
12691
|
* Security contact
|
|
12595
12692
|
*/
|
|
12596
|
-
securityContact:
|
|
12597
|
-
email:
|
|
12598
|
-
url:
|
|
12599
|
-
pgpKey:
|
|
12693
|
+
securityContact: import_zod67.z.object({
|
|
12694
|
+
email: import_zod67.z.string().email().optional(),
|
|
12695
|
+
url: import_zod67.z.string().url().optional(),
|
|
12696
|
+
pgpKey: import_zod67.z.string().optional()
|
|
12600
12697
|
}).optional(),
|
|
12601
12698
|
/**
|
|
12602
12699
|
* Vulnerability disclosure policy
|
|
12603
12700
|
*/
|
|
12604
|
-
vulnerabilityDisclosure:
|
|
12605
|
-
policyUrl:
|
|
12606
|
-
responseTime:
|
|
12607
|
-
bugBounty:
|
|
12701
|
+
vulnerabilityDisclosure: import_zod67.z.object({
|
|
12702
|
+
policyUrl: import_zod67.z.string().url().optional(),
|
|
12703
|
+
responseTime: import_zod67.z.number().int().optional().describe("Expected response time in hours"),
|
|
12704
|
+
bugBounty: import_zod67.z.boolean().default(false)
|
|
12608
12705
|
}).optional()
|
|
12609
12706
|
});
|
|
12610
12707
|
|
|
12611
12708
|
// src/kernel/plugin-structure.zod.ts
|
|
12612
|
-
var
|
|
12709
|
+
var import_zod68 = require("zod");
|
|
12613
12710
|
var SNAKE_CASE_REGEX = /^[a-z][a-z0-9_]*$/;
|
|
12614
12711
|
var OPS_FILE_SUFFIX_REGEX = /\.(object|field|trigger|function|view|page|dashboard|flow|app|router|service)\.ts$/;
|
|
12615
|
-
var OpsFilePathSchema =
|
|
12712
|
+
var OpsFilePathSchema = import_zod68.z.string().superRefine((path, ctx) => {
|
|
12616
12713
|
if (!path.startsWith("src/")) {
|
|
12617
12714
|
return;
|
|
12618
12715
|
}
|
|
@@ -12621,7 +12718,7 @@ var OpsFilePathSchema = import_zod67.z.string().superRefine((path, ctx) => {
|
|
|
12621
12718
|
const domainDir = parts[1];
|
|
12622
12719
|
if (!SNAKE_CASE_REGEX.test(domainDir)) {
|
|
12623
12720
|
ctx.addIssue({
|
|
12624
|
-
code:
|
|
12721
|
+
code: import_zod68.z.ZodIssueCode.custom,
|
|
12625
12722
|
message: `Domain directory '${domainDir}' must be lowercase snake_case`
|
|
12626
12723
|
});
|
|
12627
12724
|
}
|
|
@@ -12630,31 +12727,31 @@ var OpsFilePathSchema = import_zod67.z.string().superRefine((path, ctx) => {
|
|
|
12630
12727
|
if (filename === "index.ts" || filename === "main.ts") return;
|
|
12631
12728
|
if (!SNAKE_CASE_REGEX.test(filename.split(".")[0])) {
|
|
12632
12729
|
ctx.addIssue({
|
|
12633
|
-
code:
|
|
12730
|
+
code: import_zod68.z.ZodIssueCode.custom,
|
|
12634
12731
|
message: `Filename '${filename}' base name must be lowercase snake_case`
|
|
12635
12732
|
});
|
|
12636
12733
|
}
|
|
12637
12734
|
if (!OPS_FILE_SUFFIX_REGEX.test(filename)) {
|
|
12638
12735
|
}
|
|
12639
12736
|
});
|
|
12640
|
-
var OpsDomainModuleSchema =
|
|
12641
|
-
name:
|
|
12642
|
-
files:
|
|
12737
|
+
var OpsDomainModuleSchema = import_zod68.z.object({
|
|
12738
|
+
name: import_zod68.z.string().regex(SNAKE_CASE_REGEX),
|
|
12739
|
+
files: import_zod68.z.array(import_zod68.z.string())
|
|
12643
12740
|
}).superRefine((module2, ctx) => {
|
|
12644
12741
|
if (!module2.files.includes("index.ts")) {
|
|
12645
12742
|
ctx.addIssue({
|
|
12646
|
-
code:
|
|
12743
|
+
code: import_zod68.z.ZodIssueCode.custom,
|
|
12647
12744
|
message: `Module '${module2.name}' is missing an 'index.ts' entry point.`
|
|
12648
12745
|
});
|
|
12649
12746
|
}
|
|
12650
12747
|
});
|
|
12651
|
-
var OpsPluginStructureSchema =
|
|
12652
|
-
root:
|
|
12653
|
-
files:
|
|
12748
|
+
var OpsPluginStructureSchema = import_zod68.z.object({
|
|
12749
|
+
root: import_zod68.z.string(),
|
|
12750
|
+
files: import_zod68.z.array(import_zod68.z.string()).describe("List of all file paths relative to root")
|
|
12654
12751
|
}).superRefine((project, ctx) => {
|
|
12655
12752
|
if (!project.files.includes("objectstack.config.ts")) {
|
|
12656
12753
|
ctx.addIssue({
|
|
12657
|
-
code:
|
|
12754
|
+
code: import_zod68.z.ZodIssueCode.custom,
|
|
12658
12755
|
message: "Missing 'objectstack.config.ts' configuration file."
|
|
12659
12756
|
});
|
|
12660
12757
|
}
|
|
@@ -12669,93 +12766,93 @@ var OpsPluginStructureSchema = import_zod67.z.object({
|
|
|
12669
12766
|
});
|
|
12670
12767
|
|
|
12671
12768
|
// src/kernel/plugin-validator.zod.ts
|
|
12672
|
-
var
|
|
12673
|
-
var ValidationErrorSchema =
|
|
12769
|
+
var import_zod69 = require("zod");
|
|
12770
|
+
var ValidationErrorSchema = import_zod69.z.object({
|
|
12674
12771
|
/**
|
|
12675
12772
|
* Field that failed validation
|
|
12676
12773
|
*/
|
|
12677
|
-
field:
|
|
12774
|
+
field: import_zod69.z.string().describe("Field name that failed validation"),
|
|
12678
12775
|
/**
|
|
12679
12776
|
* Human-readable error message
|
|
12680
12777
|
*/
|
|
12681
|
-
message:
|
|
12778
|
+
message: import_zod69.z.string().describe("Human-readable error message"),
|
|
12682
12779
|
/**
|
|
12683
12780
|
* Machine-readable error code (optional)
|
|
12684
12781
|
*/
|
|
12685
|
-
code:
|
|
12782
|
+
code: import_zod69.z.string().optional().describe("Machine-readable error code")
|
|
12686
12783
|
});
|
|
12687
|
-
var ValidationWarningSchema =
|
|
12784
|
+
var ValidationWarningSchema = import_zod69.z.object({
|
|
12688
12785
|
/**
|
|
12689
12786
|
* Field with warning
|
|
12690
12787
|
*/
|
|
12691
|
-
field:
|
|
12788
|
+
field: import_zod69.z.string().describe("Field name with warning"),
|
|
12692
12789
|
/**
|
|
12693
12790
|
* Human-readable warning message
|
|
12694
12791
|
*/
|
|
12695
|
-
message:
|
|
12792
|
+
message: import_zod69.z.string().describe("Human-readable warning message"),
|
|
12696
12793
|
/**
|
|
12697
12794
|
* Machine-readable warning code (optional)
|
|
12698
12795
|
*/
|
|
12699
|
-
code:
|
|
12796
|
+
code: import_zod69.z.string().optional().describe("Machine-readable warning code")
|
|
12700
12797
|
});
|
|
12701
|
-
var ValidationResultSchema =
|
|
12798
|
+
var ValidationResultSchema = import_zod69.z.object({
|
|
12702
12799
|
/**
|
|
12703
12800
|
* Whether validation passed
|
|
12704
12801
|
*/
|
|
12705
|
-
valid:
|
|
12802
|
+
valid: import_zod69.z.boolean().describe("Whether the plugin passed validation"),
|
|
12706
12803
|
/**
|
|
12707
12804
|
* Validation errors (if any)
|
|
12708
12805
|
*/
|
|
12709
|
-
errors:
|
|
12806
|
+
errors: import_zod69.z.array(ValidationErrorSchema).optional().describe("Validation errors"),
|
|
12710
12807
|
/**
|
|
12711
12808
|
* Validation warnings (non-fatal issues)
|
|
12712
12809
|
*/
|
|
12713
|
-
warnings:
|
|
12810
|
+
warnings: import_zod69.z.array(ValidationWarningSchema).optional().describe("Validation warnings")
|
|
12714
12811
|
});
|
|
12715
|
-
var PluginMetadataSchema =
|
|
12812
|
+
var PluginMetadataSchema = import_zod69.z.object({
|
|
12716
12813
|
/**
|
|
12717
12814
|
* Unique plugin identifier (snake_case)
|
|
12718
12815
|
*/
|
|
12719
|
-
name:
|
|
12816
|
+
name: import_zod69.z.string().min(1).describe("Unique plugin identifier"),
|
|
12720
12817
|
/**
|
|
12721
12818
|
* Plugin version (semver)
|
|
12722
12819
|
*/
|
|
12723
|
-
version:
|
|
12820
|
+
version: import_zod69.z.string().regex(/^\d+\.\d+\.\d+$/).optional().describe("Semantic version (e.g., 1.0.0)"),
|
|
12724
12821
|
/**
|
|
12725
12822
|
* Plugin dependencies (array of plugin names)
|
|
12726
12823
|
*/
|
|
12727
|
-
dependencies:
|
|
12824
|
+
dependencies: import_zod69.z.array(import_zod69.z.string()).optional().describe("Array of plugin names this plugin depends on"),
|
|
12728
12825
|
/**
|
|
12729
12826
|
* Plugin signature for cryptographic verification (optional)
|
|
12730
12827
|
*/
|
|
12731
|
-
signature:
|
|
12828
|
+
signature: import_zod69.z.string().optional().describe("Cryptographic signature for plugin verification")
|
|
12732
12829
|
/**
|
|
12733
12830
|
* Additional plugin metadata
|
|
12734
12831
|
*/
|
|
12735
12832
|
}).passthrough().describe("Plugin metadata for validation");
|
|
12736
12833
|
|
|
12737
12834
|
// src/kernel/plugin-versioning.zod.ts
|
|
12738
|
-
var
|
|
12739
|
-
var SemanticVersionSchema =
|
|
12740
|
-
major:
|
|
12741
|
-
minor:
|
|
12742
|
-
patch:
|
|
12743
|
-
preRelease:
|
|
12744
|
-
build:
|
|
12835
|
+
var import_zod70 = require("zod");
|
|
12836
|
+
var SemanticVersionSchema = import_zod70.z.object({
|
|
12837
|
+
major: import_zod70.z.number().int().min(0).describe("Major version (breaking changes)"),
|
|
12838
|
+
minor: import_zod70.z.number().int().min(0).describe("Minor version (backward compatible features)"),
|
|
12839
|
+
patch: import_zod70.z.number().int().min(0).describe("Patch version (backward compatible fixes)"),
|
|
12840
|
+
preRelease: import_zod70.z.string().optional().describe("Pre-release identifier (alpha, beta, rc.1)"),
|
|
12841
|
+
build: import_zod70.z.string().optional().describe("Build metadata")
|
|
12745
12842
|
}).describe("Semantic version number");
|
|
12746
|
-
var VersionConstraintSchema =
|
|
12747
|
-
|
|
12748
|
-
|
|
12749
|
-
|
|
12750
|
-
|
|
12751
|
-
|
|
12752
|
-
|
|
12753
|
-
|
|
12754
|
-
|
|
12755
|
-
|
|
12756
|
-
|
|
12843
|
+
var VersionConstraintSchema = import_zod70.z.union([
|
|
12844
|
+
import_zod70.z.string().regex(/^[\d.]+$/).describe("Exact version: `1.2.3`"),
|
|
12845
|
+
import_zod70.z.string().regex(/^\^[\d.]+$/).describe("Compatible with: `^1.2.3` (`>=1.2.3 <2.0.0`)"),
|
|
12846
|
+
import_zod70.z.string().regex(/^~[\d.]+$/).describe("Approximately: `~1.2.3` (`>=1.2.3 <1.3.0`)"),
|
|
12847
|
+
import_zod70.z.string().regex(/^>=[\d.]+$/).describe("Greater than or equal: `>=1.2.3`"),
|
|
12848
|
+
import_zod70.z.string().regex(/^>[\d.]+$/).describe("Greater than: `>1.2.3`"),
|
|
12849
|
+
import_zod70.z.string().regex(/^<=[\d.]+$/).describe("Less than or equal: `<=1.2.3`"),
|
|
12850
|
+
import_zod70.z.string().regex(/^<[\d.]+$/).describe("Less than: `<1.2.3`"),
|
|
12851
|
+
import_zod70.z.string().regex(/^[\d.]+ - [\d.]+$/).describe("Range: `1.2.3 - 2.3.4`"),
|
|
12852
|
+
import_zod70.z.literal("*").describe("Any version"),
|
|
12853
|
+
import_zod70.z.literal("latest").describe("Latest stable version")
|
|
12757
12854
|
]);
|
|
12758
|
-
var CompatibilityLevelSchema =
|
|
12855
|
+
var CompatibilityLevelSchema = import_zod70.z.enum([
|
|
12759
12856
|
"fully-compatible",
|
|
12760
12857
|
// 100% compatible, drop-in replacement
|
|
12761
12858
|
"backward-compatible",
|
|
@@ -12767,15 +12864,15 @@ var CompatibilityLevelSchema = import_zod69.z.enum([
|
|
|
12767
12864
|
"incompatible"
|
|
12768
12865
|
// Completely incompatible
|
|
12769
12866
|
]).describe("Compatibility level between versions");
|
|
12770
|
-
var BreakingChangeSchema =
|
|
12867
|
+
var BreakingChangeSchema = import_zod70.z.object({
|
|
12771
12868
|
/**
|
|
12772
12869
|
* Version where the change was introduced
|
|
12773
12870
|
*/
|
|
12774
|
-
introducedIn:
|
|
12871
|
+
introducedIn: import_zod70.z.string().describe("Version that introduced this breaking change"),
|
|
12775
12872
|
/**
|
|
12776
12873
|
* Type of breaking change
|
|
12777
12874
|
*/
|
|
12778
|
-
type:
|
|
12875
|
+
type: import_zod70.z.enum([
|
|
12779
12876
|
"api-removed",
|
|
12780
12877
|
// API removed
|
|
12781
12878
|
"api-renamed",
|
|
@@ -12794,63 +12891,63 @@ var BreakingChangeSchema = import_zod69.z.object({
|
|
|
12794
12891
|
/**
|
|
12795
12892
|
* What was changed
|
|
12796
12893
|
*/
|
|
12797
|
-
description:
|
|
12894
|
+
description: import_zod70.z.string(),
|
|
12798
12895
|
/**
|
|
12799
12896
|
* Migration guide
|
|
12800
12897
|
*/
|
|
12801
|
-
migrationGuide:
|
|
12898
|
+
migrationGuide: import_zod70.z.string().optional().describe("How to migrate from old to new"),
|
|
12802
12899
|
/**
|
|
12803
12900
|
* Deprecated in version
|
|
12804
12901
|
*/
|
|
12805
|
-
deprecatedIn:
|
|
12902
|
+
deprecatedIn: import_zod70.z.string().optional().describe("Version where old API was deprecated"),
|
|
12806
12903
|
/**
|
|
12807
12904
|
* Will be removed in version
|
|
12808
12905
|
*/
|
|
12809
|
-
removedIn:
|
|
12906
|
+
removedIn: import_zod70.z.string().optional().describe("Version where old API will be removed"),
|
|
12810
12907
|
/**
|
|
12811
12908
|
* Automated migration available
|
|
12812
12909
|
*/
|
|
12813
|
-
automatedMigration:
|
|
12910
|
+
automatedMigration: import_zod70.z.boolean().default(false).describe("Whether automated migration tool is available"),
|
|
12814
12911
|
/**
|
|
12815
12912
|
* Impact severity
|
|
12816
12913
|
*/
|
|
12817
|
-
severity:
|
|
12914
|
+
severity: import_zod70.z.enum(["critical", "major", "minor"]).describe("Impact severity")
|
|
12818
12915
|
});
|
|
12819
|
-
var DeprecationNoticeSchema =
|
|
12916
|
+
var DeprecationNoticeSchema = import_zod70.z.object({
|
|
12820
12917
|
/**
|
|
12821
12918
|
* Feature or API being deprecated
|
|
12822
12919
|
*/
|
|
12823
|
-
feature:
|
|
12920
|
+
feature: import_zod70.z.string().describe("Deprecated feature identifier"),
|
|
12824
12921
|
/**
|
|
12825
12922
|
* Version when deprecated
|
|
12826
12923
|
*/
|
|
12827
|
-
deprecatedIn:
|
|
12924
|
+
deprecatedIn: import_zod70.z.string(),
|
|
12828
12925
|
/**
|
|
12829
12926
|
* Planned removal version
|
|
12830
12927
|
*/
|
|
12831
|
-
removeIn:
|
|
12928
|
+
removeIn: import_zod70.z.string().optional(),
|
|
12832
12929
|
/**
|
|
12833
12930
|
* Reason for deprecation
|
|
12834
12931
|
*/
|
|
12835
|
-
reason:
|
|
12932
|
+
reason: import_zod70.z.string(),
|
|
12836
12933
|
/**
|
|
12837
12934
|
* Recommended alternative
|
|
12838
12935
|
*/
|
|
12839
|
-
alternative:
|
|
12936
|
+
alternative: import_zod70.z.string().optional().describe("What to use instead"),
|
|
12840
12937
|
/**
|
|
12841
12938
|
* Migration path
|
|
12842
12939
|
*/
|
|
12843
|
-
migrationPath:
|
|
12940
|
+
migrationPath: import_zod70.z.string().optional().describe("How to migrate to alternative")
|
|
12844
12941
|
});
|
|
12845
|
-
var CompatibilityMatrixEntrySchema =
|
|
12942
|
+
var CompatibilityMatrixEntrySchema = import_zod70.z.object({
|
|
12846
12943
|
/**
|
|
12847
12944
|
* Source version
|
|
12848
12945
|
*/
|
|
12849
|
-
from:
|
|
12946
|
+
from: import_zod70.z.string().describe("Version being upgraded from"),
|
|
12850
12947
|
/**
|
|
12851
12948
|
* Target version
|
|
12852
12949
|
*/
|
|
12853
|
-
to:
|
|
12950
|
+
to: import_zod70.z.string().describe("Version being upgraded to"),
|
|
12854
12951
|
/**
|
|
12855
12952
|
* Compatibility level
|
|
12856
12953
|
*/
|
|
@@ -12858,60 +12955,60 @@ var CompatibilityMatrixEntrySchema = import_zod69.z.object({
|
|
|
12858
12955
|
/**
|
|
12859
12956
|
* Breaking changes list
|
|
12860
12957
|
*/
|
|
12861
|
-
breakingChanges:
|
|
12958
|
+
breakingChanges: import_zod70.z.array(BreakingChangeSchema).optional(),
|
|
12862
12959
|
/**
|
|
12863
12960
|
* Migration required
|
|
12864
12961
|
*/
|
|
12865
|
-
migrationRequired:
|
|
12962
|
+
migrationRequired: import_zod70.z.boolean().default(false),
|
|
12866
12963
|
/**
|
|
12867
12964
|
* Migration complexity
|
|
12868
12965
|
*/
|
|
12869
|
-
migrationComplexity:
|
|
12966
|
+
migrationComplexity: import_zod70.z.enum(["trivial", "simple", "moderate", "complex", "major"]).optional(),
|
|
12870
12967
|
/**
|
|
12871
12968
|
* Estimated migration time in hours
|
|
12872
12969
|
*/
|
|
12873
|
-
estimatedMigrationTime:
|
|
12970
|
+
estimatedMigrationTime: import_zod70.z.number().optional(),
|
|
12874
12971
|
/**
|
|
12875
12972
|
* Migration script available
|
|
12876
12973
|
*/
|
|
12877
|
-
migrationScript:
|
|
12974
|
+
migrationScript: import_zod70.z.string().optional().describe("Path to migration script"),
|
|
12878
12975
|
/**
|
|
12879
12976
|
* Test coverage for migration
|
|
12880
12977
|
*/
|
|
12881
|
-
testCoverage:
|
|
12978
|
+
testCoverage: import_zod70.z.number().min(0).max(100).optional().describe("Percentage of migration covered by tests")
|
|
12882
12979
|
});
|
|
12883
|
-
var PluginCompatibilityMatrixSchema =
|
|
12980
|
+
var PluginCompatibilityMatrixSchema = import_zod70.z.object({
|
|
12884
12981
|
/**
|
|
12885
12982
|
* Plugin identifier
|
|
12886
12983
|
*/
|
|
12887
|
-
pluginId:
|
|
12984
|
+
pluginId: import_zod70.z.string(),
|
|
12888
12985
|
/**
|
|
12889
12986
|
* Current version
|
|
12890
12987
|
*/
|
|
12891
|
-
currentVersion:
|
|
12988
|
+
currentVersion: import_zod70.z.string(),
|
|
12892
12989
|
/**
|
|
12893
12990
|
* Compatibility entries
|
|
12894
12991
|
*/
|
|
12895
|
-
compatibilityMatrix:
|
|
12992
|
+
compatibilityMatrix: import_zod70.z.array(CompatibilityMatrixEntrySchema),
|
|
12896
12993
|
/**
|
|
12897
12994
|
* Supported versions
|
|
12898
12995
|
*/
|
|
12899
|
-
supportedVersions:
|
|
12900
|
-
version:
|
|
12901
|
-
supported:
|
|
12902
|
-
endOfLife:
|
|
12903
|
-
securitySupport:
|
|
12996
|
+
supportedVersions: import_zod70.z.array(import_zod70.z.object({
|
|
12997
|
+
version: import_zod70.z.string(),
|
|
12998
|
+
supported: import_zod70.z.boolean(),
|
|
12999
|
+
endOfLife: import_zod70.z.string().datetime().optional().describe("End of support date"),
|
|
13000
|
+
securitySupport: import_zod70.z.boolean().default(false).describe("Still receives security updates")
|
|
12904
13001
|
})),
|
|
12905
13002
|
/**
|
|
12906
13003
|
* Minimum compatible version
|
|
12907
13004
|
*/
|
|
12908
|
-
minimumCompatibleVersion:
|
|
13005
|
+
minimumCompatibleVersion: import_zod70.z.string().optional().describe("Oldest version that can be directly upgraded")
|
|
12909
13006
|
});
|
|
12910
|
-
var DependencyConflictSchema =
|
|
13007
|
+
var DependencyConflictSchema = import_zod70.z.object({
|
|
12911
13008
|
/**
|
|
12912
13009
|
* Type of conflict
|
|
12913
13010
|
*/
|
|
12914
|
-
type:
|
|
13011
|
+
type: import_zod70.z.enum([
|
|
12915
13012
|
"version-mismatch",
|
|
12916
13013
|
// Different versions required
|
|
12917
13014
|
"missing-dependency",
|
|
@@ -12926,20 +13023,20 @@ var DependencyConflictSchema = import_zod69.z.object({
|
|
|
12926
13023
|
/**
|
|
12927
13024
|
* Plugins involved in conflict
|
|
12928
13025
|
*/
|
|
12929
|
-
plugins:
|
|
12930
|
-
pluginId:
|
|
12931
|
-
version:
|
|
12932
|
-
requirement:
|
|
13026
|
+
plugins: import_zod70.z.array(import_zod70.z.object({
|
|
13027
|
+
pluginId: import_zod70.z.string(),
|
|
13028
|
+
version: import_zod70.z.string(),
|
|
13029
|
+
requirement: import_zod70.z.string().optional().describe("What this plugin requires")
|
|
12933
13030
|
})),
|
|
12934
13031
|
/**
|
|
12935
13032
|
* Conflict description
|
|
12936
13033
|
*/
|
|
12937
|
-
description:
|
|
13034
|
+
description: import_zod70.z.string(),
|
|
12938
13035
|
/**
|
|
12939
13036
|
* Possible resolutions
|
|
12940
13037
|
*/
|
|
12941
|
-
resolutions:
|
|
12942
|
-
strategy:
|
|
13038
|
+
resolutions: import_zod70.z.array(import_zod70.z.object({
|
|
13039
|
+
strategy: import_zod70.z.enum([
|
|
12943
13040
|
"upgrade",
|
|
12944
13041
|
// Upgrade one or more plugins
|
|
12945
13042
|
"downgrade",
|
|
@@ -12951,58 +13048,58 @@ var DependencyConflictSchema = import_zod69.z.object({
|
|
|
12951
13048
|
"manual"
|
|
12952
13049
|
// Manual intervention required
|
|
12953
13050
|
]),
|
|
12954
|
-
description:
|
|
12955
|
-
automaticResolution:
|
|
12956
|
-
riskLevel:
|
|
13051
|
+
description: import_zod70.z.string(),
|
|
13052
|
+
automaticResolution: import_zod70.z.boolean().default(false),
|
|
13053
|
+
riskLevel: import_zod70.z.enum(["low", "medium", "high"])
|
|
12957
13054
|
})).optional(),
|
|
12958
13055
|
/**
|
|
12959
13056
|
* Severity of conflict
|
|
12960
13057
|
*/
|
|
12961
|
-
severity:
|
|
13058
|
+
severity: import_zod70.z.enum(["critical", "error", "warning", "info"])
|
|
12962
13059
|
});
|
|
12963
|
-
var DependencyResolutionResultSchema =
|
|
13060
|
+
var DependencyResolutionResultSchema = import_zod70.z.object({
|
|
12964
13061
|
/**
|
|
12965
13062
|
* Resolution successful
|
|
12966
13063
|
*/
|
|
12967
|
-
success:
|
|
13064
|
+
success: import_zod70.z.boolean(),
|
|
12968
13065
|
/**
|
|
12969
13066
|
* Resolved plugin versions
|
|
12970
13067
|
*/
|
|
12971
|
-
resolved:
|
|
12972
|
-
pluginId:
|
|
12973
|
-
version:
|
|
12974
|
-
resolvedVersion:
|
|
13068
|
+
resolved: import_zod70.z.array(import_zod70.z.object({
|
|
13069
|
+
pluginId: import_zod70.z.string(),
|
|
13070
|
+
version: import_zod70.z.string(),
|
|
13071
|
+
resolvedVersion: import_zod70.z.string()
|
|
12975
13072
|
})).optional(),
|
|
12976
13073
|
/**
|
|
12977
13074
|
* Conflicts found
|
|
12978
13075
|
*/
|
|
12979
|
-
conflicts:
|
|
13076
|
+
conflicts: import_zod70.z.array(DependencyConflictSchema).optional(),
|
|
12980
13077
|
/**
|
|
12981
13078
|
* Warnings
|
|
12982
13079
|
*/
|
|
12983
|
-
warnings:
|
|
13080
|
+
warnings: import_zod70.z.array(import_zod70.z.string()).optional(),
|
|
12984
13081
|
/**
|
|
12985
13082
|
* Installation order (topologically sorted)
|
|
12986
13083
|
*/
|
|
12987
|
-
installationOrder:
|
|
13084
|
+
installationOrder: import_zod70.z.array(import_zod70.z.string()).optional().describe("Plugin IDs in order they should be installed"),
|
|
12988
13085
|
/**
|
|
12989
13086
|
* Dependency graph
|
|
12990
13087
|
*/
|
|
12991
|
-
dependencyGraph:
|
|
13088
|
+
dependencyGraph: import_zod70.z.record(import_zod70.z.string(), import_zod70.z.array(import_zod70.z.string())).optional().describe("Map of plugin ID to its dependencies")
|
|
12992
13089
|
});
|
|
12993
|
-
var MultiVersionSupportSchema =
|
|
13090
|
+
var MultiVersionSupportSchema = import_zod70.z.object({
|
|
12994
13091
|
/**
|
|
12995
13092
|
* Enable multi-version support
|
|
12996
13093
|
*/
|
|
12997
|
-
enabled:
|
|
13094
|
+
enabled: import_zod70.z.boolean().default(false),
|
|
12998
13095
|
/**
|
|
12999
13096
|
* Maximum concurrent versions
|
|
13000
13097
|
*/
|
|
13001
|
-
maxConcurrentVersions:
|
|
13098
|
+
maxConcurrentVersions: import_zod70.z.number().int().min(1).default(2).describe("How many versions can run at the same time"),
|
|
13002
13099
|
/**
|
|
13003
13100
|
* Version selection strategy
|
|
13004
13101
|
*/
|
|
13005
|
-
selectionStrategy:
|
|
13102
|
+
selectionStrategy: import_zod70.z.enum([
|
|
13006
13103
|
"latest",
|
|
13007
13104
|
// Always use latest version
|
|
13008
13105
|
"stable",
|
|
@@ -13019,26 +13116,26 @@ var MultiVersionSupportSchema = import_zod69.z.object({
|
|
|
13019
13116
|
/**
|
|
13020
13117
|
* Version routing rules
|
|
13021
13118
|
*/
|
|
13022
|
-
routing:
|
|
13023
|
-
condition:
|
|
13024
|
-
version:
|
|
13025
|
-
priority:
|
|
13119
|
+
routing: import_zod70.z.array(import_zod70.z.object({
|
|
13120
|
+
condition: import_zod70.z.string().describe("Routing condition (e.g., tenant, user, feature flag)"),
|
|
13121
|
+
version: import_zod70.z.string().describe("Version to use when condition matches"),
|
|
13122
|
+
priority: import_zod70.z.number().int().default(100).describe("Rule priority")
|
|
13026
13123
|
})).optional(),
|
|
13027
13124
|
/**
|
|
13028
13125
|
* Gradual rollout configuration
|
|
13029
13126
|
*/
|
|
13030
|
-
rollout:
|
|
13031
|
-
enabled:
|
|
13032
|
-
strategy:
|
|
13033
|
-
percentage:
|
|
13034
|
-
duration:
|
|
13127
|
+
rollout: import_zod70.z.object({
|
|
13128
|
+
enabled: import_zod70.z.boolean().default(false),
|
|
13129
|
+
strategy: import_zod70.z.enum(["percentage", "blue-green", "canary"]),
|
|
13130
|
+
percentage: import_zod70.z.number().min(0).max(100).optional().describe("Percentage of traffic to new version"),
|
|
13131
|
+
duration: import_zod70.z.number().int().optional().describe("Rollout duration in milliseconds")
|
|
13035
13132
|
}).optional()
|
|
13036
13133
|
});
|
|
13037
|
-
var PluginVersionMetadataSchema =
|
|
13134
|
+
var PluginVersionMetadataSchema = import_zod70.z.object({
|
|
13038
13135
|
/**
|
|
13039
13136
|
* Plugin identifier
|
|
13040
13137
|
*/
|
|
13041
|
-
pluginId:
|
|
13138
|
+
pluginId: import_zod70.z.string(),
|
|
13042
13139
|
/**
|
|
13043
13140
|
* Version number
|
|
13044
13141
|
*/
|
|
@@ -13046,112 +13143,54 @@ var PluginVersionMetadataSchema = import_zod69.z.object({
|
|
|
13046
13143
|
/**
|
|
13047
13144
|
* Version string (computed)
|
|
13048
13145
|
*/
|
|
13049
|
-
versionString:
|
|
13146
|
+
versionString: import_zod70.z.string().describe("Full version string (e.g., 1.2.3-beta.1+build.123)"),
|
|
13050
13147
|
/**
|
|
13051
13148
|
* Release date
|
|
13052
13149
|
*/
|
|
13053
|
-
releaseDate:
|
|
13150
|
+
releaseDate: import_zod70.z.string().datetime(),
|
|
13054
13151
|
/**
|
|
13055
13152
|
* Release notes
|
|
13056
13153
|
*/
|
|
13057
|
-
releaseNotes:
|
|
13154
|
+
releaseNotes: import_zod70.z.string().optional(),
|
|
13058
13155
|
/**
|
|
13059
13156
|
* Breaking changes
|
|
13060
13157
|
*/
|
|
13061
|
-
breakingChanges:
|
|
13158
|
+
breakingChanges: import_zod70.z.array(BreakingChangeSchema).optional(),
|
|
13062
13159
|
/**
|
|
13063
13160
|
* Deprecations
|
|
13064
13161
|
*/
|
|
13065
|
-
deprecations:
|
|
13162
|
+
deprecations: import_zod70.z.array(DeprecationNoticeSchema).optional(),
|
|
13066
13163
|
/**
|
|
13067
13164
|
* Compatibility matrix
|
|
13068
13165
|
*/
|
|
13069
|
-
compatibilityMatrix:
|
|
13166
|
+
compatibilityMatrix: import_zod70.z.array(CompatibilityMatrixEntrySchema).optional(),
|
|
13070
13167
|
/**
|
|
13071
13168
|
* Security vulnerabilities fixed
|
|
13072
13169
|
*/
|
|
13073
|
-
securityFixes:
|
|
13074
|
-
cve:
|
|
13075
|
-
severity:
|
|
13076
|
-
description:
|
|
13077
|
-
fixedIn:
|
|
13170
|
+
securityFixes: import_zod70.z.array(import_zod70.z.object({
|
|
13171
|
+
cve: import_zod70.z.string().optional().describe("CVE identifier"),
|
|
13172
|
+
severity: import_zod70.z.enum(["critical", "high", "medium", "low"]),
|
|
13173
|
+
description: import_zod70.z.string(),
|
|
13174
|
+
fixedIn: import_zod70.z.string().describe("Version where vulnerability was fixed")
|
|
13078
13175
|
})).optional(),
|
|
13079
13176
|
/**
|
|
13080
13177
|
* Download statistics
|
|
13081
13178
|
*/
|
|
13082
|
-
statistics:
|
|
13083
|
-
downloads:
|
|
13084
|
-
installations:
|
|
13085
|
-
ratings:
|
|
13179
|
+
statistics: import_zod70.z.object({
|
|
13180
|
+
downloads: import_zod70.z.number().int().min(0).optional(),
|
|
13181
|
+
installations: import_zod70.z.number().int().min(0).optional(),
|
|
13182
|
+
ratings: import_zod70.z.number().min(0).max(5).optional()
|
|
13086
13183
|
}).optional(),
|
|
13087
13184
|
/**
|
|
13088
13185
|
* Support status
|
|
13089
13186
|
*/
|
|
13090
|
-
support:
|
|
13091
|
-
status:
|
|
13092
|
-
endOfLife:
|
|
13093
|
-
securitySupport:
|
|
13187
|
+
support: import_zod70.z.object({
|
|
13188
|
+
status: import_zod70.z.enum(["active", "maintenance", "deprecated", "eol"]),
|
|
13189
|
+
endOfLife: import_zod70.z.string().datetime().optional(),
|
|
13190
|
+
securitySupport: import_zod70.z.boolean().default(true)
|
|
13094
13191
|
})
|
|
13095
13192
|
});
|
|
13096
13193
|
|
|
13097
|
-
// src/kernel/plugin.zod.ts
|
|
13098
|
-
var import_zod70 = require("zod");
|
|
13099
|
-
var PluginContextSchema = import_zod70.z.object({
|
|
13100
|
-
ql: import_zod70.z.object({
|
|
13101
|
-
object: import_zod70.z.function().returns(import_zod70.z.any()),
|
|
13102
|
-
// Return any to allow method chaining
|
|
13103
|
-
query: import_zod70.z.function().returns(import_zod70.z.any())
|
|
13104
|
-
}).passthrough().describe("ObjectQL Engine Interface"),
|
|
13105
|
-
os: import_zod70.z.object({
|
|
13106
|
-
getCurrentUser: import_zod70.z.function().returns(import_zod70.z.any()),
|
|
13107
|
-
getConfig: import_zod70.z.function().returns(import_zod70.z.any())
|
|
13108
|
-
}).passthrough().describe("ObjectStack Kernel Interface"),
|
|
13109
|
-
logger: import_zod70.z.object({
|
|
13110
|
-
debug: import_zod70.z.function().returns(import_zod70.z.void()),
|
|
13111
|
-
info: import_zod70.z.function().returns(import_zod70.z.void()),
|
|
13112
|
-
warn: import_zod70.z.function().returns(import_zod70.z.void()),
|
|
13113
|
-
error: import_zod70.z.function().returns(import_zod70.z.void())
|
|
13114
|
-
}).passthrough().describe("Logger Interface"),
|
|
13115
|
-
storage: import_zod70.z.object({
|
|
13116
|
-
get: import_zod70.z.function().returns(import_zod70.z.any()),
|
|
13117
|
-
set: import_zod70.z.function().returns(import_zod70.z.promise(import_zod70.z.void())),
|
|
13118
|
-
delete: import_zod70.z.function().returns(import_zod70.z.promise(import_zod70.z.void()))
|
|
13119
|
-
}).passthrough().describe("Storage Interface"),
|
|
13120
|
-
i18n: import_zod70.z.object({
|
|
13121
|
-
t: import_zod70.z.function().returns(import_zod70.z.string()),
|
|
13122
|
-
getLocale: import_zod70.z.function().returns(import_zod70.z.string())
|
|
13123
|
-
}).passthrough().describe("Internationalization Interface"),
|
|
13124
|
-
metadata: import_zod70.z.record(import_zod70.z.string(), import_zod70.z.any()),
|
|
13125
|
-
events: import_zod70.z.record(import_zod70.z.string(), import_zod70.z.any()),
|
|
13126
|
-
app: import_zod70.z.object({
|
|
13127
|
-
router: import_zod70.z.object({
|
|
13128
|
-
get: import_zod70.z.function().returns(import_zod70.z.any()),
|
|
13129
|
-
post: import_zod70.z.function().returns(import_zod70.z.any()),
|
|
13130
|
-
use: import_zod70.z.function().returns(import_zod70.z.any())
|
|
13131
|
-
}).passthrough()
|
|
13132
|
-
}).passthrough().describe("App Framework Interface"),
|
|
13133
|
-
drivers: import_zod70.z.object({
|
|
13134
|
-
register: import_zod70.z.function().returns(import_zod70.z.void())
|
|
13135
|
-
}).passthrough().describe("Driver Registry")
|
|
13136
|
-
});
|
|
13137
|
-
var PluginLifecycleSchema = import_zod70.z.object({
|
|
13138
|
-
onInstall: import_zod70.z.function().args(PluginContextSchema).returns(import_zod70.z.promise(import_zod70.z.void())).optional(),
|
|
13139
|
-
onEnable: import_zod70.z.function().args(PluginContextSchema).returns(import_zod70.z.promise(import_zod70.z.void())).optional(),
|
|
13140
|
-
onDisable: import_zod70.z.function().args(PluginContextSchema).returns(import_zod70.z.promise(import_zod70.z.void())).optional(),
|
|
13141
|
-
onUninstall: import_zod70.z.function().args(PluginContextSchema).returns(import_zod70.z.promise(import_zod70.z.void())).optional(),
|
|
13142
|
-
onUpgrade: import_zod70.z.function().args(PluginContextSchema, import_zod70.z.string(), import_zod70.z.string()).returns(import_zod70.z.promise(import_zod70.z.void())).optional()
|
|
13143
|
-
});
|
|
13144
|
-
var PluginSchema = PluginLifecycleSchema.extend({
|
|
13145
|
-
id: import_zod70.z.string().min(1).optional().describe("Unique Plugin ID (e.g. com.example.crm)"),
|
|
13146
|
-
version: import_zod70.z.string().regex(/^\d+\.\d+\.\d+$/).optional().describe("Semantic Version"),
|
|
13147
|
-
description: import_zod70.z.string().optional(),
|
|
13148
|
-
author: import_zod70.z.string().optional(),
|
|
13149
|
-
homepage: import_zod70.z.string().url().optional()
|
|
13150
|
-
});
|
|
13151
|
-
function definePlugin(config) {
|
|
13152
|
-
return config;
|
|
13153
|
-
}
|
|
13154
|
-
|
|
13155
13194
|
// src/kernel/service-registry.zod.ts
|
|
13156
13195
|
var import_zod71 = require("zod");
|
|
13157
13196
|
var ServiceScopeType = import_zod71.z.enum([
|
|
@@ -20562,9 +20601,12 @@ var BulkRequestSchema = import_zod100.z.object({
|
|
|
20562
20601
|
records: import_zod100.z.array(RecordDataSchema).describe("Array of records to process"),
|
|
20563
20602
|
allOrNone: import_zod100.z.boolean().default(true).describe("If true, rollback entire transaction on any failure")
|
|
20564
20603
|
});
|
|
20565
|
-
var ExportRequestSchema =
|
|
20566
|
-
|
|
20567
|
-
|
|
20604
|
+
var ExportRequestSchema = import_zod100.z.intersection(
|
|
20605
|
+
QuerySchema,
|
|
20606
|
+
import_zod100.z.object({
|
|
20607
|
+
format: import_zod100.z.enum(["csv", "json", "xlsx"]).default("csv")
|
|
20608
|
+
})
|
|
20609
|
+
);
|
|
20568
20610
|
var SingleRecordResponseSchema = BaseResponseSchema.extend({
|
|
20569
20611
|
data: RecordDataSchema.describe("The requested or modified record")
|
|
20570
20612
|
});
|