@happyvertical/smrt-sites 0.40.36 → 0.40.38

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/index.js CHANGED
@@ -1,7 +1,7 @@
1
1
  import { ObjectRegistry, SmrtCollection, SmrtObject, foreignKey, smrt } from "@happyvertical/smrt-core";
2
2
  import { TenantScoped, tenantId } from "@happyvertical/smrt-tenancy";
3
3
  //#region src/__smrt-register__.ts
4
- ObjectRegistry.registerPackageManifest(JSON.parse("{\"version\":\"1.0.0\",\"timestamp\":1785410918991,\"packageName\":\"@happyvertical/smrt-sites\",\"packageVersion\":\"0.40.36\",\"objects\":{\"@happyvertical/smrt-sites:SiteAgentBindingCollection\":{\"name\":\"siteagentbindingcollection\",\"className\":\"SiteAgentBindingCollection\",\"qualifiedName\":\"@happyvertical/smrt-sites:SiteAgentBindingCollection\",\"collection\":\"siteagentbindings\",\"filePath\":\"/home/runner/_work/smrt/smrt/packages/sites/src/collections/SiteAgentBindingCollection.ts\",\"packageName\":\"@happyvertical/smrt-sites\",\"fields\":{},\"methods\":{\"findBySite\":{\"name\":\"findBySite\",\"async\":true,\"parameters\":[{\"name\":\"siteId\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"Promise<SiteAgentBinding[]>\",\"isStatic\":false,\"isPublic\":true},\"findByAgent\":{\"name\":\"findByAgent\",\"async\":true,\"parameters\":[{\"name\":\"agentClass\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"Promise<SiteAgentBinding[]>\",\"isStatic\":false,\"isPublic\":true},\"findEnabled\":{\"name\":\"findEnabled\",\"async\":true,\"parameters\":[{\"name\":\"siteId\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"Promise<SiteAgentBinding[]>\",\"isStatic\":false,\"isPublic\":true},\"findBySiteAndAgent\":{\"name\":\"findBySiteAndAgent\",\"async\":true,\"parameters\":[{\"name\":\"siteId\",\"type\":\"string\",\"optional\":false},{\"name\":\"agentClass\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"Promise<SiteAgentBinding | null>\",\"isStatic\":false,\"isPublic\":true}},\"decoratorConfig\":{\"tableName\":\"site_agent_bindings\"},\"extends\":\"SmrtCollection\",\"extendsTypeArg\":\"SiteAgentBinding\",\"exportName\":\"SiteAgentBindingCollection\",\"collectionExportName\":\"SiteAgentBindingCollectionCollection\",\"schema\":{\"tableName\":\"site_agent_bindings\",\"ddl\":\"CREATE TABLE IF NOT EXISTS \\\"site_agent_bindings\\\" (\\n \\\"id\\\" UUID PRIMARY KEY NOT NULL,\\n \\\"slug\\\" TEXT NOT NULL,\\n \\\"context\\\" TEXT NOT NULL DEFAULT '',\\n \\\"created_at\\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\\"updated_at\\\" TIMESTAMP NOT NULL DEFAULT current_timestamp\\n);\",\"columns\":{\"id\":{\"type\":\"UUID\",\"primaryKey\":true,\"referenceKind\":\"id\",\"notNull\":true},\"slug\":{\"type\":\"TEXT\",\"notNull\":true},\"context\":{\"type\":\"TEXT\",\"notNull\":true,\"default\":\"\"},\"created_at\":{\"type\":\"TIMESTAMP\",\"notNull\":true,\"default\":\"current_timestamp\"},\"updated_at\":{\"type\":\"TIMESTAMP\",\"notNull\":true,\"default\":\"current_timestamp\"}},\"indexes\":[{\"name\":\"site_agent_bindings_id_idx\",\"columns\":[\"id\"]},{\"name\":\"site_agent_bindings_slug_context_idx\",\"columns\":[\"slug\",\"context\"],\"unique\":true}],\"version\":\"b7f2e6f8\"}},\"@happyvertical/smrt-sites:SiteCollection\":{\"name\":\"sitecollection\",\"className\":\"SiteCollection\",\"qualifiedName\":\"@happyvertical/smrt-sites:SiteCollection\",\"collection\":\"sites\",\"filePath\":\"/home/runner/_work/smrt/smrt/packages/sites/src/collections/SiteCollection.ts\",\"packageName\":\"@happyvertical/smrt-sites\",\"fields\":{},\"methods\":{\"findByDomain\":{\"name\":\"findByDomain\",\"async\":true,\"parameters\":[{\"name\":\"domain\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"Promise<Site | null>\",\"isStatic\":false,\"isPublic\":true},\"findByTenant\":{\"name\":\"findByTenant\",\"async\":true,\"parameters\":[{\"name\":\"tenantId\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"Promise<Site[]>\",\"isStatic\":false,\"isPublic\":true},\"findByStatus\":{\"name\":\"findByStatus\",\"async\":true,\"parameters\":[{\"name\":\"status\",\"type\":\"SiteStatus\",\"optional\":false}],\"returnType\":\"Promise<Site[]>\",\"isStatic\":false,\"isPublic\":true},\"findActive\":{\"name\":\"findActive\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<Site[]>\",\"isStatic\":false,\"isPublic\":true}},\"decoratorConfig\":{\"tableName\":\"sites\"},\"extends\":\"SmrtCollection\",\"extendsTypeArg\":\"Site\",\"exportName\":\"SiteCollection\",\"collectionExportName\":\"SiteCollectionCollection\",\"schema\":{\"tableName\":\"sites\",\"ddl\":\"CREATE TABLE IF NOT EXISTS \\\"sites\\\" (\\n \\\"id\\\" UUID PRIMARY KEY NOT NULL,\\n \\\"slug\\\" TEXT NOT NULL,\\n \\\"context\\\" TEXT NOT NULL DEFAULT '',\\n \\\"created_at\\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\\"updated_at\\\" TIMESTAMP NOT NULL DEFAULT current_timestamp\\n);\",\"columns\":{\"id\":{\"type\":\"UUID\",\"primaryKey\":true,\"referenceKind\":\"id\",\"notNull\":true},\"slug\":{\"type\":\"TEXT\",\"notNull\":true},\"context\":{\"type\":\"TEXT\",\"notNull\":true,\"default\":\"\"},\"created_at\":{\"type\":\"TIMESTAMP\",\"notNull\":true,\"default\":\"current_timestamp\"},\"updated_at\":{\"type\":\"TIMESTAMP\",\"notNull\":true,\"default\":\"current_timestamp\"}},\"indexes\":[{\"name\":\"sites_id_idx\",\"columns\":[\"id\"]},{\"name\":\"sites_slug_context_idx\",\"columns\":[\"slug\",\"context\"],\"unique\":true}],\"version\":\"2f0752a0\"}},\"@happyvertical/smrt-sites:Site\":{\"name\":\"site\",\"className\":\"Site\",\"qualifiedName\":\"@happyvertical/smrt-sites:Site\",\"collection\":\"sites\",\"filePath\":\"/home/runner/_work/smrt/smrt/packages/sites/src/models/Site.ts\",\"packageName\":\"@happyvertical/smrt-sites\",\"fields\":{\"tenantId\":{\"type\":\"text\",\"required\":true,\"_meta\":{\"sqlType\":\"UUID\",\"__tenancy\":{\"isTenantIdField\":true,\"autoFilter\":true,\"required\":true,\"autoPopulate\":true,\"nullable\":false,\"mode\":\"required\",\"field\":\"tenantId\",\"allowSuperAdminBypass\":false}}},\"name\":{\"type\":\"text\",\"required\":false,\"default\":\"\"},\"domain\":{\"type\":\"text\",\"required\":false,\"default\":\"\"},\"status\":{\"type\":\"text\",\"required\":false,\"default\":\"draft\"},\"tier\":{\"type\":\"text\",\"required\":false,\"default\":\"free\"},\"databaseUrl\":{\"type\":\"text\",\"required\":false,\"default\":\"\"},\"databaseType\":{\"type\":\"text\",\"required\":false,\"default\":\"\"},\"portalConfig\":{\"type\":\"text\",\"required\":false,\"default\":\"\"},\"repositoryUrl\":{\"type\":\"text\",\"required\":false,\"default\":\"\"},\"templateName\":{\"type\":\"text\",\"required\":false,\"default\":\"\"},\"provisioningStatus\":{\"type\":\"text\",\"required\":false,\"default\":\"\"},\"provisionedAt\":{\"type\":\"datetime\",\"required\":false},\"provisioningError\":{\"type\":\"text\",\"required\":false,\"default\":\"\"},\"metadata\":{\"type\":\"text\",\"required\":false,\"default\":\"\"},\"createdAt\":{\"type\":\"datetime\",\"required\":false},\"updatedAt\":{\"type\":\"datetime\",\"required\":false}},\"methods\":{\"isActive\":{\"name\":\"isActive\",\"async\":false,\"parameters\":[],\"returnType\":\"boolean\",\"isStatic\":false,\"isPublic\":true},\"isReady\":{\"name\":\"isReady\",\"async\":false,\"parameters\":[],\"returnType\":\"boolean\",\"isStatic\":false,\"isPublic\":true},\"getPortalConfig\":{\"name\":\"getPortalConfig\",\"async\":false,\"parameters\":[],\"returnType\":\"SitePortalConfig\",\"isStatic\":false,\"isPublic\":true},\"setPortalConfig\":{\"name\":\"setPortalConfig\",\"async\":false,\"parameters\":[{\"name\":\"config\",\"type\":\"SitePortalConfig\",\"optional\":false}],\"returnType\":\"void\",\"isStatic\":false,\"isPublic\":true},\"getMetadata\":{\"name\":\"getMetadata\",\"async\":false,\"parameters\":[],\"returnType\":\"Record<string>\",\"isStatic\":false,\"isPublic\":true},\"setMetadata\":{\"name\":\"setMetadata\",\"async\":false,\"parameters\":[{\"name\":\"data\",\"type\":\"Record<string>\",\"optional\":false}],\"returnType\":\"void\",\"isStatic\":false,\"isPublic\":true},\"updateMetadata\":{\"name\":\"updateMetadata\",\"async\":false,\"parameters\":[{\"name\":\"updates\",\"type\":\"Record<string>\",\"optional\":false}],\"returnType\":\"void\",\"isStatic\":false,\"isPublic\":true}},\"decoratorConfig\":{\"tableName\":\"sites\",\"api\":{\"include\":[\"list\",\"get\",\"create\",\"update\",\"delete\"]},\"mcp\":{\"include\":[\"list\",\"get\",\"create\",\"update\"]},\"cli\":true,\"conflictColumns\":[\"tenant_id\",\"domain\"],\"tenantScoped\":{\"mode\":\"required\"}},\"extends\":\"SmrtObject\",\"exportName\":\"Site\",\"collectionExportName\":\"SiteCollection\",\"validationRules\":[{\"field\":\"tenantId\",\"rule\":\"required\",\"fieldType\":\"text\"}],\"schema\":{\"tableName\":\"sites\",\"ddl\":\"CREATE TABLE IF NOT EXISTS \\\"sites\\\" (\\n \\\"id\\\" UUID PRIMARY KEY NOT NULL,\\n \\\"slug\\\" TEXT NOT NULL,\\n \\\"context\\\" TEXT NOT NULL DEFAULT '',\\n \\\"created_at\\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\\"updated_at\\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\\"tenant_id\\\" UUID NOT NULL,\\n \\\"name\\\" TEXT DEFAULT '',\\n \\\"domain\\\" TEXT DEFAULT '',\\n \\\"status\\\" TEXT DEFAULT 'draft',\\n \\\"tier\\\" TEXT DEFAULT 'free',\\n \\\"database_url\\\" TEXT DEFAULT '',\\n \\\"database_type\\\" TEXT DEFAULT '',\\n \\\"portal_config\\\" TEXT DEFAULT '',\\n \\\"repository_url\\\" TEXT DEFAULT '',\\n \\\"template_name\\\" TEXT DEFAULT '',\\n \\\"provisioning_status\\\" TEXT DEFAULT '',\\n \\\"provisioned_at\\\" TIMESTAMP,\\n \\\"provisioning_error\\\" TEXT DEFAULT '',\\n \\\"metadata\\\" TEXT DEFAULT ''\\n);\",\"columns\":{\"id\":{\"type\":\"UUID\",\"primaryKey\":true,\"referenceKind\":\"id\",\"notNull\":true},\"slug\":{\"type\":\"TEXT\",\"notNull\":true},\"context\":{\"type\":\"TEXT\",\"notNull\":true,\"default\":\"\"},\"created_at\":{\"type\":\"TIMESTAMP\",\"notNull\":true,\"default\":\"current_timestamp\"},\"updated_at\":{\"type\":\"TIMESTAMP\",\"notNull\":true,\"default\":\"current_timestamp\"},\"tenant_id\":{\"type\":\"UUID\",\"referenceKind\":\"tenantId\",\"notNull\":true,\"unique\":false},\"name\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"\"},\"domain\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"\"},\"status\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"draft\"},\"tier\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"free\"},\"database_url\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"\"},\"database_type\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"\"},\"portal_config\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"\"},\"repository_url\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"\"},\"template_name\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"\"},\"provisioning_status\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"\"},\"provisioned_at\":{\"type\":\"TIMESTAMP\",\"notNull\":false,\"unique\":false},\"provisioning_error\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"\"},\"metadata\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"\"}},\"indexes\":[{\"name\":\"sites_id_idx\",\"columns\":[\"id\"]},{\"name\":\"sites_tenant_id_domain_idx\",\"columns\":[\"tenant_id\",\"domain\"],\"unique\":true}],\"version\":\"1845042e\"}},\"@happyvertical/smrt-sites:SiteAgentBinding\":{\"name\":\"siteagentbinding\",\"className\":\"SiteAgentBinding\",\"qualifiedName\":\"@happyvertical/smrt-sites:SiteAgentBinding\",\"collection\":\"siteagentbindings\",\"filePath\":\"/home/runner/_work/smrt/smrt/packages/sites/src/models/SiteAgentBinding.ts\",\"packageName\":\"@happyvertical/smrt-sites\",\"fields\":{\"tenantId\":{\"type\":\"text\",\"required\":true,\"_meta\":{\"sqlType\":\"UUID\",\"__tenancy\":{\"isTenantIdField\":true,\"autoFilter\":true,\"required\":true,\"autoPopulate\":true,\"nullable\":false,\"mode\":\"required\",\"field\":\"tenantId\",\"allowSuperAdminBypass\":false}}},\"siteId\":{\"type\":\"foreignKey\",\"required\":false,\"related\":\"Site\"},\"agentClass\":{\"type\":\"text\",\"required\":false,\"default\":\"\"},\"enabled\":{\"type\":\"boolean\",\"required\":false,\"default\":true},\"config\":{\"type\":\"json\",\"required\":false,\"default\":{}},\"priority\":{\"type\":\"integer\",\"required\":false,\"default\":0}},\"methods\":{},\"decoratorConfig\":{\"tableName\":\"site_agent_bindings\",\"api\":{\"include\":[\"list\",\"get\",\"create\",\"update\",\"delete\"]},\"cli\":{\"include\":[\"list\",\"get\"]},\"mcp\":{\"include\":[\"list\",\"get\"]},\"conflictColumns\":[\"site_id\",\"agent_class\"],\"tenantScoped\":{\"mode\":\"required\"}},\"extends\":\"SmrtObject\",\"exportName\":\"SiteAgentBinding\",\"collectionExportName\":\"SiteAgentBindingCollection\",\"validationRules\":[{\"field\":\"tenantId\",\"rule\":\"required\",\"fieldType\":\"text\"}],\"schema\":{\"tableName\":\"site_agent_bindings\",\"ddl\":\"CREATE TABLE IF NOT EXISTS \\\"site_agent_bindings\\\" (\\n \\\"id\\\" UUID PRIMARY KEY NOT NULL,\\n \\\"slug\\\" TEXT NOT NULL,\\n \\\"context\\\" TEXT NOT NULL DEFAULT '',\\n \\\"created_at\\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\\"updated_at\\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\\"tenant_id\\\" UUID NOT NULL,\\n \\\"site_id\\\" UUID,\\n \\\"agent_class\\\" TEXT DEFAULT '',\\n \\\"enabled\\\" BOOLEAN DEFAULT TRUE,\\n \\\"config\\\" JSON DEFAULT '{}',\\n \\\"priority\\\" INTEGER DEFAULT 0\\n);\",\"columns\":{\"id\":{\"type\":\"UUID\",\"primaryKey\":true,\"referenceKind\":\"id\",\"notNull\":true},\"slug\":{\"type\":\"TEXT\",\"notNull\":true},\"context\":{\"type\":\"TEXT\",\"notNull\":true,\"default\":\"\"},\"created_at\":{\"type\":\"TIMESTAMP\",\"notNull\":true,\"default\":\"current_timestamp\"},\"updated_at\":{\"type\":\"TIMESTAMP\",\"notNull\":true,\"default\":\"current_timestamp\"},\"tenant_id\":{\"type\":\"UUID\",\"referenceKind\":\"tenantId\",\"notNull\":true,\"unique\":false},\"site_id\":{\"type\":\"UUID\",\"referenceKind\":\"foreignKey\",\"notNull\":false,\"unique\":false},\"agent_class\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"\"},\"enabled\":{\"type\":\"BOOLEAN\",\"notNull\":false,\"unique\":false,\"default\":true},\"config\":{\"type\":\"JSON\",\"notNull\":false,\"unique\":false,\"default\":{}},\"priority\":{\"type\":\"INTEGER\",\"notNull\":false,\"unique\":false,\"default\":0}},\"indexes\":[{\"name\":\"site_agent_bindings_id_idx\",\"columns\":[\"id\"]},{\"name\":\"site_agent_bindings_site_id_agent_class_idx\",\"columns\":[\"site_id\",\"agent_class\"],\"unique\":true}],\"version\":\"e9a85893\"}}},\"moduleType\":\"smrt\",\"smrtDependencies\":[\"@happyvertical/smrt-core\",\"@happyvertical/smrt-tenancy\"]}"));
4
+ ObjectRegistry.registerPackageManifest(JSON.parse("{\"version\":\"1.0.0\",\"timestamp\":1785455745076,\"packageName\":\"@happyvertical/smrt-sites\",\"packageVersion\":\"0.40.38\",\"objects\":{\"@happyvertical/smrt-sites:Site\":{\"name\":\"site\",\"className\":\"Site\",\"qualifiedName\":\"@happyvertical/smrt-sites:Site\",\"collection\":\"sites\",\"filePath\":\"/home/runner/_work/smrt/smrt/packages/sites/src/models/Site.ts\",\"packageName\":\"@happyvertical/smrt-sites\",\"fields\":{\"tenantId\":{\"type\":\"text\",\"required\":true,\"_meta\":{\"sqlType\":\"UUID\",\"__tenancy\":{\"isTenantIdField\":true,\"autoFilter\":true,\"required\":true,\"autoPopulate\":true,\"nullable\":false,\"mode\":\"required\",\"field\":\"tenantId\",\"allowSuperAdminBypass\":false}}},\"name\":{\"type\":\"text\",\"required\":false,\"default\":\"\"},\"domain\":{\"type\":\"text\",\"required\":false,\"default\":\"\"},\"status\":{\"type\":\"text\",\"required\":false,\"default\":\"draft\"},\"tier\":{\"type\":\"text\",\"required\":false,\"default\":\"free\"},\"databaseUrl\":{\"type\":\"text\",\"required\":false,\"default\":\"\"},\"databaseType\":{\"type\":\"text\",\"required\":false,\"default\":\"\"},\"portalConfig\":{\"type\":\"text\",\"required\":false,\"default\":\"\"},\"repositoryUrl\":{\"type\":\"text\",\"required\":false,\"default\":\"\"},\"templateName\":{\"type\":\"text\",\"required\":false,\"default\":\"\"},\"provisioningStatus\":{\"type\":\"text\",\"required\":false,\"default\":\"\"},\"provisionedAt\":{\"type\":\"datetime\",\"required\":false},\"provisioningError\":{\"type\":\"text\",\"required\":false,\"default\":\"\"},\"metadata\":{\"type\":\"text\",\"required\":false,\"default\":\"\"},\"createdAt\":{\"type\":\"datetime\",\"required\":false},\"updatedAt\":{\"type\":\"datetime\",\"required\":false}},\"methods\":{\"isActive\":{\"name\":\"isActive\",\"async\":false,\"parameters\":[],\"returnType\":\"boolean\",\"isStatic\":false,\"isPublic\":true},\"isReady\":{\"name\":\"isReady\",\"async\":false,\"parameters\":[],\"returnType\":\"boolean\",\"isStatic\":false,\"isPublic\":true},\"getPortalConfig\":{\"name\":\"getPortalConfig\",\"async\":false,\"parameters\":[],\"returnType\":\"SitePortalConfig\",\"isStatic\":false,\"isPublic\":true},\"setPortalConfig\":{\"name\":\"setPortalConfig\",\"async\":false,\"parameters\":[{\"name\":\"config\",\"type\":\"SitePortalConfig\",\"optional\":false}],\"returnType\":\"void\",\"isStatic\":false,\"isPublic\":true},\"getMetadata\":{\"name\":\"getMetadata\",\"async\":false,\"parameters\":[],\"returnType\":\"Record<string>\",\"isStatic\":false,\"isPublic\":true},\"setMetadata\":{\"name\":\"setMetadata\",\"async\":false,\"parameters\":[{\"name\":\"data\",\"type\":\"Record<string>\",\"optional\":false}],\"returnType\":\"void\",\"isStatic\":false,\"isPublic\":true},\"updateMetadata\":{\"name\":\"updateMetadata\",\"async\":false,\"parameters\":[{\"name\":\"updates\",\"type\":\"Record<string>\",\"optional\":false}],\"returnType\":\"void\",\"isStatic\":false,\"isPublic\":true}},\"decoratorConfig\":{\"tableName\":\"sites\",\"api\":{\"include\":[\"list\",\"get\",\"create\",\"update\",\"delete\"]},\"mcp\":{\"include\":[\"list\",\"get\",\"create\",\"update\"]},\"cli\":true,\"conflictColumns\":[\"tenant_id\",\"domain\"],\"tenantScoped\":{\"mode\":\"required\"}},\"extends\":\"SmrtObject\",\"exportName\":\"Site\",\"collectionExportName\":\"SiteCollection\",\"validationRules\":[{\"field\":\"tenantId\",\"rule\":\"required\",\"fieldType\":\"text\"}],\"schema\":{\"tableName\":\"sites\",\"ddl\":\"CREATE TABLE IF NOT EXISTS \\\"sites\\\" (\\n \\\"id\\\" UUID PRIMARY KEY NOT NULL,\\n \\\"slug\\\" TEXT NOT NULL,\\n \\\"context\\\" TEXT NOT NULL DEFAULT '',\\n \\\"created_at\\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\\"updated_at\\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\\"tenant_id\\\" UUID NOT NULL,\\n \\\"name\\\" TEXT DEFAULT '',\\n \\\"domain\\\" TEXT DEFAULT '',\\n \\\"status\\\" TEXT DEFAULT 'draft',\\n \\\"tier\\\" TEXT DEFAULT 'free',\\n \\\"database_url\\\" TEXT DEFAULT '',\\n \\\"database_type\\\" TEXT DEFAULT '',\\n \\\"portal_config\\\" TEXT DEFAULT '',\\n \\\"repository_url\\\" TEXT DEFAULT '',\\n \\\"template_name\\\" TEXT DEFAULT '',\\n \\\"provisioning_status\\\" TEXT DEFAULT '',\\n \\\"provisioned_at\\\" TIMESTAMP,\\n \\\"provisioning_error\\\" TEXT DEFAULT '',\\n \\\"metadata\\\" TEXT DEFAULT ''\\n);\",\"columns\":{\"id\":{\"type\":\"UUID\",\"primaryKey\":true,\"referenceKind\":\"id\",\"notNull\":true},\"slug\":{\"type\":\"TEXT\",\"notNull\":true},\"context\":{\"type\":\"TEXT\",\"notNull\":true,\"default\":\"\"},\"created_at\":{\"type\":\"TIMESTAMP\",\"notNull\":true,\"default\":\"current_timestamp\"},\"updated_at\":{\"type\":\"TIMESTAMP\",\"notNull\":true,\"default\":\"current_timestamp\"},\"tenant_id\":{\"type\":\"UUID\",\"referenceKind\":\"tenantId\",\"notNull\":true,\"unique\":false},\"name\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"\"},\"domain\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"\"},\"status\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"draft\"},\"tier\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"free\"},\"database_url\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"\"},\"database_type\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"\"},\"portal_config\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"\"},\"repository_url\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"\"},\"template_name\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"\"},\"provisioning_status\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"\"},\"provisioned_at\":{\"type\":\"TIMESTAMP\",\"notNull\":false,\"unique\":false},\"provisioning_error\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"\"},\"metadata\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"\"}},\"indexes\":[{\"name\":\"sites_id_idx\",\"columns\":[\"id\"]},{\"name\":\"sites_tenant_id_domain_idx\",\"columns\":[\"tenant_id\",\"domain\"],\"unique\":true}],\"version\":\"1845042e\"}},\"@happyvertical/smrt-sites:SiteAgentBinding\":{\"name\":\"siteagentbinding\",\"className\":\"SiteAgentBinding\",\"qualifiedName\":\"@happyvertical/smrt-sites:SiteAgentBinding\",\"collection\":\"siteagentbindings\",\"filePath\":\"/home/runner/_work/smrt/smrt/packages/sites/src/models/SiteAgentBinding.ts\",\"packageName\":\"@happyvertical/smrt-sites\",\"fields\":{\"tenantId\":{\"type\":\"text\",\"required\":true,\"_meta\":{\"sqlType\":\"UUID\",\"__tenancy\":{\"isTenantIdField\":true,\"autoFilter\":true,\"required\":true,\"autoPopulate\":true,\"nullable\":false,\"mode\":\"required\",\"field\":\"tenantId\",\"allowSuperAdminBypass\":false}}},\"siteId\":{\"type\":\"foreignKey\",\"required\":false,\"related\":\"Site\"},\"agentClass\":{\"type\":\"text\",\"required\":false,\"default\":\"\"},\"enabled\":{\"type\":\"boolean\",\"required\":false,\"default\":true},\"config\":{\"type\":\"json\",\"required\":false,\"default\":{}},\"priority\":{\"type\":\"integer\",\"required\":false,\"default\":0}},\"methods\":{},\"decoratorConfig\":{\"tableName\":\"site_agent_bindings\",\"api\":{\"include\":[\"list\",\"get\",\"create\",\"update\",\"delete\"]},\"cli\":{\"include\":[\"list\",\"get\"]},\"mcp\":{\"include\":[\"list\",\"get\"]},\"conflictColumns\":[\"site_id\",\"agent_class\"],\"tenantScoped\":{\"mode\":\"required\"}},\"extends\":\"SmrtObject\",\"exportName\":\"SiteAgentBinding\",\"collectionExportName\":\"SiteAgentBindingCollection\",\"validationRules\":[{\"field\":\"tenantId\",\"rule\":\"required\",\"fieldType\":\"text\"}],\"schema\":{\"tableName\":\"site_agent_bindings\",\"ddl\":\"CREATE TABLE IF NOT EXISTS \\\"site_agent_bindings\\\" (\\n \\\"id\\\" UUID PRIMARY KEY NOT NULL,\\n \\\"slug\\\" TEXT NOT NULL,\\n \\\"context\\\" TEXT NOT NULL DEFAULT '',\\n \\\"created_at\\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\\"updated_at\\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\\"tenant_id\\\" UUID NOT NULL,\\n \\\"site_id\\\" UUID,\\n \\\"agent_class\\\" TEXT DEFAULT '',\\n \\\"enabled\\\" BOOLEAN DEFAULT TRUE,\\n \\\"config\\\" JSON DEFAULT '{}',\\n \\\"priority\\\" INTEGER DEFAULT 0\\n);\",\"columns\":{\"id\":{\"type\":\"UUID\",\"primaryKey\":true,\"referenceKind\":\"id\",\"notNull\":true},\"slug\":{\"type\":\"TEXT\",\"notNull\":true},\"context\":{\"type\":\"TEXT\",\"notNull\":true,\"default\":\"\"},\"created_at\":{\"type\":\"TIMESTAMP\",\"notNull\":true,\"default\":\"current_timestamp\"},\"updated_at\":{\"type\":\"TIMESTAMP\",\"notNull\":true,\"default\":\"current_timestamp\"},\"tenant_id\":{\"type\":\"UUID\",\"referenceKind\":\"tenantId\",\"notNull\":true,\"unique\":false},\"site_id\":{\"type\":\"UUID\",\"referenceKind\":\"foreignKey\",\"notNull\":false,\"unique\":false},\"agent_class\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"\"},\"enabled\":{\"type\":\"BOOLEAN\",\"notNull\":false,\"unique\":false,\"default\":true},\"config\":{\"type\":\"JSON\",\"notNull\":false,\"unique\":false,\"default\":{}},\"priority\":{\"type\":\"INTEGER\",\"notNull\":false,\"unique\":false,\"default\":0}},\"indexes\":[{\"name\":\"site_agent_bindings_id_idx\",\"columns\":[\"id\"]},{\"name\":\"site_agent_bindings_site_id_agent_class_idx\",\"columns\":[\"site_id\",\"agent_class\"],\"unique\":true}],\"version\":\"e9a85893\"}},\"@happyvertical/smrt-sites:SiteAgentBindingCollection\":{\"name\":\"siteagentbindingcollection\",\"className\":\"SiteAgentBindingCollection\",\"qualifiedName\":\"@happyvertical/smrt-sites:SiteAgentBindingCollection\",\"collection\":\"siteagentbindings\",\"filePath\":\"/home/runner/_work/smrt/smrt/packages/sites/src/collections/SiteAgentBindingCollection.ts\",\"packageName\":\"@happyvertical/smrt-sites\",\"fields\":{},\"methods\":{\"findBySite\":{\"name\":\"findBySite\",\"async\":true,\"parameters\":[{\"name\":\"siteId\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"Promise<SiteAgentBinding[]>\",\"isStatic\":false,\"isPublic\":true},\"findByAgent\":{\"name\":\"findByAgent\",\"async\":true,\"parameters\":[{\"name\":\"agentClass\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"Promise<SiteAgentBinding[]>\",\"isStatic\":false,\"isPublic\":true},\"findEnabled\":{\"name\":\"findEnabled\",\"async\":true,\"parameters\":[{\"name\":\"siteId\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"Promise<SiteAgentBinding[]>\",\"isStatic\":false,\"isPublic\":true},\"findBySiteAndAgent\":{\"name\":\"findBySiteAndAgent\",\"async\":true,\"parameters\":[{\"name\":\"siteId\",\"type\":\"string\",\"optional\":false},{\"name\":\"agentClass\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"Promise<SiteAgentBinding | null>\",\"isStatic\":false,\"isPublic\":true}},\"decoratorConfig\":{\"tableName\":\"site_agent_bindings\"},\"extends\":\"SmrtCollection\",\"extendsTypeArg\":\"SiteAgentBinding\",\"exportName\":\"SiteAgentBindingCollection\",\"collectionExportName\":\"SiteAgentBindingCollectionCollection\",\"schema\":{\"tableName\":\"site_agent_bindings\",\"ddl\":\"CREATE TABLE IF NOT EXISTS \\\"site_agent_bindings\\\" (\\n \\\"id\\\" UUID PRIMARY KEY NOT NULL,\\n \\\"slug\\\" TEXT NOT NULL,\\n \\\"context\\\" TEXT NOT NULL DEFAULT '',\\n \\\"created_at\\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\\"updated_at\\\" TIMESTAMP NOT NULL DEFAULT current_timestamp\\n);\",\"columns\":{\"id\":{\"type\":\"UUID\",\"primaryKey\":true,\"referenceKind\":\"id\",\"notNull\":true},\"slug\":{\"type\":\"TEXT\",\"notNull\":true},\"context\":{\"type\":\"TEXT\",\"notNull\":true,\"default\":\"\"},\"created_at\":{\"type\":\"TIMESTAMP\",\"notNull\":true,\"default\":\"current_timestamp\"},\"updated_at\":{\"type\":\"TIMESTAMP\",\"notNull\":true,\"default\":\"current_timestamp\"}},\"indexes\":[{\"name\":\"site_agent_bindings_id_idx\",\"columns\":[\"id\"]},{\"name\":\"site_agent_bindings_slug_context_idx\",\"columns\":[\"slug\",\"context\"],\"unique\":true}],\"version\":\"b7f2e6f8\"}},\"@happyvertical/smrt-sites:SiteCollection\":{\"name\":\"sitecollection\",\"className\":\"SiteCollection\",\"qualifiedName\":\"@happyvertical/smrt-sites:SiteCollection\",\"collection\":\"sites\",\"filePath\":\"/home/runner/_work/smrt/smrt/packages/sites/src/collections/SiteCollection.ts\",\"packageName\":\"@happyvertical/smrt-sites\",\"fields\":{},\"methods\":{\"findByDomain\":{\"name\":\"findByDomain\",\"async\":true,\"parameters\":[{\"name\":\"domain\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"Promise<Site | null>\",\"isStatic\":false,\"isPublic\":true},\"findByTenant\":{\"name\":\"findByTenant\",\"async\":true,\"parameters\":[{\"name\":\"tenantId\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"Promise<Site[]>\",\"isStatic\":false,\"isPublic\":true},\"findByStatus\":{\"name\":\"findByStatus\",\"async\":true,\"parameters\":[{\"name\":\"status\",\"type\":\"SiteStatus\",\"optional\":false}],\"returnType\":\"Promise<Site[]>\",\"isStatic\":false,\"isPublic\":true},\"findActive\":{\"name\":\"findActive\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<Site[]>\",\"isStatic\":false,\"isPublic\":true}},\"decoratorConfig\":{\"tableName\":\"sites\"},\"extends\":\"SmrtCollection\",\"extendsTypeArg\":\"Site\",\"exportName\":\"SiteCollection\",\"collectionExportName\":\"SiteCollectionCollection\",\"schema\":{\"tableName\":\"sites\",\"ddl\":\"CREATE TABLE IF NOT EXISTS \\\"sites\\\" (\\n \\\"id\\\" UUID PRIMARY KEY NOT NULL,\\n \\\"slug\\\" TEXT NOT NULL,\\n \\\"context\\\" TEXT NOT NULL DEFAULT '',\\n \\\"created_at\\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\\"updated_at\\\" TIMESTAMP NOT NULL DEFAULT current_timestamp\\n);\",\"columns\":{\"id\":{\"type\":\"UUID\",\"primaryKey\":true,\"referenceKind\":\"id\",\"notNull\":true},\"slug\":{\"type\":\"TEXT\",\"notNull\":true},\"context\":{\"type\":\"TEXT\",\"notNull\":true,\"default\":\"\"},\"created_at\":{\"type\":\"TIMESTAMP\",\"notNull\":true,\"default\":\"current_timestamp\"},\"updated_at\":{\"type\":\"TIMESTAMP\",\"notNull\":true,\"default\":\"current_timestamp\"}},\"indexes\":[{\"name\":\"sites_id_idx\",\"columns\":[\"id\"]},{\"name\":\"sites_slug_context_idx\",\"columns\":[\"slug\",\"context\"],\"unique\":true}],\"version\":\"2f0752a0\"}}},\"moduleType\":\"smrt\",\"smrtDependencies\":[\"@happyvertical/smrt-core\",\"@happyvertical/smrt-tenancy\"]}"));
5
5
  //#endregion
