@happyvertical/smrt-content 0.43.3 → 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.
Files changed (34) hide show
  1. package/AGENTS.md +9 -0
  2. package/agents/content-list.md +869 -0
  3. package/dist/content-query.d.ts +310 -0
  4. package/dist/content-query.d.ts.map +1 -0
  5. package/dist/contents.d.ts +22 -0
  6. package/dist/contents.d.ts.map +1 -1
  7. package/dist/index.d.ts +2 -0
  8. package/dist/index.d.ts.map +1 -1
  9. package/dist/index.js +672 -4
  10. package/dist/index.js.map +1 -1
  11. package/dist/manifest.json +22 -2
  12. package/dist/smrt-knowledge.json +38 -5
  13. package/dist/svelte/components/ContentList.svelte +1580 -281
  14. package/dist/svelte/components/ContentList.svelte.d.ts +54 -2
  15. package/dist/svelte/components/ContentList.svelte.d.ts.map +1 -1
  16. package/dist/svelte/content-list-controller.d.ts +306 -0
  17. package/dist/svelte/content-list-controller.d.ts.map +1 -0
  18. package/dist/svelte/content-list-controller.js +921 -0
  19. package/dist/svelte/content-list-query.d.ts +498 -0
  20. package/dist/svelte/content-list-query.d.ts.map +1 -0
  21. package/dist/svelte/content-list-query.js +1294 -0
  22. package/dist/svelte/content-list-saved-views.d.ts +172 -0
  23. package/dist/svelte/content-list-saved-views.d.ts.map +1 -0
  24. package/dist/svelte/content-list-saved-views.js +298 -0
  25. package/dist/svelte/content-list-url-state.d.ts +211 -0
  26. package/dist/svelte/content-list-url-state.d.ts.map +1 -0
  27. package/dist/svelte/content-list-url-state.js +856 -0
  28. package/dist/svelte/i18n.contribution.d.ts +55 -0
  29. package/dist/svelte/i18n.contribution.d.ts.map +1 -1
  30. package/dist/svelte/i18n.contribution.js +57 -0
  31. package/dist/svelte/index.d.ts +5 -0
  32. package/dist/svelte/index.d.ts.map +1 -1
  33. package/dist/svelte/index.js +10 -0
  34. 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.3\",\"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