@happyvertical/smrt-content 0.43.4 → 0.43.5
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/AGENTS.md +9 -86
- package/agents/content-list.md +869 -0
- package/dist/content-query.d.ts +310 -0
- package/dist/content-query.d.ts.map +1 -0
- package/dist/contents.d.ts +22 -0
- package/dist/contents.d.ts.map +1 -1
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +672 -4
- package/dist/index.js.map +1 -1
- package/dist/manifest.json +22 -2
- package/dist/smrt-knowledge.json +38 -5
- package/dist/svelte/components/ContentList.svelte +941 -30
- package/dist/svelte/components/ContentList.svelte.d.ts +44 -1
- package/dist/svelte/components/ContentList.svelte.d.ts.map +1 -1
- package/dist/svelte/content-list-controller.d.ts +98 -1
- package/dist/svelte/content-list-controller.d.ts.map +1 -1
- package/dist/svelte/content-list-controller.js +290 -19
- package/dist/svelte/content-list-query.d.ts +498 -0
- package/dist/svelte/content-list-query.d.ts.map +1 -0
- package/dist/svelte/content-list-query.js +1294 -0
- package/dist/svelte/content-list-saved-views.d.ts +172 -0
- package/dist/svelte/content-list-saved-views.d.ts.map +1 -0
- package/dist/svelte/content-list-saved-views.js +298 -0
- package/dist/svelte/content-list-url-state.d.ts +211 -0
- package/dist/svelte/content-list-url-state.d.ts.map +1 -0
- package/dist/svelte/content-list-url-state.js +856 -0
- package/dist/svelte/i18n.contribution.d.ts +24 -0
- package/dist/svelte/i18n.contribution.d.ts.map +1 -1
- package/dist/svelte/i18n.contribution.js +26 -0
- package/dist/svelte/index.d.ts +5 -1
- package/dist/svelte/index.d.ts.map +1 -1
- package/dist/svelte/index.js +8 -1
- package/package.json +16 -15
package/dist/index.js
CHANGED
|
@@ -2,7 +2,7 @@ import { DEFAULT_CONTENT_BODY_FORMAT, bodyToEditorHtml, editorHtmlToBody, extrac
|
|
|
2
2
|
import { _ as loadPersistedContentGovernanceDefinitions, a as getAcceptedContentReviewStatuses, b as resolveConfiguredContentGovernance, c as getContentReviewPolicies, d as getContentReviewProfileKeys, f as getContentReviewRequirements, g as hasStaticContentGovernanceProfile, h as hasStaticContentGovernancePolicy, i as configureContentGovernance, l as getContentReviewPolicy, m as getFallbackPolicyKind, n as buildContentGovernanceAssignmentKey, o as getContentGovernanceConfig, p as getEffectiveContentGovernanceConfig, r as buildContentReviewPrompt, s as getContentReviewKind, t as normalizeContentTransparency, u as getContentReviewProfile, v as parseContentReviewResponse, x as resolveEffectiveContentGovernance, y as resetContentGovernanceConfig } from "./chunks/content-transparency-Bh6axaZj.js";
|
|
3
3
|
import { contentEditorAssistantContextToChatProps, createContentEditorAssistantContext, sanitizeContentEditorAssistantFieldUpdates } from "./content-editor-assistant.js";
|
|
4
4
|
import { evaluateContentPublishReadiness } from "./publish-readiness.js";
|
|
5
|
-
import { ObjectRegistry, SmrtCollection, SmrtJunction, SmrtObject, ValidationError, crossPackageRef, field, foreignKey, smrt } from "@happyvertical/smrt-core";
|
|
5
|
+
import { DataQueryValidationError, ObjectRegistry, SmrtCollection, SmrtJunction, SmrtObject, ValidationError, createDataQueryFingerprint, crossPackageRef, field, foreignKey, normalizeDataQueryRequest, normalizeDataQueryResult, normalizeDataQuerySchema, smrt } from "@happyvertical/smrt-core";
|
|
6
6
|
import { AssetCollection, AssetStatusCollection, AssetTypeCollection } from "@happyvertical/smrt-assets";
|
|
7
7
|
import { ImageCollection } from "@happyvertical/smrt-images";
|
|
8
8
|
import { definePrompt, resolvePrompt } from "@happyvertical/smrt-prompts";
|
|
@@ -37,7 +37,7 @@ var __exportAll = (all, no_symbols) => {
|
|
|
37
37
|
};
|
|
38
38
|
//#endregion
|
|
39
39
|
//#region src/__smrt-register__.ts
|
|
40
|
-
ObjectRegistry.registerPackageManifest(JSON.parse("{\"version\":\"1.0.0\",\"timestamp\":0,\"packageName\":\"@happyvertical/smrt-content\",\"packageVersion\":\"0.43.4\",\"objects\":{\"@happyvertical/smrt-content:ContentAsset\":{\"name\":\"contentasset\",\"className\":\"ContentAsset\",\"qualifiedName\":\"@happyvertical/smrt-content:ContentAsset\",\"collection\":\"contentassets\",\"filePath\":\"/home/runner/work/smrt/smrt/packages/content/src/content-asset.ts\",\"packageName\":\"@happyvertical/smrt-content\",\"fields\":{\"tenantId\":{\"type\":\"text\",\"required\":false,\"_meta\":{\"sqlType\":\"UUID\",\"nullable\":true,\"__tenancy\":{\"isTenantIdField\":true,\"autoFilter\":true,\"required\":false,\"autoPopulate\":true,\"nullable\":true,\"mode\":\"optional\",\"field\":\"tenantId\",\"allowSuperAdminBypass\":false}}},\"contentId\":{\"type\":\"foreignKey\",\"required\":true,\"related\":\"Content\",\"_meta\":{\"required\":true}},\"assetId\":{\"type\":\"crossPackageRef\",\"required\":true,\"related\":\"@happyvertical/smrt-assets:Asset\"},\"relationship\":{\"type\":\"text\",\"required\":true,\"_meta\":{\"required\":true}},\"sortOrder\":{\"type\":\"integer\",\"required\":true,\"default\":0}},\"methods\":{},\"decoratorConfig\":{\"tableName\":\"content_assets\",\"conflictColumns\":[\"content_id\",\"asset_id\",\"relationship\"],\"api\":false,\"mcp\":false,\"cli\":false,\"tenantScoped\":{\"mode\":\"optional\"}},\"extends\":\"SmrtObject\",\"exportName\":\"ContentAsset\",\"collectionExportName\":\"ContentAssetCollection\",\"validationRules\":[{\"field\":\"contentId\",\"rule\":\"required\",\"fieldType\":\"foreignKey\"},{\"field\":\"assetId\",\"rule\":\"required\",\"fieldType\":\"crossPackageRef\"},{\"field\":\"relationship\",\"rule\":\"required\",\"fieldType\":\"text\"},{\"field\":\"sortOrder\",\"rule\":\"required\",\"fieldType\":\"integer\"}],\"schema\":{\"tableName\":\"content_assets\",\"ddl\":\"CREATE TABLE IF NOT EXISTS \\\"content_assets\\\" (\\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,\\n \\\"content_id\\\" UUID NOT NULL,\\n \\\"asset_id\\\" UUID NOT NULL,\\n \\\"relationship\\\" TEXT NOT NULL,\\n \\\"sort_order\\\" INTEGER NOT NULL 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\":false,\"unique\":false},\"content_id\":{\"type\":\"UUID\",\"referenceKind\":\"foreignKey\",\"notNull\":true,\"unique\":false,\"foreignKey\":{\"table\":\"contents\",\"column\":\"id\",\"onDelete\":\"CASCADE\",\"onUpdate\":\"CASCADE\"}},\"asset_id\":{\"type\":\"UUID\",\"referenceKind\":\"crossPackageRef\",\"notNull\":true,\"unique\":false},\"relationship\":{\"type\":\"TEXT\",\"notNull\":true,\"unique\":false},\"sort_order\":{\"type\":\"INTEGER\",\"notNull\":true,\"unique\":false,\"default\":0}},\"indexes\":[{\"name\":\"content_assets_content_id_asset_id_idx\",\"columns\":[\"content_id\",\"asset_id\",\"relationship\"],\"unique\":true},{\"name\":\"content_assets_slug_context_idx\",\"columns\":[\"slug\",\"context\"]},{\"name\":\"content_assets_tenant_id_created_at_idx\",\"columns\":[\"tenant_id\",\"created_at\"]},{\"name\":\"content_assets_asset_id_idx\",\"columns\":[\"asset_id\"]}],\"version\":\"472d718d\"}},\"@happyvertical/smrt-content:ContentAssetCollection\":{\"name\":\"contentassetcollection\",\"className\":\"ContentAssetCollection\",\"qualifiedName\":\"@happyvertical/smrt-content:ContentAssetCollection\",\"collection\":\"contentassets\",\"filePath\":\"/home/runner/work/smrt/smrt/packages/content/src/content-assets.ts\",\"packageName\":\"@happyvertical/smrt-content\",\"fields\":{},\"methods\":{\"byLeft\":{\"name\":\"byLeft\",\"async\":true,\"parameters\":[{\"name\":\"leftId\",\"type\":\"string\",\"optional\":false},{\"name\":\"opts\",\"type\":\"JunctionFilterOptions\",\"optional\":true}],\"returnType\":\"Promise<TItem[]>\",\"isStatic\":false,\"isPublic\":true},\"byRight\":{\"name\":\"byRight\",\"async\":true,\"parameters\":[{\"name\":\"rightId\",\"type\":\"string\",\"optional\":false},{\"name\":\"opts\",\"type\":\"JunctionFilterOptions\",\"optional\":true}],\"returnType\":\"Promise<TItem[]>\",\"isStatic\":false,\"isPublic\":true},\"attach\":{\"name\":\"attach\",\"async\":true,\"parameters\":[{\"name\":\"leftId\",\"type\":\"string\",\"optional\":false},{\"name\":\"rightId\",\"type\":\"string\",\"optional\":false},{\"name\":\"opts\",\"type\":\"JunctionAttachOptions\",\"optional\":true}],\"returnType\":\"Promise<TItem>\",\"isStatic\":false,\"isPublic\":true},\"detach\":{\"name\":\"detach\",\"async\":true,\"parameters\":[{\"name\":\"leftId\",\"type\":\"string\",\"optional\":false},{\"name\":\"rightId\",\"type\":\"string\",\"optional\":false},{\"name\":\"opts\",\"type\":\"JunctionFilterOptions\",\"optional\":true}],\"returnType\":\"Promise<void>\",\"isStatic\":false,\"isPublic\":true},\"setLinks\":{\"name\":\"setLinks\",\"async\":true,\"parameters\":[{\"name\":\"leftId\",\"type\":\"string\",\"optional\":false},{\"name\":\"rightIds\",\"type\":\"string[]\",\"optional\":false},{\"name\":\"opts\",\"type\":\"JunctionAttachOptions\",\"optional\":true}],\"returnType\":\"Promise<void>\",\"isStatic\":false,\"isPublic\":true}},\"decoratorConfig\":{\"api\":false,\"mcp\":false,\"cli\":false,\"tableName\":\"content_assets\"},\"extends\":\"SmrtJunction\",\"extendsTypeArg\":\"ContentAsset\",\"exportName\":\"ContentAssetCollection\",\"collectionExportName\":\"ContentAssetCollectionCollection\",\"schema\":{\"tableName\":\"content_assets\",\"ddl\":\"CREATE TABLE IF NOT EXISTS \\\"content_assets\\\" (\\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\":\"content_assets_slug_context_idx\",\"columns\":[\"slug\",\"context\"],\"unique\":true},{\"name\":\"content_assets_created_at_idx\",\"columns\":[\"created_at\"]}],\"version\":\"35bf42e8\"}},\"@happyvertical/smrt-content:ContentContributionAttachment\":{\"name\":\"contentcontributionattachment\",\"className\":\"ContentContributionAttachment\",\"qualifiedName\":\"@happyvertical/smrt-content:ContentContributionAttachment\",\"collection\":\"contentcontributionattachments\",\"filePath\":\"/home/runner/work/smrt/smrt/packages/content/src/content-contribution-attachment.ts\",\"packageName\":\"@happyvertical/smrt-content\",\"fields\":{\"contributionId\":{\"type\":\"foreignKey\",\"required\":true,\"related\":\"ContentContribution\",\"_meta\":{\"required\":true}},\"revisionId\":{\"type\":\"foreignKey\",\"required\":false,\"related\":\"ContentContributionRevision\"},\"filename\":{\"type\":\"text\",\"required\":false},\"mimeType\":{\"type\":\"text\",\"required\":false},\"size\":{\"type\":\"integer\",\"required\":true,\"default\":0},\"fileKey\":{\"type\":\"text\",\"required\":false},\"sourceUri\":{\"type\":\"text\",\"required\":false},\"channel\":{\"type\":\"text\",\"required\":false,\"default\":\"web\"},\"promotedAssetId\":{\"type\":\"crossPackageRef\",\"required\":false,\"related\":\"@happyvertical/smrt-assets:Asset\"},\"metadata\":{\"type\":\"text\",\"required\":false},\"tenantId\":{\"type\":\"text\",\"required\":false,\"_meta\":{\"sqlType\":\"UUID\",\"nullable\":true,\"__tenancy\":{\"isTenantIdField\":true,\"autoFilter\":true,\"required\":false,\"autoPopulate\":true,\"nullable\":true,\"mode\":\"optional\",\"field\":\"tenantId\",\"allowSuperAdminBypass\":false}}},\"createdAt\":{\"type\":\"text\",\"required\":false},\"updatedAt\":{\"type\":\"text\",\"required\":false}},\"methods\":{\"getMetadata\":{\"name\":\"getMetadata\",\"async\":false,\"parameters\":[],\"returnType\":\"Record<string>\",\"isStatic\":false,\"isPublic\":true}},\"decoratorConfig\":{\"tableName\":\"content_contribution_attachments\",\"conflictColumns\":[\"id\"],\"api\":{\"include\":[\"list\",\"get\",\"create\",\"update\",\"delete\"]},\"mcp\":{\"include\":[\"list\",\"get\",\"create\",\"update\",\"delete\"]},\"cli\":true,\"tenantScoped\":{\"mode\":\"optional\"}},\"extends\":\"SmrtObject\",\"exportName\":\"ContentContributionAttachment\",\"collectionExportName\":\"ContentContributionAttachmentCollection\",\"validationRules\":[{\"field\":\"contributionId\",\"rule\":\"required\",\"fieldType\":\"foreignKey\"},{\"field\":\"size\",\"rule\":\"required\",\"fieldType\":\"integer\"}],\"schema\":{\"tableName\":\"content_contribution_attachments\",\"ddl\":\"CREATE TABLE IF NOT EXISTS \\\"content_contribution_attachments\\\" (\\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 \\\"contribution_id\\\" UUID NOT NULL,\\n \\\"revision_id\\\" UUID,\\n \\\"filename\\\" TEXT,\\n \\\"mime_type\\\" TEXT,\\n \\\"size\\\" INTEGER NOT NULL DEFAULT 0,\\n \\\"file_key\\\" TEXT,\\n \\\"source_uri\\\" TEXT,\\n \\\"channel\\\" TEXT DEFAULT 'web',\\n \\\"promoted_asset_id\\\" UUID,\\n \\\"metadata\\\" TEXT,\\n \\\"tenant_id\\\" UUID\\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\"},\"contribution_id\":{\"type\":\"UUID\",\"referenceKind\":\"foreignKey\",\"notNull\":true,\"unique\":false,\"foreignKey\":{\"table\":\"content_contributions\",\"column\":\"id\",\"onDelete\":\"NO ACTION\",\"onUpdate\":\"CASCADE\"}},\"revision_id\":{\"type\":\"UUID\",\"referenceKind\":\"foreignKey\",\"notNull\":false,\"unique\":false,\"foreignKey\":{\"table\":\"content_contribution_revisions\",\"column\":\"id\",\"onDelete\":\"NO ACTION\",\"onUpdate\":\"CASCADE\"}},\"filename\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"mime_type\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"size\":{\"type\":\"INTEGER\",\"notNull\":true,\"unique\":false,\"default\":0},\"file_key\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"source_uri\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"channel\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"web\"},\"promoted_asset_id\":{\"type\":\"UUID\",\"referenceKind\":\"crossPackageRef\",\"notNull\":false,\"unique\":false},\"metadata\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"tenant_id\":{\"type\":\"UUID\",\"referenceKind\":\"tenantId\",\"notNull\":false,\"unique\":false}},\"indexes\":[{\"name\":\"content_contribution_attachments_slug_context_idx\",\"columns\":[\"slug\",\"context\"]},{\"name\":\"content_contribution_attachments_tenant_id_created_at_idx\",\"columns\":[\"tenant_id\",\"created_at\"]},{\"name\":\"content_contribution_attachments_contribution_id_idx\",\"columns\":[\"contribution_id\"]},{\"name\":\"content_contribution_attachments_revision_id_idx\",\"columns\":[\"revision_id\"]},{\"name\":\"content_contribution_attachments_promoted_asset_id_idx\",\"columns\":[\"promoted_asset_id\"]}],\"version\":\"83e64a1b\"}},\"@happyvertical/smrt-content:ContentContributionAttachmentCollection\":{\"name\":\"contentcontributionattachmentcollection\",\"className\":\"ContentContributionAttachmentCollection\",\"qualifiedName\":\"@happyvertical/smrt-content:ContentContributionAttachmentCollection\",\"collection\":\"contentcontributionattachments\",\"filePath\":\"/home/runner/work/smrt/smrt/packages/content/src/content-contribution-attachments.ts\",\"packageName\":\"@happyvertical/smrt-content\",\"fields\":{},\"methods\":{\"listForContribution\":{\"name\":\"listForContribution\",\"async\":true,\"parameters\":[{\"name\":\"contributionId\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"Promise<ContentContributionAttachment[]>\",\"isStatic\":false,\"isPublic\":true},\"listForRevision\":{\"name\":\"listForRevision\",\"async\":true,\"parameters\":[{\"name\":\"revisionId\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"Promise<ContentContributionAttachment[]>\",\"isStatic\":false,\"isPublic\":true}},\"decoratorConfig\":{\"tableName\":\"content_contribution_attachments\"},\"extends\":\"SmrtCollection\",\"extendsTypeArg\":\"ContentContributionAttachment\",\"exportName\":\"ContentContributionAttachmentCollection\",\"collectionExportName\":\"ContentContributionAttachmentCollectionCollection\",\"schema\":{\"tableName\":\"content_contribution_attachments\",\"ddl\":\"CREATE TABLE IF NOT EXISTS \\\"content_contribution_attachments\\\" (\\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\":\"content_contribution_attachments_slug_context_idx\",\"columns\":[\"slug\",\"context\"],\"unique\":true},{\"name\":\"content_contribution_attachments_created_at_idx\",\"columns\":[\"created_at\"]}],\"version\":\"d0c8b33f\"}},\"@happyvertical/smrt-content:ContentContributionRevision\":{\"name\":\"contentcontributionrevision\",\"className\":\"ContentContributionRevision\",\"qualifiedName\":\"@happyvertical/smrt-content:ContentContributionRevision\",\"collection\":\"contentcontributionrevisions\",\"filePath\":\"/home/runner/work/smrt/smrt/packages/content/src/content-contribution-revision.ts\",\"packageName\":\"@happyvertical/smrt-content\",\"fields\":{\"contributionId\":{\"type\":\"foreignKey\",\"required\":true,\"related\":\"ContentContribution\",\"_meta\":{\"required\":true}},\"revisionNumber\":{\"type\":\"integer\",\"required\":true,\"default\":1},\"channel\":{\"type\":\"text\",\"required\":false,\"default\":\"web\"},\"title\":{\"type\":\"text\",\"required\":false},\"description\":{\"type\":\"text\",\"required\":false},\"body\":{\"type\":\"text\",\"required\":false},\"sourceMessageId\":{\"type\":\"crossPackageRef\",\"required\":false,\"related\":\"@happyvertical/smrt-messages:Message\"},\"sourceThreadKey\":{\"type\":\"text\",\"required\":false},\"metadata\":{\"type\":\"text\",\"required\":false},\"tenantId\":{\"type\":\"text\",\"required\":false,\"_meta\":{\"sqlType\":\"UUID\",\"nullable\":true,\"__tenancy\":{\"isTenantIdField\":true,\"autoFilter\":true,\"required\":false,\"autoPopulate\":true,\"nullable\":true,\"mode\":\"optional\",\"field\":\"tenantId\",\"allowSuperAdminBypass\":false}}},\"createdAt\":{\"type\":\"text\",\"required\":false},\"updatedAt\":{\"type\":\"text\",\"required\":false}},\"methods\":{\"getMetadata\":{\"name\":\"getMetadata\",\"async\":false,\"parameters\":[],\"returnType\":\"Record<string>\",\"isStatic\":false,\"isPublic\":true}},\"decoratorConfig\":{\"tableName\":\"content_contribution_revisions\",\"conflictColumns\":[\"contribution_id\",\"revision_number\"],\"api\":{\"include\":[\"list\",\"get\",\"create\",\"update\",\"delete\"]},\"mcp\":{\"include\":[\"list\",\"get\",\"create\",\"update\",\"delete\"]},\"cli\":true,\"tenantScoped\":{\"mode\":\"optional\"}},\"extends\":\"SmrtObject\",\"exportName\":\"ContentContributionRevision\",\"collectionExportName\":\"ContentContributionRevisionCollection\",\"validationRules\":[{\"field\":\"contributionId\",\"rule\":\"required\",\"fieldType\":\"foreignKey\"},{\"field\":\"revisionNumber\",\"rule\":\"required\",\"fieldType\":\"integer\"}],\"schema\":{\"tableName\":\"content_contribution_revisions\",\"ddl\":\"CREATE TABLE IF NOT EXISTS \\\"content_contribution_revisions\\\" (\\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 \\\"contribution_id\\\" UUID NOT NULL,\\n \\\"revision_number\\\" INTEGER NOT NULL DEFAULT 1,\\n \\\"channel\\\" TEXT DEFAULT 'web',\\n \\\"title\\\" TEXT,\\n \\\"description\\\" TEXT,\\n \\\"body\\\" TEXT,\\n \\\"source_message_id\\\" UUID,\\n \\\"source_thread_key\\\" TEXT,\\n \\\"metadata\\\" TEXT,\\n \\\"tenant_id\\\" UUID\\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\"},\"contribution_id\":{\"type\":\"UUID\",\"referenceKind\":\"foreignKey\",\"notNull\":true,\"unique\":false,\"foreignKey\":{\"table\":\"content_contributions\",\"column\":\"id\",\"onDelete\":\"CASCADE\",\"onUpdate\":\"CASCADE\"}},\"revision_number\":{\"type\":\"INTEGER\",\"notNull\":true,\"unique\":false,\"default\":1},\"channel\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"web\"},\"title\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"description\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"body\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"source_message_id\":{\"type\":\"UUID\",\"referenceKind\":\"crossPackageRef\",\"notNull\":false,\"unique\":false},\"source_thread_key\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"metadata\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"tenant_id\":{\"type\":\"UUID\",\"referenceKind\":\"tenantId\",\"notNull\":false,\"unique\":false}},\"indexes\":[{\"name\":\"content_contribution_revisions_contribution_id_r_af43e6d599_idx\",\"columns\":[\"contribution_id\",\"revision_number\"],\"unique\":true},{\"name\":\"content_contribution_revisions_slug_context_idx\",\"columns\":[\"slug\",\"context\"]},{\"name\":\"content_contribution_revisions_tenant_id_created_at_idx\",\"columns\":[\"tenant_id\",\"created_at\"]},{\"name\":\"content_contribution_revisions_source_message_id_idx\",\"columns\":[\"source_message_id\"]}],\"version\":\"5051727c\"}},\"@happyvertical/smrt-content:ContentContributionRevisionCollection\":{\"name\":\"contentcontributionrevisioncollection\",\"className\":\"ContentContributionRevisionCollection\",\"qualifiedName\":\"@happyvertical/smrt-content:ContentContributionRevisionCollection\",\"collection\":\"contentcontributionrevisions\",\"filePath\":\"/home/runner/work/smrt/smrt/packages/content/src/content-contribution-revisions.ts\",\"packageName\":\"@happyvertical/smrt-content\",\"fields\":{},\"methods\":{\"listForContribution\":{\"name\":\"listForContribution\",\"async\":true,\"parameters\":[{\"name\":\"contributionId\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"Promise<ContentContributionRevision[]>\",\"isStatic\":false,\"isPublic\":true},\"getLatestForContribution\":{\"name\":\"getLatestForContribution\",\"async\":true,\"parameters\":[{\"name\":\"contributionId\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"Promise<ContentContributionRevision | null>\",\"isStatic\":false,\"isPublic\":true}},\"decoratorConfig\":{\"tableName\":\"content_contribution_revisions\"},\"extends\":\"SmrtCollection\",\"extendsTypeArg\":\"ContentContributionRevision\",\"exportName\":\"ContentContributionRevisionCollection\",\"collectionExportName\":\"ContentContributionRevisionCollectionCollection\",\"schema\":{\"tableName\":\"content_contribution_revisions\",\"ddl\":\"CREATE TABLE IF NOT EXISTS \\\"content_contribution_revisions\\\" (\\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\":\"content_contribution_revisions_slug_context_idx\",\"columns\":[\"slug\",\"context\"],\"unique\":true},{\"name\":\"content_contribution_revisions_created_at_idx\",\"columns\":[\"created_at\"]}],\"version\":\"cc3e0dfa\"}},\"@happyvertical/smrt-content:ContentContributionType\":{\"name\":\"contentcontributiontype\",\"className\":\"ContentContributionType\",\"qualifiedName\":\"@happyvertical/smrt-content:ContentContributionType\",\"collection\":\"contentcontributiontypes\",\"filePath\":\"/home/runner/work/smrt/smrt/packages/content/src/content-contribution-type.ts\",\"packageName\":\"@happyvertical/smrt-content\",\"fields\":{\"key\":{\"type\":\"text\",\"required\":true,\"_meta\":{\"required\":true}},\"label\":{\"type\":\"text\",\"required\":false},\"enabled\":{\"type\":\"boolean\",\"required\":true,\"default\":true},\"allowedChannels\":{\"type\":\"text\",\"required\":false},\"allowText\":{\"type\":\"boolean\",\"required\":true,\"default\":true},\"allowFiles\":{\"type\":\"boolean\",\"required\":true,\"default\":false},\"allowEmptyText\":{\"type\":\"boolean\",\"required\":true,\"default\":false},\"intakeRules\":{\"type\":\"text\",\"required\":false},\"promotion\":{\"type\":\"text\",\"required\":false},\"metadata\":{\"type\":\"text\",\"required\":false},\"tenantId\":{\"type\":\"text\",\"required\":false,\"_meta\":{\"sqlType\":\"UUID\",\"nullable\":true,\"__tenancy\":{\"isTenantIdField\":true,\"autoFilter\":true,\"required\":false,\"autoPopulate\":true,\"nullable\":true,\"mode\":\"optional\",\"field\":\"tenantId\",\"allowSuperAdminBypass\":false}}},\"createdAt\":{\"type\":\"text\",\"required\":false},\"updatedAt\":{\"type\":\"text\",\"required\":false}},\"methods\":{\"getAllowedChannels\":{\"name\":\"getAllowedChannels\",\"async\":false,\"parameters\":[],\"returnType\":\"ContentContributionChannel[]\",\"isStatic\":false,\"isPublic\":true},\"setAllowedChannels\":{\"name\":\"setAllowedChannels\",\"async\":false,\"parameters\":[{\"name\":\"channels\",\"type\":\"ContentContributionChannel[]\",\"optional\":false}],\"returnType\":\"void\",\"isStatic\":false,\"isPublic\":true},\"getIntakeRules\":{\"name\":\"getIntakeRules\",\"async\":false,\"parameters\":[],\"returnType\":\"ContentContributionIntakeRules\",\"isStatic\":false,\"isPublic\":true},\"setIntakeRules\":{\"name\":\"setIntakeRules\",\"async\":false,\"parameters\":[{\"name\":\"rules\",\"type\":\"ContentContributionIntakeRules\",\"optional\":false}],\"returnType\":\"void\",\"isStatic\":false,\"isPublic\":true},\"getPromotion\":{\"name\":\"getPromotion\",\"async\":false,\"parameters\":[],\"returnType\":\"ContentContributionPromotionMapping\",\"isStatic\":false,\"isPublic\":true},\"setPromotion\":{\"name\":\"setPromotion\",\"async\":false,\"parameters\":[{\"name\":\"promotion\",\"type\":\"ContentContributionPromotionMapping\",\"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\":\"metadata\",\"type\":\"Record<string>\",\"optional\":false}],\"returnType\":\"void\",\"isStatic\":false,\"isPublic\":true},\"toDefinition\":{\"name\":\"toDefinition\",\"async\":false,\"parameters\":[],\"returnType\":\"ContentContributionTypeDefinition\",\"isStatic\":false,\"isPublic\":true},\"delete\":{\"name\":\"delete\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<void>\",\"isStatic\":false,\"isPublic\":true}},\"decoratorConfig\":{\"tableName\":\"content_contribution_types\",\"conflictColumns\":[\"key\"],\"api\":{\"include\":[\"list\",\"get\",\"create\",\"update\",\"delete\"]},\"mcp\":{\"include\":[\"list\",\"get\",\"create\",\"update\",\"delete\"]},\"cli\":true,\"tenantScoped\":{\"mode\":\"optional\"}},\"extends\":\"SmrtObject\",\"exportName\":\"ContentContributionType\",\"collectionExportName\":\"ContentContributionTypeCollection\",\"validationRules\":[{\"field\":\"key\",\"rule\":\"required\",\"fieldType\":\"text\"},{\"field\":\"enabled\",\"rule\":\"required\",\"fieldType\":\"boolean\"},{\"field\":\"allowText\",\"rule\":\"required\",\"fieldType\":\"boolean\"},{\"field\":\"allowFiles\",\"rule\":\"required\",\"fieldType\":\"boolean\"},{\"field\":\"allowEmptyText\",\"rule\":\"required\",\"fieldType\":\"boolean\"}],\"schema\":{\"tableName\":\"content_contribution_types\",\"ddl\":\"CREATE TABLE IF NOT EXISTS \\\"content_contribution_types\\\" (\\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 \\\"key\\\" TEXT NOT NULL,\\n \\\"label\\\" TEXT,\\n \\\"enabled\\\" BOOLEAN NOT NULL DEFAULT TRUE,\\n \\\"allowed_channels\\\" TEXT,\\n \\\"allow_text\\\" BOOLEAN NOT NULL DEFAULT TRUE,\\n \\\"allow_files\\\" BOOLEAN NOT NULL DEFAULT FALSE,\\n \\\"allow_empty_text\\\" BOOLEAN NOT NULL DEFAULT FALSE,\\n \\\"intake_rules\\\" TEXT,\\n \\\"promotion\\\" TEXT,\\n \\\"metadata\\\" TEXT,\\n \\\"tenant_id\\\" UUID\\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\"},\"key\":{\"type\":\"TEXT\",\"notNull\":true,\"unique\":false},\"label\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"enabled\":{\"type\":\"BOOLEAN\",\"notNull\":true,\"unique\":false,\"default\":true},\"allowed_channels\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"allow_text\":{\"type\":\"BOOLEAN\",\"notNull\":true,\"unique\":false,\"default\":true},\"allow_files\":{\"type\":\"BOOLEAN\",\"notNull\":true,\"unique\":false,\"default\":false},\"allow_empty_text\":{\"type\":\"BOOLEAN\",\"notNull\":true,\"unique\":false,\"default\":false},\"intake_rules\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"promotion\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"metadata\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"tenant_id\":{\"type\":\"UUID\",\"referenceKind\":\"tenantId\",\"notNull\":false,\"unique\":false}},\"indexes\":[{\"name\":\"content_contribution_types_key_idx\",\"columns\":[\"key\"],\"unique\":true},{\"name\":\"content_contribution_types_slug_context_idx\",\"columns\":[\"slug\",\"context\"]},{\"name\":\"content_contribution_types_tenant_id_created_at_idx\",\"columns\":[\"tenant_id\",\"created_at\"]}],\"version\":\"35552300\"}},\"@happyvertical/smrt-content:ContentContributionTypeCollection\":{\"name\":\"contentcontributiontypecollection\",\"className\":\"ContentContributionTypeCollection\",\"qualifiedName\":\"@happyvertical/smrt-content:ContentContributionTypeCollection\",\"collection\":\"contentcontributiontypes\",\"filePath\":\"/home/runner/work/smrt/smrt/packages/content/src/content-contribution-types.ts\",\"packageName\":\"@happyvertical/smrt-content\",\"fields\":{},\"methods\":{\"getByKey\":{\"name\":\"getByKey\",\"async\":true,\"parameters\":[{\"name\":\"key\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"Promise<ContentContributionType | null>\",\"isStatic\":false,\"isPublic\":true}},\"decoratorConfig\":{\"tableName\":\"content_contribution_types\"},\"extends\":\"SmrtCollection\",\"extendsTypeArg\":\"ContentContributionType\",\"exportName\":\"ContentContributionTypeCollection\",\"collectionExportName\":\"ContentContributionTypeCollectionCollection\",\"schema\":{\"tableName\":\"content_contribution_types\",\"ddl\":\"CREATE TABLE IF NOT EXISTS \\\"content_contribution_types\\\" (\\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\":\"content_contribution_types_slug_context_idx\",\"columns\":[\"slug\",\"context\"],\"unique\":true},{\"name\":\"content_contribution_types_created_at_idx\",\"columns\":[\"created_at\"]}],\"version\":\"9c9a0367\"}},\"@happyvertical/smrt-content:ContentContribution\":{\"name\":\"contentcontribution\",\"className\":\"ContentContribution\",\"qualifiedName\":\"@happyvertical/smrt-content:ContentContribution\",\"collection\":\"contentcontributions\",\"filePath\":\"/home/runner/work/smrt/smrt/packages/content/src/content-contribution.ts\",\"packageName\":\"@happyvertical/smrt-content\",\"fields\":{\"contributorId\":{\"type\":\"foreignKey\",\"required\":true,\"related\":\"ContentContributor\",\"_meta\":{\"required\":true}},\"contributionTypeKey\":{\"type\":\"text\",\"required\":true,\"_meta\":{\"required\":true}},\"status\":{\"type\":\"text\",\"required\":false,\"default\":\"submitted\"},\"intakeDecision\":{\"type\":\"text\",\"required\":false,\"default\":\"accepted\"},\"channel\":{\"type\":\"text\",\"required\":false,\"default\":\"web\"},\"title\":{\"type\":\"text\",\"required\":false},\"description\":{\"type\":\"text\",\"required\":false},\"body\":{\"type\":\"text\",\"required\":false},\"contributorEmail\":{\"type\":\"text\",\"required\":false},\"contributorName\":{\"type\":\"text\",\"required\":false},\"threadKey\":{\"type\":\"text\",\"required\":false},\"sourceMessageId\":{\"type\":\"crossPackageRef\",\"required\":false,\"related\":\"@happyvertical/smrt-messages:Message\"},\"editorNotes\":{\"type\":\"text\",\"required\":false},\"promotedContentId\":{\"type\":\"foreignKey\",\"required\":false,\"related\":\"Content\"},\"revisionCount\":{\"type\":\"integer\",\"required\":true,\"default\":0},\"approvedAt\":{\"type\":\"datetime\",\"required\":false},\"promotedAt\":{\"type\":\"datetime\",\"required\":false},\"rejectedAt\":{\"type\":\"datetime\",\"required\":false},\"withdrawnAt\":{\"type\":\"datetime\",\"required\":false},\"requestedChangesAt\":{\"type\":\"datetime\",\"required\":false},\"metadata\":{\"type\":\"text\",\"required\":false},\"tenantId\":{\"type\":\"text\",\"required\":false,\"_meta\":{\"sqlType\":\"UUID\",\"nullable\":true,\"__tenancy\":{\"isTenantIdField\":true,\"autoFilter\":true,\"required\":false,\"autoPopulate\":true,\"nullable\":true,\"mode\":\"optional\",\"field\":\"tenantId\",\"allowSuperAdminBypass\":false}}},\"createdAt\":{\"type\":\"text\",\"required\":false},\"updatedAt\":{\"type\":\"text\",\"required\":false}},\"methods\":{\"getMetadata\":{\"name\":\"getMetadata\",\"async\":false,\"parameters\":[],\"returnType\":\"Record<string>\",\"isStatic\":false,\"isPublic\":true},\"setMetadata\":{\"name\":\"setMetadata\",\"async\":false,\"parameters\":[{\"name\":\"metadata\",\"type\":\"Record<string>\",\"optional\":false}],\"returnType\":\"void\",\"isStatic\":false,\"isPublic\":true},\"getContributor\":{\"name\":\"getContributor\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<ContentContributor | null>\",\"isStatic\":false,\"isPublic\":true},\"getRevisions\":{\"name\":\"getRevisions\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<ContentContributionRevision[]>\",\"isStatic\":false,\"isPublic\":true},\"getLatestRevision\":{\"name\":\"getLatestRevision\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<ContentContributionRevision | null>\",\"isStatic\":false,\"isPublic\":true},\"getAttachments\":{\"name\":\"getAttachments\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<ContentContributionAttachment[]>\",\"isStatic\":false,\"isPublic\":true},\"resolveContributionType\":{\"name\":\"resolveContributionType\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<ContentContributionTypeDefinition | null>\",\"isStatic\":false,\"isPublic\":true},\"appendRevisionAction\":{\"name\":\"appendRevisionAction\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"AppendContentContributionRevisionOptions\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"requestChangesAction\":{\"name\":\"requestChangesAction\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"RequestChangesContentContributionOptions\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"rejectAction\":{\"name\":\"rejectAction\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"RejectContentContributionOptions\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"withdrawAction\":{\"name\":\"withdrawAction\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"WithdrawContentContributionOptions\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"approveAction\":{\"name\":\"approveAction\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"ApproveContentContributionOptions\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"promoteAction\":{\"name\":\"promoteAction\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"PromoteContentContributionOptions\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true}},\"decoratorConfig\":{\"tableName\":\"content_contributions\",\"conflictColumns\":[\"id\"],\"api\":{\"include\":[\"list\",\"get\",\"create\",\"update\",\"delete\",\"appendRevisionAction\",\"requestChangesAction\",\"approveAction\",\"rejectAction\",\"withdrawAction\",\"promoteAction\"],\"routes\":{\"appendRevisionAction\":{\"method\":\"POST\",\"path\":\"revisions\"},\"requestChangesAction\":{\"method\":\"POST\",\"path\":\"request-changes\"},\"approveAction\":{\"method\":\"POST\",\"path\":\"approve\"},\"rejectAction\":{\"method\":\"POST\",\"path\":\"reject\"},\"withdrawAction\":{\"method\":\"POST\",\"path\":\"withdraw\"},\"promoteAction\":{\"method\":\"POST\",\"path\":\"promote\"}}},\"mcp\":{\"include\":[\"list\",\"get\",\"create\",\"update\"]},\"cli\":true,\"tenantScoped\":{\"mode\":\"optional\"}},\"extends\":\"SmrtObject\",\"exportName\":\"ContentContribution\",\"collectionExportName\":\"ContentContributionCollection\",\"validationRules\":[{\"field\":\"contributorId\",\"rule\":\"required\",\"fieldType\":\"foreignKey\"},{\"field\":\"contributionTypeKey\",\"rule\":\"required\",\"fieldType\":\"text\"},{\"field\":\"revisionCount\",\"rule\":\"required\",\"fieldType\":\"integer\"}],\"schema\":{\"tableName\":\"content_contributions\",\"ddl\":\"CREATE TABLE IF NOT EXISTS \\\"content_contributions\\\" (\\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 \\\"contributor_id\\\" UUID NOT NULL,\\n \\\"contribution_type_key\\\" TEXT NOT NULL,\\n \\\"status\\\" TEXT DEFAULT 'submitted',\\n \\\"intake_decision\\\" TEXT DEFAULT 'accepted',\\n \\\"channel\\\" TEXT DEFAULT 'web',\\n \\\"title\\\" TEXT,\\n \\\"description\\\" TEXT,\\n \\\"body\\\" TEXT,\\n \\\"contributor_email\\\" TEXT,\\n \\\"contributor_name\\\" TEXT,\\n \\\"thread_key\\\" TEXT,\\n \\\"source_message_id\\\" UUID,\\n \\\"editor_notes\\\" TEXT,\\n \\\"promoted_content_id\\\" UUID,\\n \\\"revision_count\\\" INTEGER NOT NULL DEFAULT 0,\\n \\\"approved_at\\\" TIMESTAMP,\\n \\\"promoted_at\\\" TIMESTAMP,\\n \\\"rejected_at\\\" TIMESTAMP,\\n \\\"withdrawn_at\\\" TIMESTAMP,\\n \\\"requested_changes_at\\\" TIMESTAMP,\\n \\\"metadata\\\" TEXT,\\n \\\"tenant_id\\\" UUID\\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\"},\"contributor_id\":{\"type\":\"UUID\",\"referenceKind\":\"foreignKey\",\"notNull\":true,\"unique\":false,\"foreignKey\":{\"table\":\"content_contributors\",\"column\":\"id\",\"onDelete\":\"NO ACTION\",\"onUpdate\":\"CASCADE\"}},\"contribution_type_key\":{\"type\":\"TEXT\",\"notNull\":true,\"unique\":false},\"status\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"submitted\"},\"intake_decision\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"accepted\"},\"channel\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"web\"},\"title\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"description\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"body\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"contributor_email\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"contributor_name\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"thread_key\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"source_message_id\":{\"type\":\"UUID\",\"referenceKind\":\"crossPackageRef\",\"notNull\":false,\"unique\":false},\"editor_notes\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"promoted_content_id\":{\"type\":\"UUID\",\"referenceKind\":\"foreignKey\",\"notNull\":false,\"unique\":false,\"foreignKey\":{\"table\":\"contents\",\"column\":\"id\",\"onDelete\":\"NO ACTION\",\"onUpdate\":\"CASCADE\"}},\"revision_count\":{\"type\":\"INTEGER\",\"notNull\":true,\"unique\":false,\"default\":0},\"approved_at\":{\"type\":\"TIMESTAMP\",\"notNull\":false,\"unique\":false},\"promoted_at\":{\"type\":\"TIMESTAMP\",\"notNull\":false,\"unique\":false},\"rejected_at\":{\"type\":\"TIMESTAMP\",\"notNull\":false,\"unique\":false},\"withdrawn_at\":{\"type\":\"TIMESTAMP\",\"notNull\":false,\"unique\":false},\"requested_changes_at\":{\"type\":\"TIMESTAMP\",\"notNull\":false,\"unique\":false},\"metadata\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"tenant_id\":{\"type\":\"UUID\",\"referenceKind\":\"tenantId\",\"notNull\":false,\"unique\":false}},\"indexes\":[{\"name\":\"content_contributions_slug_context_idx\",\"columns\":[\"slug\",\"context\"]},{\"name\":\"content_contributions_tenant_id_created_at_idx\",\"columns\":[\"tenant_id\",\"created_at\"]},{\"name\":\"content_contributions_contributor_id_idx\",\"columns\":[\"contributor_id\"]},{\"name\":\"content_contributions_source_message_id_idx\",\"columns\":[\"source_message_id\"]},{\"name\":\"content_contributions_promoted_content_id_idx\",\"columns\":[\"promoted_content_id\"]}],\"version\":\"ef8fd792\"}},\"@happyvertical/smrt-content:ContentContributions\":{\"name\":\"contentcontributions\",\"className\":\"ContentContributions\",\"qualifiedName\":\"@happyvertical/smrt-content:ContentContributions\",\"collection\":\"contentcontributions\",\"filePath\":\"/home/runner/work/smrt/smrt/packages/content/src/content-contributions.ts\",\"packageName\":\"@happyvertical/smrt-content\",\"fields\":{},\"methods\":{\"getContributionTypesAction\":{\"name\":\"getContributionTypesAction\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"listForContributor\":{\"name\":\"listForContributor\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"listInboxAction\":{\"name\":\"listInboxAction\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":true}],\"returnType\":\"Promise<ContentContribution[]>\",\"isStatic\":false,\"isPublic\":true},\"submitWebContribution\":{\"name\":\"submitWebContribution\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"SubmitWebContentContributionOptions\",\"optional\":false}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"ingestEmailContribution\":{\"name\":\"ingestEmailContribution\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"IngestEmailContentContributionOptions\",\"optional\":false}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true}},\"decoratorConfig\":{\"api\":{\"include\":[\"submitWebContribution\",\"ingestEmailContribution\",\"listForContributor\",\"listInboxAction\",\"getContributionTypesAction\"],\"routes\":{\"submitWebContribution\":{\"scope\":\"collection\",\"method\":\"POST\",\"path\":\"submit\"},\"ingestEmailContribution\":{\"scope\":\"collection\",\"method\":\"POST\",\"path\":\"ingest-email\"},\"listForContributor\":{\"scope\":\"collection\",\"method\":\"GET\",\"path\":\"by-contributor\"},\"listInboxAction\":{\"scope\":\"collection\",\"method\":\"GET\",\"path\":\"inbox\"},\"getContributionTypesAction\":{\"scope\":\"collection\",\"method\":\"GET\",\"path\":\"types\"}}},\"mcp\":false,\"cli\":false,\"tableName\":\"content_contributions\"},\"extends\":\"SmrtCollection\",\"extendsTypeArg\":\"ContentContribution\",\"exportName\":\"ContentContributions\",\"collectionExportName\":\"ContentContributionsCollection\",\"schema\":{\"tableName\":\"content_contributions\",\"ddl\":\"CREATE TABLE IF NOT EXISTS \\\"content_contributions\\\" (\\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\":\"content_contributions_slug_context_idx\",\"columns\":[\"slug\",\"context\"],\"unique\":true},{\"name\":\"content_contributions_created_at_idx\",\"columns\":[\"created_at\"]}],\"version\":\"641c0cc8\"}},\"@happyvertical/smrt-content:ContentContributor\":{\"name\":\"contentcontributor\",\"className\":\"ContentContributor\",\"qualifiedName\":\"@happyvertical/smrt-content:ContentContributor\",\"collection\":\"contentcontributors\",\"filePath\":\"/home/runner/work/smrt/smrt/packages/content/src/content-contributor.ts\",\"packageName\":\"@happyvertical/smrt-content\",\"fields\":{\"profileId\":{\"type\":\"crossPackageRef\",\"required\":false,\"related\":\"@happyvertical/smrt-profiles:Profile\"},\"email\":{\"type\":\"text\",\"required\":true,\"_meta\":{\"required\":true}},\"name\":{\"type\":\"text\",\"required\":false},\"trustLevel\":{\"type\":\"text\",\"required\":false,\"default\":\"standard\"},\"metadata\":{\"type\":\"text\",\"required\":false},\"tenantId\":{\"type\":\"text\",\"required\":false,\"_meta\":{\"sqlType\":\"UUID\",\"nullable\":true,\"__tenancy\":{\"isTenantIdField\":true,\"autoFilter\":true,\"required\":false,\"autoPopulate\":true,\"nullable\":true,\"mode\":\"optional\",\"field\":\"tenantId\",\"allowSuperAdminBypass\":false}}},\"createdAt\":{\"type\":\"text\",\"required\":false},\"updatedAt\":{\"type\":\"text\",\"required\":false}},\"methods\":{\"getMetadata\":{\"name\":\"getMetadata\",\"async\":false,\"parameters\":[],\"returnType\":\"Record<string>\",\"isStatic\":false,\"isPublic\":true},\"setMetadata\":{\"name\":\"setMetadata\",\"async\":false,\"parameters\":[{\"name\":\"metadata\",\"type\":\"Record<string>\",\"optional\":false}],\"returnType\":\"void\",\"isStatic\":false,\"isPublic\":true}},\"decoratorConfig\":{\"tableName\":\"content_contributors\",\"conflictColumns\":[\"email\"],\"api\":{\"include\":[\"list\",\"get\",\"create\",\"update\",\"delete\"]},\"mcp\":{\"include\":[\"list\",\"get\",\"create\",\"update\",\"delete\"]},\"cli\":true,\"tenantScoped\":{\"mode\":\"optional\"}},\"extends\":\"SmrtObject\",\"exportName\":\"ContentContributor\",\"collectionExportName\":\"ContentContributorCollection\",\"validationRules\":[{\"field\":\"email\",\"rule\":\"required\",\"fieldType\":\"text\"}],\"schema\":{\"tableName\":\"content_contributors\",\"ddl\":\"CREATE TABLE IF NOT EXISTS \\\"content_contributors\\\" (\\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 \\\"profile_id\\\" UUID,\\n \\\"email\\\" TEXT NOT NULL,\\n \\\"name\\\" TEXT,\\n \\\"trust_level\\\" TEXT DEFAULT 'standard',\\n \\\"metadata\\\" TEXT,\\n \\\"tenant_id\\\" UUID\\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\"},\"profile_id\":{\"type\":\"UUID\",\"referenceKind\":\"crossPackageRef\",\"notNull\":false,\"unique\":false},\"email\":{\"type\":\"TEXT\",\"notNull\":true,\"unique\":false},\"name\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"trust_level\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"standard\"},\"metadata\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"tenant_id\":{\"type\":\"UUID\",\"referenceKind\":\"tenantId\",\"notNull\":false,\"unique\":false}},\"indexes\":[{\"name\":\"content_contributors_email_idx\",\"columns\":[\"email\"],\"unique\":true},{\"name\":\"content_contributors_slug_context_idx\",\"columns\":[\"slug\",\"context\"]},{\"name\":\"content_contributors_tenant_id_created_at_idx\",\"columns\":[\"tenant_id\",\"created_at\"]},{\"name\":\"content_contributors_profile_id_idx\",\"columns\":[\"profile_id\"]}],\"version\":\"7eb9c661\"}},\"@happyvertical/smrt-content:ContentContributorCollection\":{\"name\":\"contentcontributorcollection\",\"className\":\"ContentContributorCollection\",\"qualifiedName\":\"@happyvertical/smrt-content:ContentContributorCollection\",\"collection\":\"contentcontributors\",\"filePath\":\"/home/runner/work/smrt/smrt/packages/content/src/content-contributors.ts\",\"packageName\":\"@happyvertical/smrt-content\",\"fields\":{},\"methods\":{\"getByEmail\":{\"name\":\"getByEmail\",\"async\":true,\"parameters\":[{\"name\":\"email\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"Promise<ContentContributor | null>\",\"isStatic\":false,\"isPublic\":true},\"getByProfileId\":{\"name\":\"getByProfileId\",\"async\":true,\"parameters\":[{\"name\":\"profileId\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"Promise<ContentContributor | null>\",\"isStatic\":false,\"isPublic\":true},\"findOrCreateByEmail\":{\"name\":\"findOrCreateByEmail\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":false}],\"returnType\":\"Promise<ContentContributor>\",\"isStatic\":false,\"isPublic\":true}},\"decoratorConfig\":{\"tableName\":\"content_contributors\"},\"extends\":\"SmrtCollection\",\"extendsTypeArg\":\"ContentContributor\",\"exportName\":\"ContentContributorCollection\",\"collectionExportName\":\"ContentContributorCollectionCollection\",\"schema\":{\"tableName\":\"content_contributors\",\"ddl\":\"CREATE TABLE IF NOT EXISTS \\\"content_contributors\\\" (\\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\":\"content_contributors_slug_context_idx\",\"columns\":[\"slug\",\"context\"],\"unique\":true},{\"name\":\"content_contributors_created_at_idx\",\"columns\":[\"created_at\"]}],\"version\":\"b457e60b\"}},\"@happyvertical/smrt-content:ContentCorrection\":{\"name\":\"contentcorrection\",\"className\":\"ContentCorrection\",\"qualifiedName\":\"@happyvertical/smrt-content:ContentCorrection\",\"collection\":\"contentcorrections\",\"filePath\":\"/home/runner/work/smrt/smrt/packages/content/src/content-correction.ts\",\"packageName\":\"@happyvertical/smrt-content\",\"fields\":{\"contentId\":{\"type\":\"foreignKey\",\"required\":true,\"related\":\"Content\",\"_meta\":{\"required\":true}},\"contentVersionId\":{\"type\":\"foreignKey\",\"required\":false,\"related\":\"ContentVersion\"},\"factId\":{\"type\":\"crossPackageRef\",\"required\":false,\"related\":\"@happyvertical/smrt-facts:Fact\"},\"replacementFactId\":{\"type\":\"crossPackageRef\",\"required\":false,\"related\":\"@happyvertical/smrt-facts:Fact\"},\"correctionType\":{\"type\":\"text\",\"required\":false,\"default\":\"fact\"},\"status\":{\"type\":\"text\",\"required\":false,\"default\":\"draft\"},\"summary\":{\"type\":\"text\",\"required\":false},\"incorrectText\":{\"type\":\"text\",\"required\":false},\"correctedText\":{\"type\":\"text\",\"required\":false},\"publicNote\":{\"type\":\"text\",\"required\":false},\"metadata\":{\"type\":\"text\",\"required\":false},\"tenantId\":{\"type\":\"text\",\"required\":false,\"_meta\":{\"sqlType\":\"UUID\",\"nullable\":true,\"__tenancy\":{\"isTenantIdField\":true,\"autoFilter\":true,\"required\":false,\"autoPopulate\":true,\"nullable\":true,\"mode\":\"optional\",\"field\":\"tenantId\",\"allowSuperAdminBypass\":false}}},\"publishedAt\":{\"type\":\"datetime\",\"required\":false},\"createdAt\":{\"type\":\"text\",\"required\":false},\"updatedAt\":{\"type\":\"text\",\"required\":false}},\"methods\":{\"getMetadata\":{\"name\":\"getMetadata\",\"async\":false,\"parameters\":[],\"returnType\":\"Record<string>\",\"isStatic\":false,\"isPublic\":true}},\"decoratorConfig\":{\"tableName\":\"content_corrections\",\"api\":{\"include\":[\"list\",\"get\",\"create\",\"update\"]},\"mcp\":{\"include\":[\"list\",\"get\",\"create\",\"update\"]},\"cli\":true,\"tenantScoped\":{\"mode\":\"optional\"},\"conflictColumns\":[\"tenant_id\",\"slug\",\"context\"]},\"extends\":\"SmrtObject\",\"exportName\":\"ContentCorrection\",\"collectionExportName\":\"ContentCorrectionCollection\",\"validationRules\":[{\"field\":\"contentId\",\"rule\":\"required\",\"fieldType\":\"foreignKey\"}],\"schema\":{\"tableName\":\"content_corrections\",\"ddl\":\"CREATE TABLE IF NOT EXISTS \\\"content_corrections\\\" (\\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 \\\"content_id\\\" UUID NOT NULL,\\n \\\"content_version_id\\\" UUID,\\n \\\"fact_id\\\" UUID,\\n \\\"replacement_fact_id\\\" UUID,\\n \\\"correction_type\\\" TEXT DEFAULT 'fact',\\n \\\"status\\\" TEXT DEFAULT 'draft',\\n \\\"summary\\\" TEXT,\\n \\\"incorrect_text\\\" TEXT,\\n \\\"corrected_text\\\" TEXT,\\n \\\"public_note\\\" TEXT,\\n \\\"metadata\\\" TEXT,\\n \\\"tenant_id\\\" UUID,\\n \\\"published_at\\\" 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\"},\"content_id\":{\"type\":\"UUID\",\"referenceKind\":\"foreignKey\",\"notNull\":true,\"unique\":false,\"foreignKey\":{\"table\":\"contents\",\"column\":\"id\",\"onDelete\":\"NO ACTION\",\"onUpdate\":\"CASCADE\"}},\"content_version_id\":{\"type\":\"UUID\",\"referenceKind\":\"foreignKey\",\"notNull\":false,\"unique\":false,\"foreignKey\":{\"table\":\"content_versions\",\"column\":\"id\",\"onDelete\":\"NO ACTION\",\"onUpdate\":\"CASCADE\"}},\"fact_id\":{\"type\":\"UUID\",\"referenceKind\":\"crossPackageRef\",\"notNull\":false,\"unique\":false},\"replacement_fact_id\":{\"type\":\"UUID\",\"referenceKind\":\"crossPackageRef\",\"notNull\":false,\"unique\":false},\"correction_type\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"fact\"},\"status\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"draft\"},\"summary\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"incorrect_text\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"corrected_text\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"public_note\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"metadata\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"tenant_id\":{\"type\":\"UUID\",\"referenceKind\":\"tenantId\",\"notNull\":false,\"unique\":false},\"published_at\":{\"type\":\"TIMESTAMP\",\"notNull\":false,\"unique\":false}},\"indexes\":[{\"name\":\"content_corrections_slug_context_idx\",\"columns\":[\"tenant_id\",\"slug\",\"context\"],\"unique\":true},{\"name\":\"content_corrections_tenant_id_created_at_idx\",\"columns\":[\"tenant_id\",\"created_at\"]},{\"name\":\"content_corrections_content_id_idx\",\"columns\":[\"content_id\"]},{\"name\":\"content_corrections_content_version_id_idx\",\"columns\":[\"content_version_id\"]},{\"name\":\"content_corrections_fact_id_idx\",\"columns\":[\"fact_id\"]},{\"name\":\"content_corrections_replacement_fact_id_idx\",\"columns\":[\"replacement_fact_id\"]}],\"version\":\"bf2808c7\"}},\"@happyvertical/smrt-content:ContentCorrectionCollection\":{\"name\":\"contentcorrectioncollection\",\"className\":\"ContentCorrectionCollection\",\"qualifiedName\":\"@happyvertical/smrt-content:ContentCorrectionCollection\",\"collection\":\"contentcorrections\",\"filePath\":\"/home/runner/work/smrt/smrt/packages/content/src/content-corrections.ts\",\"packageName\":\"@happyvertical/smrt-content\",\"fields\":{},\"methods\":{\"listForContent\":{\"name\":\"listForContent\",\"async\":true,\"parameters\":[{\"name\":\"contentId\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"Promise<ContentCorrection[]>\",\"isStatic\":false,\"isPublic\":true},\"getPublishedForContent\":{\"name\":\"getPublishedForContent\",\"async\":true,\"parameters\":[{\"name\":\"contentId\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"Promise<ContentCorrection[]>\",\"isStatic\":false,\"isPublic\":true},\"issue\":{\"name\":\"issue\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"any\",\"optional\":false}],\"returnType\":\"Promise<ContentCorrection>\",\"isStatic\":false,\"isPublic\":true}},\"decoratorConfig\":{\"tableName\":\"content_corrections\"},\"extends\":\"SmrtCollection\",\"extendsTypeArg\":\"ContentCorrection\",\"exportName\":\"ContentCorrectionCollection\",\"collectionExportName\":\"ContentCorrectionCollectionCollection\",\"schema\":{\"tableName\":\"content_corrections\",\"ddl\":\"CREATE TABLE IF NOT EXISTS \\\"content_corrections\\\" (\\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\":\"content_corrections_slug_context_idx\",\"columns\":[\"slug\",\"context\"],\"unique\":true},{\"name\":\"content_corrections_created_at_idx\",\"columns\":[\"created_at\"]}],\"version\":\"6ebe142d\"}},\"@happyvertical/smrt-content:ContentFeedSource\":{\"name\":\"contentfeedsource\",\"className\":\"ContentFeedSource\",\"qualifiedName\":\"@happyvertical/smrt-content:ContentFeedSource\",\"collection\":\"contentfeedsources\",\"filePath\":\"/home/runner/work/smrt/smrt/packages/content/src/content-feed-source.ts\",\"packageName\":\"@happyvertical/smrt-content\",\"fields\":{\"tenantId\":{\"type\":\"text\",\"required\":false,\"_meta\":{\"sqlType\":\"UUID\",\"nullable\":true,\"__tenancy\":{\"isTenantIdField\":true,\"autoFilter\":true,\"required\":false,\"autoPopulate\":true,\"nullable\":true,\"mode\":\"optional\",\"field\":\"tenantId\",\"allowSuperAdminBypass\":false}}},\"name\":{\"type\":\"text\",\"required\":true,\"_meta\":{\"required\":true}},\"feedUrl\":{\"type\":\"text\",\"required\":true,\"_meta\":{\"required\":true}},\"homepageUrl\":{\"type\":\"text\",\"required\":false},\"format\":{\"type\":\"text\",\"required\":false},\"status\":{\"type\":\"text\",\"required\":true,\"default\":\"active\",\"_meta\":{\"required\":true,\"default\":\"active\"}},\"defaultCategory\":{\"type\":\"text\",\"required\":false},\"sourceGroup\":{\"type\":\"text\",\"required\":false},\"pollIntervalMinutes\":{\"type\":\"integer\",\"required\":true,\"default\":15},\"etag\":{\"type\":\"text\",\"required\":false},\"lastModified\":{\"type\":\"text\",\"required\":false},\"lastFetchedAt\":{\"type\":\"datetime\",\"required\":false},\"lastSuccessAt\":{\"type\":\"datetime\",\"required\":false},\"lastError\":{\"type\":\"text\",\"required\":false},\"metadata\":{\"type\":\"json\",\"required\":false,\"default\":{}},\"createdAt\":{\"type\":\"text\",\"required\":false},\"updatedAt\":{\"type\":\"text\",\"required\":false}},\"methods\":{\"getMetadata\":{\"name\":\"getMetadata\",\"async\":false,\"parameters\":[],\"returnType\":\"Record<string>\",\"isStatic\":false,\"isPublic\":true},\"setMetadata\":{\"name\":\"setMetadata\",\"async\":false,\"parameters\":[{\"name\":\"metadata\",\"type\":\"Record<string>\",\"optional\":false}],\"returnType\":\"void\",\"isStatic\":false,\"isPublic\":true},\"markFetchStarted\":{\"name\":\"markFetchStarted\",\"async\":false,\"parameters\":[{\"name\":\"at\",\"type\":\"any\",\"optional\":true}],\"returnType\":\"void\",\"isStatic\":false,\"isPublic\":true},\"markFetchSucceeded\":{\"name\":\"markFetchSucceeded\",\"async\":false,\"parameters\":[{\"name\":\"at\",\"type\":\"any\",\"optional\":true},{\"name\":\"headers\",\"type\":\"object\",\"optional\":true}],\"returnType\":\"void\",\"isStatic\":false,\"isPublic\":true},\"markFetchFailed\":{\"name\":\"markFetchFailed\",\"async\":false,\"parameters\":[{\"name\":\"error\",\"type\":\"any\",\"optional\":false},{\"name\":\"at\",\"type\":\"any\",\"optional\":true}],\"returnType\":\"void\",\"isStatic\":false,\"isPublic\":true}},\"decoratorConfig\":{\"tableName\":\"content_feed_sources\",\"conflictColumns\":[\"tenant_id\",\"feed_url\"],\"api\":{\"include\":[\"list\",\"get\",\"create\",\"update\",\"delete\"]},\"mcp\":{\"include\":[\"list\",\"get\",\"create\",\"update\",\"delete\"]},\"cli\":true,\"tenantScoped\":{\"mode\":\"optional\"}},\"extends\":\"SmrtObject\",\"exportName\":\"ContentFeedSource\",\"collectionExportName\":\"ContentFeedSourceCollection\",\"validationRules\":[{\"field\":\"name\",\"rule\":\"required\",\"fieldType\":\"text\"},{\"field\":\"feedUrl\",\"rule\":\"required\",\"fieldType\":\"text\"},{\"field\":\"status\",\"rule\":\"required\",\"fieldType\":\"text\"},{\"field\":\"pollIntervalMinutes\",\"rule\":\"required\",\"fieldType\":\"integer\"}],\"schema\":{\"tableName\":\"content_feed_sources\",\"ddl\":\"CREATE TABLE IF NOT EXISTS \\\"content_feed_sources\\\" (\\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,\\n \\\"name\\\" TEXT NOT NULL,\\n \\\"feed_url\\\" TEXT NOT NULL,\\n \\\"homepage_url\\\" TEXT,\\n \\\"format\\\" TEXT,\\n \\\"status\\\" TEXT NOT NULL DEFAULT 'active',\\n \\\"default_category\\\" TEXT,\\n \\\"source_group\\\" TEXT,\\n \\\"poll_interval_minutes\\\" INTEGER NOT NULL DEFAULT 15,\\n \\\"etag\\\" TEXT,\\n \\\"last_modified\\\" TEXT,\\n \\\"last_fetched_at\\\" TIMESTAMP,\\n \\\"last_success_at\\\" TIMESTAMP,\\n \\\"last_error\\\" TEXT,\\n \\\"metadata\\\" JSON 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\":false,\"unique\":false},\"name\":{\"type\":\"TEXT\",\"notNull\":true,\"unique\":false},\"feed_url\":{\"type\":\"TEXT\",\"notNull\":true,\"unique\":false},\"homepage_url\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"format\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"status\":{\"type\":\"TEXT\",\"notNull\":true,\"unique\":false,\"default\":\"active\"},\"default_category\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"source_group\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"poll_interval_minutes\":{\"type\":\"INTEGER\",\"notNull\":true,\"unique\":false,\"default\":15},\"etag\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"last_modified\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"last_fetched_at\":{\"type\":\"TIMESTAMP\",\"notNull\":false,\"unique\":false},\"last_success_at\":{\"type\":\"TIMESTAMP\",\"notNull\":false,\"unique\":false},\"last_error\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"metadata\":{\"type\":\"JSON\",\"notNull\":false,\"unique\":false,\"default\":{}}},\"indexes\":[{\"name\":\"content_feed_sources_tenant_id_feed_url_idx\",\"columns\":[\"tenant_id\",\"feed_url\"],\"unique\":true},{\"name\":\"content_feed_sources_slug_context_idx\",\"columns\":[\"slug\",\"context\"]},{\"name\":\"content_feed_sources_tenant_id_created_at_idx\",\"columns\":[\"tenant_id\",\"created_at\"]}],\"version\":\"bbcb36e5\"}},\"@happyvertical/smrt-content:ContentFeedSourceCollection\":{\"name\":\"contentfeedsourcecollection\",\"className\":\"ContentFeedSourceCollection\",\"qualifiedName\":\"@happyvertical/smrt-content:ContentFeedSourceCollection\",\"collection\":\"contentfeedsources\",\"filePath\":\"/home/runner/work/smrt/smrt/packages/content/src/content-feed-sources.ts\",\"packageName\":\"@happyvertical/smrt-content\",\"fields\":{},\"methods\":{\"findActive\":{\"name\":\"findActive\",\"async\":true,\"parameters\":[{\"name\":\"tenantId\",\"type\":\"string | null\",\"optional\":true}],\"returnType\":\"Promise<ContentFeedSource[]>\",\"isStatic\":false,\"isPublic\":true},\"findByStatus\":{\"name\":\"findByStatus\",\"async\":true,\"parameters\":[{\"name\":\"status\",\"type\":\"ContentFeedSourceStatus\",\"optional\":false},{\"name\":\"tenantId\",\"type\":\"string | null\",\"optional\":true}],\"returnType\":\"Promise<ContentFeedSource[]>\",\"isStatic\":false,\"isPublic\":true},\"findByFeedUrl\":{\"name\":\"findByFeedUrl\",\"async\":true,\"parameters\":[{\"name\":\"feedUrl\",\"type\":\"string\",\"optional\":false},{\"name\":\"tenantId\",\"type\":\"string | null\",\"optional\":true}],\"returnType\":\"Promise<ContentFeedSource | null>\",\"isStatic\":false,\"isPublic\":true}},\"decoratorConfig\":{\"tableName\":\"content_feed_sources\"},\"extends\":\"SmrtCollection\",\"extendsTypeArg\":\"ContentFeedSource\",\"exportName\":\"ContentFeedSourceCollection\",\"collectionExportName\":\"ContentFeedSourceCollectionCollection\",\"schema\":{\"tableName\":\"content_feed_sources\",\"ddl\":\"CREATE TABLE IF NOT EXISTS \\\"content_feed_sources\\\" (\\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\":\"content_feed_sources_slug_context_idx\",\"columns\":[\"slug\",\"context\"],\"unique\":true},{\"name\":\"content_feed_sources_created_at_idx\",\"columns\":[\"created_at\"]}],\"version\":\"bb0cca9e\"}},\"@happyvertical/smrt-content:ContentGovernanceAssignment\":{\"name\":\"contentgovernanceassignment\",\"className\":\"ContentGovernanceAssignment\",\"qualifiedName\":\"@happyvertical/smrt-content:ContentGovernanceAssignment\",\"collection\":\"contentgovernanceassignments\",\"filePath\":\"/home/runner/work/smrt/smrt/packages/content/src/content-governance-assignment.ts\",\"packageName\":\"@happyvertical/smrt-content\",\"fields\":{\"key\":{\"type\":\"text\",\"required\":true,\"_meta\":{\"required\":true}},\"label\":{\"type\":\"text\",\"required\":false},\"contentType\":{\"type\":\"text\",\"required\":true,\"_meta\":{\"required\":true}},\"contentVariant\":{\"type\":\"text\",\"required\":false},\"enabled\":{\"type\":\"boolean\",\"required\":true,\"default\":true},\"factLinkingEnabled\":{\"type\":\"boolean\",\"required\":true,\"default\":false},\"transparencyEnabled\":{\"type\":\"boolean\",\"required\":true,\"default\":false},\"publicationProfileKey\":{\"type\":\"text\",\"required\":false},\"correctionProfileKey\":{\"type\":\"text\",\"required\":false},\"enforcePublishReadiness\":{\"type\":\"boolean\",\"required\":true,\"default\":false},\"defaultFactRelationship\":{\"type\":\"text\",\"required\":false,\"default\":\"supports\"},\"metadata\":{\"type\":\"text\",\"required\":false},\"tenantId\":{\"type\":\"text\",\"required\":false,\"_meta\":{\"sqlType\":\"UUID\",\"nullable\":true,\"__tenancy\":{\"isTenantIdField\":true,\"autoFilter\":true,\"required\":false,\"autoPopulate\":true,\"nullable\":true,\"mode\":\"optional\",\"field\":\"tenantId\",\"allowSuperAdminBypass\":false}}},\"createdAt\":{\"type\":\"text\",\"required\":false},\"updatedAt\":{\"type\":\"text\",\"required\":false}},\"methods\":{\"getMetadata\":{\"name\":\"getMetadata\",\"async\":false,\"parameters\":[],\"returnType\":\"Record<string>\",\"isStatic\":false,\"isPublic\":true},\"toDefinition\":{\"name\":\"toDefinition\",\"async\":false,\"parameters\":[],\"returnType\":\"ContentGovernanceAssignmentDefinition\",\"isStatic\":false,\"isPublic\":true}},\"decoratorConfig\":{\"tableName\":\"content_governance_assignments\",\"conflictColumns\":[\"key\"],\"api\":{\"include\":[\"list\",\"get\",\"create\",\"update\",\"delete\"]},\"mcp\":{\"include\":[\"list\",\"get\",\"create\",\"update\",\"delete\"]},\"cli\":true,\"tenantScoped\":{\"mode\":\"optional\"}},\"extends\":\"SmrtObject\",\"exportName\":\"ContentGovernanceAssignment\",\"collectionExportName\":\"ContentGovernanceAssignmentCollection\",\"validationRules\":[{\"field\":\"key\",\"rule\":\"required\",\"fieldType\":\"text\"},{\"field\":\"contentType\",\"rule\":\"required\",\"fieldType\":\"text\"},{\"field\":\"enabled\",\"rule\":\"required\",\"fieldType\":\"boolean\"},{\"field\":\"factLinkingEnabled\",\"rule\":\"required\",\"fieldType\":\"boolean\"},{\"field\":\"transparencyEnabled\",\"rule\":\"required\",\"fieldType\":\"boolean\"},{\"field\":\"enforcePublishReadiness\",\"rule\":\"required\",\"fieldType\":\"boolean\"}],\"schema\":{\"tableName\":\"content_governance_assignments\",\"ddl\":\"CREATE TABLE IF NOT EXISTS \\\"content_governance_assignments\\\" (\\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 \\\"key\\\" TEXT NOT NULL,\\n \\\"label\\\" TEXT,\\n \\\"content_type\\\" TEXT NOT NULL,\\n \\\"content_variant\\\" TEXT,\\n \\\"enabled\\\" BOOLEAN NOT NULL DEFAULT TRUE,\\n \\\"fact_linking_enabled\\\" BOOLEAN NOT NULL DEFAULT FALSE,\\n \\\"transparency_enabled\\\" BOOLEAN NOT NULL DEFAULT FALSE,\\n \\\"publication_profile_key\\\" TEXT,\\n \\\"correction_profile_key\\\" TEXT,\\n \\\"enforce_publish_readiness\\\" BOOLEAN NOT NULL DEFAULT FALSE,\\n \\\"default_fact_relationship\\\" TEXT DEFAULT 'supports',\\n \\\"metadata\\\" TEXT,\\n \\\"tenant_id\\\" UUID\\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\"},\"key\":{\"type\":\"TEXT\",\"notNull\":true,\"unique\":false},\"label\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"content_type\":{\"type\":\"TEXT\",\"notNull\":true,\"unique\":false},\"content_variant\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"enabled\":{\"type\":\"BOOLEAN\",\"notNull\":true,\"unique\":false,\"default\":true},\"fact_linking_enabled\":{\"type\":\"BOOLEAN\",\"notNull\":true,\"unique\":false,\"default\":false},\"transparency_enabled\":{\"type\":\"BOOLEAN\",\"notNull\":true,\"unique\":false,\"default\":false},\"publication_profile_key\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"correction_profile_key\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"enforce_publish_readiness\":{\"type\":\"BOOLEAN\",\"notNull\":true,\"unique\":false,\"default\":false},\"default_fact_relationship\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"supports\"},\"metadata\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"tenant_id\":{\"type\":\"UUID\",\"referenceKind\":\"tenantId\",\"notNull\":false,\"unique\":false}},\"indexes\":[{\"name\":\"content_governance_assignments_key_idx\",\"columns\":[\"key\"],\"unique\":true},{\"name\":\"content_governance_assignments_slug_context_idx\",\"columns\":[\"slug\",\"context\"]},{\"name\":\"content_governance_assignments_tenant_id_created_at_idx\",\"columns\":[\"tenant_id\",\"created_at\"]}],\"version\":\"00a2c610\"}},\"@happyvertical/smrt-content:ContentGovernanceAssignmentCollection\":{\"name\":\"contentgovernanceassignmentcollection\",\"className\":\"ContentGovernanceAssignmentCollection\",\"qualifiedName\":\"@happyvertical/smrt-content:ContentGovernanceAssignmentCollection\",\"collection\":\"contentgovernanceassignments\",\"filePath\":\"/home/runner/work/smrt/smrt/packages/content/src/content-governance-assignments.ts\",\"packageName\":\"@happyvertical/smrt-content\",\"fields\":{},\"methods\":{\"getByKey\":{\"name\":\"getByKey\",\"async\":true,\"parameters\":[{\"name\":\"key\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"Promise<ContentGovernanceAssignment | null>\",\"isStatic\":false,\"isPublic\":true},\"resolveForContent\":{\"name\":\"resolveForContent\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":false}],\"returnType\":\"Promise<ContentGovernanceAssignment | null>\",\"isStatic\":false,\"isPublic\":true}},\"decoratorConfig\":{\"tableName\":\"content_governance_assignments\"},\"extends\":\"SmrtCollection\",\"extendsTypeArg\":\"ContentGovernanceAssignment\",\"exportName\":\"ContentGovernanceAssignmentCollection\",\"collectionExportName\":\"ContentGovernanceAssignmentCollectionCollection\",\"schema\":{\"tableName\":\"content_governance_assignments\",\"ddl\":\"CREATE TABLE IF NOT EXISTS \\\"content_governance_assignments\\\" (\\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\":\"content_governance_assignments_slug_context_idx\",\"columns\":[\"slug\",\"context\"],\"unique\":true},{\"name\":\"content_governance_assignments_created_at_idx\",\"columns\":[\"created_at\"]}],\"version\":\"21471529\"}},\"@happyvertical/smrt-content:ContentGovernancePolicyCollection\":{\"name\":\"contentgovernancepolicycollection\",\"className\":\"ContentGovernancePolicyCollection\",\"qualifiedName\":\"@happyvertical/smrt-content:ContentGovernancePolicyCollection\",\"collection\":\"contentgovernancepolicies\",\"filePath\":\"/home/runner/work/smrt/smrt/packages/content/src/content-governance-policies.ts\",\"packageName\":\"@happyvertical/smrt-content\",\"fields\":{},\"methods\":{\"getByKey\":{\"name\":\"getByKey\",\"async\":true,\"parameters\":[{\"name\":\"key\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"Promise<ContentGovernancePolicy | null>\",\"isStatic\":false,\"isPublic\":true}},\"decoratorConfig\":{\"tableName\":\"content_governance_policies\"},\"extends\":\"SmrtCollection\",\"extendsTypeArg\":\"ContentGovernancePolicy\",\"exportName\":\"ContentGovernancePolicyCollection\",\"collectionExportName\":\"ContentGovernancePolicyCollectionCollection\",\"schema\":{\"tableName\":\"content_governance_policies\",\"ddl\":\"CREATE TABLE IF NOT EXISTS \\\"content_governance_policies\\\" (\\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\":\"content_governance_policies_slug_context_idx\",\"columns\":[\"slug\",\"context\"],\"unique\":true},{\"name\":\"content_governance_policies_created_at_idx\",\"columns\":[\"created_at\"]}],\"version\":\"e2da0e5b\"}},\"@happyvertical/smrt-content:ContentGovernancePolicy\":{\"name\":\"contentgovernancepolicy\",\"className\":\"ContentGovernancePolicy\",\"qualifiedName\":\"@happyvertical/smrt-content:ContentGovernancePolicy\",\"collection\":\"contentgovernancepolicies\",\"filePath\":\"/home/runner/work/smrt/smrt/packages/content/src/content-governance-policy.ts\",\"packageName\":\"@happyvertical/smrt-content\",\"fields\":{\"key\":{\"type\":\"text\",\"required\":true,\"_meta\":{\"required\":true}},\"label\":{\"type\":\"text\",\"required\":false},\"kind\":{\"type\":\"text\",\"required\":false,\"default\":\"custom\"},\"instructions\":{\"type\":\"text\",\"required\":false},\"enabled\":{\"type\":\"boolean\",\"required\":true,\"default\":true},\"metadata\":{\"type\":\"text\",\"required\":false},\"tenantId\":{\"type\":\"text\",\"required\":false,\"_meta\":{\"sqlType\":\"UUID\",\"nullable\":true,\"__tenancy\":{\"isTenantIdField\":true,\"autoFilter\":true,\"required\":false,\"autoPopulate\":true,\"nullable\":true,\"mode\":\"optional\",\"field\":\"tenantId\",\"allowSuperAdminBypass\":false}}},\"createdAt\":{\"type\":\"text\",\"required\":false},\"updatedAt\":{\"type\":\"text\",\"required\":false}},\"methods\":{\"getMetadata\":{\"name\":\"getMetadata\",\"async\":false,\"parameters\":[],\"returnType\":\"Record<string>\",\"isStatic\":false,\"isPublic\":true},\"toDefinition\":{\"name\":\"toDefinition\",\"async\":false,\"parameters\":[],\"returnType\":\"ContentReviewPolicyDefinition\",\"isStatic\":false,\"isPublic\":true},\"delete\":{\"name\":\"delete\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<void>\",\"isStatic\":false,\"isPublic\":true}},\"decoratorConfig\":{\"tableName\":\"content_governance_policies\",\"conflictColumns\":[\"key\"],\"api\":{\"include\":[\"list\",\"get\",\"create\",\"update\",\"delete\"]},\"mcp\":{\"include\":[\"list\",\"get\",\"create\",\"update\",\"delete\"]},\"cli\":true,\"tenantScoped\":{\"mode\":\"optional\"}},\"extends\":\"SmrtObject\",\"exportName\":\"ContentGovernancePolicy\",\"collectionExportName\":\"ContentGovernancePolicyCollection\",\"validationRules\":[{\"field\":\"key\",\"rule\":\"required\",\"fieldType\":\"text\"},{\"field\":\"enabled\",\"rule\":\"required\",\"fieldType\":\"boolean\"}],\"schema\":{\"tableName\":\"content_governance_policies\",\"ddl\":\"CREATE TABLE IF NOT EXISTS \\\"content_governance_policies\\\" (\\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 \\\"key\\\" TEXT NOT NULL,\\n \\\"label\\\" TEXT,\\n \\\"kind\\\" TEXT DEFAULT 'custom',\\n \\\"instructions\\\" TEXT,\\n \\\"enabled\\\" BOOLEAN NOT NULL DEFAULT TRUE,\\n \\\"metadata\\\" TEXT,\\n \\\"tenant_id\\\" UUID\\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\"},\"key\":{\"type\":\"TEXT\",\"notNull\":true,\"unique\":false},\"label\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"kind\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"custom\"},\"instructions\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"enabled\":{\"type\":\"BOOLEAN\",\"notNull\":true,\"unique\":false,\"default\":true},\"metadata\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"tenant_id\":{\"type\":\"UUID\",\"referenceKind\":\"tenantId\",\"notNull\":false,\"unique\":false}},\"indexes\":[{\"name\":\"content_governance_policies_key_idx\",\"columns\":[\"key\"],\"unique\":true},{\"name\":\"content_governance_policies_slug_context_idx\",\"columns\":[\"slug\",\"context\"]},{\"name\":\"content_governance_policies_tenant_id_created_at_idx\",\"columns\":[\"tenant_id\",\"created_at\"]}],\"version\":\"3cc24f80\"}},\"@happyvertical/smrt-content:ContentGovernanceProfile\":{\"name\":\"contentgovernanceprofile\",\"className\":\"ContentGovernanceProfile\",\"qualifiedName\":\"@happyvertical/smrt-content:ContentGovernanceProfile\",\"collection\":\"contentgovernanceprofiles\",\"filePath\":\"/home/runner/work/smrt/smrt/packages/content/src/content-governance-profile.ts\",\"packageName\":\"@happyvertical/smrt-content\",\"fields\":{\"key\":{\"type\":\"text\",\"required\":true,\"_meta\":{\"required\":true}},\"label\":{\"type\":\"text\",\"required\":false},\"description\":{\"type\":\"text\",\"required\":false},\"enabled\":{\"type\":\"boolean\",\"required\":true,\"default\":true},\"requirements\":{\"type\":\"text\",\"required\":false},\"metadata\":{\"type\":\"text\",\"required\":false},\"tenantId\":{\"type\":\"text\",\"required\":false,\"_meta\":{\"sqlType\":\"UUID\",\"nullable\":true,\"__tenancy\":{\"isTenantIdField\":true,\"autoFilter\":true,\"required\":false,\"autoPopulate\":true,\"nullable\":true,\"mode\":\"optional\",\"field\":\"tenantId\",\"allowSuperAdminBypass\":false}}},\"createdAt\":{\"type\":\"text\",\"required\":false},\"updatedAt\":{\"type\":\"text\",\"required\":false}},\"methods\":{\"getRequirements\":{\"name\":\"getRequirements\",\"async\":false,\"parameters\":[],\"returnType\":\"ContentReviewRequirement[]\",\"isStatic\":false,\"isPublic\":true},\"getMetadata\":{\"name\":\"getMetadata\",\"async\":false,\"parameters\":[],\"returnType\":\"Record<string>\",\"isStatic\":false,\"isPublic\":true},\"toDefinition\":{\"name\":\"toDefinition\",\"async\":false,\"parameters\":[],\"returnType\":\"ContentGovernanceProfileDefinition\",\"isStatic\":false,\"isPublic\":true},\"delete\":{\"name\":\"delete\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<void>\",\"isStatic\":false,\"isPublic\":true}},\"decoratorConfig\":{\"tableName\":\"content_governance_profiles\",\"conflictColumns\":[\"key\"],\"api\":{\"include\":[\"list\",\"get\",\"create\",\"update\",\"delete\"]},\"mcp\":{\"include\":[\"list\",\"get\",\"create\",\"update\",\"delete\"]},\"cli\":true,\"tenantScoped\":{\"mode\":\"optional\"}},\"extends\":\"SmrtObject\",\"exportName\":\"ContentGovernanceProfile\",\"collectionExportName\":\"ContentGovernanceProfileCollection\",\"validationRules\":[{\"field\":\"key\",\"rule\":\"required\",\"fieldType\":\"text\"},{\"field\":\"enabled\",\"rule\":\"required\",\"fieldType\":\"boolean\"}],\"schema\":{\"tableName\":\"content_governance_profiles\",\"ddl\":\"CREATE TABLE IF NOT EXISTS \\\"content_governance_profiles\\\" (\\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 \\\"key\\\" TEXT NOT NULL,\\n \\\"label\\\" TEXT,\\n \\\"description\\\" TEXT,\\n \\\"enabled\\\" BOOLEAN NOT NULL DEFAULT TRUE,\\n \\\"requirements\\\" TEXT,\\n \\\"metadata\\\" TEXT,\\n \\\"tenant_id\\\" UUID\\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\"},\"key\":{\"type\":\"TEXT\",\"notNull\":true,\"unique\":false},\"label\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"description\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"enabled\":{\"type\":\"BOOLEAN\",\"notNull\":true,\"unique\":false,\"default\":true},\"requirements\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"metadata\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"tenant_id\":{\"type\":\"UUID\",\"referenceKind\":\"tenantId\",\"notNull\":false,\"unique\":false}},\"indexes\":[{\"name\":\"content_governance_profiles_key_idx\",\"columns\":[\"key\"],\"unique\":true},{\"name\":\"content_governance_profiles_slug_context_idx\",\"columns\":[\"slug\",\"context\"]},{\"name\":\"content_governance_profiles_tenant_id_created_at_idx\",\"columns\":[\"tenant_id\",\"created_at\"]}],\"version\":\"4bfc2afc\"}},\"@happyvertical/smrt-content:ContentGovernanceProfileCollection\":{\"name\":\"contentgovernanceprofilecollection\",\"className\":\"ContentGovernanceProfileCollection\",\"qualifiedName\":\"@happyvertical/smrt-content:ContentGovernanceProfileCollection\",\"collection\":\"contentgovernanceprofiles\",\"filePath\":\"/home/runner/work/smrt/smrt/packages/content/src/content-governance-profiles.ts\",\"packageName\":\"@happyvertical/smrt-content\",\"fields\":{},\"methods\":{\"getByKey\":{\"name\":\"getByKey\",\"async\":true,\"parameters\":[{\"name\":\"key\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"Promise<ContentGovernanceProfile | null>\",\"isStatic\":false,\"isPublic\":true}},\"decoratorConfig\":{\"tableName\":\"content_governance_profiles\"},\"extends\":\"SmrtCollection\",\"extendsTypeArg\":\"ContentGovernanceProfile\",\"exportName\":\"ContentGovernanceProfileCollection\",\"collectionExportName\":\"ContentGovernanceProfileCollectionCollection\",\"schema\":{\"tableName\":\"content_governance_profiles\",\"ddl\":\"CREATE TABLE IF NOT EXISTS \\\"content_governance_profiles\\\" (\\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\":\"content_governance_profiles_slug_context_idx\",\"columns\":[\"slug\",\"context\"],\"unique\":true},{\"name\":\"content_governance_profiles_created_at_idx\",\"columns\":[\"created_at\"]}],\"version\":\"496f0f56\"}},\"@happyvertical/smrt-content:ContentReference\":{\"name\":\"contentreference\",\"className\":\"ContentReference\",\"qualifiedName\":\"@happyvertical/smrt-content:ContentReference\",\"collection\":\"contentreferences\",\"filePath\":\"/home/runner/work/smrt/smrt/packages/content/src/content-reference.ts\",\"packageName\":\"@happyvertical/smrt-content\",\"fields\":{\"tenantId\":{\"type\":\"text\",\"required\":false,\"_meta\":{\"sqlType\":\"UUID\",\"nullable\":true,\"__tenancy\":{\"isTenantIdField\":true,\"autoFilter\":true,\"required\":false,\"autoPopulate\":true,\"nullable\":true,\"mode\":\"optional\",\"field\":\"tenantId\",\"allowSuperAdminBypass\":false}}},\"sourceId\":{\"type\":\"foreignKey\",\"required\":true,\"related\":\"Content\",\"_meta\":{\"required\":true}},\"targetId\":{\"type\":\"foreignKey\",\"required\":true,\"related\":\"Content\",\"_meta\":{\"required\":true}},\"targetVersion\":{\"type\":\"integer\",\"required\":false,\"_meta\":{\"nullable\":true}},\"createdAt\":{\"type\":\"text\",\"required\":false}},\"methods\":{},\"decoratorConfig\":{\"tableName\":\"content_references\",\"conflictColumns\":[\"source_id\",\"target_id\"],\"tenantScoped\":{\"mode\":\"optional\"}},\"extends\":\"SmrtObject\",\"exportName\":\"ContentReference\",\"collectionExportName\":\"ContentReferenceCollection\",\"validationRules\":[{\"field\":\"sourceId\",\"rule\":\"required\",\"fieldType\":\"foreignKey\"},{\"field\":\"targetId\",\"rule\":\"required\",\"fieldType\":\"foreignKey\"}],\"schema\":{\"tableName\":\"content_references\",\"ddl\":\"CREATE TABLE IF NOT EXISTS \\\"content_references\\\" (\\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,\\n \\\"source_id\\\" UUID NOT NULL,\\n \\\"target_id\\\" UUID NOT NULL,\\n \\\"target_version\\\" INTEGER\\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\":false,\"unique\":false},\"source_id\":{\"type\":\"UUID\",\"referenceKind\":\"foreignKey\",\"notNull\":true,\"unique\":false,\"foreignKey\":{\"table\":\"contents\",\"column\":\"id\",\"onDelete\":\"CASCADE\",\"onUpdate\":\"CASCADE\"}},\"target_id\":{\"type\":\"UUID\",\"referenceKind\":\"foreignKey\",\"notNull\":true,\"unique\":false,\"foreignKey\":{\"table\":\"contents\",\"column\":\"id\",\"onDelete\":\"CASCADE\",\"onUpdate\":\"CASCADE\"}},\"target_version\":{\"type\":\"INTEGER\",\"notNull\":false,\"unique\":false}},\"indexes\":[{\"name\":\"content_references_source_id_target_id_idx\",\"columns\":[\"source_id\",\"target_id\"],\"unique\":true},{\"name\":\"content_references_slug_context_idx\",\"columns\":[\"slug\",\"context\"]},{\"name\":\"content_references_tenant_id_created_at_idx\",\"columns\":[\"tenant_id\",\"created_at\"]},{\"name\":\"content_references_target_id_idx\",\"columns\":[\"target_id\"]}],\"version\":\"3347ea2a\"}},\"@happyvertical/smrt-content:ContentReferences\":{\"name\":\"contentreferences\",\"className\":\"ContentReferences\",\"qualifiedName\":\"@happyvertical/smrt-content:ContentReferences\",\"collection\":\"contentreferences\",\"filePath\":\"/home/runner/work/smrt/smrt/packages/content/src/content-references.ts\",\"packageName\":\"@happyvertical/smrt-content\",\"fields\":{},\"methods\":{\"byLeft\":{\"name\":\"byLeft\",\"async\":true,\"parameters\":[{\"name\":\"leftId\",\"type\":\"string\",\"optional\":false},{\"name\":\"opts\",\"type\":\"JunctionFilterOptions\",\"optional\":true}],\"returnType\":\"Promise<TItem[]>\",\"isStatic\":false,\"isPublic\":true},\"byRight\":{\"name\":\"byRight\",\"async\":true,\"parameters\":[{\"name\":\"rightId\",\"type\":\"string\",\"optional\":false},{\"name\":\"opts\",\"type\":\"JunctionFilterOptions\",\"optional\":true}],\"returnType\":\"Promise<TItem[]>\",\"isStatic\":false,\"isPublic\":true},\"attach\":{\"name\":\"attach\",\"async\":true,\"parameters\":[{\"name\":\"sourceId\",\"type\":\"string\",\"optional\":false},{\"name\":\"targetId\",\"type\":\"string\",\"optional\":false},{\"name\":\"opts\",\"type\":\"JunctionAttachOptions\",\"optional\":true}],\"returnType\":\"Promise<ContentReference>\",\"isStatic\":false,\"isPublic\":true},\"detach\":{\"name\":\"detach\",\"async\":true,\"parameters\":[{\"name\":\"leftId\",\"type\":\"string\",\"optional\":false},{\"name\":\"rightId\",\"type\":\"string\",\"optional\":false},{\"name\":\"opts\",\"type\":\"JunctionFilterOptions\",\"optional\":true}],\"returnType\":\"Promise<void>\",\"isStatic\":false,\"isPublic\":true},\"setLinks\":{\"name\":\"setLinks\",\"async\":true,\"parameters\":[{\"name\":\"leftId\",\"type\":\"string\",\"optional\":false},{\"name\":\"rightIds\",\"type\":\"string[]\",\"optional\":false},{\"name\":\"opts\",\"type\":\"JunctionAttachOptions\",\"optional\":true}],\"returnType\":\"Promise<void>\",\"isStatic\":false,\"isPublic\":true},\"getForSource\":{\"name\":\"getForSource\",\"async\":true,\"parameters\":[{\"name\":\"sourceId\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"Promise<ContentReference[]>\",\"isStatic\":false,\"isPublic\":true},\"getForTarget\":{\"name\":\"getForTarget\",\"async\":true,\"parameters\":[{\"name\":\"targetId\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"Promise<ContentReference[]>\",\"isStatic\":false,\"isPublic\":true},\"unlink\":{\"name\":\"unlink\",\"async\":true,\"parameters\":[{\"name\":\"sourceId\",\"type\":\"string\",\"optional\":false},{\"name\":\"targetId\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"Promise<void>\",\"isStatic\":false,\"isPublic\":true}},\"decoratorConfig\":{\"tableName\":\"content_references\"},\"extends\":\"SmrtJunction\",\"extendsTypeArg\":\"ContentReference\",\"exportName\":\"ContentReferences\",\"collectionExportName\":\"ContentReferencesCollection\",\"schema\":{\"tableName\":\"content_references\",\"ddl\":\"CREATE TABLE IF NOT EXISTS \\\"content_references\\\" (\\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\":\"content_references_slug_context_idx\",\"columns\":[\"slug\",\"context\"],\"unique\":true},{\"name\":\"content_references_created_at_idx\",\"columns\":[\"created_at\"]}],\"version\":\"e9ad3cf0\"}},\"@happyvertical/smrt-content:ContentReview\":{\"name\":\"contentreview\",\"className\":\"ContentReview\",\"qualifiedName\":\"@happyvertical/smrt-content:ContentReview\",\"collection\":\"contentreviews\",\"filePath\":\"/home/runner/work/smrt/smrt/packages/content/src/content-review.ts\",\"packageName\":\"@happyvertical/smrt-content\",\"fields\":{\"contentId\":{\"type\":\"foreignKey\",\"required\":true,\"related\":\"Content\",\"_meta\":{\"required\":true}},\"contentVersionId\":{\"type\":\"foreignKey\",\"required\":false,\"related\":\"ContentVersion\"},\"kind\":{\"type\":\"text\",\"required\":false,\"default\":\"custom\"},\"policyKey\":{\"type\":\"text\",\"required\":false},\"status\":{\"type\":\"text\",\"required\":false,\"default\":\"pending\"},\"summary\":{\"type\":\"text\",\"required\":false},\"findings\":{\"type\":\"text\",\"required\":false},\"reviewer\":{\"type\":\"text\",\"required\":false},\"metadata\":{\"type\":\"text\",\"required\":false},\"tenantId\":{\"type\":\"text\",\"required\":false,\"_meta\":{\"sqlType\":\"UUID\",\"nullable\":true,\"__tenancy\":{\"isTenantIdField\":true,\"autoFilter\":true,\"required\":false,\"autoPopulate\":true,\"nullable\":true,\"mode\":\"optional\",\"field\":\"tenantId\",\"allowSuperAdminBypass\":false}}},\"createdAt\":{\"type\":\"text\",\"required\":false},\"updatedAt\":{\"type\":\"text\",\"required\":false}},\"methods\":{\"getFindings\":{\"name\":\"getFindings\",\"async\":false,\"parameters\":[],\"returnType\":\"ContentReviewFinding[]\",\"isStatic\":false,\"isPublic\":true},\"getMetadata\":{\"name\":\"getMetadata\",\"async\":false,\"parameters\":[],\"returnType\":\"Record<string>\",\"isStatic\":false,\"isPublic\":true}},\"decoratorConfig\":{\"tableName\":\"content_reviews\",\"api\":{\"include\":[\"list\",\"get\",\"create\",\"update\"]},\"mcp\":{\"include\":[\"list\",\"get\",\"create\",\"update\"]},\"cli\":true,\"tenantScoped\":{\"mode\":\"optional\"},\"conflictColumns\":[\"tenant_id\",\"slug\",\"context\"]},\"extends\":\"SmrtObject\",\"exportName\":\"ContentReview\",\"collectionExportName\":\"ContentReviewCollection\",\"validationRules\":[{\"field\":\"contentId\",\"rule\":\"required\",\"fieldType\":\"foreignKey\"}],\"schema\":{\"tableName\":\"content_reviews\",\"ddl\":\"CREATE TABLE IF NOT EXISTS \\\"content_reviews\\\" (\\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 \\\"content_id\\\" UUID NOT NULL,\\n \\\"content_version_id\\\" UUID,\\n \\\"kind\\\" TEXT DEFAULT 'custom',\\n \\\"policy_key\\\" TEXT,\\n \\\"status\\\" TEXT DEFAULT 'pending',\\n \\\"summary\\\" TEXT,\\n \\\"findings\\\" TEXT,\\n \\\"reviewer\\\" TEXT,\\n \\\"metadata\\\" TEXT,\\n \\\"tenant_id\\\" UUID\\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\"},\"content_id\":{\"type\":\"UUID\",\"referenceKind\":\"foreignKey\",\"notNull\":true,\"unique\":false,\"foreignKey\":{\"table\":\"contents\",\"column\":\"id\",\"onDelete\":\"NO ACTION\",\"onUpdate\":\"CASCADE\"}},\"content_version_id\":{\"type\":\"UUID\",\"referenceKind\":\"foreignKey\",\"notNull\":false,\"unique\":false,\"foreignKey\":{\"table\":\"content_versions\",\"column\":\"id\",\"onDelete\":\"NO ACTION\",\"onUpdate\":\"CASCADE\"}},\"kind\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"custom\"},\"policy_key\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"status\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"pending\"},\"summary\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"findings\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"reviewer\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"metadata\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"tenant_id\":{\"type\":\"UUID\",\"referenceKind\":\"tenantId\",\"notNull\":false,\"unique\":false}},\"indexes\":[{\"name\":\"content_reviews_slug_context_idx\",\"columns\":[\"tenant_id\",\"slug\",\"context\"],\"unique\":true},{\"name\":\"content_reviews_tenant_id_created_at_idx\",\"columns\":[\"tenant_id\",\"created_at\"]},{\"name\":\"content_reviews_content_id_idx\",\"columns\":[\"content_id\"]},{\"name\":\"content_reviews_content_version_id_idx\",\"columns\":[\"content_version_id\"]}],\"version\":\"7b2c0ad7\"}},\"@happyvertical/smrt-content:ContentReviewCollection\":{\"name\":\"contentreviewcollection\",\"className\":\"ContentReviewCollection\",\"qualifiedName\":\"@happyvertical/smrt-content:ContentReviewCollection\",\"collection\":\"contentreviews\",\"filePath\":\"/home/runner/work/smrt/smrt/packages/content/src/content-reviews.ts\",\"packageName\":\"@happyvertical/smrt-content\",\"fields\":{},\"methods\":{\"listForContent\":{\"name\":\"listForContent\",\"async\":true,\"parameters\":[{\"name\":\"contentId\",\"type\":\"string\",\"optional\":false},{\"name\":\"kind\",\"type\":\"ContentReviewKind\",\"optional\":true}],\"returnType\":\"Promise<ContentReview[]>\",\"isStatic\":false,\"isPublic\":true},\"getLatestForContent\":{\"name\":\"getLatestForContent\",\"async\":true,\"parameters\":[{\"name\":\"contentId\",\"type\":\"string\",\"optional\":false},{\"name\":\"kind\",\"type\":\"ContentReviewKind\",\"optional\":true}],\"returnType\":\"Promise<ContentReview | null>\",\"isStatic\":false,\"isPublic\":true},\"listForContentByPolicyKey\":{\"name\":\"listForContentByPolicyKey\",\"async\":true,\"parameters\":[{\"name\":\"contentId\",\"type\":\"string\",\"optional\":false},{\"name\":\"policyKey\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"Promise<ContentReview[]>\",\"isStatic\":false,\"isPublic\":true},\"getLatestForPolicyKey\":{\"name\":\"getLatestForPolicyKey\",\"async\":true,\"parameters\":[{\"name\":\"contentId\",\"type\":\"string\",\"optional\":false},{\"name\":\"policyKey\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"Promise<ContentReview | null>\",\"isStatic\":false,\"isPublic\":true},\"createFromResult\":{\"name\":\"createFromResult\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":false}],\"returnType\":\"Promise<ContentReview>\",\"isStatic\":false,\"isPublic\":true}},\"decoratorConfig\":{\"tableName\":\"content_reviews\"},\"extends\":\"SmrtCollection\",\"extendsTypeArg\":\"ContentReview\",\"exportName\":\"ContentReviewCollection\",\"collectionExportName\":\"ContentReviewCollectionCollection\",\"schema\":{\"tableName\":\"content_reviews\",\"ddl\":\"CREATE TABLE IF NOT EXISTS \\\"content_reviews\\\" (\\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\":\"content_reviews_slug_context_idx\",\"columns\":[\"slug\",\"context\"],\"unique\":true},{\"name\":\"content_reviews_created_at_idx\",\"columns\":[\"created_at\"]}],\"version\":\"03b7d1d3\"}},\"@happyvertical/smrt-content:Article\":{\"name\":\"article\",\"className\":\"Article\",\"qualifiedName\":\"@happyvertical/smrt-content:Article\",\"collection\":\"contents\",\"filePath\":\"/home/runner/work/smrt/smrt/packages/content/src/content-types.ts\",\"packageName\":\"@happyvertical/smrt-content\",\"fields\":{\"created_at\":{\"type\":\"datetime\",\"required\":false},\"updated_at\":{\"type\":\"datetime\",\"required\":false},\"tenantId\":{\"type\":\"text\",\"required\":false,\"_meta\":{\"sqlType\":\"UUID\",\"nullable\":true,\"__tenancy\":{\"isTenantIdField\":true,\"autoFilter\":true,\"required\":false,\"autoPopulate\":true,\"nullable\":true}}},\"type\":{\"type\":\"text\",\"required\":false},\"variant\":{\"type\":\"text\",\"required\":false},\"fileKey\":{\"type\":\"text\",\"required\":false},\"author\":{\"type\":\"text\",\"required\":false},\"name\":{\"type\":\"text\",\"required\":true,\"default\":\"\",\"_meta\":{\"required\":true}},\"title\":{\"type\":\"text\",\"required\":false},\"description\":{\"type\":\"text\",\"required\":false},\"body\":{\"type\":\"text\",\"required\":false},\"bodyFormat\":{\"type\":\"text\",\"required\":false},\"publish_date\":{\"type\":\"datetime\",\"required\":false},\"url\":{\"type\":\"text\",\"required\":false},\"source\":{\"type\":\"text\",\"required\":false},\"original_url\":{\"type\":\"text\",\"required\":false},\"language\":{\"type\":\"text\",\"required\":false},\"tags\":{\"type\":\"json\",\"required\":false,\"default\":[]},\"category\":{\"type\":\"text\",\"required\":false},\"status\":{\"type\":\"text\",\"required\":false,\"default\":\"draft\"},\"state\":{\"type\":\"text\",\"required\":false,\"default\":\"active\"},\"metadata\":{\"type\":\"json\",\"required\":false,\"default\":{}},\"thumbnailAssetId\":{\"type\":\"crossPackageRef\",\"required\":false,\"related\":\"@happyvertical/smrt-assets:Asset\"}},\"methods\":{\"withDatabase\":{\"name\":\"withDatabase\",\"async\":true,\"parameters\":[{\"name\":\"db\",\"type\":\"DatabaseInterface\",\"optional\":false},{\"name\":\"operation\",\"type\":\"Function\",\"optional\":false}],\"returnType\":\"Promise<T>\",\"isStatic\":false,\"isPublic\":true},\"getAiUsageSnapshot\":{\"name\":\"getAiUsageSnapshot\",\"async\":false,\"parameters\":[],\"returnType\":\"AiUsageSnapshot | undefined\",\"isStatic\":false,\"isPublic\":true},\"resetAiUsage\":{\"name\":\"resetAiUsage\",\"async\":false,\"parameters\":[],\"returnType\":\"void\",\"isStatic\":false,\"isPublic\":true},\"listAiUsage\":{\"name\":\"listAiUsage\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"AiUsageListOptions\",\"optional\":true}],\"returnType\":\"Promise<SmrtAiUsageRecord[]>\",\"isStatic\":false,\"isPublic\":true},\"summarizeAiUsage\":{\"name\":\"summarizeAiUsage\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"AiUsageSummaryOptions\",\"optional\":true}],\"returnType\":\"Promise<Record<string, AiUsageStats>>\",\"isStatic\":false,\"isPublic\":true},\"destroy\":{\"name\":\"destroy\",\"async\":false,\"parameters\":[],\"returnType\":\"void\",\"isStatic\":false,\"isPublic\":true},\"markAsPersisted\":{\"name\":\"markAsPersisted\",\"async\":false,\"parameters\":[],\"returnType\":\"void\",\"isStatic\":false,\"isPublic\":true},\"requireInsertOnSave\":{\"name\":\"requireInsertOnSave\",\"async\":false,\"parameters\":[],\"returnType\":\"void\",\"isStatic\":false,\"isPublic\":true},\"initialize\":{\"name\":\"initialize\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise\",\"isStatic\":false,\"isPublic\":true},\"loadDataFromDb\":{\"name\":\"loadDataFromDb\",\"async\":true,\"parameters\":[{\"name\":\"data\",\"type\":\"Record<string>\",\"optional\":false}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getFields\":{\"name\":\"getFields\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<any>\",\"isStatic\":false,\"isPublic\":true},\"toJSON\":{\"name\":\"toJSON\",\"async\":false,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"toPlainObject\":{\"name\":\"toPlainObject\",\"async\":false,\"parameters\":[],\"returnType\":\"Record<string>\",\"isStatic\":false,\"isPublic\":true},\"toPublicJSON\":{\"name\":\"toPublicJSON\",\"async\":false,\"parameters\":[{\"name\":\"options\",\"type\":\"PublicJsonOptions\",\"optional\":true}],\"returnType\":\"Record<string>\",\"isStatic\":false,\"isPublic\":true},\"getId\":{\"name\":\"getId\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getSlug\":{\"name\":\"getSlug\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getSavedId\":{\"name\":\"getSavedId\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"isSaved\":{\"name\":\"isSaved\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"save\":{\"name\":\"save\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"classifyConstraintError\":{\"name\":\"classifyConstraintError\",\"async\":false,\"parameters\":[{\"name\":\"message\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"'unique' | 'not_null' | null\",\"isStatic\":true,\"isPublic\":true},\"loadFromId\":{\"name\":\"loadFromId\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"loadFromSlug\":{\"name\":\"loadFromSlug\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"is\":{\"name\":\"is\",\"async\":true,\"parameters\":[{\"name\":\"criteria\",\"type\":\"string\",\"optional\":false},{\"name\":\"options\",\"type\":\"AiOperationOptions\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"do\":{\"name\":\"do\",\"async\":true,\"parameters\":[{\"name\":\"instructions\",\"type\":\"string\",\"optional\":false},{\"name\":\"options\",\"type\":\"AiOperationOptions\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"describe\":{\"name\":\"describe\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"AiOperationOptions\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"delete\":{\"name\":\"delete\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<void>\",\"isStatic\":false,\"isPublic\":true},\"isRelatedLoaded\":{\"name\":\"isRelatedLoaded\",\"async\":false,\"parameters\":[{\"name\":\"fieldName\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"boolean\",\"isStatic\":false,\"isPublic\":true},\"_setLoadedRelationship\":{\"name\":\"_setLoadedRelationship\",\"async\":false,\"parameters\":[{\"name\":\"fieldName\",\"type\":\"string\",\"optional\":false},{\"name\":\"value\",\"type\":\"any\",\"optional\":false}],\"returnType\":\"void\",\"isStatic\":false,\"isPublic\":true},\"loadRelated\":{\"name\":\"loadRelated\",\"async\":true,\"parameters\":[{\"name\":\"fieldName\",\"type\":\"string\",\"optional\":false},{\"name\":\"opts\",\"type\":\"LoadRelatedOptions\",\"optional\":true}],\"returnType\":\"Promise<any>\",\"isStatic\":false,\"isPublic\":true},\"loadRelatedMany\":{\"name\":\"loadRelatedMany\",\"async\":true,\"parameters\":[{\"name\":\"fieldName\",\"type\":\"string\",\"optional\":false},{\"name\":\"opts\",\"type\":\"LoadRelatedOptions\",\"optional\":true}],\"returnType\":\"Promise<any[]>\",\"isStatic\":false,\"isPublic\":true},\"getRelated\":{\"name\":\"getRelated\",\"async\":true,\"parameters\":[{\"name\":\"fieldName\",\"type\":\"string\",\"optional\":false},{\"name\":\"opts\",\"type\":\"LoadRelatedOptions\",\"optional\":true}],\"returnType\":\"Promise<any>\",\"isStatic\":false,\"isPublic\":true},\"getAvailableTools\":{\"name\":\"getAvailableTools\",\"async\":false,\"parameters\":[],\"returnType\":\"AITool[]\",\"isStatic\":false,\"isPublic\":true},\"executeToolCall\":{\"name\":\"executeToolCall\",\"async\":true,\"parameters\":[{\"name\":\"toolCall\",\"type\":\"ToolCall\",\"optional\":false}],\"returnType\":\"Promise<ToolCallResult>\",\"isStatic\":false,\"isPublic\":true},\"remember\":{\"name\":\"remember\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":false}],\"returnType\":\"Promise<void>\",\"isStatic\":false,\"isPublic\":true},\"recall\":{\"name\":\"recall\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":false}],\"returnType\":\"Promise\",\"isStatic\":false,\"isPublic\":true},\"recallAll\":{\"name\":\"recallAll\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":true}],\"returnType\":\"Promise<Map<string>>\",\"isStatic\":false,\"isPublic\":true},\"forget\":{\"name\":\"forget\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":false}],\"returnType\":\"Promise<void>\",\"isStatic\":false,\"isPublic\":true},\"forgetScope\":{\"name\":\"forgetScope\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":false}],\"returnType\":\"Promise<number>\",\"isStatic\":false,\"isPublic\":true},\"generateEmbeddings\":{\"name\":\"generateEmbeddings\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"GenerateEmbeddingsOptions\",\"optional\":true}],\"returnType\":\"Promise<void>\",\"isStatic\":false,\"isPublic\":true},\"getEmbedding\":{\"name\":\"getEmbedding\",\"async\":true,\"parameters\":[{\"name\":\"fieldName\",\"type\":\"string\",\"optional\":false},{\"name\":\"model\",\"type\":\"string\",\"optional\":true}],\"returnType\":\"Promise<number[] | null>\",\"isStatic\":false,\"isPublic\":true},\"hasStaleEmbeddings\":{\"name\":\"hasStaleEmbeddings\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<boolean>\",\"isStatic\":false,\"isPublic\":true},\"clearEmbeddings\":{\"name\":\"clearEmbeddings\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<void>\",\"isStatic\":false,\"isPublic\":true},\"resolveGovernance\":{\"name\":\"resolveGovernance\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<ResolvedContentGovernance>\",\"isStatic\":false,\"isPublic\":true},\"loadReferences\":{\"name\":\"loadReferences\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"addReference\":{\"name\":\"addReference\",\"async\":true,\"parameters\":[{\"name\":\"content\",\"type\":\"Content | string\",\"optional\":false},{\"name\":\"options\",\"type\":\"object\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"removeReference\":{\"name\":\"removeReference\",\"async\":true,\"parameters\":[{\"name\":\"targetId\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getReferences\":{\"name\":\"getReferences\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getReferenceEdges\":{\"name\":\"getReferenceEdges\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<Array<object>>\",\"isStatic\":false,\"isPublic\":true},\"getReferenceDrift\":{\"name\":\"getReferenceDrift\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<Array<object>>\",\"isStatic\":false,\"isPublic\":true},\"isGoverned\":{\"name\":\"isGoverned\",\"async\":false,\"parameters\":[],\"returnType\":\"boolean\",\"isStatic\":false,\"isPublic\":true},\"getFactLinks\":{\"name\":\"getFactLinks\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getFacts\":{\"name\":\"getFacts\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":true}],\"returnType\":\"Promise<Fact[]>\",\"isStatic\":false,\"isPublic\":true},\"addFact\":{\"name\":\"addFact\",\"async\":true,\"parameters\":[{\"name\":\"fact\",\"type\":\"Fact | string\",\"optional\":false},{\"name\":\"relationship\",\"type\":\"FactContentRelationship\",\"optional\":true},{\"name\":\"metadata\",\"type\":\"Record<string>\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"removeFact\":{\"name\":\"removeFact\",\"async\":true,\"parameters\":[{\"name\":\"factId\",\"type\":\"string\",\"optional\":false},{\"name\":\"relationship\",\"type\":\"FactContentRelationship\",\"optional\":true}],\"returnType\":\"Promise<void>\",\"isStatic\":false,\"isPublic\":true},\"syncFacts\":{\"name\":\"syncFacts\",\"async\":true,\"parameters\":[{\"name\":\"factIds\",\"type\":\"string[]\",\"optional\":false},{\"name\":\"relationship\",\"type\":\"FactContentRelationship\",\"optional\":true}],\"returnType\":\"Promise<object>\",\"isStatic\":false,\"isPublic\":true},\"browseFacts\":{\"name\":\"browseFacts\",\"async\":true,\"parameters\":[{\"name\":\"query\",\"type\":\"any\",\"optional\":true,\"default\":\"\"},{\"name\":\"options\",\"type\":\"object\",\"optional\":true}],\"returnType\":\"Promise<Fact[]>\",\"isStatic\":false,\"isPublic\":true},\"repairFactAudit\":{\"name\":\"repairFactAudit\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"repairFactAuditAction\":{\"name\":\"repairFactAuditAction\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"repairFactEvidence\":{\"name\":\"repairFactEvidence\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"FactAuditResourceRepairOptions\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"repairFactEvidenceAction\":{\"name\":\"repairFactEvidenceAction\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"FactAuditResourceRepairOptions\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"recheckFactClaims\":{\"name\":\"recheckFactClaims\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"FactAuditClaimRecheckOptions\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"recheckFactClaimsAction\":{\"name\":\"recheckFactClaimsAction\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"FactAuditClaimRecheckOptions\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"updateFactEvidenceStatus\":{\"name\":\"updateFactEvidenceStatus\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"FactEvidenceStatusUpdateOptions\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"updateFactEvidenceStatusAction\":{\"name\":\"updateFactEvidenceStatusAction\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"FactEvidenceStatusUpdateOptions\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getFactAuditState\":{\"name\":\"getFactAuditState\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<FactAuditState>\",\"isStatic\":false,\"isPublic\":true},\"getFactAuditStateAction\":{\"name\":\"getFactAuditStateAction\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getFactsState\":{\"name\":\"getFactsState\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"syncFactsState\":{\"name\":\"syncFactsState\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"createVersion\":{\"name\":\"createVersion\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"CreateContentVersionOptions\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getVersions\":{\"name\":\"getVersions\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"restoreFromVersion\":{\"name\":\"restoreFromVersion\",\"async\":true,\"parameters\":[{\"name\":\"versionNumber\",\"type\":\"number\",\"optional\":false}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getReviews\":{\"name\":\"getReviews\",\"async\":true,\"parameters\":[{\"name\":\"kind\",\"type\":\"any\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"listReviews\":{\"name\":\"listReviews\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getReviewRequirements\":{\"name\":\"getReviewRequirements\",\"async\":true,\"parameters\":[{\"name\":\"profileKey\",\"type\":\"string\",\"optional\":false},{\"name\":\"governance\",\"type\":\"ResolvedContentGovernance\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getGovernanceState\":{\"name\":\"getGovernanceState\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<ContentGovernanceState>\",\"isStatic\":false,\"isPublic\":true},\"getGovernanceStateAction\":{\"name\":\"getGovernanceStateAction\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"listReviewProfilesAction\":{\"name\":\"listReviewProfilesAction\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"evaluateReviewProfile\":{\"name\":\"evaluateReviewProfile\",\"async\":true,\"parameters\":[{\"name\":\"profileKey\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"Promise<ContentReviewProfileEvaluation>\",\"isStatic\":false,\"isPublic\":true},\"evaluateReviewProfileAction\":{\"name\":\"evaluateReviewProfileAction\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"isReadyForReviewProfile\":{\"name\":\"isReadyForReviewProfile\",\"async\":true,\"parameters\":[{\"name\":\"profileKey\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"Promise<boolean>\",\"isStatic\":false,\"isPublic\":true},\"getPublishedTransparency\":{\"name\":\"getPublishedTransparency\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getPublishedTransparencyAction\":{\"name\":\"getPublishedTransparencyAction\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"previewTransparency\":{\"name\":\"previewTransparency\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"previewTransparencyAction\":{\"name\":\"previewTransparencyAction\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"runReview\":{\"name\":\"runReview\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"RunContentReviewOptions\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"runReviewAction\":{\"name\":\"runReviewAction\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"RunContentReviewOptions\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"reviewFacts\":{\"name\":\"reviewFacts\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"Omit<RunContentReviewOptions, 'kind'>\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"reviewSafety\":{\"name\":\"reviewSafety\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"Omit<RunContentReviewOptions, 'kind'>\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getCorrections\":{\"name\":\"getCorrections\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"listCorrections\":{\"name\":\"listCorrections\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"issueCorrection\":{\"name\":\"issueCorrection\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"IssueContentCorrectionOptions\",\"optional\":false}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"issueCorrectionAction\":{\"name\":\"issueCorrectionAction\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"IssueContentCorrectionOptions\",\"optional\":false}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"listVersions\":{\"name\":\"listVersions\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"mutateVersionAction\":{\"name\":\"mutateVersionAction\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"any\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getCategorySegments\":{\"name\":\"getCategorySegments\",\"async\":false,\"parameters\":[],\"returnType\":\"string[]\",\"isStatic\":false,\"isPublic\":true},\"getParentCategory\":{\"name\":\"getParentCategory\",\"async\":false,\"parameters\":[],\"returnType\":\"string | null\",\"isStatic\":false,\"isPublic\":true},\"getRootCategory\":{\"name\":\"getRootCategory\",\"async\":false,\"parameters\":[],\"returnType\":\"string | null\",\"isStatic\":false,\"isPublic\":true},\"getAncestorPaths\":{\"name\":\"getAncestorPaths\",\"async\":false,\"parameters\":[],\"returnType\":\"string[]\",\"isStatic\":false,\"isPublic\":true},\"isInCategory\":{\"name\":\"isInCategory\",\"async\":false,\"parameters\":[{\"name\":\"categoryPath\",\"type\":\"string\",\"optional\":false},{\"name\":\"includeChildren\",\"type\":\"any\",\"optional\":true}],\"returnType\":\"boolean\",\"isStatic\":false,\"isPublic\":true},\"getAssets\":{\"name\":\"getAssets\",\"async\":true,\"parameters\":[{\"name\":\"relationship\",\"type\":\"string\",\"optional\":true}],\"returnType\":\"Promise<Asset[]>\",\"isStatic\":false,\"isPublic\":true},\"addAsset\":{\"name\":\"addAsset\",\"async\":true,\"parameters\":[{\"name\":\"asset\",\"type\":\"Asset\",\"optional\":false},{\"name\":\"relationship\",\"type\":\"any\",\"optional\":true,\"default\":\"attachment\"},{\"name\":\"sortOrder\",\"type\":\"any\",\"optional\":true}],\"returnType\":\"Promise<void>\",\"isStatic\":false,\"isPublic\":true},\"removeAsset\":{\"name\":\"removeAsset\",\"async\":true,\"parameters\":[{\"name\":\"assetId\",\"type\":\"string\",\"optional\":false},{\"name\":\"relationship\",\"type\":\"string\",\"optional\":true}],\"returnType\":\"Promise<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\":\"metadata\",\"type\":\"Record<string> | null | undefined\",\"optional\":false}],\"returnType\":\"void\",\"isStatic\":false,\"isPublic\":true},\"updateMetadata\":{\"name\":\"updateMetadata\",\"async\":false,\"parameters\":[{\"name\":\"patch\",\"type\":\"Partial<Record<string>>\",\"optional\":false}],\"returnType\":\"Record<string>\",\"isStatic\":false,\"isPublic\":true},\"getThumbnail\":{\"name\":\"getThumbnail\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<Image | null>\",\"isStatic\":false,\"isPublic\":true},\"setThumbnail\":{\"name\":\"setThumbnail\",\"async\":true,\"parameters\":[{\"name\":\"image\",\"type\":\"Image\",\"optional\":false}],\"returnType\":\"Promise<void>\",\"isStatic\":false,\"isPublic\":true},\"generateThumbnail\":{\"name\":\"generateThumbnail\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"ThumbnailOptions\",\"optional\":false}],\"returnType\":\"Promise<Image>\",\"isStatic\":false,\"isPublic\":true}},\"decoratorConfig\":{\"tableStrategy\":\"sti\",\"api\":false,\"mcp\":false,\"cli\":false,\"tableName\":\"contents\"},\"extends\":\"Content\",\"exportName\":\"Article\",\"collectionExportName\":\"ArticleCollection\",\"validationRules\":[{\"field\":\"name\",\"rule\":\"required\",\"fieldType\":\"text\"}],\"schema\":{\"tableName\":\"contents\",\"ddl\":\"CREATE TABLE IF NOT EXISTS \\\"contents\\\" (\\n \\\"id\\\" UUID PRIMARY KEY NOT NULL,\\n \\\"slug\\\" TEXT NOT NULL,\\n \\\"context\\\" TEXT NOT NULL DEFAULT '',\\n \\\"_meta_type\\\" TEXT NOT NULL,\\n \\\"_meta_data\\\" JSON,\\n \\\"created_at\\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\\"updated_at\\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\\"tenant_id\\\" UUID,\\n \\\"type\\\" TEXT,\\n \\\"variant\\\" TEXT,\\n \\\"file_key\\\" TEXT,\\n \\\"author\\\" TEXT,\\n \\\"name\\\" TEXT DEFAULT '',\\n \\\"title\\\" TEXT,\\n \\\"description\\\" TEXT,\\n \\\"body\\\" TEXT,\\n \\\"body_format\\\" TEXT,\\n \\\"publish_date\\\" TIMESTAMP,\\n \\\"url\\\" TEXT,\\n \\\"source\\\" TEXT,\\n \\\"original_url\\\" TEXT,\\n \\\"language\\\" TEXT,\\n \\\"tags\\\" JSON DEFAULT '[]',\\n \\\"category\\\" TEXT,\\n \\\"status\\\" TEXT DEFAULT 'draft',\\n \\\"state\\\" TEXT DEFAULT 'active',\\n \\\"metadata\\\" JSON DEFAULT '{}',\\n \\\"thumbnail_asset_id\\\" UUID,\\n \\\"feed_source_id\\\" UUID,\\n \\\"source_guid\\\" TEXT,\\n \\\"source_name\\\" TEXT,\\n \\\"source_homepage_url\\\" TEXT,\\n \\\"external_url\\\" TEXT,\\n \\\"original_published_at\\\" TIMESTAMP,\\n \\\"dedupe_key\\\" TEXT\\n);\",\"columns\":{\"id\":{\"type\":\"UUID\",\"primaryKey\":true,\"referenceKind\":\"id\",\"notNull\":true},\"slug\":{\"type\":\"TEXT\",\"notNull\":true},\"context\":{\"type\":\"TEXT\",\"notNull\":true,\"default\":\"\"},\"_meta_type\":{\"type\":\"TEXT\",\"notNull\":true},\"_meta_data\":{\"type\":\"JSON\",\"notNull\":false},\"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\":false},\"type\":{\"type\":\"TEXT\",\"notNull\":false},\"variant\":{\"type\":\"TEXT\",\"notNull\":false},\"file_key\":{\"type\":\"TEXT\",\"notNull\":false},\"author\":{\"type\":\"TEXT\",\"notNull\":false},\"name\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"\"},\"title\":{\"type\":\"TEXT\",\"notNull\":false},\"description\":{\"type\":\"TEXT\",\"notNull\":false},\"body\":{\"type\":\"TEXT\",\"notNull\":false},\"body_format\":{\"type\":\"TEXT\",\"notNull\":false},\"publish_date\":{\"type\":\"TIMESTAMP\",\"notNull\":false},\"url\":{\"type\":\"TEXT\",\"notNull\":false},\"source\":{\"type\":\"TEXT\",\"notNull\":false},\"original_url\":{\"type\":\"TEXT\",\"notNull\":false},\"language\":{\"type\":\"TEXT\",\"notNull\":false},\"tags\":{\"type\":\"JSON\",\"notNull\":false,\"default\":[]},\"category\":{\"type\":\"TEXT\",\"notNull\":false},\"status\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"draft\"},\"state\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"active\"},\"metadata\":{\"type\":\"JSON\",\"notNull\":false,\"default\":{}},\"thumbnail_asset_id\":{\"type\":\"UUID\",\"referenceKind\":\"crossPackageRef\",\"notNull\":false},\"feed_source_id\":{\"type\":\"UUID\",\"referenceKind\":\"foreignKey\",\"notNull\":false,\"foreignKey\":{\"table\":\"content_feed_sources\",\"column\":\"id\",\"onDelete\":\"NO ACTION\",\"onUpdate\":\"CASCADE\"}},\"source_guid\":{\"type\":\"TEXT\",\"notNull\":false},\"source_name\":{\"type\":\"TEXT\",\"notNull\":false},\"source_homepage_url\":{\"type\":\"TEXT\",\"notNull\":false},\"external_url\":{\"type\":\"TEXT\",\"notNull\":false},\"original_published_at\":{\"type\":\"TIMESTAMP\",\"notNull\":false},\"dedupe_key\":{\"type\":\"TEXT\",\"notNull\":false}},\"indexes\":[{\"name\":\"contents_slug_context_meta_type_idx\",\"columns\":[\"tenant_id\",\"slug\",\"context\",\"_meta_type\"],\"unique\":true},{\"name\":\"contents_meta_type_idx\",\"columns\":[\"_meta_type\"]},{\"name\":\"contents_tenant_id_publish_date_idx\",\"columns\":[\"tenant_id\",\"publish_date\"]},{\"name\":\"contents_tenant_id_created_at_idx\",\"columns\":[\"tenant_id\",\"created_at\"]},{\"name\":\"contents_thumbnail_asset_id_idx\",\"columns\":[\"thumbnail_asset_id\"]},{\"name\":\"contents_feed_source_id_idx\",\"columns\":[\"feed_source_id\"]}],\"version\":\"ad51267b\"}},\"@happyvertical/smrt-content:ContentDocument\":{\"name\":\"contentdocument\",\"className\":\"ContentDocument\",\"qualifiedName\":\"@happyvertical/smrt-content:ContentDocument\",\"collection\":\"contents\",\"filePath\":\"/home/runner/work/smrt/smrt/packages/content/src/content-types.ts\",\"packageName\":\"@happyvertical/smrt-content\",\"fields\":{\"created_at\":{\"type\":\"datetime\",\"required\":false},\"updated_at\":{\"type\":\"datetime\",\"required\":false},\"tenantId\":{\"type\":\"text\",\"required\":false,\"_meta\":{\"sqlType\":\"UUID\",\"nullable\":true,\"__tenancy\":{\"isTenantIdField\":true,\"autoFilter\":true,\"required\":false,\"autoPopulate\":true,\"nullable\":true}}},\"type\":{\"type\":\"text\",\"required\":false},\"variant\":{\"type\":\"text\",\"required\":false},\"fileKey\":{\"type\":\"text\",\"required\":false},\"author\":{\"type\":\"text\",\"required\":false},\"name\":{\"type\":\"text\",\"required\":true,\"default\":\"\",\"_meta\":{\"required\":true}},\"title\":{\"type\":\"text\",\"required\":false},\"description\":{\"type\":\"text\",\"required\":false},\"body\":{\"type\":\"text\",\"required\":false},\"bodyFormat\":{\"type\":\"text\",\"required\":false},\"publish_date\":{\"type\":\"datetime\",\"required\":false},\"url\":{\"type\":\"text\",\"required\":false},\"source\":{\"type\":\"text\",\"required\":false},\"original_url\":{\"type\":\"text\",\"required\":false},\"language\":{\"type\":\"text\",\"required\":false},\"tags\":{\"type\":\"json\",\"required\":false,\"default\":[]},\"category\":{\"type\":\"text\",\"required\":false},\"status\":{\"type\":\"text\",\"required\":false,\"default\":\"draft\"},\"state\":{\"type\":\"text\",\"required\":false,\"default\":\"active\"},\"metadata\":{\"type\":\"json\",\"required\":false,\"default\":{}},\"thumbnailAssetId\":{\"type\":\"crossPackageRef\",\"required\":false,\"related\":\"@happyvertical/smrt-assets:Asset\"}},\"methods\":{\"withDatabase\":{\"name\":\"withDatabase\",\"async\":true,\"parameters\":[{\"name\":\"db\",\"type\":\"DatabaseInterface\",\"optional\":false},{\"name\":\"operation\",\"type\":\"Function\",\"optional\":false}],\"returnType\":\"Promise<T>\",\"isStatic\":false,\"isPublic\":true},\"getAiUsageSnapshot\":{\"name\":\"getAiUsageSnapshot\",\"async\":false,\"parameters\":[],\"returnType\":\"AiUsageSnapshot | undefined\",\"isStatic\":false,\"isPublic\":true},\"resetAiUsage\":{\"name\":\"resetAiUsage\",\"async\":false,\"parameters\":[],\"returnType\":\"void\",\"isStatic\":false,\"isPublic\":true},\"listAiUsage\":{\"name\":\"listAiUsage\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"AiUsageListOptions\",\"optional\":true}],\"returnType\":\"Promise<SmrtAiUsageRecord[]>\",\"isStatic\":false,\"isPublic\":true},\"summarizeAiUsage\":{\"name\":\"summarizeAiUsage\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"AiUsageSummaryOptions\",\"optional\":true}],\"returnType\":\"Promise<Record<string, AiUsageStats>>\",\"isStatic\":false,\"isPublic\":true},\"destroy\":{\"name\":\"destroy\",\"async\":false,\"parameters\":[],\"returnType\":\"void\",\"isStatic\":false,\"isPublic\":true},\"markAsPersisted\":{\"name\":\"markAsPersisted\",\"async\":false,\"parameters\":[],\"returnType\":\"void\",\"isStatic\":false,\"isPublic\":true},\"requireInsertOnSave\":{\"name\":\"requireInsertOnSave\",\"async\":false,\"parameters\":[],\"returnType\":\"void\",\"isStatic\":false,\"isPublic\":true},\"initialize\":{\"name\":\"initialize\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise\",\"isStatic\":false,\"isPublic\":true},\"loadDataFromDb\":{\"name\":\"loadDataFromDb\",\"async\":true,\"parameters\":[{\"name\":\"data\",\"type\":\"Record<string>\",\"optional\":false}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getFields\":{\"name\":\"getFields\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<any>\",\"isStatic\":false,\"isPublic\":true},\"toJSON\":{\"name\":\"toJSON\",\"async\":false,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"toPlainObject\":{\"name\":\"toPlainObject\",\"async\":false,\"parameters\":[],\"returnType\":\"Record<string>\",\"isStatic\":false,\"isPublic\":true},\"toPublicJSON\":{\"name\":\"toPublicJSON\",\"async\":false,\"parameters\":[{\"name\":\"options\",\"type\":\"PublicJsonOptions\",\"optional\":true}],\"returnType\":\"Record<string>\",\"isStatic\":false,\"isPublic\":true},\"getId\":{\"name\":\"getId\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getSlug\":{\"name\":\"getSlug\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getSavedId\":{\"name\":\"getSavedId\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"isSaved\":{\"name\":\"isSaved\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"save\":{\"name\":\"save\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"classifyConstraintError\":{\"name\":\"classifyConstraintError\",\"async\":false,\"parameters\":[{\"name\":\"message\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"'unique' | 'not_null' | null\",\"isStatic\":true,\"isPublic\":true},\"loadFromId\":{\"name\":\"loadFromId\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"loadFromSlug\":{\"name\":\"loadFromSlug\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"is\":{\"name\":\"is\",\"async\":true,\"parameters\":[{\"name\":\"criteria\",\"type\":\"string\",\"optional\":false},{\"name\":\"options\",\"type\":\"AiOperationOptions\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"do\":{\"name\":\"do\",\"async\":true,\"parameters\":[{\"name\":\"instructions\",\"type\":\"string\",\"optional\":false},{\"name\":\"options\",\"type\":\"AiOperationOptions\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"describe\":{\"name\":\"describe\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"AiOperationOptions\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"delete\":{\"name\":\"delete\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<void>\",\"isStatic\":false,\"isPublic\":true},\"isRelatedLoaded\":{\"name\":\"isRelatedLoaded\",\"async\":false,\"parameters\":[{\"name\":\"fieldName\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"boolean\",\"isStatic\":false,\"isPublic\":true},\"_setLoadedRelationship\":{\"name\":\"_setLoadedRelationship\",\"async\":false,\"parameters\":[{\"name\":\"fieldName\",\"type\":\"string\",\"optional\":false},{\"name\":\"value\",\"type\":\"any\",\"optional\":false}],\"returnType\":\"void\",\"isStatic\":false,\"isPublic\":true},\"loadRelated\":{\"name\":\"loadRelated\",\"async\":true,\"parameters\":[{\"name\":\"fieldName\",\"type\":\"string\",\"optional\":false},{\"name\":\"opts\",\"type\":\"LoadRelatedOptions\",\"optional\":true}],\"returnType\":\"Promise<any>\",\"isStatic\":false,\"isPublic\":true},\"loadRelatedMany\":{\"name\":\"loadRelatedMany\",\"async\":true,\"parameters\":[{\"name\":\"fieldName\",\"type\":\"string\",\"optional\":false},{\"name\":\"opts\",\"type\":\"LoadRelatedOptions\",\"optional\":true}],\"returnType\":\"Promise<any[]>\",\"isStatic\":false,\"isPublic\":true},\"getRelated\":{\"name\":\"getRelated\",\"async\":true,\"parameters\":[{\"name\":\"fieldName\",\"type\":\"string\",\"optional\":false},{\"name\":\"opts\",\"type\":\"LoadRelatedOptions\",\"optional\":true}],\"returnType\":\"Promise<any>\",\"isStatic\":false,\"isPublic\":true},\"getAvailableTools\":{\"name\":\"getAvailableTools\",\"async\":false,\"parameters\":[],\"returnType\":\"AITool[]\",\"isStatic\":false,\"isPublic\":true},\"executeToolCall\":{\"name\":\"executeToolCall\",\"async\":true,\"parameters\":[{\"name\":\"toolCall\",\"type\":\"ToolCall\",\"optional\":false}],\"returnType\":\"Promise<ToolCallResult>\",\"isStatic\":false,\"isPublic\":true},\"remember\":{\"name\":\"remember\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":false}],\"returnType\":\"Promise<void>\",\"isStatic\":false,\"isPublic\":true},\"recall\":{\"name\":\"recall\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":false}],\"returnType\":\"Promise\",\"isStatic\":false,\"isPublic\":true},\"recallAll\":{\"name\":\"recallAll\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":true}],\"returnType\":\"Promise<Map<string>>\",\"isStatic\":false,\"isPublic\":true},\"forget\":{\"name\":\"forget\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":false}],\"returnType\":\"Promise<void>\",\"isStatic\":false,\"isPublic\":true},\"forgetScope\":{\"name\":\"forgetScope\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":false}],\"returnType\":\"Promise<number>\",\"isStatic\":false,\"isPublic\":true},\"generateEmbeddings\":{\"name\":\"generateEmbeddings\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"GenerateEmbeddingsOptions\",\"optional\":true}],\"returnType\":\"Promise<void>\",\"isStatic\":false,\"isPublic\":true},\"getEmbedding\":{\"name\":\"getEmbedding\",\"async\":true,\"parameters\":[{\"name\":\"fieldName\",\"type\":\"string\",\"optional\":false},{\"name\":\"model\",\"type\":\"string\",\"optional\":true}],\"returnType\":\"Promise<number[] | null>\",\"isStatic\":false,\"isPublic\":true},\"hasStaleEmbeddings\":{\"name\":\"hasStaleEmbeddings\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<boolean>\",\"isStatic\":false,\"isPublic\":true},\"clearEmbeddings\":{\"name\":\"clearEmbeddings\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<void>\",\"isStatic\":false,\"isPublic\":true},\"resolveGovernance\":{\"name\":\"resolveGovernance\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<ResolvedContentGovernance>\",\"isStatic\":false,\"isPublic\":true},\"loadReferences\":{\"name\":\"loadReferences\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"addReference\":{\"name\":\"addReference\",\"async\":true,\"parameters\":[{\"name\":\"content\",\"type\":\"Content | string\",\"optional\":false},{\"name\":\"options\",\"type\":\"object\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"removeReference\":{\"name\":\"removeReference\",\"async\":true,\"parameters\":[{\"name\":\"targetId\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getReferences\":{\"name\":\"getReferences\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getReferenceEdges\":{\"name\":\"getReferenceEdges\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<Array<object>>\",\"isStatic\":false,\"isPublic\":true},\"getReferenceDrift\":{\"name\":\"getReferenceDrift\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<Array<object>>\",\"isStatic\":false,\"isPublic\":true},\"isGoverned\":{\"name\":\"isGoverned\",\"async\":false,\"parameters\":[],\"returnType\":\"boolean\",\"isStatic\":false,\"isPublic\":true},\"getFactLinks\":{\"name\":\"getFactLinks\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getFacts\":{\"name\":\"getFacts\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":true}],\"returnType\":\"Promise<Fact[]>\",\"isStatic\":false,\"isPublic\":true},\"addFact\":{\"name\":\"addFact\",\"async\":true,\"parameters\":[{\"name\":\"fact\",\"type\":\"Fact | string\",\"optional\":false},{\"name\":\"relationship\",\"type\":\"FactContentRelationship\",\"optional\":true},{\"name\":\"metadata\",\"type\":\"Record<string>\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"removeFact\":{\"name\":\"removeFact\",\"async\":true,\"parameters\":[{\"name\":\"factId\",\"type\":\"string\",\"optional\":false},{\"name\":\"relationship\",\"type\":\"FactContentRelationship\",\"optional\":true}],\"returnType\":\"Promise<void>\",\"isStatic\":false,\"isPublic\":true},\"syncFacts\":{\"name\":\"syncFacts\",\"async\":true,\"parameters\":[{\"name\":\"factIds\",\"type\":\"string[]\",\"optional\":false},{\"name\":\"relationship\",\"type\":\"FactContentRelationship\",\"optional\":true}],\"returnType\":\"Promise<object>\",\"isStatic\":false,\"isPublic\":true},\"browseFacts\":{\"name\":\"browseFacts\",\"async\":true,\"parameters\":[{\"name\":\"query\",\"type\":\"any\",\"optional\":true,\"default\":\"\"},{\"name\":\"options\",\"type\":\"object\",\"optional\":true}],\"returnType\":\"Promise<Fact[]>\",\"isStatic\":false,\"isPublic\":true},\"repairFactAudit\":{\"name\":\"repairFactAudit\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"repairFactAuditAction\":{\"name\":\"repairFactAuditAction\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"repairFactEvidence\":{\"name\":\"repairFactEvidence\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"FactAuditResourceRepairOptions\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"repairFactEvidenceAction\":{\"name\":\"repairFactEvidenceAction\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"FactAuditResourceRepairOptions\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"recheckFactClaims\":{\"name\":\"recheckFactClaims\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"FactAuditClaimRecheckOptions\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"recheckFactClaimsAction\":{\"name\":\"recheckFactClaimsAction\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"FactAuditClaimRecheckOptions\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"updateFactEvidenceStatus\":{\"name\":\"updateFactEvidenceStatus\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"FactEvidenceStatusUpdateOptions\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"updateFactEvidenceStatusAction\":{\"name\":\"updateFactEvidenceStatusAction\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"FactEvidenceStatusUpdateOptions\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getFactAuditState\":{\"name\":\"getFactAuditState\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<FactAuditState>\",\"isStatic\":false,\"isPublic\":true},\"getFactAuditStateAction\":{\"name\":\"getFactAuditStateAction\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getFactsState\":{\"name\":\"getFactsState\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"syncFactsState\":{\"name\":\"syncFactsState\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"createVersion\":{\"name\":\"createVersion\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"CreateContentVersionOptions\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getVersions\":{\"name\":\"getVersions\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"restoreFromVersion\":{\"name\":\"restoreFromVersion\",\"async\":true,\"parameters\":[{\"name\":\"versionNumber\",\"type\":\"number\",\"optional\":false}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getReviews\":{\"name\":\"getReviews\",\"async\":true,\"parameters\":[{\"name\":\"kind\",\"type\":\"any\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"listReviews\":{\"name\":\"listReviews\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getReviewRequirements\":{\"name\":\"getReviewRequirements\",\"async\":true,\"parameters\":[{\"name\":\"profileKey\",\"type\":\"string\",\"optional\":false},{\"name\":\"governance\",\"type\":\"ResolvedContentGovernance\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getGovernanceState\":{\"name\":\"getGovernanceState\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<ContentGovernanceState>\",\"isStatic\":false,\"isPublic\":true},\"getGovernanceStateAction\":{\"name\":\"getGovernanceStateAction\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"listReviewProfilesAction\":{\"name\":\"listReviewProfilesAction\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"evaluateReviewProfile\":{\"name\":\"evaluateReviewProfile\",\"async\":true,\"parameters\":[{\"name\":\"profileKey\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"Promise<ContentReviewProfileEvaluation>\",\"isStatic\":false,\"isPublic\":true},\"evaluateReviewProfileAction\":{\"name\":\"evaluateReviewProfileAction\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"isReadyForReviewProfile\":{\"name\":\"isReadyForReviewProfile\",\"async\":true,\"parameters\":[{\"name\":\"profileKey\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"Promise<boolean>\",\"isStatic\":false,\"isPublic\":true},\"getPublishedTransparency\":{\"name\":\"getPublishedTransparency\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getPublishedTransparencyAction\":{\"name\":\"getPublishedTransparencyAction\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"previewTransparency\":{\"name\":\"previewTransparency\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"previewTransparencyAction\":{\"name\":\"previewTransparencyAction\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"runReview\":{\"name\":\"runReview\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"RunContentReviewOptions\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"runReviewAction\":{\"name\":\"runReviewAction\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"RunContentReviewOptions\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"reviewFacts\":{\"name\":\"reviewFacts\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"Omit<RunContentReviewOptions, 'kind'>\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"reviewSafety\":{\"name\":\"reviewSafety\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"Omit<RunContentReviewOptions, 'kind'>\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getCorrections\":{\"name\":\"getCorrections\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"listCorrections\":{\"name\":\"listCorrections\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"issueCorrection\":{\"name\":\"issueCorrection\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"IssueContentCorrectionOptions\",\"optional\":false}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"issueCorrectionAction\":{\"name\":\"issueCorrectionAction\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"IssueContentCorrectionOptions\",\"optional\":false}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"listVersions\":{\"name\":\"listVersions\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"mutateVersionAction\":{\"name\":\"mutateVersionAction\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"any\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getCategorySegments\":{\"name\":\"getCategorySegments\",\"async\":false,\"parameters\":[],\"returnType\":\"string[]\",\"isStatic\":false,\"isPublic\":true},\"getParentCategory\":{\"name\":\"getParentCategory\",\"async\":false,\"parameters\":[],\"returnType\":\"string | null\",\"isStatic\":false,\"isPublic\":true},\"getRootCategory\":{\"name\":\"getRootCategory\",\"async\":false,\"parameters\":[],\"returnType\":\"string | null\",\"isStatic\":false,\"isPublic\":true},\"getAncestorPaths\":{\"name\":\"getAncestorPaths\",\"async\":false,\"parameters\":[],\"returnType\":\"string[]\",\"isStatic\":false,\"isPublic\":true},\"isInCategory\":{\"name\":\"isInCategory\",\"async\":false,\"parameters\":[{\"name\":\"categoryPath\",\"type\":\"string\",\"optional\":false},{\"name\":\"includeChildren\",\"type\":\"any\",\"optional\":true}],\"returnType\":\"boolean\",\"isStatic\":false,\"isPublic\":true},\"getAssets\":{\"name\":\"getAssets\",\"async\":true,\"parameters\":[{\"name\":\"relationship\",\"type\":\"string\",\"optional\":true}],\"returnType\":\"Promise<Asset[]>\",\"isStatic\":false,\"isPublic\":true},\"addAsset\":{\"name\":\"addAsset\",\"async\":true,\"parameters\":[{\"name\":\"asset\",\"type\":\"Asset\",\"optional\":false},{\"name\":\"relationship\",\"type\":\"any\",\"optional\":true,\"default\":\"attachment\"},{\"name\":\"sortOrder\",\"type\":\"any\",\"optional\":true}],\"returnType\":\"Promise<void>\",\"isStatic\":false,\"isPublic\":true},\"removeAsset\":{\"name\":\"removeAsset\",\"async\":true,\"parameters\":[{\"name\":\"assetId\",\"type\":\"string\",\"optional\":false},{\"name\":\"relationship\",\"type\":\"string\",\"optional\":true}],\"returnType\":\"Promise<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\":\"metadata\",\"type\":\"Record<string> | null | undefined\",\"optional\":false}],\"returnType\":\"void\",\"isStatic\":false,\"isPublic\":true},\"updateMetadata\":{\"name\":\"updateMetadata\",\"async\":false,\"parameters\":[{\"name\":\"patch\",\"type\":\"Partial<Record<string>>\",\"optional\":false}],\"returnType\":\"Record<string>\",\"isStatic\":false,\"isPublic\":true},\"getThumbnail\":{\"name\":\"getThumbnail\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<Image | null>\",\"isStatic\":false,\"isPublic\":true},\"setThumbnail\":{\"name\":\"setThumbnail\",\"async\":true,\"parameters\":[{\"name\":\"image\",\"type\":\"Image\",\"optional\":false}],\"returnType\":\"Promise<void>\",\"isStatic\":false,\"isPublic\":true},\"generateThumbnail\":{\"name\":\"generateThumbnail\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"ThumbnailOptions\",\"optional\":false}],\"returnType\":\"Promise<Image>\",\"isStatic\":false,\"isPublic\":true}},\"decoratorConfig\":{\"tableStrategy\":\"sti\",\"api\":false,\"mcp\":false,\"cli\":false,\"tableName\":\"contents\"},\"extends\":\"Content\",\"exportName\":\"ContentDocument\",\"collectionExportName\":\"ContentDocumentCollection\",\"validationRules\":[{\"field\":\"name\",\"rule\":\"required\",\"fieldType\":\"text\"}],\"schema\":{\"tableName\":\"contents\",\"ddl\":\"CREATE TABLE IF NOT EXISTS \\\"contents\\\" (\\n \\\"id\\\" UUID PRIMARY KEY NOT NULL,\\n \\\"slug\\\" TEXT NOT NULL,\\n \\\"context\\\" TEXT NOT NULL DEFAULT '',\\n \\\"_meta_type\\\" TEXT NOT NULL,\\n \\\"_meta_data\\\" JSON,\\n \\\"created_at\\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\\"updated_at\\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\\"tenant_id\\\" UUID,\\n \\\"type\\\" TEXT,\\n \\\"variant\\\" TEXT,\\n \\\"file_key\\\" TEXT,\\n \\\"author\\\" TEXT,\\n \\\"name\\\" TEXT DEFAULT '',\\n \\\"title\\\" TEXT,\\n \\\"description\\\" TEXT,\\n \\\"body\\\" TEXT,\\n \\\"body_format\\\" TEXT,\\n \\\"publish_date\\\" TIMESTAMP,\\n \\\"url\\\" TEXT,\\n \\\"source\\\" TEXT,\\n \\\"original_url\\\" TEXT,\\n \\\"language\\\" TEXT,\\n \\\"tags\\\" JSON DEFAULT '[]',\\n \\\"category\\\" TEXT,\\n \\\"status\\\" TEXT DEFAULT 'draft',\\n \\\"state\\\" TEXT DEFAULT 'active',\\n \\\"metadata\\\" JSON DEFAULT '{}',\\n \\\"thumbnail_asset_id\\\" UUID,\\n \\\"feed_source_id\\\" UUID,\\n \\\"source_guid\\\" TEXT,\\n \\\"source_name\\\" TEXT,\\n \\\"source_homepage_url\\\" TEXT,\\n \\\"external_url\\\" TEXT,\\n \\\"original_published_at\\\" TIMESTAMP,\\n \\\"dedupe_key\\\" TEXT\\n);\",\"columns\":{\"id\":{\"type\":\"UUID\",\"primaryKey\":true,\"referenceKind\":\"id\",\"notNull\":true},\"slug\":{\"type\":\"TEXT\",\"notNull\":true},\"context\":{\"type\":\"TEXT\",\"notNull\":true,\"default\":\"\"},\"_meta_type\":{\"type\":\"TEXT\",\"notNull\":true},\"_meta_data\":{\"type\":\"JSON\",\"notNull\":false},\"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\":false},\"type\":{\"type\":\"TEXT\",\"notNull\":false},\"variant\":{\"type\":\"TEXT\",\"notNull\":false},\"file_key\":{\"type\":\"TEXT\",\"notNull\":false},\"author\":{\"type\":\"TEXT\",\"notNull\":false},\"name\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"\"},\"title\":{\"type\":\"TEXT\",\"notNull\":false},\"description\":{\"type\":\"TEXT\",\"notNull\":false},\"body\":{\"type\":\"TEXT\",\"notNull\":false},\"body_format\":{\"type\":\"TEXT\",\"notNull\":false},\"publish_date\":{\"type\":\"TIMESTAMP\",\"notNull\":false},\"url\":{\"type\":\"TEXT\",\"notNull\":false},\"source\":{\"type\":\"TEXT\",\"notNull\":false},\"original_url\":{\"type\":\"TEXT\",\"notNull\":false},\"language\":{\"type\":\"TEXT\",\"notNull\":false},\"tags\":{\"type\":\"JSON\",\"notNull\":false,\"default\":[]},\"category\":{\"type\":\"TEXT\",\"notNull\":false},\"status\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"draft\"},\"state\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"active\"},\"metadata\":{\"type\":\"JSON\",\"notNull\":false,\"default\":{}},\"thumbnail_asset_id\":{\"type\":\"UUID\",\"referenceKind\":\"crossPackageRef\",\"notNull\":false},\"feed_source_id\":{\"type\":\"UUID\",\"referenceKind\":\"foreignKey\",\"notNull\":false,\"foreignKey\":{\"table\":\"content_feed_sources\",\"column\":\"id\",\"onDelete\":\"NO ACTION\",\"onUpdate\":\"CASCADE\"}},\"source_guid\":{\"type\":\"TEXT\",\"notNull\":false},\"source_name\":{\"type\":\"TEXT\",\"notNull\":false},\"source_homepage_url\":{\"type\":\"TEXT\",\"notNull\":false},\"external_url\":{\"type\":\"TEXT\",\"notNull\":false},\"original_published_at\":{\"type\":\"TIMESTAMP\",\"notNull\":false},\"dedupe_key\":{\"type\":\"TEXT\",\"notNull\":false}},\"indexes\":[{\"name\":\"contents_slug_context_meta_type_idx\",\"columns\":[\"tenant_id\",\"slug\",\"context\",\"_meta_type\"],\"unique\":true},{\"name\":\"contents_meta_type_idx\",\"columns\":[\"_meta_type\"]},{\"name\":\"contents_tenant_id_publish_date_idx\",\"columns\":[\"tenant_id\",\"publish_date\"]},{\"name\":\"contents_tenant_id_created_at_idx\",\"columns\":[\"tenant_id\",\"created_at\"]},{\"name\":\"contents_thumbnail_asset_id_idx\",\"columns\":[\"thumbnail_asset_id\"]},{\"name\":\"contents_feed_source_id_idx\",\"columns\":[\"feed_source_id\"]}],\"version\":\"8107d801\"}},\"@happyvertical/smrt-content:Mirror\":{\"name\":\"mirror\",\"className\":\"Mirror\",\"qualifiedName\":\"@happyvertical/smrt-content:Mirror\",\"collection\":\"contents\",\"filePath\":\"/home/runner/work/smrt/smrt/packages/content/src/content-types.ts\",\"packageName\":\"@happyvertical/smrt-content\",\"fields\":{\"created_at\":{\"type\":\"datetime\",\"required\":false},\"updated_at\":{\"type\":\"datetime\",\"required\":false},\"tenantId\":{\"type\":\"text\",\"required\":false,\"_meta\":{\"sqlType\":\"UUID\",\"nullable\":true,\"__tenancy\":{\"isTenantIdField\":true,\"autoFilter\":true,\"required\":false,\"autoPopulate\":true,\"nullable\":true}}},\"type\":{\"type\":\"text\",\"required\":false},\"variant\":{\"type\":\"text\",\"required\":false},\"fileKey\":{\"type\":\"text\",\"required\":false},\"author\":{\"type\":\"text\",\"required\":false},\"name\":{\"type\":\"text\",\"required\":true,\"default\":\"\",\"_meta\":{\"required\":true}},\"title\":{\"type\":\"text\",\"required\":false},\"description\":{\"type\":\"text\",\"required\":false},\"body\":{\"type\":\"text\",\"required\":false},\"bodyFormat\":{\"type\":\"text\",\"required\":false},\"publish_date\":{\"type\":\"datetime\",\"required\":false},\"url\":{\"type\":\"text\",\"required\":false},\"source\":{\"type\":\"text\",\"required\":false},\"original_url\":{\"type\":\"text\",\"required\":false},\"language\":{\"type\":\"text\",\"required\":false},\"tags\":{\"type\":\"json\",\"required\":false,\"default\":[]},\"category\":{\"type\":\"text\",\"required\":false},\"status\":{\"type\":\"text\",\"required\":false,\"default\":\"draft\"},\"state\":{\"type\":\"text\",\"required\":false,\"default\":\"active\"},\"metadata\":{\"type\":\"json\",\"required\":false,\"default\":{}},\"thumbnailAssetId\":{\"type\":\"crossPackageRef\",\"required\":false,\"related\":\"@happyvertical/smrt-assets:Asset\"},\"feedSourceId\":{\"type\":\"foreignKey\",\"required\":false,\"related\":\"ContentFeedSource\"},\"sourceGuid\":{\"type\":\"text\",\"required\":false},\"sourceName\":{\"type\":\"text\",\"required\":false},\"sourceHomepageUrl\":{\"type\":\"text\",\"required\":false},\"externalUrl\":{\"type\":\"text\",\"required\":false},\"originalPublishedAt\":{\"type\":\"datetime\",\"required\":false},\"dedupeKey\":{\"type\":\"text\",\"required\":false}},\"methods\":{\"withDatabase\":{\"name\":\"withDatabase\",\"async\":true,\"parameters\":[{\"name\":\"db\",\"type\":\"DatabaseInterface\",\"optional\":false},{\"name\":\"operation\",\"type\":\"Function\",\"optional\":false}],\"returnType\":\"Promise<T>\",\"isStatic\":false,\"isPublic\":true},\"getAiUsageSnapshot\":{\"name\":\"getAiUsageSnapshot\",\"async\":false,\"parameters\":[],\"returnType\":\"AiUsageSnapshot | undefined\",\"isStatic\":false,\"isPublic\":true},\"resetAiUsage\":{\"name\":\"resetAiUsage\",\"async\":false,\"parameters\":[],\"returnType\":\"void\",\"isStatic\":false,\"isPublic\":true},\"listAiUsage\":{\"name\":\"listAiUsage\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"AiUsageListOptions\",\"optional\":true}],\"returnType\":\"Promise<SmrtAiUsageRecord[]>\",\"isStatic\":false,\"isPublic\":true},\"summarizeAiUsage\":{\"name\":\"summarizeAiUsage\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"AiUsageSummaryOptions\",\"optional\":true}],\"returnType\":\"Promise<Record<string, AiUsageStats>>\",\"isStatic\":false,\"isPublic\":true},\"destroy\":{\"name\":\"destroy\",\"async\":false,\"parameters\":[],\"returnType\":\"void\",\"isStatic\":false,\"isPublic\":true},\"markAsPersisted\":{\"name\":\"markAsPersisted\",\"async\":false,\"parameters\":[],\"returnType\":\"void\",\"isStatic\":false,\"isPublic\":true},\"requireInsertOnSave\":{\"name\":\"requireInsertOnSave\",\"async\":false,\"parameters\":[],\"returnType\":\"void\",\"isStatic\":false,\"isPublic\":true},\"initialize\":{\"name\":\"initialize\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise\",\"isStatic\":false,\"isPublic\":true},\"loadDataFromDb\":{\"name\":\"loadDataFromDb\",\"async\":true,\"parameters\":[{\"name\":\"data\",\"type\":\"Record<string>\",\"optional\":false}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getFields\":{\"name\":\"getFields\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<any>\",\"isStatic\":false,\"isPublic\":true},\"toJSON\":{\"name\":\"toJSON\",\"async\":false,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"toPlainObject\":{\"name\":\"toPlainObject\",\"async\":false,\"parameters\":[],\"returnType\":\"Record<string>\",\"isStatic\":false,\"isPublic\":true},\"toPublicJSON\":{\"name\":\"toPublicJSON\",\"async\":false,\"parameters\":[{\"name\":\"options\",\"type\":\"PublicJsonOptions\",\"optional\":true}],\"returnType\":\"Record<string>\",\"isStatic\":false,\"isPublic\":true},\"getId\":{\"name\":\"getId\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getSlug\":{\"name\":\"getSlug\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getSavedId\":{\"name\":\"getSavedId\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"isSaved\":{\"name\":\"isSaved\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"save\":{\"name\":\"save\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"classifyConstraintError\":{\"name\":\"classifyConstraintError\",\"async\":false,\"parameters\":[{\"name\":\"message\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"'unique' | 'not_null' | null\",\"isStatic\":true,\"isPublic\":true},\"loadFromId\":{\"name\":\"loadFromId\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"loadFromSlug\":{\"name\":\"loadFromSlug\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"is\":{\"name\":\"is\",\"async\":true,\"parameters\":[{\"name\":\"criteria\",\"type\":\"string\",\"optional\":false},{\"name\":\"options\",\"type\":\"AiOperationOptions\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"do\":{\"name\":\"do\",\"async\":true,\"parameters\":[{\"name\":\"instructions\",\"type\":\"string\",\"optional\":false},{\"name\":\"options\",\"type\":\"AiOperationOptions\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"describe\":{\"name\":\"describe\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"AiOperationOptions\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"delete\":{\"name\":\"delete\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<void>\",\"isStatic\":false,\"isPublic\":true},\"isRelatedLoaded\":{\"name\":\"isRelatedLoaded\",\"async\":false,\"parameters\":[{\"name\":\"fieldName\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"boolean\",\"isStatic\":false,\"isPublic\":true},\"_setLoadedRelationship\":{\"name\":\"_setLoadedRelationship\",\"async\":false,\"parameters\":[{\"name\":\"fieldName\",\"type\":\"string\",\"optional\":false},{\"name\":\"value\",\"type\":\"any\",\"optional\":false}],\"returnType\":\"void\",\"isStatic\":false,\"isPublic\":true},\"loadRelated\":{\"name\":\"loadRelated\",\"async\":true,\"parameters\":[{\"name\":\"fieldName\",\"type\":\"string\",\"optional\":false},{\"name\":\"opts\",\"type\":\"LoadRelatedOptions\",\"optional\":true}],\"returnType\":\"Promise<any>\",\"isStatic\":false,\"isPublic\":true},\"loadRelatedMany\":{\"name\":\"loadRelatedMany\",\"async\":true,\"parameters\":[{\"name\":\"fieldName\",\"type\":\"string\",\"optional\":false},{\"name\":\"opts\",\"type\":\"LoadRelatedOptions\",\"optional\":true}],\"returnType\":\"Promise<any[]>\",\"isStatic\":false,\"isPublic\":true},\"getRelated\":{\"name\":\"getRelated\",\"async\":true,\"parameters\":[{\"name\":\"fieldName\",\"type\":\"string\",\"optional\":false},{\"name\":\"opts\",\"type\":\"LoadRelatedOptions\",\"optional\":true}],\"returnType\":\"Promise<any>\",\"isStatic\":false,\"isPublic\":true},\"getAvailableTools\":{\"name\":\"getAvailableTools\",\"async\":false,\"parameters\":[],\"returnType\":\"AITool[]\",\"isStatic\":false,\"isPublic\":true},\"executeToolCall\":{\"name\":\"executeToolCall\",\"async\":true,\"parameters\":[{\"name\":\"toolCall\",\"type\":\"ToolCall\",\"optional\":false}],\"returnType\":\"Promise<ToolCallResult>\",\"isStatic\":false,\"isPublic\":true},\"remember\":{\"name\":\"remember\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":false}],\"returnType\":\"Promise<void>\",\"isStatic\":false,\"isPublic\":true},\"recall\":{\"name\":\"recall\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":false}],\"returnType\":\"Promise\",\"isStatic\":false,\"isPublic\":true},\"recallAll\":{\"name\":\"recallAll\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":true}],\"returnType\":\"Promise<Map<string>>\",\"isStatic\":false,\"isPublic\":true},\"forget\":{\"name\":\"forget\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":false}],\"returnType\":\"Promise<void>\",\"isStatic\":false,\"isPublic\":true},\"forgetScope\":{\"name\":\"forgetScope\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":false}],\"returnType\":\"Promise<number>\",\"isStatic\":false,\"isPublic\":true},\"generateEmbeddings\":{\"name\":\"generateEmbeddings\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"GenerateEmbeddingsOptions\",\"optional\":true}],\"returnType\":\"Promise<void>\",\"isStatic\":false,\"isPublic\":true},\"getEmbedding\":{\"name\":\"getEmbedding\",\"async\":true,\"parameters\":[{\"name\":\"fieldName\",\"type\":\"string\",\"optional\":false},{\"name\":\"model\",\"type\":\"string\",\"optional\":true}],\"returnType\":\"Promise<number[] | null>\",\"isStatic\":false,\"isPublic\":true},\"hasStaleEmbeddings\":{\"name\":\"hasStaleEmbeddings\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<boolean>\",\"isStatic\":false,\"isPublic\":true},\"clearEmbeddings\":{\"name\":\"clearEmbeddings\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<void>\",\"isStatic\":false,\"isPublic\":true},\"resolveGovernance\":{\"name\":\"resolveGovernance\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<ResolvedContentGovernance>\",\"isStatic\":false,\"isPublic\":true},\"loadReferences\":{\"name\":\"loadReferences\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"addReference\":{\"name\":\"addReference\",\"async\":true,\"parameters\":[{\"name\":\"content\",\"type\":\"Content | string\",\"optional\":false},{\"name\":\"options\",\"type\":\"object\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"removeReference\":{\"name\":\"removeReference\",\"async\":true,\"parameters\":[{\"name\":\"targetId\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getReferences\":{\"name\":\"getReferences\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getReferenceEdges\":{\"name\":\"getReferenceEdges\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<Array<object>>\",\"isStatic\":false,\"isPublic\":true},\"getReferenceDrift\":{\"name\":\"getReferenceDrift\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<Array<object>>\",\"isStatic\":false,\"isPublic\":true},\"isGoverned\":{\"name\":\"isGoverned\",\"async\":false,\"parameters\":[],\"returnType\":\"boolean\",\"isStatic\":false,\"isPublic\":true},\"getFactLinks\":{\"name\":\"getFactLinks\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getFacts\":{\"name\":\"getFacts\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":true}],\"returnType\":\"Promise<Fact[]>\",\"isStatic\":false,\"isPublic\":true},\"addFact\":{\"name\":\"addFact\",\"async\":true,\"parameters\":[{\"name\":\"fact\",\"type\":\"Fact | string\",\"optional\":false},{\"name\":\"relationship\",\"type\":\"FactContentRelationship\",\"optional\":true},{\"name\":\"metadata\",\"type\":\"Record<string>\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"removeFact\":{\"name\":\"removeFact\",\"async\":true,\"parameters\":[{\"name\":\"factId\",\"type\":\"string\",\"optional\":false},{\"name\":\"relationship\",\"type\":\"FactContentRelationship\",\"optional\":true}],\"returnType\":\"Promise<void>\",\"isStatic\":false,\"isPublic\":true},\"syncFacts\":{\"name\":\"syncFacts\",\"async\":true,\"parameters\":[{\"name\":\"factIds\",\"type\":\"string[]\",\"optional\":false},{\"name\":\"relationship\",\"type\":\"FactContentRelationship\",\"optional\":true}],\"returnType\":\"Promise<object>\",\"isStatic\":false,\"isPublic\":true},\"browseFacts\":{\"name\":\"browseFacts\",\"async\":true,\"parameters\":[{\"name\":\"query\",\"type\":\"any\",\"optional\":true,\"default\":\"\"},{\"name\":\"options\",\"type\":\"object\",\"optional\":true}],\"returnType\":\"Promise<Fact[]>\",\"isStatic\":false,\"isPublic\":true},\"repairFactAudit\":{\"name\":\"repairFactAudit\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"repairFactAuditAction\":{\"name\":\"repairFactAuditAction\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"repairFactEvidence\":{\"name\":\"repairFactEvidence\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"FactAuditResourceRepairOptions\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"repairFactEvidenceAction\":{\"name\":\"repairFactEvidenceAction\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"FactAuditResourceRepairOptions\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"recheckFactClaims\":{\"name\":\"recheckFactClaims\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"FactAuditClaimRecheckOptions\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"recheckFactClaimsAction\":{\"name\":\"recheckFactClaimsAction\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"FactAuditClaimRecheckOptions\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"updateFactEvidenceStatus\":{\"name\":\"updateFactEvidenceStatus\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"FactEvidenceStatusUpdateOptions\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"updateFactEvidenceStatusAction\":{\"name\":\"updateFactEvidenceStatusAction\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"FactEvidenceStatusUpdateOptions\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getFactAuditState\":{\"name\":\"getFactAuditState\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<FactAuditState>\",\"isStatic\":false,\"isPublic\":true},\"getFactAuditStateAction\":{\"name\":\"getFactAuditStateAction\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getFactsState\":{\"name\":\"getFactsState\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"syncFactsState\":{\"name\":\"syncFactsState\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"createVersion\":{\"name\":\"createVersion\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"CreateContentVersionOptions\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getVersions\":{\"name\":\"getVersions\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"restoreFromVersion\":{\"name\":\"restoreFromVersion\",\"async\":true,\"parameters\":[{\"name\":\"versionNumber\",\"type\":\"number\",\"optional\":false}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getReviews\":{\"name\":\"getReviews\",\"async\":true,\"parameters\":[{\"name\":\"kind\",\"type\":\"any\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"listReviews\":{\"name\":\"listReviews\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getReviewRequirements\":{\"name\":\"getReviewRequirements\",\"async\":true,\"parameters\":[{\"name\":\"profileKey\",\"type\":\"string\",\"optional\":false},{\"name\":\"governance\",\"type\":\"ResolvedContentGovernance\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getGovernanceState\":{\"name\":\"getGovernanceState\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<ContentGovernanceState>\",\"isStatic\":false,\"isPublic\":true},\"getGovernanceStateAction\":{\"name\":\"getGovernanceStateAction\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"listReviewProfilesAction\":{\"name\":\"listReviewProfilesAction\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"evaluateReviewProfile\":{\"name\":\"evaluateReviewProfile\",\"async\":true,\"parameters\":[{\"name\":\"profileKey\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"Promise<ContentReviewProfileEvaluation>\",\"isStatic\":false,\"isPublic\":true},\"evaluateReviewProfileAction\":{\"name\":\"evaluateReviewProfileAction\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"isReadyForReviewProfile\":{\"name\":\"isReadyForReviewProfile\",\"async\":true,\"parameters\":[{\"name\":\"profileKey\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"Promise<boolean>\",\"isStatic\":false,\"isPublic\":true},\"getPublishedTransparency\":{\"name\":\"getPublishedTransparency\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getPublishedTransparencyAction\":{\"name\":\"getPublishedTransparencyAction\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"previewTransparency\":{\"name\":\"previewTransparency\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"previewTransparencyAction\":{\"name\":\"previewTransparencyAction\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"runReview\":{\"name\":\"runReview\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"RunContentReviewOptions\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"runReviewAction\":{\"name\":\"runReviewAction\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"RunContentReviewOptions\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"reviewFacts\":{\"name\":\"reviewFacts\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"Omit<RunContentReviewOptions, 'kind'>\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"reviewSafety\":{\"name\":\"reviewSafety\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"Omit<RunContentReviewOptions, 'kind'>\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getCorrections\":{\"name\":\"getCorrections\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"listCorrections\":{\"name\":\"listCorrections\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"issueCorrection\":{\"name\":\"issueCorrection\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"IssueContentCorrectionOptions\",\"optional\":false}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"issueCorrectionAction\":{\"name\":\"issueCorrectionAction\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"IssueContentCorrectionOptions\",\"optional\":false}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"listVersions\":{\"name\":\"listVersions\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"mutateVersionAction\":{\"name\":\"mutateVersionAction\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"any\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getCategorySegments\":{\"name\":\"getCategorySegments\",\"async\":false,\"parameters\":[],\"returnType\":\"string[]\",\"isStatic\":false,\"isPublic\":true},\"getParentCategory\":{\"name\":\"getParentCategory\",\"async\":false,\"parameters\":[],\"returnType\":\"string | null\",\"isStatic\":false,\"isPublic\":true},\"getRootCategory\":{\"name\":\"getRootCategory\",\"async\":false,\"parameters\":[],\"returnType\":\"string | null\",\"isStatic\":false,\"isPublic\":true},\"getAncestorPaths\":{\"name\":\"getAncestorPaths\",\"async\":false,\"parameters\":[],\"returnType\":\"string[]\",\"isStatic\":false,\"isPublic\":true},\"isInCategory\":{\"name\":\"isInCategory\",\"async\":false,\"parameters\":[{\"name\":\"categoryPath\",\"type\":\"string\",\"optional\":false},{\"name\":\"includeChildren\",\"type\":\"any\",\"optional\":true}],\"returnType\":\"boolean\",\"isStatic\":false,\"isPublic\":true},\"getAssets\":{\"name\":\"getAssets\",\"async\":true,\"parameters\":[{\"name\":\"relationship\",\"type\":\"string\",\"optional\":true}],\"returnType\":\"Promise<Asset[]>\",\"isStatic\":false,\"isPublic\":true},\"addAsset\":{\"name\":\"addAsset\",\"async\":true,\"parameters\":[{\"name\":\"asset\",\"type\":\"Asset\",\"optional\":false},{\"name\":\"relationship\",\"type\":\"any\",\"optional\":true,\"default\":\"attachment\"},{\"name\":\"sortOrder\",\"type\":\"any\",\"optional\":true}],\"returnType\":\"Promise<void>\",\"isStatic\":false,\"isPublic\":true},\"removeAsset\":{\"name\":\"removeAsset\",\"async\":true,\"parameters\":[{\"name\":\"assetId\",\"type\":\"string\",\"optional\":false},{\"name\":\"relationship\",\"type\":\"string\",\"optional\":true}],\"returnType\":\"Promise<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\":\"metadata\",\"type\":\"Record<string> | null | undefined\",\"optional\":false}],\"returnType\":\"void\",\"isStatic\":false,\"isPublic\":true},\"updateMetadata\":{\"name\":\"updateMetadata\",\"async\":false,\"parameters\":[{\"name\":\"patch\",\"type\":\"Partial<Record<string>>\",\"optional\":false}],\"returnType\":\"Record<string>\",\"isStatic\":false,\"isPublic\":true},\"getThumbnail\":{\"name\":\"getThumbnail\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<Image | null>\",\"isStatic\":false,\"isPublic\":true},\"setThumbnail\":{\"name\":\"setThumbnail\",\"async\":true,\"parameters\":[{\"name\":\"image\",\"type\":\"Image\",\"optional\":false}],\"returnType\":\"Promise<void>\",\"isStatic\":false,\"isPublic\":true},\"generateThumbnail\":{\"name\":\"generateThumbnail\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"ThumbnailOptions\",\"optional\":false}],\"returnType\":\"Promise<Image>\",\"isStatic\":false,\"isPublic\":true}},\"decoratorConfig\":{\"tableStrategy\":\"sti\",\"api\":false,\"mcp\":false,\"cli\":false,\"tableName\":\"contents\"},\"extends\":\"Content\",\"exportName\":\"Mirror\",\"collectionExportName\":\"MirrorCollection\",\"validationRules\":[{\"field\":\"name\",\"rule\":\"required\",\"fieldType\":\"text\"}],\"schema\":{\"tableName\":\"contents\",\"ddl\":\"CREATE TABLE IF NOT EXISTS \\\"contents\\\" (\\n \\\"id\\\" UUID PRIMARY KEY NOT NULL,\\n \\\"slug\\\" TEXT NOT NULL,\\n \\\"context\\\" TEXT NOT NULL DEFAULT '',\\n \\\"_meta_type\\\" TEXT NOT NULL,\\n \\\"_meta_data\\\" JSON,\\n \\\"created_at\\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\\"updated_at\\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\\"tenant_id\\\" UUID,\\n \\\"type\\\" TEXT,\\n \\\"variant\\\" TEXT,\\n \\\"file_key\\\" TEXT,\\n \\\"author\\\" TEXT,\\n \\\"name\\\" TEXT DEFAULT '',\\n \\\"title\\\" TEXT,\\n \\\"description\\\" TEXT,\\n \\\"body\\\" TEXT,\\n \\\"body_format\\\" TEXT,\\n \\\"publish_date\\\" TIMESTAMP,\\n \\\"url\\\" TEXT,\\n \\\"source\\\" TEXT,\\n \\\"original_url\\\" TEXT,\\n \\\"language\\\" TEXT,\\n \\\"tags\\\" JSON DEFAULT '[]',\\n \\\"category\\\" TEXT,\\n \\\"status\\\" TEXT DEFAULT 'draft',\\n \\\"state\\\" TEXT DEFAULT 'active',\\n \\\"metadata\\\" JSON DEFAULT '{}',\\n \\\"thumbnail_asset_id\\\" UUID,\\n \\\"feed_source_id\\\" UUID,\\n \\\"source_guid\\\" TEXT,\\n \\\"source_name\\\" TEXT,\\n \\\"source_homepage_url\\\" TEXT,\\n \\\"external_url\\\" TEXT,\\n \\\"original_published_at\\\" TIMESTAMP,\\n \\\"dedupe_key\\\" TEXT\\n);\",\"columns\":{\"id\":{\"type\":\"UUID\",\"primaryKey\":true,\"referenceKind\":\"id\",\"notNull\":true},\"slug\":{\"type\":\"TEXT\",\"notNull\":true},\"context\":{\"type\":\"TEXT\",\"notNull\":true,\"default\":\"\"},\"_meta_type\":{\"type\":\"TEXT\",\"notNull\":true},\"_meta_data\":{\"type\":\"JSON\",\"notNull\":false},\"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\":false},\"type\":{\"type\":\"TEXT\",\"notNull\":false},\"variant\":{\"type\":\"TEXT\",\"notNull\":false},\"file_key\":{\"type\":\"TEXT\",\"notNull\":false},\"author\":{\"type\":\"TEXT\",\"notNull\":false},\"name\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"\"},\"title\":{\"type\":\"TEXT\",\"notNull\":false},\"description\":{\"type\":\"TEXT\",\"notNull\":false},\"body\":{\"type\":\"TEXT\",\"notNull\":false},\"body_format\":{\"type\":\"TEXT\",\"notNull\":false},\"publish_date\":{\"type\":\"TIMESTAMP\",\"notNull\":false},\"url\":{\"type\":\"TEXT\",\"notNull\":false},\"source\":{\"type\":\"TEXT\",\"notNull\":false},\"original_url\":{\"type\":\"TEXT\",\"notNull\":false},\"language\":{\"type\":\"TEXT\",\"notNull\":false},\"tags\":{\"type\":\"JSON\",\"notNull\":false,\"default\":[]},\"category\":{\"type\":\"TEXT\",\"notNull\":false},\"status\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"draft\"},\"state\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"active\"},\"metadata\":{\"type\":\"JSON\",\"notNull\":false,\"default\":{}},\"thumbnail_asset_id\":{\"type\":\"UUID\",\"referenceKind\":\"crossPackageRef\",\"notNull\":false},\"feed_source_id\":{\"type\":\"UUID\",\"referenceKind\":\"foreignKey\",\"notNull\":false,\"foreignKey\":{\"table\":\"content_feed_sources\",\"column\":\"id\",\"onDelete\":\"NO ACTION\",\"onUpdate\":\"CASCADE\"}},\"source_guid\":{\"type\":\"TEXT\",\"notNull\":false},\"source_name\":{\"type\":\"TEXT\",\"notNull\":false},\"source_homepage_url\":{\"type\":\"TEXT\",\"notNull\":false},\"external_url\":{\"type\":\"TEXT\",\"notNull\":false},\"original_published_at\":{\"type\":\"TIMESTAMP\",\"notNull\":false},\"dedupe_key\":{\"type\":\"TEXT\",\"notNull\":false}},\"indexes\":[{\"name\":\"contents_slug_context_meta_type_idx\",\"columns\":[\"tenant_id\",\"slug\",\"context\",\"_meta_type\"],\"unique\":true},{\"name\":\"contents_meta_type_idx\",\"columns\":[\"_meta_type\"]},{\"name\":\"contents_tenant_id_publish_date_idx\",\"columns\":[\"tenant_id\",\"publish_date\"]},{\"name\":\"contents_tenant_id_created_at_idx\",\"columns\":[\"tenant_id\",\"created_at\"]},{\"name\":\"contents_thumbnail_asset_id_idx\",\"columns\":[\"thumbnail_asset_id\"]},{\"name\":\"contents_feed_source_id_idx\",\"columns\":[\"feed_source_id\"]}],\"version\":\"088da7e4\"}},\"@happyvertical/smrt-content:ContentVersion\":{\"name\":\"contentversion\",\"className\":\"ContentVersion\",\"qualifiedName\":\"@happyvertical/smrt-content:ContentVersion\",\"collection\":\"contentversions\",\"filePath\":\"/home/runner/work/smrt/smrt/packages/content/src/content-version.ts\",\"packageName\":\"@happyvertical/smrt-content\",\"fields\":{\"contentId\":{\"type\":\"foreignKey\",\"required\":true,\"related\":\"Content\",\"_meta\":{\"required\":true}},\"version\":{\"type\":\"integer\",\"required\":true,\"default\":1},\"kind\":{\"type\":\"text\",\"required\":false,\"default\":\"manual\"},\"title\":{\"type\":\"text\",\"required\":false},\"description\":{\"type\":\"text\",\"required\":false},\"body\":{\"type\":\"text\",\"required\":false},\"status\":{\"type\":\"text\",\"required\":false},\"summary\":{\"type\":\"text\",\"required\":false},\"snapshot\":{\"type\":\"text\",\"required\":false},\"metadata\":{\"type\":\"text\",\"required\":false},\"tenantId\":{\"type\":\"text\",\"required\":false,\"_meta\":{\"sqlType\":\"UUID\",\"nullable\":true,\"__tenancy\":{\"isTenantIdField\":true,\"autoFilter\":true,\"required\":false,\"autoPopulate\":true,\"nullable\":true,\"mode\":\"optional\",\"field\":\"tenantId\",\"allowSuperAdminBypass\":false}}},\"createdAt\":{\"type\":\"text\",\"required\":false},\"updatedAt\":{\"type\":\"text\",\"required\":false}},\"methods\":{\"getSnapshot\":{\"name\":\"getSnapshot\",\"async\":false,\"parameters\":[],\"returnType\":\"Record<string>\",\"isStatic\":false,\"isPublic\":true},\"getMetadata\":{\"name\":\"getMetadata\",\"async\":false,\"parameters\":[],\"returnType\":\"ContentVersionMetadata\",\"isStatic\":false,\"isPublic\":true},\"getTransparency\":{\"name\":\"getTransparency\",\"async\":false,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getTransparencyAction\":{\"name\":\"getTransparencyAction\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true}},\"decoratorConfig\":{\"tableName\":\"content_versions\",\"conflictColumns\":[\"content_id\",\"version\"],\"api\":{\"include\":[\"list\",\"get\",\"create\",\"getTransparencyAction\"],\"routes\":{\"getTransparencyAction\":{\"method\":\"GET\",\"path\":\"transparency\"}}},\"mcp\":{\"include\":[\"list\",\"get\",\"create\"]},\"cli\":true,\"tenantScoped\":{\"mode\":\"optional\"}},\"extends\":\"SmrtObject\",\"exportName\":\"ContentVersion\",\"collectionExportName\":\"ContentVersionCollection\",\"validationRules\":[{\"field\":\"contentId\",\"rule\":\"required\",\"fieldType\":\"foreignKey\"},{\"field\":\"version\",\"rule\":\"required\",\"fieldType\":\"integer\"}],\"schema\":{\"tableName\":\"content_versions\",\"ddl\":\"CREATE TABLE IF NOT EXISTS \\\"content_versions\\\" (\\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 \\\"content_id\\\" UUID NOT NULL,\\n \\\"version\\\" INTEGER NOT NULL DEFAULT 1,\\n \\\"kind\\\" TEXT DEFAULT 'manual',\\n \\\"title\\\" TEXT,\\n \\\"description\\\" TEXT,\\n \\\"body\\\" TEXT,\\n \\\"status\\\" TEXT,\\n \\\"summary\\\" TEXT,\\n \\\"snapshot\\\" TEXT,\\n \\\"metadata\\\" TEXT,\\n \\\"tenant_id\\\" UUID\\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\"},\"content_id\":{\"type\":\"UUID\",\"referenceKind\":\"foreignKey\",\"notNull\":true,\"unique\":false,\"foreignKey\":{\"table\":\"contents\",\"column\":\"id\",\"onDelete\":\"CASCADE\",\"onUpdate\":\"CASCADE\"}},\"version\":{\"type\":\"INTEGER\",\"notNull\":true,\"unique\":false,\"default\":1},\"kind\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"manual\"},\"title\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"description\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"body\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"status\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"summary\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"snapshot\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"metadata\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"tenant_id\":{\"type\":\"UUID\",\"referenceKind\":\"tenantId\",\"notNull\":false,\"unique\":false}},\"indexes\":[{\"name\":\"content_versions_content_id_version_idx\",\"columns\":[\"content_id\",\"version\"],\"unique\":true},{\"name\":\"content_versions_slug_context_idx\",\"columns\":[\"slug\",\"context\"]},{\"name\":\"content_versions_tenant_id_created_at_idx\",\"columns\":[\"tenant_id\",\"created_at\"]}],\"version\":\"66cda211\"}},\"@happyvertical/smrt-content:ContentVersionCollection\":{\"name\":\"contentversioncollection\",\"className\":\"ContentVersionCollection\",\"qualifiedName\":\"@happyvertical/smrt-content:ContentVersionCollection\",\"collection\":\"contentversions\",\"filePath\":\"/home/runner/work/smrt/smrt/packages/content/src/content-versions.ts\",\"packageName\":\"@happyvertical/smrt-content\",\"fields\":{},\"methods\":{\"listForContent\":{\"name\":\"listForContent\",\"async\":true,\"parameters\":[{\"name\":\"contentId\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"Promise<ContentVersion[]>\",\"isStatic\":false,\"isPublic\":true},\"getLatestForContent\":{\"name\":\"getLatestForContent\",\"async\":true,\"parameters\":[{\"name\":\"contentId\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"Promise<ContentVersion | null>\",\"isStatic\":false,\"isPublic\":true},\"getLatestPublishedForContent\":{\"name\":\"getLatestPublishedForContent\",\"async\":true,\"parameters\":[{\"name\":\"contentId\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"Promise<ContentVersion | null>\",\"isStatic\":false,\"isPublic\":true},\"getVersion\":{\"name\":\"getVersion\",\"async\":true,\"parameters\":[{\"name\":\"contentId\",\"type\":\"string\",\"optional\":false},{\"name\":\"versionNumber\",\"type\":\"number\",\"optional\":false}],\"returnType\":\"Promise<ContentVersion | null>\",\"isStatic\":false,\"isPublic\":true},\"getNextVersionNumber\":{\"name\":\"getNextVersionNumber\",\"async\":true,\"parameters\":[{\"name\":\"contentId\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"Promise<number>\",\"isStatic\":false,\"isPublic\":true},\"createSnapshot\":{\"name\":\"createSnapshot\",\"async\":true,\"parameters\":[{\"name\":\"content\",\"type\":\"Content\",\"optional\":false},{\"name\":\"options\",\"type\":\"CreateContentVersionOptions\",\"optional\":true}],\"returnType\":\"Promise<ContentVersion>\",\"isStatic\":false,\"isPublic\":true},\"restoreIntoContent\":{\"name\":\"restoreIntoContent\",\"async\":true,\"parameters\":[{\"name\":\"content\",\"type\":\"Content\",\"optional\":false},{\"name\":\"versionNumber\",\"type\":\"number\",\"optional\":false}],\"returnType\":\"Promise<Content>\",\"isStatic\":false,\"isPublic\":true}},\"decoratorConfig\":{\"tableName\":\"content_versions\"},\"extends\":\"SmrtCollection\",\"extendsTypeArg\":\"ContentVersion\",\"exportName\":\"ContentVersionCollection\",\"collectionExportName\":\"ContentVersionCollectionCollection\",\"schema\":{\"tableName\":\"content_versions\",\"ddl\":\"CREATE TABLE IF NOT EXISTS \\\"content_versions\\\" (\\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\":\"content_versions_slug_context_idx\",\"columns\":[\"slug\",\"context\"],\"unique\":true},{\"name\":\"content_versions_created_at_idx\",\"columns\":[\"created_at\"]}],\"version\":\"56acd806\"}},\"@happyvertical/smrt-content:Content\":{\"name\":\"content\",\"className\":\"Content\",\"qualifiedName\":\"@happyvertical/smrt-content:Content\",\"collection\":\"contents\",\"filePath\":\"/home/runner/work/smrt/smrt/packages/content/src/content.ts\",\"packageName\":\"@happyvertical/smrt-content\",\"fields\":{\"created_at\":{\"type\":\"datetime\",\"required\":false},\"updated_at\":{\"type\":\"datetime\",\"required\":false},\"tenantId\":{\"type\":\"text\",\"required\":false,\"_meta\":{\"sqlType\":\"UUID\",\"nullable\":true,\"__tenancy\":{\"isTenantIdField\":true,\"autoFilter\":true,\"required\":false,\"autoPopulate\":true,\"nullable\":true,\"mode\":\"optional\",\"field\":\"tenantId\",\"allowSuperAdminBypass\":false}}},\"type\":{\"type\":\"text\",\"required\":false},\"variant\":{\"type\":\"text\",\"required\":false},\"fileKey\":{\"type\":\"text\",\"required\":false},\"author\":{\"type\":\"text\",\"required\":false},\"name\":{\"type\":\"text\",\"required\":true,\"default\":\"\",\"_meta\":{\"required\":true}},\"title\":{\"type\":\"text\",\"required\":false},\"description\":{\"type\":\"text\",\"required\":false},\"body\":{\"type\":\"text\",\"required\":false},\"bodyFormat\":{\"type\":\"text\",\"required\":false},\"publish_date\":{\"type\":\"datetime\",\"required\":false},\"url\":{\"type\":\"text\",\"required\":false},\"source\":{\"type\":\"text\",\"required\":false},\"original_url\":{\"type\":\"text\",\"required\":false},\"language\":{\"type\":\"text\",\"required\":false},\"tags\":{\"type\":\"json\",\"required\":false,\"default\":[]},\"category\":{\"type\":\"text\",\"required\":false},\"status\":{\"type\":\"text\",\"required\":false,\"default\":\"draft\"},\"state\":{\"type\":\"text\",\"required\":false,\"default\":\"active\"},\"metadata\":{\"type\":\"json\",\"required\":false,\"default\":{}},\"thumbnailAssetId\":{\"type\":\"crossPackageRef\",\"required\":false,\"related\":\"@happyvertical/smrt-assets:Asset\"}},\"methods\":{\"withDatabase\":{\"name\":\"withDatabase\",\"async\":true,\"parameters\":[{\"name\":\"db\",\"type\":\"DatabaseInterface\",\"optional\":false},{\"name\":\"operation\",\"type\":\"Function\",\"optional\":false}],\"returnType\":\"Promise<T>\",\"isStatic\":false,\"isPublic\":true},\"getAiUsageSnapshot\":{\"name\":\"getAiUsageSnapshot\",\"async\":false,\"parameters\":[],\"returnType\":\"AiUsageSnapshot | undefined\",\"isStatic\":false,\"isPublic\":true},\"resetAiUsage\":{\"name\":\"resetAiUsage\",\"async\":false,\"parameters\":[],\"returnType\":\"void\",\"isStatic\":false,\"isPublic\":true},\"listAiUsage\":{\"name\":\"listAiUsage\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"AiUsageListOptions\",\"optional\":true}],\"returnType\":\"Promise<SmrtAiUsageRecord[]>\",\"isStatic\":false,\"isPublic\":true},\"summarizeAiUsage\":{\"name\":\"summarizeAiUsage\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"AiUsageSummaryOptions\",\"optional\":true}],\"returnType\":\"Promise<Record<string, AiUsageStats>>\",\"isStatic\":false,\"isPublic\":true},\"destroy\":{\"name\":\"destroy\",\"async\":false,\"parameters\":[],\"returnType\":\"void\",\"isStatic\":false,\"isPublic\":true},\"markAsPersisted\":{\"name\":\"markAsPersisted\",\"async\":false,\"parameters\":[],\"returnType\":\"void\",\"isStatic\":false,\"isPublic\":true},\"requireInsertOnSave\":{\"name\":\"requireInsertOnSave\",\"async\":false,\"parameters\":[],\"returnType\":\"void\",\"isStatic\":false,\"isPublic\":true},\"initialize\":{\"name\":\"initialize\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise\",\"isStatic\":false,\"isPublic\":true},\"loadDataFromDb\":{\"name\":\"loadDataFromDb\",\"async\":true,\"parameters\":[{\"name\":\"data\",\"type\":\"Record<string>\",\"optional\":false}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getFields\":{\"name\":\"getFields\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<any>\",\"isStatic\":false,\"isPublic\":true},\"toJSON\":{\"name\":\"toJSON\",\"async\":false,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"toPlainObject\":{\"name\":\"toPlainObject\",\"async\":false,\"parameters\":[],\"returnType\":\"Record<string>\",\"isStatic\":false,\"isPublic\":true},\"toPublicJSON\":{\"name\":\"toPublicJSON\",\"async\":false,\"parameters\":[{\"name\":\"options\",\"type\":\"PublicJsonOptions\",\"optional\":true}],\"returnType\":\"Record<string>\",\"isStatic\":false,\"isPublic\":true},\"getId\":{\"name\":\"getId\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getSlug\":{\"name\":\"getSlug\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getSavedId\":{\"name\":\"getSavedId\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"isSaved\":{\"name\":\"isSaved\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"save\":{\"name\":\"save\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"classifyConstraintError\":{\"name\":\"classifyConstraintError\",\"async\":false,\"parameters\":[{\"name\":\"message\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"'unique' | 'not_null' | null\",\"isStatic\":true,\"isPublic\":true},\"loadFromId\":{\"name\":\"loadFromId\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"loadFromSlug\":{\"name\":\"loadFromSlug\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"is\":{\"name\":\"is\",\"async\":true,\"parameters\":[{\"name\":\"criteria\",\"type\":\"string\",\"optional\":false},{\"name\":\"options\",\"type\":\"AiOperationOptions\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"do\":{\"name\":\"do\",\"async\":true,\"parameters\":[{\"name\":\"instructions\",\"type\":\"string\",\"optional\":false},{\"name\":\"options\",\"type\":\"AiOperationOptions\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"describe\":{\"name\":\"describe\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"AiOperationOptions\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"delete\":{\"name\":\"delete\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<void>\",\"isStatic\":false,\"isPublic\":true},\"isRelatedLoaded\":{\"name\":\"isRelatedLoaded\",\"async\":false,\"parameters\":[{\"name\":\"fieldName\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"boolean\",\"isStatic\":false,\"isPublic\":true},\"_setLoadedRelationship\":{\"name\":\"_setLoadedRelationship\",\"async\":false,\"parameters\":[{\"name\":\"fieldName\",\"type\":\"string\",\"optional\":false},{\"name\":\"value\",\"type\":\"any\",\"optional\":false}],\"returnType\":\"void\",\"isStatic\":false,\"isPublic\":true},\"loadRelated\":{\"name\":\"loadRelated\",\"async\":true,\"parameters\":[{\"name\":\"fieldName\",\"type\":\"string\",\"optional\":false},{\"name\":\"opts\",\"type\":\"LoadRelatedOptions\",\"optional\":true}],\"returnType\":\"Promise<any>\",\"isStatic\":false,\"isPublic\":true},\"loadRelatedMany\":{\"name\":\"loadRelatedMany\",\"async\":true,\"parameters\":[{\"name\":\"fieldName\",\"type\":\"string\",\"optional\":false},{\"name\":\"opts\",\"type\":\"LoadRelatedOptions\",\"optional\":true}],\"returnType\":\"Promise<any[]>\",\"isStatic\":false,\"isPublic\":true},\"getRelated\":{\"name\":\"getRelated\",\"async\":true,\"parameters\":[{\"name\":\"fieldName\",\"type\":\"string\",\"optional\":false},{\"name\":\"opts\",\"type\":\"LoadRelatedOptions\",\"optional\":true}],\"returnType\":\"Promise<any>\",\"isStatic\":false,\"isPublic\":true},\"getAvailableTools\":{\"name\":\"getAvailableTools\",\"async\":false,\"parameters\":[],\"returnType\":\"AITool[]\",\"isStatic\":false,\"isPublic\":true},\"executeToolCall\":{\"name\":\"executeToolCall\",\"async\":true,\"parameters\":[{\"name\":\"toolCall\",\"type\":\"ToolCall\",\"optional\":false}],\"returnType\":\"Promise<ToolCallResult>\",\"isStatic\":false,\"isPublic\":true},\"remember\":{\"name\":\"remember\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":false}],\"returnType\":\"Promise<void>\",\"isStatic\":false,\"isPublic\":true},\"recall\":{\"name\":\"recall\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":false}],\"returnType\":\"Promise\",\"isStatic\":false,\"isPublic\":true},\"recallAll\":{\"name\":\"recallAll\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":true}],\"returnType\":\"Promise<Map<string>>\",\"isStatic\":false,\"isPublic\":true},\"forget\":{\"name\":\"forget\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":false}],\"returnType\":\"Promise<void>\",\"isStatic\":false,\"isPublic\":true},\"forgetScope\":{\"name\":\"forgetScope\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":false}],\"returnType\":\"Promise<number>\",\"isStatic\":false,\"isPublic\":true},\"generateEmbeddings\":{\"name\":\"generateEmbeddings\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"GenerateEmbeddingsOptions\",\"optional\":true}],\"returnType\":\"Promise<void>\",\"isStatic\":false,\"isPublic\":true},\"getEmbedding\":{\"name\":\"getEmbedding\",\"async\":true,\"parameters\":[{\"name\":\"fieldName\",\"type\":\"string\",\"optional\":false},{\"name\":\"model\",\"type\":\"string\",\"optional\":true}],\"returnType\":\"Promise<number[] | null>\",\"isStatic\":false,\"isPublic\":true},\"hasStaleEmbeddings\":{\"name\":\"hasStaleEmbeddings\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<boolean>\",\"isStatic\":false,\"isPublic\":true},\"clearEmbeddings\":{\"name\":\"clearEmbeddings\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<void>\",\"isStatic\":false,\"isPublic\":true},\"resolveGovernance\":{\"name\":\"resolveGovernance\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<ResolvedContentGovernance>\",\"isStatic\":false,\"isPublic\":true},\"loadReferences\":{\"name\":\"loadReferences\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"addReference\":{\"name\":\"addReference\",\"async\":true,\"parameters\":[{\"name\":\"content\",\"type\":\"Content | string\",\"optional\":false},{\"name\":\"options\",\"type\":\"object\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"removeReference\":{\"name\":\"removeReference\",\"async\":true,\"parameters\":[{\"name\":\"targetId\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getReferences\":{\"name\":\"getReferences\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getReferenceEdges\":{\"name\":\"getReferenceEdges\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<Array<object>>\",\"isStatic\":false,\"isPublic\":true},\"getReferenceDrift\":{\"name\":\"getReferenceDrift\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<Array<object>>\",\"isStatic\":false,\"isPublic\":true},\"isGoverned\":{\"name\":\"isGoverned\",\"async\":false,\"parameters\":[],\"returnType\":\"boolean\",\"isStatic\":false,\"isPublic\":true},\"getFactLinks\":{\"name\":\"getFactLinks\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getFacts\":{\"name\":\"getFacts\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":true}],\"returnType\":\"Promise<Fact[]>\",\"isStatic\":false,\"isPublic\":true},\"addFact\":{\"name\":\"addFact\",\"async\":true,\"parameters\":[{\"name\":\"fact\",\"type\":\"Fact | string\",\"optional\":false},{\"name\":\"relationship\",\"type\":\"FactContentRelationship\",\"optional\":true},{\"name\":\"metadata\",\"type\":\"Record<string>\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"removeFact\":{\"name\":\"removeFact\",\"async\":true,\"parameters\":[{\"name\":\"factId\",\"type\":\"string\",\"optional\":false},{\"name\":\"relationship\",\"type\":\"FactContentRelationship\",\"optional\":true}],\"returnType\":\"Promise<void>\",\"isStatic\":false,\"isPublic\":true},\"syncFacts\":{\"name\":\"syncFacts\",\"async\":true,\"parameters\":[{\"name\":\"factIds\",\"type\":\"string[]\",\"optional\":false},{\"name\":\"relationship\",\"type\":\"FactContentRelationship\",\"optional\":true}],\"returnType\":\"Promise<object>\",\"isStatic\":false,\"isPublic\":true},\"browseFacts\":{\"name\":\"browseFacts\",\"async\":true,\"parameters\":[{\"name\":\"query\",\"type\":\"any\",\"optional\":true,\"default\":\"\"},{\"name\":\"options\",\"type\":\"object\",\"optional\":true}],\"returnType\":\"Promise<Fact[]>\",\"isStatic\":false,\"isPublic\":true},\"repairFactAudit\":{\"name\":\"repairFactAudit\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"repairFactAuditAction\":{\"name\":\"repairFactAuditAction\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"repairFactEvidence\":{\"name\":\"repairFactEvidence\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"FactAuditResourceRepairOptions\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"repairFactEvidenceAction\":{\"name\":\"repairFactEvidenceAction\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"FactAuditResourceRepairOptions\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"recheckFactClaims\":{\"name\":\"recheckFactClaims\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"FactAuditClaimRecheckOptions\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"recheckFactClaimsAction\":{\"name\":\"recheckFactClaimsAction\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"FactAuditClaimRecheckOptions\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"updateFactEvidenceStatus\":{\"name\":\"updateFactEvidenceStatus\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"FactEvidenceStatusUpdateOptions\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"updateFactEvidenceStatusAction\":{\"name\":\"updateFactEvidenceStatusAction\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"FactEvidenceStatusUpdateOptions\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getFactAuditState\":{\"name\":\"getFactAuditState\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<FactAuditState>\",\"isStatic\":false,\"isPublic\":true},\"getFactAuditStateAction\":{\"name\":\"getFactAuditStateAction\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getFactsState\":{\"name\":\"getFactsState\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"syncFactsState\":{\"name\":\"syncFactsState\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"createVersion\":{\"name\":\"createVersion\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"CreateContentVersionOptions\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getVersions\":{\"name\":\"getVersions\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"restoreFromVersion\":{\"name\":\"restoreFromVersion\",\"async\":true,\"parameters\":[{\"name\":\"versionNumber\",\"type\":\"number\",\"optional\":false}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getReviews\":{\"name\":\"getReviews\",\"async\":true,\"parameters\":[{\"name\":\"kind\",\"type\":\"any\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"listReviews\":{\"name\":\"listReviews\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getReviewRequirements\":{\"name\":\"getReviewRequirements\",\"async\":true,\"parameters\":[{\"name\":\"profileKey\",\"type\":\"string\",\"optional\":false},{\"name\":\"governance\",\"type\":\"ResolvedContentGovernance\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getGovernanceState\":{\"name\":\"getGovernanceState\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<ContentGovernanceState>\",\"isStatic\":false,\"isPublic\":true},\"getGovernanceStateAction\":{\"name\":\"getGovernanceStateAction\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"listReviewProfilesAction\":{\"name\":\"listReviewProfilesAction\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"evaluateReviewProfile\":{\"name\":\"evaluateReviewProfile\",\"async\":true,\"parameters\":[{\"name\":\"profileKey\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"Promise<ContentReviewProfileEvaluation>\",\"isStatic\":false,\"isPublic\":true},\"evaluateReviewProfileAction\":{\"name\":\"evaluateReviewProfileAction\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"isReadyForReviewProfile\":{\"name\":\"isReadyForReviewProfile\",\"async\":true,\"parameters\":[{\"name\":\"profileKey\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"Promise<boolean>\",\"isStatic\":false,\"isPublic\":true},\"getPublishedTransparency\":{\"name\":\"getPublishedTransparency\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getPublishedTransparencyAction\":{\"name\":\"getPublishedTransparencyAction\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"previewTransparency\":{\"name\":\"previewTransparency\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"previewTransparencyAction\":{\"name\":\"previewTransparencyAction\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"runReview\":{\"name\":\"runReview\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"RunContentReviewOptions\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"runReviewAction\":{\"name\":\"runReviewAction\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"RunContentReviewOptions\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"reviewFacts\":{\"name\":\"reviewFacts\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"Omit<RunContentReviewOptions, 'kind'>\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"reviewSafety\":{\"name\":\"reviewSafety\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"Omit<RunContentReviewOptions, 'kind'>\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getCorrections\":{\"name\":\"getCorrections\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"listCorrections\":{\"name\":\"listCorrections\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"issueCorrection\":{\"name\":\"issueCorrection\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"IssueContentCorrectionOptions\",\"optional\":false}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"issueCorrectionAction\":{\"name\":\"issueCorrectionAction\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"IssueContentCorrectionOptions\",\"optional\":false}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"listVersions\":{\"name\":\"listVersions\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"mutateVersionAction\":{\"name\":\"mutateVersionAction\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"any\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getCategorySegments\":{\"name\":\"getCategorySegments\",\"async\":false,\"parameters\":[],\"returnType\":\"string[]\",\"isStatic\":false,\"isPublic\":true},\"getParentCategory\":{\"name\":\"getParentCategory\",\"async\":false,\"parameters\":[],\"returnType\":\"string | null\",\"isStatic\":false,\"isPublic\":true},\"getRootCategory\":{\"name\":\"getRootCategory\",\"async\":false,\"parameters\":[],\"returnType\":\"string | null\",\"isStatic\":false,\"isPublic\":true},\"getAncestorPaths\":{\"name\":\"getAncestorPaths\",\"async\":false,\"parameters\":[],\"returnType\":\"string[]\",\"isStatic\":false,\"isPublic\":true},\"isInCategory\":{\"name\":\"isInCategory\",\"async\":false,\"parameters\":[{\"name\":\"categoryPath\",\"type\":\"string\",\"optional\":false},{\"name\":\"includeChildren\",\"type\":\"any\",\"optional\":true}],\"returnType\":\"boolean\",\"isStatic\":false,\"isPublic\":true},\"getAssets\":{\"name\":\"getAssets\",\"async\":true,\"parameters\":[{\"name\":\"relationship\",\"type\":\"string\",\"optional\":true}],\"returnType\":\"Promise<Asset[]>\",\"isStatic\":false,\"isPublic\":true},\"addAsset\":{\"name\":\"addAsset\",\"async\":true,\"parameters\":[{\"name\":\"asset\",\"type\":\"Asset\",\"optional\":false},{\"name\":\"relationship\",\"type\":\"any\",\"optional\":true,\"default\":\"attachment\"},{\"name\":\"sortOrder\",\"type\":\"any\",\"optional\":true}],\"returnType\":\"Promise<void>\",\"isStatic\":false,\"isPublic\":true},\"removeAsset\":{\"name\":\"removeAsset\",\"async\":true,\"parameters\":[{\"name\":\"assetId\",\"type\":\"string\",\"optional\":false},{\"name\":\"relationship\",\"type\":\"string\",\"optional\":true}],\"returnType\":\"Promise<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\":\"metadata\",\"type\":\"Record<string> | null | undefined\",\"optional\":false}],\"returnType\":\"void\",\"isStatic\":false,\"isPublic\":true},\"updateMetadata\":{\"name\":\"updateMetadata\",\"async\":false,\"parameters\":[{\"name\":\"patch\",\"type\":\"Partial<Record<string>>\",\"optional\":false}],\"returnType\":\"Record<string>\",\"isStatic\":false,\"isPublic\":true},\"getThumbnail\":{\"name\":\"getThumbnail\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<Image | null>\",\"isStatic\":false,\"isPublic\":true},\"setThumbnail\":{\"name\":\"setThumbnail\",\"async\":true,\"parameters\":[{\"name\":\"image\",\"type\":\"Image\",\"optional\":false}],\"returnType\":\"Promise<void>\",\"isStatic\":false,\"isPublic\":true},\"generateThumbnail\":{\"name\":\"generateThumbnail\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"ThumbnailOptions\",\"optional\":false}],\"returnType\":\"Promise<Image>\",\"isStatic\":false,\"isPublic\":true}},\"decoratorConfig\":{\"tableStrategy\":\"sti\",\"api\":{\"include\":[\"list\",\"get\",\"create\",\"update\",\"delete\",\"getFactsState\",\"syncFactsState\",\"getFactAuditStateAction\",\"repairFactAuditAction\",\"repairFactEvidenceAction\",\"recheckFactClaimsAction\",\"updateFactEvidenceStatusAction\",\"getGovernanceStateAction\",\"listReviews\",\"runReviewAction\",\"listReviewProfilesAction\",\"evaluateReviewProfileAction\",\"getPublishedTransparencyAction\",\"previewTransparencyAction\",\"listCorrections\",\"issueCorrectionAction\",\"listVersions\",\"mutateVersionAction\"],\"routes\":{\"getFactsState\":{\"method\":\"GET\",\"path\":\"facts\"},\"syncFactsState\":{\"method\":\"PUT\",\"path\":\"facts\"},\"getFactAuditStateAction\":{\"method\":\"GET\",\"path\":\"fact-audit\"},\"repairFactAuditAction\":{\"method\":\"POST\",\"path\":\"fact-audit/repair\"},\"repairFactEvidenceAction\":{\"method\":\"POST\",\"path\":\"fact-audit/evidence/repair\"},\"recheckFactClaimsAction\":{\"method\":\"POST\",\"path\":\"fact-audit/claims/recheck\"},\"updateFactEvidenceStatusAction\":{\"method\":\"PUT\",\"path\":\"fact-audit/evidence/status\"},\"getGovernanceStateAction\":{\"method\":\"GET\",\"path\":\"governance\"},\"listReviews\":{\"method\":\"GET\",\"path\":\"reviews\"},\"runReviewAction\":{\"method\":\"POST\",\"path\":\"reviews\"},\"listReviewProfilesAction\":{\"method\":\"GET\",\"path\":\"review-profiles\"},\"evaluateReviewProfileAction\":{\"method\":\"GET\",\"path\":\"review-profiles/[profileKey]\"},\"getPublishedTransparencyAction\":{\"method\":\"GET\",\"path\":\"transparency\"},\"previewTransparencyAction\":{\"method\":\"GET\",\"path\":\"transparency/preview\"},\"listCorrections\":{\"method\":\"GET\",\"path\":\"corrections\"},\"issueCorrectionAction\":{\"method\":\"POST\",\"path\":\"corrections\"},\"listVersions\":{\"method\":\"GET\",\"path\":\"versions\"},\"mutateVersionAction\":{\"method\":\"POST\",\"path\":\"versions\"}},\"serializers\":{\"item\":{\"importPath\":\"$lib/server/content-api-serializers\",\"exportName\":\"serializeContent\"}}},\"mcp\":{\"include\":[\"list\",\"get\",\"create\",\"update\"]},\"cli\":true,\"indexes\":[{\"name\":\"contents_tenant_id_publish_date_idx\",\"columns\":[\"tenantId\",\"publish_date\"]}],\"tenantScoped\":{\"mode\":\"optional\"},\"conflictColumns\":[\"tenant_id\",\"slug\",\"context\",\"_meta_type\"]},\"extends\":\"SmrtObject\",\"exportName\":\"Content\",\"collectionExportName\":\"ContentCollection\",\"validationRules\":[{\"field\":\"name\",\"rule\":\"required\",\"fieldType\":\"text\"}],\"schema\":{\"tableName\":\"contents\",\"ddl\":\"CREATE TABLE IF NOT EXISTS \\\"contents\\\" (\\n \\\"id\\\" UUID PRIMARY KEY NOT NULL,\\n \\\"slug\\\" TEXT NOT NULL,\\n \\\"context\\\" TEXT NOT NULL DEFAULT '',\\n \\\"_meta_type\\\" TEXT NOT NULL,\\n \\\"_meta_data\\\" JSON,\\n \\\"created_at\\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\\"updated_at\\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\\"tenant_id\\\" UUID,\\n \\\"type\\\" TEXT,\\n \\\"variant\\\" TEXT,\\n \\\"file_key\\\" TEXT,\\n \\\"author\\\" TEXT,\\n \\\"name\\\" TEXT DEFAULT '',\\n \\\"title\\\" TEXT,\\n \\\"description\\\" TEXT,\\n \\\"body\\\" TEXT,\\n \\\"body_format\\\" TEXT,\\n \\\"publish_date\\\" TIMESTAMP,\\n \\\"url\\\" TEXT,\\n \\\"source\\\" TEXT,\\n \\\"original_url\\\" TEXT,\\n \\\"language\\\" TEXT,\\n \\\"tags\\\" JSON DEFAULT '[]',\\n \\\"category\\\" TEXT,\\n \\\"status\\\" TEXT DEFAULT 'draft',\\n \\\"state\\\" TEXT DEFAULT 'active',\\n \\\"metadata\\\" JSON DEFAULT '{}',\\n \\\"thumbnail_asset_id\\\" UUID,\\n \\\"feed_source_id\\\" UUID,\\n \\\"source_guid\\\" TEXT,\\n \\\"source_name\\\" TEXT,\\n \\\"source_homepage_url\\\" TEXT,\\n \\\"external_url\\\" TEXT,\\n \\\"original_published_at\\\" TIMESTAMP,\\n \\\"dedupe_key\\\" TEXT\\n);\",\"columns\":{\"id\":{\"type\":\"UUID\",\"primaryKey\":true,\"referenceKind\":\"id\",\"notNull\":true},\"slug\":{\"type\":\"TEXT\",\"notNull\":true},\"context\":{\"type\":\"TEXT\",\"notNull\":true,\"default\":\"\"},\"_meta_type\":{\"type\":\"TEXT\",\"notNull\":true},\"_meta_data\":{\"type\":\"JSON\",\"notNull\":false},\"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\":false},\"type\":{\"type\":\"TEXT\",\"notNull\":false},\"variant\":{\"type\":\"TEXT\",\"notNull\":false},\"file_key\":{\"type\":\"TEXT\",\"notNull\":false},\"author\":{\"type\":\"TEXT\",\"notNull\":false},\"name\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"\"},\"title\":{\"type\":\"TEXT\",\"notNull\":false},\"description\":{\"type\":\"TEXT\",\"notNull\":false},\"body\":{\"type\":\"TEXT\",\"notNull\":false},\"body_format\":{\"type\":\"TEXT\",\"notNull\":false},\"publish_date\":{\"type\":\"TIMESTAMP\",\"notNull\":false},\"url\":{\"type\":\"TEXT\",\"notNull\":false},\"source\":{\"type\":\"TEXT\",\"notNull\":false},\"original_url\":{\"type\":\"TEXT\",\"notNull\":false},\"language\":{\"type\":\"TEXT\",\"notNull\":false},\"tags\":{\"type\":\"JSON\",\"notNull\":false,\"default\":[]},\"category\":{\"type\":\"TEXT\",\"notNull\":false},\"status\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"draft\"},\"state\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"active\"},\"metadata\":{\"type\":\"JSON\",\"notNull\":false,\"default\":{}},\"thumbnail_asset_id\":{\"type\":\"UUID\",\"referenceKind\":\"crossPackageRef\",\"notNull\":false},\"feed_source_id\":{\"type\":\"UUID\",\"referenceKind\":\"foreignKey\",\"notNull\":false,\"foreignKey\":{\"table\":\"content_feed_sources\",\"column\":\"id\",\"onDelete\":\"NO ACTION\",\"onUpdate\":\"CASCADE\"}},\"source_guid\":{\"type\":\"TEXT\",\"notNull\":false},\"source_name\":{\"type\":\"TEXT\",\"notNull\":false},\"source_homepage_url\":{\"type\":\"TEXT\",\"notNull\":false},\"external_url\":{\"type\":\"TEXT\",\"notNull\":false},\"original_published_at\":{\"type\":\"TIMESTAMP\",\"notNull\":false},\"dedupe_key\":{\"type\":\"TEXT\",\"notNull\":false}},\"indexes\":[{\"name\":\"contents_slug_context_meta_type_idx\",\"columns\":[\"tenant_id\",\"slug\",\"context\",\"_meta_type\"],\"unique\":true},{\"name\":\"contents_meta_type_idx\",\"columns\":[\"_meta_type\"]},{\"name\":\"contents_tenant_id_publish_date_idx\",\"columns\":[\"tenant_id\",\"publish_date\"]},{\"name\":\"contents_tenant_id_created_at_idx\",\"columns\":[\"tenant_id\",\"created_at\"]},{\"name\":\"contents_thumbnail_asset_id_idx\",\"columns\":[\"thumbnail_asset_id\"]},{\"name\":\"contents_feed_source_id_idx\",\"columns\":[\"feed_source_id\"]}],\"version\":\"40e4ddf4\"}},\"@happyvertical/smrt-content:Contents\":{\"name\":\"contents\",\"className\":\"Contents\",\"qualifiedName\":\"@happyvertical/smrt-content:Contents\",\"collection\":\"contents\",\"filePath\":\"/home/runner/work/smrt/smrt/packages/content/src/contents.ts\",\"packageName\":\"@happyvertical/smrt-content\",\"fields\":{\"contentDir\":{\"type\":\"text\",\"required\":false},\"loaded\":{\"type\":\"json\",\"required\":true}},\"methods\":{\"getDb\":{\"name\":\"getDb\",\"async\":false,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"initialize\":{\"name\":\"initialize\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise\",\"isStatic\":false,\"isPublic\":true},\"browseFacts\":{\"name\":\"browseFacts\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getBySlug\":{\"name\":\"getBySlug\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getGovernanceDefinitionsAction\":{\"name\":\"getGovernanceDefinitionsAction\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"resolveGovernanceAction\":{\"name\":\"resolveGovernanceAction\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"mirror\":{\"name\":\"mirror\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":false}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"writeContentFile\":{\"name\":\"writeContentFile\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":false}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"syncContentDir\":{\"name\":\"syncContentDir\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":false}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"generateMissingThumbnails\":{\"name\":\"generateMissingThumbnails\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"GenerateMissingThumbnailsOptions\",\"optional\":false}],\"returnType\":\"Promise<object>\",\"isStatic\":false,\"isPublic\":true},\"findByTenant\":{\"name\":\"findByTenant\",\"async\":true,\"parameters\":[{\"name\":\"tenantId\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"Promise<Content[]>\",\"isStatic\":false,\"isPublic\":true},\"findGlobal\":{\"name\":\"findGlobal\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<Content[]>\",\"isStatic\":false,\"isPublic\":true},\"findWithGlobals\":{\"name\":\"findWithGlobals\",\"async\":true,\"parameters\":[{\"name\":\"tenantId\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"Promise<Content[]>\",\"isStatic\":false,\"isPublic\":true}},\"decoratorConfig\":{\"api\":{\"include\":[\"browseFacts\",\"getBySlug\",\"getGovernanceDefinitionsAction\",\"resolveGovernanceAction\"],\"routes\":{\"browseFacts\":{\"scope\":\"collection\",\"method\":\"GET\",\"path\":\"facts\"},\"getBySlug\":{\"scope\":\"collection\",\"method\":\"GET\",\"path\":\"by-slug\"},\"getGovernanceDefinitionsAction\":{\"scope\":\"collection\",\"method\":\"GET\",\"path\":\"governance\"},\"resolveGovernanceAction\":{\"scope\":\"collection\",\"method\":\"GET\",\"path\":\"governance/resolve\"}}},\"mcp\":false,\"cli\":false},\"extends\":\"SmrtCollection\",\"extendsTypeArg\":\"Content\",\"exportName\":\"Contents\",\"collectionExportName\":\"ContentsCollection\",\"validationRules\":[{\"field\":\"loaded\",\"rule\":\"required\",\"fieldType\":\"json\"}],\"schema\":{\"tableName\":\"contents\",\"ddl\":\"CREATE TABLE IF NOT EXISTS \\\"contents\\\" (\\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 \\\"content_dir\\\" TEXT,\\n \\\"loaded\\\" JSON NOT NULL\\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\"},\"content_dir\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"loaded\":{\"type\":\"JSON\",\"notNull\":true,\"unique\":false}},\"indexes\":[{\"name\":\"contents_slug_context_idx\",\"columns\":[\"slug\",\"context\"],\"unique\":true},{\"name\":\"contents_created_at_idx\",\"columns\":[\"created_at\"]}],\"version\":\"c11f9ec0\"}}},\"moduleType\":\"smrt\",\"smrtDependencies\":[\"@happyvertical/smrt-assets\",\"@happyvertical/smrt-chat\",\"@happyvertical/smrt-core\",\"@happyvertical/smrt-facts\",\"@happyvertical/smrt-images\",\"@happyvertical/smrt-messages\",\"@happyvertical/smrt-profiles\",\"@happyvertical/smrt-prompts\",\"@happyvertical/smrt-tenancy\"]}"));
|
|
40
|
+
ObjectRegistry.registerPackageManifest(JSON.parse("{\"version\":\"1.0.0\",\"timestamp\":0,\"packageName\":\"@happyvertical/smrt-content\",\"packageVersion\":\"0.43.5\",\"objects\":{\"@happyvertical/smrt-content:ContentAsset\":{\"name\":\"contentasset\",\"className\":\"ContentAsset\",\"qualifiedName\":\"@happyvertical/smrt-content:ContentAsset\",\"collection\":\"contentassets\",\"filePath\":\"/home/runner/work/smrt/smrt/packages/content/src/content-asset.ts\",\"packageName\":\"@happyvertical/smrt-content\",\"fields\":{\"tenantId\":{\"type\":\"text\",\"required\":false,\"_meta\":{\"sqlType\":\"UUID\",\"nullable\":true,\"__tenancy\":{\"isTenantIdField\":true,\"autoFilter\":true,\"required\":false,\"autoPopulate\":true,\"nullable\":true,\"mode\":\"optional\",\"field\":\"tenantId\",\"allowSuperAdminBypass\":false}}},\"contentId\":{\"type\":\"foreignKey\",\"required\":true,\"related\":\"Content\",\"_meta\":{\"required\":true}},\"assetId\":{\"type\":\"crossPackageRef\",\"required\":true,\"related\":\"@happyvertical/smrt-assets:Asset\"},\"relationship\":{\"type\":\"text\",\"required\":true,\"_meta\":{\"required\":true}},\"sortOrder\":{\"type\":\"integer\",\"required\":true,\"default\":0}},\"methods\":{},\"decoratorConfig\":{\"tableName\":\"content_assets\",\"conflictColumns\":[\"content_id\",\"asset_id\",\"relationship\"],\"api\":false,\"mcp\":false,\"cli\":false,\"tenantScoped\":{\"mode\":\"optional\"}},\"extends\":\"SmrtObject\",\"exportName\":\"ContentAsset\",\"collectionExportName\":\"ContentAssetCollection\",\"validationRules\":[{\"field\":\"contentId\",\"rule\":\"required\",\"fieldType\":\"foreignKey\"},{\"field\":\"assetId\",\"rule\":\"required\",\"fieldType\":\"crossPackageRef\"},{\"field\":\"relationship\",\"rule\":\"required\",\"fieldType\":\"text\"},{\"field\":\"sortOrder\",\"rule\":\"required\",\"fieldType\":\"integer\"}],\"schema\":{\"tableName\":\"content_assets\",\"ddl\":\"CREATE TABLE IF NOT EXISTS \\\"content_assets\\\" (\\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,\\n \\\"content_id\\\" UUID NOT NULL,\\n \\\"asset_id\\\" UUID NOT NULL,\\n \\\"relationship\\\" TEXT NOT NULL,\\n \\\"sort_order\\\" INTEGER NOT NULL 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\":false,\"unique\":false},\"content_id\":{\"type\":\"UUID\",\"referenceKind\":\"foreignKey\",\"notNull\":true,\"unique\":false,\"foreignKey\":{\"table\":\"contents\",\"column\":\"id\",\"onDelete\":\"CASCADE\",\"onUpdate\":\"CASCADE\"}},\"asset_id\":{\"type\":\"UUID\",\"referenceKind\":\"crossPackageRef\",\"notNull\":true,\"unique\":false},\"relationship\":{\"type\":\"TEXT\",\"notNull\":true,\"unique\":false},\"sort_order\":{\"type\":\"INTEGER\",\"notNull\":true,\"unique\":false,\"default\":0}},\"indexes\":[{\"name\":\"content_assets_content_id_asset_id_idx\",\"columns\":[\"content_id\",\"asset_id\",\"relationship\"],\"unique\":true},{\"name\":\"content_assets_slug_context_idx\",\"columns\":[\"slug\",\"context\"]},{\"name\":\"content_assets_tenant_id_created_at_idx\",\"columns\":[\"tenant_id\",\"created_at\"]},{\"name\":\"content_assets_asset_id_idx\",\"columns\":[\"asset_id\"]}],\"version\":\"472d718d\"}},\"@happyvertical/smrt-content:ContentAssetCollection\":{\"name\":\"contentassetcollection\",\"className\":\"ContentAssetCollection\",\"qualifiedName\":\"@happyvertical/smrt-content:ContentAssetCollection\",\"collection\":\"contentassets\",\"filePath\":\"/home/runner/work/smrt/smrt/packages/content/src/content-assets.ts\",\"packageName\":\"@happyvertical/smrt-content\",\"fields\":{},\"methods\":{\"byLeft\":{\"name\":\"byLeft\",\"async\":true,\"parameters\":[{\"name\":\"leftId\",\"type\":\"string\",\"optional\":false},{\"name\":\"opts\",\"type\":\"JunctionFilterOptions\",\"optional\":true}],\"returnType\":\"Promise<TItem[]>\",\"isStatic\":false,\"isPublic\":true},\"byRight\":{\"name\":\"byRight\",\"async\":true,\"parameters\":[{\"name\":\"rightId\",\"type\":\"string\",\"optional\":false},{\"name\":\"opts\",\"type\":\"JunctionFilterOptions\",\"optional\":true}],\"returnType\":\"Promise<TItem[]>\",\"isStatic\":false,\"isPublic\":true},\"attach\":{\"name\":\"attach\",\"async\":true,\"parameters\":[{\"name\":\"leftId\",\"type\":\"string\",\"optional\":false},{\"name\":\"rightId\",\"type\":\"string\",\"optional\":false},{\"name\":\"opts\",\"type\":\"JunctionAttachOptions\",\"optional\":true}],\"returnType\":\"Promise<TItem>\",\"isStatic\":false,\"isPublic\":true},\"detach\":{\"name\":\"detach\",\"async\":true,\"parameters\":[{\"name\":\"leftId\",\"type\":\"string\",\"optional\":false},{\"name\":\"rightId\",\"type\":\"string\",\"optional\":false},{\"name\":\"opts\",\"type\":\"JunctionFilterOptions\",\"optional\":true}],\"returnType\":\"Promise<void>\",\"isStatic\":false,\"isPublic\":true},\"setLinks\":{\"name\":\"setLinks\",\"async\":true,\"parameters\":[{\"name\":\"leftId\",\"type\":\"string\",\"optional\":false},{\"name\":\"rightIds\",\"type\":\"string[]\",\"optional\":false},{\"name\":\"opts\",\"type\":\"JunctionAttachOptions\",\"optional\":true}],\"returnType\":\"Promise<void>\",\"isStatic\":false,\"isPublic\":true}},\"decoratorConfig\":{\"api\":false,\"mcp\":false,\"cli\":false,\"tableName\":\"content_assets\"},\"extends\":\"SmrtJunction\",\"extendsTypeArg\":\"ContentAsset\",\"exportName\":\"ContentAssetCollection\",\"collectionExportName\":\"ContentAssetCollectionCollection\",\"schema\":{\"tableName\":\"content_assets\",\"ddl\":\"CREATE TABLE IF NOT EXISTS \\\"content_assets\\\" (\\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\":\"content_assets_slug_context_idx\",\"columns\":[\"slug\",\"context\"],\"unique\":true},{\"name\":\"content_assets_created_at_idx\",\"columns\":[\"created_at\"]}],\"version\":\"35bf42e8\"}},\"@happyvertical/smrt-content:ContentContributionAttachment\":{\"name\":\"contentcontributionattachment\",\"className\":\"ContentContributionAttachment\",\"qualifiedName\":\"@happyvertical/smrt-content:ContentContributionAttachment\",\"collection\":\"contentcontributionattachments\",\"filePath\":\"/home/runner/work/smrt/smrt/packages/content/src/content-contribution-attachment.ts\",\"packageName\":\"@happyvertical/smrt-content\",\"fields\":{\"contributionId\":{\"type\":\"foreignKey\",\"required\":true,\"related\":\"ContentContribution\",\"_meta\":{\"required\":true}},\"revisionId\":{\"type\":\"foreignKey\",\"required\":false,\"related\":\"ContentContributionRevision\"},\"filename\":{\"type\":\"text\",\"required\":false},\"mimeType\":{\"type\":\"text\",\"required\":false},\"size\":{\"type\":\"integer\",\"required\":true,\"default\":0},\"fileKey\":{\"type\":\"text\",\"required\":false},\"sourceUri\":{\"type\":\"text\",\"required\":false},\"channel\":{\"type\":\"text\",\"required\":false,\"default\":\"web\"},\"promotedAssetId\":{\"type\":\"crossPackageRef\",\"required\":false,\"related\":\"@happyvertical/smrt-assets:Asset\"},\"metadata\":{\"type\":\"text\",\"required\":false},\"tenantId\":{\"type\":\"text\",\"required\":false,\"_meta\":{\"sqlType\":\"UUID\",\"nullable\":true,\"__tenancy\":{\"isTenantIdField\":true,\"autoFilter\":true,\"required\":false,\"autoPopulate\":true,\"nullable\":true,\"mode\":\"optional\",\"field\":\"tenantId\",\"allowSuperAdminBypass\":false}}},\"createdAt\":{\"type\":\"text\",\"required\":false},\"updatedAt\":{\"type\":\"text\",\"required\":false}},\"methods\":{\"getMetadata\":{\"name\":\"getMetadata\",\"async\":false,\"parameters\":[],\"returnType\":\"Record<string>\",\"isStatic\":false,\"isPublic\":true}},\"decoratorConfig\":{\"tableName\":\"content_contribution_attachments\",\"conflictColumns\":[\"id\"],\"api\":{\"include\":[\"list\",\"get\",\"create\",\"update\",\"delete\"]},\"mcp\":{\"include\":[\"list\",\"get\",\"create\",\"update\",\"delete\"]},\"cli\":true,\"tenantScoped\":{\"mode\":\"optional\"}},\"extends\":\"SmrtObject\",\"exportName\":\"ContentContributionAttachment\",\"collectionExportName\":\"ContentContributionAttachmentCollection\",\"validationRules\":[{\"field\":\"contributionId\",\"rule\":\"required\",\"fieldType\":\"foreignKey\"},{\"field\":\"size\",\"rule\":\"required\",\"fieldType\":\"integer\"}],\"schema\":{\"tableName\":\"content_contribution_attachments\",\"ddl\":\"CREATE TABLE IF NOT EXISTS \\\"content_contribution_attachments\\\" (\\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 \\\"contribution_id\\\" UUID NOT NULL,\\n \\\"revision_id\\\" UUID,\\n \\\"filename\\\" TEXT,\\n \\\"mime_type\\\" TEXT,\\n \\\"size\\\" INTEGER NOT NULL DEFAULT 0,\\n \\\"file_key\\\" TEXT,\\n \\\"source_uri\\\" TEXT,\\n \\\"channel\\\" TEXT DEFAULT 'web',\\n \\\"promoted_asset_id\\\" UUID,\\n \\\"metadata\\\" TEXT,\\n \\\"tenant_id\\\" UUID\\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\"},\"contribution_id\":{\"type\":\"UUID\",\"referenceKind\":\"foreignKey\",\"notNull\":true,\"unique\":false,\"foreignKey\":{\"table\":\"content_contributions\",\"column\":\"id\",\"onDelete\":\"NO ACTION\",\"onUpdate\":\"CASCADE\"}},\"revision_id\":{\"type\":\"UUID\",\"referenceKind\":\"foreignKey\",\"notNull\":false,\"unique\":false,\"foreignKey\":{\"table\":\"content_contribution_revisions\",\"column\":\"id\",\"onDelete\":\"NO ACTION\",\"onUpdate\":\"CASCADE\"}},\"filename\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"mime_type\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"size\":{\"type\":\"INTEGER\",\"notNull\":true,\"unique\":false,\"default\":0},\"file_key\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"source_uri\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"channel\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"web\"},\"promoted_asset_id\":{\"type\":\"UUID\",\"referenceKind\":\"crossPackageRef\",\"notNull\":false,\"unique\":false},\"metadata\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"tenant_id\":{\"type\":\"UUID\",\"referenceKind\":\"tenantId\",\"notNull\":false,\"unique\":false}},\"indexes\":[{\"name\":\"content_contribution_attachments_slug_context_idx\",\"columns\":[\"slug\",\"context\"]},{\"name\":\"content_contribution_attachments_tenant_id_created_at_idx\",\"columns\":[\"tenant_id\",\"created_at\"]},{\"name\":\"content_contribution_attachments_contribution_id_idx\",\"columns\":[\"contribution_id\"]},{\"name\":\"content_contribution_attachments_revision_id_idx\",\"columns\":[\"revision_id\"]},{\"name\":\"content_contribution_attachments_promoted_asset_id_idx\",\"columns\":[\"promoted_asset_id\"]}],\"version\":\"83e64a1b\"}},\"@happyvertical/smrt-content:ContentContributionAttachmentCollection\":{\"name\":\"contentcontributionattachmentcollection\",\"className\":\"ContentContributionAttachmentCollection\",\"qualifiedName\":\"@happyvertical/smrt-content:ContentContributionAttachmentCollection\",\"collection\":\"contentcontributionattachments\",\"filePath\":\"/home/runner/work/smrt/smrt/packages/content/src/content-contribution-attachments.ts\",\"packageName\":\"@happyvertical/smrt-content\",\"fields\":{},\"methods\":{\"listForContribution\":{\"name\":\"listForContribution\",\"async\":true,\"parameters\":[{\"name\":\"contributionId\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"Promise<ContentContributionAttachment[]>\",\"isStatic\":false,\"isPublic\":true},\"listForRevision\":{\"name\":\"listForRevision\",\"async\":true,\"parameters\":[{\"name\":\"revisionId\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"Promise<ContentContributionAttachment[]>\",\"isStatic\":false,\"isPublic\":true}},\"decoratorConfig\":{\"tableName\":\"content_contribution_attachments\"},\"extends\":\"SmrtCollection\",\"extendsTypeArg\":\"ContentContributionAttachment\",\"exportName\":\"ContentContributionAttachmentCollection\",\"collectionExportName\":\"ContentContributionAttachmentCollectionCollection\",\"schema\":{\"tableName\":\"content_contribution_attachments\",\"ddl\":\"CREATE TABLE IF NOT EXISTS \\\"content_contribution_attachments\\\" (\\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\":\"content_contribution_attachments_slug_context_idx\",\"columns\":[\"slug\",\"context\"],\"unique\":true},{\"name\":\"content_contribution_attachments_created_at_idx\",\"columns\":[\"created_at\"]}],\"version\":\"d0c8b33f\"}},\"@happyvertical/smrt-content:ContentContributionRevision\":{\"name\":\"contentcontributionrevision\",\"className\":\"ContentContributionRevision\",\"qualifiedName\":\"@happyvertical/smrt-content:ContentContributionRevision\",\"collection\":\"contentcontributionrevisions\",\"filePath\":\"/home/runner/work/smrt/smrt/packages/content/src/content-contribution-revision.ts\",\"packageName\":\"@happyvertical/smrt-content\",\"fields\":{\"contributionId\":{\"type\":\"foreignKey\",\"required\":true,\"related\":\"ContentContribution\",\"_meta\":{\"required\":true}},\"revisionNumber\":{\"type\":\"integer\",\"required\":true,\"default\":1},\"channel\":{\"type\":\"text\",\"required\":false,\"default\":\"web\"},\"title\":{\"type\":\"text\",\"required\":false},\"description\":{\"type\":\"text\",\"required\":false},\"body\":{\"type\":\"text\",\"required\":false},\"sourceMessageId\":{\"type\":\"crossPackageRef\",\"required\":false,\"related\":\"@happyvertical/smrt-messages:Message\"},\"sourceThreadKey\":{\"type\":\"text\",\"required\":false},\"metadata\":{\"type\":\"text\",\"required\":false},\"tenantId\":{\"type\":\"text\",\"required\":false,\"_meta\":{\"sqlType\":\"UUID\",\"nullable\":true,\"__tenancy\":{\"isTenantIdField\":true,\"autoFilter\":true,\"required\":false,\"autoPopulate\":true,\"nullable\":true,\"mode\":\"optional\",\"field\":\"tenantId\",\"allowSuperAdminBypass\":false}}},\"createdAt\":{\"type\":\"text\",\"required\":false},\"updatedAt\":{\"type\":\"text\",\"required\":false}},\"methods\":{\"getMetadata\":{\"name\":\"getMetadata\",\"async\":false,\"parameters\":[],\"returnType\":\"Record<string>\",\"isStatic\":false,\"isPublic\":true}},\"decoratorConfig\":{\"tableName\":\"content_contribution_revisions\",\"conflictColumns\":[\"contribution_id\",\"revision_number\"],\"api\":{\"include\":[\"list\",\"get\",\"create\",\"update\",\"delete\"]},\"mcp\":{\"include\":[\"list\",\"get\",\"create\",\"update\",\"delete\"]},\"cli\":true,\"tenantScoped\":{\"mode\":\"optional\"}},\"extends\":\"SmrtObject\",\"exportName\":\"ContentContributionRevision\",\"collectionExportName\":\"ContentContributionRevisionCollection\",\"validationRules\":[{\"field\":\"contributionId\",\"rule\":\"required\",\"fieldType\":\"foreignKey\"},{\"field\":\"revisionNumber\",\"rule\":\"required\",\"fieldType\":\"integer\"}],\"schema\":{\"tableName\":\"content_contribution_revisions\",\"ddl\":\"CREATE TABLE IF NOT EXISTS \\\"content_contribution_revisions\\\" (\\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 \\\"contribution_id\\\" UUID NOT NULL,\\n \\\"revision_number\\\" INTEGER NOT NULL DEFAULT 1,\\n \\\"channel\\\" TEXT DEFAULT 'web',\\n \\\"title\\\" TEXT,\\n \\\"description\\\" TEXT,\\n \\\"body\\\" TEXT,\\n \\\"source_message_id\\\" UUID,\\n \\\"source_thread_key\\\" TEXT,\\n \\\"metadata\\\" TEXT,\\n \\\"tenant_id\\\" UUID\\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\"},\"contribution_id\":{\"type\":\"UUID\",\"referenceKind\":\"foreignKey\",\"notNull\":true,\"unique\":false,\"foreignKey\":{\"table\":\"content_contributions\",\"column\":\"id\",\"onDelete\":\"CASCADE\",\"onUpdate\":\"CASCADE\"}},\"revision_number\":{\"type\":\"INTEGER\",\"notNull\":true,\"unique\":false,\"default\":1},\"channel\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"web\"},\"title\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"description\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"body\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"source_message_id\":{\"type\":\"UUID\",\"referenceKind\":\"crossPackageRef\",\"notNull\":false,\"unique\":false},\"source_thread_key\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"metadata\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"tenant_id\":{\"type\":\"UUID\",\"referenceKind\":\"tenantId\",\"notNull\":false,\"unique\":false}},\"indexes\":[{\"name\":\"content_contribution_revisions_contribution_id_r_af43e6d599_idx\",\"columns\":[\"contribution_id\",\"revision_number\"],\"unique\":true},{\"name\":\"content_contribution_revisions_slug_context_idx\",\"columns\":[\"slug\",\"context\"]},{\"name\":\"content_contribution_revisions_tenant_id_created_at_idx\",\"columns\":[\"tenant_id\",\"created_at\"]},{\"name\":\"content_contribution_revisions_source_message_id_idx\",\"columns\":[\"source_message_id\"]}],\"version\":\"5051727c\"}},\"@happyvertical/smrt-content:ContentContributionRevisionCollection\":{\"name\":\"contentcontributionrevisioncollection\",\"className\":\"ContentContributionRevisionCollection\",\"qualifiedName\":\"@happyvertical/smrt-content:ContentContributionRevisionCollection\",\"collection\":\"contentcontributionrevisions\",\"filePath\":\"/home/runner/work/smrt/smrt/packages/content/src/content-contribution-revisions.ts\",\"packageName\":\"@happyvertical/smrt-content\",\"fields\":{},\"methods\":{\"listForContribution\":{\"name\":\"listForContribution\",\"async\":true,\"parameters\":[{\"name\":\"contributionId\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"Promise<ContentContributionRevision[]>\",\"isStatic\":false,\"isPublic\":true},\"getLatestForContribution\":{\"name\":\"getLatestForContribution\",\"async\":true,\"parameters\":[{\"name\":\"contributionId\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"Promise<ContentContributionRevision | null>\",\"isStatic\":false,\"isPublic\":true}},\"decoratorConfig\":{\"tableName\":\"content_contribution_revisions\"},\"extends\":\"SmrtCollection\",\"extendsTypeArg\":\"ContentContributionRevision\",\"exportName\":\"ContentContributionRevisionCollection\",\"collectionExportName\":\"ContentContributionRevisionCollectionCollection\",\"schema\":{\"tableName\":\"content_contribution_revisions\",\"ddl\":\"CREATE TABLE IF NOT EXISTS \\\"content_contribution_revisions\\\" (\\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\":\"content_contribution_revisions_slug_context_idx\",\"columns\":[\"slug\",\"context\"],\"unique\":true},{\"name\":\"content_contribution_revisions_created_at_idx\",\"columns\":[\"created_at\"]}],\"version\":\"cc3e0dfa\"}},\"@happyvertical/smrt-content:ContentContributionType\":{\"name\":\"contentcontributiontype\",\"className\":\"ContentContributionType\",\"qualifiedName\":\"@happyvertical/smrt-content:ContentContributionType\",\"collection\":\"contentcontributiontypes\",\"filePath\":\"/home/runner/work/smrt/smrt/packages/content/src/content-contribution-type.ts\",\"packageName\":\"@happyvertical/smrt-content\",\"fields\":{\"key\":{\"type\":\"text\",\"required\":true,\"_meta\":{\"required\":true}},\"label\":{\"type\":\"text\",\"required\":false},\"enabled\":{\"type\":\"boolean\",\"required\":true,\"default\":true},\"allowedChannels\":{\"type\":\"text\",\"required\":false},\"allowText\":{\"type\":\"boolean\",\"required\":true,\"default\":true},\"allowFiles\":{\"type\":\"boolean\",\"required\":true,\"default\":false},\"allowEmptyText\":{\"type\":\"boolean\",\"required\":true,\"default\":false},\"intakeRules\":{\"type\":\"text\",\"required\":false},\"promotion\":{\"type\":\"text\",\"required\":false},\"metadata\":{\"type\":\"text\",\"required\":false},\"tenantId\":{\"type\":\"text\",\"required\":false,\"_meta\":{\"sqlType\":\"UUID\",\"nullable\":true,\"__tenancy\":{\"isTenantIdField\":true,\"autoFilter\":true,\"required\":false,\"autoPopulate\":true,\"nullable\":true,\"mode\":\"optional\",\"field\":\"tenantId\",\"allowSuperAdminBypass\":false}}},\"createdAt\":{\"type\":\"text\",\"required\":false},\"updatedAt\":{\"type\":\"text\",\"required\":false}},\"methods\":{\"getAllowedChannels\":{\"name\":\"getAllowedChannels\",\"async\":false,\"parameters\":[],\"returnType\":\"ContentContributionChannel[]\",\"isStatic\":false,\"isPublic\":true},\"setAllowedChannels\":{\"name\":\"setAllowedChannels\",\"async\":false,\"parameters\":[{\"name\":\"channels\",\"type\":\"ContentContributionChannel[]\",\"optional\":false}],\"returnType\":\"void\",\"isStatic\":false,\"isPublic\":true},\"getIntakeRules\":{\"name\":\"getIntakeRules\",\"async\":false,\"parameters\":[],\"returnType\":\"ContentContributionIntakeRules\",\"isStatic\":false,\"isPublic\":true},\"setIntakeRules\":{\"name\":\"setIntakeRules\",\"async\":false,\"parameters\":[{\"name\":\"rules\",\"type\":\"ContentContributionIntakeRules\",\"optional\":false}],\"returnType\":\"void\",\"isStatic\":false,\"isPublic\":true},\"getPromotion\":{\"name\":\"getPromotion\",\"async\":false,\"parameters\":[],\"returnType\":\"ContentContributionPromotionMapping\",\"isStatic\":false,\"isPublic\":true},\"setPromotion\":{\"name\":\"setPromotion\",\"async\":false,\"parameters\":[{\"name\":\"promotion\",\"type\":\"ContentContributionPromotionMapping\",\"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\":\"metadata\",\"type\":\"Record<string>\",\"optional\":false}],\"returnType\":\"void\",\"isStatic\":false,\"isPublic\":true},\"toDefinition\":{\"name\":\"toDefinition\",\"async\":false,\"parameters\":[],\"returnType\":\"ContentContributionTypeDefinition\",\"isStatic\":false,\"isPublic\":true},\"delete\":{\"name\":\"delete\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<void>\",\"isStatic\":false,\"isPublic\":true}},\"decoratorConfig\":{\"tableName\":\"content_contribution_types\",\"conflictColumns\":[\"key\"],\"api\":{\"include\":[\"list\",\"get\",\"create\",\"update\",\"delete\"]},\"mcp\":{\"include\":[\"list\",\"get\",\"create\",\"update\",\"delete\"]},\"cli\":true,\"tenantScoped\":{\"mode\":\"optional\"}},\"extends\":\"SmrtObject\",\"exportName\":\"ContentContributionType\",\"collectionExportName\":\"ContentContributionTypeCollection\",\"validationRules\":[{\"field\":\"key\",\"rule\":\"required\",\"fieldType\":\"text\"},{\"field\":\"enabled\",\"rule\":\"required\",\"fieldType\":\"boolean\"},{\"field\":\"allowText\",\"rule\":\"required\",\"fieldType\":\"boolean\"},{\"field\":\"allowFiles\",\"rule\":\"required\",\"fieldType\":\"boolean\"},{\"field\":\"allowEmptyText\",\"rule\":\"required\",\"fieldType\":\"boolean\"}],\"schema\":{\"tableName\":\"content_contribution_types\",\"ddl\":\"CREATE TABLE IF NOT EXISTS \\\"content_contribution_types\\\" (\\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 \\\"key\\\" TEXT NOT NULL,\\n \\\"label\\\" TEXT,\\n \\\"enabled\\\" BOOLEAN NOT NULL DEFAULT TRUE,\\n \\\"allowed_channels\\\" TEXT,\\n \\\"allow_text\\\" BOOLEAN NOT NULL DEFAULT TRUE,\\n \\\"allow_files\\\" BOOLEAN NOT NULL DEFAULT FALSE,\\n \\\"allow_empty_text\\\" BOOLEAN NOT NULL DEFAULT FALSE,\\n \\\"intake_rules\\\" TEXT,\\n \\\"promotion\\\" TEXT,\\n \\\"metadata\\\" TEXT,\\n \\\"tenant_id\\\" UUID\\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\"},\"key\":{\"type\":\"TEXT\",\"notNull\":true,\"unique\":false},\"label\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"enabled\":{\"type\":\"BOOLEAN\",\"notNull\":true,\"unique\":false,\"default\":true},\"allowed_channels\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"allow_text\":{\"type\":\"BOOLEAN\",\"notNull\":true,\"unique\":false,\"default\":true},\"allow_files\":{\"type\":\"BOOLEAN\",\"notNull\":true,\"unique\":false,\"default\":false},\"allow_empty_text\":{\"type\":\"BOOLEAN\",\"notNull\":true,\"unique\":false,\"default\":false},\"intake_rules\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"promotion\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"metadata\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"tenant_id\":{\"type\":\"UUID\",\"referenceKind\":\"tenantId\",\"notNull\":false,\"unique\":false}},\"indexes\":[{\"name\":\"content_contribution_types_key_idx\",\"columns\":[\"key\"],\"unique\":true},{\"name\":\"content_contribution_types_slug_context_idx\",\"columns\":[\"slug\",\"context\"]},{\"name\":\"content_contribution_types_tenant_id_created_at_idx\",\"columns\":[\"tenant_id\",\"created_at\"]}],\"version\":\"35552300\"}},\"@happyvertical/smrt-content:ContentContributionTypeCollection\":{\"name\":\"contentcontributiontypecollection\",\"className\":\"ContentContributionTypeCollection\",\"qualifiedName\":\"@happyvertical/smrt-content:ContentContributionTypeCollection\",\"collection\":\"contentcontributiontypes\",\"filePath\":\"/home/runner/work/smrt/smrt/packages/content/src/content-contribution-types.ts\",\"packageName\":\"@happyvertical/smrt-content\",\"fields\":{},\"methods\":{\"getByKey\":{\"name\":\"getByKey\",\"async\":true,\"parameters\":[{\"name\":\"key\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"Promise<ContentContributionType | null>\",\"isStatic\":false,\"isPublic\":true}},\"decoratorConfig\":{\"tableName\":\"content_contribution_types\"},\"extends\":\"SmrtCollection\",\"extendsTypeArg\":\"ContentContributionType\",\"exportName\":\"ContentContributionTypeCollection\",\"collectionExportName\":\"ContentContributionTypeCollectionCollection\",\"schema\":{\"tableName\":\"content_contribution_types\",\"ddl\":\"CREATE TABLE IF NOT EXISTS \\\"content_contribution_types\\\" (\\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\":\"content_contribution_types_slug_context_idx\",\"columns\":[\"slug\",\"context\"],\"unique\":true},{\"name\":\"content_contribution_types_created_at_idx\",\"columns\":[\"created_at\"]}],\"version\":\"9c9a0367\"}},\"@happyvertical/smrt-content:ContentContribution\":{\"name\":\"contentcontribution\",\"className\":\"ContentContribution\",\"qualifiedName\":\"@happyvertical/smrt-content:ContentContribution\",\"collection\":\"contentcontributions\",\"filePath\":\"/home/runner/work/smrt/smrt/packages/content/src/content-contribution.ts\",\"packageName\":\"@happyvertical/smrt-content\",\"fields\":{\"contributorId\":{\"type\":\"foreignKey\",\"required\":true,\"related\":\"ContentContributor\",\"_meta\":{\"required\":true}},\"contributionTypeKey\":{\"type\":\"text\",\"required\":true,\"_meta\":{\"required\":true}},\"status\":{\"type\":\"text\",\"required\":false,\"default\":\"submitted\"},\"intakeDecision\":{\"type\":\"text\",\"required\":false,\"default\":\"accepted\"},\"channel\":{\"type\":\"text\",\"required\":false,\"default\":\"web\"},\"title\":{\"type\":\"text\",\"required\":false},\"description\":{\"type\":\"text\",\"required\":false},\"body\":{\"type\":\"text\",\"required\":false},\"contributorEmail\":{\"type\":\"text\",\"required\":false},\"contributorName\":{\"type\":\"text\",\"required\":false},\"threadKey\":{\"type\":\"text\",\"required\":false},\"sourceMessageId\":{\"type\":\"crossPackageRef\",\"required\":false,\"related\":\"@happyvertical/smrt-messages:Message\"},\"editorNotes\":{\"type\":\"text\",\"required\":false},\"promotedContentId\":{\"type\":\"foreignKey\",\"required\":false,\"related\":\"Content\"},\"revisionCount\":{\"type\":\"integer\",\"required\":true,\"default\":0},\"approvedAt\":{\"type\":\"datetime\",\"required\":false},\"promotedAt\":{\"type\":\"datetime\",\"required\":false},\"rejectedAt\":{\"type\":\"datetime\",\"required\":false},\"withdrawnAt\":{\"type\":\"datetime\",\"required\":false},\"requestedChangesAt\":{\"type\":\"datetime\",\"required\":false},\"metadata\":{\"type\":\"text\",\"required\":false},\"tenantId\":{\"type\":\"text\",\"required\":false,\"_meta\":{\"sqlType\":\"UUID\",\"nullable\":true,\"__tenancy\":{\"isTenantIdField\":true,\"autoFilter\":true,\"required\":false,\"autoPopulate\":true,\"nullable\":true,\"mode\":\"optional\",\"field\":\"tenantId\",\"allowSuperAdminBypass\":false}}},\"createdAt\":{\"type\":\"text\",\"required\":false},\"updatedAt\":{\"type\":\"text\",\"required\":false}},\"methods\":{\"getMetadata\":{\"name\":\"getMetadata\",\"async\":false,\"parameters\":[],\"returnType\":\"Record<string>\",\"isStatic\":false,\"isPublic\":true},\"setMetadata\":{\"name\":\"setMetadata\",\"async\":false,\"parameters\":[{\"name\":\"metadata\",\"type\":\"Record<string>\",\"optional\":false}],\"returnType\":\"void\",\"isStatic\":false,\"isPublic\":true},\"getContributor\":{\"name\":\"getContributor\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<ContentContributor | null>\",\"isStatic\":false,\"isPublic\":true},\"getRevisions\":{\"name\":\"getRevisions\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<ContentContributionRevision[]>\",\"isStatic\":false,\"isPublic\":true},\"getLatestRevision\":{\"name\":\"getLatestRevision\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<ContentContributionRevision | null>\",\"isStatic\":false,\"isPublic\":true},\"getAttachments\":{\"name\":\"getAttachments\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<ContentContributionAttachment[]>\",\"isStatic\":false,\"isPublic\":true},\"resolveContributionType\":{\"name\":\"resolveContributionType\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<ContentContributionTypeDefinition | null>\",\"isStatic\":false,\"isPublic\":true},\"appendRevisionAction\":{\"name\":\"appendRevisionAction\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"AppendContentContributionRevisionOptions\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"requestChangesAction\":{\"name\":\"requestChangesAction\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"RequestChangesContentContributionOptions\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"rejectAction\":{\"name\":\"rejectAction\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"RejectContentContributionOptions\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"withdrawAction\":{\"name\":\"withdrawAction\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"WithdrawContentContributionOptions\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"approveAction\":{\"name\":\"approveAction\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"ApproveContentContributionOptions\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"promoteAction\":{\"name\":\"promoteAction\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"PromoteContentContributionOptions\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true}},\"decoratorConfig\":{\"tableName\":\"content_contributions\",\"conflictColumns\":[\"id\"],\"api\":{\"include\":[\"list\",\"get\",\"create\",\"update\",\"delete\",\"appendRevisionAction\",\"requestChangesAction\",\"approveAction\",\"rejectAction\",\"withdrawAction\",\"promoteAction\"],\"routes\":{\"appendRevisionAction\":{\"method\":\"POST\",\"path\":\"revisions\"},\"requestChangesAction\":{\"method\":\"POST\",\"path\":\"request-changes\"},\"approveAction\":{\"method\":\"POST\",\"path\":\"approve\"},\"rejectAction\":{\"method\":\"POST\",\"path\":\"reject\"},\"withdrawAction\":{\"method\":\"POST\",\"path\":\"withdraw\"},\"promoteAction\":{\"method\":\"POST\",\"path\":\"promote\"}}},\"mcp\":{\"include\":[\"list\",\"get\",\"create\",\"update\"]},\"cli\":true,\"tenantScoped\":{\"mode\":\"optional\"}},\"extends\":\"SmrtObject\",\"exportName\":\"ContentContribution\",\"collectionExportName\":\"ContentContributionCollection\",\"validationRules\":[{\"field\":\"contributorId\",\"rule\":\"required\",\"fieldType\":\"foreignKey\"},{\"field\":\"contributionTypeKey\",\"rule\":\"required\",\"fieldType\":\"text\"},{\"field\":\"revisionCount\",\"rule\":\"required\",\"fieldType\":\"integer\"}],\"schema\":{\"tableName\":\"content_contributions\",\"ddl\":\"CREATE TABLE IF NOT EXISTS \\\"content_contributions\\\" (\\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 \\\"contributor_id\\\" UUID NOT NULL,\\n \\\"contribution_type_key\\\" TEXT NOT NULL,\\n \\\"status\\\" TEXT DEFAULT 'submitted',\\n \\\"intake_decision\\\" TEXT DEFAULT 'accepted',\\n \\\"channel\\\" TEXT DEFAULT 'web',\\n \\\"title\\\" TEXT,\\n \\\"description\\\" TEXT,\\n \\\"body\\\" TEXT,\\n \\\"contributor_email\\\" TEXT,\\n \\\"contributor_name\\\" TEXT,\\n \\\"thread_key\\\" TEXT,\\n \\\"source_message_id\\\" UUID,\\n \\\"editor_notes\\\" TEXT,\\n \\\"promoted_content_id\\\" UUID,\\n \\\"revision_count\\\" INTEGER NOT NULL DEFAULT 0,\\n \\\"approved_at\\\" TIMESTAMP,\\n \\\"promoted_at\\\" TIMESTAMP,\\n \\\"rejected_at\\\" TIMESTAMP,\\n \\\"withdrawn_at\\\" TIMESTAMP,\\n \\\"requested_changes_at\\\" TIMESTAMP,\\n \\\"metadata\\\" TEXT,\\n \\\"tenant_id\\\" UUID\\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\"},\"contributor_id\":{\"type\":\"UUID\",\"referenceKind\":\"foreignKey\",\"notNull\":true,\"unique\":false,\"foreignKey\":{\"table\":\"content_contributors\",\"column\":\"id\",\"onDelete\":\"NO ACTION\",\"onUpdate\":\"CASCADE\"}},\"contribution_type_key\":{\"type\":\"TEXT\",\"notNull\":true,\"unique\":false},\"status\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"submitted\"},\"intake_decision\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"accepted\"},\"channel\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"web\"},\"title\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"description\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"body\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"contributor_email\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"contributor_name\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"thread_key\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"source_message_id\":{\"type\":\"UUID\",\"referenceKind\":\"crossPackageRef\",\"notNull\":false,\"unique\":false},\"editor_notes\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"promoted_content_id\":{\"type\":\"UUID\",\"referenceKind\":\"foreignKey\",\"notNull\":false,\"unique\":false,\"foreignKey\":{\"table\":\"contents\",\"column\":\"id\",\"onDelete\":\"NO ACTION\",\"onUpdate\":\"CASCADE\"}},\"revision_count\":{\"type\":\"INTEGER\",\"notNull\":true,\"unique\":false,\"default\":0},\"approved_at\":{\"type\":\"TIMESTAMP\",\"notNull\":false,\"unique\":false},\"promoted_at\":{\"type\":\"TIMESTAMP\",\"notNull\":false,\"unique\":false},\"rejected_at\":{\"type\":\"TIMESTAMP\",\"notNull\":false,\"unique\":false},\"withdrawn_at\":{\"type\":\"TIMESTAMP\",\"notNull\":false,\"unique\":false},\"requested_changes_at\":{\"type\":\"TIMESTAMP\",\"notNull\":false,\"unique\":false},\"metadata\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"tenant_id\":{\"type\":\"UUID\",\"referenceKind\":\"tenantId\",\"notNull\":false,\"unique\":false}},\"indexes\":[{\"name\":\"content_contributions_slug_context_idx\",\"columns\":[\"slug\",\"context\"]},{\"name\":\"content_contributions_tenant_id_created_at_idx\",\"columns\":[\"tenant_id\",\"created_at\"]},{\"name\":\"content_contributions_contributor_id_idx\",\"columns\":[\"contributor_id\"]},{\"name\":\"content_contributions_source_message_id_idx\",\"columns\":[\"source_message_id\"]},{\"name\":\"content_contributions_promoted_content_id_idx\",\"columns\":[\"promoted_content_id\"]}],\"version\":\"ef8fd792\"}},\"@happyvertical/smrt-content:ContentContributions\":{\"name\":\"contentcontributions\",\"className\":\"ContentContributions\",\"qualifiedName\":\"@happyvertical/smrt-content:ContentContributions\",\"collection\":\"contentcontributions\",\"filePath\":\"/home/runner/work/smrt/smrt/packages/content/src/content-contributions.ts\",\"packageName\":\"@happyvertical/smrt-content\",\"fields\":{},\"methods\":{\"getContributionTypesAction\":{\"name\":\"getContributionTypesAction\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"listForContributor\":{\"name\":\"listForContributor\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"listInboxAction\":{\"name\":\"listInboxAction\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":true}],\"returnType\":\"Promise<ContentContribution[]>\",\"isStatic\":false,\"isPublic\":true},\"submitWebContribution\":{\"name\":\"submitWebContribution\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"SubmitWebContentContributionOptions\",\"optional\":false}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"ingestEmailContribution\":{\"name\":\"ingestEmailContribution\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"IngestEmailContentContributionOptions\",\"optional\":false}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true}},\"decoratorConfig\":{\"api\":{\"include\":[\"submitWebContribution\",\"ingestEmailContribution\",\"listForContributor\",\"listInboxAction\",\"getContributionTypesAction\"],\"routes\":{\"submitWebContribution\":{\"scope\":\"collection\",\"method\":\"POST\",\"path\":\"submit\"},\"ingestEmailContribution\":{\"scope\":\"collection\",\"method\":\"POST\",\"path\":\"ingest-email\"},\"listForContributor\":{\"scope\":\"collection\",\"method\":\"GET\",\"path\":\"by-contributor\"},\"listInboxAction\":{\"scope\":\"collection\",\"method\":\"GET\",\"path\":\"inbox\"},\"getContributionTypesAction\":{\"scope\":\"collection\",\"method\":\"GET\",\"path\":\"types\"}}},\"mcp\":false,\"cli\":false,\"tableName\":\"content_contributions\"},\"extends\":\"SmrtCollection\",\"extendsTypeArg\":\"ContentContribution\",\"exportName\":\"ContentContributions\",\"collectionExportName\":\"ContentContributionsCollection\",\"schema\":{\"tableName\":\"content_contributions\",\"ddl\":\"CREATE TABLE IF NOT EXISTS \\\"content_contributions\\\" (\\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\":\"content_contributions_slug_context_idx\",\"columns\":[\"slug\",\"context\"],\"unique\":true},{\"name\":\"content_contributions_created_at_idx\",\"columns\":[\"created_at\"]}],\"version\":\"641c0cc8\"}},\"@happyvertical/smrt-content:ContentContributor\":{\"name\":\"contentcontributor\",\"className\":\"ContentContributor\",\"qualifiedName\":\"@happyvertical/smrt-content:ContentContributor\",\"collection\":\"contentcontributors\",\"filePath\":\"/home/runner/work/smrt/smrt/packages/content/src/content-contributor.ts\",\"packageName\":\"@happyvertical/smrt-content\",\"fields\":{\"profileId\":{\"type\":\"crossPackageRef\",\"required\":false,\"related\":\"@happyvertical/smrt-profiles:Profile\"},\"email\":{\"type\":\"text\",\"required\":true,\"_meta\":{\"required\":true}},\"name\":{\"type\":\"text\",\"required\":false},\"trustLevel\":{\"type\":\"text\",\"required\":false,\"default\":\"standard\"},\"metadata\":{\"type\":\"text\",\"required\":false},\"tenantId\":{\"type\":\"text\",\"required\":false,\"_meta\":{\"sqlType\":\"UUID\",\"nullable\":true,\"__tenancy\":{\"isTenantIdField\":true,\"autoFilter\":true,\"required\":false,\"autoPopulate\":true,\"nullable\":true,\"mode\":\"optional\",\"field\":\"tenantId\",\"allowSuperAdminBypass\":false}}},\"createdAt\":{\"type\":\"text\",\"required\":false},\"updatedAt\":{\"type\":\"text\",\"required\":false}},\"methods\":{\"getMetadata\":{\"name\":\"getMetadata\",\"async\":false,\"parameters\":[],\"returnType\":\"Record<string>\",\"isStatic\":false,\"isPublic\":true},\"setMetadata\":{\"name\":\"setMetadata\",\"async\":false,\"parameters\":[{\"name\":\"metadata\",\"type\":\"Record<string>\",\"optional\":false}],\"returnType\":\"void\",\"isStatic\":false,\"isPublic\":true}},\"decoratorConfig\":{\"tableName\":\"content_contributors\",\"conflictColumns\":[\"email\"],\"api\":{\"include\":[\"list\",\"get\",\"create\",\"update\",\"delete\"]},\"mcp\":{\"include\":[\"list\",\"get\",\"create\",\"update\",\"delete\"]},\"cli\":true,\"tenantScoped\":{\"mode\":\"optional\"}},\"extends\":\"SmrtObject\",\"exportName\":\"ContentContributor\",\"collectionExportName\":\"ContentContributorCollection\",\"validationRules\":[{\"field\":\"email\",\"rule\":\"required\",\"fieldType\":\"text\"}],\"schema\":{\"tableName\":\"content_contributors\",\"ddl\":\"CREATE TABLE IF NOT EXISTS \\\"content_contributors\\\" (\\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 \\\"profile_id\\\" UUID,\\n \\\"email\\\" TEXT NOT NULL,\\n \\\"name\\\" TEXT,\\n \\\"trust_level\\\" TEXT DEFAULT 'standard',\\n \\\"metadata\\\" TEXT,\\n \\\"tenant_id\\\" UUID\\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\"},\"profile_id\":{\"type\":\"UUID\",\"referenceKind\":\"crossPackageRef\",\"notNull\":false,\"unique\":false},\"email\":{\"type\":\"TEXT\",\"notNull\":true,\"unique\":false},\"name\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"trust_level\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"standard\"},\"metadata\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"tenant_id\":{\"type\":\"UUID\",\"referenceKind\":\"tenantId\",\"notNull\":false,\"unique\":false}},\"indexes\":[{\"name\":\"content_contributors_email_idx\",\"columns\":[\"email\"],\"unique\":true},{\"name\":\"content_contributors_slug_context_idx\",\"columns\":[\"slug\",\"context\"]},{\"name\":\"content_contributors_tenant_id_created_at_idx\",\"columns\":[\"tenant_id\",\"created_at\"]},{\"name\":\"content_contributors_profile_id_idx\",\"columns\":[\"profile_id\"]}],\"version\":\"7eb9c661\"}},\"@happyvertical/smrt-content:ContentContributorCollection\":{\"name\":\"contentcontributorcollection\",\"className\":\"ContentContributorCollection\",\"qualifiedName\":\"@happyvertical/smrt-content:ContentContributorCollection\",\"collection\":\"contentcontributors\",\"filePath\":\"/home/runner/work/smrt/smrt/packages/content/src/content-contributors.ts\",\"packageName\":\"@happyvertical/smrt-content\",\"fields\":{},\"methods\":{\"getByEmail\":{\"name\":\"getByEmail\",\"async\":true,\"parameters\":[{\"name\":\"email\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"Promise<ContentContributor | null>\",\"isStatic\":false,\"isPublic\":true},\"getByProfileId\":{\"name\":\"getByProfileId\",\"async\":true,\"parameters\":[{\"name\":\"profileId\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"Promise<ContentContributor | null>\",\"isStatic\":false,\"isPublic\":true},\"findOrCreateByEmail\":{\"name\":\"findOrCreateByEmail\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":false}],\"returnType\":\"Promise<ContentContributor>\",\"isStatic\":false,\"isPublic\":true}},\"decoratorConfig\":{\"tableName\":\"content_contributors\"},\"extends\":\"SmrtCollection\",\"extendsTypeArg\":\"ContentContributor\",\"exportName\":\"ContentContributorCollection\",\"collectionExportName\":\"ContentContributorCollectionCollection\",\"schema\":{\"tableName\":\"content_contributors\",\"ddl\":\"CREATE TABLE IF NOT EXISTS \\\"content_contributors\\\" (\\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\":\"content_contributors_slug_context_idx\",\"columns\":[\"slug\",\"context\"],\"unique\":true},{\"name\":\"content_contributors_created_at_idx\",\"columns\":[\"created_at\"]}],\"version\":\"b457e60b\"}},\"@happyvertical/smrt-content:ContentCorrection\":{\"name\":\"contentcorrection\",\"className\":\"ContentCorrection\",\"qualifiedName\":\"@happyvertical/smrt-content:ContentCorrection\",\"collection\":\"contentcorrections\",\"filePath\":\"/home/runner/work/smrt/smrt/packages/content/src/content-correction.ts\",\"packageName\":\"@happyvertical/smrt-content\",\"fields\":{\"contentId\":{\"type\":\"foreignKey\",\"required\":true,\"related\":\"Content\",\"_meta\":{\"required\":true}},\"contentVersionId\":{\"type\":\"foreignKey\",\"required\":false,\"related\":\"ContentVersion\"},\"factId\":{\"type\":\"crossPackageRef\",\"required\":false,\"related\":\"@happyvertical/smrt-facts:Fact\"},\"replacementFactId\":{\"type\":\"crossPackageRef\",\"required\":false,\"related\":\"@happyvertical/smrt-facts:Fact\"},\"correctionType\":{\"type\":\"text\",\"required\":false,\"default\":\"fact\"},\"status\":{\"type\":\"text\",\"required\":false,\"default\":\"draft\"},\"summary\":{\"type\":\"text\",\"required\":false},\"incorrectText\":{\"type\":\"text\",\"required\":false},\"correctedText\":{\"type\":\"text\",\"required\":false},\"publicNote\":{\"type\":\"text\",\"required\":false},\"metadata\":{\"type\":\"text\",\"required\":false},\"tenantId\":{\"type\":\"text\",\"required\":false,\"_meta\":{\"sqlType\":\"UUID\",\"nullable\":true,\"__tenancy\":{\"isTenantIdField\":true,\"autoFilter\":true,\"required\":false,\"autoPopulate\":true,\"nullable\":true,\"mode\":\"optional\",\"field\":\"tenantId\",\"allowSuperAdminBypass\":false}}},\"publishedAt\":{\"type\":\"datetime\",\"required\":false},\"createdAt\":{\"type\":\"text\",\"required\":false},\"updatedAt\":{\"type\":\"text\",\"required\":false}},\"methods\":{\"getMetadata\":{\"name\":\"getMetadata\",\"async\":false,\"parameters\":[],\"returnType\":\"Record<string>\",\"isStatic\":false,\"isPublic\":true}},\"decoratorConfig\":{\"tableName\":\"content_corrections\",\"api\":{\"include\":[\"list\",\"get\",\"create\",\"update\"]},\"mcp\":{\"include\":[\"list\",\"get\",\"create\",\"update\"]},\"cli\":true,\"tenantScoped\":{\"mode\":\"optional\"},\"conflictColumns\":[\"tenant_id\",\"slug\",\"context\"]},\"extends\":\"SmrtObject\",\"exportName\":\"ContentCorrection\",\"collectionExportName\":\"ContentCorrectionCollection\",\"validationRules\":[{\"field\":\"contentId\",\"rule\":\"required\",\"fieldType\":\"foreignKey\"}],\"schema\":{\"tableName\":\"content_corrections\",\"ddl\":\"CREATE TABLE IF NOT EXISTS \\\"content_corrections\\\" (\\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 \\\"content_id\\\" UUID NOT NULL,\\n \\\"content_version_id\\\" UUID,\\n \\\"fact_id\\\" UUID,\\n \\\"replacement_fact_id\\\" UUID,\\n \\\"correction_type\\\" TEXT DEFAULT 'fact',\\n \\\"status\\\" TEXT DEFAULT 'draft',\\n \\\"summary\\\" TEXT,\\n \\\"incorrect_text\\\" TEXT,\\n \\\"corrected_text\\\" TEXT,\\n \\\"public_note\\\" TEXT,\\n \\\"metadata\\\" TEXT,\\n \\\"tenant_id\\\" UUID,\\n \\\"published_at\\\" 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\"},\"content_id\":{\"type\":\"UUID\",\"referenceKind\":\"foreignKey\",\"notNull\":true,\"unique\":false,\"foreignKey\":{\"table\":\"contents\",\"column\":\"id\",\"onDelete\":\"NO ACTION\",\"onUpdate\":\"CASCADE\"}},\"content_version_id\":{\"type\":\"UUID\",\"referenceKind\":\"foreignKey\",\"notNull\":false,\"unique\":false,\"foreignKey\":{\"table\":\"content_versions\",\"column\":\"id\",\"onDelete\":\"NO ACTION\",\"onUpdate\":\"CASCADE\"}},\"fact_id\":{\"type\":\"UUID\",\"referenceKind\":\"crossPackageRef\",\"notNull\":false,\"unique\":false},\"replacement_fact_id\":{\"type\":\"UUID\",\"referenceKind\":\"crossPackageRef\",\"notNull\":false,\"unique\":false},\"correction_type\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"fact\"},\"status\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"draft\"},\"summary\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"incorrect_text\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"corrected_text\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"public_note\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"metadata\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"tenant_id\":{\"type\":\"UUID\",\"referenceKind\":\"tenantId\",\"notNull\":false,\"unique\":false},\"published_at\":{\"type\":\"TIMESTAMP\",\"notNull\":false,\"unique\":false}},\"indexes\":[{\"name\":\"content_corrections_slug_context_idx\",\"columns\":[\"tenant_id\",\"slug\",\"context\"],\"unique\":true},{\"name\":\"content_corrections_tenant_id_created_at_idx\",\"columns\":[\"tenant_id\",\"created_at\"]},{\"name\":\"content_corrections_content_id_idx\",\"columns\":[\"content_id\"]},{\"name\":\"content_corrections_content_version_id_idx\",\"columns\":[\"content_version_id\"]},{\"name\":\"content_corrections_fact_id_idx\",\"columns\":[\"fact_id\"]},{\"name\":\"content_corrections_replacement_fact_id_idx\",\"columns\":[\"replacement_fact_id\"]}],\"version\":\"bf2808c7\"}},\"@happyvertical/smrt-content:ContentCorrectionCollection\":{\"name\":\"contentcorrectioncollection\",\"className\":\"ContentCorrectionCollection\",\"qualifiedName\":\"@happyvertical/smrt-content:ContentCorrectionCollection\",\"collection\":\"contentcorrections\",\"filePath\":\"/home/runner/work/smrt/smrt/packages/content/src/content-corrections.ts\",\"packageName\":\"@happyvertical/smrt-content\",\"fields\":{},\"methods\":{\"listForContent\":{\"name\":\"listForContent\",\"async\":true,\"parameters\":[{\"name\":\"contentId\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"Promise<ContentCorrection[]>\",\"isStatic\":false,\"isPublic\":true},\"getPublishedForContent\":{\"name\":\"getPublishedForContent\",\"async\":true,\"parameters\":[{\"name\":\"contentId\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"Promise<ContentCorrection[]>\",\"isStatic\":false,\"isPublic\":true},\"issue\":{\"name\":\"issue\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"any\",\"optional\":false}],\"returnType\":\"Promise<ContentCorrection>\",\"isStatic\":false,\"isPublic\":true}},\"decoratorConfig\":{\"tableName\":\"content_corrections\"},\"extends\":\"SmrtCollection\",\"extendsTypeArg\":\"ContentCorrection\",\"exportName\":\"ContentCorrectionCollection\",\"collectionExportName\":\"ContentCorrectionCollectionCollection\",\"schema\":{\"tableName\":\"content_corrections\",\"ddl\":\"CREATE TABLE IF NOT EXISTS \\\"content_corrections\\\" (\\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\":\"content_corrections_slug_context_idx\",\"columns\":[\"slug\",\"context\"],\"unique\":true},{\"name\":\"content_corrections_created_at_idx\",\"columns\":[\"created_at\"]}],\"version\":\"6ebe142d\"}},\"@happyvertical/smrt-content:ContentFeedSource\":{\"name\":\"contentfeedsource\",\"className\":\"ContentFeedSource\",\"qualifiedName\":\"@happyvertical/smrt-content:ContentFeedSource\",\"collection\":\"contentfeedsources\",\"filePath\":\"/home/runner/work/smrt/smrt/packages/content/src/content-feed-source.ts\",\"packageName\":\"@happyvertical/smrt-content\",\"fields\":{\"tenantId\":{\"type\":\"text\",\"required\":false,\"_meta\":{\"sqlType\":\"UUID\",\"nullable\":true,\"__tenancy\":{\"isTenantIdField\":true,\"autoFilter\":true,\"required\":false,\"autoPopulate\":true,\"nullable\":true,\"mode\":\"optional\",\"field\":\"tenantId\",\"allowSuperAdminBypass\":false}}},\"name\":{\"type\":\"text\",\"required\":true,\"_meta\":{\"required\":true}},\"feedUrl\":{\"type\":\"text\",\"required\":true,\"_meta\":{\"required\":true}},\"homepageUrl\":{\"type\":\"text\",\"required\":false},\"format\":{\"type\":\"text\",\"required\":false},\"status\":{\"type\":\"text\",\"required\":true,\"default\":\"active\",\"_meta\":{\"required\":true,\"default\":\"active\"}},\"defaultCategory\":{\"type\":\"text\",\"required\":false},\"sourceGroup\":{\"type\":\"text\",\"required\":false},\"pollIntervalMinutes\":{\"type\":\"integer\",\"required\":true,\"default\":15},\"etag\":{\"type\":\"text\",\"required\":false},\"lastModified\":{\"type\":\"text\",\"required\":false},\"lastFetchedAt\":{\"type\":\"datetime\",\"required\":false},\"lastSuccessAt\":{\"type\":\"datetime\",\"required\":false},\"lastError\":{\"type\":\"text\",\"required\":false},\"metadata\":{\"type\":\"json\",\"required\":false,\"default\":{}},\"createdAt\":{\"type\":\"text\",\"required\":false},\"updatedAt\":{\"type\":\"text\",\"required\":false}},\"methods\":{\"getMetadata\":{\"name\":\"getMetadata\",\"async\":false,\"parameters\":[],\"returnType\":\"Record<string>\",\"isStatic\":false,\"isPublic\":true},\"setMetadata\":{\"name\":\"setMetadata\",\"async\":false,\"parameters\":[{\"name\":\"metadata\",\"type\":\"Record<string>\",\"optional\":false}],\"returnType\":\"void\",\"isStatic\":false,\"isPublic\":true},\"markFetchStarted\":{\"name\":\"markFetchStarted\",\"async\":false,\"parameters\":[{\"name\":\"at\",\"type\":\"any\",\"optional\":true}],\"returnType\":\"void\",\"isStatic\":false,\"isPublic\":true},\"markFetchSucceeded\":{\"name\":\"markFetchSucceeded\",\"async\":false,\"parameters\":[{\"name\":\"at\",\"type\":\"any\",\"optional\":true},{\"name\":\"headers\",\"type\":\"object\",\"optional\":true}],\"returnType\":\"void\",\"isStatic\":false,\"isPublic\":true},\"markFetchFailed\":{\"name\":\"markFetchFailed\",\"async\":false,\"parameters\":[{\"name\":\"error\",\"type\":\"any\",\"optional\":false},{\"name\":\"at\",\"type\":\"any\",\"optional\":true}],\"returnType\":\"void\",\"isStatic\":false,\"isPublic\":true}},\"decoratorConfig\":{\"tableName\":\"content_feed_sources\",\"conflictColumns\":[\"tenant_id\",\"feed_url\"],\"api\":{\"include\":[\"list\",\"get\",\"create\",\"update\",\"delete\"]},\"mcp\":{\"include\":[\"list\",\"get\",\"create\",\"update\",\"delete\"]},\"cli\":true,\"tenantScoped\":{\"mode\":\"optional\"}},\"extends\":\"SmrtObject\",\"exportName\":\"ContentFeedSource\",\"collectionExportName\":\"ContentFeedSourceCollection\",\"validationRules\":[{\"field\":\"name\",\"rule\":\"required\",\"fieldType\":\"text\"},{\"field\":\"feedUrl\",\"rule\":\"required\",\"fieldType\":\"text\"},{\"field\":\"status\",\"rule\":\"required\",\"fieldType\":\"text\"},{\"field\":\"pollIntervalMinutes\",\"rule\":\"required\",\"fieldType\":\"integer\"}],\"schema\":{\"tableName\":\"content_feed_sources\",\"ddl\":\"CREATE TABLE IF NOT EXISTS \\\"content_feed_sources\\\" (\\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,\\n \\\"name\\\" TEXT NOT NULL,\\n \\\"feed_url\\\" TEXT NOT NULL,\\n \\\"homepage_url\\\" TEXT,\\n \\\"format\\\" TEXT,\\n \\\"status\\\" TEXT NOT NULL DEFAULT 'active',\\n \\\"default_category\\\" TEXT,\\n \\\"source_group\\\" TEXT,\\n \\\"poll_interval_minutes\\\" INTEGER NOT NULL DEFAULT 15,\\n \\\"etag\\\" TEXT,\\n \\\"last_modified\\\" TEXT,\\n \\\"last_fetched_at\\\" TIMESTAMP,\\n \\\"last_success_at\\\" TIMESTAMP,\\n \\\"last_error\\\" TEXT,\\n \\\"metadata\\\" JSON 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\":false,\"unique\":false},\"name\":{\"type\":\"TEXT\",\"notNull\":true,\"unique\":false},\"feed_url\":{\"type\":\"TEXT\",\"notNull\":true,\"unique\":false},\"homepage_url\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"format\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"status\":{\"type\":\"TEXT\",\"notNull\":true,\"unique\":false,\"default\":\"active\"},\"default_category\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"source_group\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"poll_interval_minutes\":{\"type\":\"INTEGER\",\"notNull\":true,\"unique\":false,\"default\":15},\"etag\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"last_modified\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"last_fetched_at\":{\"type\":\"TIMESTAMP\",\"notNull\":false,\"unique\":false},\"last_success_at\":{\"type\":\"TIMESTAMP\",\"notNull\":false,\"unique\":false},\"last_error\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"metadata\":{\"type\":\"JSON\",\"notNull\":false,\"unique\":false,\"default\":{}}},\"indexes\":[{\"name\":\"content_feed_sources_tenant_id_feed_url_idx\",\"columns\":[\"tenant_id\",\"feed_url\"],\"unique\":true},{\"name\":\"content_feed_sources_slug_context_idx\",\"columns\":[\"slug\",\"context\"]},{\"name\":\"content_feed_sources_tenant_id_created_at_idx\",\"columns\":[\"tenant_id\",\"created_at\"]}],\"version\":\"bbcb36e5\"}},\"@happyvertical/smrt-content:ContentFeedSourceCollection\":{\"name\":\"contentfeedsourcecollection\",\"className\":\"ContentFeedSourceCollection\",\"qualifiedName\":\"@happyvertical/smrt-content:ContentFeedSourceCollection\",\"collection\":\"contentfeedsources\",\"filePath\":\"/home/runner/work/smrt/smrt/packages/content/src/content-feed-sources.ts\",\"packageName\":\"@happyvertical/smrt-content\",\"fields\":{},\"methods\":{\"findActive\":{\"name\":\"findActive\",\"async\":true,\"parameters\":[{\"name\":\"tenantId\",\"type\":\"string | null\",\"optional\":true}],\"returnType\":\"Promise<ContentFeedSource[]>\",\"isStatic\":false,\"isPublic\":true},\"findByStatus\":{\"name\":\"findByStatus\",\"async\":true,\"parameters\":[{\"name\":\"status\",\"type\":\"ContentFeedSourceStatus\",\"optional\":false},{\"name\":\"tenantId\",\"type\":\"string | null\",\"optional\":true}],\"returnType\":\"Promise<ContentFeedSource[]>\",\"isStatic\":false,\"isPublic\":true},\"findByFeedUrl\":{\"name\":\"findByFeedUrl\",\"async\":true,\"parameters\":[{\"name\":\"feedUrl\",\"type\":\"string\",\"optional\":false},{\"name\":\"tenantId\",\"type\":\"string | null\",\"optional\":true}],\"returnType\":\"Promise<ContentFeedSource | null>\",\"isStatic\":false,\"isPublic\":true}},\"decoratorConfig\":{\"tableName\":\"content_feed_sources\"},\"extends\":\"SmrtCollection\",\"extendsTypeArg\":\"ContentFeedSource\",\"exportName\":\"ContentFeedSourceCollection\",\"collectionExportName\":\"ContentFeedSourceCollectionCollection\",\"schema\":{\"tableName\":\"content_feed_sources\",\"ddl\":\"CREATE TABLE IF NOT EXISTS \\\"content_feed_sources\\\" (\\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\":\"content_feed_sources_slug_context_idx\",\"columns\":[\"slug\",\"context\"],\"unique\":true},{\"name\":\"content_feed_sources_created_at_idx\",\"columns\":[\"created_at\"]}],\"version\":\"bb0cca9e\"}},\"@happyvertical/smrt-content:ContentGovernanceAssignment\":{\"name\":\"contentgovernanceassignment\",\"className\":\"ContentGovernanceAssignment\",\"qualifiedName\":\"@happyvertical/smrt-content:ContentGovernanceAssignment\",\"collection\":\"contentgovernanceassignments\",\"filePath\":\"/home/runner/work/smrt/smrt/packages/content/src/content-governance-assignment.ts\",\"packageName\":\"@happyvertical/smrt-content\",\"fields\":{\"key\":{\"type\":\"text\",\"required\":true,\"_meta\":{\"required\":true}},\"label\":{\"type\":\"text\",\"required\":false},\"contentType\":{\"type\":\"text\",\"required\":true,\"_meta\":{\"required\":true}},\"contentVariant\":{\"type\":\"text\",\"required\":false},\"enabled\":{\"type\":\"boolean\",\"required\":true,\"default\":true},\"factLinkingEnabled\":{\"type\":\"boolean\",\"required\":true,\"default\":false},\"transparencyEnabled\":{\"type\":\"boolean\",\"required\":true,\"default\":false},\"publicationProfileKey\":{\"type\":\"text\",\"required\":false},\"correctionProfileKey\":{\"type\":\"text\",\"required\":false},\"enforcePublishReadiness\":{\"type\":\"boolean\",\"required\":true,\"default\":false},\"defaultFactRelationship\":{\"type\":\"text\",\"required\":false,\"default\":\"supports\"},\"metadata\":{\"type\":\"text\",\"required\":false},\"tenantId\":{\"type\":\"text\",\"required\":false,\"_meta\":{\"sqlType\":\"UUID\",\"nullable\":true,\"__tenancy\":{\"isTenantIdField\":true,\"autoFilter\":true,\"required\":false,\"autoPopulate\":true,\"nullable\":true,\"mode\":\"optional\",\"field\":\"tenantId\",\"allowSuperAdminBypass\":false}}},\"createdAt\":{\"type\":\"text\",\"required\":false},\"updatedAt\":{\"type\":\"text\",\"required\":false}},\"methods\":{\"getMetadata\":{\"name\":\"getMetadata\",\"async\":false,\"parameters\":[],\"returnType\":\"Record<string>\",\"isStatic\":false,\"isPublic\":true},\"toDefinition\":{\"name\":\"toDefinition\",\"async\":false,\"parameters\":[],\"returnType\":\"ContentGovernanceAssignmentDefinition\",\"isStatic\":false,\"isPublic\":true}},\"decoratorConfig\":{\"tableName\":\"content_governance_assignments\",\"conflictColumns\":[\"key\"],\"api\":{\"include\":[\"list\",\"get\",\"create\",\"update\",\"delete\"]},\"mcp\":{\"include\":[\"list\",\"get\",\"create\",\"update\",\"delete\"]},\"cli\":true,\"tenantScoped\":{\"mode\":\"optional\"}},\"extends\":\"SmrtObject\",\"exportName\":\"ContentGovernanceAssignment\",\"collectionExportName\":\"ContentGovernanceAssignmentCollection\",\"validationRules\":[{\"field\":\"key\",\"rule\":\"required\",\"fieldType\":\"text\"},{\"field\":\"contentType\",\"rule\":\"required\",\"fieldType\":\"text\"},{\"field\":\"enabled\",\"rule\":\"required\",\"fieldType\":\"boolean\"},{\"field\":\"factLinkingEnabled\",\"rule\":\"required\",\"fieldType\":\"boolean\"},{\"field\":\"transparencyEnabled\",\"rule\":\"required\",\"fieldType\":\"boolean\"},{\"field\":\"enforcePublishReadiness\",\"rule\":\"required\",\"fieldType\":\"boolean\"}],\"schema\":{\"tableName\":\"content_governance_assignments\",\"ddl\":\"CREATE TABLE IF NOT EXISTS \\\"content_governance_assignments\\\" (\\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 \\\"key\\\" TEXT NOT NULL,\\n \\\"label\\\" TEXT,\\n \\\"content_type\\\" TEXT NOT NULL,\\n \\\"content_variant\\\" TEXT,\\n \\\"enabled\\\" BOOLEAN NOT NULL DEFAULT TRUE,\\n \\\"fact_linking_enabled\\\" BOOLEAN NOT NULL DEFAULT FALSE,\\n \\\"transparency_enabled\\\" BOOLEAN NOT NULL DEFAULT FALSE,\\n \\\"publication_profile_key\\\" TEXT,\\n \\\"correction_profile_key\\\" TEXT,\\n \\\"enforce_publish_readiness\\\" BOOLEAN NOT NULL DEFAULT FALSE,\\n \\\"default_fact_relationship\\\" TEXT DEFAULT 'supports',\\n \\\"metadata\\\" TEXT,\\n \\\"tenant_id\\\" UUID\\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\"},\"key\":{\"type\":\"TEXT\",\"notNull\":true,\"unique\":false},\"label\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"content_type\":{\"type\":\"TEXT\",\"notNull\":true,\"unique\":false},\"content_variant\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"enabled\":{\"type\":\"BOOLEAN\",\"notNull\":true,\"unique\":false,\"default\":true},\"fact_linking_enabled\":{\"type\":\"BOOLEAN\",\"notNull\":true,\"unique\":false,\"default\":false},\"transparency_enabled\":{\"type\":\"BOOLEAN\",\"notNull\":true,\"unique\":false,\"default\":false},\"publication_profile_key\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"correction_profile_key\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"enforce_publish_readiness\":{\"type\":\"BOOLEAN\",\"notNull\":true,\"unique\":false,\"default\":false},\"default_fact_relationship\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"supports\"},\"metadata\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"tenant_id\":{\"type\":\"UUID\",\"referenceKind\":\"tenantId\",\"notNull\":false,\"unique\":false}},\"indexes\":[{\"name\":\"content_governance_assignments_key_idx\",\"columns\":[\"key\"],\"unique\":true},{\"name\":\"content_governance_assignments_slug_context_idx\",\"columns\":[\"slug\",\"context\"]},{\"name\":\"content_governance_assignments_tenant_id_created_at_idx\",\"columns\":[\"tenant_id\",\"created_at\"]}],\"version\":\"00a2c610\"}},\"@happyvertical/smrt-content:ContentGovernanceAssignmentCollection\":{\"name\":\"contentgovernanceassignmentcollection\",\"className\":\"ContentGovernanceAssignmentCollection\",\"qualifiedName\":\"@happyvertical/smrt-content:ContentGovernanceAssignmentCollection\",\"collection\":\"contentgovernanceassignments\",\"filePath\":\"/home/runner/work/smrt/smrt/packages/content/src/content-governance-assignments.ts\",\"packageName\":\"@happyvertical/smrt-content\",\"fields\":{},\"methods\":{\"getByKey\":{\"name\":\"getByKey\",\"async\":true,\"parameters\":[{\"name\":\"key\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"Promise<ContentGovernanceAssignment | null>\",\"isStatic\":false,\"isPublic\":true},\"resolveForContent\":{\"name\":\"resolveForContent\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":false}],\"returnType\":\"Promise<ContentGovernanceAssignment | null>\",\"isStatic\":false,\"isPublic\":true}},\"decoratorConfig\":{\"tableName\":\"content_governance_assignments\"},\"extends\":\"SmrtCollection\",\"extendsTypeArg\":\"ContentGovernanceAssignment\",\"exportName\":\"ContentGovernanceAssignmentCollection\",\"collectionExportName\":\"ContentGovernanceAssignmentCollectionCollection\",\"schema\":{\"tableName\":\"content_governance_assignments\",\"ddl\":\"CREATE TABLE IF NOT EXISTS \\\"content_governance_assignments\\\" (\\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\":\"content_governance_assignments_slug_context_idx\",\"columns\":[\"slug\",\"context\"],\"unique\":true},{\"name\":\"content_governance_assignments_created_at_idx\",\"columns\":[\"created_at\"]}],\"version\":\"21471529\"}},\"@happyvertical/smrt-content:ContentGovernancePolicyCollection\":{\"name\":\"contentgovernancepolicycollection\",\"className\":\"ContentGovernancePolicyCollection\",\"qualifiedName\":\"@happyvertical/smrt-content:ContentGovernancePolicyCollection\",\"collection\":\"contentgovernancepolicies\",\"filePath\":\"/home/runner/work/smrt/smrt/packages/content/src/content-governance-policies.ts\",\"packageName\":\"@happyvertical/smrt-content\",\"fields\":{},\"methods\":{\"getByKey\":{\"name\":\"getByKey\",\"async\":true,\"parameters\":[{\"name\":\"key\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"Promise<ContentGovernancePolicy | null>\",\"isStatic\":false,\"isPublic\":true}},\"decoratorConfig\":{\"tableName\":\"content_governance_policies\"},\"extends\":\"SmrtCollection\",\"extendsTypeArg\":\"ContentGovernancePolicy\",\"exportName\":\"ContentGovernancePolicyCollection\",\"collectionExportName\":\"ContentGovernancePolicyCollectionCollection\",\"schema\":{\"tableName\":\"content_governance_policies\",\"ddl\":\"CREATE TABLE IF NOT EXISTS \\\"content_governance_policies\\\" (\\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\":\"content_governance_policies_slug_context_idx\",\"columns\":[\"slug\",\"context\"],\"unique\":true},{\"name\":\"content_governance_policies_created_at_idx\",\"columns\":[\"created_at\"]}],\"version\":\"e2da0e5b\"}},\"@happyvertical/smrt-content:ContentGovernancePolicy\":{\"name\":\"contentgovernancepolicy\",\"className\":\"ContentGovernancePolicy\",\"qualifiedName\":\"@happyvertical/smrt-content:ContentGovernancePolicy\",\"collection\":\"contentgovernancepolicies\",\"filePath\":\"/home/runner/work/smrt/smrt/packages/content/src/content-governance-policy.ts\",\"packageName\":\"@happyvertical/smrt-content\",\"fields\":{\"key\":{\"type\":\"text\",\"required\":true,\"_meta\":{\"required\":true}},\"label\":{\"type\":\"text\",\"required\":false},\"kind\":{\"type\":\"text\",\"required\":false,\"default\":\"custom\"},\"instructions\":{\"type\":\"text\",\"required\":false},\"enabled\":{\"type\":\"boolean\",\"required\":true,\"default\":true},\"metadata\":{\"type\":\"text\",\"required\":false},\"tenantId\":{\"type\":\"text\",\"required\":false,\"_meta\":{\"sqlType\":\"UUID\",\"nullable\":true,\"__tenancy\":{\"isTenantIdField\":true,\"autoFilter\":true,\"required\":false,\"autoPopulate\":true,\"nullable\":true,\"mode\":\"optional\",\"field\":\"tenantId\",\"allowSuperAdminBypass\":false}}},\"createdAt\":{\"type\":\"text\",\"required\":false},\"updatedAt\":{\"type\":\"text\",\"required\":false}},\"methods\":{\"getMetadata\":{\"name\":\"getMetadata\",\"async\":false,\"parameters\":[],\"returnType\":\"Record<string>\",\"isStatic\":false,\"isPublic\":true},\"toDefinition\":{\"name\":\"toDefinition\",\"async\":false,\"parameters\":[],\"returnType\":\"ContentReviewPolicyDefinition\",\"isStatic\":false,\"isPublic\":true},\"delete\":{\"name\":\"delete\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<void>\",\"isStatic\":false,\"isPublic\":true}},\"decoratorConfig\":{\"tableName\":\"content_governance_policies\",\"conflictColumns\":[\"key\"],\"api\":{\"include\":[\"list\",\"get\",\"create\",\"update\",\"delete\"]},\"mcp\":{\"include\":[\"list\",\"get\",\"create\",\"update\",\"delete\"]},\"cli\":true,\"tenantScoped\":{\"mode\":\"optional\"}},\"extends\":\"SmrtObject\",\"exportName\":\"ContentGovernancePolicy\",\"collectionExportName\":\"ContentGovernancePolicyCollection\",\"validationRules\":[{\"field\":\"key\",\"rule\":\"required\",\"fieldType\":\"text\"},{\"field\":\"enabled\",\"rule\":\"required\",\"fieldType\":\"boolean\"}],\"schema\":{\"tableName\":\"content_governance_policies\",\"ddl\":\"CREATE TABLE IF NOT EXISTS \\\"content_governance_policies\\\" (\\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 \\\"key\\\" TEXT NOT NULL,\\n \\\"label\\\" TEXT,\\n \\\"kind\\\" TEXT DEFAULT 'custom',\\n \\\"instructions\\\" TEXT,\\n \\\"enabled\\\" BOOLEAN NOT NULL DEFAULT TRUE,\\n \\\"metadata\\\" TEXT,\\n \\\"tenant_id\\\" UUID\\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\"},\"key\":{\"type\":\"TEXT\",\"notNull\":true,\"unique\":false},\"label\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"kind\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"custom\"},\"instructions\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"enabled\":{\"type\":\"BOOLEAN\",\"notNull\":true,\"unique\":false,\"default\":true},\"metadata\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"tenant_id\":{\"type\":\"UUID\",\"referenceKind\":\"tenantId\",\"notNull\":false,\"unique\":false}},\"indexes\":[{\"name\":\"content_governance_policies_key_idx\",\"columns\":[\"key\"],\"unique\":true},{\"name\":\"content_governance_policies_slug_context_idx\",\"columns\":[\"slug\",\"context\"]},{\"name\":\"content_governance_policies_tenant_id_created_at_idx\",\"columns\":[\"tenant_id\",\"created_at\"]}],\"version\":\"3cc24f80\"}},\"@happyvertical/smrt-content:ContentGovernanceProfile\":{\"name\":\"contentgovernanceprofile\",\"className\":\"ContentGovernanceProfile\",\"qualifiedName\":\"@happyvertical/smrt-content:ContentGovernanceProfile\",\"collection\":\"contentgovernanceprofiles\",\"filePath\":\"/home/runner/work/smrt/smrt/packages/content/src/content-governance-profile.ts\",\"packageName\":\"@happyvertical/smrt-content\",\"fields\":{\"key\":{\"type\":\"text\",\"required\":true,\"_meta\":{\"required\":true}},\"label\":{\"type\":\"text\",\"required\":false},\"description\":{\"type\":\"text\",\"required\":false},\"enabled\":{\"type\":\"boolean\",\"required\":true,\"default\":true},\"requirements\":{\"type\":\"text\",\"required\":false},\"metadata\":{\"type\":\"text\",\"required\":false},\"tenantId\":{\"type\":\"text\",\"required\":false,\"_meta\":{\"sqlType\":\"UUID\",\"nullable\":true,\"__tenancy\":{\"isTenantIdField\":true,\"autoFilter\":true,\"required\":false,\"autoPopulate\":true,\"nullable\":true,\"mode\":\"optional\",\"field\":\"tenantId\",\"allowSuperAdminBypass\":false}}},\"createdAt\":{\"type\":\"text\",\"required\":false},\"updatedAt\":{\"type\":\"text\",\"required\":false}},\"methods\":{\"getRequirements\":{\"name\":\"getRequirements\",\"async\":false,\"parameters\":[],\"returnType\":\"ContentReviewRequirement[]\",\"isStatic\":false,\"isPublic\":true},\"getMetadata\":{\"name\":\"getMetadata\",\"async\":false,\"parameters\":[],\"returnType\":\"Record<string>\",\"isStatic\":false,\"isPublic\":true},\"toDefinition\":{\"name\":\"toDefinition\",\"async\":false,\"parameters\":[],\"returnType\":\"ContentGovernanceProfileDefinition\",\"isStatic\":false,\"isPublic\":true},\"delete\":{\"name\":\"delete\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<void>\",\"isStatic\":false,\"isPublic\":true}},\"decoratorConfig\":{\"tableName\":\"content_governance_profiles\",\"conflictColumns\":[\"key\"],\"api\":{\"include\":[\"list\",\"get\",\"create\",\"update\",\"delete\"]},\"mcp\":{\"include\":[\"list\",\"get\",\"create\",\"update\",\"delete\"]},\"cli\":true,\"tenantScoped\":{\"mode\":\"optional\"}},\"extends\":\"SmrtObject\",\"exportName\":\"ContentGovernanceProfile\",\"collectionExportName\":\"ContentGovernanceProfileCollection\",\"validationRules\":[{\"field\":\"key\",\"rule\":\"required\",\"fieldType\":\"text\"},{\"field\":\"enabled\",\"rule\":\"required\",\"fieldType\":\"boolean\"}],\"schema\":{\"tableName\":\"content_governance_profiles\",\"ddl\":\"CREATE TABLE IF NOT EXISTS \\\"content_governance_profiles\\\" (\\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 \\\"key\\\" TEXT NOT NULL,\\n \\\"label\\\" TEXT,\\n \\\"description\\\" TEXT,\\n \\\"enabled\\\" BOOLEAN NOT NULL DEFAULT TRUE,\\n \\\"requirements\\\" TEXT,\\n \\\"metadata\\\" TEXT,\\n \\\"tenant_id\\\" UUID\\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\"},\"key\":{\"type\":\"TEXT\",\"notNull\":true,\"unique\":false},\"label\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"description\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"enabled\":{\"type\":\"BOOLEAN\",\"notNull\":true,\"unique\":false,\"default\":true},\"requirements\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"metadata\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"tenant_id\":{\"type\":\"UUID\",\"referenceKind\":\"tenantId\",\"notNull\":false,\"unique\":false}},\"indexes\":[{\"name\":\"content_governance_profiles_key_idx\",\"columns\":[\"key\"],\"unique\":true},{\"name\":\"content_governance_profiles_slug_context_idx\",\"columns\":[\"slug\",\"context\"]},{\"name\":\"content_governance_profiles_tenant_id_created_at_idx\",\"columns\":[\"tenant_id\",\"created_at\"]}],\"version\":\"4bfc2afc\"}},\"@happyvertical/smrt-content:ContentGovernanceProfileCollection\":{\"name\":\"contentgovernanceprofilecollection\",\"className\":\"ContentGovernanceProfileCollection\",\"qualifiedName\":\"@happyvertical/smrt-content:ContentGovernanceProfileCollection\",\"collection\":\"contentgovernanceprofiles\",\"filePath\":\"/home/runner/work/smrt/smrt/packages/content/src/content-governance-profiles.ts\",\"packageName\":\"@happyvertical/smrt-content\",\"fields\":{},\"methods\":{\"getByKey\":{\"name\":\"getByKey\",\"async\":true,\"parameters\":[{\"name\":\"key\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"Promise<ContentGovernanceProfile | null>\",\"isStatic\":false,\"isPublic\":true}},\"decoratorConfig\":{\"tableName\":\"content_governance_profiles\"},\"extends\":\"SmrtCollection\",\"extendsTypeArg\":\"ContentGovernanceProfile\",\"exportName\":\"ContentGovernanceProfileCollection\",\"collectionExportName\":\"ContentGovernanceProfileCollectionCollection\",\"schema\":{\"tableName\":\"content_governance_profiles\",\"ddl\":\"CREATE TABLE IF NOT EXISTS \\\"content_governance_profiles\\\" (\\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\":\"content_governance_profiles_slug_context_idx\",\"columns\":[\"slug\",\"context\"],\"unique\":true},{\"name\":\"content_governance_profiles_created_at_idx\",\"columns\":[\"created_at\"]}],\"version\":\"496f0f56\"}},\"@happyvertical/smrt-content:ContentReference\":{\"name\":\"contentreference\",\"className\":\"ContentReference\",\"qualifiedName\":\"@happyvertical/smrt-content:ContentReference\",\"collection\":\"contentreferences\",\"filePath\":\"/home/runner/work/smrt/smrt/packages/content/src/content-reference.ts\",\"packageName\":\"@happyvertical/smrt-content\",\"fields\":{\"tenantId\":{\"type\":\"text\",\"required\":false,\"_meta\":{\"sqlType\":\"UUID\",\"nullable\":true,\"__tenancy\":{\"isTenantIdField\":true,\"autoFilter\":true,\"required\":false,\"autoPopulate\":true,\"nullable\":true,\"mode\":\"optional\",\"field\":\"tenantId\",\"allowSuperAdminBypass\":false}}},\"sourceId\":{\"type\":\"foreignKey\",\"required\":true,\"related\":\"Content\",\"_meta\":{\"required\":true}},\"targetId\":{\"type\":\"foreignKey\",\"required\":true,\"related\":\"Content\",\"_meta\":{\"required\":true}},\"targetVersion\":{\"type\":\"integer\",\"required\":false,\"_meta\":{\"nullable\":true}},\"createdAt\":{\"type\":\"text\",\"required\":false}},\"methods\":{},\"decoratorConfig\":{\"tableName\":\"content_references\",\"conflictColumns\":[\"source_id\",\"target_id\"],\"tenantScoped\":{\"mode\":\"optional\"}},\"extends\":\"SmrtObject\",\"exportName\":\"ContentReference\",\"collectionExportName\":\"ContentReferenceCollection\",\"validationRules\":[{\"field\":\"sourceId\",\"rule\":\"required\",\"fieldType\":\"foreignKey\"},{\"field\":\"targetId\",\"rule\":\"required\",\"fieldType\":\"foreignKey\"}],\"schema\":{\"tableName\":\"content_references\",\"ddl\":\"CREATE TABLE IF NOT EXISTS \\\"content_references\\\" (\\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,\\n \\\"source_id\\\" UUID NOT NULL,\\n \\\"target_id\\\" UUID NOT NULL,\\n \\\"target_version\\\" INTEGER\\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\":false,\"unique\":false},\"source_id\":{\"type\":\"UUID\",\"referenceKind\":\"foreignKey\",\"notNull\":true,\"unique\":false,\"foreignKey\":{\"table\":\"contents\",\"column\":\"id\",\"onDelete\":\"CASCADE\",\"onUpdate\":\"CASCADE\"}},\"target_id\":{\"type\":\"UUID\",\"referenceKind\":\"foreignKey\",\"notNull\":true,\"unique\":false,\"foreignKey\":{\"table\":\"contents\",\"column\":\"id\",\"onDelete\":\"CASCADE\",\"onUpdate\":\"CASCADE\"}},\"target_version\":{\"type\":\"INTEGER\",\"notNull\":false,\"unique\":false}},\"indexes\":[{\"name\":\"content_references_source_id_target_id_idx\",\"columns\":[\"source_id\",\"target_id\"],\"unique\":true},{\"name\":\"content_references_slug_context_idx\",\"columns\":[\"slug\",\"context\"]},{\"name\":\"content_references_tenant_id_created_at_idx\",\"columns\":[\"tenant_id\",\"created_at\"]},{\"name\":\"content_references_target_id_idx\",\"columns\":[\"target_id\"]}],\"version\":\"3347ea2a\"}},\"@happyvertical/smrt-content:ContentReferences\":{\"name\":\"contentreferences\",\"className\":\"ContentReferences\",\"qualifiedName\":\"@happyvertical/smrt-content:ContentReferences\",\"collection\":\"contentreferences\",\"filePath\":\"/home/runner/work/smrt/smrt/packages/content/src/content-references.ts\",\"packageName\":\"@happyvertical/smrt-content\",\"fields\":{},\"methods\":{\"byLeft\":{\"name\":\"byLeft\",\"async\":true,\"parameters\":[{\"name\":\"leftId\",\"type\":\"string\",\"optional\":false},{\"name\":\"opts\",\"type\":\"JunctionFilterOptions\",\"optional\":true}],\"returnType\":\"Promise<TItem[]>\",\"isStatic\":false,\"isPublic\":true},\"byRight\":{\"name\":\"byRight\",\"async\":true,\"parameters\":[{\"name\":\"rightId\",\"type\":\"string\",\"optional\":false},{\"name\":\"opts\",\"type\":\"JunctionFilterOptions\",\"optional\":true}],\"returnType\":\"Promise<TItem[]>\",\"isStatic\":false,\"isPublic\":true},\"attach\":{\"name\":\"attach\",\"async\":true,\"parameters\":[{\"name\":\"sourceId\",\"type\":\"string\",\"optional\":false},{\"name\":\"targetId\",\"type\":\"string\",\"optional\":false},{\"name\":\"opts\",\"type\":\"JunctionAttachOptions\",\"optional\":true}],\"returnType\":\"Promise<ContentReference>\",\"isStatic\":false,\"isPublic\":true},\"detach\":{\"name\":\"detach\",\"async\":true,\"parameters\":[{\"name\":\"leftId\",\"type\":\"string\",\"optional\":false},{\"name\":\"rightId\",\"type\":\"string\",\"optional\":false},{\"name\":\"opts\",\"type\":\"JunctionFilterOptions\",\"optional\":true}],\"returnType\":\"Promise<void>\",\"isStatic\":false,\"isPublic\":true},\"setLinks\":{\"name\":\"setLinks\",\"async\":true,\"parameters\":[{\"name\":\"leftId\",\"type\":\"string\",\"optional\":false},{\"name\":\"rightIds\",\"type\":\"string[]\",\"optional\":false},{\"name\":\"opts\",\"type\":\"JunctionAttachOptions\",\"optional\":true}],\"returnType\":\"Promise<void>\",\"isStatic\":false,\"isPublic\":true},\"getForSource\":{\"name\":\"getForSource\",\"async\":true,\"parameters\":[{\"name\":\"sourceId\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"Promise<ContentReference[]>\",\"isStatic\":false,\"isPublic\":true},\"getForTarget\":{\"name\":\"getForTarget\",\"async\":true,\"parameters\":[{\"name\":\"targetId\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"Promise<ContentReference[]>\",\"isStatic\":false,\"isPublic\":true},\"unlink\":{\"name\":\"unlink\",\"async\":true,\"parameters\":[{\"name\":\"sourceId\",\"type\":\"string\",\"optional\":false},{\"name\":\"targetId\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"Promise<void>\",\"isStatic\":false,\"isPublic\":true}},\"decoratorConfig\":{\"tableName\":\"content_references\"},\"extends\":\"SmrtJunction\",\"extendsTypeArg\":\"ContentReference\",\"exportName\":\"ContentReferences\",\"collectionExportName\":\"ContentReferencesCollection\",\"schema\":{\"tableName\":\"content_references\",\"ddl\":\"CREATE TABLE IF NOT EXISTS \\\"content_references\\\" (\\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\":\"content_references_slug_context_idx\",\"columns\":[\"slug\",\"context\"],\"unique\":true},{\"name\":\"content_references_created_at_idx\",\"columns\":[\"created_at\"]}],\"version\":\"e9ad3cf0\"}},\"@happyvertical/smrt-content:ContentReview\":{\"name\":\"contentreview\",\"className\":\"ContentReview\",\"qualifiedName\":\"@happyvertical/smrt-content:ContentReview\",\"collection\":\"contentreviews\",\"filePath\":\"/home/runner/work/smrt/smrt/packages/content/src/content-review.ts\",\"packageName\":\"@happyvertical/smrt-content\",\"fields\":{\"contentId\":{\"type\":\"foreignKey\",\"required\":true,\"related\":\"Content\",\"_meta\":{\"required\":true}},\"contentVersionId\":{\"type\":\"foreignKey\",\"required\":false,\"related\":\"ContentVersion\"},\"kind\":{\"type\":\"text\",\"required\":false,\"default\":\"custom\"},\"policyKey\":{\"type\":\"text\",\"required\":false},\"status\":{\"type\":\"text\",\"required\":false,\"default\":\"pending\"},\"summary\":{\"type\":\"text\",\"required\":false},\"findings\":{\"type\":\"text\",\"required\":false},\"reviewer\":{\"type\":\"text\",\"required\":false},\"metadata\":{\"type\":\"text\",\"required\":false},\"tenantId\":{\"type\":\"text\",\"required\":false,\"_meta\":{\"sqlType\":\"UUID\",\"nullable\":true,\"__tenancy\":{\"isTenantIdField\":true,\"autoFilter\":true,\"required\":false,\"autoPopulate\":true,\"nullable\":true,\"mode\":\"optional\",\"field\":\"tenantId\",\"allowSuperAdminBypass\":false}}},\"createdAt\":{\"type\":\"text\",\"required\":false},\"updatedAt\":{\"type\":\"text\",\"required\":false}},\"methods\":{\"getFindings\":{\"name\":\"getFindings\",\"async\":false,\"parameters\":[],\"returnType\":\"ContentReviewFinding[]\",\"isStatic\":false,\"isPublic\":true},\"getMetadata\":{\"name\":\"getMetadata\",\"async\":false,\"parameters\":[],\"returnType\":\"Record<string>\",\"isStatic\":false,\"isPublic\":true}},\"decoratorConfig\":{\"tableName\":\"content_reviews\",\"api\":{\"include\":[\"list\",\"get\",\"create\",\"update\"]},\"mcp\":{\"include\":[\"list\",\"get\",\"create\",\"update\"]},\"cli\":true,\"tenantScoped\":{\"mode\":\"optional\"},\"conflictColumns\":[\"tenant_id\",\"slug\",\"context\"]},\"extends\":\"SmrtObject\",\"exportName\":\"ContentReview\",\"collectionExportName\":\"ContentReviewCollection\",\"validationRules\":[{\"field\":\"contentId\",\"rule\":\"required\",\"fieldType\":\"foreignKey\"}],\"schema\":{\"tableName\":\"content_reviews\",\"ddl\":\"CREATE TABLE IF NOT EXISTS \\\"content_reviews\\\" (\\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 \\\"content_id\\\" UUID NOT NULL,\\n \\\"content_version_id\\\" UUID,\\n \\\"kind\\\" TEXT DEFAULT 'custom',\\n \\\"policy_key\\\" TEXT,\\n \\\"status\\\" TEXT DEFAULT 'pending',\\n \\\"summary\\\" TEXT,\\n \\\"findings\\\" TEXT,\\n \\\"reviewer\\\" TEXT,\\n \\\"metadata\\\" TEXT,\\n \\\"tenant_id\\\" UUID\\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\"},\"content_id\":{\"type\":\"UUID\",\"referenceKind\":\"foreignKey\",\"notNull\":true,\"unique\":false,\"foreignKey\":{\"table\":\"contents\",\"column\":\"id\",\"onDelete\":\"NO ACTION\",\"onUpdate\":\"CASCADE\"}},\"content_version_id\":{\"type\":\"UUID\",\"referenceKind\":\"foreignKey\",\"notNull\":false,\"unique\":false,\"foreignKey\":{\"table\":\"content_versions\",\"column\":\"id\",\"onDelete\":\"NO ACTION\",\"onUpdate\":\"CASCADE\"}},\"kind\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"custom\"},\"policy_key\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"status\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"pending\"},\"summary\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"findings\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"reviewer\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"metadata\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"tenant_id\":{\"type\":\"UUID\",\"referenceKind\":\"tenantId\",\"notNull\":false,\"unique\":false}},\"indexes\":[{\"name\":\"content_reviews_slug_context_idx\",\"columns\":[\"tenant_id\",\"slug\",\"context\"],\"unique\":true},{\"name\":\"content_reviews_tenant_id_created_at_idx\",\"columns\":[\"tenant_id\",\"created_at\"]},{\"name\":\"content_reviews_content_id_idx\",\"columns\":[\"content_id\"]},{\"name\":\"content_reviews_content_version_id_idx\",\"columns\":[\"content_version_id\"]}],\"version\":\"7b2c0ad7\"}},\"@happyvertical/smrt-content:ContentReviewCollection\":{\"name\":\"contentreviewcollection\",\"className\":\"ContentReviewCollection\",\"qualifiedName\":\"@happyvertical/smrt-content:ContentReviewCollection\",\"collection\":\"contentreviews\",\"filePath\":\"/home/runner/work/smrt/smrt/packages/content/src/content-reviews.ts\",\"packageName\":\"@happyvertical/smrt-content\",\"fields\":{},\"methods\":{\"listForContent\":{\"name\":\"listForContent\",\"async\":true,\"parameters\":[{\"name\":\"contentId\",\"type\":\"string\",\"optional\":false},{\"name\":\"kind\",\"type\":\"ContentReviewKind\",\"optional\":true}],\"returnType\":\"Promise<ContentReview[]>\",\"isStatic\":false,\"isPublic\":true},\"getLatestForContent\":{\"name\":\"getLatestForContent\",\"async\":true,\"parameters\":[{\"name\":\"contentId\",\"type\":\"string\",\"optional\":false},{\"name\":\"kind\",\"type\":\"ContentReviewKind\",\"optional\":true}],\"returnType\":\"Promise<ContentReview | null>\",\"isStatic\":false,\"isPublic\":true},\"listForContentByPolicyKey\":{\"name\":\"listForContentByPolicyKey\",\"async\":true,\"parameters\":[{\"name\":\"contentId\",\"type\":\"string\",\"optional\":false},{\"name\":\"policyKey\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"Promise<ContentReview[]>\",\"isStatic\":false,\"isPublic\":true},\"getLatestForPolicyKey\":{\"name\":\"getLatestForPolicyKey\",\"async\":true,\"parameters\":[{\"name\":\"contentId\",\"type\":\"string\",\"optional\":false},{\"name\":\"policyKey\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"Promise<ContentReview | null>\",\"isStatic\":false,\"isPublic\":true},\"createFromResult\":{\"name\":\"createFromResult\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":false}],\"returnType\":\"Promise<ContentReview>\",\"isStatic\":false,\"isPublic\":true}},\"decoratorConfig\":{\"tableName\":\"content_reviews\"},\"extends\":\"SmrtCollection\",\"extendsTypeArg\":\"ContentReview\",\"exportName\":\"ContentReviewCollection\",\"collectionExportName\":\"ContentReviewCollectionCollection\",\"schema\":{\"tableName\":\"content_reviews\",\"ddl\":\"CREATE TABLE IF NOT EXISTS \\\"content_reviews\\\" (\\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\":\"content_reviews_slug_context_idx\",\"columns\":[\"slug\",\"context\"],\"unique\":true},{\"name\":\"content_reviews_created_at_idx\",\"columns\":[\"created_at\"]}],\"version\":\"03b7d1d3\"}},\"@happyvertical/smrt-content:Article\":{\"name\":\"article\",\"className\":\"Article\",\"qualifiedName\":\"@happyvertical/smrt-content:Article\",\"collection\":\"contents\",\"filePath\":\"/home/runner/work/smrt/smrt/packages/content/src/content-types.ts\",\"packageName\":\"@happyvertical/smrt-content\",\"fields\":{\"created_at\":{\"type\":\"datetime\",\"required\":false},\"updated_at\":{\"type\":\"datetime\",\"required\":false},\"tenantId\":{\"type\":\"text\",\"required\":false,\"_meta\":{\"sqlType\":\"UUID\",\"nullable\":true,\"__tenancy\":{\"isTenantIdField\":true,\"autoFilter\":true,\"required\":false,\"autoPopulate\":true,\"nullable\":true}}},\"type\":{\"type\":\"text\",\"required\":false},\"variant\":{\"type\":\"text\",\"required\":false},\"fileKey\":{\"type\":\"text\",\"required\":false},\"author\":{\"type\":\"text\",\"required\":false},\"name\":{\"type\":\"text\",\"required\":true,\"default\":\"\",\"_meta\":{\"required\":true}},\"title\":{\"type\":\"text\",\"required\":false},\"description\":{\"type\":\"text\",\"required\":false},\"body\":{\"type\":\"text\",\"required\":false},\"bodyFormat\":{\"type\":\"text\",\"required\":false},\"publish_date\":{\"type\":\"datetime\",\"required\":false},\"url\":{\"type\":\"text\",\"required\":false},\"source\":{\"type\":\"text\",\"required\":false},\"original_url\":{\"type\":\"text\",\"required\":false},\"language\":{\"type\":\"text\",\"required\":false},\"tags\":{\"type\":\"json\",\"required\":false,\"default\":[]},\"category\":{\"type\":\"text\",\"required\":false},\"status\":{\"type\":\"text\",\"required\":false,\"default\":\"draft\"},\"state\":{\"type\":\"text\",\"required\":false,\"default\":\"active\"},\"metadata\":{\"type\":\"json\",\"required\":false,\"default\":{}},\"thumbnailAssetId\":{\"type\":\"crossPackageRef\",\"required\":false,\"related\":\"@happyvertical/smrt-assets:Asset\"}},\"methods\":{\"withDatabase\":{\"name\":\"withDatabase\",\"async\":true,\"parameters\":[{\"name\":\"db\",\"type\":\"DatabaseInterface\",\"optional\":false},{\"name\":\"operation\",\"type\":\"Function\",\"optional\":false}],\"returnType\":\"Promise<T>\",\"isStatic\":false,\"isPublic\":true},\"getAiUsageSnapshot\":{\"name\":\"getAiUsageSnapshot\",\"async\":false,\"parameters\":[],\"returnType\":\"AiUsageSnapshot | undefined\",\"isStatic\":false,\"isPublic\":true},\"resetAiUsage\":{\"name\":\"resetAiUsage\",\"async\":false,\"parameters\":[],\"returnType\":\"void\",\"isStatic\":false,\"isPublic\":true},\"listAiUsage\":{\"name\":\"listAiUsage\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"AiUsageListOptions\",\"optional\":true}],\"returnType\":\"Promise<SmrtAiUsageRecord[]>\",\"isStatic\":false,\"isPublic\":true},\"summarizeAiUsage\":{\"name\":\"summarizeAiUsage\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"AiUsageSummaryOptions\",\"optional\":true}],\"returnType\":\"Promise<Record<string, AiUsageStats>>\",\"isStatic\":false,\"isPublic\":true},\"destroy\":{\"name\":\"destroy\",\"async\":false,\"parameters\":[],\"returnType\":\"void\",\"isStatic\":false,\"isPublic\":true},\"markAsPersisted\":{\"name\":\"markAsPersisted\",\"async\":false,\"parameters\":[],\"returnType\":\"void\",\"isStatic\":false,\"isPublic\":true},\"requireInsertOnSave\":{\"name\":\"requireInsertOnSave\",\"async\":false,\"parameters\":[],\"returnType\":\"void\",\"isStatic\":false,\"isPublic\":true},\"initialize\":{\"name\":\"initialize\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise\",\"isStatic\":false,\"isPublic\":true},\"loadDataFromDb\":{\"name\":\"loadDataFromDb\",\"async\":true,\"parameters\":[{\"name\":\"data\",\"type\":\"Record<string>\",\"optional\":false}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getFields\":{\"name\":\"getFields\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<any>\",\"isStatic\":false,\"isPublic\":true},\"toJSON\":{\"name\":\"toJSON\",\"async\":false,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"toPlainObject\":{\"name\":\"toPlainObject\",\"async\":false,\"parameters\":[],\"returnType\":\"Record<string>\",\"isStatic\":false,\"isPublic\":true},\"toPublicJSON\":{\"name\":\"toPublicJSON\",\"async\":false,\"parameters\":[{\"name\":\"options\",\"type\":\"PublicJsonOptions\",\"optional\":true}],\"returnType\":\"Record<string>\",\"isStatic\":false,\"isPublic\":true},\"getId\":{\"name\":\"getId\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getSlug\":{\"name\":\"getSlug\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getSavedId\":{\"name\":\"getSavedId\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"isSaved\":{\"name\":\"isSaved\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"save\":{\"name\":\"save\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"classifyConstraintError\":{\"name\":\"classifyConstraintError\",\"async\":false,\"parameters\":[{\"name\":\"message\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"'unique' | 'not_null' | null\",\"isStatic\":true,\"isPublic\":true},\"loadFromId\":{\"name\":\"loadFromId\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"loadFromSlug\":{\"name\":\"loadFromSlug\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"is\":{\"name\":\"is\",\"async\":true,\"parameters\":[{\"name\":\"criteria\",\"type\":\"string\",\"optional\":false},{\"name\":\"options\",\"type\":\"AiOperationOptions\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"do\":{\"name\":\"do\",\"async\":true,\"parameters\":[{\"name\":\"instructions\",\"type\":\"string\",\"optional\":false},{\"name\":\"options\",\"type\":\"AiOperationOptions\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"describe\":{\"name\":\"describe\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"AiOperationOptions\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"delete\":{\"name\":\"delete\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<void>\",\"isStatic\":false,\"isPublic\":true},\"isRelatedLoaded\":{\"name\":\"isRelatedLoaded\",\"async\":false,\"parameters\":[{\"name\":\"fieldName\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"boolean\",\"isStatic\":false,\"isPublic\":true},\"_setLoadedRelationship\":{\"name\":\"_setLoadedRelationship\",\"async\":false,\"parameters\":[{\"name\":\"fieldName\",\"type\":\"string\",\"optional\":false},{\"name\":\"value\",\"type\":\"any\",\"optional\":false}],\"returnType\":\"void\",\"isStatic\":false,\"isPublic\":true},\"loadRelated\":{\"name\":\"loadRelated\",\"async\":true,\"parameters\":[{\"name\":\"fieldName\",\"type\":\"string\",\"optional\":false},{\"name\":\"opts\",\"type\":\"LoadRelatedOptions\",\"optional\":true}],\"returnType\":\"Promise<any>\",\"isStatic\":false,\"isPublic\":true},\"loadRelatedMany\":{\"name\":\"loadRelatedMany\",\"async\":true,\"parameters\":[{\"name\":\"fieldName\",\"type\":\"string\",\"optional\":false},{\"name\":\"opts\",\"type\":\"LoadRelatedOptions\",\"optional\":true}],\"returnType\":\"Promise<any[]>\",\"isStatic\":false,\"isPublic\":true},\"getRelated\":{\"name\":\"getRelated\",\"async\":true,\"parameters\":[{\"name\":\"fieldName\",\"type\":\"string\",\"optional\":false},{\"name\":\"opts\",\"type\":\"LoadRelatedOptions\",\"optional\":true}],\"returnType\":\"Promise<any>\",\"isStatic\":false,\"isPublic\":true},\"getAvailableTools\":{\"name\":\"getAvailableTools\",\"async\":false,\"parameters\":[],\"returnType\":\"AITool[]\",\"isStatic\":false,\"isPublic\":true},\"executeToolCall\":{\"name\":\"executeToolCall\",\"async\":true,\"parameters\":[{\"name\":\"toolCall\",\"type\":\"ToolCall\",\"optional\":false}],\"returnType\":\"Promise<ToolCallResult>\",\"isStatic\":false,\"isPublic\":true},\"remember\":{\"name\":\"remember\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":false}],\"returnType\":\"Promise<void>\",\"isStatic\":false,\"isPublic\":true},\"recall\":{\"name\":\"recall\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":false}],\"returnType\":\"Promise\",\"isStatic\":false,\"isPublic\":true},\"recallAll\":{\"name\":\"recallAll\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":true}],\"returnType\":\"Promise<Map<string>>\",\"isStatic\":false,\"isPublic\":true},\"forget\":{\"name\":\"forget\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":false}],\"returnType\":\"Promise<void>\",\"isStatic\":false,\"isPublic\":true},\"forgetScope\":{\"name\":\"forgetScope\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":false}],\"returnType\":\"Promise<number>\",\"isStatic\":false,\"isPublic\":true},\"generateEmbeddings\":{\"name\":\"generateEmbeddings\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"GenerateEmbeddingsOptions\",\"optional\":true}],\"returnType\":\"Promise<void>\",\"isStatic\":false,\"isPublic\":true},\"getEmbedding\":{\"name\":\"getEmbedding\",\"async\":true,\"parameters\":[{\"name\":\"fieldName\",\"type\":\"string\",\"optional\":false},{\"name\":\"model\",\"type\":\"string\",\"optional\":true}],\"returnType\":\"Promise<number[] | null>\",\"isStatic\":false,\"isPublic\":true},\"hasStaleEmbeddings\":{\"name\":\"hasStaleEmbeddings\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<boolean>\",\"isStatic\":false,\"isPublic\":true},\"clearEmbeddings\":{\"name\":\"clearEmbeddings\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<void>\",\"isStatic\":false,\"isPublic\":true},\"resolveGovernance\":{\"name\":\"resolveGovernance\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<ResolvedContentGovernance>\",\"isStatic\":false,\"isPublic\":true},\"loadReferences\":{\"name\":\"loadReferences\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"addReference\":{\"name\":\"addReference\",\"async\":true,\"parameters\":[{\"name\":\"content\",\"type\":\"Content | string\",\"optional\":false},{\"name\":\"options\",\"type\":\"object\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"removeReference\":{\"name\":\"removeReference\",\"async\":true,\"parameters\":[{\"name\":\"targetId\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getReferences\":{\"name\":\"getReferences\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getReferenceEdges\":{\"name\":\"getReferenceEdges\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<Array<object>>\",\"isStatic\":false,\"isPublic\":true},\"getReferenceDrift\":{\"name\":\"getReferenceDrift\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<Array<object>>\",\"isStatic\":false,\"isPublic\":true},\"isGoverned\":{\"name\":\"isGoverned\",\"async\":false,\"parameters\":[],\"returnType\":\"boolean\",\"isStatic\":false,\"isPublic\":true},\"getFactLinks\":{\"name\":\"getFactLinks\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getFacts\":{\"name\":\"getFacts\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":true}],\"returnType\":\"Promise<Fact[]>\",\"isStatic\":false,\"isPublic\":true},\"addFact\":{\"name\":\"addFact\",\"async\":true,\"parameters\":[{\"name\":\"fact\",\"type\":\"Fact | string\",\"optional\":false},{\"name\":\"relationship\",\"type\":\"FactContentRelationship\",\"optional\":true},{\"name\":\"metadata\",\"type\":\"Record<string>\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"removeFact\":{\"name\":\"removeFact\",\"async\":true,\"parameters\":[{\"name\":\"factId\",\"type\":\"string\",\"optional\":false},{\"name\":\"relationship\",\"type\":\"FactContentRelationship\",\"optional\":true}],\"returnType\":\"Promise<void>\",\"isStatic\":false,\"isPublic\":true},\"syncFacts\":{\"name\":\"syncFacts\",\"async\":true,\"parameters\":[{\"name\":\"factIds\",\"type\":\"string[]\",\"optional\":false},{\"name\":\"relationship\",\"type\":\"FactContentRelationship\",\"optional\":true}],\"returnType\":\"Promise<object>\",\"isStatic\":false,\"isPublic\":true},\"browseFacts\":{\"name\":\"browseFacts\",\"async\":true,\"parameters\":[{\"name\":\"query\",\"type\":\"any\",\"optional\":true,\"default\":\"\"},{\"name\":\"options\",\"type\":\"object\",\"optional\":true}],\"returnType\":\"Promise<Fact[]>\",\"isStatic\":false,\"isPublic\":true},\"repairFactAudit\":{\"name\":\"repairFactAudit\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"repairFactAuditAction\":{\"name\":\"repairFactAuditAction\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"repairFactEvidence\":{\"name\":\"repairFactEvidence\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"FactAuditResourceRepairOptions\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"repairFactEvidenceAction\":{\"name\":\"repairFactEvidenceAction\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"FactAuditResourceRepairOptions\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"recheckFactClaims\":{\"name\":\"recheckFactClaims\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"FactAuditClaimRecheckOptions\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"recheckFactClaimsAction\":{\"name\":\"recheckFactClaimsAction\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"FactAuditClaimRecheckOptions\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"updateFactEvidenceStatus\":{\"name\":\"updateFactEvidenceStatus\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"FactEvidenceStatusUpdateOptions\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"updateFactEvidenceStatusAction\":{\"name\":\"updateFactEvidenceStatusAction\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"FactEvidenceStatusUpdateOptions\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getFactAuditState\":{\"name\":\"getFactAuditState\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<FactAuditState>\",\"isStatic\":false,\"isPublic\":true},\"getFactAuditStateAction\":{\"name\":\"getFactAuditStateAction\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getFactsState\":{\"name\":\"getFactsState\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"syncFactsState\":{\"name\":\"syncFactsState\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"createVersion\":{\"name\":\"createVersion\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"CreateContentVersionOptions\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getVersions\":{\"name\":\"getVersions\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"restoreFromVersion\":{\"name\":\"restoreFromVersion\",\"async\":true,\"parameters\":[{\"name\":\"versionNumber\",\"type\":\"number\",\"optional\":false}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getReviews\":{\"name\":\"getReviews\",\"async\":true,\"parameters\":[{\"name\":\"kind\",\"type\":\"any\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"listReviews\":{\"name\":\"listReviews\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getReviewRequirements\":{\"name\":\"getReviewRequirements\",\"async\":true,\"parameters\":[{\"name\":\"profileKey\",\"type\":\"string\",\"optional\":false},{\"name\":\"governance\",\"type\":\"ResolvedContentGovernance\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getGovernanceState\":{\"name\":\"getGovernanceState\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<ContentGovernanceState>\",\"isStatic\":false,\"isPublic\":true},\"getGovernanceStateAction\":{\"name\":\"getGovernanceStateAction\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"listReviewProfilesAction\":{\"name\":\"listReviewProfilesAction\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"evaluateReviewProfile\":{\"name\":\"evaluateReviewProfile\",\"async\":true,\"parameters\":[{\"name\":\"profileKey\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"Promise<ContentReviewProfileEvaluation>\",\"isStatic\":false,\"isPublic\":true},\"evaluateReviewProfileAction\":{\"name\":\"evaluateReviewProfileAction\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"isReadyForReviewProfile\":{\"name\":\"isReadyForReviewProfile\",\"async\":true,\"parameters\":[{\"name\":\"profileKey\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"Promise<boolean>\",\"isStatic\":false,\"isPublic\":true},\"getPublishedTransparency\":{\"name\":\"getPublishedTransparency\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getPublishedTransparencyAction\":{\"name\":\"getPublishedTransparencyAction\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"previewTransparency\":{\"name\":\"previewTransparency\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"previewTransparencyAction\":{\"name\":\"previewTransparencyAction\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"runReview\":{\"name\":\"runReview\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"RunContentReviewOptions\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"runReviewAction\":{\"name\":\"runReviewAction\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"RunContentReviewOptions\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"reviewFacts\":{\"name\":\"reviewFacts\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"Omit<RunContentReviewOptions, 'kind'>\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"reviewSafety\":{\"name\":\"reviewSafety\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"Omit<RunContentReviewOptions, 'kind'>\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getCorrections\":{\"name\":\"getCorrections\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"listCorrections\":{\"name\":\"listCorrections\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"issueCorrection\":{\"name\":\"issueCorrection\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"IssueContentCorrectionOptions\",\"optional\":false}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"issueCorrectionAction\":{\"name\":\"issueCorrectionAction\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"IssueContentCorrectionOptions\",\"optional\":false}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"listVersions\":{\"name\":\"listVersions\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"mutateVersionAction\":{\"name\":\"mutateVersionAction\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"any\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getCategorySegments\":{\"name\":\"getCategorySegments\",\"async\":false,\"parameters\":[],\"returnType\":\"string[]\",\"isStatic\":false,\"isPublic\":true},\"getParentCategory\":{\"name\":\"getParentCategory\",\"async\":false,\"parameters\":[],\"returnType\":\"string | null\",\"isStatic\":false,\"isPublic\":true},\"getRootCategory\":{\"name\":\"getRootCategory\",\"async\":false,\"parameters\":[],\"returnType\":\"string | null\",\"isStatic\":false,\"isPublic\":true},\"getAncestorPaths\":{\"name\":\"getAncestorPaths\",\"async\":false,\"parameters\":[],\"returnType\":\"string[]\",\"isStatic\":false,\"isPublic\":true},\"isInCategory\":{\"name\":\"isInCategory\",\"async\":false,\"parameters\":[{\"name\":\"categoryPath\",\"type\":\"string\",\"optional\":false},{\"name\":\"includeChildren\",\"type\":\"any\",\"optional\":true}],\"returnType\":\"boolean\",\"isStatic\":false,\"isPublic\":true},\"getAssets\":{\"name\":\"getAssets\",\"async\":true,\"parameters\":[{\"name\":\"relationship\",\"type\":\"string\",\"optional\":true}],\"returnType\":\"Promise<Asset[]>\",\"isStatic\":false,\"isPublic\":true},\"addAsset\":{\"name\":\"addAsset\",\"async\":true,\"parameters\":[{\"name\":\"asset\",\"type\":\"Asset\",\"optional\":false},{\"name\":\"relationship\",\"type\":\"any\",\"optional\":true,\"default\":\"attachment\"},{\"name\":\"sortOrder\",\"type\":\"any\",\"optional\":true}],\"returnType\":\"Promise<void>\",\"isStatic\":false,\"isPublic\":true},\"removeAsset\":{\"name\":\"removeAsset\",\"async\":true,\"parameters\":[{\"name\":\"assetId\",\"type\":\"string\",\"optional\":false},{\"name\":\"relationship\",\"type\":\"string\",\"optional\":true}],\"returnType\":\"Promise<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\":\"metadata\",\"type\":\"Record<string> | null | undefined\",\"optional\":false}],\"returnType\":\"void\",\"isStatic\":false,\"isPublic\":true},\"updateMetadata\":{\"name\":\"updateMetadata\",\"async\":false,\"parameters\":[{\"name\":\"patch\",\"type\":\"Partial<Record<string>>\",\"optional\":false}],\"returnType\":\"Record<string>\",\"isStatic\":false,\"isPublic\":true},\"getThumbnail\":{\"name\":\"getThumbnail\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<Image | null>\",\"isStatic\":false,\"isPublic\":true},\"setThumbnail\":{\"name\":\"setThumbnail\",\"async\":true,\"parameters\":[{\"name\":\"image\",\"type\":\"Image\",\"optional\":false}],\"returnType\":\"Promise<void>\",\"isStatic\":false,\"isPublic\":true},\"generateThumbnail\":{\"name\":\"generateThumbnail\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"ThumbnailOptions\",\"optional\":false}],\"returnType\":\"Promise<Image>\",\"isStatic\":false,\"isPublic\":true}},\"decoratorConfig\":{\"tableStrategy\":\"sti\",\"api\":false,\"mcp\":false,\"cli\":false,\"tableName\":\"contents\"},\"extends\":\"Content\",\"exportName\":\"Article\",\"collectionExportName\":\"ArticleCollection\",\"validationRules\":[{\"field\":\"name\",\"rule\":\"required\",\"fieldType\":\"text\"}],\"schema\":{\"tableName\":\"contents\",\"ddl\":\"CREATE TABLE IF NOT EXISTS \\\"contents\\\" (\\n \\\"id\\\" UUID PRIMARY KEY NOT NULL,\\n \\\"slug\\\" TEXT NOT NULL,\\n \\\"context\\\" TEXT NOT NULL DEFAULT '',\\n \\\"_meta_type\\\" TEXT NOT NULL,\\n \\\"_meta_data\\\" JSON,\\n \\\"created_at\\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\\"updated_at\\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\\"tenant_id\\\" UUID,\\n \\\"type\\\" TEXT,\\n \\\"variant\\\" TEXT,\\n \\\"file_key\\\" TEXT,\\n \\\"author\\\" TEXT,\\n \\\"name\\\" TEXT DEFAULT '',\\n \\\"title\\\" TEXT,\\n \\\"description\\\" TEXT,\\n \\\"body\\\" TEXT,\\n \\\"body_format\\\" TEXT,\\n \\\"publish_date\\\" TIMESTAMP,\\n \\\"url\\\" TEXT,\\n \\\"source\\\" TEXT,\\n \\\"original_url\\\" TEXT,\\n \\\"language\\\" TEXT,\\n \\\"tags\\\" JSON DEFAULT '[]',\\n \\\"category\\\" TEXT,\\n \\\"status\\\" TEXT DEFAULT 'draft',\\n \\\"state\\\" TEXT DEFAULT 'active',\\n \\\"metadata\\\" JSON DEFAULT '{}',\\n \\\"thumbnail_asset_id\\\" UUID,\\n \\\"feed_source_id\\\" UUID,\\n \\\"source_guid\\\" TEXT,\\n \\\"source_name\\\" TEXT,\\n \\\"source_homepage_url\\\" TEXT,\\n \\\"external_url\\\" TEXT,\\n \\\"original_published_at\\\" TIMESTAMP,\\n \\\"dedupe_key\\\" TEXT\\n);\",\"columns\":{\"id\":{\"type\":\"UUID\",\"primaryKey\":true,\"referenceKind\":\"id\",\"notNull\":true},\"slug\":{\"type\":\"TEXT\",\"notNull\":true},\"context\":{\"type\":\"TEXT\",\"notNull\":true,\"default\":\"\"},\"_meta_type\":{\"type\":\"TEXT\",\"notNull\":true},\"_meta_data\":{\"type\":\"JSON\",\"notNull\":false},\"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\":false},\"type\":{\"type\":\"TEXT\",\"notNull\":false},\"variant\":{\"type\":\"TEXT\",\"notNull\":false},\"file_key\":{\"type\":\"TEXT\",\"notNull\":false},\"author\":{\"type\":\"TEXT\",\"notNull\":false},\"name\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"\"},\"title\":{\"type\":\"TEXT\",\"notNull\":false},\"description\":{\"type\":\"TEXT\",\"notNull\":false},\"body\":{\"type\":\"TEXT\",\"notNull\":false},\"body_format\":{\"type\":\"TEXT\",\"notNull\":false},\"publish_date\":{\"type\":\"TIMESTAMP\",\"notNull\":false},\"url\":{\"type\":\"TEXT\",\"notNull\":false},\"source\":{\"type\":\"TEXT\",\"notNull\":false},\"original_url\":{\"type\":\"TEXT\",\"notNull\":false},\"language\":{\"type\":\"TEXT\",\"notNull\":false},\"tags\":{\"type\":\"JSON\",\"notNull\":false,\"default\":[]},\"category\":{\"type\":\"TEXT\",\"notNull\":false},\"status\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"draft\"},\"state\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"active\"},\"metadata\":{\"type\":\"JSON\",\"notNull\":false,\"default\":{}},\"thumbnail_asset_id\":{\"type\":\"UUID\",\"referenceKind\":\"crossPackageRef\",\"notNull\":false},\"feed_source_id\":{\"type\":\"UUID\",\"referenceKind\":\"foreignKey\",\"notNull\":false,\"foreignKey\":{\"table\":\"content_feed_sources\",\"column\":\"id\",\"onDelete\":\"NO ACTION\",\"onUpdate\":\"CASCADE\"}},\"source_guid\":{\"type\":\"TEXT\",\"notNull\":false},\"source_name\":{\"type\":\"TEXT\",\"notNull\":false},\"source_homepage_url\":{\"type\":\"TEXT\",\"notNull\":false},\"external_url\":{\"type\":\"TEXT\",\"notNull\":false},\"original_published_at\":{\"type\":\"TIMESTAMP\",\"notNull\":false},\"dedupe_key\":{\"type\":\"TEXT\",\"notNull\":false}},\"indexes\":[{\"name\":\"contents_slug_context_meta_type_idx\",\"columns\":[\"tenant_id\",\"slug\",\"context\",\"_meta_type\"],\"unique\":true},{\"name\":\"contents_meta_type_idx\",\"columns\":[\"_meta_type\"]},{\"name\":\"contents_tenant_id_publish_date_idx\",\"columns\":[\"tenant_id\",\"publish_date\"]},{\"name\":\"contents_tenant_id_created_at_idx\",\"columns\":[\"tenant_id\",\"created_at\"]},{\"name\":\"contents_thumbnail_asset_id_idx\",\"columns\":[\"thumbnail_asset_id\"]},{\"name\":\"contents_feed_source_id_idx\",\"columns\":[\"feed_source_id\"]}],\"version\":\"ad51267b\"}},\"@happyvertical/smrt-content:ContentDocument\":{\"name\":\"contentdocument\",\"className\":\"ContentDocument\",\"qualifiedName\":\"@happyvertical/smrt-content:ContentDocument\",\"collection\":\"contents\",\"filePath\":\"/home/runner/work/smrt/smrt/packages/content/src/content-types.ts\",\"packageName\":\"@happyvertical/smrt-content\",\"fields\":{\"created_at\":{\"type\":\"datetime\",\"required\":false},\"updated_at\":{\"type\":\"datetime\",\"required\":false},\"tenantId\":{\"type\":\"text\",\"required\":false,\"_meta\":{\"sqlType\":\"UUID\",\"nullable\":true,\"__tenancy\":{\"isTenantIdField\":true,\"autoFilter\":true,\"required\":false,\"autoPopulate\":true,\"nullable\":true}}},\"type\":{\"type\":\"text\",\"required\":false},\"variant\":{\"type\":\"text\",\"required\":false},\"fileKey\":{\"type\":\"text\",\"required\":false},\"author\":{\"type\":\"text\",\"required\":false},\"name\":{\"type\":\"text\",\"required\":true,\"default\":\"\",\"_meta\":{\"required\":true}},\"title\":{\"type\":\"text\",\"required\":false},\"description\":{\"type\":\"text\",\"required\":false},\"body\":{\"type\":\"text\",\"required\":false},\"bodyFormat\":{\"type\":\"text\",\"required\":false},\"publish_date\":{\"type\":\"datetime\",\"required\":false},\"url\":{\"type\":\"text\",\"required\":false},\"source\":{\"type\":\"text\",\"required\":false},\"original_url\":{\"type\":\"text\",\"required\":false},\"language\":{\"type\":\"text\",\"required\":false},\"tags\":{\"type\":\"json\",\"required\":false,\"default\":[]},\"category\":{\"type\":\"text\",\"required\":false},\"status\":{\"type\":\"text\",\"required\":false,\"default\":\"draft\"},\"state\":{\"type\":\"text\",\"required\":false,\"default\":\"active\"},\"metadata\":{\"type\":\"json\",\"required\":false,\"default\":{}},\"thumbnailAssetId\":{\"type\":\"crossPackageRef\",\"required\":false,\"related\":\"@happyvertical/smrt-assets:Asset\"}},\"methods\":{\"withDatabase\":{\"name\":\"withDatabase\",\"async\":true,\"parameters\":[{\"name\":\"db\",\"type\":\"DatabaseInterface\",\"optional\":false},{\"name\":\"operation\",\"type\":\"Function\",\"optional\":false}],\"returnType\":\"Promise<T>\",\"isStatic\":false,\"isPublic\":true},\"getAiUsageSnapshot\":{\"name\":\"getAiUsageSnapshot\",\"async\":false,\"parameters\":[],\"returnType\":\"AiUsageSnapshot | undefined\",\"isStatic\":false,\"isPublic\":true},\"resetAiUsage\":{\"name\":\"resetAiUsage\",\"async\":false,\"parameters\":[],\"returnType\":\"void\",\"isStatic\":false,\"isPublic\":true},\"listAiUsage\":{\"name\":\"listAiUsage\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"AiUsageListOptions\",\"optional\":true}],\"returnType\":\"Promise<SmrtAiUsageRecord[]>\",\"isStatic\":false,\"isPublic\":true},\"summarizeAiUsage\":{\"name\":\"summarizeAiUsage\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"AiUsageSummaryOptions\",\"optional\":true}],\"returnType\":\"Promise<Record<string, AiUsageStats>>\",\"isStatic\":false,\"isPublic\":true},\"destroy\":{\"name\":\"destroy\",\"async\":false,\"parameters\":[],\"returnType\":\"void\",\"isStatic\":false,\"isPublic\":true},\"markAsPersisted\":{\"name\":\"markAsPersisted\",\"async\":false,\"parameters\":[],\"returnType\":\"void\",\"isStatic\":false,\"isPublic\":true},\"requireInsertOnSave\":{\"name\":\"requireInsertOnSave\",\"async\":false,\"parameters\":[],\"returnType\":\"void\",\"isStatic\":false,\"isPublic\":true},\"initialize\":{\"name\":\"initialize\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise\",\"isStatic\":false,\"isPublic\":true},\"loadDataFromDb\":{\"name\":\"loadDataFromDb\",\"async\":true,\"parameters\":[{\"name\":\"data\",\"type\":\"Record<string>\",\"optional\":false}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getFields\":{\"name\":\"getFields\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<any>\",\"isStatic\":false,\"isPublic\":true},\"toJSON\":{\"name\":\"toJSON\",\"async\":false,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"toPlainObject\":{\"name\":\"toPlainObject\",\"async\":false,\"parameters\":[],\"returnType\":\"Record<string>\",\"isStatic\":false,\"isPublic\":true},\"toPublicJSON\":{\"name\":\"toPublicJSON\",\"async\":false,\"parameters\":[{\"name\":\"options\",\"type\":\"PublicJsonOptions\",\"optional\":true}],\"returnType\":\"Record<string>\",\"isStatic\":false,\"isPublic\":true},\"getId\":{\"name\":\"getId\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getSlug\":{\"name\":\"getSlug\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getSavedId\":{\"name\":\"getSavedId\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"isSaved\":{\"name\":\"isSaved\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"save\":{\"name\":\"save\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"classifyConstraintError\":{\"name\":\"classifyConstraintError\",\"async\":false,\"parameters\":[{\"name\":\"message\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"'unique' | 'not_null' | null\",\"isStatic\":true,\"isPublic\":true},\"loadFromId\":{\"name\":\"loadFromId\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"loadFromSlug\":{\"name\":\"loadFromSlug\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"is\":{\"name\":\"is\",\"async\":true,\"parameters\":[{\"name\":\"criteria\",\"type\":\"string\",\"optional\":false},{\"name\":\"options\",\"type\":\"AiOperationOptions\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"do\":{\"name\":\"do\",\"async\":true,\"parameters\":[{\"name\":\"instructions\",\"type\":\"string\",\"optional\":false},{\"name\":\"options\",\"type\":\"AiOperationOptions\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"describe\":{\"name\":\"describe\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"AiOperationOptions\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"delete\":{\"name\":\"delete\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<void>\",\"isStatic\":false,\"isPublic\":true},\"isRelatedLoaded\":{\"name\":\"isRelatedLoaded\",\"async\":false,\"parameters\":[{\"name\":\"fieldName\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"boolean\",\"isStatic\":false,\"isPublic\":true},\"_setLoadedRelationship\":{\"name\":\"_setLoadedRelationship\",\"async\":false,\"parameters\":[{\"name\":\"fieldName\",\"type\":\"string\",\"optional\":false},{\"name\":\"value\",\"type\":\"any\",\"optional\":false}],\"returnType\":\"void\",\"isStatic\":false,\"isPublic\":true},\"loadRelated\":{\"name\":\"loadRelated\",\"async\":true,\"parameters\":[{\"name\":\"fieldName\",\"type\":\"string\",\"optional\":false},{\"name\":\"opts\",\"type\":\"LoadRelatedOptions\",\"optional\":true}],\"returnType\":\"Promise<any>\",\"isStatic\":false,\"isPublic\":true},\"loadRelatedMany\":{\"name\":\"loadRelatedMany\",\"async\":true,\"parameters\":[{\"name\":\"fieldName\",\"type\":\"string\",\"optional\":false},{\"name\":\"opts\",\"type\":\"LoadRelatedOptions\",\"optional\":true}],\"returnType\":\"Promise<any[]>\",\"isStatic\":false,\"isPublic\":true},\"getRelated\":{\"name\":\"getRelated\",\"async\":true,\"parameters\":[{\"name\":\"fieldName\",\"type\":\"string\",\"optional\":false},{\"name\":\"opts\",\"type\":\"LoadRelatedOptions\",\"optional\":true}],\"returnType\":\"Promise<any>\",\"isStatic\":false,\"isPublic\":true},\"getAvailableTools\":{\"name\":\"getAvailableTools\",\"async\":false,\"parameters\":[],\"returnType\":\"AITool[]\",\"isStatic\":false,\"isPublic\":true},\"executeToolCall\":{\"name\":\"executeToolCall\",\"async\":true,\"parameters\":[{\"name\":\"toolCall\",\"type\":\"ToolCall\",\"optional\":false}],\"returnType\":\"Promise<ToolCallResult>\",\"isStatic\":false,\"isPublic\":true},\"remember\":{\"name\":\"remember\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":false}],\"returnType\":\"Promise<void>\",\"isStatic\":false,\"isPublic\":true},\"recall\":{\"name\":\"recall\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":false}],\"returnType\":\"Promise\",\"isStatic\":false,\"isPublic\":true},\"recallAll\":{\"name\":\"recallAll\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":true}],\"returnType\":\"Promise<Map<string>>\",\"isStatic\":false,\"isPublic\":true},\"forget\":{\"name\":\"forget\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":false}],\"returnType\":\"Promise<void>\",\"isStatic\":false,\"isPublic\":true},\"forgetScope\":{\"name\":\"forgetScope\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":false}],\"returnType\":\"Promise<number>\",\"isStatic\":false,\"isPublic\":true},\"generateEmbeddings\":{\"name\":\"generateEmbeddings\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"GenerateEmbeddingsOptions\",\"optional\":true}],\"returnType\":\"Promise<void>\",\"isStatic\":false,\"isPublic\":true},\"getEmbedding\":{\"name\":\"getEmbedding\",\"async\":true,\"parameters\":[{\"name\":\"fieldName\",\"type\":\"string\",\"optional\":false},{\"name\":\"model\",\"type\":\"string\",\"optional\":true}],\"returnType\":\"Promise<number[] | null>\",\"isStatic\":false,\"isPublic\":true},\"hasStaleEmbeddings\":{\"name\":\"hasStaleEmbeddings\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<boolean>\",\"isStatic\":false,\"isPublic\":true},\"clearEmbeddings\":{\"name\":\"clearEmbeddings\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<void>\",\"isStatic\":false,\"isPublic\":true},\"resolveGovernance\":{\"name\":\"resolveGovernance\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<ResolvedContentGovernance>\",\"isStatic\":false,\"isPublic\":true},\"loadReferences\":{\"name\":\"loadReferences\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"addReference\":{\"name\":\"addReference\",\"async\":true,\"parameters\":[{\"name\":\"content\",\"type\":\"Content | string\",\"optional\":false},{\"name\":\"options\",\"type\":\"object\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"removeReference\":{\"name\":\"removeReference\",\"async\":true,\"parameters\":[{\"name\":\"targetId\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getReferences\":{\"name\":\"getReferences\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getReferenceEdges\":{\"name\":\"getReferenceEdges\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<Array<object>>\",\"isStatic\":false,\"isPublic\":true},\"getReferenceDrift\":{\"name\":\"getReferenceDrift\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<Array<object>>\",\"isStatic\":false,\"isPublic\":true},\"isGoverned\":{\"name\":\"isGoverned\",\"async\":false,\"parameters\":[],\"returnType\":\"boolean\",\"isStatic\":false,\"isPublic\":true},\"getFactLinks\":{\"name\":\"getFactLinks\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getFacts\":{\"name\":\"getFacts\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":true}],\"returnType\":\"Promise<Fact[]>\",\"isStatic\":false,\"isPublic\":true},\"addFact\":{\"name\":\"addFact\",\"async\":true,\"parameters\":[{\"name\":\"fact\",\"type\":\"Fact | string\",\"optional\":false},{\"name\":\"relationship\",\"type\":\"FactContentRelationship\",\"optional\":true},{\"name\":\"metadata\",\"type\":\"Record<string>\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"removeFact\":{\"name\":\"removeFact\",\"async\":true,\"parameters\":[{\"name\":\"factId\",\"type\":\"string\",\"optional\":false},{\"name\":\"relationship\",\"type\":\"FactContentRelationship\",\"optional\":true}],\"returnType\":\"Promise<void>\",\"isStatic\":false,\"isPublic\":true},\"syncFacts\":{\"name\":\"syncFacts\",\"async\":true,\"parameters\":[{\"name\":\"factIds\",\"type\":\"string[]\",\"optional\":false},{\"name\":\"relationship\",\"type\":\"FactContentRelationship\",\"optional\":true}],\"returnType\":\"Promise<object>\",\"isStatic\":false,\"isPublic\":true},\"browseFacts\":{\"name\":\"browseFacts\",\"async\":true,\"parameters\":[{\"name\":\"query\",\"type\":\"any\",\"optional\":true,\"default\":\"\"},{\"name\":\"options\",\"type\":\"object\",\"optional\":true}],\"returnType\":\"Promise<Fact[]>\",\"isStatic\":false,\"isPublic\":true},\"repairFactAudit\":{\"name\":\"repairFactAudit\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"repairFactAuditAction\":{\"name\":\"repairFactAuditAction\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"repairFactEvidence\":{\"name\":\"repairFactEvidence\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"FactAuditResourceRepairOptions\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"repairFactEvidenceAction\":{\"name\":\"repairFactEvidenceAction\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"FactAuditResourceRepairOptions\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"recheckFactClaims\":{\"name\":\"recheckFactClaims\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"FactAuditClaimRecheckOptions\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"recheckFactClaimsAction\":{\"name\":\"recheckFactClaimsAction\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"FactAuditClaimRecheckOptions\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"updateFactEvidenceStatus\":{\"name\":\"updateFactEvidenceStatus\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"FactEvidenceStatusUpdateOptions\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"updateFactEvidenceStatusAction\":{\"name\":\"updateFactEvidenceStatusAction\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"FactEvidenceStatusUpdateOptions\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getFactAuditState\":{\"name\":\"getFactAuditState\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<FactAuditState>\",\"isStatic\":false,\"isPublic\":true},\"getFactAuditStateAction\":{\"name\":\"getFactAuditStateAction\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getFactsState\":{\"name\":\"getFactsState\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"syncFactsState\":{\"name\":\"syncFactsState\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"createVersion\":{\"name\":\"createVersion\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"CreateContentVersionOptions\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getVersions\":{\"name\":\"getVersions\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"restoreFromVersion\":{\"name\":\"restoreFromVersion\",\"async\":true,\"parameters\":[{\"name\":\"versionNumber\",\"type\":\"number\",\"optional\":false}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getReviews\":{\"name\":\"getReviews\",\"async\":true,\"parameters\":[{\"name\":\"kind\",\"type\":\"any\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"listReviews\":{\"name\":\"listReviews\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getReviewRequirements\":{\"name\":\"getReviewRequirements\",\"async\":true,\"parameters\":[{\"name\":\"profileKey\",\"type\":\"string\",\"optional\":false},{\"name\":\"governance\",\"type\":\"ResolvedContentGovernance\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getGovernanceState\":{\"name\":\"getGovernanceState\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<ContentGovernanceState>\",\"isStatic\":false,\"isPublic\":true},\"getGovernanceStateAction\":{\"name\":\"getGovernanceStateAction\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"listReviewProfilesAction\":{\"name\":\"listReviewProfilesAction\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"evaluateReviewProfile\":{\"name\":\"evaluateReviewProfile\",\"async\":true,\"parameters\":[{\"name\":\"profileKey\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"Promise<ContentReviewProfileEvaluation>\",\"isStatic\":false,\"isPublic\":true},\"evaluateReviewProfileAction\":{\"name\":\"evaluateReviewProfileAction\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"isReadyForReviewProfile\":{\"name\":\"isReadyForReviewProfile\",\"async\":true,\"parameters\":[{\"name\":\"profileKey\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"Promise<boolean>\",\"isStatic\":false,\"isPublic\":true},\"getPublishedTransparency\":{\"name\":\"getPublishedTransparency\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getPublishedTransparencyAction\":{\"name\":\"getPublishedTransparencyAction\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"previewTransparency\":{\"name\":\"previewTransparency\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"previewTransparencyAction\":{\"name\":\"previewTransparencyAction\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"runReview\":{\"name\":\"runReview\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"RunContentReviewOptions\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"runReviewAction\":{\"name\":\"runReviewAction\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"RunContentReviewOptions\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"reviewFacts\":{\"name\":\"reviewFacts\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"Omit<RunContentReviewOptions, 'kind'>\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"reviewSafety\":{\"name\":\"reviewSafety\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"Omit<RunContentReviewOptions, 'kind'>\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getCorrections\":{\"name\":\"getCorrections\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"listCorrections\":{\"name\":\"listCorrections\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"issueCorrection\":{\"name\":\"issueCorrection\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"IssueContentCorrectionOptions\",\"optional\":false}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"issueCorrectionAction\":{\"name\":\"issueCorrectionAction\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"IssueContentCorrectionOptions\",\"optional\":false}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"listVersions\":{\"name\":\"listVersions\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"mutateVersionAction\":{\"name\":\"mutateVersionAction\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"any\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getCategorySegments\":{\"name\":\"getCategorySegments\",\"async\":false,\"parameters\":[],\"returnType\":\"string[]\",\"isStatic\":false,\"isPublic\":true},\"getParentCategory\":{\"name\":\"getParentCategory\",\"async\":false,\"parameters\":[],\"returnType\":\"string | null\",\"isStatic\":false,\"isPublic\":true},\"getRootCategory\":{\"name\":\"getRootCategory\",\"async\":false,\"parameters\":[],\"returnType\":\"string | null\",\"isStatic\":false,\"isPublic\":true},\"getAncestorPaths\":{\"name\":\"getAncestorPaths\",\"async\":false,\"parameters\":[],\"returnType\":\"string[]\",\"isStatic\":false,\"isPublic\":true},\"isInCategory\":{\"name\":\"isInCategory\",\"async\":false,\"parameters\":[{\"name\":\"categoryPath\",\"type\":\"string\",\"optional\":false},{\"name\":\"includeChildren\",\"type\":\"any\",\"optional\":true}],\"returnType\":\"boolean\",\"isStatic\":false,\"isPublic\":true},\"getAssets\":{\"name\":\"getAssets\",\"async\":true,\"parameters\":[{\"name\":\"relationship\",\"type\":\"string\",\"optional\":true}],\"returnType\":\"Promise<Asset[]>\",\"isStatic\":false,\"isPublic\":true},\"addAsset\":{\"name\":\"addAsset\",\"async\":true,\"parameters\":[{\"name\":\"asset\",\"type\":\"Asset\",\"optional\":false},{\"name\":\"relationship\",\"type\":\"any\",\"optional\":true,\"default\":\"attachment\"},{\"name\":\"sortOrder\",\"type\":\"any\",\"optional\":true}],\"returnType\":\"Promise<void>\",\"isStatic\":false,\"isPublic\":true},\"removeAsset\":{\"name\":\"removeAsset\",\"async\":true,\"parameters\":[{\"name\":\"assetId\",\"type\":\"string\",\"optional\":false},{\"name\":\"relationship\",\"type\":\"string\",\"optional\":true}],\"returnType\":\"Promise<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\":\"metadata\",\"type\":\"Record<string> | null | undefined\",\"optional\":false}],\"returnType\":\"void\",\"isStatic\":false,\"isPublic\":true},\"updateMetadata\":{\"name\":\"updateMetadata\",\"async\":false,\"parameters\":[{\"name\":\"patch\",\"type\":\"Partial<Record<string>>\",\"optional\":false}],\"returnType\":\"Record<string>\",\"isStatic\":false,\"isPublic\":true},\"getThumbnail\":{\"name\":\"getThumbnail\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<Image | null>\",\"isStatic\":false,\"isPublic\":true},\"setThumbnail\":{\"name\":\"setThumbnail\",\"async\":true,\"parameters\":[{\"name\":\"image\",\"type\":\"Image\",\"optional\":false}],\"returnType\":\"Promise<void>\",\"isStatic\":false,\"isPublic\":true},\"generateThumbnail\":{\"name\":\"generateThumbnail\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"ThumbnailOptions\",\"optional\":false}],\"returnType\":\"Promise<Image>\",\"isStatic\":false,\"isPublic\":true}},\"decoratorConfig\":{\"tableStrategy\":\"sti\",\"api\":false,\"mcp\":false,\"cli\":false,\"tableName\":\"contents\"},\"extends\":\"Content\",\"exportName\":\"ContentDocument\",\"collectionExportName\":\"ContentDocumentCollection\",\"validationRules\":[{\"field\":\"name\",\"rule\":\"required\",\"fieldType\":\"text\"}],\"schema\":{\"tableName\":\"contents\",\"ddl\":\"CREATE TABLE IF NOT EXISTS \\\"contents\\\" (\\n \\\"id\\\" UUID PRIMARY KEY NOT NULL,\\n \\\"slug\\\" TEXT NOT NULL,\\n \\\"context\\\" TEXT NOT NULL DEFAULT '',\\n \\\"_meta_type\\\" TEXT NOT NULL,\\n \\\"_meta_data\\\" JSON,\\n \\\"created_at\\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\\"updated_at\\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\\"tenant_id\\\" UUID,\\n \\\"type\\\" TEXT,\\n \\\"variant\\\" TEXT,\\n \\\"file_key\\\" TEXT,\\n \\\"author\\\" TEXT,\\n \\\"name\\\" TEXT DEFAULT '',\\n \\\"title\\\" TEXT,\\n \\\"description\\\" TEXT,\\n \\\"body\\\" TEXT,\\n \\\"body_format\\\" TEXT,\\n \\\"publish_date\\\" TIMESTAMP,\\n \\\"url\\\" TEXT,\\n \\\"source\\\" TEXT,\\n \\\"original_url\\\" TEXT,\\n \\\"language\\\" TEXT,\\n \\\"tags\\\" JSON DEFAULT '[]',\\n \\\"category\\\" TEXT,\\n \\\"status\\\" TEXT DEFAULT 'draft',\\n \\\"state\\\" TEXT DEFAULT 'active',\\n \\\"metadata\\\" JSON DEFAULT '{}',\\n \\\"thumbnail_asset_id\\\" UUID,\\n \\\"feed_source_id\\\" UUID,\\n \\\"source_guid\\\" TEXT,\\n \\\"source_name\\\" TEXT,\\n \\\"source_homepage_url\\\" TEXT,\\n \\\"external_url\\\" TEXT,\\n \\\"original_published_at\\\" TIMESTAMP,\\n \\\"dedupe_key\\\" TEXT\\n);\",\"columns\":{\"id\":{\"type\":\"UUID\",\"primaryKey\":true,\"referenceKind\":\"id\",\"notNull\":true},\"slug\":{\"type\":\"TEXT\",\"notNull\":true},\"context\":{\"type\":\"TEXT\",\"notNull\":true,\"default\":\"\"},\"_meta_type\":{\"type\":\"TEXT\",\"notNull\":true},\"_meta_data\":{\"type\":\"JSON\",\"notNull\":false},\"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\":false},\"type\":{\"type\":\"TEXT\",\"notNull\":false},\"variant\":{\"type\":\"TEXT\",\"notNull\":false},\"file_key\":{\"type\":\"TEXT\",\"notNull\":false},\"author\":{\"type\":\"TEXT\",\"notNull\":false},\"name\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"\"},\"title\":{\"type\":\"TEXT\",\"notNull\":false},\"description\":{\"type\":\"TEXT\",\"notNull\":false},\"body\":{\"type\":\"TEXT\",\"notNull\":false},\"body_format\":{\"type\":\"TEXT\",\"notNull\":false},\"publish_date\":{\"type\":\"TIMESTAMP\",\"notNull\":false},\"url\":{\"type\":\"TEXT\",\"notNull\":false},\"source\":{\"type\":\"TEXT\",\"notNull\":false},\"original_url\":{\"type\":\"TEXT\",\"notNull\":false},\"language\":{\"type\":\"TEXT\",\"notNull\":false},\"tags\":{\"type\":\"JSON\",\"notNull\":false,\"default\":[]},\"category\":{\"type\":\"TEXT\",\"notNull\":false},\"status\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"draft\"},\"state\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"active\"},\"metadata\":{\"type\":\"JSON\",\"notNull\":false,\"default\":{}},\"thumbnail_asset_id\":{\"type\":\"UUID\",\"referenceKind\":\"crossPackageRef\",\"notNull\":false},\"feed_source_id\":{\"type\":\"UUID\",\"referenceKind\":\"foreignKey\",\"notNull\":false,\"foreignKey\":{\"table\":\"content_feed_sources\",\"column\":\"id\",\"onDelete\":\"NO ACTION\",\"onUpdate\":\"CASCADE\"}},\"source_guid\":{\"type\":\"TEXT\",\"notNull\":false},\"source_name\":{\"type\":\"TEXT\",\"notNull\":false},\"source_homepage_url\":{\"type\":\"TEXT\",\"notNull\":false},\"external_url\":{\"type\":\"TEXT\",\"notNull\":false},\"original_published_at\":{\"type\":\"TIMESTAMP\",\"notNull\":false},\"dedupe_key\":{\"type\":\"TEXT\",\"notNull\":false}},\"indexes\":[{\"name\":\"contents_slug_context_meta_type_idx\",\"columns\":[\"tenant_id\",\"slug\",\"context\",\"_meta_type\"],\"unique\":true},{\"name\":\"contents_meta_type_idx\",\"columns\":[\"_meta_type\"]},{\"name\":\"contents_tenant_id_publish_date_idx\",\"columns\":[\"tenant_id\",\"publish_date\"]},{\"name\":\"contents_tenant_id_created_at_idx\",\"columns\":[\"tenant_id\",\"created_at\"]},{\"name\":\"contents_thumbnail_asset_id_idx\",\"columns\":[\"thumbnail_asset_id\"]},{\"name\":\"contents_feed_source_id_idx\",\"columns\":[\"feed_source_id\"]}],\"version\":\"8107d801\"}},\"@happyvertical/smrt-content:Mirror\":{\"name\":\"mirror\",\"className\":\"Mirror\",\"qualifiedName\":\"@happyvertical/smrt-content:Mirror\",\"collection\":\"contents\",\"filePath\":\"/home/runner/work/smrt/smrt/packages/content/src/content-types.ts\",\"packageName\":\"@happyvertical/smrt-content\",\"fields\":{\"created_at\":{\"type\":\"datetime\",\"required\":false},\"updated_at\":{\"type\":\"datetime\",\"required\":false},\"tenantId\":{\"type\":\"text\",\"required\":false,\"_meta\":{\"sqlType\":\"UUID\",\"nullable\":true,\"__tenancy\":{\"isTenantIdField\":true,\"autoFilter\":true,\"required\":false,\"autoPopulate\":true,\"nullable\":true}}},\"type\":{\"type\":\"text\",\"required\":false},\"variant\":{\"type\":\"text\",\"required\":false},\"fileKey\":{\"type\":\"text\",\"required\":false},\"author\":{\"type\":\"text\",\"required\":false},\"name\":{\"type\":\"text\",\"required\":true,\"default\":\"\",\"_meta\":{\"required\":true}},\"title\":{\"type\":\"text\",\"required\":false},\"description\":{\"type\":\"text\",\"required\":false},\"body\":{\"type\":\"text\",\"required\":false},\"bodyFormat\":{\"type\":\"text\",\"required\":false},\"publish_date\":{\"type\":\"datetime\",\"required\":false},\"url\":{\"type\":\"text\",\"required\":false},\"source\":{\"type\":\"text\",\"required\":false},\"original_url\":{\"type\":\"text\",\"required\":false},\"language\":{\"type\":\"text\",\"required\":false},\"tags\":{\"type\":\"json\",\"required\":false,\"default\":[]},\"category\":{\"type\":\"text\",\"required\":false},\"status\":{\"type\":\"text\",\"required\":false,\"default\":\"draft\"},\"state\":{\"type\":\"text\",\"required\":false,\"default\":\"active\"},\"metadata\":{\"type\":\"json\",\"required\":false,\"default\":{}},\"thumbnailAssetId\":{\"type\":\"crossPackageRef\",\"required\":false,\"related\":\"@happyvertical/smrt-assets:Asset\"},\"feedSourceId\":{\"type\":\"foreignKey\",\"required\":false,\"related\":\"ContentFeedSource\"},\"sourceGuid\":{\"type\":\"text\",\"required\":false},\"sourceName\":{\"type\":\"text\",\"required\":false},\"sourceHomepageUrl\":{\"type\":\"text\",\"required\":false},\"externalUrl\":{\"type\":\"text\",\"required\":false},\"originalPublishedAt\":{\"type\":\"datetime\",\"required\":false},\"dedupeKey\":{\"type\":\"text\",\"required\":false}},\"methods\":{\"withDatabase\":{\"name\":\"withDatabase\",\"async\":true,\"parameters\":[{\"name\":\"db\",\"type\":\"DatabaseInterface\",\"optional\":false},{\"name\":\"operation\",\"type\":\"Function\",\"optional\":false}],\"returnType\":\"Promise<T>\",\"isStatic\":false,\"isPublic\":true},\"getAiUsageSnapshot\":{\"name\":\"getAiUsageSnapshot\",\"async\":false,\"parameters\":[],\"returnType\":\"AiUsageSnapshot | undefined\",\"isStatic\":false,\"isPublic\":true},\"resetAiUsage\":{\"name\":\"resetAiUsage\",\"async\":false,\"parameters\":[],\"returnType\":\"void\",\"isStatic\":false,\"isPublic\":true},\"listAiUsage\":{\"name\":\"listAiUsage\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"AiUsageListOptions\",\"optional\":true}],\"returnType\":\"Promise<SmrtAiUsageRecord[]>\",\"isStatic\":false,\"isPublic\":true},\"summarizeAiUsage\":{\"name\":\"summarizeAiUsage\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"AiUsageSummaryOptions\",\"optional\":true}],\"returnType\":\"Promise<Record<string, AiUsageStats>>\",\"isStatic\":false,\"isPublic\":true},\"destroy\":{\"name\":\"destroy\",\"async\":false,\"parameters\":[],\"returnType\":\"void\",\"isStatic\":false,\"isPublic\":true},\"markAsPersisted\":{\"name\":\"markAsPersisted\",\"async\":false,\"parameters\":[],\"returnType\":\"void\",\"isStatic\":false,\"isPublic\":true},\"requireInsertOnSave\":{\"name\":\"requireInsertOnSave\",\"async\":false,\"parameters\":[],\"returnType\":\"void\",\"isStatic\":false,\"isPublic\":true},\"initialize\":{\"name\":\"initialize\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise\",\"isStatic\":false,\"isPublic\":true},\"loadDataFromDb\":{\"name\":\"loadDataFromDb\",\"async\":true,\"parameters\":[{\"name\":\"data\",\"type\":\"Record<string>\",\"optional\":false}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getFields\":{\"name\":\"getFields\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<any>\",\"isStatic\":false,\"isPublic\":true},\"toJSON\":{\"name\":\"toJSON\",\"async\":false,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"toPlainObject\":{\"name\":\"toPlainObject\",\"async\":false,\"parameters\":[],\"returnType\":\"Record<string>\",\"isStatic\":false,\"isPublic\":true},\"toPublicJSON\":{\"name\":\"toPublicJSON\",\"async\":false,\"parameters\":[{\"name\":\"options\",\"type\":\"PublicJsonOptions\",\"optional\":true}],\"returnType\":\"Record<string>\",\"isStatic\":false,\"isPublic\":true},\"getId\":{\"name\":\"getId\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getSlug\":{\"name\":\"getSlug\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getSavedId\":{\"name\":\"getSavedId\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"isSaved\":{\"name\":\"isSaved\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"save\":{\"name\":\"save\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"classifyConstraintError\":{\"name\":\"classifyConstraintError\",\"async\":false,\"parameters\":[{\"name\":\"message\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"'unique' | 'not_null' | null\",\"isStatic\":true,\"isPublic\":true},\"loadFromId\":{\"name\":\"loadFromId\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"loadFromSlug\":{\"name\":\"loadFromSlug\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"is\":{\"name\":\"is\",\"async\":true,\"parameters\":[{\"name\":\"criteria\",\"type\":\"string\",\"optional\":false},{\"name\":\"options\",\"type\":\"AiOperationOptions\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"do\":{\"name\":\"do\",\"async\":true,\"parameters\":[{\"name\":\"instructions\",\"type\":\"string\",\"optional\":false},{\"name\":\"options\",\"type\":\"AiOperationOptions\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"describe\":{\"name\":\"describe\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"AiOperationOptions\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"delete\":{\"name\":\"delete\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<void>\",\"isStatic\":false,\"isPublic\":true},\"isRelatedLoaded\":{\"name\":\"isRelatedLoaded\",\"async\":false,\"parameters\":[{\"name\":\"fieldName\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"boolean\",\"isStatic\":false,\"isPublic\":true},\"_setLoadedRelationship\":{\"name\":\"_setLoadedRelationship\",\"async\":false,\"parameters\":[{\"name\":\"fieldName\",\"type\":\"string\",\"optional\":false},{\"name\":\"value\",\"type\":\"any\",\"optional\":false}],\"returnType\":\"void\",\"isStatic\":false,\"isPublic\":true},\"loadRelated\":{\"name\":\"loadRelated\",\"async\":true,\"parameters\":[{\"name\":\"fieldName\",\"type\":\"string\",\"optional\":false},{\"name\":\"opts\",\"type\":\"LoadRelatedOptions\",\"optional\":true}],\"returnType\":\"Promise<any>\",\"isStatic\":false,\"isPublic\":true},\"loadRelatedMany\":{\"name\":\"loadRelatedMany\",\"async\":true,\"parameters\":[{\"name\":\"fieldName\",\"type\":\"string\",\"optional\":false},{\"name\":\"opts\",\"type\":\"LoadRelatedOptions\",\"optional\":true}],\"returnType\":\"Promise<any[]>\",\"isStatic\":false,\"isPublic\":true},\"getRelated\":{\"name\":\"getRelated\",\"async\":true,\"parameters\":[{\"name\":\"fieldName\",\"type\":\"string\",\"optional\":false},{\"name\":\"opts\",\"type\":\"LoadRelatedOptions\",\"optional\":true}],\"returnType\":\"Promise<any>\",\"isStatic\":false,\"isPublic\":true},\"getAvailableTools\":{\"name\":\"getAvailableTools\",\"async\":false,\"parameters\":[],\"returnType\":\"AITool[]\",\"isStatic\":false,\"isPublic\":true},\"executeToolCall\":{\"name\":\"executeToolCall\",\"async\":true,\"parameters\":[{\"name\":\"toolCall\",\"type\":\"ToolCall\",\"optional\":false}],\"returnType\":\"Promise<ToolCallResult>\",\"isStatic\":false,\"isPublic\":true},\"remember\":{\"name\":\"remember\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":false}],\"returnType\":\"Promise<void>\",\"isStatic\":false,\"isPublic\":true},\"recall\":{\"name\":\"recall\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":false}],\"returnType\":\"Promise\",\"isStatic\":false,\"isPublic\":true},\"recallAll\":{\"name\":\"recallAll\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":true}],\"returnType\":\"Promise<Map<string>>\",\"isStatic\":false,\"isPublic\":true},\"forget\":{\"name\":\"forget\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":false}],\"returnType\":\"Promise<void>\",\"isStatic\":false,\"isPublic\":true},\"forgetScope\":{\"name\":\"forgetScope\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":false}],\"returnType\":\"Promise<number>\",\"isStatic\":false,\"isPublic\":true},\"generateEmbeddings\":{\"name\":\"generateEmbeddings\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"GenerateEmbeddingsOptions\",\"optional\":true}],\"returnType\":\"Promise<void>\",\"isStatic\":false,\"isPublic\":true},\"getEmbedding\":{\"name\":\"getEmbedding\",\"async\":true,\"parameters\":[{\"name\":\"fieldName\",\"type\":\"string\",\"optional\":false},{\"name\":\"model\",\"type\":\"string\",\"optional\":true}],\"returnType\":\"Promise<number[] | null>\",\"isStatic\":false,\"isPublic\":true},\"hasStaleEmbeddings\":{\"name\":\"hasStaleEmbeddings\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<boolean>\",\"isStatic\":false,\"isPublic\":true},\"clearEmbeddings\":{\"name\":\"clearEmbeddings\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<void>\",\"isStatic\":false,\"isPublic\":true},\"resolveGovernance\":{\"name\":\"resolveGovernance\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<ResolvedContentGovernance>\",\"isStatic\":false,\"isPublic\":true},\"loadReferences\":{\"name\":\"loadReferences\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"addReference\":{\"name\":\"addReference\",\"async\":true,\"parameters\":[{\"name\":\"content\",\"type\":\"Content | string\",\"optional\":false},{\"name\":\"options\",\"type\":\"object\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"removeReference\":{\"name\":\"removeReference\",\"async\":true,\"parameters\":[{\"name\":\"targetId\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getReferences\":{\"name\":\"getReferences\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getReferenceEdges\":{\"name\":\"getReferenceEdges\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<Array<object>>\",\"isStatic\":false,\"isPublic\":true},\"getReferenceDrift\":{\"name\":\"getReferenceDrift\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<Array<object>>\",\"isStatic\":false,\"isPublic\":true},\"isGoverned\":{\"name\":\"isGoverned\",\"async\":false,\"parameters\":[],\"returnType\":\"boolean\",\"isStatic\":false,\"isPublic\":true},\"getFactLinks\":{\"name\":\"getFactLinks\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getFacts\":{\"name\":\"getFacts\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":true}],\"returnType\":\"Promise<Fact[]>\",\"isStatic\":false,\"isPublic\":true},\"addFact\":{\"name\":\"addFact\",\"async\":true,\"parameters\":[{\"name\":\"fact\",\"type\":\"Fact | string\",\"optional\":false},{\"name\":\"relationship\",\"type\":\"FactContentRelationship\",\"optional\":true},{\"name\":\"metadata\",\"type\":\"Record<string>\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"removeFact\":{\"name\":\"removeFact\",\"async\":true,\"parameters\":[{\"name\":\"factId\",\"type\":\"string\",\"optional\":false},{\"name\":\"relationship\",\"type\":\"FactContentRelationship\",\"optional\":true}],\"returnType\":\"Promise<void>\",\"isStatic\":false,\"isPublic\":true},\"syncFacts\":{\"name\":\"syncFacts\",\"async\":true,\"parameters\":[{\"name\":\"factIds\",\"type\":\"string[]\",\"optional\":false},{\"name\":\"relationship\",\"type\":\"FactContentRelationship\",\"optional\":true}],\"returnType\":\"Promise<object>\",\"isStatic\":false,\"isPublic\":true},\"browseFacts\":{\"name\":\"browseFacts\",\"async\":true,\"parameters\":[{\"name\":\"query\",\"type\":\"any\",\"optional\":true,\"default\":\"\"},{\"name\":\"options\",\"type\":\"object\",\"optional\":true}],\"returnType\":\"Promise<Fact[]>\",\"isStatic\":false,\"isPublic\":true},\"repairFactAudit\":{\"name\":\"repairFactAudit\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"repairFactAuditAction\":{\"name\":\"repairFactAuditAction\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"repairFactEvidence\":{\"name\":\"repairFactEvidence\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"FactAuditResourceRepairOptions\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"repairFactEvidenceAction\":{\"name\":\"repairFactEvidenceAction\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"FactAuditResourceRepairOptions\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"recheckFactClaims\":{\"name\":\"recheckFactClaims\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"FactAuditClaimRecheckOptions\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"recheckFactClaimsAction\":{\"name\":\"recheckFactClaimsAction\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"FactAuditClaimRecheckOptions\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"updateFactEvidenceStatus\":{\"name\":\"updateFactEvidenceStatus\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"FactEvidenceStatusUpdateOptions\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"updateFactEvidenceStatusAction\":{\"name\":\"updateFactEvidenceStatusAction\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"FactEvidenceStatusUpdateOptions\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getFactAuditState\":{\"name\":\"getFactAuditState\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<FactAuditState>\",\"isStatic\":false,\"isPublic\":true},\"getFactAuditStateAction\":{\"name\":\"getFactAuditStateAction\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getFactsState\":{\"name\":\"getFactsState\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"syncFactsState\":{\"name\":\"syncFactsState\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"createVersion\":{\"name\":\"createVersion\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"CreateContentVersionOptions\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getVersions\":{\"name\":\"getVersions\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"restoreFromVersion\":{\"name\":\"restoreFromVersion\",\"async\":true,\"parameters\":[{\"name\":\"versionNumber\",\"type\":\"number\",\"optional\":false}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getReviews\":{\"name\":\"getReviews\",\"async\":true,\"parameters\":[{\"name\":\"kind\",\"type\":\"any\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"listReviews\":{\"name\":\"listReviews\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getReviewRequirements\":{\"name\":\"getReviewRequirements\",\"async\":true,\"parameters\":[{\"name\":\"profileKey\",\"type\":\"string\",\"optional\":false},{\"name\":\"governance\",\"type\":\"ResolvedContentGovernance\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getGovernanceState\":{\"name\":\"getGovernanceState\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<ContentGovernanceState>\",\"isStatic\":false,\"isPublic\":true},\"getGovernanceStateAction\":{\"name\":\"getGovernanceStateAction\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"listReviewProfilesAction\":{\"name\":\"listReviewProfilesAction\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"evaluateReviewProfile\":{\"name\":\"evaluateReviewProfile\",\"async\":true,\"parameters\":[{\"name\":\"profileKey\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"Promise<ContentReviewProfileEvaluation>\",\"isStatic\":false,\"isPublic\":true},\"evaluateReviewProfileAction\":{\"name\":\"evaluateReviewProfileAction\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"isReadyForReviewProfile\":{\"name\":\"isReadyForReviewProfile\",\"async\":true,\"parameters\":[{\"name\":\"profileKey\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"Promise<boolean>\",\"isStatic\":false,\"isPublic\":true},\"getPublishedTransparency\":{\"name\":\"getPublishedTransparency\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getPublishedTransparencyAction\":{\"name\":\"getPublishedTransparencyAction\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"previewTransparency\":{\"name\":\"previewTransparency\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"previewTransparencyAction\":{\"name\":\"previewTransparencyAction\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"runReview\":{\"name\":\"runReview\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"RunContentReviewOptions\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"runReviewAction\":{\"name\":\"runReviewAction\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"RunContentReviewOptions\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"reviewFacts\":{\"name\":\"reviewFacts\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"Omit<RunContentReviewOptions, 'kind'>\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"reviewSafety\":{\"name\":\"reviewSafety\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"Omit<RunContentReviewOptions, 'kind'>\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getCorrections\":{\"name\":\"getCorrections\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"listCorrections\":{\"name\":\"listCorrections\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"issueCorrection\":{\"name\":\"issueCorrection\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"IssueContentCorrectionOptions\",\"optional\":false}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"issueCorrectionAction\":{\"name\":\"issueCorrectionAction\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"IssueContentCorrectionOptions\",\"optional\":false}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"listVersions\":{\"name\":\"listVersions\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"mutateVersionAction\":{\"name\":\"mutateVersionAction\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"any\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getCategorySegments\":{\"name\":\"getCategorySegments\",\"async\":false,\"parameters\":[],\"returnType\":\"string[]\",\"isStatic\":false,\"isPublic\":true},\"getParentCategory\":{\"name\":\"getParentCategory\",\"async\":false,\"parameters\":[],\"returnType\":\"string | null\",\"isStatic\":false,\"isPublic\":true},\"getRootCategory\":{\"name\":\"getRootCategory\",\"async\":false,\"parameters\":[],\"returnType\":\"string | null\",\"isStatic\":false,\"isPublic\":true},\"getAncestorPaths\":{\"name\":\"getAncestorPaths\",\"async\":false,\"parameters\":[],\"returnType\":\"string[]\",\"isStatic\":false,\"isPublic\":true},\"isInCategory\":{\"name\":\"isInCategory\",\"async\":false,\"parameters\":[{\"name\":\"categoryPath\",\"type\":\"string\",\"optional\":false},{\"name\":\"includeChildren\",\"type\":\"any\",\"optional\":true}],\"returnType\":\"boolean\",\"isStatic\":false,\"isPublic\":true},\"getAssets\":{\"name\":\"getAssets\",\"async\":true,\"parameters\":[{\"name\":\"relationship\",\"type\":\"string\",\"optional\":true}],\"returnType\":\"Promise<Asset[]>\",\"isStatic\":false,\"isPublic\":true},\"addAsset\":{\"name\":\"addAsset\",\"async\":true,\"parameters\":[{\"name\":\"asset\",\"type\":\"Asset\",\"optional\":false},{\"name\":\"relationship\",\"type\":\"any\",\"optional\":true,\"default\":\"attachment\"},{\"name\":\"sortOrder\",\"type\":\"any\",\"optional\":true}],\"returnType\":\"Promise<void>\",\"isStatic\":false,\"isPublic\":true},\"removeAsset\":{\"name\":\"removeAsset\",\"async\":true,\"parameters\":[{\"name\":\"assetId\",\"type\":\"string\",\"optional\":false},{\"name\":\"relationship\",\"type\":\"string\",\"optional\":true}],\"returnType\":\"Promise<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\":\"metadata\",\"type\":\"Record<string> | null | undefined\",\"optional\":false}],\"returnType\":\"void\",\"isStatic\":false,\"isPublic\":true},\"updateMetadata\":{\"name\":\"updateMetadata\",\"async\":false,\"parameters\":[{\"name\":\"patch\",\"type\":\"Partial<Record<string>>\",\"optional\":false}],\"returnType\":\"Record<string>\",\"isStatic\":false,\"isPublic\":true},\"getThumbnail\":{\"name\":\"getThumbnail\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<Image | null>\",\"isStatic\":false,\"isPublic\":true},\"setThumbnail\":{\"name\":\"setThumbnail\",\"async\":true,\"parameters\":[{\"name\":\"image\",\"type\":\"Image\",\"optional\":false}],\"returnType\":\"Promise<void>\",\"isStatic\":false,\"isPublic\":true},\"generateThumbnail\":{\"name\":\"generateThumbnail\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"ThumbnailOptions\",\"optional\":false}],\"returnType\":\"Promise<Image>\",\"isStatic\":false,\"isPublic\":true}},\"decoratorConfig\":{\"tableStrategy\":\"sti\",\"api\":false,\"mcp\":false,\"cli\":false,\"tableName\":\"contents\"},\"extends\":\"Content\",\"exportName\":\"Mirror\",\"collectionExportName\":\"MirrorCollection\",\"validationRules\":[{\"field\":\"name\",\"rule\":\"required\",\"fieldType\":\"text\"}],\"schema\":{\"tableName\":\"contents\",\"ddl\":\"CREATE TABLE IF NOT EXISTS \\\"contents\\\" (\\n \\\"id\\\" UUID PRIMARY KEY NOT NULL,\\n \\\"slug\\\" TEXT NOT NULL,\\n \\\"context\\\" TEXT NOT NULL DEFAULT '',\\n \\\"_meta_type\\\" TEXT NOT NULL,\\n \\\"_meta_data\\\" JSON,\\n \\\"created_at\\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\\"updated_at\\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\\"tenant_id\\\" UUID,\\n \\\"type\\\" TEXT,\\n \\\"variant\\\" TEXT,\\n \\\"file_key\\\" TEXT,\\n \\\"author\\\" TEXT,\\n \\\"name\\\" TEXT DEFAULT '',\\n \\\"title\\\" TEXT,\\n \\\"description\\\" TEXT,\\n \\\"body\\\" TEXT,\\n \\\"body_format\\\" TEXT,\\n \\\"publish_date\\\" TIMESTAMP,\\n \\\"url\\\" TEXT,\\n \\\"source\\\" TEXT,\\n \\\"original_url\\\" TEXT,\\n \\\"language\\\" TEXT,\\n \\\"tags\\\" JSON DEFAULT '[]',\\n \\\"category\\\" TEXT,\\n \\\"status\\\" TEXT DEFAULT 'draft',\\n \\\"state\\\" TEXT DEFAULT 'active',\\n \\\"metadata\\\" JSON DEFAULT '{}',\\n \\\"thumbnail_asset_id\\\" UUID,\\n \\\"feed_source_id\\\" UUID,\\n \\\"source_guid\\\" TEXT,\\n \\\"source_name\\\" TEXT,\\n \\\"source_homepage_url\\\" TEXT,\\n \\\"external_url\\\" TEXT,\\n \\\"original_published_at\\\" TIMESTAMP,\\n \\\"dedupe_key\\\" TEXT\\n);\",\"columns\":{\"id\":{\"type\":\"UUID\",\"primaryKey\":true,\"referenceKind\":\"id\",\"notNull\":true},\"slug\":{\"type\":\"TEXT\",\"notNull\":true},\"context\":{\"type\":\"TEXT\",\"notNull\":true,\"default\":\"\"},\"_meta_type\":{\"type\":\"TEXT\",\"notNull\":true},\"_meta_data\":{\"type\":\"JSON\",\"notNull\":false},\"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\":false},\"type\":{\"type\":\"TEXT\",\"notNull\":false},\"variant\":{\"type\":\"TEXT\",\"notNull\":false},\"file_key\":{\"type\":\"TEXT\",\"notNull\":false},\"author\":{\"type\":\"TEXT\",\"notNull\":false},\"name\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"\"},\"title\":{\"type\":\"TEXT\",\"notNull\":false},\"description\":{\"type\":\"TEXT\",\"notNull\":false},\"body\":{\"type\":\"TEXT\",\"notNull\":false},\"body_format\":{\"type\":\"TEXT\",\"notNull\":false},\"publish_date\":{\"type\":\"TIMESTAMP\",\"notNull\":false},\"url\":{\"type\":\"TEXT\",\"notNull\":false},\"source\":{\"type\":\"TEXT\",\"notNull\":false},\"original_url\":{\"type\":\"TEXT\",\"notNull\":false},\"language\":{\"type\":\"TEXT\",\"notNull\":false},\"tags\":{\"type\":\"JSON\",\"notNull\":false,\"default\":[]},\"category\":{\"type\":\"TEXT\",\"notNull\":false},\"status\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"draft\"},\"state\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"active\"},\"metadata\":{\"type\":\"JSON\",\"notNull\":false,\"default\":{}},\"thumbnail_asset_id\":{\"type\":\"UUID\",\"referenceKind\":\"crossPackageRef\",\"notNull\":false},\"feed_source_id\":{\"type\":\"UUID\",\"referenceKind\":\"foreignKey\",\"notNull\":false,\"foreignKey\":{\"table\":\"content_feed_sources\",\"column\":\"id\",\"onDelete\":\"NO ACTION\",\"onUpdate\":\"CASCADE\"}},\"source_guid\":{\"type\":\"TEXT\",\"notNull\":false},\"source_name\":{\"type\":\"TEXT\",\"notNull\":false},\"source_homepage_url\":{\"type\":\"TEXT\",\"notNull\":false},\"external_url\":{\"type\":\"TEXT\",\"notNull\":false},\"original_published_at\":{\"type\":\"TIMESTAMP\",\"notNull\":false},\"dedupe_key\":{\"type\":\"TEXT\",\"notNull\":false}},\"indexes\":[{\"name\":\"contents_slug_context_meta_type_idx\",\"columns\":[\"tenant_id\",\"slug\",\"context\",\"_meta_type\"],\"unique\":true},{\"name\":\"contents_meta_type_idx\",\"columns\":[\"_meta_type\"]},{\"name\":\"contents_tenant_id_publish_date_idx\",\"columns\":[\"tenant_id\",\"publish_date\"]},{\"name\":\"contents_tenant_id_created_at_idx\",\"columns\":[\"tenant_id\",\"created_at\"]},{\"name\":\"contents_thumbnail_asset_id_idx\",\"columns\":[\"thumbnail_asset_id\"]},{\"name\":\"contents_feed_source_id_idx\",\"columns\":[\"feed_source_id\"]}],\"version\":\"088da7e4\"}},\"@happyvertical/smrt-content:ContentVersion\":{\"name\":\"contentversion\",\"className\":\"ContentVersion\",\"qualifiedName\":\"@happyvertical/smrt-content:ContentVersion\",\"collection\":\"contentversions\",\"filePath\":\"/home/runner/work/smrt/smrt/packages/content/src/content-version.ts\",\"packageName\":\"@happyvertical/smrt-content\",\"fields\":{\"contentId\":{\"type\":\"foreignKey\",\"required\":true,\"related\":\"Content\",\"_meta\":{\"required\":true}},\"version\":{\"type\":\"integer\",\"required\":true,\"default\":1},\"kind\":{\"type\":\"text\",\"required\":false,\"default\":\"manual\"},\"title\":{\"type\":\"text\",\"required\":false},\"description\":{\"type\":\"text\",\"required\":false},\"body\":{\"type\":\"text\",\"required\":false},\"status\":{\"type\":\"text\",\"required\":false},\"summary\":{\"type\":\"text\",\"required\":false},\"snapshot\":{\"type\":\"text\",\"required\":false},\"metadata\":{\"type\":\"text\",\"required\":false},\"tenantId\":{\"type\":\"text\",\"required\":false,\"_meta\":{\"sqlType\":\"UUID\",\"nullable\":true,\"__tenancy\":{\"isTenantIdField\":true,\"autoFilter\":true,\"required\":false,\"autoPopulate\":true,\"nullable\":true,\"mode\":\"optional\",\"field\":\"tenantId\",\"allowSuperAdminBypass\":false}}},\"createdAt\":{\"type\":\"text\",\"required\":false},\"updatedAt\":{\"type\":\"text\",\"required\":false}},\"methods\":{\"getSnapshot\":{\"name\":\"getSnapshot\",\"async\":false,\"parameters\":[],\"returnType\":\"Record<string>\",\"isStatic\":false,\"isPublic\":true},\"getMetadata\":{\"name\":\"getMetadata\",\"async\":false,\"parameters\":[],\"returnType\":\"ContentVersionMetadata\",\"isStatic\":false,\"isPublic\":true},\"getTransparency\":{\"name\":\"getTransparency\",\"async\":false,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getTransparencyAction\":{\"name\":\"getTransparencyAction\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true}},\"decoratorConfig\":{\"tableName\":\"content_versions\",\"conflictColumns\":[\"content_id\",\"version\"],\"api\":{\"include\":[\"list\",\"get\",\"create\",\"getTransparencyAction\"],\"routes\":{\"getTransparencyAction\":{\"method\":\"GET\",\"path\":\"transparency\"}}},\"mcp\":{\"include\":[\"list\",\"get\",\"create\"]},\"cli\":true,\"tenantScoped\":{\"mode\":\"optional\"}},\"extends\":\"SmrtObject\",\"exportName\":\"ContentVersion\",\"collectionExportName\":\"ContentVersionCollection\",\"validationRules\":[{\"field\":\"contentId\",\"rule\":\"required\",\"fieldType\":\"foreignKey\"},{\"field\":\"version\",\"rule\":\"required\",\"fieldType\":\"integer\"}],\"schema\":{\"tableName\":\"content_versions\",\"ddl\":\"CREATE TABLE IF NOT EXISTS \\\"content_versions\\\" (\\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 \\\"content_id\\\" UUID NOT NULL,\\n \\\"version\\\" INTEGER NOT NULL DEFAULT 1,\\n \\\"kind\\\" TEXT DEFAULT 'manual',\\n \\\"title\\\" TEXT,\\n \\\"description\\\" TEXT,\\n \\\"body\\\" TEXT,\\n \\\"status\\\" TEXT,\\n \\\"summary\\\" TEXT,\\n \\\"snapshot\\\" TEXT,\\n \\\"metadata\\\" TEXT,\\n \\\"tenant_id\\\" UUID\\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\"},\"content_id\":{\"type\":\"UUID\",\"referenceKind\":\"foreignKey\",\"notNull\":true,\"unique\":false,\"foreignKey\":{\"table\":\"contents\",\"column\":\"id\",\"onDelete\":\"CASCADE\",\"onUpdate\":\"CASCADE\"}},\"version\":{\"type\":\"INTEGER\",\"notNull\":true,\"unique\":false,\"default\":1},\"kind\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"manual\"},\"title\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"description\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"body\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"status\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"summary\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"snapshot\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"metadata\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"tenant_id\":{\"type\":\"UUID\",\"referenceKind\":\"tenantId\",\"notNull\":false,\"unique\":false}},\"indexes\":[{\"name\":\"content_versions_content_id_version_idx\",\"columns\":[\"content_id\",\"version\"],\"unique\":true},{\"name\":\"content_versions_slug_context_idx\",\"columns\":[\"slug\",\"context\"]},{\"name\":\"content_versions_tenant_id_created_at_idx\",\"columns\":[\"tenant_id\",\"created_at\"]}],\"version\":\"66cda211\"}},\"@happyvertical/smrt-content:ContentVersionCollection\":{\"name\":\"contentversioncollection\",\"className\":\"ContentVersionCollection\",\"qualifiedName\":\"@happyvertical/smrt-content:ContentVersionCollection\",\"collection\":\"contentversions\",\"filePath\":\"/home/runner/work/smrt/smrt/packages/content/src/content-versions.ts\",\"packageName\":\"@happyvertical/smrt-content\",\"fields\":{},\"methods\":{\"listForContent\":{\"name\":\"listForContent\",\"async\":true,\"parameters\":[{\"name\":\"contentId\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"Promise<ContentVersion[]>\",\"isStatic\":false,\"isPublic\":true},\"getLatestForContent\":{\"name\":\"getLatestForContent\",\"async\":true,\"parameters\":[{\"name\":\"contentId\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"Promise<ContentVersion | null>\",\"isStatic\":false,\"isPublic\":true},\"getLatestPublishedForContent\":{\"name\":\"getLatestPublishedForContent\",\"async\":true,\"parameters\":[{\"name\":\"contentId\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"Promise<ContentVersion | null>\",\"isStatic\":false,\"isPublic\":true},\"getVersion\":{\"name\":\"getVersion\",\"async\":true,\"parameters\":[{\"name\":\"contentId\",\"type\":\"string\",\"optional\":false},{\"name\":\"versionNumber\",\"type\":\"number\",\"optional\":false}],\"returnType\":\"Promise<ContentVersion | null>\",\"isStatic\":false,\"isPublic\":true},\"getNextVersionNumber\":{\"name\":\"getNextVersionNumber\",\"async\":true,\"parameters\":[{\"name\":\"contentId\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"Promise<number>\",\"isStatic\":false,\"isPublic\":true},\"createSnapshot\":{\"name\":\"createSnapshot\",\"async\":true,\"parameters\":[{\"name\":\"content\",\"type\":\"Content\",\"optional\":false},{\"name\":\"options\",\"type\":\"CreateContentVersionOptions\",\"optional\":true}],\"returnType\":\"Promise<ContentVersion>\",\"isStatic\":false,\"isPublic\":true},\"restoreIntoContent\":{\"name\":\"restoreIntoContent\",\"async\":true,\"parameters\":[{\"name\":\"content\",\"type\":\"Content\",\"optional\":false},{\"name\":\"versionNumber\",\"type\":\"number\",\"optional\":false}],\"returnType\":\"Promise<Content>\",\"isStatic\":false,\"isPublic\":true}},\"decoratorConfig\":{\"tableName\":\"content_versions\"},\"extends\":\"SmrtCollection\",\"extendsTypeArg\":\"ContentVersion\",\"exportName\":\"ContentVersionCollection\",\"collectionExportName\":\"ContentVersionCollectionCollection\",\"schema\":{\"tableName\":\"content_versions\",\"ddl\":\"CREATE TABLE IF NOT EXISTS \\\"content_versions\\\" (\\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\":\"content_versions_slug_context_idx\",\"columns\":[\"slug\",\"context\"],\"unique\":true},{\"name\":\"content_versions_created_at_idx\",\"columns\":[\"created_at\"]}],\"version\":\"56acd806\"}},\"@happyvertical/smrt-content:Content\":{\"name\":\"content\",\"className\":\"Content\",\"qualifiedName\":\"@happyvertical/smrt-content:Content\",\"collection\":\"contents\",\"filePath\":\"/home/runner/work/smrt/smrt/packages/content/src/content.ts\",\"packageName\":\"@happyvertical/smrt-content\",\"fields\":{\"created_at\":{\"type\":\"datetime\",\"required\":false},\"updated_at\":{\"type\":\"datetime\",\"required\":false},\"tenantId\":{\"type\":\"text\",\"required\":false,\"_meta\":{\"sqlType\":\"UUID\",\"nullable\":true,\"__tenancy\":{\"isTenantIdField\":true,\"autoFilter\":true,\"required\":false,\"autoPopulate\":true,\"nullable\":true,\"mode\":\"optional\",\"field\":\"tenantId\",\"allowSuperAdminBypass\":false}}},\"type\":{\"type\":\"text\",\"required\":false},\"variant\":{\"type\":\"text\",\"required\":false},\"fileKey\":{\"type\":\"text\",\"required\":false},\"author\":{\"type\":\"text\",\"required\":false},\"name\":{\"type\":\"text\",\"required\":true,\"default\":\"\",\"_meta\":{\"required\":true}},\"title\":{\"type\":\"text\",\"required\":false},\"description\":{\"type\":\"text\",\"required\":false},\"body\":{\"type\":\"text\",\"required\":false},\"bodyFormat\":{\"type\":\"text\",\"required\":false},\"publish_date\":{\"type\":\"datetime\",\"required\":false},\"url\":{\"type\":\"text\",\"required\":false},\"source\":{\"type\":\"text\",\"required\":false},\"original_url\":{\"type\":\"text\",\"required\":false},\"language\":{\"type\":\"text\",\"required\":false},\"tags\":{\"type\":\"json\",\"required\":false,\"default\":[]},\"category\":{\"type\":\"text\",\"required\":false},\"status\":{\"type\":\"text\",\"required\":false,\"default\":\"draft\"},\"state\":{\"type\":\"text\",\"required\":false,\"default\":\"active\"},\"metadata\":{\"type\":\"json\",\"required\":false,\"default\":{}},\"thumbnailAssetId\":{\"type\":\"crossPackageRef\",\"required\":false,\"related\":\"@happyvertical/smrt-assets:Asset\"}},\"methods\":{\"withDatabase\":{\"name\":\"withDatabase\",\"async\":true,\"parameters\":[{\"name\":\"db\",\"type\":\"DatabaseInterface\",\"optional\":false},{\"name\":\"operation\",\"type\":\"Function\",\"optional\":false}],\"returnType\":\"Promise<T>\",\"isStatic\":false,\"isPublic\":true},\"getAiUsageSnapshot\":{\"name\":\"getAiUsageSnapshot\",\"async\":false,\"parameters\":[],\"returnType\":\"AiUsageSnapshot | undefined\",\"isStatic\":false,\"isPublic\":true},\"resetAiUsage\":{\"name\":\"resetAiUsage\",\"async\":false,\"parameters\":[],\"returnType\":\"void\",\"isStatic\":false,\"isPublic\":true},\"listAiUsage\":{\"name\":\"listAiUsage\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"AiUsageListOptions\",\"optional\":true}],\"returnType\":\"Promise<SmrtAiUsageRecord[]>\",\"isStatic\":false,\"isPublic\":true},\"summarizeAiUsage\":{\"name\":\"summarizeAiUsage\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"AiUsageSummaryOptions\",\"optional\":true}],\"returnType\":\"Promise<Record<string, AiUsageStats>>\",\"isStatic\":false,\"isPublic\":true},\"destroy\":{\"name\":\"destroy\",\"async\":false,\"parameters\":[],\"returnType\":\"void\",\"isStatic\":false,\"isPublic\":true},\"markAsPersisted\":{\"name\":\"markAsPersisted\",\"async\":false,\"parameters\":[],\"returnType\":\"void\",\"isStatic\":false,\"isPublic\":true},\"requireInsertOnSave\":{\"name\":\"requireInsertOnSave\",\"async\":false,\"parameters\":[],\"returnType\":\"void\",\"isStatic\":false,\"isPublic\":true},\"initialize\":{\"name\":\"initialize\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise\",\"isStatic\":false,\"isPublic\":true},\"loadDataFromDb\":{\"name\":\"loadDataFromDb\",\"async\":true,\"parameters\":[{\"name\":\"data\",\"type\":\"Record<string>\",\"optional\":false}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getFields\":{\"name\":\"getFields\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<any>\",\"isStatic\":false,\"isPublic\":true},\"toJSON\":{\"name\":\"toJSON\",\"async\":false,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"toPlainObject\":{\"name\":\"toPlainObject\",\"async\":false,\"parameters\":[],\"returnType\":\"Record<string>\",\"isStatic\":false,\"isPublic\":true},\"toPublicJSON\":{\"name\":\"toPublicJSON\",\"async\":false,\"parameters\":[{\"name\":\"options\",\"type\":\"PublicJsonOptions\",\"optional\":true}],\"returnType\":\"Record<string>\",\"isStatic\":false,\"isPublic\":true},\"getId\":{\"name\":\"getId\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getSlug\":{\"name\":\"getSlug\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getSavedId\":{\"name\":\"getSavedId\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"isSaved\":{\"name\":\"isSaved\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"save\":{\"name\":\"save\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"classifyConstraintError\":{\"name\":\"classifyConstraintError\",\"async\":false,\"parameters\":[{\"name\":\"message\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"'unique' | 'not_null' | null\",\"isStatic\":true,\"isPublic\":true},\"loadFromId\":{\"name\":\"loadFromId\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"loadFromSlug\":{\"name\":\"loadFromSlug\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"is\":{\"name\":\"is\",\"async\":true,\"parameters\":[{\"name\":\"criteria\",\"type\":\"string\",\"optional\":false},{\"name\":\"options\",\"type\":\"AiOperationOptions\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"do\":{\"name\":\"do\",\"async\":true,\"parameters\":[{\"name\":\"instructions\",\"type\":\"string\",\"optional\":false},{\"name\":\"options\",\"type\":\"AiOperationOptions\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"describe\":{\"name\":\"describe\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"AiOperationOptions\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"delete\":{\"name\":\"delete\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<void>\",\"isStatic\":false,\"isPublic\":true},\"isRelatedLoaded\":{\"name\":\"isRelatedLoaded\",\"async\":false,\"parameters\":[{\"name\":\"fieldName\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"boolean\",\"isStatic\":false,\"isPublic\":true},\"_setLoadedRelationship\":{\"name\":\"_setLoadedRelationship\",\"async\":false,\"parameters\":[{\"name\":\"fieldName\",\"type\":\"string\",\"optional\":false},{\"name\":\"value\",\"type\":\"any\",\"optional\":false}],\"returnType\":\"void\",\"isStatic\":false,\"isPublic\":true},\"loadRelated\":{\"name\":\"loadRelated\",\"async\":true,\"parameters\":[{\"name\":\"fieldName\",\"type\":\"string\",\"optional\":false},{\"name\":\"opts\",\"type\":\"LoadRelatedOptions\",\"optional\":true}],\"returnType\":\"Promise<any>\",\"isStatic\":false,\"isPublic\":true},\"loadRelatedMany\":{\"name\":\"loadRelatedMany\",\"async\":true,\"parameters\":[{\"name\":\"fieldName\",\"type\":\"string\",\"optional\":false},{\"name\":\"opts\",\"type\":\"LoadRelatedOptions\",\"optional\":true}],\"returnType\":\"Promise<any[]>\",\"isStatic\":false,\"isPublic\":true},\"getRelated\":{\"name\":\"getRelated\",\"async\":true,\"parameters\":[{\"name\":\"fieldName\",\"type\":\"string\",\"optional\":false},{\"name\":\"opts\",\"type\":\"LoadRelatedOptions\",\"optional\":true}],\"returnType\":\"Promise<any>\",\"isStatic\":false,\"isPublic\":true},\"getAvailableTools\":{\"name\":\"getAvailableTools\",\"async\":false,\"parameters\":[],\"returnType\":\"AITool[]\",\"isStatic\":false,\"isPublic\":true},\"executeToolCall\":{\"name\":\"executeToolCall\",\"async\":true,\"parameters\":[{\"name\":\"toolCall\",\"type\":\"ToolCall\",\"optional\":false}],\"returnType\":\"Promise<ToolCallResult>\",\"isStatic\":false,\"isPublic\":true},\"remember\":{\"name\":\"remember\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":false}],\"returnType\":\"Promise<void>\",\"isStatic\":false,\"isPublic\":true},\"recall\":{\"name\":\"recall\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":false}],\"returnType\":\"Promise\",\"isStatic\":false,\"isPublic\":true},\"recallAll\":{\"name\":\"recallAll\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":true}],\"returnType\":\"Promise<Map<string>>\",\"isStatic\":false,\"isPublic\":true},\"forget\":{\"name\":\"forget\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":false}],\"returnType\":\"Promise<void>\",\"isStatic\":false,\"isPublic\":true},\"forgetScope\":{\"name\":\"forgetScope\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":false}],\"returnType\":\"Promise<number>\",\"isStatic\":false,\"isPublic\":true},\"generateEmbeddings\":{\"name\":\"generateEmbeddings\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"GenerateEmbeddingsOptions\",\"optional\":true}],\"returnType\":\"Promise<void>\",\"isStatic\":false,\"isPublic\":true},\"getEmbedding\":{\"name\":\"getEmbedding\",\"async\":true,\"parameters\":[{\"name\":\"fieldName\",\"type\":\"string\",\"optional\":false},{\"name\":\"model\",\"type\":\"string\",\"optional\":true}],\"returnType\":\"Promise<number[] | null>\",\"isStatic\":false,\"isPublic\":true},\"hasStaleEmbeddings\":{\"name\":\"hasStaleEmbeddings\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<boolean>\",\"isStatic\":false,\"isPublic\":true},\"clearEmbeddings\":{\"name\":\"clearEmbeddings\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<void>\",\"isStatic\":false,\"isPublic\":true},\"resolveGovernance\":{\"name\":\"resolveGovernance\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<ResolvedContentGovernance>\",\"isStatic\":false,\"isPublic\":true},\"loadReferences\":{\"name\":\"loadReferences\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"addReference\":{\"name\":\"addReference\",\"async\":true,\"parameters\":[{\"name\":\"content\",\"type\":\"Content | string\",\"optional\":false},{\"name\":\"options\",\"type\":\"object\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"removeReference\":{\"name\":\"removeReference\",\"async\":true,\"parameters\":[{\"name\":\"targetId\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getReferences\":{\"name\":\"getReferences\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getReferenceEdges\":{\"name\":\"getReferenceEdges\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<Array<object>>\",\"isStatic\":false,\"isPublic\":true},\"getReferenceDrift\":{\"name\":\"getReferenceDrift\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<Array<object>>\",\"isStatic\":false,\"isPublic\":true},\"isGoverned\":{\"name\":\"isGoverned\",\"async\":false,\"parameters\":[],\"returnType\":\"boolean\",\"isStatic\":false,\"isPublic\":true},\"getFactLinks\":{\"name\":\"getFactLinks\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getFacts\":{\"name\":\"getFacts\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":true}],\"returnType\":\"Promise<Fact[]>\",\"isStatic\":false,\"isPublic\":true},\"addFact\":{\"name\":\"addFact\",\"async\":true,\"parameters\":[{\"name\":\"fact\",\"type\":\"Fact | string\",\"optional\":false},{\"name\":\"relationship\",\"type\":\"FactContentRelationship\",\"optional\":true},{\"name\":\"metadata\",\"type\":\"Record<string>\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"removeFact\":{\"name\":\"removeFact\",\"async\":true,\"parameters\":[{\"name\":\"factId\",\"type\":\"string\",\"optional\":false},{\"name\":\"relationship\",\"type\":\"FactContentRelationship\",\"optional\":true}],\"returnType\":\"Promise<void>\",\"isStatic\":false,\"isPublic\":true},\"syncFacts\":{\"name\":\"syncFacts\",\"async\":true,\"parameters\":[{\"name\":\"factIds\",\"type\":\"string[]\",\"optional\":false},{\"name\":\"relationship\",\"type\":\"FactContentRelationship\",\"optional\":true}],\"returnType\":\"Promise<object>\",\"isStatic\":false,\"isPublic\":true},\"browseFacts\":{\"name\":\"browseFacts\",\"async\":true,\"parameters\":[{\"name\":\"query\",\"type\":\"any\",\"optional\":true,\"default\":\"\"},{\"name\":\"options\",\"type\":\"object\",\"optional\":true}],\"returnType\":\"Promise<Fact[]>\",\"isStatic\":false,\"isPublic\":true},\"repairFactAudit\":{\"name\":\"repairFactAudit\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"repairFactAuditAction\":{\"name\":\"repairFactAuditAction\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"repairFactEvidence\":{\"name\":\"repairFactEvidence\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"FactAuditResourceRepairOptions\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"repairFactEvidenceAction\":{\"name\":\"repairFactEvidenceAction\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"FactAuditResourceRepairOptions\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"recheckFactClaims\":{\"name\":\"recheckFactClaims\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"FactAuditClaimRecheckOptions\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"recheckFactClaimsAction\":{\"name\":\"recheckFactClaimsAction\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"FactAuditClaimRecheckOptions\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"updateFactEvidenceStatus\":{\"name\":\"updateFactEvidenceStatus\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"FactEvidenceStatusUpdateOptions\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"updateFactEvidenceStatusAction\":{\"name\":\"updateFactEvidenceStatusAction\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"FactEvidenceStatusUpdateOptions\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getFactAuditState\":{\"name\":\"getFactAuditState\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<FactAuditState>\",\"isStatic\":false,\"isPublic\":true},\"getFactAuditStateAction\":{\"name\":\"getFactAuditStateAction\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getFactsState\":{\"name\":\"getFactsState\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"syncFactsState\":{\"name\":\"syncFactsState\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"createVersion\":{\"name\":\"createVersion\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"CreateContentVersionOptions\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getVersions\":{\"name\":\"getVersions\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"restoreFromVersion\":{\"name\":\"restoreFromVersion\",\"async\":true,\"parameters\":[{\"name\":\"versionNumber\",\"type\":\"number\",\"optional\":false}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getReviews\":{\"name\":\"getReviews\",\"async\":true,\"parameters\":[{\"name\":\"kind\",\"type\":\"any\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"listReviews\":{\"name\":\"listReviews\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getReviewRequirements\":{\"name\":\"getReviewRequirements\",\"async\":true,\"parameters\":[{\"name\":\"profileKey\",\"type\":\"string\",\"optional\":false},{\"name\":\"governance\",\"type\":\"ResolvedContentGovernance\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getGovernanceState\":{\"name\":\"getGovernanceState\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<ContentGovernanceState>\",\"isStatic\":false,\"isPublic\":true},\"getGovernanceStateAction\":{\"name\":\"getGovernanceStateAction\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"listReviewProfilesAction\":{\"name\":\"listReviewProfilesAction\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"evaluateReviewProfile\":{\"name\":\"evaluateReviewProfile\",\"async\":true,\"parameters\":[{\"name\":\"profileKey\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"Promise<ContentReviewProfileEvaluation>\",\"isStatic\":false,\"isPublic\":true},\"evaluateReviewProfileAction\":{\"name\":\"evaluateReviewProfileAction\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"isReadyForReviewProfile\":{\"name\":\"isReadyForReviewProfile\",\"async\":true,\"parameters\":[{\"name\":\"profileKey\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"Promise<boolean>\",\"isStatic\":false,\"isPublic\":true},\"getPublishedTransparency\":{\"name\":\"getPublishedTransparency\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getPublishedTransparencyAction\":{\"name\":\"getPublishedTransparencyAction\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"previewTransparency\":{\"name\":\"previewTransparency\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"previewTransparencyAction\":{\"name\":\"previewTransparencyAction\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"runReview\":{\"name\":\"runReview\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"RunContentReviewOptions\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"runReviewAction\":{\"name\":\"runReviewAction\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"RunContentReviewOptions\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"reviewFacts\":{\"name\":\"reviewFacts\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"Omit<RunContentReviewOptions, 'kind'>\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"reviewSafety\":{\"name\":\"reviewSafety\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"Omit<RunContentReviewOptions, 'kind'>\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getCorrections\":{\"name\":\"getCorrections\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"listCorrections\":{\"name\":\"listCorrections\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"issueCorrection\":{\"name\":\"issueCorrection\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"IssueContentCorrectionOptions\",\"optional\":false}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"issueCorrectionAction\":{\"name\":\"issueCorrectionAction\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"IssueContentCorrectionOptions\",\"optional\":false}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"listVersions\":{\"name\":\"listVersions\",\"async\":true,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"mutateVersionAction\":{\"name\":\"mutateVersionAction\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"any\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getCategorySegments\":{\"name\":\"getCategorySegments\",\"async\":false,\"parameters\":[],\"returnType\":\"string[]\",\"isStatic\":false,\"isPublic\":true},\"getParentCategory\":{\"name\":\"getParentCategory\",\"async\":false,\"parameters\":[],\"returnType\":\"string | null\",\"isStatic\":false,\"isPublic\":true},\"getRootCategory\":{\"name\":\"getRootCategory\",\"async\":false,\"parameters\":[],\"returnType\":\"string | null\",\"isStatic\":false,\"isPublic\":true},\"getAncestorPaths\":{\"name\":\"getAncestorPaths\",\"async\":false,\"parameters\":[],\"returnType\":\"string[]\",\"isStatic\":false,\"isPublic\":true},\"isInCategory\":{\"name\":\"isInCategory\",\"async\":false,\"parameters\":[{\"name\":\"categoryPath\",\"type\":\"string\",\"optional\":false},{\"name\":\"includeChildren\",\"type\":\"any\",\"optional\":true}],\"returnType\":\"boolean\",\"isStatic\":false,\"isPublic\":true},\"getAssets\":{\"name\":\"getAssets\",\"async\":true,\"parameters\":[{\"name\":\"relationship\",\"type\":\"string\",\"optional\":true}],\"returnType\":\"Promise<Asset[]>\",\"isStatic\":false,\"isPublic\":true},\"addAsset\":{\"name\":\"addAsset\",\"async\":true,\"parameters\":[{\"name\":\"asset\",\"type\":\"Asset\",\"optional\":false},{\"name\":\"relationship\",\"type\":\"any\",\"optional\":true,\"default\":\"attachment\"},{\"name\":\"sortOrder\",\"type\":\"any\",\"optional\":true}],\"returnType\":\"Promise<void>\",\"isStatic\":false,\"isPublic\":true},\"removeAsset\":{\"name\":\"removeAsset\",\"async\":true,\"parameters\":[{\"name\":\"assetId\",\"type\":\"string\",\"optional\":false},{\"name\":\"relationship\",\"type\":\"string\",\"optional\":true}],\"returnType\":\"Promise<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\":\"metadata\",\"type\":\"Record<string> | null | undefined\",\"optional\":false}],\"returnType\":\"void\",\"isStatic\":false,\"isPublic\":true},\"updateMetadata\":{\"name\":\"updateMetadata\",\"async\":false,\"parameters\":[{\"name\":\"patch\",\"type\":\"Partial<Record<string>>\",\"optional\":false}],\"returnType\":\"Record<string>\",\"isStatic\":false,\"isPublic\":true},\"getThumbnail\":{\"name\":\"getThumbnail\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<Image | null>\",\"isStatic\":false,\"isPublic\":true},\"setThumbnail\":{\"name\":\"setThumbnail\",\"async\":true,\"parameters\":[{\"name\":\"image\",\"type\":\"Image\",\"optional\":false}],\"returnType\":\"Promise<void>\",\"isStatic\":false,\"isPublic\":true},\"generateThumbnail\":{\"name\":\"generateThumbnail\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"ThumbnailOptions\",\"optional\":false}],\"returnType\":\"Promise<Image>\",\"isStatic\":false,\"isPublic\":true}},\"decoratorConfig\":{\"tableStrategy\":\"sti\",\"api\":{\"include\":[\"list\",\"get\",\"create\",\"update\",\"delete\",\"getFactsState\",\"syncFactsState\",\"getFactAuditStateAction\",\"repairFactAuditAction\",\"repairFactEvidenceAction\",\"recheckFactClaimsAction\",\"updateFactEvidenceStatusAction\",\"getGovernanceStateAction\",\"listReviews\",\"runReviewAction\",\"listReviewProfilesAction\",\"evaluateReviewProfileAction\",\"getPublishedTransparencyAction\",\"previewTransparencyAction\",\"listCorrections\",\"issueCorrectionAction\",\"listVersions\",\"mutateVersionAction\"],\"routes\":{\"getFactsState\":{\"method\":\"GET\",\"path\":\"facts\"},\"syncFactsState\":{\"method\":\"PUT\",\"path\":\"facts\"},\"getFactAuditStateAction\":{\"method\":\"GET\",\"path\":\"fact-audit\"},\"repairFactAuditAction\":{\"method\":\"POST\",\"path\":\"fact-audit/repair\"},\"repairFactEvidenceAction\":{\"method\":\"POST\",\"path\":\"fact-audit/evidence/repair\"},\"recheckFactClaimsAction\":{\"method\":\"POST\",\"path\":\"fact-audit/claims/recheck\"},\"updateFactEvidenceStatusAction\":{\"method\":\"PUT\",\"path\":\"fact-audit/evidence/status\"},\"getGovernanceStateAction\":{\"method\":\"GET\",\"path\":\"governance\"},\"listReviews\":{\"method\":\"GET\",\"path\":\"reviews\"},\"runReviewAction\":{\"method\":\"POST\",\"path\":\"reviews\"},\"listReviewProfilesAction\":{\"method\":\"GET\",\"path\":\"review-profiles\"},\"evaluateReviewProfileAction\":{\"method\":\"GET\",\"path\":\"review-profiles/[profileKey]\"},\"getPublishedTransparencyAction\":{\"method\":\"GET\",\"path\":\"transparency\"},\"previewTransparencyAction\":{\"method\":\"GET\",\"path\":\"transparency/preview\"},\"listCorrections\":{\"method\":\"GET\",\"path\":\"corrections\"},\"issueCorrectionAction\":{\"method\":\"POST\",\"path\":\"corrections\"},\"listVersions\":{\"method\":\"GET\",\"path\":\"versions\"},\"mutateVersionAction\":{\"method\":\"POST\",\"path\":\"versions\"}},\"serializers\":{\"item\":{\"importPath\":\"$lib/server/content-api-serializers\",\"exportName\":\"serializeContent\"}}},\"mcp\":{\"include\":[\"list\",\"get\",\"create\",\"update\"]},\"cli\":true,\"indexes\":[{\"name\":\"contents_tenant_id_publish_date_idx\",\"columns\":[\"tenantId\",\"publish_date\"]}],\"tenantScoped\":{\"mode\":\"optional\"},\"conflictColumns\":[\"tenant_id\",\"slug\",\"context\",\"_meta_type\"]},\"extends\":\"SmrtObject\",\"exportName\":\"Content\",\"collectionExportName\":\"ContentCollection\",\"validationRules\":[{\"field\":\"name\",\"rule\":\"required\",\"fieldType\":\"text\"}],\"schema\":{\"tableName\":\"contents\",\"ddl\":\"CREATE TABLE IF NOT EXISTS \\\"contents\\\" (\\n \\\"id\\\" UUID PRIMARY KEY NOT NULL,\\n \\\"slug\\\" TEXT NOT NULL,\\n \\\"context\\\" TEXT NOT NULL DEFAULT '',\\n \\\"_meta_type\\\" TEXT NOT NULL,\\n \\\"_meta_data\\\" JSON,\\n \\\"created_at\\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\\"updated_at\\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\\"tenant_id\\\" UUID,\\n \\\"type\\\" TEXT,\\n \\\"variant\\\" TEXT,\\n \\\"file_key\\\" TEXT,\\n \\\"author\\\" TEXT,\\n \\\"name\\\" TEXT DEFAULT '',\\n \\\"title\\\" TEXT,\\n \\\"description\\\" TEXT,\\n \\\"body\\\" TEXT,\\n \\\"body_format\\\" TEXT,\\n \\\"publish_date\\\" TIMESTAMP,\\n \\\"url\\\" TEXT,\\n \\\"source\\\" TEXT,\\n \\\"original_url\\\" TEXT,\\n \\\"language\\\" TEXT,\\n \\\"tags\\\" JSON DEFAULT '[]',\\n \\\"category\\\" TEXT,\\n \\\"status\\\" TEXT DEFAULT 'draft',\\n \\\"state\\\" TEXT DEFAULT 'active',\\n \\\"metadata\\\" JSON DEFAULT '{}',\\n \\\"thumbnail_asset_id\\\" UUID,\\n \\\"feed_source_id\\\" UUID,\\n \\\"source_guid\\\" TEXT,\\n \\\"source_name\\\" TEXT,\\n \\\"source_homepage_url\\\" TEXT,\\n \\\"external_url\\\" TEXT,\\n \\\"original_published_at\\\" TIMESTAMP,\\n \\\"dedupe_key\\\" TEXT\\n);\",\"columns\":{\"id\":{\"type\":\"UUID\",\"primaryKey\":true,\"referenceKind\":\"id\",\"notNull\":true},\"slug\":{\"type\":\"TEXT\",\"notNull\":true},\"context\":{\"type\":\"TEXT\",\"notNull\":true,\"default\":\"\"},\"_meta_type\":{\"type\":\"TEXT\",\"notNull\":true},\"_meta_data\":{\"type\":\"JSON\",\"notNull\":false},\"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\":false},\"type\":{\"type\":\"TEXT\",\"notNull\":false},\"variant\":{\"type\":\"TEXT\",\"notNull\":false},\"file_key\":{\"type\":\"TEXT\",\"notNull\":false},\"author\":{\"type\":\"TEXT\",\"notNull\":false},\"name\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"\"},\"title\":{\"type\":\"TEXT\",\"notNull\":false},\"description\":{\"type\":\"TEXT\",\"notNull\":false},\"body\":{\"type\":\"TEXT\",\"notNull\":false},\"body_format\":{\"type\":\"TEXT\",\"notNull\":false},\"publish_date\":{\"type\":\"TIMESTAMP\",\"notNull\":false},\"url\":{\"type\":\"TEXT\",\"notNull\":false},\"source\":{\"type\":\"TEXT\",\"notNull\":false},\"original_url\":{\"type\":\"TEXT\",\"notNull\":false},\"language\":{\"type\":\"TEXT\",\"notNull\":false},\"tags\":{\"type\":\"JSON\",\"notNull\":false,\"default\":[]},\"category\":{\"type\":\"TEXT\",\"notNull\":false},\"status\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"draft\"},\"state\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"active\"},\"metadata\":{\"type\":\"JSON\",\"notNull\":false,\"default\":{}},\"thumbnail_asset_id\":{\"type\":\"UUID\",\"referenceKind\":\"crossPackageRef\",\"notNull\":false},\"feed_source_id\":{\"type\":\"UUID\",\"referenceKind\":\"foreignKey\",\"notNull\":false,\"foreignKey\":{\"table\":\"content_feed_sources\",\"column\":\"id\",\"onDelete\":\"NO ACTION\",\"onUpdate\":\"CASCADE\"}},\"source_guid\":{\"type\":\"TEXT\",\"notNull\":false},\"source_name\":{\"type\":\"TEXT\",\"notNull\":false},\"source_homepage_url\":{\"type\":\"TEXT\",\"notNull\":false},\"external_url\":{\"type\":\"TEXT\",\"notNull\":false},\"original_published_at\":{\"type\":\"TIMESTAMP\",\"notNull\":false},\"dedupe_key\":{\"type\":\"TEXT\",\"notNull\":false}},\"indexes\":[{\"name\":\"contents_slug_context_meta_type_idx\",\"columns\":[\"tenant_id\",\"slug\",\"context\",\"_meta_type\"],\"unique\":true},{\"name\":\"contents_meta_type_idx\",\"columns\":[\"_meta_type\"]},{\"name\":\"contents_tenant_id_publish_date_idx\",\"columns\":[\"tenant_id\",\"publish_date\"]},{\"name\":\"contents_tenant_id_created_at_idx\",\"columns\":[\"tenant_id\",\"created_at\"]},{\"name\":\"contents_thumbnail_asset_id_idx\",\"columns\":[\"thumbnail_asset_id\"]},{\"name\":\"contents_feed_source_id_idx\",\"columns\":[\"feed_source_id\"]}],\"version\":\"40e4ddf4\"}},\"@happyvertical/smrt-content:Contents\":{\"name\":\"contents\",\"className\":\"Contents\",\"qualifiedName\":\"@happyvertical/smrt-content:Contents\",\"collection\":\"contents\",\"filePath\":\"/home/runner/work/smrt/smrt/packages/content/src/contents.ts\",\"packageName\":\"@happyvertical/smrt-content\",\"fields\":{\"contentDir\":{\"type\":\"text\",\"required\":false},\"loaded\":{\"type\":\"json\",\"required\":true}},\"methods\":{\"getDb\":{\"name\":\"getDb\",\"async\":false,\"parameters\":[],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"initialize\":{\"name\":\"initialize\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise\",\"isStatic\":false,\"isPublic\":true},\"queryAction\":{\"name\":\"queryAction\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"any\",\"optional\":false}],\"returnType\":\"Promise<DataQueryResult>\",\"isStatic\":false,\"isPublic\":true},\"browseFacts\":{\"name\":\"browseFacts\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getBySlug\":{\"name\":\"getBySlug\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"getGovernanceDefinitionsAction\":{\"name\":\"getGovernanceDefinitionsAction\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"resolveGovernanceAction\":{\"name\":\"resolveGovernanceAction\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":true}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"mirror\":{\"name\":\"mirror\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":false}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"writeContentFile\":{\"name\":\"writeContentFile\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":false}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"syncContentDir\":{\"name\":\"syncContentDir\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":false}],\"returnType\":\"any\",\"isStatic\":false,\"isPublic\":true},\"generateMissingThumbnails\":{\"name\":\"generateMissingThumbnails\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"GenerateMissingThumbnailsOptions\",\"optional\":false}],\"returnType\":\"Promise<object>\",\"isStatic\":false,\"isPublic\":true},\"findByTenant\":{\"name\":\"findByTenant\",\"async\":true,\"parameters\":[{\"name\":\"tenantId\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"Promise<Content[]>\",\"isStatic\":false,\"isPublic\":true},\"findGlobal\":{\"name\":\"findGlobal\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<Content[]>\",\"isStatic\":false,\"isPublic\":true},\"findWithGlobals\":{\"name\":\"findWithGlobals\",\"async\":true,\"parameters\":[{\"name\":\"tenantId\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"Promise<Content[]>\",\"isStatic\":false,\"isPublic\":true}},\"decoratorConfig\":{\"api\":{\"include\":[\"browseFacts\",\"getBySlug\",\"getGovernanceDefinitionsAction\",\"resolveGovernanceAction\",\"queryAction\"],\"routes\":{\"queryAction\":{\"scope\":\"collection\",\"method\":\"POST\",\"path\":\"query\"},\"browseFacts\":{\"scope\":\"collection\",\"method\":\"GET\",\"path\":\"facts\"},\"getBySlug\":{\"scope\":\"collection\",\"method\":\"GET\",\"path\":\"by-slug\"},\"getGovernanceDefinitionsAction\":{\"scope\":\"collection\",\"method\":\"GET\",\"path\":\"governance\"},\"resolveGovernanceAction\":{\"scope\":\"collection\",\"method\":\"GET\",\"path\":\"governance/resolve\"}}},\"mcp\":false,\"cli\":false},\"extends\":\"SmrtCollection\",\"extendsTypeArg\":\"Content\",\"exportName\":\"Contents\",\"collectionExportName\":\"ContentsCollection\",\"validationRules\":[{\"field\":\"loaded\",\"rule\":\"required\",\"fieldType\":\"json\"}],\"schema\":{\"tableName\":\"contents\",\"ddl\":\"CREATE TABLE IF NOT EXISTS \\\"contents\\\" (\\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 \\\"content_dir\\\" TEXT,\\n \\\"loaded\\\" JSON NOT NULL\\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\"},\"content_dir\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"loaded\":{\"type\":\"JSON\",\"notNull\":true,\"unique\":false}},\"indexes\":[{\"name\":\"contents_slug_context_idx\",\"columns\":[\"slug\",\"context\"],\"unique\":true},{\"name\":\"contents_created_at_idx\",\"columns\":[\"created_at\"]}],\"version\":\"c11f9ec0\"}}},\"moduleType\":\"smrt\",\"smrtDependencies\":[\"@happyvertical/smrt-assets\",\"@happyvertical/smrt-chat\",\"@happyvertical/smrt-core\",\"@happyvertical/smrt-facts\",\"@happyvertical/smrt-images\",\"@happyvertical/smrt-messages\",\"@happyvertical/smrt-profiles\",\"@happyvertical/smrt-prompts\",\"@happyvertical/smrt-tenancy\"]}"));
|
|
41
41
|
//#endregion
|
|
42
42
|
//#region src/asset-associable.ts
|
|
43
43
|
function isAssetAssociable(value) {
|
|
@@ -9177,6 +9177,645 @@ Mirror = __decorateClass$6([smrt({
|
|
|
9177
9177
|
cli: false
|
|
9178
9178
|
})], Mirror);
|
|
9179
9179
|
//#endregion
|
|
9180
|
+
//#region src/content-query.ts
|
|
9181
|
+
var CONTENT_QUERY_CLASS_NAME = "@happyvertical/smrt-content:Content";
|
|
9182
|
+
var CONTENT_QUERY_IDENTITY_FIELD = "id";
|
|
9183
|
+
var CONTENT_QUERY_DEFAULT_SORT = [{
|
|
9184
|
+
field: "updated_at",
|
|
9185
|
+
direction: "desc"
|
|
9186
|
+
}, {
|
|
9187
|
+
field: "id",
|
|
9188
|
+
direction: "asc"
|
|
9189
|
+
}];
|
|
9190
|
+
var CONTENT_QUERY_DEFAULT_PAGE_LIMIT = 50;
|
|
9191
|
+
var CONTENT_QUERY_MAX_PAGE_LIMIT = 200;
|
|
9192
|
+
var CONTENT_QUERY_MAX_RESULT_BYTES = 1e6;
|
|
9193
|
+
var CONTENT_QUERY_EXCLUDED_FIELD_IDS = ["body"];
|
|
9194
|
+
var DATA_QUERY_MAX_STRING_LENGTH = 4096;
|
|
9195
|
+
var DATA_QUERY_MAX_JSON_STRING_LENGTH = 65536;
|
|
9196
|
+
var DATA_QUERY_MAX_JSON_CONTAINER_ITEMS = 1e3;
|
|
9197
|
+
var DATA_QUERY_MAX_JSON_DEPTH = 16;
|
|
9198
|
+
var DATA_QUERY_FORBIDDEN_JSON_KEYS = /* @__PURE__ */ new Set([
|
|
9199
|
+
"__proto__",
|
|
9200
|
+
"constructor",
|
|
9201
|
+
"prototype"
|
|
9202
|
+
]);
|
|
9203
|
+
var RESULT_ENVELOPE_RESERVE_BYTES = 4096;
|
|
9204
|
+
var MIN_RESULT_ROW_BYTES = 512;
|
|
9205
|
+
var CONTENT_QUERY_MIN_RESULT_BYTES = 4608;
|
|
9206
|
+
function assertUsableResultBudget(schema) {
|
|
9207
|
+
const budget = schema.maxResultBytes ?? 1e6;
|
|
9208
|
+
if (budget >= 4608) return;
|
|
9209
|
+
throw new Error(`Content query schema maxResultBytes must be at least ${CONTENT_QUERY_MIN_RESULT_BYTES} (${RESULT_ENVELOPE_RESERVE_BYTES} reserved for the result envelope, ${MIN_RESULT_ROW_BYTES} for rows); received ${budget}.`);
|
|
9210
|
+
}
|
|
9211
|
+
var MAX_CONTENT_QUERY_OR_BRANCHES = 128;
|
|
9212
|
+
var encoder = new TextEncoder();
|
|
9213
|
+
function assertContentQuerySchema(schema) {
|
|
9214
|
+
normalizeDataQuerySchema(schema);
|
|
9215
|
+
assertUsableResultBudget(schema);
|
|
9216
|
+
}
|
|
9217
|
+
function resolveContentTenantReadScope() {
|
|
9218
|
+
if (!isTenancyEnabled()) return void 0;
|
|
9219
|
+
if (isSuperAdminBypass() || isSystemContext()) return void 0;
|
|
9220
|
+
return { tenantId: getCurrentTenant()?.tenantId ?? null };
|
|
9221
|
+
}
|
|
9222
|
+
function queryFail(message, code = "INVALID_DATA_QUERY") {
|
|
9223
|
+
throw new DataQueryValidationError(message, code);
|
|
9224
|
+
}
|
|
9225
|
+
function isPlainRecord(value) {
|
|
9226
|
+
if (!value || typeof value !== "object" || Array.isArray(value)) return false;
|
|
9227
|
+
const prototype = Object.getPrototypeOf(value);
|
|
9228
|
+
return prototype === Object.prototype || prototype === null;
|
|
9229
|
+
}
|
|
9230
|
+
function queryFieldType(type) {
|
|
9231
|
+
switch (type) {
|
|
9232
|
+
case "text":
|
|
9233
|
+
case "foreignKey":
|
|
9234
|
+
case "crossPackageRef": return "string";
|
|
9235
|
+
case "integer":
|
|
9236
|
+
case "decimal": return "number";
|
|
9237
|
+
case "boolean": return "boolean";
|
|
9238
|
+
case "datetime": return "datetime";
|
|
9239
|
+
case "json": return "json";
|
|
9240
|
+
default: return;
|
|
9241
|
+
}
|
|
9242
|
+
}
|
|
9243
|
+
function filterOperatorsFor(type) {
|
|
9244
|
+
switch (type) {
|
|
9245
|
+
case "string": return [
|
|
9246
|
+
"eq",
|
|
9247
|
+
"ne",
|
|
9248
|
+
"gt",
|
|
9249
|
+
"gte",
|
|
9250
|
+
"lt",
|
|
9251
|
+
"lte",
|
|
9252
|
+
"in",
|
|
9253
|
+
"notIn",
|
|
9254
|
+
"like"
|
|
9255
|
+
];
|
|
9256
|
+
case "number":
|
|
9257
|
+
case "datetime": return [
|
|
9258
|
+
"eq",
|
|
9259
|
+
"ne",
|
|
9260
|
+
"gt",
|
|
9261
|
+
"gte",
|
|
9262
|
+
"lt",
|
|
9263
|
+
"lte",
|
|
9264
|
+
"in",
|
|
9265
|
+
"notIn"
|
|
9266
|
+
];
|
|
9267
|
+
case "boolean": return [
|
|
9268
|
+
"eq",
|
|
9269
|
+
"ne",
|
|
9270
|
+
"in",
|
|
9271
|
+
"notIn"
|
|
9272
|
+
];
|
|
9273
|
+
case "json": return;
|
|
9274
|
+
}
|
|
9275
|
+
}
|
|
9276
|
+
function meta(field) {
|
|
9277
|
+
return isPlainRecord(field._meta) ? field._meta : {};
|
|
9278
|
+
}
|
|
9279
|
+
function isRestrictedField(field) {
|
|
9280
|
+
const fieldMeta = meta(field);
|
|
9281
|
+
return field.sensitive === true || fieldMeta.sensitive === true || typeof field.readPermission === "string" || typeof fieldMeta.readPermission === "string";
|
|
9282
|
+
}
|
|
9283
|
+
function isTransientField(field) {
|
|
9284
|
+
return field.transient === true || meta(field).transient === true;
|
|
9285
|
+
}
|
|
9286
|
+
function isTenantField(name, field) {
|
|
9287
|
+
const fieldMeta = meta(field);
|
|
9288
|
+
return (isPlainRecord(field.__tenancy) ? field.__tenancy : isPlainRecord(fieldMeta.__tenancy) ? fieldMeta.__tenancy : void 0)?.isTenantIdField === true || name === "tenantId" || name === "tenant_id";
|
|
9289
|
+
}
|
|
9290
|
+
async function buildQuerySchemaForClass(qualifiedName, excluded) {
|
|
9291
|
+
const registered = await ObjectRegistry.getAllFields(qualifiedName);
|
|
9292
|
+
const fields = [];
|
|
9293
|
+
for (const [name, field] of registered) {
|
|
9294
|
+
if (name.startsWith("_")) continue;
|
|
9295
|
+
if (excluded.has(name)) continue;
|
|
9296
|
+
if (isRestrictedField(field)) continue;
|
|
9297
|
+
if (isTransientField(field)) continue;
|
|
9298
|
+
if (isTenantField(name, field)) continue;
|
|
9299
|
+
const type = queryFieldType(field.type);
|
|
9300
|
+
if (!type) continue;
|
|
9301
|
+
const filterOperators = filterOperatorsFor(type);
|
|
9302
|
+
fields.push({
|
|
9303
|
+
id: name,
|
|
9304
|
+
type,
|
|
9305
|
+
projectable: true,
|
|
9306
|
+
sortable: type !== "json",
|
|
9307
|
+
facetable: name !== "id" && (type === "string" || type === "boolean" || type === "number"),
|
|
9308
|
+
...filterOperators ? { filterOperators } : {}
|
|
9309
|
+
});
|
|
9310
|
+
}
|
|
9311
|
+
if (!fields.find((field) => field.id === "id")) throw new Error(`${qualifiedName} does not declare a queryable 'id' field`);
|
|
9312
|
+
const declared = new Set(fields.map((field) => field.id));
|
|
9313
|
+
const defaultSort = CONTENT_QUERY_DEFAULT_SORT.filter((term) => declared.has(term.field));
|
|
9314
|
+
return {
|
|
9315
|
+
version: 1,
|
|
9316
|
+
identityField: "id",
|
|
9317
|
+
fields,
|
|
9318
|
+
defaultPageLimit: 50,
|
|
9319
|
+
maxPageLimit: 200,
|
|
9320
|
+
maxResultBytes: CONTENT_QUERY_MAX_RESULT_BYTES,
|
|
9321
|
+
...defaultSort.length > 0 ? { defaultSort } : {},
|
|
9322
|
+
supports: {
|
|
9323
|
+
cursorPagination: false,
|
|
9324
|
+
consistency: false,
|
|
9325
|
+
facets: true
|
|
9326
|
+
}
|
|
9327
|
+
};
|
|
9328
|
+
}
|
|
9329
|
+
var schemaCache = /* @__PURE__ */ new Map();
|
|
9330
|
+
function buildDataQuerySchemaForClass(qualifiedName, options = {}) {
|
|
9331
|
+
const excluded = [...new Set(options.exclude ?? [])].sort();
|
|
9332
|
+
const key = `${qualifiedName}::${excluded.join(",")}`;
|
|
9333
|
+
const cached = schemaCache.get(key);
|
|
9334
|
+
if (cached) return cached;
|
|
9335
|
+
const pending = buildQuerySchemaForClass(qualifiedName, new Set(excluded)).catch((cause) => {
|
|
9336
|
+
schemaCache.delete(key);
|
|
9337
|
+
throw cause;
|
|
9338
|
+
});
|
|
9339
|
+
schemaCache.set(key, pending);
|
|
9340
|
+
return pending;
|
|
9341
|
+
}
|
|
9342
|
+
function buildContentQuerySchema() {
|
|
9343
|
+
return buildDataQuerySchemaForClass(CONTENT_QUERY_CLASS_NAME, { exclude: CONTENT_QUERY_EXCLUDED_FIELD_IDS });
|
|
9344
|
+
}
|
|
9345
|
+
function clearContentQuerySchemaCache() {
|
|
9346
|
+
schemaCache.clear();
|
|
9347
|
+
}
|
|
9348
|
+
function inverseOperator(operator) {
|
|
9349
|
+
switch (operator) {
|
|
9350
|
+
case "eq": return "ne";
|
|
9351
|
+
case "ne": return "eq";
|
|
9352
|
+
case "gt": return "lte";
|
|
9353
|
+
case "gte": return "lt";
|
|
9354
|
+
case "lt": return "gte";
|
|
9355
|
+
case "lte": return "gt";
|
|
9356
|
+
case "in": return "notIn";
|
|
9357
|
+
case "notIn": return "in";
|
|
9358
|
+
case "like": return queryFail("Content queries cannot negate a like predicate", "DATA_QUERY_UNSUPPORTED");
|
|
9359
|
+
}
|
|
9360
|
+
}
|
|
9361
|
+
function conditionToDnf(field, operator, value, negated = false) {
|
|
9362
|
+
const key = (suffix) => suffix ? `${field} ${suffix}` : field;
|
|
9363
|
+
const single = (whereKey, whereValue) => [[{ [whereKey]: whereValue }]];
|
|
9364
|
+
if (operator === "in") {
|
|
9365
|
+
const values = value ?? [];
|
|
9366
|
+
const nonNull = values.filter((entry) => entry !== null);
|
|
9367
|
+
if (nonNull.length === 0) return single(field, null);
|
|
9368
|
+
if (nonNull.length === values.length) return single(key("in"), nonNull);
|
|
9369
|
+
return [[{ [field]: null }], [{ [key("in")]: nonNull }]];
|
|
9370
|
+
}
|
|
9371
|
+
if (operator === "notIn") {
|
|
9372
|
+
const values = value ?? [];
|
|
9373
|
+
if (values.length === 0) return queryFail("Content query notIn requires at least one value", "DATA_QUERY_UNSUPPORTED");
|
|
9374
|
+
const inequalities = values.filter((entry) => entry !== null).map((entry) => ({ [key("!=")]: entry }));
|
|
9375
|
+
if (values.some((entry) => entry === null)) return [[...inequalities, { [key("!=")]: null }]];
|
|
9376
|
+
return [[{ [field]: null }], inequalities];
|
|
9377
|
+
}
|
|
9378
|
+
if (operator === "ne" && value !== null) return [[{ [field]: null }], [{ [key("!=")]: value }]];
|
|
9379
|
+
const suffixes = {
|
|
9380
|
+
eq: "",
|
|
9381
|
+
ne: "!=",
|
|
9382
|
+
gt: ">",
|
|
9383
|
+
gte: ">=",
|
|
9384
|
+
lt: "<",
|
|
9385
|
+
lte: "<=",
|
|
9386
|
+
like: "like"
|
|
9387
|
+
};
|
|
9388
|
+
if (negated && (operator === "gt" || operator === "gte" || operator === "lt" || operator === "lte")) return [[{ [field]: null }], [{ [key(suffixes[operator])]: value }]];
|
|
9389
|
+
return single(key(suffixes[operator]), value);
|
|
9390
|
+
}
|
|
9391
|
+
function crossProduct(left, right) {
|
|
9392
|
+
if (left.length * right.length > 128) return queryFail(`Content query filter expands beyond 128 OR branches`, "DATA_QUERY_UNSUPPORTED");
|
|
9393
|
+
return left.flatMap((leftGroup) => right.map((rightGroup) => [...leftGroup, ...rightGroup]));
|
|
9394
|
+
}
|
|
9395
|
+
function filterToDnf(filter, declared, negate = false) {
|
|
9396
|
+
if (filter.kind === "condition") {
|
|
9397
|
+
if (!declared.has(filter.field)) return queryFail(`Content query filter field is not declared: ${filter.field}`, "DATA_QUERY_FILTER_NOT_ALLOWED");
|
|
9398
|
+
return conditionToDnf(filter.field, negate ? inverseOperator(filter.operator) : filter.operator, filter.value, negate);
|
|
9399
|
+
}
|
|
9400
|
+
if (filter.kind === "not") return filterToDnf(filter.filter, declared, !negate);
|
|
9401
|
+
if (filter.kind === "all" && !negate || filter.kind === "any" && negate) return filter.filters.reduce((combined, child) => crossProduct(combined, filterToDnf(child, declared, negate)), [[]]);
|
|
9402
|
+
const branches = filter.filters.flatMap((child) => filterToDnf(child, declared, negate));
|
|
9403
|
+
if (branches.length > 128) return queryFail(`Content query filter expands beyond 128 OR branches`, "DATA_QUERY_UNSUPPORTED");
|
|
9404
|
+
return branches;
|
|
9405
|
+
}
|
|
9406
|
+
function normalizeScopeConditions(scope) {
|
|
9407
|
+
if (scope === void 0) return [];
|
|
9408
|
+
return (Array.isArray(scope) ? scope : [scope]).map((candidate) => {
|
|
9409
|
+
if (!isPlainRecord(candidate) || Object.keys(candidate).length === 0) throw new Error("Content query scope conditions must be non-empty plain objects");
|
|
9410
|
+
return { ...candidate };
|
|
9411
|
+
});
|
|
9412
|
+
}
|
|
9413
|
+
var DENY_ALL_SCOPE_CONDITION = Object.freeze({ ["id"]: null });
|
|
9414
|
+
function normalizeApplicationScope(scope) {
|
|
9415
|
+
if (scope === void 0) return [];
|
|
9416
|
+
const conditions = normalizeScopeConditions(scope);
|
|
9417
|
+
return conditions.length > 0 ? conditions : [{ ...DENY_ALL_SCOPE_CONDITION }];
|
|
9418
|
+
}
|
|
9419
|
+
function mergeContentQueryScope(scope, callerWhere) {
|
|
9420
|
+
const scopeConditions = normalizeApplicationScope(scope);
|
|
9421
|
+
const merged = (callerWhere && callerWhere.length > 0 ? callerWhere : [[]]).map((branch) => [...scopeConditions, ...branch]);
|
|
9422
|
+
if (merged.length === 1 && merged[0].length === 0) return void 0;
|
|
9423
|
+
if (merged.some((branch) => branch.length === 0)) return queryFail("Content query filter produced an unbounded OR branch", "DATA_QUERY_UNSUPPORTED");
|
|
9424
|
+
return merged;
|
|
9425
|
+
}
|
|
9426
|
+
var DATA_QUERY_MAX_WARNINGS = 100;
|
|
9427
|
+
var DATA_QUERY_MAX_WARNING_LENGTH = 512;
|
|
9428
|
+
function pushWarning(warnings, message) {
|
|
9429
|
+
if (warnings.length >= 100) return;
|
|
9430
|
+
const text = message.length > 512 ? `${message.slice(0, 511)}\u2026` : message;
|
|
9431
|
+
if (text.length > 0) warnings.push(text);
|
|
9432
|
+
}
|
|
9433
|
+
function capString(value, limit = DATA_QUERY_MAX_STRING_LENGTH) {
|
|
9434
|
+
if (value.length <= limit) return value;
|
|
9435
|
+
const cut = value.slice(0, limit);
|
|
9436
|
+
const last = cut.charCodeAt(cut.length - 1);
|
|
9437
|
+
return last >= 55296 && last <= 56319 ? cut.slice(0, -1) : cut;
|
|
9438
|
+
}
|
|
9439
|
+
function boundJsonValue(value, descriptor, truncation, depth = 0, ancestors = /* @__PURE__ */ new Set()) {
|
|
9440
|
+
const flag = () => {
|
|
9441
|
+
truncation?.fields.add(descriptor.id);
|
|
9442
|
+
};
|
|
9443
|
+
if (value === null || value === void 0) return null;
|
|
9444
|
+
if (typeof value === "boolean") return value;
|
|
9445
|
+
if (typeof value === "string") {
|
|
9446
|
+
if (value.length > 65536) {
|
|
9447
|
+
flag();
|
|
9448
|
+
return capString(value, DATA_QUERY_MAX_JSON_STRING_LENGTH);
|
|
9449
|
+
}
|
|
9450
|
+
return value;
|
|
9451
|
+
}
|
|
9452
|
+
if (typeof value === "number") {
|
|
9453
|
+
if (!Number.isFinite(value)) {
|
|
9454
|
+
flag();
|
|
9455
|
+
return null;
|
|
9456
|
+
}
|
|
9457
|
+
return value;
|
|
9458
|
+
}
|
|
9459
|
+
if (typeof value === "bigint") {
|
|
9460
|
+
if (!(value <= BigInt(Number.MAX_SAFE_INTEGER) && value >= BigInt(Number.MIN_SAFE_INTEGER))) {
|
|
9461
|
+
flag();
|
|
9462
|
+
return null;
|
|
9463
|
+
}
|
|
9464
|
+
return Number(value);
|
|
9465
|
+
}
|
|
9466
|
+
if (value instanceof Date) return Number.isNaN(value.getTime()) ? null : value.toISOString();
|
|
9467
|
+
if (depth >= 16) {
|
|
9468
|
+
flag();
|
|
9469
|
+
return null;
|
|
9470
|
+
}
|
|
9471
|
+
if (Array.isArray(value)) {
|
|
9472
|
+
if (ancestors.has(value)) {
|
|
9473
|
+
flag();
|
|
9474
|
+
return null;
|
|
9475
|
+
}
|
|
9476
|
+
ancestors.add(value);
|
|
9477
|
+
try {
|
|
9478
|
+
let entries = value;
|
|
9479
|
+
if (entries.length > 1e3) {
|
|
9480
|
+
flag();
|
|
9481
|
+
entries = entries.slice(0, DATA_QUERY_MAX_JSON_CONTAINER_ITEMS);
|
|
9482
|
+
}
|
|
9483
|
+
return entries.map((entry) => boundJsonValue(entry, descriptor, truncation, depth + 1, ancestors));
|
|
9484
|
+
} finally {
|
|
9485
|
+
ancestors.delete(value);
|
|
9486
|
+
}
|
|
9487
|
+
}
|
|
9488
|
+
if (!isPlainRecord(value)) {
|
|
9489
|
+
flag();
|
|
9490
|
+
return null;
|
|
9491
|
+
}
|
|
9492
|
+
if (ancestors.has(value)) {
|
|
9493
|
+
flag();
|
|
9494
|
+
return null;
|
|
9495
|
+
}
|
|
9496
|
+
ancestors.add(value);
|
|
9497
|
+
try {
|
|
9498
|
+
let keys = Object.keys(value);
|
|
9499
|
+
if (keys.length > 1e3) {
|
|
9500
|
+
flag();
|
|
9501
|
+
keys = keys.slice(0, DATA_QUERY_MAX_JSON_CONTAINER_ITEMS);
|
|
9502
|
+
}
|
|
9503
|
+
const bounded = /* @__PURE__ */ Object.create(null);
|
|
9504
|
+
for (const key of keys) {
|
|
9505
|
+
if (key.length > 65536) {
|
|
9506
|
+
flag();
|
|
9507
|
+
continue;
|
|
9508
|
+
}
|
|
9509
|
+
if (DATA_QUERY_FORBIDDEN_JSON_KEYS.has(key)) {
|
|
9510
|
+
flag();
|
|
9511
|
+
continue;
|
|
9512
|
+
}
|
|
9513
|
+
Object.defineProperty(bounded, key, {
|
|
9514
|
+
value: boundJsonValue(value[key], descriptor, truncation, depth + 1, ancestors),
|
|
9515
|
+
enumerable: true,
|
|
9516
|
+
configurable: true,
|
|
9517
|
+
writable: true
|
|
9518
|
+
});
|
|
9519
|
+
}
|
|
9520
|
+
return bounded;
|
|
9521
|
+
} finally {
|
|
9522
|
+
ancestors.delete(value);
|
|
9523
|
+
}
|
|
9524
|
+
}
|
|
9525
|
+
function toDeclaredValue(value, descriptor, truncation) {
|
|
9526
|
+
if (value === void 0) return null;
|
|
9527
|
+
if (value instanceof Date) return Number.isNaN(value.getTime()) ? null : value.toISOString();
|
|
9528
|
+
if (descriptor.type === "json") return boundJsonValue(value, descriptor, truncation);
|
|
9529
|
+
if (typeof value === "string" && value.length > 4096) {
|
|
9530
|
+
truncation?.fields.add(descriptor.id);
|
|
9531
|
+
return capString(value);
|
|
9532
|
+
}
|
|
9533
|
+
if (typeof value === "bigint") {
|
|
9534
|
+
if (value > BigInt(Number.MAX_SAFE_INTEGER) || value < BigInt(Number.MIN_SAFE_INTEGER)) return queryFail(`Content query value for ${descriptor.id} exceeds the safe integer range`, "DATA_QUERY_RESULT_INVALID");
|
|
9535
|
+
return Number(value);
|
|
9536
|
+
}
|
|
9537
|
+
if (descriptor.type === "boolean" && typeof value === "number") return value !== 0;
|
|
9538
|
+
return value;
|
|
9539
|
+
}
|
|
9540
|
+
function jsonByteLength(value) {
|
|
9541
|
+
return encoder.encode(JSON.stringify(value) ?? "null").byteLength;
|
|
9542
|
+
}
|
|
9543
|
+
function capStringBytes(value, maxBytes) {
|
|
9544
|
+
if (maxBytes <= 0) return "";
|
|
9545
|
+
const totalBytes = encoder.encode(value).byteLength;
|
|
9546
|
+
if (totalBytes <= maxBytes) return value;
|
|
9547
|
+
if (totalBytes === value.length) return value.slice(0, maxBytes);
|
|
9548
|
+
let used = 0;
|
|
9549
|
+
let end = 0;
|
|
9550
|
+
for (const character of value) {
|
|
9551
|
+
const point = character.codePointAt(0) ?? 0;
|
|
9552
|
+
const cost = point < 128 ? 1 : point < 2048 ? 2 : point < 65536 ? 3 : 4;
|
|
9553
|
+
if (used + cost > maxBytes) break;
|
|
9554
|
+
used += cost;
|
|
9555
|
+
end += character.length;
|
|
9556
|
+
}
|
|
9557
|
+
return value.slice(0, end);
|
|
9558
|
+
}
|
|
9559
|
+
function reductionFor(field, value, identityField, descriptors) {
|
|
9560
|
+
if (field === identityField || value === null) return "none";
|
|
9561
|
+
const type = descriptors.get(field)?.type;
|
|
9562
|
+
if (type === "json") return "null";
|
|
9563
|
+
if (type === "datetime") return "null";
|
|
9564
|
+
if (typeof value === "string" && value.length > 0) return "truncate";
|
|
9565
|
+
return "none";
|
|
9566
|
+
}
|
|
9567
|
+
var REDUCED_VALUE_BYTES = {
|
|
9568
|
+
truncate: 2,
|
|
9569
|
+
null: 4,
|
|
9570
|
+
none: 0
|
|
9571
|
+
};
|
|
9572
|
+
function measureRow(row, descriptors, identityField) {
|
|
9573
|
+
const entries = Object.entries(row);
|
|
9574
|
+
const fields = entries.map(([field, value]) => {
|
|
9575
|
+
const declared = reductionFor(field, value, identityField, descriptors);
|
|
9576
|
+
const valueBytes = jsonByteLength(value);
|
|
9577
|
+
const reduction = declared === "none" || REDUCED_VALUE_BYTES[declared] < valueBytes ? declared : "none";
|
|
9578
|
+
return {
|
|
9579
|
+
field,
|
|
9580
|
+
keyBytes: jsonByteLength(field),
|
|
9581
|
+
valueBytes,
|
|
9582
|
+
reduction,
|
|
9583
|
+
floorBytes: reduction === "none" ? valueBytes : REDUCED_VALUE_BYTES[reduction]
|
|
9584
|
+
};
|
|
9585
|
+
});
|
|
9586
|
+
const structural = entries.length === 0 ? 3 : entries.length + 2;
|
|
9587
|
+
const overhead = fields.reduce((sum, entry) => sum + entry.keyBytes + 1, structural);
|
|
9588
|
+
return {
|
|
9589
|
+
fields,
|
|
9590
|
+
structural,
|
|
9591
|
+
cost: fields.reduce((sum, entry) => sum + entry.valueBytes, overhead),
|
|
9592
|
+
floor: fields.reduce((sum, entry) => sum + entry.floorBytes, overhead)
|
|
9593
|
+
};
|
|
9594
|
+
}
|
|
9595
|
+
function waterFillCap(sizes, available, floorBytes) {
|
|
9596
|
+
if (sizes.length === 0) return available >= 0 ? Number.MAX_SAFE_INTEGER : void 0;
|
|
9597
|
+
if (available < sizes.length * floorBytes) return void 0;
|
|
9598
|
+
const sorted = [...sizes].sort((left, right) => left - right);
|
|
9599
|
+
let prefix = 0;
|
|
9600
|
+
for (let index = 0; index < sorted.length; index += 1) {
|
|
9601
|
+
const remaining = sorted.length - index;
|
|
9602
|
+
if (prefix + remaining * sorted[index] > available) return Math.max(floorBytes, Math.floor((available - prefix) / remaining));
|
|
9603
|
+
prefix += sorted[index];
|
|
9604
|
+
}
|
|
9605
|
+
return Number.MAX_SAFE_INTEGER;
|
|
9606
|
+
}
|
|
9607
|
+
function shrinkRowToBytes(row, allowance, measured, truncation) {
|
|
9608
|
+
if (measured.floor > allowance) return void 0;
|
|
9609
|
+
const nulled = /* @__PURE__ */ new Set();
|
|
9610
|
+
let cap;
|
|
9611
|
+
for (;;) {
|
|
9612
|
+
const kept = measured.fields.filter((entry) => entry.reduction !== "truncate" && !nulled.has(entry.field));
|
|
9613
|
+
const truncatable = measured.fields.filter((entry) => entry.reduction === "truncate");
|
|
9614
|
+
const fixed = kept.reduce((sum, entry) => sum + entry.valueBytes, 0);
|
|
9615
|
+
const nulledBytes = REDUCED_VALUE_BYTES.null * nulled.size;
|
|
9616
|
+
const available = allowance - measured.fields.reduce((sum, entry) => sum + entry.keyBytes + 1, measured.structural) - fixed - nulledBytes;
|
|
9617
|
+
cap = waterFillCap(truncatable.map((entry) => entry.valueBytes), available, REDUCED_VALUE_BYTES.truncate);
|
|
9618
|
+
if (cap !== void 0) break;
|
|
9619
|
+
const biggestNullable = measured.fields.filter((entry) => entry.reduction === "null" && !nulled.has(entry.field)).sort((left, right) => right.valueBytes - left.valueBytes)[0];
|
|
9620
|
+
if (biggestNullable === void 0) return void 0;
|
|
9621
|
+
nulled.add(biggestNullable.field);
|
|
9622
|
+
}
|
|
9623
|
+
if (cap === void 0) return void 0;
|
|
9624
|
+
const shrunk = { ...row };
|
|
9625
|
+
for (const entry of measured.fields) {
|
|
9626
|
+
if (nulled.has(entry.field)) {
|
|
9627
|
+
shrunk[entry.field] = null;
|
|
9628
|
+
truncation.fields.add(entry.field);
|
|
9629
|
+
continue;
|
|
9630
|
+
}
|
|
9631
|
+
if (entry.reduction !== "truncate" || entry.valueBytes <= cap) continue;
|
|
9632
|
+
const original = shrunk[entry.field];
|
|
9633
|
+
let content = capStringBytes(original, cap - 2);
|
|
9634
|
+
let guard = 0;
|
|
9635
|
+
while (jsonByteLength(content) > cap && content.length > 0 && guard < 8) {
|
|
9636
|
+
guard += 1;
|
|
9637
|
+
const overshoot = jsonByteLength(content) - cap;
|
|
9638
|
+
content = capStringBytes(content, Math.max(0, encoder.encode(content).byteLength - overshoot));
|
|
9639
|
+
}
|
|
9640
|
+
shrunk[entry.field] = content;
|
|
9641
|
+
truncation.fields.add(entry.field);
|
|
9642
|
+
}
|
|
9643
|
+
return shrunk;
|
|
9644
|
+
}
|
|
9645
|
+
function allocateRowBytes(floors, costs, budget) {
|
|
9646
|
+
const allowances = [...floors];
|
|
9647
|
+
const seated = floors.reduce((sum, floor) => sum + floor, 0);
|
|
9648
|
+
if (seated > budget) return allowances;
|
|
9649
|
+
const appetites = costs.map((cost, index) => Math.max(0, cost - floors[index]));
|
|
9650
|
+
const order = floors.map((_, index) => index).sort((left2, right) => appetites[left2] - appetites[right]);
|
|
9651
|
+
let surplus = budget - seated;
|
|
9652
|
+
let left = floors.length;
|
|
9653
|
+
for (const index of order) {
|
|
9654
|
+
const granted = Math.min(appetites[index], Math.floor(surplus / left));
|
|
9655
|
+
allowances[index] += granted;
|
|
9656
|
+
surplus -= granted;
|
|
9657
|
+
left -= 1;
|
|
9658
|
+
}
|
|
9659
|
+
return allowances;
|
|
9660
|
+
}
|
|
9661
|
+
function boundRowBytes(rows, maxResultBytes, descriptors, identityField, truncation) {
|
|
9662
|
+
const budget = Math.max(0, (maxResultBytes || 1e6) - RESULT_ENVELOPE_RESERVE_BYTES);
|
|
9663
|
+
const framing = rows.length > 0 ? 1 : 2;
|
|
9664
|
+
const measured = rows.map((row) => measureRow(row, descriptors, identityField));
|
|
9665
|
+
if (measured.reduce((sum, row) => sum + row.cost, framing) <= budget) return {
|
|
9666
|
+
rows,
|
|
9667
|
+
truncated: false
|
|
9668
|
+
};
|
|
9669
|
+
if (measured.reduce((sum, row) => sum + row.floor, framing) > budget) return queryFail("Content query cannot fit its rows inside the maximum result bytes; request fewer fields or a smaller page.", "DATA_QUERY_RESULT_TOO_LARGE");
|
|
9670
|
+
const allowances = allocateRowBytes(measured.map((row) => row.floor), measured.map((row) => row.cost), budget - framing);
|
|
9671
|
+
return {
|
|
9672
|
+
rows: rows.map((row, index) => {
|
|
9673
|
+
if (measured[index].cost <= allowances[index]) return row;
|
|
9674
|
+
const shrunk = shrinkRowToBytes(row, allowances[index], measured[index], truncation);
|
|
9675
|
+
if (shrunk === void 0) return queryFail("Content query cannot fit a row inside its maximum result bytes; request fewer fields or a smaller page.", "DATA_QUERY_RESULT_TOO_LARGE");
|
|
9676
|
+
return shrunk;
|
|
9677
|
+
}),
|
|
9678
|
+
truncated: true
|
|
9679
|
+
};
|
|
9680
|
+
}
|
|
9681
|
+
function orderByTerms(sort) {
|
|
9682
|
+
if (!sort || sort.length === 0) return void 0;
|
|
9683
|
+
return sort.map((term) => `${term.field} ${term.direction.toUpperCase()}`);
|
|
9684
|
+
}
|
|
9685
|
+
async function executeContentQuery(collection, rawRequest, options = {}) {
|
|
9686
|
+
const schema = options.schema ?? await buildContentQuerySchema();
|
|
9687
|
+
assertUsableResultBudget(schema);
|
|
9688
|
+
const request = normalizeDataQueryRequest(rawRequest, schema);
|
|
9689
|
+
const queryFingerprint = createDataQueryFingerprint(request, schema);
|
|
9690
|
+
const descriptors = new Map(schema.fields.map((field) => [field.id, field]));
|
|
9691
|
+
const declared = new Set(descriptors.keys());
|
|
9692
|
+
const callerWhere = request.filter ? filterToDnf(request.filter, declared) : void 0;
|
|
9693
|
+
const scopeConditions = [...normalizeScopeConditions(resolveContentTenantReadScope()), ...normalizeApplicationScope(options.scope)];
|
|
9694
|
+
const where = mergeContentQueryScope(scopeConditions.length > 0 ? scopeConditions : void 0, callerWhere);
|
|
9695
|
+
const countOptions = where === void 0 ? void 0 : { where };
|
|
9696
|
+
const warnings = [];
|
|
9697
|
+
let truncated = false;
|
|
9698
|
+
let facets;
|
|
9699
|
+
if (request.mode === "rows") {
|
|
9700
|
+
const projection = request.projection ?? [schema.identityField];
|
|
9701
|
+
const offset = request.page?.kind === "offset" ? request.page.offset : 0;
|
|
9702
|
+
const limit = request.page?.limit ?? schema.defaultPageLimit ?? 50;
|
|
9703
|
+
const orderBy = orderByTerms(request.sort);
|
|
9704
|
+
const listed = await collection.list({
|
|
9705
|
+
select: projection,
|
|
9706
|
+
offset,
|
|
9707
|
+
limit,
|
|
9708
|
+
...orderBy ? { orderBy: orderBy.length === 1 ? orderBy[0] : orderBy } : {},
|
|
9709
|
+
...where === void 0 ? {} : { where }
|
|
9710
|
+
});
|
|
9711
|
+
const truncation = { fields: /* @__PURE__ */ new Set() };
|
|
9712
|
+
const bounded = boundRowBytes(listed.map((row) => {
|
|
9713
|
+
const out = {};
|
|
9714
|
+
for (const field of projection) {
|
|
9715
|
+
const descriptor = descriptors.get(field);
|
|
9716
|
+
if (!descriptor) return queryFail(`Content query returned an undeclared field: ${field}`, "DATA_QUERY_RESULT_NOT_ALLOWED");
|
|
9717
|
+
out[field] = toDeclaredValue(row[field], descriptor, truncation);
|
|
9718
|
+
}
|
|
9719
|
+
return out;
|
|
9720
|
+
}), schema.maxResultBytes ?? 1e6, descriptors, schema.identityField, truncation);
|
|
9721
|
+
const rows = bounded.rows;
|
|
9722
|
+
truncated = bounded.truncated || truncation.fields.size > 0;
|
|
9723
|
+
if (bounded.truncated) pushWarning(warnings, "Content query shortened values to fit its maximum result bytes; request fewer fields or a smaller page.");
|
|
9724
|
+
if (truncation.fields.size > 0) pushWarning(warnings, `Content query shortened over-long values in: ${[...truncation.fields].sort().join(", ")}.`);
|
|
9725
|
+
const total2 = await collection.count(countOptions);
|
|
9726
|
+
const page = {
|
|
9727
|
+
kind: "offset",
|
|
9728
|
+
offset,
|
|
9729
|
+
limit,
|
|
9730
|
+
hasMore: offset + rows.length < total2
|
|
9731
|
+
};
|
|
9732
|
+
return normalizeDataQueryResult({
|
|
9733
|
+
version: 1,
|
|
9734
|
+
requestId: request.requestId,
|
|
9735
|
+
queryFingerprint,
|
|
9736
|
+
identityField: schema.identityField,
|
|
9737
|
+
rows,
|
|
9738
|
+
page,
|
|
9739
|
+
total: {
|
|
9740
|
+
kind: "exact",
|
|
9741
|
+
value: total2
|
|
9742
|
+
},
|
|
9743
|
+
freshness: {
|
|
9744
|
+
state: "fresh",
|
|
9745
|
+
asOf: (/* @__PURE__ */ new Date()).toISOString()
|
|
9746
|
+
},
|
|
9747
|
+
warnings,
|
|
9748
|
+
truncated
|
|
9749
|
+
}, request, schema);
|
|
9750
|
+
}
|
|
9751
|
+
const total = await collection.count(countOptions);
|
|
9752
|
+
if (request.mode === "facets") {
|
|
9753
|
+
const requested = request.facets ?? [];
|
|
9754
|
+
const sourceFacets = await collection.facets({
|
|
9755
|
+
fields: requested.map((facet) => ({
|
|
9756
|
+
field: facet.field,
|
|
9757
|
+
limit: facet.limit
|
|
9758
|
+
})),
|
|
9759
|
+
...where === void 0 ? {} : { where }
|
|
9760
|
+
});
|
|
9761
|
+
const byField = new Map(sourceFacets.map((facet) => [facet.field, facet]));
|
|
9762
|
+
const facetTruncation = { fields: /* @__PURE__ */ new Set() };
|
|
9763
|
+
let facetBudget = Math.max(0, (schema.maxResultBytes ?? 1e6) - RESULT_ENVELOPE_RESERVE_BYTES);
|
|
9764
|
+
let facetBudgetExhausted = false;
|
|
9765
|
+
facets = requested.map((facet) => {
|
|
9766
|
+
const descriptor = descriptors.get(facet.field);
|
|
9767
|
+
if (!descriptor) return queryFail(`Content query returned an undeclared facet: ${facet.field}`, "DATA_QUERY_RESULT_NOT_ALLOWED");
|
|
9768
|
+
const values = byField.get(facet.field)?.values ?? [];
|
|
9769
|
+
facetBudget -= jsonByteLength(facet.field) + 48;
|
|
9770
|
+
const kept = [];
|
|
9771
|
+
let boundedOut = false;
|
|
9772
|
+
for (const entry of values.slice(0, facet.limit)) {
|
|
9773
|
+
const value = toDeclaredValue(entry.value, descriptor, facetTruncation);
|
|
9774
|
+
const cost = jsonByteLength({
|
|
9775
|
+
value,
|
|
9776
|
+
count: entry.count
|
|
9777
|
+
}) + 1;
|
|
9778
|
+
if (cost > facetBudget) {
|
|
9779
|
+
boundedOut = true;
|
|
9780
|
+
facetBudgetExhausted = true;
|
|
9781
|
+
break;
|
|
9782
|
+
}
|
|
9783
|
+
facetBudget -= cost;
|
|
9784
|
+
kept.push({
|
|
9785
|
+
value,
|
|
9786
|
+
count: entry.count
|
|
9787
|
+
});
|
|
9788
|
+
}
|
|
9789
|
+
return {
|
|
9790
|
+
field: facet.field,
|
|
9791
|
+
values: kept,
|
|
9792
|
+
truncated: boundedOut || values.length >= facet.limit
|
|
9793
|
+
};
|
|
9794
|
+
});
|
|
9795
|
+
if (facetTruncation.fields.size > 0) pushWarning(warnings, `Content query shortened over-long values in: ${[...facetTruncation.fields].sort().join(", ")}.`);
|
|
9796
|
+
if (facetBudgetExhausted) pushWarning(warnings, "Content query facets were truncated to fit their maximum result bytes; request fewer facets or a smaller facet limit.");
|
|
9797
|
+
truncated = facets.some((facet) => facet.truncated) || facetTruncation.fields.size > 0;
|
|
9798
|
+
}
|
|
9799
|
+
return normalizeDataQueryResult({
|
|
9800
|
+
version: 1,
|
|
9801
|
+
requestId: request.requestId,
|
|
9802
|
+
queryFingerprint,
|
|
9803
|
+
identityField: schema.identityField,
|
|
9804
|
+
rows: [],
|
|
9805
|
+
total: {
|
|
9806
|
+
kind: "exact",
|
|
9807
|
+
value: total
|
|
9808
|
+
},
|
|
9809
|
+
...facets === void 0 ? {} : { facets },
|
|
9810
|
+
freshness: {
|
|
9811
|
+
state: "fresh",
|
|
9812
|
+
asOf: (/* @__PURE__ */ new Date()).toISOString()
|
|
9813
|
+
},
|
|
9814
|
+
warnings,
|
|
9815
|
+
truncated
|
|
9816
|
+
}, request, schema);
|
|
9817
|
+
}
|
|
9818
|
+
//#endregion
|
|
9180
9819
|
//#region src/safe-remote-url.ts
|
|
9181
9820
|
async function defaultResolveHostname(hostname) {
|
|
9182
9821
|
return lookup(hostname, {
|
|
@@ -9360,6 +9999,29 @@ var Contents = class extends SmrtCollection {
|
|
|
9360
9999
|
const { FactCollection } = await import("@happyvertical/smrt-facts");
|
|
9361
10000
|
return FactCollection.create(this.options);
|
|
9362
10001
|
}
|
|
10002
|
+
/**
|
|
10003
|
+
* Bounded, tenant-safe content query (`POST /api/v1/contents/query`).
|
|
10004
|
+
*
|
|
10005
|
+
* Accepts the canonical `DataQueryRequest` envelope (#2444) and returns a
|
|
10006
|
+
* normalized `DataQueryResult`, so a list surface can filter, sort, page,
|
|
10007
|
+
* count, and facet server-side instead of hydrating the whole collection.
|
|
10008
|
+
*
|
|
10009
|
+
* The request body carries no authority: only schema-declared field ids are
|
|
10010
|
+
* accepted, and tenant scoping is applied by `executeContentQuery` itself
|
|
10011
|
+
* (fail-closed to global rows when tenancy is enabled with no active tenant
|
|
10012
|
+
* context). Applications that need additional site/organization scoping call
|
|
10013
|
+
* `executeContentQuery` directly with a trusted `scope`.
|
|
10014
|
+
*
|
|
10015
|
+
* The parameter is named `options` deliberately: the route generator passes
|
|
10016
|
+
* the raw request body straight through as a single `options` argument, so
|
|
10017
|
+
* the wire body IS the `DataQueryRequest` rather than a wrapper object.
|
|
10018
|
+
*
|
|
10019
|
+
* @param options Untrusted `DataQueryRequest` from the caller.
|
|
10020
|
+
* @returns A validated, bounded `DataQueryResult`.
|
|
10021
|
+
*/
|
|
10022
|
+
async queryAction(options) {
|
|
10023
|
+
return executeContentQuery(this, options);
|
|
10024
|
+
}
|
|
9363
10025
|
async browseFacts(options = {}) {
|
|
9364
10026
|
try {
|
|
9365
10027
|
const facts = await this.getFactCollection();
|
|
@@ -9714,9 +10376,15 @@ Contents = __decorateClass$5([smrt({
|
|
|
9714
10376
|
"browseFacts",
|
|
9715
10377
|
"getBySlug",
|
|
9716
10378
|
"getGovernanceDefinitionsAction",
|
|
9717
|
-
"resolveGovernanceAction"
|
|
10379
|
+
"resolveGovernanceAction",
|
|
10380
|
+
"queryAction"
|
|
9718
10381
|
],
|
|
9719
10382
|
routes: {
|
|
10383
|
+
queryAction: {
|
|
10384
|
+
scope: "collection",
|
|
10385
|
+
method: "POST",
|
|
10386
|
+
path: "query"
|
|
10387
|
+
},
|
|
9720
10388
|
browseFacts: {
|
|
9721
10389
|
scope: "collection",
|
|
9722
10390
|
method: "GET",
|
|
@@ -10758,6 +11426,6 @@ function stringToContent(data) {
|
|
|
10758
11426
|
};
|
|
10759
11427
|
}
|
|
10760
11428
|
//#endregion
|
|
10761
|
-
export { Article, Content, ContentAsset, ContentAssetCollection, ContentContribution, ContentContributionAttachment, ContentContributionAttachmentCollection, ContentContributionRevision, ContentContributionRevisionCollection, ContentContributionType, ContentContributionTypeCollection, ContentContributions, ContentContributor, ContentContributorCollection, ContentCorrection, ContentCorrectionCollection, ContentDocument, ContentFeedSource, ContentFeedSourceCollection, ContentGovernanceAssignment, ContentGovernanceAssignmentCollection, ContentGovernancePolicy, ContentGovernancePolicyCollection, ContentGovernanceProfile, ContentGovernanceProfileCollection, ContentReference, ContentReferences, ContentReview, ContentReviewCollection, ContentVersion, ContentVersionCollection, Contents, DEFAULT_CONTENT_BODY_FORMAT, Mirror, ThumbnailGenerator, bodyToEditorHtml, buildContentChatModelUpdates, buildContentEditorInteractionVariables, buildContentEditorSessionContext, buildContentGovernanceAssignmentKey, buildContentReviewPrompt, configureContentContributions, configureContentGovernance, contentChatMessageToJSON, contentChatSessionIsAuthorized, contentChatSessionKey, contentChatSessionMatchesContent, contentEditorAssistantContextToChatProps, contentEditorInteractionPrompt, contentEditorSessionPrompt, contentToString, createContentEditorAssistantContext, createContentEditorChatThread, editorHtmlToBody, evaluateContentPublishReadiness, evaluateContributionIntake, extractBodyImages, getAcceptedContentReviewStatuses, getContentChatAISelection, getContentContributionConfig, getContentContributionTypeConfigState, getContentGovernanceConfig, getContentReviewKind, getContentReviewPolicies, getContentReviewPolicy, getContentReviewProfile, getContentReviewProfileKeys, getContentReviewRequirements, getEffectiveContentContributionConfig, getEffectiveContentGovernanceConfig, getOrCreateContentEditorChatSession, hasStaticContentContributionType, hasStaticContentGovernancePolicy, hasStaticContentGovernanceProfile, htmlToMarkdown, inferProviderFromModel, isAssetAssociable, isMetadataAccessor, listContentEditorChatThreadMessages, loadPersistedContentContributionTypes, normalizeContentTransparency, parseContentFeed, parseContentReviewResponse, promptMessageOptions, renderMarkdownToHtml, resetContentContributionConfig, resetContentGovernanceConfig, resolveBodyFormat, resolveConfiguredContentGovernance, resolveContentChatModelSelection, resolveDefaultContentChatAI, resolveEffectiveContentContributionType, resolveEffectiveContentGovernance, sanitizeContentEditorAssistantFieldUpdates, sanitizeHtml, sendContentEditorChatThreadMessage, serializeContentChatMessageForUI, smrtContentApplyCorrectionPrompt, smrtContentReviewPrompt, smrtContentThumbnailAIGeneratePrompt, stringToContent, stripHtml, syncContentFeedSource };
|
|
11429
|
+
export { Article, CONTENT_QUERY_CLASS_NAME, CONTENT_QUERY_DEFAULT_PAGE_LIMIT, CONTENT_QUERY_DEFAULT_SORT, CONTENT_QUERY_EXCLUDED_FIELD_IDS, CONTENT_QUERY_IDENTITY_FIELD, CONTENT_QUERY_MAX_PAGE_LIMIT, CONTENT_QUERY_MAX_RESULT_BYTES, CONTENT_QUERY_MIN_RESULT_BYTES, Content, ContentAsset, ContentAssetCollection, ContentContribution, ContentContributionAttachment, ContentContributionAttachmentCollection, ContentContributionRevision, ContentContributionRevisionCollection, ContentContributionType, ContentContributionTypeCollection, ContentContributions, ContentContributor, ContentContributorCollection, ContentCorrection, ContentCorrectionCollection, ContentDocument, ContentFeedSource, ContentFeedSourceCollection, ContentGovernanceAssignment, ContentGovernanceAssignmentCollection, ContentGovernancePolicy, ContentGovernancePolicyCollection, ContentGovernanceProfile, ContentGovernanceProfileCollection, ContentReference, ContentReferences, ContentReview, ContentReviewCollection, ContentVersion, ContentVersionCollection, Contents, DATA_QUERY_FORBIDDEN_JSON_KEYS, DATA_QUERY_MAX_JSON_CONTAINER_ITEMS, DATA_QUERY_MAX_JSON_DEPTH, DATA_QUERY_MAX_JSON_STRING_LENGTH, DATA_QUERY_MAX_STRING_LENGTH, DATA_QUERY_MAX_WARNINGS, DATA_QUERY_MAX_WARNING_LENGTH, DEFAULT_CONTENT_BODY_FORMAT, MAX_CONTENT_QUERY_OR_BRANCHES, Mirror, ThumbnailGenerator, assertContentQuerySchema, bodyToEditorHtml, buildContentChatModelUpdates, buildContentEditorInteractionVariables, buildContentEditorSessionContext, buildContentGovernanceAssignmentKey, buildContentQuerySchema, buildContentReviewPrompt, buildDataQuerySchemaForClass, clearContentQuerySchemaCache, configureContentContributions, configureContentGovernance, contentChatMessageToJSON, contentChatSessionIsAuthorized, contentChatSessionKey, contentChatSessionMatchesContent, contentEditorAssistantContextToChatProps, contentEditorInteractionPrompt, contentEditorSessionPrompt, contentToString, createContentEditorAssistantContext, createContentEditorChatThread, editorHtmlToBody, evaluateContentPublishReadiness, evaluateContributionIntake, executeContentQuery, extractBodyImages, getAcceptedContentReviewStatuses, getContentChatAISelection, getContentContributionConfig, getContentContributionTypeConfigState, getContentGovernanceConfig, getContentReviewKind, getContentReviewPolicies, getContentReviewPolicy, getContentReviewProfile, getContentReviewProfileKeys, getContentReviewRequirements, getEffectiveContentContributionConfig, getEffectiveContentGovernanceConfig, getOrCreateContentEditorChatSession, hasStaticContentContributionType, hasStaticContentGovernancePolicy, hasStaticContentGovernanceProfile, htmlToMarkdown, inferProviderFromModel, isAssetAssociable, isMetadataAccessor, listContentEditorChatThreadMessages, loadPersistedContentContributionTypes, mergeContentQueryScope, normalizeContentTransparency, parseContentFeed, parseContentReviewResponse, promptMessageOptions, renderMarkdownToHtml, resetContentContributionConfig, resetContentGovernanceConfig, resolveBodyFormat, resolveConfiguredContentGovernance, resolveContentChatModelSelection, resolveContentTenantReadScope, resolveDefaultContentChatAI, resolveEffectiveContentContributionType, resolveEffectiveContentGovernance, sanitizeContentEditorAssistantFieldUpdates, sanitizeHtml, sendContentEditorChatThreadMessage, serializeContentChatMessageForUI, smrtContentApplyCorrectionPrompt, smrtContentReviewPrompt, smrtContentThumbnailAIGeneratePrompt, stringToContent, stripHtml, syncContentFeedSource };
|
|
10762
11430
|
|
|
10763
11431
|
//# sourceMappingURL=index.js.map
|