6
6
  //#region src/models/SiteAgentBinding.ts
7
7
  var __defProp$1 = Object.defineProperty;
@@ -1,252 +1,9 @@
1
1
  {
2
2
  "version": "1.0.0",
3
- "timestamp": 1785410918991,
3
+ "timestamp": 1785455745076,
4
4
  "packageName": "@happyvertical/smrt-sites",
5
- "packageVersion": "0.40.36",
5
+ "packageVersion": "0.40.38",
6
6
  "objects": {
7
- "@happyvertical/smrt-sites:SiteAgentBindingCollection": {
8
- "name": "siteagentbindingcollection",
9
- "className": "SiteAgentBindingCollection",
10
- "qualifiedName": "@happyvertical/smrt-sites:SiteAgentBindingCollection",
11
- "collection": "siteagentbindings",
12
- "filePath": "/home/runner/_work/smrt/smrt/packages/sites/src/collections/SiteAgentBindingCollection.ts",
13
- "packageName": "@happyvertical/smrt-sites",
14
- "fields": {},
15
- "methods": {
16
- "findBySite": {
17
- "name": "findBySite",
18
- "async": true,
19
- "parameters": [
20
- {
21
- "name": "siteId",
22
- "type": "string",
23
- "optional": false
24
- }
25
- ],
26
- "returnType": "Promise<SiteAgentBinding[]>",
27
- "isStatic": false,
28
- "isPublic": true
29
- },
30
- "findByAgent": {
31
- "name": "findByAgent",
32
- "async": true,
33
- "parameters": [
34
- {
35
- "name": "agentClass",
36
- "type": "string",
37
- "optional": false
38
- }
39
- ],
40
- "returnType": "Promise<SiteAgentBinding[]>",
41
- "isStatic": false,
42
- "isPublic": true
43
- },
44
- "findEnabled": {
45
- "name": "findEnabled",
46
- "async": true,
47
- "parameters": [
48
- {
49
- "name": "siteId",
50
- "type": "string",
51
- "optional": false
52
- }
53
- ],
54
- "returnType": "Promise<SiteAgentBinding[]>",
55
- "isStatic": false,
56
- "isPublic": true
57
- },
58
- "findBySiteAndAgent": {
59
- "name": "findBySiteAndAgent",
60
- "async": true,
61
- "parameters": [
62
- {
63
- "name": "siteId",
64
- "type": "string",
65
- "optional": false
66
- },
67
- {
68
- "name": "agentClass",
69
- "type": "string",
70
- "optional": false
71
- }
72
- ],
73
- "returnType": "Promise<SiteAgentBinding | null>",
74
- "isStatic": false,
75
- "isPublic": true
76
- }
77
- },
78
- "decoratorConfig": {
79
- "tableName": "site_agent_bindings"
80
- },
81
- "extends": "SmrtCollection",
82
- "extendsTypeArg": "SiteAgentBinding",
83
- "exportName": "SiteAgentBindingCollection",
84
- "collectionExportName": "SiteAgentBindingCollectionCollection",
85
- "schema": {
86
- "tableName": "site_agent_bindings",
87
- "ddl": "CREATE TABLE IF NOT EXISTS \"site_agent_bindings\" (\n \"id\" UUID PRIMARY KEY NOT NULL,\n \"slug\" TEXT NOT NULL,\n \"context\" TEXT NOT NULL DEFAULT '',\n \"created_at\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\n \"updated_at\" TIMESTAMP NOT NULL DEFAULT current_timestamp\n);",
88
- "columns": {
89
- "id": {
90
- "type": "UUID",
91
- "primaryKey": true,
92
- "referenceKind": "id",
93
- "notNull": true
94
- },
95
- "slug": {
96
- "type": "TEXT",
97
- "notNull": true
98
- },
99
- "context": {
100
- "type": "TEXT",
101
- "notNull": true,
102
- "default": ""
103
- },
104
- "created_at": {
105
- "type": "TIMESTAMP",
106
- "notNull": true,
107
- "default": "current_timestamp"
108
- },
109
- "updated_at": {
110
- "type": "TIMESTAMP",
111
- "notNull": true,
112
- "default": "current_timestamp"
113
- }
114
- },
115
- "indexes": [
116
- {
117
- "name": "site_agent_bindings_id_idx",
118
- "columns": [
119
- "id"
120
- ]
121
- },
122
- {
123
- "name": "site_agent_bindings_slug_context_idx",
124
- "columns": [
125
- "slug",
126
- "context"
127
- ],
128
- "unique": true
129
- }
130
- ],
131
- "version": "b7f2e6f8"
132
- }
133
- },
134
- "@happyvertical/smrt-sites:SiteCollection": {
135
- "name": "sitecollection",
136
- "className": "SiteCollection",
137
- "qualifiedName": "@happyvertical/smrt-sites:SiteCollection",
138
- "collection": "sites",
139
- "filePath": "/home/runner/_work/smrt/smrt/packages/sites/src/collections/SiteCollection.ts",
140
- "packageName": "@happyvertical/smrt-sites",
141
- "fields": {},
142
- "methods": {
143
- "findByDomain": {
144
- "name": "findByDomain",
145
- "async": true,
146
- "parameters": [
147
- {
148
- "name": "domain",
149
- "type": "string",
150
- "optional": false
151
- }
152
- ],
153
- "returnType": "Promise<Site | null>",
154
- "isStatic": false,
155
- "isPublic": true
156
- },
157
- "findByTenant": {
158
- "name": "findByTenant",
159
- "async": true,
160
- "parameters": [
161
- {
162
- "name": "tenantId",
163
- "type": "string",
164
- "optional": false
165
- }
166
- ],
167
- "returnType": "Promise<Site[]>",
168
- "isStatic": false,
169
- "isPublic": true
170
- },
171
- "findByStatus": {
172
- "name": "findByStatus",
173
- "async": true,
174
- "parameters": [
175
- {
176
- "name": "status",
177
- "type": "SiteStatus",
178
- "optional": false
179
- }
180
- ],
181
- "returnType": "Promise<Site[]>",
182
- "isStatic": false,
183
- "isPublic": true
184
- },
185
- "findActive": {
186
- "name": "findActive",
187
- "async": true,
188
- "parameters": [],
189
- "returnType": "Promise<Site[]>",
190
- "isStatic": false,
191
- "isPublic": true
192
- }
193
- },
194
- "decoratorConfig": {
195
- "tableName": "sites"
196
- },
197
- "extends": "SmrtCollection",
198
- "extendsTypeArg": "Site",
199
- "exportName": "SiteCollection",
200
- "collectionExportName": "SiteCollectionCollection",
201
- "schema": {
202
- "tableName": "sites",
203
- "ddl": "CREATE TABLE IF NOT EXISTS \"sites\" (\n \"id\" UUID PRIMARY KEY NOT NULL,\n \"slug\" TEXT NOT NULL,\n \"context\" TEXT NOT NULL DEFAULT '',\n \"created_at\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\n \"updated_at\" TIMESTAMP NOT NULL DEFAULT current_timestamp\n);",
204
- "columns": {
205
- "id": {
206
- "type": "UUID",
207
- "primaryKey": true,
208
- "referenceKind": "id",
209
- "notNull": true
210
- },
211
- "slug": {
212
- "type": "TEXT",
213
- "notNull": true
214
- },
215
- "context": {
216
- "type": "TEXT",
217
- "notNull": true,
218
- "default": ""
219
- },
220
- "created_at": {
221
- "type": "TIMESTAMP",
222
- "notNull": true,
223
- "default": "current_timestamp"
224
- },
225
- "updated_at": {
226
- "type": "TIMESTAMP",
227
- "notNull": true,
228
- "default": "current_timestamp"
229
- }
230
- },
231
- "indexes": [
232
- {
233
- "name": "sites_id_idx",
234
- "columns": [
235
- "id"
236
- ]
237
- },
238
- {
239
- "name": "sites_slug_context_idx",
240
- "columns": [
241
- "slug",
242
- "context"
243
- ],
244
- "unique": true
245
- }
246
- ],
247
- "version": "2f0752a0"
248
- }
249
- },
250
7
  "@happyvertical/smrt-sites:Site": {
251
8
  "name": "site",
252
9
  "className": "Site",
@@ -768,6 +525,249 @@
768
525
  ],
769
526
  "version": "e9a85893"
770
527
  }
528
+ },
529
+ "@happyvertical/smrt-sites:SiteAgentBindingCollection": {
530
+ "name": "siteagentbindingcollection",
531
+ "className": "SiteAgentBindingCollection",
532
+ "qualifiedName": "@happyvertical/smrt-sites:SiteAgentBindingCollection",
533
+ "collection": "siteagentbindings",
534
+ "filePath": "/home/runner/_work/smrt/smrt/packages/sites/src/collections/SiteAgentBindingCollection.ts",
535
+ "packageName": "@happyvertical/smrt-sites",
536
+ "fields": {},
537
+ "methods": {
538
+ "findBySite": {
539
+ "name": "findBySite",
540
+ "async": true,
541
+ "parameters": [
542
+ {
543
+ "name": "siteId",
544
+ "type": "string",
545
+ "optional": false
546
+ }
547
+ ],
548
+ "returnType": "Promise<SiteAgentBinding[]>",
549
+ "isStatic": false,
550
+ "isPublic": true
551
+ },
552
+ "findByAgent": {
553
+ "name": "findByAgent",
554
+ "async": true,
555
+ "parameters": [
556
+ {
557
+ "name": "agentClass",
558
+ "type": "string",
559
+ "optional": false
560
+ }
561
+ ],
562
+ "returnType": "Promise<SiteAgentBinding[]>",
563
+ "isStatic": false,
564
+ "isPublic": true
565
+ },
566
+ "findEnabled": {
567
+ "name": "findEnabled",
568
+ "async": true,
569
+ "parameters": [
570
+ {
571
+ "name": "siteId",
572
+ "type": "string",
573
+ "optional": false
574
+ }
575
+ ],
576
+ "returnType": "Promise<SiteAgentBinding[]>",
577
+ "isStatic": false,
578
+ "isPublic": true
579
+ },
580
+ "findBySiteAndAgent": {
581
+ "name": "findBySiteAndAgent",
582
+ "async": true,
583
+ "parameters": [
584
+ {
585
+ "name": "siteId",
586
+ "type": "string",
587
+ "optional": false
588
+ },
589
+ {
590
+ "name": "agentClass",
591
+ "type": "string",
592
+ "optional": false
593
+ }
594
+ ],
595
+ "returnType": "Promise<SiteAgentBinding | null>",
596
+ "isStatic": false,
597
+ "isPublic": true
598
+ }
599
+ },
600
+ "decoratorConfig": {
601
+ "tableName": "site_agent_bindings"
602
+ },
603
+ "extends": "SmrtCollection",
604
+ "extendsTypeArg": "SiteAgentBinding",
605
+ "exportName": "SiteAgentBindingCollection",
606
+ "collectionExportName": "SiteAgentBindingCollectionCollection",
607
+ "schema": {
608
+ "tableName": "site_agent_bindings",
609
+ "ddl": "CREATE TABLE IF NOT EXISTS \"site_agent_bindings\" (\n \"id\" UUID PRIMARY KEY NOT NULL,\n \"slug\" TEXT NOT NULL,\n \"context\" TEXT NOT NULL DEFAULT '',\n \"created_at\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\n \"updated_at\" TIMESTAMP NOT NULL DEFAULT current_timestamp\n);",
610
+ "columns": {
611
+ "id": {
612
+ "type": "UUID",
613
+ "primaryKey": true,
614
+ "referenceKind": "id",
615
+ "notNull": true
616
+ },
617
+ "slug": {
618
+ "type": "TEXT",
619
+ "notNull": true
620
+ },
621
+ "context": {
622
+ "type": "TEXT",
623
+ "notNull": true,
624
+ "default": ""
625
+ },
626
+ "created_at": {
627
+ "type": "TIMESTAMP",
628
+ "notNull": true,
629
+ "default": "current_timestamp"
630
+ },
631
+ "updated_at": {
632
+ "type": "TIMESTAMP",
633
+ "notNull": true,
634
+ "default": "current_timestamp"
635
+ }
636
+ },
637
+ "indexes": [
638
+ {
639
+ "name": "site_agent_bindings_id_idx",
640
+ "columns": [
641
+ "id"
642
+ ]
643
+ },
644
+ {
645
+ "name": "site_agent_bindings_slug_context_idx",
646
+ "columns": [
647
+ "slug",
648
+ "context"
649
+ ],
650
+ "unique": true
651
+ }
652
+ ],
653
+ "version": "b7f2e6f8"
654
+ }
655
+ },
656
+ "@happyvertical/smrt-sites:SiteCollection": {
657
+ "name": "sitecollection",
658
+ "className": "SiteCollection",
659
+ "qualifiedName": "@happyvertical/smrt-sites:SiteCollection",
660
+ "collection": "sites",
661
+ "filePath": "/home/runner/_work/smrt/smrt/packages/sites/src/collections/SiteCollection.ts",
662
+ "packageName": "@happyvertical/smrt-sites",
663
+ "fields": {},
664
+ "methods": {
665
+ "findByDomain": {
666
+ "name": "findByDomain",
667
+ "async": true,
668
+ "parameters": [
669
+ {
670
+ "name": "domain",
671
+ "type": "string",
672
+ "optional": false
673
+ }
674
+ ],
675
+ "returnType": "Promise<Site | null>",
676
+ "isStatic": false,
677
+ "isPublic": true
678
+ },
679
+ "findByTenant": {
680
+ "name": "findByTenant",
681
+ "async": true,
682
+ "parameters": [
683
+ {
684
+ "name": "tenantId",
685
+ "type": "string",
686
+ "optional": false
687
+ }
688
+ ],
689
+ "returnType": "Promise<Site[]>",
690
+ "isStatic": false,
691
+ "isPublic": true
692
+ },
693
+ "findByStatus": {
694
+ "name": "findByStatus",
695
+ "async": true,
696
+ "parameters": [
697
+ {
698
+ "name": "status",
699
+ "type": "SiteStatus",
700
+ "optional": false
701
+ }
702
+ ],
703
+ "returnType": "Promise<Site[]>",
704
+ "isStatic": false,
705
+ "isPublic": true
706
+ },
707
+ "findActive": {
708
+ "name": "findActive",
709
+ "async": true,
710
+ "parameters": [],
711
+ "returnType": "Promise<Site[]>",
712
+ "isStatic": false,
713
+ "isPublic": true
714
+ }
715
+ },
716
+ "decoratorConfig": {
717
+ "tableName": "sites"
718
+ },
719
+ "extends": "SmrtCollection",
720
+ "extendsTypeArg": "Site",
721
+ "exportName": "SiteCollection",
722
+ "collectionExportName": "SiteCollectionCollection",
723
+ "schema": {
724
+ "tableName": "sites",
725
+ "ddl": "CREATE TABLE IF NOT EXISTS \"sites\" (\n \"id\" UUID PRIMARY KEY NOT NULL,\n \"slug\" TEXT NOT NULL,\n \"context\" TEXT NOT NULL DEFAULT '',\n \"created_at\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\n \"updated_at\" TIMESTAMP NOT NULL DEFAULT current_timestamp\n);",
726
+ "columns": {
727
+ "id": {
728
+ "type": "UUID",
729
+ "primaryKey": true,
730
+ "referenceKind": "id",
731
+ "notNull": true
732
+ },
733
+ "slug": {
734
+ "type": "TEXT",
735
+ "notNull": true
736
+ },
737
+ "context": {
738
+ "type": "TEXT",
739
+ "notNull": true,
740
+ "default": ""
741
+ },
742
+ "created_at": {
743
+ "type": "TIMESTAMP",
744
+ "notNull": true,
745
+ "default": "current_timestamp"
746
+ },
747
+ "updated_at": {
748
+ "type": "TIMESTAMP",
749
+ "notNull": true,
750
+ "default": "current_timestamp"
751
+ }
752
+ },
753
+ "indexes": [
754
+ {
755
+ "name": "sites_id_idx",
756
+ "columns": [
757
+ "id"
758
+ ]
759
+ },
760
+ {
761
+ "name": "sites_slug_context_idx",
762
+ "columns": [
763
+ "slug",
764
+ "context"
765
+ ],
766
+ "unique": true
767
+ }
768
+ ],
769
+ "version": "2f0752a0"
770
+ }
771
771
  }
772
772
  },
773
773
  "moduleType": "smrt",
@@ -1,13 +1,13 @@
1
1
  {
2
2
  "schemaVersion": 1,
3
- "generatedAt": "2026-07-30T11:29:05.481Z",
3
+ "generatedAt": "2026-07-30T23:56:47.776Z",
4
4
  "packageName": "@happyvertical/smrt-sites",
5
- "packageVersion": "0.40.36",
5
+ "packageVersion": "0.40.38",
6
6
  "sourceManifestPath": "dist/manifest.json",
7
7
  "agentDocPath": "AGENTS.md",
8
8
  "sourceHashes": {
9
- "manifest": "7049e6751dd710c76524e0fb5df9ef66d7f79ced7fb0334fa698b10fcad45b76",
10
- "packageJson": "e8296a19a554e26ebefa4b033e9df49905a69b303d624372c2913dfcd22484fc",
9
+ "manifest": "693d628a37259261aed0339bcd4dc7962c96406530073c63bf51c744511250f7",
10
+ "packageJson": "8c1abe56b86e947af99ecef8fa2a823f8e9001397f84937e4236b7ee5d08f595",
11
11
  "agents": "20ecba2963426d3e132157f077fbdc5583a20bb0f68d8a7942cf7f8ada5d5aa2"
12
12
  },
13
13
  "exports": [
@@ -39,50 +39,6 @@
39
39
  "tags": [],
40
40
  "risks": [],
41
41
  "objects": [
42
- {
43
- "name": "SiteAgentBindingCollection",
44
- "qualifiedName": "@happyvertical/smrt-sites:SiteAgentBindingCollection",
45
- "collection": "siteagentbindings",
46
- "tableName": "site_agent_bindings",
47
- "packageName": "@happyvertical/smrt-sites",
48
- "extends": "SmrtCollection",
49
- "fields": [],
50
- "relationships": [],
51
- "methods": [
52
- "findByAgent",
53
- "findBySite",
54
- "findBySiteAndAgent",
55
- "findEnabled"
56
- ],
57
- "surfaces": [],
58
- "relationshipFeatures": [
59
- "uuidColumns"
60
- ],
61
- "tags": [],
62
- "risks": []
63
- },
64
- {
65
- "name": "SiteCollection",
66
- "qualifiedName": "@happyvertical/smrt-sites:SiteCollection",
67
- "collection": "sites",
68
- "tableName": "sites",
69
- "packageName": "@happyvertical/smrt-sites",
70
- "extends": "SmrtCollection",
71
- "fields": [],
72
- "relationships": [],
73
- "methods": [
74
- "findActive",
75
- "findByDomain",
76
- "findByStatus",
77
- "findByTenant"
78
- ],
79
- "surfaces": [],
80
- "relationshipFeatures": [
81
- "uuidColumns"
82
- ],
83
- "tags": [],
84
- "risks": []
85
- },
86
42
  {
87
43
  "name": "Site",
88
44
  "qualifiedName": "@happyvertical/smrt-sites:Site",
@@ -428,6 +384,50 @@
428
384
  ],
429
385
  "tags": [],
430
386
  "risks": []
387
+ },
388
+ {
389
+ "name": "SiteAgentBindingCollection",
390
+ "qualifiedName": "@happyvertical/smrt-sites:SiteAgentBindingCollection",
391
+ "collection": "siteagentbindings",
392
+ "tableName": "site_agent_bindings",
393
+ "packageName": "@happyvertical/smrt-sites",
394
+ "extends": "SmrtCollection",
395
+ "fields": [],
396
+ "relationships": [],
397
+ "methods": [
398
+ "findByAgent",
399
+ "findBySite",
400
+ "findBySiteAndAgent",
401
+ "findEnabled"
402
+ ],
403
+ "surfaces": [],
404
+ "relationshipFeatures": [
405
+ "uuidColumns"
406
+ ],
407
+ "tags": [],
408
+ "risks": []
409
+ },
410
+ {
411
+ "name": "SiteCollection",
412
+ "qualifiedName": "@happyvertical/smrt-sites:SiteCollection",
413
+ "collection": "sites",
414
+ "tableName": "sites",
415
+ "packageName": "@happyvertical/smrt-sites",
416
+ "extends": "SmrtCollection",
417
+ "fields": [],
418
+ "relationships": [],
419
+ "methods": [
420
+ "findActive",
421
+ "findByDomain",
422
+ "findByStatus",
423
+ "findByTenant"
424
+ ],
425
+ "surfaces": [],
426
+ "relationshipFeatures": [
427
+ "uuidColumns"
428
+ ],
429
+ "tags": [],
430
+ "risks": []
431
431
  }
432
432
  ],
433
433
  "surfaces": [
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@happyvertical/smrt-sites",
3
- "version": "0.40.36",
3
+ "version": "0.40.38",
4
4
  "description": "Site lifecycle management for multi-tenant SMRT networks",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -19,8 +19,8 @@
19
19
  "./manifest.json": "./dist/manifest.json"
20
20
  },
21
21
  "dependencies": {
22
- "@happyvertical/smrt-core": "0.40.36",
23
- "@happyvertical/smrt-tenancy": "0.40.36"
22
+ "@happyvertical/smrt-core": "0.40.38",
23
+ "@happyvertical/smrt-tenancy": "0.40.38"
24
24
  },
25
25
  "devDependencies": {
26
26
  "@happyvertical/sql": "^0.84.0",
@@ -29,8 +29,8 @@
29
29
  "typescript": "5.9.3",
30
30
  "vite": "8.1.4",
31
31
  "vitest": "4.1.10",
32
- "@happyvertical/smrt-cli": "0.40.36",
33
- "@happyvertical/smrt-vitest": "0.40.36"
32
+ "@happyvertical/smrt-cli": "0.40.38",
33
+ "@happyvertical/smrt-vitest": "0.40.38"
34
34
  },
35
35
  "keywords": [
36
36
  "ai",