@happyvertical/smrt-projects 0.54.2 → 0.54.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/chunks/{Issue-DG5UNAGa.js → Issue-DycFRe4L.js} +9 -1
- package/dist/chunks/Issue-DycFRe4L.js.map +1 -0
- package/dist/chunks/{PullRequest-CN7LpEl4.js → PullRequest--pr1Soaq.js} +10 -2
- package/dist/chunks/PullRequest--pr1Soaq.js.map +1 -0
- package/dist/collections/DevelopmentRequestHistories.d.ts +1 -1
- package/dist/collections/DevelopmentRequestHistories.d.ts.map +1 -1
- package/dist/collections/DevelopmentRequests.d.ts +2 -2
- package/dist/collections/DevelopmentRequests.d.ts.map +1 -1
- package/dist/collections/Issues.d.ts +3 -3
- package/dist/collections/Issues.d.ts.map +1 -1
- package/dist/collections/ProjectIntegrationAudits.d.ts +1 -1
- package/dist/collections/ProjectIntegrationAudits.d.ts.map +1 -1
- package/dist/collections/ProjectIntegrations.d.ts +2 -2
- package/dist/collections/ProjectIntegrations.d.ts.map +1 -1
- package/dist/collections/Projects.d.ts +2 -2
- package/dist/collections/Projects.d.ts.map +1 -1
- package/dist/collections/PullRequests.d.ts +3 -3
- package/dist/collections/PullRequests.d.ts.map +1 -1
- package/dist/collections/Repositories.d.ts +2 -2
- package/dist/collections/Repositories.d.ts.map +1 -1
- package/dist/collections/index.d.ts +8 -8
- package/dist/collections/index.d.ts.map +1 -1
- package/dist/index.d.ts +23 -23
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +81 -5
- package/dist/index.js.map +1 -1
- package/dist/managed-client.d.ts +5 -5
- package/dist/managed-client.d.ts.map +1 -1
- package/dist/manifest.json +3 -2
- package/dist/models/DevelopmentRequest.d.ts +1 -1
- package/dist/models/DevelopmentRequest.d.ts.map +1 -1
- package/dist/models/DevelopmentRequestHistory.d.ts +1 -1
- package/dist/models/DevelopmentRequestHistory.d.ts.map +1 -1
- package/dist/models/Issue.d.ts +3 -3
- package/dist/models/Issue.d.ts.map +1 -1
- package/dist/models/Project.d.ts +3 -3
- package/dist/models/Project.d.ts.map +1 -1
- package/dist/models/ProjectIntegration.d.ts +1 -1
- package/dist/models/ProjectIntegration.d.ts.map +1 -1
- package/dist/models/ProjectIntegrationAudit.d.ts +1 -1
- package/dist/models/ProjectIntegrationAudit.d.ts.map +1 -1
- package/dist/models/PullRequest.d.ts +2 -2
- package/dist/models/PullRequest.d.ts.map +1 -1
- package/dist/models/Repository.d.ts +3 -3
- package/dist/models/Repository.d.ts.map +1 -1
- package/dist/models/index.d.ts +10 -10
- package/dist/models/index.d.ts.map +1 -1
- package/dist/repository-client-scope.d.ts +1 -1
- package/dist/repository-client-scope.d.ts.map +1 -1
- package/dist/smrt-knowledge.json +3 -3
- package/package.json +18 -18
- package/dist/chunks/Issue-DG5UNAGa.js.map +0 -1
- package/dist/chunks/PullRequest-CN7LpEl4.js.map +0 -1
package/dist/index.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { i as __exportAll, r as issueIncorporateFeedbackPrompt, t as Issue } from "./chunks/Issue-
|
|
1
|
+
import { i as __exportAll, r as issueIncorporateFeedbackPrompt, t as Issue } from "./chunks/Issue-DycFRe4L.js";
|
|
2
2
|
import "./chunks/constants-BhVfX4Jn.js";
|
|
3
3
|
import { r as withRepositoryClient, t as getScopedRepositoryClient } from "./chunks/repository-client-scope-CAnWW7-r.js";
|
|
4
|
-
import { t as PullRequest } from "./chunks/PullRequest
|
|
4
|
+
import { t as PullRequest } from "./chunks/PullRequest--pr1Soaq.js";
|
|
5
5
|
import { PROJECTS_MODULE_META, PROJECTS_UI_SLOTS } from "./ui.js";
|
|
6
6
|
import { ObjectRegistry, SmrtCollection, SmrtObject, field, foreignKey, smrt, toSnakeCase } from "@happyvertical/smrt-core";
|
|
7
7
|
import { TenantScoped, queryGlobal, queryWithGlobals, tenantId, withTenant } from "@happyvertical/smrt-tenancy";
|
|
@@ -14,17 +14,24 @@ import { preflightMinorUnitsRescale, rescaleMoneyColumnsToMinorUnits } from "@ha
|
|
|
14
14
|
import { ServiceChargeSnapshot, ServiceChargeSnapshotCollection, ServiceCompensationSnapshot, ServiceCompensationSnapshotCollection, ServiceEvidenceService, ServiceTimeEntry, ServiceTimeEntryCollection } from "@happyvertical/smrt-timesheets";
|
|
15
15
|
import { CommercialUsageService } from "@happyvertical/smrt-subscriptions";
|
|
16
16
|
//#region src/__smrt-register__.ts
|
|
17
|
-
ObjectRegistry.registerPackageManifest(JSON.parse("{\"version\":\"1.0.0\",\"timestamp\":0,\"packageName\":\"@happyvertical/smrt-projects\",\"packageVersion\":\"0.54.2\",\"objects\":{\"@happyvertical/smrt-projects:DevelopmentRequestHistoryCollection\":{\"name\":\"developmentrequesthistorycollection\",\"className\":\"DevelopmentRequestHistoryCollection\",\"qualifiedName\":\"@happyvertical/smrt-projects:DevelopmentRequestHistoryCollection\",\"collection\":\"developmentrequesthistories\",\"filePath\":\"/home/runner/work/smrt/smrt/packages/projects/src/collections/DevelopmentRequestHistories.ts\",\"packageName\":\"@happyvertical/smrt-projects\",\"fields\":{},\"methods\":{\"listForRequest\":{\"name\":\"listForRequest\",\"async\":true,\"parameters\":[{\"name\":\"tenantId\",\"type\":\"string\",\"optional\":false},{\"name\":\"requestId\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"Promise<DevelopmentRequestHistory[]>\",\"isStatic\":false,\"isPublic\":true}},\"decoratorConfig\":{\"tableName\":\"development_request_histories\",\"api\":false,\"mcp\":false,\"cli\":false},\"extends\":\"SmrtCollection\",\"extendsTypeArg\":\"DevelopmentRequestHistory\",\"exportName\":\"DevelopmentRequestHistoryCollection\",\"collectionExportName\":\"DevelopmentRequestHistoryCollectionCollection\",\"schema\":{\"tableName\":\"development_request_histories\",\"ddl\":\"CREATE TABLE IF NOT EXISTS \\\"development_request_histories\\\" (\\n \\\"id\\\" UUID PRIMARY KEY NOT NULL,\\n \\\"slug\\\" TEXT NOT NULL,\\n \\\"context\\\" TEXT NOT NULL DEFAULT '',\\n \\\"created_at\\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\\"updated_at\\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\\"tenant_id\\\" UUID NOT NULL,\\n \\\"request_id\\\" UUID NOT NULL,\\n \\\"from_status\\\" TEXT DEFAULT '',\\n \\\"to_status\\\" TEXT DEFAULT 'submitted',\\n \\\"actor_type\\\" TEXT DEFAULT 'system',\\n \\\"actor_id\\\" TEXT DEFAULT '',\\n \\\"note\\\" TEXT\\n);\",\"columns\":{\"id\":{\"type\":\"UUID\",\"primaryKey\":true,\"referenceKind\":\"id\",\"notNull\":true},\"slug\":{\"type\":\"TEXT\",\"notNull\":true},\"context\":{\"type\":\"TEXT\",\"notNull\":true,\"default\":\"\"},\"created_at\":{\"type\":\"TIMESTAMP\",\"notNull\":true,\"default\":\"current_timestamp\"},\"updated_at\":{\"type\":\"TIMESTAMP\",\"notNull\":true,\"default\":\"current_timestamp\"},\"tenant_id\":{\"type\":\"UUID\",\"referenceKind\":\"tenantId\",\"notNull\":true,\"unique\":false},\"request_id\":{\"type\":\"UUID\",\"referenceKind\":\"foreignKey\",\"notNull\":true,\"unique\":false,\"foreignKey\":{\"table\":\"development_requests\",\"column\":\"id\",\"onDelete\":\"NO ACTION\",\"onUpdate\":\"CASCADE\"}},\"from_status\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"\"},\"to_status\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"submitted\"},\"actor_type\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"system\"},\"actor_id\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"\"},\"note\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false}},\"indexes\":[{\"name\":\"development_request_histories_slug_context_idx\",\"columns\":[\"tenant_id\",\"slug\",\"context\"],\"unique\":true},{\"name\":\"development_request_histories_tenant_id_created_at_idx\",\"columns\":[\"tenant_id\",\"created_at\"]},{\"name\":\"development_request_histories_request_id_idx\",\"columns\":[\"request_id\"]}],\"version\":\"67389678\"},\"importPath\":\"@happyvertical/smrt-projects\"},\"@happyvertical/smrt-projects:DevelopmentRequestCollection\":{\"name\":\"developmentrequestcollection\",\"className\":\"DevelopmentRequestCollection\",\"qualifiedName\":\"@happyvertical/smrt-projects:DevelopmentRequestCollection\",\"collection\":\"developmentrequests\",\"filePath\":\"/home/runner/work/smrt/smrt/packages/projects/src/collections/DevelopmentRequests.ts\",\"packageName\":\"@happyvertical/smrt-projects\",\"fields\":{},\"methods\":{\"createManaged\":{\"name\":\"createManaged\",\"async\":true,\"parameters\":[{\"name\":\"input\",\"type\":\"any\",\"optional\":false,\"typeUnresolved\":true}],\"returnType\":\"Promise<DevelopmentRequest>\",\"isStatic\":false,\"isPublic\":true},\"listByIntegrationRequester\":{\"name\":\"listByIntegrationRequester\",\"async\":true,\"parameters\":[{\"name\":\"input\",\"type\":\"object\",\"optional\":false,\"memberTypes\":[\"string\"]}],\"returnType\":\"Promise<DevelopmentRequest[]>\",\"isStatic\":false,\"isPublic\":true},\"transitionStatus\":{\"name\":\"transitionStatus\",\"async\":true,\"parameters\":[{\"name\":\"tenantId\",\"type\":\"string\",\"optional\":false},{\"name\":\"requestId\",\"type\":\"string\",\"optional\":false},{\"name\":\"transition\",\"type\":\"DevelopmentRequestTransitionInput\",\"optional\":false}],\"returnType\":\"Promise<DevelopmentRequest>\",\"isStatic\":false,\"isPublic\":true},\"listForProject\":{\"name\":\"listForProject\",\"async\":true,\"parameters\":[{\"name\":\"tenantId\",\"type\":\"string\",\"optional\":false},{\"name\":\"projectId\",\"type\":\"string\",\"optional\":false},{\"name\":\"status\",\"type\":\"DevelopmentRequestStatus\",\"optional\":true}],\"returnType\":\"Promise<DevelopmentRequest[]>\",\"isStatic\":false,\"isPublic\":true}},\"decoratorConfig\":{\"tableName\":\"development_requests\",\"api\":false,\"mcp\":false,\"cli\":false},\"extends\":\"SmrtCollection\",\"extendsTypeArg\":\"DevelopmentRequest\",\"exportName\":\"DevelopmentRequestCollection\",\"collectionExportName\":\"DevelopmentRequestCollectionCollection\",\"schema\":{\"tableName\":\"development_requests\",\"ddl\":\"CREATE TABLE IF NOT EXISTS \\\"development_requests\\\" (\\n \\\"id\\\" UUID PRIMARY KEY NOT NULL,\\n \\\"slug\\\" TEXT NOT NULL,\\n \\\"context\\\" TEXT NOT NULL DEFAULT '',\\n \\\"created_at\\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\\"updated_at\\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\\"tenant_id\\\" UUID NOT NULL,\\n \\\"project_id\\\" TEXT DEFAULT '',\\n \\\"integration_id\\\" UUID NOT NULL,\\n \\\"requester_id\\\" TEXT DEFAULT '',\\n \\\"participant_id\\\" TEXT DEFAULT '',\\n \\\"type\\\" TEXT DEFAULT 'feature',\\n \\\"description\\\" TEXT DEFAULT '',\\n \\\"evidence\\\" TEXT DEFAULT '[]',\\n \\\"visibility\\\" TEXT DEFAULT 'requester',\\n \\\"origin\\\" TEXT DEFAULT 'managed-app',\\n \\\"discussion\\\" TEXT DEFAULT '',\\n \\\"status\\\" TEXT DEFAULT 'submitted'\\n);\",\"columns\":{\"id\":{\"type\":\"UUID\",\"primaryKey\":true,\"referenceKind\":\"id\",\"notNull\":true},\"slug\":{\"type\":\"TEXT\",\"notNull\":true},\"context\":{\"type\":\"TEXT\",\"notNull\":true,\"default\":\"\"},\"created_at\":{\"type\":\"TIMESTAMP\",\"notNull\":true,\"default\":\"current_timestamp\"},\"updated_at\":{\"type\":\"TIMESTAMP\",\"notNull\":true,\"default\":\"current_timestamp\"},\"tenant_id\":{\"type\":\"UUID\",\"referenceKind\":\"tenantId\",\"notNull\":true,\"unique\":false},\"project_id\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"\"},\"integration_id\":{\"type\":\"UUID\",\"referenceKind\":\"foreignKey\",\"notNull\":true,\"unique\":false,\"foreignKey\":{\"table\":\"project_integrations\",\"column\":\"id\",\"onDelete\":\"NO ACTION\",\"onUpdate\":\"CASCADE\"}},\"requester_id\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"\"},\"participant_id\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"\"},\"type\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"feature\"},\"description\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"\"},\"evidence\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"[]\"},\"visibility\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"requester\"},\"origin\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"managed-app\"},\"discussion\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"\"},\"status\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"submitted\"}},\"indexes\":[{\"name\":\"development_requests_slug_context_idx\",\"columns\":[\"tenant_id\",\"slug\",\"context\"],\"unique\":true},{\"name\":\"development_requests_tenant_id_created_at_idx\",\"columns\":[\"tenant_id\",\"created_at\"]},{\"name\":\"development_requests_integration_id_idx\",\"columns\":[\"integration_id\"]}],\"version\":\"4bdaa6ff\"},\"importPath\":\"@happyvertical/smrt-projects\"},\"@happyvertical/smrt-projects:IssueCollection\":{\"name\":\"issuecollection\",\"className\":\"IssueCollection\",\"qualifiedName\":\"@happyvertical/smrt-projects:IssueCollection\",\"collection\":\"issues\",\"filePath\":\"/home/runner/work/smrt/smrt/packages/projects/src/collections/Issues.ts\",\"packageName\":\"@happyvertical/smrt-projects\",\"fields\":{},\"methods\":{\"discover\":{\"name\":\"discover\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":false,\"memberTypes\":[\"Repository\",\"SearchFilters\"]}],\"returnType\":\"Promise<Issue[]>\",\"isStatic\":false,\"isPublic\":true},\"findByRepository\":{\"name\":\"findByRepository\",\"async\":true,\"parameters\":[{\"name\":\"repositoryId\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"Promise<Issue[]>\",\"isStatic\":false,\"isPublic\":true},\"findOpen\":{\"name\":\"findOpen\",\"async\":true,\"parameters\":[{\"name\":\"repositoryId\",\"type\":\"string\",\"optional\":true}],\"returnType\":\"Promise<Issue[]>\",\"isStatic\":false,\"isPublic\":true},\"findByLabel\":{\"name\":\"findByLabel\",\"async\":true,\"parameters\":[{\"name\":\"label\",\"type\":\"string\",\"optional\":false},{\"name\":\"repositoryId\",\"type\":\"string\",\"optional\":true}],\"returnType\":\"Promise<Issue[]>\",\"isStatic\":false,\"isPublic\":true},\"findByAssignee\":{\"name\":\"findByAssignee\",\"async\":true,\"parameters\":[{\"name\":\"assignee\",\"type\":\"string\",\"optional\":false},{\"name\":\"repositoryId\",\"type\":\"string\",\"optional\":true}],\"returnType\":\"Promise<Issue[]>\",\"isStatic\":false,\"isPublic\":true},\"findNeedingReview\":{\"name\":\"findNeedingReview\",\"async\":true,\"parameters\":[{\"name\":\"repositoryId\",\"type\":\"string\",\"optional\":true}],\"returnType\":\"Promise<Issue[]>\",\"isStatic\":false,\"isPublic\":true},\"findByNumber\":{\"name\":\"findByNumber\",\"async\":true,\"parameters\":[{\"name\":\"repositoryId\",\"type\":\"string\",\"optional\":false},{\"name\":\"number\",\"type\":\"number\",\"optional\":false}],\"returnType\":\"Promise<Issue | null>\",\"isStatic\":false,\"isPublic\":true},\"findWithUnincorporatedFeedback\":{\"name\":\"findWithUnincorporatedFeedback\",\"async\":true,\"parameters\":[{\"name\":\"repositoryId\",\"type\":\"string\",\"optional\":true}],\"returnType\":\"Promise<Issue[]>\",\"isStatic\":false,\"isPublic\":true},\"batchSync\":{\"name\":\"batchSync\",\"async\":true,\"parameters\":[{\"name\":\"repository\",\"type\":\"Repository\",\"optional\":false},{\"name\":\"options\",\"type\":\"object\",\"optional\":true,\"memberTypes\":[\"boolean\"]}],\"returnType\":\"Promise<Issue[]>\",\"isStatic\":false,\"isPublic\":true},\"findByTenant\":{\"name\":\"findByTenant\",\"async\":true,\"parameters\":[{\"name\":\"tenantId\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"Promise<Issue[]>\",\"isStatic\":false,\"isPublic\":true},\"findGlobal\":{\"name\":\"findGlobal\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<Issue[]>\",\"isStatic\":false,\"isPublic\":true},\"findWithGlobals\":{\"name\":\"findWithGlobals\",\"async\":true,\"parameters\":[{\"name\":\"tenantId\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"Promise<Issue[]>\",\"isStatic\":false,\"isPublic\":true}},\"decoratorConfig\":{},\"extends\":\"SmrtCollection\",\"extendsTypeArg\":\"Issue\",\"exportName\":\"IssueCollection\",\"collectionExportName\":\"IssueCollectionCollection\",\"schema\":{\"tableName\":\"issues\",\"ddl\":\"CREATE TABLE IF NOT EXISTS \\\"issues\\\" (\\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 \\\"repository_id\\\" UUID,\\n \\\"number\\\" INTEGER DEFAULT 0,\\n \\\"node_id\\\" TEXT DEFAULT '',\\n \\\"title\\\" TEXT DEFAULT '',\\n \\\"body\\\" TEXT DEFAULT '',\\n \\\"state\\\" TEXT DEFAULT 'open',\\n \\\"author\\\" TEXT DEFAULT '',\\n \\\"labels\\\" JSON DEFAULT '[]',\\n \\\"assignees\\\" JSON DEFAULT '[]',\\n \\\"comments_count\\\" INTEGER DEFAULT 0,\\n \\\"last_synced_at\\\" TIMESTAMP,\\n \\\"original_body\\\" TEXT DEFAULT '',\\n \\\"synthesis_count\\\" INTEGER DEFAULT 0,\\n \\\"head_ref\\\" TEXT DEFAULT '',\\n \\\"base_ref\\\" TEXT DEFAULT '',\\n \\\"merged\\\" BOOLEAN DEFAULT FALSE,\\n \\\"merged_at\\\" TIMESTAMP,\\n \\\"mergeable\\\" BOOLEAN DEFAULT TRUE,\\n \\\"draft\\\" BOOLEAN DEFAULT FALSE,\\n \\\"additions\\\" INTEGER DEFAULT 0,\\n \\\"deletions\\\" INTEGER DEFAULT 0,\\n \\\"changed_files\\\" INTEGER DEFAULT 0\\n);\",\"columns\":{\"id\":{\"type\":\"UUID\",\"primaryKey\":true,\"referenceKind\":\"id\",\"notNull\":true},\"slug\":{\"type\":\"TEXT\",\"notNull\":true},\"context\":{\"type\":\"TEXT\",\"notNull\":true,\"default\":\"\"},\"_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},\"repository_id\":{\"type\":\"UUID\",\"referenceKind\":\"foreignKey\",\"notNull\":false,\"foreignKey\":{\"table\":\"repositories\",\"column\":\"id\",\"onDelete\":\"NO ACTION\",\"onUpdate\":\"CASCADE\"}},\"number\":{\"type\":\"INTEGER\",\"notNull\":false,\"default\":0},\"node_id\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"\"},\"title\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"\"},\"body\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"\"},\"state\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"open\"},\"author\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"\"},\"labels\":{\"type\":\"JSON\",\"notNull\":false,\"default\":[]},\"assignees\":{\"type\":\"JSON\",\"notNull\":false,\"default\":[]},\"comments_count\":{\"type\":\"INTEGER\",\"notNull\":false,\"default\":0},\"last_synced_at\":{\"type\":\"TIMESTAMP\",\"notNull\":false},\"original_body\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"\"},\"synthesis_count\":{\"type\":\"INTEGER\",\"notNull\":false,\"default\":0},\"head_ref\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"\"},\"base_ref\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"\"},\"merged\":{\"type\":\"BOOLEAN\",\"notNull\":false,\"default\":false},\"merged_at\":{\"type\":\"TIMESTAMP\",\"notNull\":false},\"mergeable\":{\"type\":\"BOOLEAN\",\"notNull\":false,\"default\":true},\"draft\":{\"type\":\"BOOLEAN\",\"notNull\":false,\"default\":false},\"additions\":{\"type\":\"INTEGER\",\"notNull\":false,\"default\":0},\"deletions\":{\"type\":\"INTEGER\",\"notNull\":false,\"default\":0},\"changed_files\":{\"type\":\"INTEGER\",\"notNull\":false,\"default\":0}},\"indexes\":[{\"name\":\"issues_slug_context_meta_type_idx\",\"columns\":[\"tenant_id\",\"slug\",\"context\",\"_meta_type\"],\"unique\":true,\"nullsNotDistinct\":true},{\"name\":\"issues_meta_type_idx\",\"columns\":[\"_meta_type\"]},{\"name\":\"issues_tenant_id_created_at_idx\",\"columns\":[\"tenant_id\",\"created_at\"]},{\"name\":\"issues_repository_id_idx\",\"columns\":[\"repository_id\"]}],\"version\":\"c3d5425b\"},\"importPath\":\"@happyvertical/smrt-projects\"},\"@happyvertical/smrt-projects:ProjectIntegrationAuditCollection\":{\"name\":\"projectintegrationauditcollection\",\"className\":\"ProjectIntegrationAuditCollection\",\"qualifiedName\":\"@happyvertical/smrt-projects:ProjectIntegrationAuditCollection\",\"collection\":\"projectintegrationaudits\",\"filePath\":\"/home/runner/work/smrt/smrt/packages/projects/src/collections/ProjectIntegrationAudits.ts\",\"packageName\":\"@happyvertical/smrt-projects\",\"fields\":{},\"methods\":{\"listForIntegration\":{\"name\":\"listForIntegration\",\"async\":true,\"parameters\":[{\"name\":\"tenantId\",\"type\":\"string\",\"optional\":false},{\"name\":\"integrationId\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"Promise<ProjectIntegrationAudit[]>\",\"isStatic\":false,\"isPublic\":true}},\"decoratorConfig\":{\"tableName\":\"project_integration_audits\",\"api\":false,\"mcp\":false,\"cli\":false},\"extends\":\"SmrtCollection\",\"extendsTypeArg\":\"ProjectIntegrationAudit\",\"exportName\":\"ProjectIntegrationAuditCollection\",\"collectionExportName\":\"ProjectIntegrationAuditCollectionCollection\",\"schema\":{\"tableName\":\"project_integration_audits\",\"ddl\":\"CREATE TABLE IF NOT EXISTS \\\"project_integration_audits\\\" (\\n \\\"id\\\" UUID PRIMARY KEY NOT NULL,\\n \\\"slug\\\" TEXT NOT NULL,\\n \\\"context\\\" TEXT NOT NULL DEFAULT '',\\n \\\"created_at\\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\\"updated_at\\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\\"tenant_id\\\" UUID NOT NULL,\\n \\\"integration_id\\\" UUID NOT NULL,\\n \\\"action\\\" TEXT DEFAULT 'created',\\n \\\"note\\\" TEXT\\n);\",\"columns\":{\"id\":{\"type\":\"UUID\",\"primaryKey\":true,\"referenceKind\":\"id\",\"notNull\":true},\"slug\":{\"type\":\"TEXT\",\"notNull\":true},\"context\":{\"type\":\"TEXT\",\"notNull\":true,\"default\":\"\"},\"created_at\":{\"type\":\"TIMESTAMP\",\"notNull\":true,\"default\":\"current_timestamp\"},\"updated_at\":{\"type\":\"TIMESTAMP\",\"notNull\":true,\"default\":\"current_timestamp\"},\"tenant_id\":{\"type\":\"UUID\",\"referenceKind\":\"tenantId\",\"notNull\":true,\"unique\":false},\"integration_id\":{\"type\":\"UUID\",\"referenceKind\":\"foreignKey\",\"notNull\":true,\"unique\":false,\"foreignKey\":{\"table\":\"project_integrations\",\"column\":\"id\",\"onDelete\":\"NO ACTION\",\"onUpdate\":\"CASCADE\"}},\"action\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"created\"},\"note\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false}},\"indexes\":[{\"name\":\"project_integration_audits_slug_context_idx\",\"columns\":[\"tenant_id\",\"slug\",\"context\"],\"unique\":true},{\"name\":\"project_integration_audits_tenant_id_created_at_idx\",\"columns\":[\"tenant_id\",\"created_at\"]},{\"name\":\"project_integration_audits_integration_id_idx\",\"columns\":[\"integration_id\"]}],\"version\":\"03cc10a2\"},\"importPath\":\"@happyvertical/smrt-projects\"},\"@happyvertical/smrt-projects:ProjectIntegrationCollection\":{\"name\":\"projectintegrationcollection\",\"className\":\"ProjectIntegrationCollection\",\"qualifiedName\":\"@happyvertical/smrt-projects:ProjectIntegrationCollection\",\"collection\":\"projectintegrations\",\"filePath\":\"/home/runner/work/smrt/smrt/packages/projects/src/collections/ProjectIntegrations.ts\",\"packageName\":\"@happyvertical/smrt-projects\",\"fields\":{},\"methods\":{\"provision\":{\"name\":\"provision\",\"async\":true,\"parameters\":[{\"name\":\"input\",\"type\":\"object\",\"optional\":false,\"memberTypes\":[\"string\",\"ProjectIntegrationCapability[]\"]}],\"returnType\":\"Promise<object>\",\"isStatic\":false,\"isPublic\":true},\"rotate\":{\"name\":\"rotate\",\"async\":true,\"parameters\":[{\"name\":\"tenantId\",\"type\":\"string\",\"optional\":false},{\"name\":\"integrationId\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"Promise<object>\",\"isStatic\":false,\"isPublic\":true},\"revoke\":{\"name\":\"revoke\",\"async\":true,\"parameters\":[{\"name\":\"tenantId\",\"type\":\"string\",\"optional\":false},{\"name\":\"integrationId\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"Promise<ProjectIntegration>\",\"isStatic\":false,\"isPublic\":true},\"authenticate\":{\"name\":\"authenticate\",\"async\":true,\"parameters\":[{\"name\":\"credential\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"Promise<ProjectIntegration | null>\",\"isStatic\":false,\"isPublic\":true},\"listForProject\":{\"name\":\"listForProject\",\"async\":true,\"parameters\":[{\"name\":\"tenantId\",\"type\":\"string\",\"optional\":false},{\"name\":\"projectId\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"Promise<ProjectIntegration[]>\",\"isStatic\":false,\"isPublic\":true},\"findActive\":{\"name\":\"findActive\",\"async\":true,\"parameters\":[{\"name\":\"tenantId\",\"type\":\"string\",\"optional\":false},{\"name\":\"integrationId\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"Promise<ProjectIntegration | null>\",\"isStatic\":false,\"isPublic\":true}},\"decoratorConfig\":{\"tableName\":\"project_integrations\"},\"extends\":\"SmrtCollection\",\"extendsTypeArg\":\"ProjectIntegration\",\"exportName\":\"ProjectIntegrationCollection\",\"collectionExportName\":\"ProjectIntegrationCollectionCollection\",\"schema\":{\"tableName\":\"project_integrations\",\"ddl\":\"CREATE TABLE IF NOT EXISTS \\\"project_integrations\\\" (\\n \\\"id\\\" UUID PRIMARY KEY NOT NULL,\\n \\\"slug\\\" TEXT NOT NULL,\\n \\\"context\\\" TEXT NOT NULL DEFAULT '',\\n \\\"created_at\\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\\"updated_at\\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\\"tenant_id\\\" UUID NOT NULL,\\n \\\"project_id\\\" TEXT DEFAULT '',\\n \\\"name\\\" TEXT DEFAULT '',\\n \\\"credential_hash\\\" TEXT DEFAULT '',\\n \\\"capabilities\\\" JSON DEFAULT '[]',\\n \\\"status\\\" TEXT DEFAULT 'active',\\n \\\"revoked_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\"},\"tenant_id\":{\"type\":\"UUID\",\"referenceKind\":\"tenantId\",\"notNull\":true,\"unique\":false},\"project_id\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"\"},\"name\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"\"},\"credential_hash\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"\"},\"capabilities\":{\"type\":\"JSON\",\"notNull\":false,\"unique\":false,\"default\":[]},\"status\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"active\"},\"revoked_at\":{\"type\":\"TIMESTAMP\",\"notNull\":false,\"unique\":false}},\"indexes\":[{\"name\":\"project_integrations_tenant_id_project_id_idx\",\"columns\":[\"tenant_id\",\"project_id\",\"name\"],\"unique\":true,\"nullsNotDistinct\":true},{\"name\":\"project_integrations_slug_context_idx\",\"columns\":[\"slug\",\"context\"]},{\"name\":\"project_integrations_tenant_id_created_at_idx\",\"columns\":[\"tenant_id\",\"created_at\"]}],\"version\":\"bfbaa783\"},\"importPath\":\"@happyvertical/smrt-projects\"},\"@happyvertical/smrt-projects:ProjectCollection\":{\"name\":\"projectcollection\",\"className\":\"ProjectCollection\",\"qualifiedName\":\"@happyvertical/smrt-projects:ProjectCollection\",\"collection\":\"projects\",\"filePath\":\"/home/runner/work/smrt/smrt/packages/projects/src/collections/Projects.ts\",\"packageName\":\"@happyvertical/smrt-projects\",\"fields\":{},\"methods\":{\"findByTitle\":{\"name\":\"findByTitle\",\"async\":true,\"parameters\":[{\"name\":\"title\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"Promise<Project | null>\",\"isStatic\":false,\"isPublic\":true},\"findByOwner\":{\"name\":\"findByOwner\",\"async\":true,\"parameters\":[{\"name\":\"owner\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"Promise<Project[]>\",\"isStatic\":false,\"isPublic\":true},\"findByProvider\":{\"name\":\"findByProvider\",\"async\":true,\"parameters\":[{\"name\":\"providerType\",\"type\":\"ProjectProviderType\",\"optional\":false}],\"returnType\":\"Promise<Project[]>\",\"isStatic\":false,\"isPublic\":true},\"getOrCreate\":{\"name\":\"getOrCreate\",\"async\":true,\"parameters\":[{\"name\":\"projectId\",\"type\":\"string\",\"optional\":false},{\"name\":\"options\",\"type\":\"object\",\"optional\":true,\"memberTypes\":[\"string\",\"ProjectProviderType\",\"Record<string, string>\"]}],\"returnType\":\"Promise<Project>\",\"isStatic\":false,\"isPublic\":true},\"syncAll\":{\"name\":\"syncAll\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":true,\"memberTypes\":[\"boolean\"]}],\"returnType\":\"Promise<Project[]>\",\"isStatic\":false,\"isPublic\":true},\"findWithItemsInStatus\":{\"name\":\"findWithItemsInStatus\",\"async\":true,\"parameters\":[{\"name\":\"status\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"Promise<Project[]>\",\"isStatic\":false,\"isPublic\":true},\"getStatistics\":{\"name\":\"getStatistics\",\"async\":true,\"parameters\":[{\"name\":\"projectId\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"Promise<object>\",\"isStatic\":false,\"isPublic\":true},\"findByTenant\":{\"name\":\"findByTenant\",\"async\":true,\"parameters\":[{\"name\":\"tenantId\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"Promise<Project[]>\",\"isStatic\":false,\"isPublic\":true},\"findGlobal\":{\"name\":\"findGlobal\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<Project[]>\",\"isStatic\":false,\"isPublic\":true},\"findWithGlobals\":{\"name\":\"findWithGlobals\",\"async\":true,\"parameters\":[{\"name\":\"tenantId\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"Promise<Project[]>\",\"isStatic\":false,\"isPublic\":true}},\"decoratorConfig\":{},\"extends\":\"SmrtCollection\",\"extendsTypeArg\":\"Project\",\"exportName\":\"ProjectCollection\",\"collectionExportName\":\"ProjectCollectionCollection\",\"schema\":{\"tableName\":\"projects\",\"ddl\":\"CREATE TABLE IF NOT EXISTS \\\"projects\\\" (\\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 \\\"project_id\\\" TEXT DEFAULT '',\\n \\\"project_number\\\" INTEGER DEFAULT 0,\\n \\\"title\\\" TEXT DEFAULT '',\\n \\\"description\\\" TEXT DEFAULT '',\\n \\\"owner\\\" TEXT DEFAULT '',\\n \\\"url\\\" TEXT DEFAULT '',\\n \\\"provider_type\\\" TEXT DEFAULT 'github',\\n \\\"token_config_key\\\" TEXT DEFAULT 'GITHUB_TOKEN',\\n \\\"statuses\\\" JSON DEFAULT '[]',\\n \\\"fields\\\" JSON DEFAULT '[]',\\n \\\"status_field_id\\\" TEXT DEFAULT '',\\n \\\"status_options\\\" JSON DEFAULT '{}',\\n \\\"last_synced_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\"},\"tenant_id\":{\"type\":\"UUID\",\"referenceKind\":\"tenantId\",\"notNull\":false,\"unique\":false},\"project_id\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"\"},\"project_number\":{\"type\":\"INTEGER\",\"notNull\":false,\"unique\":false,\"default\":0},\"title\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"\"},\"description\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"\"},\"owner\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"\"},\"url\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"\"},\"provider_type\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"github\"},\"token_config_key\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"GITHUB_TOKEN\"},\"statuses\":{\"type\":\"JSON\",\"notNull\":false,\"unique\":false,\"default\":[]},\"fields\":{\"type\":\"JSON\",\"notNull\":false,\"unique\":false,\"default\":[]},\"status_field_id\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"\"},\"status_options\":{\"type\":\"JSON\",\"notNull\":false,\"unique\":false,\"default\":{}},\"last_synced_at\":{\"type\":\"TIMESTAMP\",\"notNull\":false,\"unique\":false}},\"indexes\":[{\"name\":\"projects_slug_context_idx\",\"columns\":[\"tenant_id\",\"slug\",\"context\"],\"unique\":true,\"nullsNotDistinct\":true},{\"name\":\"projects_tenant_id_created_at_idx\",\"columns\":[\"tenant_id\",\"created_at\"]}],\"version\":\"2e8c344a\"},\"importPath\":\"@happyvertical/smrt-projects\"},\"@happyvertical/smrt-projects:PullRequestCollection\":{\"name\":\"pullrequestcollection\",\"className\":\"PullRequestCollection\",\"qualifiedName\":\"@happyvertical/smrt-projects:PullRequestCollection\",\"collection\":\"issues\",\"filePath\":\"/home/runner/work/smrt/smrt/packages/projects/src/collections/PullRequests.ts\",\"packageName\":\"@happyvertical/smrt-projects\",\"fields\":{},\"methods\":{\"discover\":{\"name\":\"discover\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":false,\"memberTypes\":[\"Repository\",\"SearchFilters\"]}],\"returnType\":\"Promise<PullRequest[]>\",\"isStatic\":false,\"isPublic\":true},\"findByRepository\":{\"name\":\"findByRepository\",\"async\":true,\"parameters\":[{\"name\":\"repositoryId\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"Promise<PullRequest[]>\",\"isStatic\":false,\"isPublic\":true},\"findOpen\":{\"name\":\"findOpen\",\"async\":true,\"parameters\":[{\"name\":\"repositoryId\",\"type\":\"string\",\"optional\":true}],\"returnType\":\"Promise<PullRequest[]>\",\"isStatic\":false,\"isPublic\":true},\"findDrafts\":{\"name\":\"findDrafts\",\"async\":true,\"parameters\":[{\"name\":\"repositoryId\",\"type\":\"string\",\"optional\":true}],\"returnType\":\"Promise<PullRequest[]>\",\"isStatic\":false,\"isPublic\":true},\"findReadyToMerge\":{\"name\":\"findReadyToMerge\",\"async\":true,\"parameters\":[{\"name\":\"repositoryId\",\"type\":\"string\",\"optional\":true}],\"returnType\":\"Promise<PullRequest[]>\",\"isStatic\":false,\"isPublic\":true},\"findByBranch\":{\"name\":\"findByBranch\",\"async\":true,\"parameters\":[{\"name\":\"branch\",\"type\":\"string\",\"optional\":false},{\"name\":\"repositoryId\",\"type\":\"string\",\"optional\":true}],\"returnType\":\"Promise<PullRequest[]>\",\"isStatic\":false,\"isPublic\":true},\"findByNumber\":{\"name\":\"findByNumber\",\"async\":true,\"parameters\":[{\"name\":\"repositoryId\",\"type\":\"string\",\"optional\":false},{\"name\":\"number\",\"type\":\"number\",\"optional\":false}],\"returnType\":\"Promise<PullRequest | null>\",\"isStatic\":false,\"isPublic\":true},\"findAIReadyToMerge\":{\"name\":\"findAIReadyToMerge\",\"async\":true,\"parameters\":[{\"name\":\"repositoryId\",\"type\":\"string\",\"optional\":true}],\"returnType\":\"Promise<PullRequest[]>\",\"isStatic\":false,\"isPublic\":true},\"findBySize\":{\"name\":\"findBySize\",\"async\":true,\"parameters\":[{\"name\":\"size\",\"type\":\"'xs' | 's' | 'm' | 'l' | 'xl'\",\"optional\":false,\"unionBranches\":[{\"type\":\"'xs'\"},{\"type\":\"'s'\"},{\"type\":\"'m'\"},{\"type\":\"'l'\"},{\"type\":\"'xl'\"}]},{\"name\":\"repositoryId\",\"type\":\"string\",\"optional\":true}],\"returnType\":\"Promise<PullRequest[]>\",\"isStatic\":false,\"isPublic\":true},\"batchSync\":{\"name\":\"batchSync\",\"async\":true,\"parameters\":[{\"name\":\"repository\",\"type\":\"Repository\",\"optional\":false},{\"name\":\"options\",\"type\":\"object\",\"optional\":true,\"memberTypes\":[\"boolean\"]}],\"returnType\":\"Promise<PullRequest[]>\",\"isStatic\":false,\"isPublic\":true},\"findByTenant\":{\"name\":\"findByTenant\",\"async\":true,\"parameters\":[{\"name\":\"tenantId\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"Promise<PullRequest[]>\",\"isStatic\":false,\"isPublic\":true},\"findGlobal\":{\"name\":\"findGlobal\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<PullRequest[]>\",\"isStatic\":false,\"isPublic\":true},\"findWithGlobals\":{\"name\":\"findWithGlobals\",\"async\":true,\"parameters\":[{\"name\":\"tenantId\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"Promise<PullRequest[]>\",\"isStatic\":false,\"isPublic\":true}},\"decoratorConfig\":{\"tableName\":\"issues\"},\"extends\":\"SmrtCollection\",\"extendsTypeArg\":\"PullRequest\",\"exportName\":\"PullRequestCollection\",\"collectionExportName\":\"PullRequestCollectionCollection\",\"schema\":{\"tableName\":\"issues\",\"ddl\":\"CREATE TABLE IF NOT EXISTS \\\"issues\\\" (\\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 \\\"repository_id\\\" UUID,\\n \\\"number\\\" INTEGER DEFAULT 0,\\n \\\"node_id\\\" TEXT DEFAULT '',\\n \\\"title\\\" TEXT DEFAULT '',\\n \\\"body\\\" TEXT DEFAULT '',\\n \\\"state\\\" TEXT DEFAULT 'open',\\n \\\"author\\\" TEXT DEFAULT '',\\n \\\"labels\\\" JSON DEFAULT '[]',\\n \\\"assignees\\\" JSON DEFAULT '[]',\\n \\\"comments_count\\\" INTEGER DEFAULT 0,\\n \\\"last_synced_at\\\" TIMESTAMP,\\n \\\"original_body\\\" TEXT DEFAULT '',\\n \\\"synthesis_count\\\" INTEGER DEFAULT 0,\\n \\\"head_ref\\\" TEXT DEFAULT '',\\n \\\"base_ref\\\" TEXT DEFAULT '',\\n \\\"merged\\\" BOOLEAN DEFAULT FALSE,\\n \\\"merged_at\\\" TIMESTAMP,\\n \\\"mergeable\\\" BOOLEAN DEFAULT TRUE,\\n \\\"draft\\\" BOOLEAN DEFAULT FALSE,\\n \\\"additions\\\" INTEGER DEFAULT 0,\\n \\\"deletions\\\" INTEGER DEFAULT 0,\\n \\\"changed_files\\\" INTEGER DEFAULT 0\\n);\",\"columns\":{\"id\":{\"type\":\"UUID\",\"primaryKey\":true,\"referenceKind\":\"id\",\"notNull\":true},\"slug\":{\"type\":\"TEXT\",\"notNull\":true},\"context\":{\"type\":\"TEXT\",\"notNull\":true,\"default\":\"\"},\"_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},\"repository_id\":{\"type\":\"UUID\",\"referenceKind\":\"foreignKey\",\"notNull\":false,\"foreignKey\":{\"table\":\"repositories\",\"column\":\"id\",\"onDelete\":\"NO ACTION\",\"onUpdate\":\"CASCADE\"}},\"number\":{\"type\":\"INTEGER\",\"notNull\":false,\"default\":0},\"node_id\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"\"},\"title\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"\"},\"body\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"\"},\"state\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"open\"},\"author\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"\"},\"labels\":{\"type\":\"JSON\",\"notNull\":false,\"default\":[]},\"assignees\":{\"type\":\"JSON\",\"notNull\":false,\"default\":[]},\"comments_count\":{\"type\":\"INTEGER\",\"notNull\":false,\"default\":0},\"last_synced_at\":{\"type\":\"TIMESTAMP\",\"notNull\":false},\"original_body\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"\"},\"synthesis_count\":{\"type\":\"INTEGER\",\"notNull\":false,\"default\":0},\"head_ref\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"\"},\"base_ref\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"\"},\"merged\":{\"type\":\"BOOLEAN\",\"notNull\":false,\"default\":false},\"merged_at\":{\"type\":\"TIMESTAMP\",\"notNull\":false},\"mergeable\":{\"type\":\"BOOLEAN\",\"notNull\":false,\"default\":true},\"draft\":{\"type\":\"BOOLEAN\",\"notNull\":false,\"default\":false},\"additions\":{\"type\":\"INTEGER\",\"notNull\":false,\"default\":0},\"deletions\":{\"type\":\"INTEGER\",\"notNull\":false,\"default\":0},\"changed_files\":{\"type\":\"INTEGER\",\"notNull\":false,\"default\":0}},\"indexes\":[{\"name\":\"issues_slug_context_meta_type_idx\",\"columns\":[\"tenant_id\",\"slug\",\"context\",\"_meta_type\"],\"unique\":true,\"nullsNotDistinct\":true},{\"name\":\"issues_meta_type_idx\",\"columns\":[\"_meta_type\"]},{\"name\":\"issues_tenant_id_created_at_idx\",\"columns\":[\"tenant_id\",\"created_at\"]},{\"name\":\"issues_repository_id_idx\",\"columns\":[\"repository_id\"]}],\"version\":\"3f16e583\"},\"importPath\":\"@happyvertical/smrt-projects\"},\"@happyvertical/smrt-projects:RepositoryCollection\":{\"name\":\"repositorycollection\",\"className\":\"RepositoryCollection\",\"qualifiedName\":\"@happyvertical/smrt-projects:RepositoryCollection\",\"collection\":\"repositories\",\"filePath\":\"/home/runner/work/smrt/smrt/packages/projects/src/collections/Repositories.ts\",\"packageName\":\"@happyvertical/smrt-projects\",\"fields\":{},\"methods\":{\"findByFullName\":{\"name\":\"findByFullName\",\"async\":true,\"parameters\":[{\"name\":\"owner\",\"type\":\"string\",\"optional\":false},{\"name\":\"name\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"Promise<Repository | null>\",\"isStatic\":false,\"isPublic\":true},\"findByOwner\":{\"name\":\"findByOwner\",\"async\":true,\"parameters\":[{\"name\":\"owner\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"Promise<Repository[]>\",\"isStatic\":false,\"isPublic\":true},\"findByProvider\":{\"name\":\"findByProvider\",\"async\":true,\"parameters\":[{\"name\":\"providerType\",\"type\":\"RepositoryProviderType\",\"optional\":false}],\"returnType\":\"Promise<Repository[]>\",\"isStatic\":false,\"isPublic\":true},\"getOrCreate\":{\"name\":\"getOrCreate\",\"async\":true,\"parameters\":[{\"name\":\"owner\",\"type\":\"string\",\"optional\":false},{\"name\":\"name\",\"type\":\"string\",\"optional\":false},{\"name\":\"options\",\"type\":\"object\",\"optional\":true,\"memberTypes\":[\"RepositoryProviderType\",\"string\"]}],\"returnType\":\"Promise<Repository>\",\"isStatic\":false,\"isPublic\":true},\"syncAll\":{\"name\":\"syncAll\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":true,\"memberTypes\":[\"boolean\"]}],\"returnType\":\"Promise<Repository[]>\",\"isStatic\":false,\"isPublic\":true},\"findWithOpenIssues\":{\"name\":\"findWithOpenIssues\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<Repository[]>\",\"isStatic\":false,\"isPublic\":true},\"findByTenant\":{\"name\":\"findByTenant\",\"async\":true,\"parameters\":[{\"name\":\"tenantId\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"Promise<Repository[]>\",\"isStatic\":false,\"isPublic\":true},\"findGlobal\":{\"name\":\"findGlobal\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<Repository[]>\",\"isStatic\":false,\"isPublic\":true},\"findWithGlobals\":{\"name\":\"findWithGlobals\",\"async\":true,\"parameters\":[{\"name\":\"tenantId\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"Promise<Repository[]>\",\"isStatic\":false,\"isPublic\":true}},\"decoratorConfig\":{},\"extends\":\"SmrtCollection\",\"extendsTypeArg\":\"Repository\",\"exportName\":\"RepositoryCollection\",\"collectionExportName\":\"RepositoryCollectionCollection\",\"schema\":{\"tableName\":\"repositories\",\"ddl\":\"CREATE TABLE IF NOT EXISTS \\\"repositories\\\" (\\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 \\\"owner\\\" TEXT DEFAULT '',\\n \\\"name\\\" TEXT DEFAULT '',\\n \\\"full_name\\\" TEXT DEFAULT '',\\n \\\"description\\\" TEXT DEFAULT '',\\n \\\"default_branch\\\" TEXT DEFAULT 'main',\\n \\\"is_private\\\" BOOLEAN DEFAULT FALSE,\\n \\\"provider_type\\\" TEXT DEFAULT 'github',\\n \\\"base_url\\\" TEXT DEFAULT '',\\n \\\"token_config_key\\\" TEXT DEFAULT 'GITHUB_TOKEN',\\n \\\"last_synced_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\"},\"tenant_id\":{\"type\":\"UUID\",\"referenceKind\":\"tenantId\",\"notNull\":false,\"unique\":false},\"owner\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"\"},\"name\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"\"},\"full_name\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"\"},\"description\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"\"},\"default_branch\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"main\"},\"is_private\":{\"type\":\"BOOLEAN\",\"notNull\":false,\"unique\":false,\"default\":false},\"provider_type\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"github\"},\"base_url\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"\"},\"token_config_key\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"GITHUB_TOKEN\"},\"last_synced_at\":{\"type\":\"TIMESTAMP\",\"notNull\":false,\"unique\":false}},\"indexes\":[{\"name\":\"repositories_slug_context_idx\",\"columns\":[\"tenant_id\",\"slug\",\"context\"],\"unique\":true,\"nullsNotDistinct\":true},{\"name\":\"repositories_tenant_id_created_at_idx\",\"columns\":[\"tenant_id\",\"created_at\"]}],\"version\":\"c302a5e5\"},\"importPath\":\"@happyvertical/smrt-projects\"},\"@happyvertical/smrt-projects:Comment\":{\"name\":\"comment\",\"className\":\"Comment\",\"qualifiedName\":\"@happyvertical/smrt-projects:Comment\",\"collection\":\"comments\",\"filePath\":\"/home/runner/work/smrt/smrt/packages/projects/src/models/Comment.ts\",\"packageName\":\"@happyvertical/smrt-projects\",\"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}}},\"issueId\":{\"type\":\"foreignKey\",\"required\":false,\"related\":\"Issue\"},\"commentId\":{\"type\":\"text\",\"required\":false,\"default\":\"\"},\"body\":{\"type\":\"text\",\"required\":false,\"default\":\"\"},\"author\":{\"type\":\"text\",\"required\":false,\"default\":\"\"},\"createdAt\":{\"type\":\"datetime\",\"required\":false},\"updatedAt\":{\"type\":\"datetime\",\"required\":false},\"url\":{\"type\":\"text\",\"required\":false,\"default\":\"\"}},\"methods\":{\"isQuestion\":{\"name\":\"isQuestion\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<boolean>\",\"isStatic\":false,\"isPublic\":true},\"isApproval\":{\"name\":\"isApproval\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<boolean>\",\"isStatic\":false,\"isPublic\":true},\"requestsChanges\":{\"name\":\"requestsChanges\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<boolean>\",\"isStatic\":false,\"isPublic\":true},\"extractActionItems\":{\"name\":\"extractActionItems\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<string[]>\",\"isStatic\":false,\"isPublic\":true},\"summarize\":{\"name\":\"summarize\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<string>\",\"isStatic\":false,\"isPublic\":true},\"getSentiment\":{\"name\":\"getSentiment\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<CommentSentiment>\",\"isStatic\":false,\"isPublic\":true}},\"decoratorConfig\":{\"api\":{\"include\":[\"list\",\"get\"]},\"mcp\":{\"include\":[\"list\",\"get\"]},\"cli\":{\"include\":[\"list\",\"get\"]},\"tenantScoped\":{\"mode\":\"optional\"},\"conflictColumns\":[\"tenant_id\",\"slug\",\"context\"]},\"extends\":\"SmrtObject\",\"exportName\":\"Comment\",\"collectionExportName\":\"CommentCollection\",\"schema\":{\"tableName\":\"comments\",\"ddl\":\"CREATE TABLE IF NOT EXISTS \\\"comments\\\" (\\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 \\\"issue_id\\\" UUID,\\n \\\"comment_id\\\" TEXT DEFAULT '',\\n \\\"body\\\" TEXT DEFAULT '',\\n \\\"author\\\" TEXT DEFAULT '',\\n \\\"url\\\" TEXT DEFAULT ''\\n);\",\"columns\":{\"id\":{\"type\":\"UUID\",\"primaryKey\":true,\"referenceKind\":\"id\",\"notNull\":true},\"slug\":{\"type\":\"TEXT\",\"notNull\":true},\"context\":{\"type\":\"TEXT\",\"notNull\":true,\"default\":\"\"},\"created_at\":{\"type\":\"TIMESTAMP\",\"notNull\":true,\"default\":\"current_timestamp\"},\"updated_at\":{\"type\":\"TIMESTAMP\",\"notNull\":true,\"default\":\"current_timestamp\"},\"tenant_id\":{\"type\":\"UUID\",\"referenceKind\":\"tenantId\",\"notNull\":false,\"unique\":false},\"issue_id\":{\"type\":\"UUID\",\"referenceKind\":\"foreignKey\",\"notNull\":false,\"unique\":false,\"foreignKey\":{\"table\":\"issues\",\"column\":\"id\",\"onDelete\":\"NO ACTION\",\"onUpdate\":\"CASCADE\"}},\"comment_id\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"\"},\"body\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"\"},\"author\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"\"},\"url\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"\"}},\"indexes\":[{\"name\":\"comments_slug_context_idx\",\"columns\":[\"tenant_id\",\"slug\",\"context\"],\"unique\":true,\"nullsNotDistinct\":true},{\"name\":\"comments_tenant_id_created_at_idx\",\"columns\":[\"tenant_id\",\"created_at\"]},{\"name\":\"comments_issue_id_idx\",\"columns\":[\"issue_id\"]}],\"version\":\"ffcc1937\"},\"importPath\":\"@happyvertical/smrt-projects\"},\"@happyvertical/smrt-projects:DevelopmentRequest\":{\"name\":\"developmentrequest\",\"className\":\"DevelopmentRequest\",\"qualifiedName\":\"@happyvertical/smrt-projects:DevelopmentRequest\",\"collection\":\"developmentrequests\",\"filePath\":\"/home/runner/work/smrt/smrt/packages/projects/src/models/DevelopmentRequest.ts\",\"packageName\":\"@happyvertical/smrt-projects\",\"fields\":{\"tenantId\":{\"type\":\"text\",\"required\":true,\"_meta\":{\"sqlType\":\"UUID\",\"__tenancy\":{\"isTenantIdField\":true,\"autoFilter\":true,\"required\":true,\"autoPopulate\":true,\"nullable\":false,\"mode\":\"required\",\"field\":\"tenantId\",\"allowSuperAdminBypass\":false}}},\"projectId\":{\"type\":\"text\",\"required\":false,\"default\":\"\"},\"integrationId\":{\"type\":\"foreignKey\",\"required\":true,\"related\":\"ProjectIntegration\",\"_meta\":{\"required\":true}},\"requesterId\":{\"type\":\"text\",\"required\":false,\"default\":\"\"},\"participantId\":{\"type\":\"text\",\"required\":false,\"default\":\"\"},\"type\":{\"type\":\"text\",\"required\":false,\"default\":\"feature\"},\"description\":{\"type\":\"text\",\"required\":false,\"default\":\"\"},\"evidence\":{\"type\":\"text\",\"required\":false,\"default\":\"[]\"},\"visibility\":{\"type\":\"text\",\"required\":false,\"default\":\"requester\"},\"origin\":{\"type\":\"text\",\"required\":false,\"default\":\"managed-app\"},\"discussion\":{\"type\":\"text\",\"required\":false,\"default\":\"\"},\"status\":{\"type\":\"text\",\"required\":false,\"default\":\"submitted\"}},\"methods\":{\"initialize\":{\"name\":\"initialize\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<this>\",\"isStatic\":false,\"isPublic\":true},\"getEvidence\":{\"name\":\"getEvidence\",\"async\":false,\"parameters\":[],\"returnType\":\"DevelopmentRequestEvidence[]\",\"isStatic\":false,\"isPublic\":true},\"setEvidence\":{\"name\":\"setEvidence\",\"async\":false,\"parameters\":[{\"name\":\"value\",\"type\":\"DevelopmentRequestEvidence[] | string\",\"optional\":false,\"unionBranches\":[{\"type\":\"DevelopmentRequestEvidence[]\"},{\"type\":\"string\"}]}],\"returnType\":\"void\",\"isStatic\":false,\"isPublic\":true}},\"decoratorConfig\":{\"tableName\":\"development_requests\",\"api\":false,\"mcp\":false,\"cli\":false,\"tenantScoped\":{\"mode\":\"required\"},\"conflictColumns\":[\"tenant_id\",\"slug\",\"context\"]},\"extends\":\"SmrtObject\",\"exportName\":\"DevelopmentRequest\",\"collectionExportName\":\"DevelopmentRequestCollection\",\"validationRules\":[{\"field\":\"integrationId\",\"rule\":\"required\",\"fieldType\":\"foreignKey\"}],\"schema\":{\"tableName\":\"development_requests\",\"ddl\":\"CREATE TABLE IF NOT EXISTS \\\"development_requests\\\" (\\n \\\"id\\\" UUID PRIMARY KEY NOT NULL,\\n \\\"slug\\\" TEXT NOT NULL,\\n \\\"context\\\" TEXT NOT NULL DEFAULT '',\\n \\\"created_at\\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\\"updated_at\\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\\"tenant_id\\\" UUID NOT NULL,\\n \\\"project_id\\\" TEXT DEFAULT '',\\n \\\"integration_id\\\" UUID NOT NULL,\\n \\\"requester_id\\\" TEXT DEFAULT '',\\n \\\"participant_id\\\" TEXT DEFAULT '',\\n \\\"type\\\" TEXT DEFAULT 'feature',\\n \\\"description\\\" TEXT DEFAULT '',\\n \\\"evidence\\\" TEXT DEFAULT '[]',\\n \\\"visibility\\\" TEXT DEFAULT 'requester',\\n \\\"origin\\\" TEXT DEFAULT 'managed-app',\\n \\\"discussion\\\" TEXT DEFAULT '',\\n \\\"status\\\" TEXT DEFAULT 'submitted'\\n);\",\"columns\":{\"id\":{\"type\":\"UUID\",\"primaryKey\":true,\"referenceKind\":\"id\",\"notNull\":true},\"slug\":{\"type\":\"TEXT\",\"notNull\":true},\"context\":{\"type\":\"TEXT\",\"notNull\":true,\"default\":\"\"},\"created_at\":{\"type\":\"TIMESTAMP\",\"notNull\":true,\"default\":\"current_timestamp\"},\"updated_at\":{\"type\":\"TIMESTAMP\",\"notNull\":true,\"default\":\"current_timestamp\"},\"tenant_id\":{\"type\":\"UUID\",\"referenceKind\":\"tenantId\",\"notNull\":true,\"unique\":false},\"project_id\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"\"},\"integration_id\":{\"type\":\"UUID\",\"referenceKind\":\"foreignKey\",\"notNull\":true,\"unique\":false,\"foreignKey\":{\"table\":\"project_integrations\",\"column\":\"id\",\"onDelete\":\"NO ACTION\",\"onUpdate\":\"CASCADE\"}},\"requester_id\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"\"},\"participant_id\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"\"},\"type\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"feature\"},\"description\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"\"},\"evidence\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"[]\"},\"visibility\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"requester\"},\"origin\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"managed-app\"},\"discussion\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"\"},\"status\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"submitted\"}},\"indexes\":[{\"name\":\"development_requests_slug_context_idx\",\"columns\":[\"tenant_id\",\"slug\",\"context\"],\"unique\":true},{\"name\":\"development_requests_tenant_id_created_at_idx\",\"columns\":[\"tenant_id\",\"created_at\"]},{\"name\":\"development_requests_integration_id_idx\",\"columns\":[\"integration_id\"]}],\"version\":\"4bdaa6ff\"},\"importPath\":\"@happyvertical/smrt-projects\"},\"@happyvertical/smrt-projects:DevelopmentRequestHistory\":{\"name\":\"developmentrequesthistory\",\"className\":\"DevelopmentRequestHistory\",\"qualifiedName\":\"@happyvertical/smrt-projects:DevelopmentRequestHistory\",\"collection\":\"developmentrequesthistories\",\"filePath\":\"/home/runner/work/smrt/smrt/packages/projects/src/models/DevelopmentRequestHistory.ts\",\"packageName\":\"@happyvertical/smrt-projects\",\"fields\":{\"tenantId\":{\"type\":\"text\",\"required\":true,\"_meta\":{\"sqlType\":\"UUID\",\"__tenancy\":{\"isTenantIdField\":true,\"autoFilter\":true,\"required\":true,\"autoPopulate\":true,\"nullable\":false,\"mode\":\"required\",\"field\":\"tenantId\",\"allowSuperAdminBypass\":false}}},\"requestId\":{\"type\":\"foreignKey\",\"required\":true,\"related\":\"DevelopmentRequest\",\"_meta\":{\"required\":true}},\"fromStatus\":{\"type\":\"text\",\"required\":false,\"default\":\"\"},\"toStatus\":{\"type\":\"text\",\"required\":false,\"default\":\"submitted\"},\"actorType\":{\"type\":\"text\",\"required\":false,\"default\":\"system\"},\"actorId\":{\"type\":\"text\",\"required\":false,\"default\":\"\"},\"note\":{\"type\":\"text\",\"required\":false}},\"methods\":{},\"decoratorConfig\":{\"tableName\":\"development_request_histories\",\"api\":false,\"mcp\":false,\"cli\":false,\"tenantScoped\":{\"mode\":\"required\"},\"conflictColumns\":[\"tenant_id\",\"slug\",\"context\"]},\"extends\":\"SmrtObject\",\"exportName\":\"DevelopmentRequestHistory\",\"collectionExportName\":\"DevelopmentRequestHistoryCollection\",\"validationRules\":[{\"field\":\"requestId\",\"rule\":\"required\",\"fieldType\":\"foreignKey\"}],\"schema\":{\"tableName\":\"development_request_histories\",\"ddl\":\"CREATE TABLE IF NOT EXISTS \\\"development_request_histories\\\" (\\n \\\"id\\\" UUID PRIMARY KEY NOT NULL,\\n \\\"slug\\\" TEXT NOT NULL,\\n \\\"context\\\" TEXT NOT NULL DEFAULT '',\\n \\\"created_at\\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\\"updated_at\\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\\"tenant_id\\\" UUID NOT NULL,\\n \\\"request_id\\\" UUID NOT NULL,\\n \\\"from_status\\\" TEXT DEFAULT '',\\n \\\"to_status\\\" TEXT DEFAULT 'submitted',\\n \\\"actor_type\\\" TEXT DEFAULT 'system',\\n \\\"actor_id\\\" TEXT DEFAULT '',\\n \\\"note\\\" TEXT\\n);\",\"columns\":{\"id\":{\"type\":\"UUID\",\"primaryKey\":true,\"referenceKind\":\"id\",\"notNull\":true},\"slug\":{\"type\":\"TEXT\",\"notNull\":true},\"context\":{\"type\":\"TEXT\",\"notNull\":true,\"default\":\"\"},\"created_at\":{\"type\":\"TIMESTAMP\",\"notNull\":true,\"default\":\"current_timestamp\"},\"updated_at\":{\"type\":\"TIMESTAMP\",\"notNull\":true,\"default\":\"current_timestamp\"},\"tenant_id\":{\"type\":\"UUID\",\"referenceKind\":\"tenantId\",\"notNull\":true,\"unique\":false},\"request_id\":{\"type\":\"UUID\",\"referenceKind\":\"foreignKey\",\"notNull\":true,\"unique\":false,\"foreignKey\":{\"table\":\"development_requests\",\"column\":\"id\",\"onDelete\":\"NO ACTION\",\"onUpdate\":\"CASCADE\"}},\"from_status\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"\"},\"to_status\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"submitted\"},\"actor_type\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"system\"},\"actor_id\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"\"},\"note\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false}},\"indexes\":[{\"name\":\"development_request_histories_slug_context_idx\",\"columns\":[\"tenant_id\",\"slug\",\"context\"],\"unique\":true},{\"name\":\"development_request_histories_tenant_id_created_at_idx\",\"columns\":[\"tenant_id\",\"created_at\"]},{\"name\":\"development_request_histories_request_id_idx\",\"columns\":[\"request_id\"]}],\"version\":\"67389678\"},\"importPath\":\"@happyvertical/smrt-projects\"},\"@happyvertical/smrt-projects:Issue\":{\"name\":\"issue\",\"className\":\"Issue\",\"qualifiedName\":\"@happyvertical/smrt-projects:Issue\",\"collection\":\"issues\",\"filePath\":\"/home/runner/work/smrt/smrt/packages/projects/src/models/Issue.ts\",\"packageName\":\"@happyvertical/smrt-projects\",\"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}}},\"repositoryId\":{\"type\":\"foreignKey\",\"required\":true,\"related\":\"Repository\",\"_meta\":{\"required\":true}},\"number\":{\"type\":\"integer\",\"required\":false,\"default\":0},\"nodeId\":{\"type\":\"text\",\"required\":false,\"default\":\"\"},\"title\":{\"type\":\"text\",\"required\":false,\"default\":\"\"},\"body\":{\"type\":\"text\",\"required\":false,\"default\":\"\"},\"state\":{\"type\":\"text\",\"required\":false,\"default\":\"open\"},\"author\":{\"type\":\"text\",\"required\":false,\"default\":\"\"},\"labels\":{\"type\":\"json\",\"required\":false,\"default\":[]},\"assignees\":{\"type\":\"json\",\"required\":false,\"default\":[]},\"commentsCount\":{\"type\":\"integer\",\"required\":false,\"default\":0},\"lastSyncedAt\":{\"type\":\"datetime\",\"required\":false},\"originalBody\":{\"type\":\"text\",\"required\":false,\"default\":\"\"},\"synthesisCount\":{\"type\":\"integer\",\"required\":false,\"default\":0}},\"methods\":{\"getRepository\":{\"name\":\"getRepository\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<Repository>\",\"isStatic\":false,\"isPublic\":true},\"getClient\":{\"name\":\"getClient\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<IRepository>\",\"isStatic\":false,\"isPublic\":true},\"clearCache\":{\"name\":\"clearCache\",\"async\":false,\"parameters\":[],\"returnType\":\"void\",\"isStatic\":false,\"isPublic\":true},\"sync\":{\"name\":\"sync\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"SyncOptions\",\"optional\":true}],\"returnType\":\"Promise<this>\",\"isStatic\":false,\"isPublic\":true},\"getComments\":{\"name\":\"getComments\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<Comment[]>\",\"isStatic\":false,\"isPublic\":true},\"addComment\":{\"name\":\"addComment\",\"async\":true,\"parameters\":[{\"name\":\"body\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"Promise<Comment>\",\"isStatic\":false,\"isPublic\":true},\"incorporateFeedback\":{\"name\":\"incorporateFeedback\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"IncorporateFeedbackOptions\",\"optional\":true}],\"returnType\":\"Promise<IncorporateFeedbackResult>\",\"isStatic\":false,\"isPublic\":true},\"rollback\":{\"name\":\"rollback\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<object>\",\"isStatic\":false,\"isPublic\":true},\"needsReview\":{\"name\":\"needsReview\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<boolean>\",\"isStatic\":false,\"isPublic\":true},\"isBugReport\":{\"name\":\"isBugReport\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<boolean>\",\"isStatic\":false,\"isPublic\":true},\"isFeatureRequest\":{\"name\":\"isFeatureRequest\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<boolean>\",\"isStatic\":false,\"isPublic\":true},\"suggestLabels\":{\"name\":\"suggestLabels\",\"async\":true,\"parameters\":[{\"name\":\"vocabulary\",\"type\":\"IssueLabelVocabulary\",\"optional\":true}],\"returnType\":\"Promise<string[]>\",\"isStatic\":false,\"isPublic\":true},\"close\":{\"name\":\"close\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<void>\",\"isStatic\":false,\"isPublic\":true},\"addLabels\":{\"name\":\"addLabels\",\"async\":true,\"parameters\":[{\"name\":\"labels\",\"type\":\"string[]\",\"optional\":false}],\"returnType\":\"Promise<void>\",\"isStatic\":false,\"isPublic\":true},\"removeLabel\":{\"name\":\"removeLabel\",\"async\":true,\"parameters\":[{\"name\":\"label\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"Promise<void>\",\"isStatic\":false,\"isPublic\":true},\"assign\":{\"name\":\"assign\",\"async\":true,\"parameters\":[{\"name\":\"assignees\",\"type\":\"string[]\",\"optional\":false}],\"returnType\":\"Promise<void>\",\"isStatic\":false,\"isPublic\":true},\"getUrl\":{\"name\":\"getUrl\",\"async\":false,\"parameters\":[],\"returnType\":\"string\",\"isStatic\":false,\"isPublic\":true}},\"decoratorConfig\":{\"tableStrategy\":\"sti\",\"api\":{\"include\":[\"list\",\"get\",\"create\",\"update\"]},\"mcp\":{\"include\":[\"list\",\"get\",\"sync\",\"incorporateFeedback\"]},\"cli\":{\"include\":[\"list\",\"get\",\"sync\",\"incorporateFeedback\",\"rollback\"],\"skipApiCheck\":true},\"tenantScoped\":{\"mode\":\"optional\"},\"conflictColumns\":[\"tenant_id\",\"slug\",\"context\",\"_meta_type\"]},\"extends\":\"SmrtObject\",\"exportName\":\"Issue\",\"collectionExportName\":\"IssueCollection\",\"validationRules\":[{\"field\":\"repositoryId\",\"rule\":\"required\",\"fieldType\":\"foreignKey\"}],\"schema\":{\"tableName\":\"issues\",\"ddl\":\"CREATE TABLE IF NOT EXISTS \\\"issues\\\" (\\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 \\\"repository_id\\\" UUID,\\n \\\"number\\\" INTEGER DEFAULT 0,\\n \\\"node_id\\\" TEXT DEFAULT '',\\n \\\"title\\\" TEXT DEFAULT '',\\n \\\"body\\\" TEXT DEFAULT '',\\n \\\"state\\\" TEXT DEFAULT 'open',\\n \\\"author\\\" TEXT DEFAULT '',\\n \\\"labels\\\" JSON DEFAULT '[]',\\n \\\"assignees\\\" JSON DEFAULT '[]',\\n \\\"comments_count\\\" INTEGER DEFAULT 0,\\n \\\"last_synced_at\\\" TIMESTAMP,\\n \\\"original_body\\\" TEXT DEFAULT '',\\n \\\"synthesis_count\\\" INTEGER DEFAULT 0,\\n \\\"head_ref\\\" TEXT DEFAULT '',\\n \\\"base_ref\\\" TEXT DEFAULT '',\\n \\\"merged\\\" BOOLEAN DEFAULT FALSE,\\n \\\"merged_at\\\" TIMESTAMP,\\n \\\"mergeable\\\" BOOLEAN DEFAULT TRUE,\\n \\\"draft\\\" BOOLEAN DEFAULT FALSE,\\n \\\"additions\\\" INTEGER DEFAULT 0,\\n \\\"deletions\\\" INTEGER DEFAULT 0,\\n \\\"changed_files\\\" INTEGER DEFAULT 0\\n);\",\"columns\":{\"id\":{\"type\":\"UUID\",\"primaryKey\":true,\"referenceKind\":\"id\",\"notNull\":true},\"slug\":{\"type\":\"TEXT\",\"notNull\":true},\"context\":{\"type\":\"TEXT\",\"notNull\":true,\"default\":\"\"},\"_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},\"repository_id\":{\"type\":\"UUID\",\"referenceKind\":\"foreignKey\",\"notNull\":false,\"foreignKey\":{\"table\":\"repositories\",\"column\":\"id\",\"onDelete\":\"NO ACTION\",\"onUpdate\":\"CASCADE\"}},\"number\":{\"type\":\"INTEGER\",\"notNull\":false,\"default\":0},\"node_id\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"\"},\"title\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"\"},\"body\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"\"},\"state\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"open\"},\"author\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"\"},\"labels\":{\"type\":\"JSON\",\"notNull\":false,\"default\":[]},\"assignees\":{\"type\":\"JSON\",\"notNull\":false,\"default\":[]},\"comments_count\":{\"type\":\"INTEGER\",\"notNull\":false,\"default\":0},\"last_synced_at\":{\"type\":\"TIMESTAMP\",\"notNull\":false},\"original_body\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"\"},\"synthesis_count\":{\"type\":\"INTEGER\",\"notNull\":false,\"default\":0},\"head_ref\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"\"},\"base_ref\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"\"},\"merged\":{\"type\":\"BOOLEAN\",\"notNull\":false,\"default\":false},\"merged_at\":{\"type\":\"TIMESTAMP\",\"notNull\":false},\"mergeable\":{\"type\":\"BOOLEAN\",\"notNull\":false,\"default\":true},\"draft\":{\"type\":\"BOOLEAN\",\"notNull\":false,\"default\":false},\"additions\":{\"type\":\"INTEGER\",\"notNull\":false,\"default\":0},\"deletions\":{\"type\":\"INTEGER\",\"notNull\":false,\"default\":0},\"changed_files\":{\"type\":\"INTEGER\",\"notNull\":false,\"default\":0}},\"indexes\":[{\"name\":\"issues_slug_context_meta_type_idx\",\"columns\":[\"tenant_id\",\"slug\",\"context\",\"_meta_type\"],\"unique\":true,\"nullsNotDistinct\":true},{\"name\":\"issues_meta_type_idx\",\"columns\":[\"_meta_type\"]},{\"name\":\"issues_tenant_id_created_at_idx\",\"columns\":[\"tenant_id\",\"created_at\"]},{\"name\":\"issues_repository_id_idx\",\"columns\":[\"repository_id\"]}],\"version\":\"c3d5425b\"},\"importPath\":\"@happyvertical/smrt-projects\"},\"@happyvertical/smrt-projects:Label\":{\"name\":\"label\",\"className\":\"Label\",\"qualifiedName\":\"@happyvertical/smrt-projects:Label\",\"collection\":\"labels\",\"filePath\":\"/home/runner/work/smrt/smrt/packages/projects/src/models/Label.ts\",\"packageName\":\"@happyvertical/smrt-projects\",\"fields\":{\"repositoryId\":{\"type\":\"foreignKey\",\"required\":false,\"related\":\"Repository\"},\"name\":{\"type\":\"text\",\"required\":false,\"default\":\"\"},\"color\":{\"type\":\"text\",\"required\":false,\"default\":\"\"},\"description\":{\"type\":\"text\",\"required\":false,\"default\":\"\"}},\"methods\":{\"isTypeLabel\":{\"name\":\"isTypeLabel\",\"async\":false,\"parameters\":[],\"returnType\":\"boolean\",\"isStatic\":false,\"isPublic\":true},\"isPriorityLabel\":{\"name\":\"isPriorityLabel\",\"async\":false,\"parameters\":[],\"returnType\":\"boolean\",\"isStatic\":false,\"isPublic\":true},\"isStatusLabel\":{\"name\":\"isStatusLabel\",\"async\":false,\"parameters\":[],\"returnType\":\"boolean\",\"isStatic\":false,\"isPublic\":true},\"getCategory\":{\"name\":\"getCategory\",\"async\":false,\"parameters\":[],\"returnType\":\"'type' | 'priority' | 'status' | 'area' | 'other'\",\"isStatic\":false,\"isPublic\":true},\"getPriorityLevel\":{\"name\":\"getPriorityLevel\",\"async\":false,\"parameters\":[],\"returnType\":\"number | null\",\"isStatic\":false,\"isPublic\":true},\"getHexColor\":{\"name\":\"getHexColor\",\"async\":false,\"parameters\":[],\"returnType\":\"string\",\"isStatic\":false,\"isPublic\":true},\"createInRepository\":{\"name\":\"createInRepository\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<void>\",\"isStatic\":false,\"isPublic\":true},\"updateInRepository\":{\"name\":\"updateInRepository\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<void>\",\"isStatic\":false,\"isPublic\":true}},\"decoratorConfig\":{\"api\":{\"include\":[\"list\",\"get\",\"create\",\"update\",\"delete\"]},\"mcp\":{\"include\":[\"list\",\"get\",\"create\"]},\"cli\":{\"include\":[\"list\",\"get\",\"create\",\"update\",\"delete\"]}},\"extends\":\"SmrtObject\",\"exportName\":\"Label\",\"collectionExportName\":\"LabelCollection\",\"schema\":{\"tableName\":\"labels\",\"ddl\":\"CREATE TABLE IF NOT EXISTS \\\"labels\\\" (\\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 \\\"repository_id\\\" UUID,\\n \\\"name\\\" TEXT DEFAULT '',\\n \\\"color\\\" TEXT DEFAULT '',\\n \\\"description\\\" TEXT DEFAULT ''\\n);\",\"columns\":{\"id\":{\"type\":\"UUID\",\"primaryKey\":true,\"referenceKind\":\"id\",\"notNull\":true},\"slug\":{\"type\":\"TEXT\",\"notNull\":true},\"context\":{\"type\":\"TEXT\",\"notNull\":true,\"default\":\"\"},\"created_at\":{\"type\":\"TIMESTAMP\",\"notNull\":true,\"default\":\"current_timestamp\"},\"updated_at\":{\"type\":\"TIMESTAMP\",\"notNull\":true,\"default\":\"current_timestamp\"},\"repository_id\":{\"type\":\"UUID\",\"referenceKind\":\"foreignKey\",\"notNull\":false,\"unique\":false,\"foreignKey\":{\"table\":\"repositories\",\"column\":\"id\",\"onDelete\":\"NO ACTION\",\"onUpdate\":\"CASCADE\"}},\"name\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"\"},\"color\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"\"},\"description\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"\"}},\"indexes\":[{\"name\":\"labels_slug_context_idx\",\"columns\":[\"slug\",\"context\"],\"unique\":true},{\"name\":\"labels_created_at_idx\",\"columns\":[\"created_at\"]},{\"name\":\"labels_repository_id_idx\",\"columns\":[\"repository_id\"]}],\"version\":\"d1e8d236\"},\"importPath\":\"@happyvertical/smrt-projects\"},\"@happyvertical/smrt-projects:Project\":{\"name\":\"project\",\"className\":\"Project\",\"qualifiedName\":\"@happyvertical/smrt-projects:Project\",\"collection\":\"projects\",\"filePath\":\"/home/runner/work/smrt/smrt/packages/projects/src/models/Project.ts\",\"packageName\":\"@happyvertical/smrt-projects\",\"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}}},\"projectId\":{\"type\":\"text\",\"required\":false,\"default\":\"\"},\"projectNumber\":{\"type\":\"integer\",\"required\":false,\"default\":0},\"title\":{\"type\":\"text\",\"required\":false,\"default\":\"\"},\"description\":{\"type\":\"text\",\"required\":false,\"default\":\"\"},\"owner\":{\"type\":\"text\",\"required\":false,\"default\":\"\"},\"url\":{\"type\":\"text\",\"required\":false,\"default\":\"\"},\"providerType\":{\"type\":\"text\",\"required\":false,\"default\":\"github\"},\"tokenConfigKey\":{\"type\":\"text\",\"required\":false,\"default\":\"GITHUB_TOKEN\"},\"statuses\":{\"type\":\"json\",\"required\":false,\"default\":[]},\"fields\":{\"type\":\"json\",\"required\":false,\"default\":[]},\"statusFieldId\":{\"type\":\"text\",\"required\":false,\"default\":\"\"},\"statusOptions\":{\"type\":\"json\",\"required\":false,\"default\":{}},\"lastSyncedAt\":{\"type\":\"datetime\",\"required\":false}},\"methods\":{\"getClient\":{\"name\":\"getClient\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<IProject>\",\"isStatic\":false,\"isPublic\":true},\"clearClient\":{\"name\":\"clearClient\",\"async\":false,\"parameters\":[],\"returnType\":\"void\",\"isStatic\":false,\"isPublic\":true},\"sync\":{\"name\":\"sync\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"SyncOptions\",\"optional\":true}],\"returnType\":\"Promise<this>\",\"isStatic\":false,\"isPublic\":true},\"addItem\":{\"name\":\"addItem\",\"async\":true,\"parameters\":[{\"name\":\"item\",\"type\":\"Issue | PullRequest\",\"optional\":false,\"unionBranches\":[{\"type\":\"Issue\"},{\"type\":\"PullRequest\"}]}],\"returnType\":\"Promise<ProjectItem>\",\"isStatic\":false,\"isPublic\":true},\"removeItem\":{\"name\":\"removeItem\",\"async\":true,\"parameters\":[{\"name\":\"itemId\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"Promise<void>\",\"isStatic\":false,\"isPublic\":true},\"getItem\":{\"name\":\"getItem\",\"async\":true,\"parameters\":[{\"name\":\"itemId\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"Promise<ProjectItem | null>\",\"isStatic\":false,\"isPublic\":true},\"listItems\":{\"name\":\"listItems\",\"async\":true,\"parameters\":[{\"name\":\"filters\",\"type\":\"ItemFilters\",\"optional\":true}],\"returnType\":\"Promise<ProjectItem[]>\",\"isStatic\":false,\"isPublic\":true},\"updateItemStatus\":{\"name\":\"updateItemStatus\",\"async\":true,\"parameters\":[{\"name\":\"itemId\",\"type\":\"string\",\"optional\":false},{\"name\":\"status\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"Promise<void>\",\"isStatic\":false,\"isPublic\":true},\"updateItemField\":{\"name\":\"updateItemField\",\"async\":true,\"parameters\":[{\"name\":\"itemId\",\"type\":\"string\",\"optional\":false},{\"name\":\"fieldId\",\"type\":\"string\",\"optional\":false},{\"name\":\"value\",\"type\":\"unknown\",\"optional\":false}],\"returnType\":\"Promise<void>\",\"isStatic\":false,\"isPublic\":true},\"getStatuses\":{\"name\":\"getStatuses\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<ProjectStatus[]>\",\"isStatic\":false,\"isPublic\":true},\"getFields\":{\"name\":\"getFields\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<ProjectField[]>\",\"isStatic\":false,\"isPublic\":true},\"getItemsByStatus\":{\"name\":\"getItemsByStatus\",\"async\":true,\"parameters\":[{\"name\":\"status\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"Promise<ProjectItem[]>\",\"isStatic\":false,\"isPublic\":true},\"moveItem\":{\"name\":\"moveItem\",\"async\":true,\"parameters\":[{\"name\":\"item\",\"type\":\"Issue | PullRequest\",\"optional\":false,\"unionBranches\":[{\"type\":\"Issue\"},{\"type\":\"PullRequest\"}]},{\"name\":\"status\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"Promise<void>\",\"isStatic\":false,\"isPublic\":true},\"analyzeHealth\":{\"name\":\"analyzeHealth\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<string>\",\"isStatic\":false,\"isPublic\":true},\"getByTitle\":{\"name\":\"getByTitle\",\"async\":true,\"parameters\":[{\"name\":\"title\",\"type\":\"string\",\"optional\":false},{\"name\":\"options\",\"type\":\"SmrtObjectOptions\",\"optional\":true}],\"returnType\":\"Promise<Project | null>\",\"isStatic\":true,\"isPublic\":true}},\"decoratorConfig\":{\"api\":{\"include\":[\"list\",\"get\",\"create\",\"update\"]},\"mcp\":{\"include\":[\"list\",\"get\",\"sync\",\"addItem\",\"updateItemStatus\"]},\"cli\":{\"include\":[\"list\",\"get\",\"sync\",\"addItem\",\"updateItemStatus\",\"listItems\"],\"skipApiCheck\":true},\"tenantScoped\":{\"mode\":\"optional\"},\"conflictColumns\":[\"tenant_id\",\"slug\",\"context\"]},\"extends\":\"SmrtObject\",\"exportName\":\"Project\",\"collectionExportName\":\"ProjectCollection\",\"schema\":{\"tableName\":\"projects\",\"ddl\":\"CREATE TABLE IF NOT EXISTS \\\"projects\\\" (\\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 \\\"project_id\\\" TEXT DEFAULT '',\\n \\\"project_number\\\" INTEGER DEFAULT 0,\\n \\\"title\\\" TEXT DEFAULT '',\\n \\\"description\\\" TEXT DEFAULT '',\\n \\\"owner\\\" TEXT DEFAULT '',\\n \\\"url\\\" TEXT DEFAULT '',\\n \\\"provider_type\\\" TEXT DEFAULT 'github',\\n \\\"token_config_key\\\" TEXT DEFAULT 'GITHUB_TOKEN',\\n \\\"statuses\\\" JSON DEFAULT '[]',\\n \\\"fields\\\" JSON DEFAULT '[]',\\n \\\"status_field_id\\\" TEXT DEFAULT '',\\n \\\"status_options\\\" JSON DEFAULT '{}',\\n \\\"last_synced_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\"},\"tenant_id\":{\"type\":\"UUID\",\"referenceKind\":\"tenantId\",\"notNull\":false,\"unique\":false},\"project_id\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"\"},\"project_number\":{\"type\":\"INTEGER\",\"notNull\":false,\"unique\":false,\"default\":0},\"title\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"\"},\"description\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"\"},\"owner\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"\"},\"url\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"\"},\"provider_type\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"github\"},\"token_config_key\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"GITHUB_TOKEN\"},\"statuses\":{\"type\":\"JSON\",\"notNull\":false,\"unique\":false,\"default\":[]},\"fields\":{\"type\":\"JSON\",\"notNull\":false,\"unique\":false,\"default\":[]},\"status_field_id\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"\"},\"status_options\":{\"type\":\"JSON\",\"notNull\":false,\"unique\":false,\"default\":{}},\"last_synced_at\":{\"type\":\"TIMESTAMP\",\"notNull\":false,\"unique\":false}},\"indexes\":[{\"name\":\"projects_slug_context_idx\",\"columns\":[\"tenant_id\",\"slug\",\"context\"],\"unique\":true,\"nullsNotDistinct\":true},{\"name\":\"projects_tenant_id_created_at_idx\",\"columns\":[\"tenant_id\",\"created_at\"]}],\"version\":\"2e8c344a\"},\"importPath\":\"@happyvertical/smrt-projects\"},\"@happyvertical/smrt-projects:ProjectIntegration\":{\"name\":\"projectintegration\",\"className\":\"ProjectIntegration\",\"qualifiedName\":\"@happyvertical/smrt-projects:ProjectIntegration\",\"collection\":\"projectintegrations\",\"filePath\":\"/home/runner/work/smrt/smrt/packages/projects/src/models/ProjectIntegration.ts\",\"packageName\":\"@happyvertical/smrt-projects\",\"fields\":{\"tenantId\":{\"type\":\"text\",\"required\":true,\"_meta\":{\"sqlType\":\"UUID\",\"__tenancy\":{\"isTenantIdField\":true,\"autoFilter\":true,\"required\":true,\"autoPopulate\":true,\"nullable\":false,\"mode\":\"required\",\"field\":\"tenantId\",\"allowSuperAdminBypass\":false}}},\"projectId\":{\"type\":\"text\",\"required\":false,\"default\":\"\"},\"name\":{\"type\":\"text\",\"required\":false,\"default\":\"\"},\"credentialHash\":{\"type\":\"text\",\"required\":false,\"default\":\"\",\"_meta\":{\"sensitive\":true},\"sensitive\":true},\"capabilities\":{\"type\":\"json\",\"required\":false,\"default\":[]},\"status\":{\"type\":\"text\",\"required\":false,\"default\":\"active\"},\"revokedAt\":{\"type\":\"datetime\",\"required\":false}},\"methods\":{\"hasCapability\":{\"name\":\"hasCapability\",\"async\":false,\"parameters\":[{\"name\":\"capability\",\"type\":\"ProjectIntegrationCapability\",\"optional\":false}],\"returnType\":\"boolean\",\"isStatic\":false,\"isPublic\":true},\"isActive\":{\"name\":\"isActive\",\"async\":false,\"parameters\":[],\"returnType\":\"boolean\",\"isStatic\":false,\"isPublic\":true}},\"decoratorConfig\":{\"tableName\":\"project_integrations\",\"conflictColumns\":[\"tenant_id\",\"project_id\",\"name\"],\"api\":{\"include\":[\"list\",\"get\"]},\"mcp\":{\"include\":[\"list\",\"get\"]},\"cli\":{\"include\":[\"list\",\"get\"]},\"tenantScoped\":{\"mode\":\"required\"}},\"extends\":\"SmrtObject\",\"exportName\":\"ProjectIntegration\",\"collectionExportName\":\"ProjectIntegrationCollection\",\"validationRules\":[],\"schema\":{\"tableName\":\"project_integrations\",\"ddl\":\"CREATE TABLE IF NOT EXISTS \\\"project_integrations\\\" (\\n \\\"id\\\" UUID PRIMARY KEY NOT NULL,\\n \\\"slug\\\" TEXT NOT NULL,\\n \\\"context\\\" TEXT NOT NULL DEFAULT '',\\n \\\"created_at\\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\\"updated_at\\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\\"tenant_id\\\" UUID NOT NULL,\\n \\\"project_id\\\" TEXT DEFAULT '',\\n \\\"name\\\" TEXT DEFAULT '',\\n \\\"credential_hash\\\" TEXT DEFAULT '',\\n \\\"capabilities\\\" JSON DEFAULT '[]',\\n \\\"status\\\" TEXT DEFAULT 'active',\\n \\\"revoked_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\"},\"tenant_id\":{\"type\":\"UUID\",\"referenceKind\":\"tenantId\",\"notNull\":true,\"unique\":false},\"project_id\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"\"},\"name\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"\"},\"credential_hash\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"\"},\"capabilities\":{\"type\":\"JSON\",\"notNull\":false,\"unique\":false,\"default\":[]},\"status\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"active\"},\"revoked_at\":{\"type\":\"TIMESTAMP\",\"notNull\":false,\"unique\":false}},\"indexes\":[{\"name\":\"project_integrations_tenant_id_project_id_idx\",\"columns\":[\"tenant_id\",\"project_id\",\"name\"],\"unique\":true,\"nullsNotDistinct\":true},{\"name\":\"project_integrations_slug_context_idx\",\"columns\":[\"slug\",\"context\"]},{\"name\":\"project_integrations_tenant_id_created_at_idx\",\"columns\":[\"tenant_id\",\"created_at\"]}],\"version\":\"bfbaa783\"},\"importPath\":\"@happyvertical/smrt-projects\"},\"@happyvertical/smrt-projects:ProjectIntegrationAudit\":{\"name\":\"projectintegrationaudit\",\"className\":\"ProjectIntegrationAudit\",\"qualifiedName\":\"@happyvertical/smrt-projects:ProjectIntegrationAudit\",\"collection\":\"projectintegrationaudits\",\"filePath\":\"/home/runner/work/smrt/smrt/packages/projects/src/models/ProjectIntegrationAudit.ts\",\"packageName\":\"@happyvertical/smrt-projects\",\"fields\":{\"tenantId\":{\"type\":\"text\",\"required\":true,\"_meta\":{\"sqlType\":\"UUID\",\"__tenancy\":{\"isTenantIdField\":true,\"autoFilter\":true,\"required\":true,\"autoPopulate\":true,\"nullable\":false,\"mode\":\"required\",\"field\":\"tenantId\",\"allowSuperAdminBypass\":false}}},\"integrationId\":{\"type\":\"foreignKey\",\"required\":true,\"related\":\"ProjectIntegration\",\"_meta\":{\"required\":true}},\"action\":{\"type\":\"text\",\"required\":false,\"default\":\"created\"},\"note\":{\"type\":\"text\",\"required\":false}},\"methods\":{},\"decoratorConfig\":{\"tableName\":\"project_integration_audits\",\"api\":false,\"mcp\":false,\"cli\":false,\"tenantScoped\":{\"mode\":\"required\"},\"conflictColumns\":[\"tenant_id\",\"slug\",\"context\"]},\"extends\":\"SmrtObject\",\"exportName\":\"ProjectIntegrationAudit\",\"collectionExportName\":\"ProjectIntegrationAuditCollection\",\"validationRules\":[{\"field\":\"integrationId\",\"rule\":\"required\",\"fieldType\":\"foreignKey\"}],\"schema\":{\"tableName\":\"project_integration_audits\",\"ddl\":\"CREATE TABLE IF NOT EXISTS \\\"project_integration_audits\\\" (\\n \\\"id\\\" UUID PRIMARY KEY NOT NULL,\\n \\\"slug\\\" TEXT NOT NULL,\\n \\\"context\\\" TEXT NOT NULL DEFAULT '',\\n \\\"created_at\\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\\"updated_at\\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\\"tenant_id\\\" UUID NOT NULL,\\n \\\"integration_id\\\" UUID NOT NULL,\\n \\\"action\\\" TEXT DEFAULT 'created',\\n \\\"note\\\" TEXT\\n);\",\"columns\":{\"id\":{\"type\":\"UUID\",\"primaryKey\":true,\"referenceKind\":\"id\",\"notNull\":true},\"slug\":{\"type\":\"TEXT\",\"notNull\":true},\"context\":{\"type\":\"TEXT\",\"notNull\":true,\"default\":\"\"},\"created_at\":{\"type\":\"TIMESTAMP\",\"notNull\":true,\"default\":\"current_timestamp\"},\"updated_at\":{\"type\":\"TIMESTAMP\",\"notNull\":true,\"default\":\"current_timestamp\"},\"tenant_id\":{\"type\":\"UUID\",\"referenceKind\":\"tenantId\",\"notNull\":true,\"unique\":false},\"integration_id\":{\"type\":\"UUID\",\"referenceKind\":\"foreignKey\",\"notNull\":true,\"unique\":false,\"foreignKey\":{\"table\":\"project_integrations\",\"column\":\"id\",\"onDelete\":\"NO ACTION\",\"onUpdate\":\"CASCADE\"}},\"action\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"created\"},\"note\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false}},\"indexes\":[{\"name\":\"project_integration_audits_slug_context_idx\",\"columns\":[\"tenant_id\",\"slug\",\"context\"],\"unique\":true},{\"name\":\"project_integration_audits_tenant_id_created_at_idx\",\"columns\":[\"tenant_id\",\"created_at\"]},{\"name\":\"project_integration_audits_integration_id_idx\",\"columns\":[\"integration_id\"]}],\"version\":\"03cc10a2\"},\"importPath\":\"@happyvertical/smrt-projects\"},\"@happyvertical/smrt-projects:PullRequest\":{\"name\":\"pullrequest\",\"className\":\"PullRequest\",\"qualifiedName\":\"@happyvertical/smrt-projects:PullRequest\",\"collection\":\"issues\",\"filePath\":\"/home/runner/work/smrt/smrt/packages/projects/src/models/PullRequest.ts\",\"packageName\":\"@happyvertical/smrt-projects\",\"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}}},\"repositoryId\":{\"type\":\"foreignKey\",\"required\":true,\"related\":\"Repository\",\"_meta\":{\"required\":true}},\"number\":{\"type\":\"integer\",\"required\":false,\"default\":0},\"nodeId\":{\"type\":\"text\",\"required\":false,\"default\":\"\"},\"title\":{\"type\":\"text\",\"required\":false,\"default\":\"\"},\"body\":{\"type\":\"text\",\"required\":false,\"default\":\"\"},\"state\":{\"type\":\"text\",\"required\":false,\"default\":\"open\"},\"author\":{\"type\":\"text\",\"required\":false,\"default\":\"\"},\"labels\":{\"type\":\"json\",\"required\":false,\"default\":[]},\"assignees\":{\"type\":\"json\",\"required\":false,\"default\":[]},\"commentsCount\":{\"type\":\"integer\",\"required\":false,\"default\":0},\"lastSyncedAt\":{\"type\":\"datetime\",\"required\":false},\"originalBody\":{\"type\":\"text\",\"required\":false,\"default\":\"\"},\"synthesisCount\":{\"type\":\"integer\",\"required\":false,\"default\":0},\"headRef\":{\"type\":\"text\",\"required\":false,\"default\":\"\"},\"baseRef\":{\"type\":\"text\",\"required\":false,\"default\":\"\"},\"merged\":{\"type\":\"boolean\",\"required\":false,\"default\":false},\"mergedAt\":{\"type\":\"datetime\",\"required\":false},\"mergeable\":{\"type\":\"boolean\",\"required\":false,\"default\":true},\"draft\":{\"type\":\"boolean\",\"required\":false,\"default\":false},\"additions\":{\"type\":\"integer\",\"required\":false,\"default\":0},\"deletions\":{\"type\":\"integer\",\"required\":false,\"default\":0},\"changedFiles\":{\"type\":\"integer\",\"required\":false,\"default\":0}},\"methods\":{\"getRepository\":{\"name\":\"getRepository\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<Repository>\",\"isStatic\":false,\"isPublic\":true},\"getClient\":{\"name\":\"getClient\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<IRepository>\",\"isStatic\":false,\"isPublic\":true},\"clearCache\":{\"name\":\"clearCache\",\"async\":false,\"parameters\":[],\"returnType\":\"void\",\"isStatic\":false,\"isPublic\":true},\"sync\":{\"name\":\"sync\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"SyncOptions\",\"optional\":true}],\"returnType\":\"Promise<this>\",\"isStatic\":false,\"isPublic\":true},\"getComments\":{\"name\":\"getComments\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<Comment[]>\",\"isStatic\":false,\"isPublic\":true},\"addComment\":{\"name\":\"addComment\",\"async\":true,\"parameters\":[{\"name\":\"body\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"Promise<Comment>\",\"isStatic\":false,\"isPublic\":true},\"incorporateFeedback\":{\"name\":\"incorporateFeedback\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"IncorporateFeedbackOptions\",\"optional\":true}],\"returnType\":\"Promise<IncorporateFeedbackResult>\",\"isStatic\":false,\"isPublic\":true},\"rollback\":{\"name\":\"rollback\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<object>\",\"isStatic\":false,\"isPublic\":true},\"needsReview\":{\"name\":\"needsReview\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<boolean>\",\"isStatic\":false,\"isPublic\":true},\"isBugReport\":{\"name\":\"isBugReport\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<boolean>\",\"isStatic\":false,\"isPublic\":true},\"isFeatureRequest\":{\"name\":\"isFeatureRequest\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<boolean>\",\"isStatic\":false,\"isPublic\":true},\"suggestLabels\":{\"name\":\"suggestLabels\",\"async\":true,\"parameters\":[{\"name\":\"vocabulary\",\"type\":\"IssueLabelVocabulary\",\"optional\":true}],\"returnType\":\"Promise<string[]>\",\"isStatic\":false,\"isPublic\":true},\"close\":{\"name\":\"close\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<void>\",\"isStatic\":false,\"isPublic\":true},\"addLabels\":{\"name\":\"addLabels\",\"async\":true,\"parameters\":[{\"name\":\"labels\",\"type\":\"string[]\",\"optional\":false}],\"returnType\":\"Promise<void>\",\"isStatic\":false,\"isPublic\":true},\"removeLabel\":{\"name\":\"removeLabel\",\"async\":true,\"parameters\":[{\"name\":\"label\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"Promise<void>\",\"isStatic\":false,\"isPublic\":true},\"assign\":{\"name\":\"assign\",\"async\":true,\"parameters\":[{\"name\":\"assignees\",\"type\":\"string[]\",\"optional\":false}],\"returnType\":\"Promise<void>\",\"isStatic\":false,\"isPublic\":true},\"getUrl\":{\"name\":\"getUrl\",\"async\":false,\"parameters\":[],\"returnType\":\"string\",\"isStatic\":false,\"isPublic\":true},\"summarize\":{\"name\":\"summarize\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<string>\",\"isStatic\":false,\"isPublic\":true},\"merge\":{\"name\":\"merge\",\"async\":true,\"parameters\":[{\"name\":\"method\",\"type\":\"MergeMethod\",\"optional\":true,\"default\":\"squash\"}],\"returnType\":\"Promise<void>\",\"isStatic\":false,\"isPublic\":true},\"markReady\":{\"name\":\"markReady\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<void>\",\"isStatic\":false,\"isPublic\":true},\"convertToDraft\":{\"name\":\"convertToDraft\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<void>\",\"isStatic\":false,\"isPublic\":true},\"requestReviewers\":{\"name\":\"requestReviewers\",\"async\":true,\"parameters\":[{\"name\":\"reviewers\",\"type\":\"string[]\",\"optional\":false}],\"returnType\":\"Promise<void>\",\"isStatic\":false,\"isPublic\":true},\"findLinkedIssue\":{\"name\":\"findLinkedIssue\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<Issue | null>\",\"isStatic\":false,\"isPublic\":true},\"isReadyToMerge\":{\"name\":\"isReadyToMerge\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<boolean>\",\"isStatic\":false,\"isPublic\":true},\"suggestReviewers\":{\"name\":\"suggestReviewers\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<string[]>\",\"isStatic\":false,\"isPublic\":true},\"getChangeSize\":{\"name\":\"getChangeSize\",\"async\":false,\"parameters\":[],\"returnType\":\"'xs' | 's' | 'm' | 'l' | 'xl'\",\"isStatic\":false,\"isPublic\":true}},\"decoratorConfig\":{\"api\":{\"include\":[\"list\",\"get\",\"create\",\"update\"]},\"mcp\":{\"include\":[\"list\",\"get\",\"sync\",\"summarize\",\"merge\"]},\"cli\":{\"include\":[\"list\",\"get\",\"sync\",\"summarize\",\"merge\",\"markReady\"],\"skipApiCheck\":true},\"tenantScoped\":{\"mode\":\"optional\"},\"tableName\":\"issues\",\"tableStrategy\":\"sti\"},\"extends\":\"Issue\",\"exportName\":\"PullRequest\",\"collectionExportName\":\"PullRequestCollection\",\"validationRules\":[{\"field\":\"repositoryId\",\"rule\":\"required\",\"fieldType\":\"foreignKey\"}],\"schema\":{\"tableName\":\"issues\",\"ddl\":\"CREATE TABLE IF NOT EXISTS \\\"issues\\\" (\\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 \\\"repository_id\\\" UUID,\\n \\\"number\\\" INTEGER DEFAULT 0,\\n \\\"node_id\\\" TEXT DEFAULT '',\\n \\\"title\\\" TEXT DEFAULT '',\\n \\\"body\\\" TEXT DEFAULT '',\\n \\\"state\\\" TEXT DEFAULT 'open',\\n \\\"author\\\" TEXT DEFAULT '',\\n \\\"labels\\\" JSON DEFAULT '[]',\\n \\\"assignees\\\" JSON DEFAULT '[]',\\n \\\"comments_count\\\" INTEGER DEFAULT 0,\\n \\\"last_synced_at\\\" TIMESTAMP,\\n \\\"original_body\\\" TEXT DEFAULT '',\\n \\\"synthesis_count\\\" INTEGER DEFAULT 0,\\n \\\"head_ref\\\" TEXT DEFAULT '',\\n \\\"base_ref\\\" TEXT DEFAULT '',\\n \\\"merged\\\" BOOLEAN DEFAULT FALSE,\\n \\\"merged_at\\\" TIMESTAMP,\\n \\\"mergeable\\\" BOOLEAN DEFAULT TRUE,\\n \\\"draft\\\" BOOLEAN DEFAULT FALSE,\\n \\\"additions\\\" INTEGER DEFAULT 0,\\n \\\"deletions\\\" INTEGER DEFAULT 0,\\n \\\"changed_files\\\" INTEGER DEFAULT 0\\n);\",\"columns\":{\"id\":{\"type\":\"UUID\",\"primaryKey\":true,\"referenceKind\":\"id\",\"notNull\":true},\"slug\":{\"type\":\"TEXT\",\"notNull\":true},\"context\":{\"type\":\"TEXT\",\"notNull\":true,\"default\":\"\"},\"_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},\"repository_id\":{\"type\":\"UUID\",\"referenceKind\":\"foreignKey\",\"notNull\":false,\"foreignKey\":{\"table\":\"repositories\",\"column\":\"id\",\"onDelete\":\"NO ACTION\",\"onUpdate\":\"CASCADE\"}},\"number\":{\"type\":\"INTEGER\",\"notNull\":false,\"default\":0},\"node_id\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"\"},\"title\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"\"},\"body\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"\"},\"state\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"open\"},\"author\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"\"},\"labels\":{\"type\":\"JSON\",\"notNull\":false,\"default\":[]},\"assignees\":{\"type\":\"JSON\",\"notNull\":false,\"default\":[]},\"comments_count\":{\"type\":\"INTEGER\",\"notNull\":false,\"default\":0},\"last_synced_at\":{\"type\":\"TIMESTAMP\",\"notNull\":false},\"original_body\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"\"},\"synthesis_count\":{\"type\":\"INTEGER\",\"notNull\":false,\"default\":0},\"head_ref\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"\"},\"base_ref\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"\"},\"merged\":{\"type\":\"BOOLEAN\",\"notNull\":false,\"default\":false},\"merged_at\":{\"type\":\"TIMESTAMP\",\"notNull\":false},\"mergeable\":{\"type\":\"BOOLEAN\",\"notNull\":false,\"default\":true},\"draft\":{\"type\":\"BOOLEAN\",\"notNull\":false,\"default\":false},\"additions\":{\"type\":\"INTEGER\",\"notNull\":false,\"default\":0},\"deletions\":{\"type\":\"INTEGER\",\"notNull\":false,\"default\":0},\"changed_files\":{\"type\":\"INTEGER\",\"notNull\":false,\"default\":0}},\"indexes\":[{\"name\":\"issues_slug_context_meta_type_idx\",\"columns\":[\"tenant_id\",\"slug\",\"context\",\"_meta_type\"],\"unique\":true,\"nullsNotDistinct\":true},{\"name\":\"issues_meta_type_idx\",\"columns\":[\"_meta_type\"]},{\"name\":\"issues_tenant_id_created_at_idx\",\"columns\":[\"tenant_id\",\"created_at\"]},{\"name\":\"issues_repository_id_idx\",\"columns\":[\"repository_id\"]}],\"version\":\"3f16e583\"},\"importPath\":\"@happyvertical/smrt-projects\"},\"@happyvertical/smrt-projects:Repository\":{\"name\":\"repository\",\"className\":\"Repository\",\"qualifiedName\":\"@happyvertical/smrt-projects:Repository\",\"collection\":\"repositories\",\"filePath\":\"/home/runner/work/smrt/smrt/packages/projects/src/models/Repository.ts\",\"packageName\":\"@happyvertical/smrt-projects\",\"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}}},\"owner\":{\"type\":\"text\",\"required\":false,\"default\":\"\"},\"name\":{\"type\":\"text\",\"required\":false,\"default\":\"\"},\"fullName\":{\"type\":\"text\",\"required\":false,\"default\":\"\"},\"description\":{\"type\":\"text\",\"required\":false,\"default\":\"\"},\"defaultBranch\":{\"type\":\"text\",\"required\":false,\"default\":\"main\"},\"isPrivate\":{\"type\":\"boolean\",\"required\":false,\"default\":false},\"providerType\":{\"type\":\"text\",\"required\":false,\"default\":\"github\"},\"baseUrl\":{\"type\":\"text\",\"required\":false,\"default\":\"\"},\"tokenConfigKey\":{\"type\":\"text\",\"required\":false,\"default\":\"GITHUB_TOKEN\"},\"lastSyncedAt\":{\"type\":\"datetime\",\"required\":false}},\"methods\":{\"getClient\":{\"name\":\"getClient\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<IRepository>\",\"isStatic\":false,\"isPublic\":true},\"clearClient\":{\"name\":\"clearClient\",\"async\":false,\"parameters\":[],\"returnType\":\"void\",\"isStatic\":false,\"isPublic\":true},\"sync\":{\"name\":\"sync\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"SyncOptions\",\"optional\":true}],\"returnType\":\"Promise<this>\",\"isStatic\":false,\"isPublic\":true},\"getIssues\":{\"name\":\"getIssues\",\"async\":true,\"parameters\":[{\"name\":\"filters\",\"type\":\"SearchFilters\",\"optional\":true}],\"returnType\":\"Promise<Issue[]>\",\"isStatic\":false,\"isPublic\":true},\"getPullRequests\":{\"name\":\"getPullRequests\",\"async\":true,\"parameters\":[{\"name\":\"filters\",\"type\":\"SearchFilters\",\"optional\":true}],\"returnType\":\"Promise<PullRequest[]>\",\"isStatic\":false,\"isPublic\":true},\"createIssue\":{\"name\":\"createIssue\",\"async\":true,\"parameters\":[{\"name\":\"data\",\"type\":\"CreateIssueInput\",\"optional\":false}],\"returnType\":\"Promise<Issue>\",\"isStatic\":false,\"isPublic\":true},\"createPullRequest\":{\"name\":\"createPullRequest\",\"async\":true,\"parameters\":[{\"name\":\"data\",\"type\":\"CreatePRInput\",\"optional\":false}],\"returnType\":\"Promise<PullRequest>\",\"isStatic\":false,\"isPublic\":true},\"hasOpenIssuesMatching\":{\"name\":\"hasOpenIssuesMatching\",\"async\":true,\"parameters\":[{\"name\":\"criteria\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"Promise<boolean>\",\"isStatic\":false,\"isPublic\":true},\"summarizeActivity\":{\"name\":\"summarizeActivity\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<string>\",\"isStatic\":false,\"isPublic\":true},\"getByFullName\":{\"name\":\"getByFullName\",\"async\":true,\"parameters\":[{\"name\":\"owner\",\"type\":\"string\",\"optional\":false},{\"name\":\"name\",\"type\":\"string\",\"optional\":false},{\"name\":\"options\",\"type\":\"SmrtObjectOptions\",\"optional\":true}],\"returnType\":\"Promise<Repository | null>\",\"isStatic\":true,\"isPublic\":true}},\"decoratorConfig\":{\"api\":{\"include\":[\"list\",\"get\",\"create\",\"update\"]},\"mcp\":{\"include\":[\"list\",\"get\",\"sync\"]},\"cli\":{\"include\":[\"list\",\"get\",\"sync\",\"create\"],\"skipApiCheck\":true},\"tenantScoped\":{\"mode\":\"optional\"},\"conflictColumns\":[\"tenant_id\",\"slug\",\"context\"]},\"extends\":\"SmrtObject\",\"exportName\":\"Repository\",\"collectionExportName\":\"RepositoryCollection\",\"schema\":{\"tableName\":\"repositories\",\"ddl\":\"CREATE TABLE IF NOT EXISTS \\\"repositories\\\" (\\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 \\\"owner\\\" TEXT DEFAULT '',\\n \\\"name\\\" TEXT DEFAULT '',\\n \\\"full_name\\\" TEXT DEFAULT '',\\n \\\"description\\\" TEXT DEFAULT '',\\n \\\"default_branch\\\" TEXT DEFAULT 'main',\\n \\\"is_private\\\" BOOLEAN DEFAULT FALSE,\\n \\\"provider_type\\\" TEXT DEFAULT 'github',\\n \\\"base_url\\\" TEXT DEFAULT '',\\n \\\"token_config_key\\\" TEXT DEFAULT 'GITHUB_TOKEN',\\n \\\"last_synced_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\"},\"tenant_id\":{\"type\":\"UUID\",\"referenceKind\":\"tenantId\",\"notNull\":false,\"unique\":false},\"owner\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"\"},\"name\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"\"},\"full_name\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"\"},\"description\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"\"},\"default_branch\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"main\"},\"is_private\":{\"type\":\"BOOLEAN\",\"notNull\":false,\"unique\":false,\"default\":false},\"provider_type\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"github\"},\"base_url\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"\"},\"token_config_key\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false,\"default\":\"GITHUB_TOKEN\"},\"last_synced_at\":{\"type\":\"TIMESTAMP\",\"notNull\":false,\"unique\":false}},\"indexes\":[{\"name\":\"repositories_slug_context_idx\",\"columns\":[\"tenant_id\",\"slug\",\"context\"],\"unique\":true,\"nullsNotDistinct\":true},{\"name\":\"repositories_tenant_id_created_at_idx\",\"columns\":[\"tenant_id\",\"created_at\"]}],\"version\":\"c302a5e5\"},\"importPath\":\"@happyvertical/smrt-projects\"},\"@happyvertical/smrt-projects:DevelopmentRequestWorkLink\":{\"name\":\"developmentrequestworklink\",\"className\":\"DevelopmentRequestWorkLink\",\"qualifiedName\":\"@happyvertical/smrt-projects:DevelopmentRequestWorkLink\",\"collection\":\"developmentrequestworklinks\",\"filePath\":\"/home/runner/work/smrt/smrt/packages/projects/src/models/delivery-control-plane.ts\",\"packageName\":\"@happyvertical/smrt-projects\",\"fields\":{\"tenantId\":{\"type\":\"text\",\"required\":true,\"_meta\":{\"sqlType\":\"UUID\",\"__tenancy\":{\"isTenantIdField\":true,\"autoFilter\":true,\"required\":true,\"autoPopulate\":true,\"nullable\":false,\"mode\":\"required\",\"field\":\"tenantId\",\"allowSuperAdminBypass\":false}}},\"requestId\":{\"type\":\"foreignKey\",\"required\":true,\"related\":\"DevelopmentRequest\",\"_meta\":{\"required\":true}},\"workItemType\":{\"type\":\"text\",\"required\":false,\"_meta\":{}},\"workItemId\":{\"type\":\"text\",\"required\":false,\"_meta\":{}},\"canonicalStatus\":{\"type\":\"text\",\"required\":false,\"_meta\":{}},\"providerRef\":{\"type\":\"text\",\"required\":false,\"_meta\":{}},\"metadata\":{\"type\":\"text\",\"required\":false,\"_meta\":{}},\"lastProjectedAt\":{\"type\":\"datetime\",\"required\":false}},\"methods\":{},\"decoratorConfig\":{\"tableName\":\"development_request_work_links\",\"conflictColumns\":[\"request_id\",\"work_item_type\",\"work_item_id\"],\"api\":false,\"cli\":false,\"mcp\":false,\"tenantScoped\":{\"mode\":\"required\"}},\"extends\":\"SmrtObject\",\"exportName\":\"DevelopmentRequestWorkLink\",\"collectionExportName\":\"DevelopmentRequestWorkLinkCollection\",\"validationRules\":[{\"field\":\"requestId\",\"rule\":\"required\",\"fieldType\":\"foreignKey\"}],\"schema\":{\"tableName\":\"development_request_work_links\",\"ddl\":\"CREATE TABLE IF NOT EXISTS \\\"development_request_work_links\\\" (\\n \\\"id\\\" UUID PRIMARY KEY NOT NULL,\\n \\\"slug\\\" TEXT NOT NULL,\\n \\\"context\\\" TEXT NOT NULL DEFAULT '',\\n \\\"created_at\\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\\"updated_at\\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\\"tenant_id\\\" UUID NOT NULL,\\n \\\"request_id\\\" UUID NOT NULL,\\n \\\"work_item_type\\\" TEXT,\\n \\\"work_item_id\\\" TEXT,\\n \\\"canonical_status\\\" TEXT,\\n \\\"provider_ref\\\" TEXT,\\n \\\"metadata\\\" TEXT,\\n \\\"last_projected_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\"},\"tenant_id\":{\"type\":\"UUID\",\"referenceKind\":\"tenantId\",\"notNull\":true,\"unique\":false},\"request_id\":{\"type\":\"UUID\",\"referenceKind\":\"foreignKey\",\"notNull\":true,\"unique\":false,\"foreignKey\":{\"table\":\"development_requests\",\"column\":\"id\",\"onDelete\":\"CASCADE\",\"onUpdate\":\"CASCADE\"}},\"work_item_type\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"work_item_id\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"canonical_status\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"provider_ref\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"metadata\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"last_projected_at\":{\"type\":\"TIMESTAMP\",\"notNull\":false,\"unique\":false}},\"indexes\":[{\"name\":\"development_request_work_links_request_id_work_item_type_idx\",\"columns\":[\"request_id\",\"work_item_type\",\"work_item_id\"],\"unique\":true,\"nullsNotDistinct\":true},{\"name\":\"development_request_work_links_slug_context_idx\",\"columns\":[\"slug\",\"context\"]},{\"name\":\"development_request_work_links_tenant_id_created_at_idx\",\"columns\":[\"tenant_id\",\"created_at\"]}],\"version\":\"adcbaa21\"},\"importPath\":\"@happyvertical/smrt-projects\"},\"@happyvertical/smrt-projects:ProjectDeliveryEvent\":{\"name\":\"projectdeliveryevent\",\"className\":\"ProjectDeliveryEvent\",\"qualifiedName\":\"@happyvertical/smrt-projects:ProjectDeliveryEvent\",\"collection\":\"projectdeliveryevents\",\"filePath\":\"/home/runner/work/smrt/smrt/packages/projects/src/models/delivery-control-plane.ts\",\"packageName\":\"@happyvertical/smrt-projects\",\"fields\":{\"tenantId\":{\"type\":\"text\",\"required\":true,\"_meta\":{\"sqlType\":\"UUID\",\"__tenancy\":{\"isTenantIdField\":true,\"autoFilter\":true,\"required\":true,\"autoPopulate\":true,\"nullable\":false,\"mode\":\"required\",\"field\":\"tenantId\",\"allowSuperAdminBypass\":false}}},\"integrationId\":{\"type\":\"foreignKey\",\"required\":true,\"related\":\"ProjectIntegration\",\"_meta\":{\"required\":true}},\"requestId\":{\"type\":\"foreignKey\",\"required\":true,\"related\":\"DevelopmentRequest\",\"_meta\":{\"required\":true}},\"idempotencyKey\":{\"type\":\"text\",\"required\":false,\"_meta\":{}},\"sequence\":{\"type\":\"integer\",\"required\":false,\"default\":0},\"type\":{\"type\":\"text\",\"required\":false,\"_meta\":{}},\"payload\":{\"type\":\"text\",\"required\":false,\"_meta\":{}},\"occurredAt\":{\"type\":\"datetime\",\"required\":false},\"deliveredAt\":{\"type\":\"datetime\",\"required\":false},\"deliveryAttempts\":{\"type\":\"integer\",\"required\":false,\"default\":0},\"lastDeliveryError\":{\"type\":\"text\",\"required\":false,\"_meta\":{}}},\"methods\":{},\"decoratorConfig\":{\"tableName\":\"project_delivery_events\",\"conflictColumns\":[\"integration_id\",\"idempotency_key\"],\"api\":false,\"cli\":false,\"mcp\":false,\"tenantScoped\":{\"mode\":\"required\"}},\"extends\":\"SmrtObject\",\"exportName\":\"ProjectDeliveryEvent\",\"collectionExportName\":\"ProjectDeliveryEventCollection\",\"validationRules\":[{\"field\":\"integrationId\",\"rule\":\"required\",\"fieldType\":\"foreignKey\"},{\"field\":\"requestId\",\"rule\":\"required\",\"fieldType\":\"foreignKey\"}],\"schema\":{\"tableName\":\"project_delivery_events\",\"ddl\":\"CREATE TABLE IF NOT EXISTS \\\"project_delivery_events\\\" (\\n \\\"id\\\" UUID PRIMARY KEY NOT NULL,\\n \\\"slug\\\" TEXT NOT NULL,\\n \\\"context\\\" TEXT NOT NULL DEFAULT '',\\n \\\"created_at\\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\\"updated_at\\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\\"tenant_id\\\" UUID NOT NULL,\\n \\\"integration_id\\\" UUID NOT NULL,\\n \\\"request_id\\\" UUID NOT NULL,\\n \\\"idempotency_key\\\" TEXT,\\n \\\"sequence\\\" INTEGER DEFAULT 0,\\n \\\"type\\\" TEXT,\\n \\\"payload\\\" TEXT,\\n \\\"occurred_at\\\" TIMESTAMP,\\n \\\"delivered_at\\\" TIMESTAMP,\\n \\\"delivery_attempts\\\" INTEGER DEFAULT 0,\\n \\\"last_delivery_error\\\" TEXT\\n);\",\"columns\":{\"id\":{\"type\":\"UUID\",\"primaryKey\":true,\"referenceKind\":\"id\",\"notNull\":true},\"slug\":{\"type\":\"TEXT\",\"notNull\":true},\"context\":{\"type\":\"TEXT\",\"notNull\":true,\"default\":\"\"},\"created_at\":{\"type\":\"TIMESTAMP\",\"notNull\":true,\"default\":\"current_timestamp\"},\"updated_at\":{\"type\":\"TIMESTAMP\",\"notNull\":true,\"default\":\"current_timestamp\"},\"tenant_id\":{\"type\":\"UUID\",\"referenceKind\":\"tenantId\",\"notNull\":true,\"unique\":false},\"integration_id\":{\"type\":\"UUID\",\"referenceKind\":\"foreignKey\",\"notNull\":true,\"unique\":false,\"foreignKey\":{\"table\":\"project_integrations\",\"column\":\"id\",\"onDelete\":\"CASCADE\",\"onUpdate\":\"CASCADE\"}},\"request_id\":{\"type\":\"UUID\",\"referenceKind\":\"foreignKey\",\"notNull\":true,\"unique\":false,\"foreignKey\":{\"table\":\"development_requests\",\"column\":\"id\",\"onDelete\":\"NO ACTION\",\"onUpdate\":\"CASCADE\"}},\"idempotency_key\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"sequence\":{\"type\":\"INTEGER\",\"notNull\":false,\"unique\":false,\"default\":0},\"type\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"payload\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"occurred_at\":{\"type\":\"TIMESTAMP\",\"notNull\":false,\"unique\":false},\"delivered_at\":{\"type\":\"TIMESTAMP\",\"notNull\":false,\"unique\":false},\"delivery_attempts\":{\"type\":\"INTEGER\",\"notNull\":false,\"unique\":false,\"default\":0},\"last_delivery_error\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false}},\"indexes\":[{\"name\":\"project_delivery_events_integration_id_idempotency_key_idx\",\"columns\":[\"integration_id\",\"idempotency_key\"],\"unique\":true,\"nullsNotDistinct\":true},{\"name\":\"project_delivery_events_slug_context_idx\",\"columns\":[\"slug\",\"context\"]},{\"name\":\"project_delivery_events_tenant_id_created_at_idx\",\"columns\":[\"tenant_id\",\"created_at\"]},{\"name\":\"project_delivery_events_request_id_idx\",\"columns\":[\"request_id\"]}],\"version\":\"99b9e301\"},\"importPath\":\"@happyvertical/smrt-projects\"},\"@happyvertical/smrt-projects:PreviewApproval\":{\"name\":\"previewapproval\",\"className\":\"PreviewApproval\",\"qualifiedName\":\"@happyvertical/smrt-projects:PreviewApproval\",\"collection\":\"previewapprovals\",\"filePath\":\"/home/runner/work/smrt/smrt/packages/projects/src/models/delivery-control-plane.ts\",\"packageName\":\"@happyvertical/smrt-projects\",\"fields\":{\"tenantId\":{\"type\":\"text\",\"required\":true,\"_meta\":{\"sqlType\":\"UUID\",\"__tenancy\":{\"isTenantIdField\":true,\"autoFilter\":true,\"required\":true,\"autoPopulate\":true,\"nullable\":false,\"mode\":\"required\",\"field\":\"tenantId\",\"allowSuperAdminBypass\":false}}},\"requestId\":{\"type\":\"foreignKey\",\"required\":true,\"related\":\"DevelopmentRequest\",\"_meta\":{\"required\":true}},\"previewId\":{\"type\":\"text\",\"required\":false,\"_meta\":{}},\"previewUrl\":{\"type\":\"text\",\"required\":false,\"_meta\":{}},\"status\":{\"type\":\"text\",\"required\":false,\"_meta\":{}},\"decidedByRef\":{\"type\":\"text\",\"required\":false,\"_meta\":{}},\"reason\":{\"type\":\"text\",\"required\":false,\"_meta\":{}},\"createdAt\":{\"type\":\"datetime\",\"required\":false},\"decidedAt\":{\"type\":\"datetime\",\"required\":false},\"staleAt\":{\"type\":\"datetime\",\"required\":false}},\"methods\":{},\"decoratorConfig\":{\"tableName\":\"preview_approvals\",\"conflictColumns\":[\"request_id\",\"preview_id\"],\"api\":false,\"cli\":false,\"mcp\":false,\"tenantScoped\":{\"mode\":\"required\"}},\"extends\":\"SmrtObject\",\"exportName\":\"PreviewApproval\",\"collectionExportName\":\"PreviewApprovalCollection\",\"validationRules\":[{\"field\":\"requestId\",\"rule\":\"required\",\"fieldType\":\"foreignKey\"}],\"schema\":{\"tableName\":\"preview_approvals\",\"ddl\":\"CREATE TABLE IF NOT EXISTS \\\"preview_approvals\\\" (\\n \\\"id\\\" UUID PRIMARY KEY NOT NULL,\\n \\\"slug\\\" TEXT NOT NULL,\\n \\\"context\\\" TEXT NOT NULL DEFAULT '',\\n \\\"created_at\\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\\"updated_at\\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\\"tenant_id\\\" UUID NOT NULL,\\n \\\"request_id\\\" UUID NOT NULL,\\n \\\"preview_id\\\" TEXT,\\n \\\"preview_url\\\" TEXT,\\n \\\"status\\\" TEXT,\\n \\\"decided_by_ref\\\" TEXT,\\n \\\"reason\\\" TEXT,\\n \\\"decided_at\\\" TIMESTAMP,\\n \\\"stale_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\"},\"tenant_id\":{\"type\":\"UUID\",\"referenceKind\":\"tenantId\",\"notNull\":true,\"unique\":false},\"request_id\":{\"type\":\"UUID\",\"referenceKind\":\"foreignKey\",\"notNull\":true,\"unique\":false,\"foreignKey\":{\"table\":\"development_requests\",\"column\":\"id\",\"onDelete\":\"CASCADE\",\"onUpdate\":\"CASCADE\"}},\"preview_id\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"preview_url\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"status\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"decided_by_ref\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"reason\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"decided_at\":{\"type\":\"TIMESTAMP\",\"notNull\":false,\"unique\":false},\"stale_at\":{\"type\":\"TIMESTAMP\",\"notNull\":false,\"unique\":false}},\"indexes\":[{\"name\":\"preview_approvals_request_id_preview_id_idx\",\"columns\":[\"request_id\",\"preview_id\"],\"unique\":true,\"nullsNotDistinct\":true},{\"name\":\"preview_approvals_slug_context_idx\",\"columns\":[\"slug\",\"context\"]},{\"name\":\"preview_approvals_tenant_id_created_at_idx\",\"columns\":[\"tenant_id\",\"created_at\"]}],\"version\":\"ec7b2b14\"},\"importPath\":\"@happyvertical/smrt-projects\"},\"@happyvertical/smrt-projects:AssistanceRequest\":{\"name\":\"assistancerequest\",\"className\":\"AssistanceRequest\",\"qualifiedName\":\"@happyvertical/smrt-projects:AssistanceRequest\",\"collection\":\"assistancerequests\",\"filePath\":\"/home/runner/work/smrt/smrt/packages/projects/src/models/delivery-control-plane.ts\",\"packageName\":\"@happyvertical/smrt-projects\",\"fields\":{\"tenantId\":{\"type\":\"text\",\"required\":true,\"_meta\":{\"sqlType\":\"UUID\",\"__tenancy\":{\"isTenantIdField\":true,\"autoFilter\":true,\"required\":true,\"autoPopulate\":true,\"nullable\":false,\"mode\":\"required\",\"field\":\"tenantId\",\"allowSuperAdminBypass\":false}}},\"integrationId\":{\"type\":\"foreignKey\",\"required\":true,\"related\":\"ProjectIntegration\",\"_meta\":{\"required\":true}},\"requesterId\":{\"type\":\"text\",\"required\":false,\"_meta\":{}},\"subject\":{\"type\":\"text\",\"required\":false,\"_meta\":{}},\"applicationContext\":{\"type\":\"text\",\"required\":false,\"_meta\":{}},\"conversation\":{\"type\":\"text\",\"required\":false,\"_meta\":{}},\"evidence\":{\"type\":\"text\",\"required\":false,\"_meta\":{}},\"classification\":{\"type\":\"text\",\"required\":false,\"_meta\":{}},\"supportCaseId\":{\"type\":\"text\",\"required\":false,\"_meta\":{}},\"developmentRequestId\":{\"type\":\"text\",\"required\":false,\"_meta\":{}},\"deliveryHandoffLinkedAt\":{\"type\":\"datetime\",\"required\":false},\"createdAt\":{\"type\":\"datetime\",\"required\":false}},\"methods\":{},\"decoratorConfig\":{\"tableName\":\"assistance_requests\",\"api\":false,\"cli\":false,\"mcp\":false,\"tenantScoped\":{\"mode\":\"required\"},\"conflictColumns\":[\"tenant_id\",\"slug\",\"context\"]},\"extends\":\"SmrtObject\",\"exportName\":\"AssistanceRequest\",\"collectionExportName\":\"AssistanceRequestCollection\",\"validationRules\":[{\"field\":\"integrationId\",\"rule\":\"required\",\"fieldType\":\"foreignKey\"}],\"schema\":{\"tableName\":\"assistance_requests\",\"ddl\":\"CREATE TABLE IF NOT EXISTS \\\"assistance_requests\\\" (\\n \\\"id\\\" UUID PRIMARY KEY NOT NULL,\\n \\\"slug\\\" TEXT NOT NULL,\\n \\\"context\\\" TEXT NOT NULL DEFAULT '',\\n \\\"created_at\\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\\"updated_at\\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\\"tenant_id\\\" UUID NOT NULL,\\n \\\"integration_id\\\" UUID NOT NULL,\\n \\\"requester_id\\\" TEXT,\\n \\\"subject\\\" TEXT,\\n \\\"application_context\\\" TEXT,\\n \\\"conversation\\\" TEXT,\\n \\\"evidence\\\" TEXT,\\n \\\"classification\\\" TEXT,\\n \\\"support_case_id\\\" TEXT,\\n \\\"development_request_id\\\" TEXT,\\n \\\"delivery_handoff_linked_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\"},\"tenant_id\":{\"type\":\"UUID\",\"referenceKind\":\"tenantId\",\"notNull\":true,\"unique\":false},\"integration_id\":{\"type\":\"UUID\",\"referenceKind\":\"foreignKey\",\"notNull\":true,\"unique\":false,\"foreignKey\":{\"table\":\"project_integrations\",\"column\":\"id\",\"onDelete\":\"NO ACTION\",\"onUpdate\":\"CASCADE\"}},\"requester_id\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"subject\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"application_context\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"conversation\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"evidence\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"classification\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"support_case_id\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"development_request_id\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"delivery_handoff_linked_at\":{\"type\":\"TIMESTAMP\",\"notNull\":false,\"unique\":false}},\"indexes\":[{\"name\":\"assistance_requests_slug_context_idx\",\"columns\":[\"tenant_id\",\"slug\",\"context\"],\"unique\":true},{\"name\":\"assistance_requests_tenant_id_created_at_idx\",\"columns\":[\"tenant_id\",\"created_at\"]},{\"name\":\"assistance_requests_integration_id_idx\",\"columns\":[\"integration_id\"]}],\"version\":\"d1653259\"},\"importPath\":\"@happyvertical/smrt-projects\"},\"@happyvertical/smrt-projects:AssistanceRequestEvent\":{\"name\":\"assistancerequestevent\",\"className\":\"AssistanceRequestEvent\",\"qualifiedName\":\"@happyvertical/smrt-projects:AssistanceRequestEvent\",\"collection\":\"assistancerequestevents\",\"filePath\":\"/home/runner/work/smrt/smrt/packages/projects/src/models/delivery-control-plane.ts\",\"packageName\":\"@happyvertical/smrt-projects\",\"fields\":{\"tenantId\":{\"type\":\"text\",\"required\":true,\"_meta\":{\"sqlType\":\"UUID\",\"__tenancy\":{\"isTenantIdField\":true,\"autoFilter\":true,\"required\":true,\"autoPopulate\":true,\"nullable\":false,\"mode\":\"required\",\"field\":\"tenantId\",\"allowSuperAdminBypass\":false}}},\"assistanceRequestId\":{\"type\":\"foreignKey\",\"required\":true,\"related\":\"AssistanceRequest\",\"_meta\":{\"required\":true}},\"priorClassification\":{\"type\":\"text\",\"required\":false,\"_meta\":{}},\"resultingClassification\":{\"type\":\"text\",\"required\":false,\"_meta\":{}},\"actorRef\":{\"type\":\"text\",\"required\":false,\"_meta\":{}},\"reason\":{\"type\":\"text\",\"required\":false,\"_meta\":{}},\"resultingLinks\":{\"type\":\"text\",\"required\":false,\"_meta\":{}},\"occurredAt\":{\"type\":\"datetime\",\"required\":false}},\"methods\":{},\"decoratorConfig\":{\"tableName\":\"assistance_request_events\",\"api\":false,\"cli\":false,\"mcp\":false,\"tenantScoped\":{\"mode\":\"required\"},\"conflictColumns\":[\"tenant_id\",\"slug\",\"context\"]},\"extends\":\"SmrtObject\",\"exportName\":\"AssistanceRequestEvent\",\"collectionExportName\":\"AssistanceRequestEventCollection\",\"validationRules\":[{\"field\":\"assistanceRequestId\",\"rule\":\"required\",\"fieldType\":\"foreignKey\"}],\"schema\":{\"tableName\":\"assistance_request_events\",\"ddl\":\"CREATE TABLE IF NOT EXISTS \\\"assistance_request_events\\\" (\\n \\\"id\\\" UUID PRIMARY KEY NOT NULL,\\n \\\"slug\\\" TEXT NOT NULL,\\n \\\"context\\\" TEXT NOT NULL DEFAULT '',\\n \\\"created_at\\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\\"updated_at\\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\\"tenant_id\\\" UUID NOT NULL,\\n \\\"assistance_request_id\\\" UUID NOT NULL,\\n \\\"prior_classification\\\" TEXT,\\n \\\"resulting_classification\\\" TEXT,\\n \\\"actor_ref\\\" TEXT,\\n \\\"reason\\\" TEXT,\\n \\\"resulting_links\\\" TEXT,\\n \\\"occurred_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\"},\"tenant_id\":{\"type\":\"UUID\",\"referenceKind\":\"tenantId\",\"notNull\":true,\"unique\":false},\"assistance_request_id\":{\"type\":\"UUID\",\"referenceKind\":\"foreignKey\",\"notNull\":true,\"unique\":false,\"foreignKey\":{\"table\":\"assistance_requests\",\"column\":\"id\",\"onDelete\":\"NO ACTION\",\"onUpdate\":\"CASCADE\"}},\"prior_classification\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"resulting_classification\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"actor_ref\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"reason\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"resulting_links\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"occurred_at\":{\"type\":\"TIMESTAMP\",\"notNull\":false,\"unique\":false}},\"indexes\":[{\"name\":\"assistance_request_events_slug_context_idx\",\"columns\":[\"tenant_id\",\"slug\",\"context\"],\"unique\":true},{\"name\":\"assistance_request_events_tenant_id_created_at_idx\",\"columns\":[\"tenant_id\",\"created_at\"]},{\"name\":\"assistance_request_events_assistance_request_id_idx\",\"columns\":[\"assistance_request_id\"]}],\"version\":\"bcc95ebe\"},\"importPath\":\"@happyvertical/smrt-projects\"},\"@happyvertical/smrt-projects:DevelopmentRequestWorkLinkCollection\":{\"name\":\"developmentrequestworklinkcollection\",\"className\":\"DevelopmentRequestWorkLinkCollection\",\"qualifiedName\":\"@happyvertical/smrt-projects:DevelopmentRequestWorkLinkCollection\",\"collection\":\"developmentrequestworklinks\",\"filePath\":\"/home/runner/work/smrt/smrt/packages/projects/src/models/delivery-control-plane.ts\",\"packageName\":\"@happyvertical/smrt-projects\",\"fields\":{},\"methods\":{},\"decoratorConfig\":{\"tableName\":\"development_request_work_links\",\"api\":false,\"mcp\":false,\"cli\":false},\"extends\":\"SmrtCollection\",\"extendsTypeArg\":\"DevelopmentRequestWorkLink\",\"exportName\":\"DevelopmentRequestWorkLinkCollection\",\"collectionExportName\":\"DevelopmentRequestWorkLinkCollectionCollection\",\"schema\":{\"tableName\":\"development_request_work_links\",\"ddl\":\"CREATE TABLE IF NOT EXISTS \\\"development_request_work_links\\\" (\\n \\\"id\\\" UUID PRIMARY KEY NOT NULL,\\n \\\"slug\\\" TEXT NOT NULL,\\n \\\"context\\\" TEXT NOT NULL DEFAULT '',\\n \\\"created_at\\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\\"updated_at\\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\\"tenant_id\\\" UUID NOT NULL,\\n \\\"request_id\\\" UUID NOT NULL,\\n \\\"work_item_type\\\" TEXT,\\n \\\"work_item_id\\\" TEXT,\\n \\\"canonical_status\\\" TEXT,\\n \\\"provider_ref\\\" TEXT,\\n \\\"metadata\\\" TEXT,\\n \\\"last_projected_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\"},\"tenant_id\":{\"type\":\"UUID\",\"referenceKind\":\"tenantId\",\"notNull\":true,\"unique\":false},\"request_id\":{\"type\":\"UUID\",\"referenceKind\":\"foreignKey\",\"notNull\":true,\"unique\":false,\"foreignKey\":{\"table\":\"development_requests\",\"column\":\"id\",\"onDelete\":\"CASCADE\",\"onUpdate\":\"CASCADE\"}},\"work_item_type\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"work_item_id\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"canonical_status\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"provider_ref\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"metadata\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"last_projected_at\":{\"type\":\"TIMESTAMP\",\"notNull\":false,\"unique\":false}},\"indexes\":[{\"name\":\"development_request_work_links_request_id_work_item_type_idx\",\"columns\":[\"request_id\",\"work_item_type\",\"work_item_id\"],\"unique\":true,\"nullsNotDistinct\":true},{\"name\":\"development_request_work_links_slug_context_idx\",\"columns\":[\"slug\",\"context\"]},{\"name\":\"development_request_work_links_tenant_id_created_at_idx\",\"columns\":[\"tenant_id\",\"created_at\"]}],\"version\":\"adcbaa21\"},\"importPath\":\"@happyvertical/smrt-projects\"},\"@happyvertical/smrt-projects:ProjectDeliveryEventCollection\":{\"name\":\"projectdeliveryeventcollection\",\"className\":\"ProjectDeliveryEventCollection\",\"qualifiedName\":\"@happyvertical/smrt-projects:ProjectDeliveryEventCollection\",\"collection\":\"projectdeliveryevents\",\"filePath\":\"/home/runner/work/smrt/smrt/packages/projects/src/models/delivery-control-plane.ts\",\"packageName\":\"@happyvertical/smrt-projects\",\"fields\":{},\"methods\":{},\"decoratorConfig\":{\"tableName\":\"project_delivery_events\",\"api\":false,\"mcp\":false,\"cli\":false},\"extends\":\"SmrtCollection\",\"extendsTypeArg\":\"ProjectDeliveryEvent\",\"exportName\":\"ProjectDeliveryEventCollection\",\"collectionExportName\":\"ProjectDeliveryEventCollectionCollection\",\"schema\":{\"tableName\":\"project_delivery_events\",\"ddl\":\"CREATE TABLE IF NOT EXISTS \\\"project_delivery_events\\\" (\\n \\\"id\\\" UUID PRIMARY KEY NOT NULL,\\n \\\"slug\\\" TEXT NOT NULL,\\n \\\"context\\\" TEXT NOT NULL DEFAULT '',\\n \\\"created_at\\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\\"updated_at\\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\\"tenant_id\\\" UUID NOT NULL,\\n \\\"integration_id\\\" UUID NOT NULL,\\n \\\"request_id\\\" UUID NOT NULL,\\n \\\"idempotency_key\\\" TEXT,\\n \\\"sequence\\\" INTEGER DEFAULT 0,\\n \\\"type\\\" TEXT,\\n \\\"payload\\\" TEXT,\\n \\\"occurred_at\\\" TIMESTAMP,\\n \\\"delivered_at\\\" TIMESTAMP,\\n \\\"delivery_attempts\\\" INTEGER DEFAULT 0,\\n \\\"last_delivery_error\\\" TEXT\\n);\",\"columns\":{\"id\":{\"type\":\"UUID\",\"primaryKey\":true,\"referenceKind\":\"id\",\"notNull\":true},\"slug\":{\"type\":\"TEXT\",\"notNull\":true},\"context\":{\"type\":\"TEXT\",\"notNull\":true,\"default\":\"\"},\"created_at\":{\"type\":\"TIMESTAMP\",\"notNull\":true,\"default\":\"current_timestamp\"},\"updated_at\":{\"type\":\"TIMESTAMP\",\"notNull\":true,\"default\":\"current_timestamp\"},\"tenant_id\":{\"type\":\"UUID\",\"referenceKind\":\"tenantId\",\"notNull\":true,\"unique\":false},\"integration_id\":{\"type\":\"UUID\",\"referenceKind\":\"foreignKey\",\"notNull\":true,\"unique\":false,\"foreignKey\":{\"table\":\"project_integrations\",\"column\":\"id\",\"onDelete\":\"CASCADE\",\"onUpdate\":\"CASCADE\"}},\"request_id\":{\"type\":\"UUID\",\"referenceKind\":\"foreignKey\",\"notNull\":true,\"unique\":false,\"foreignKey\":{\"table\":\"development_requests\",\"column\":\"id\",\"onDelete\":\"NO ACTION\",\"onUpdate\":\"CASCADE\"}},\"idempotency_key\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"sequence\":{\"type\":\"INTEGER\",\"notNull\":false,\"unique\":false,\"default\":0},\"type\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"payload\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"occurred_at\":{\"type\":\"TIMESTAMP\",\"notNull\":false,\"unique\":false},\"delivered_at\":{\"type\":\"TIMESTAMP\",\"notNull\":false,\"unique\":false},\"delivery_attempts\":{\"type\":\"INTEGER\",\"notNull\":false,\"unique\":false,\"default\":0},\"last_delivery_error\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false}},\"indexes\":[{\"name\":\"project_delivery_events_integration_id_idempotency_key_idx\",\"columns\":[\"integration_id\",\"idempotency_key\"],\"unique\":true,\"nullsNotDistinct\":true},{\"name\":\"project_delivery_events_slug_context_idx\",\"columns\":[\"slug\",\"context\"]},{\"name\":\"project_delivery_events_tenant_id_created_at_idx\",\"columns\":[\"tenant_id\",\"created_at\"]},{\"name\":\"project_delivery_events_request_id_idx\",\"columns\":[\"request_id\"]}],\"version\":\"99b9e301\"},\"importPath\":\"@happyvertical/smrt-projects\"},\"@happyvertical/smrt-projects:PreviewApprovalCollection\":{\"name\":\"previewapprovalcollection\",\"className\":\"PreviewApprovalCollection\",\"qualifiedName\":\"@happyvertical/smrt-projects:PreviewApprovalCollection\",\"collection\":\"previewapprovals\",\"filePath\":\"/home/runner/work/smrt/smrt/packages/projects/src/models/delivery-control-plane.ts\",\"packageName\":\"@happyvertical/smrt-projects\",\"fields\":{},\"methods\":{},\"decoratorConfig\":{\"tableName\":\"preview_approvals\",\"api\":false,\"mcp\":false,\"cli\":false},\"extends\":\"SmrtCollection\",\"extendsTypeArg\":\"PreviewApproval\",\"exportName\":\"PreviewApprovalCollection\",\"collectionExportName\":\"PreviewApprovalCollectionCollection\",\"schema\":{\"tableName\":\"preview_approvals\",\"ddl\":\"CREATE TABLE IF NOT EXISTS \\\"preview_approvals\\\" (\\n \\\"id\\\" UUID PRIMARY KEY NOT NULL,\\n \\\"slug\\\" TEXT NOT NULL,\\n \\\"context\\\" TEXT NOT NULL DEFAULT '',\\n \\\"created_at\\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\\"updated_at\\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\\"tenant_id\\\" UUID NOT NULL,\\n \\\"request_id\\\" UUID NOT NULL,\\n \\\"preview_id\\\" TEXT,\\n \\\"preview_url\\\" TEXT,\\n \\\"status\\\" TEXT,\\n \\\"decided_by_ref\\\" TEXT,\\n \\\"reason\\\" TEXT,\\n \\\"decided_at\\\" TIMESTAMP,\\n \\\"stale_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\"},\"tenant_id\":{\"type\":\"UUID\",\"referenceKind\":\"tenantId\",\"notNull\":true,\"unique\":false},\"request_id\":{\"type\":\"UUID\",\"referenceKind\":\"foreignKey\",\"notNull\":true,\"unique\":false,\"foreignKey\":{\"table\":\"development_requests\",\"column\":\"id\",\"onDelete\":\"CASCADE\",\"onUpdate\":\"CASCADE\"}},\"preview_id\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"preview_url\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"status\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"decided_by_ref\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"reason\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"decided_at\":{\"type\":\"TIMESTAMP\",\"notNull\":false,\"unique\":false},\"stale_at\":{\"type\":\"TIMESTAMP\",\"notNull\":false,\"unique\":false}},\"indexes\":[{\"name\":\"preview_approvals_request_id_preview_id_idx\",\"columns\":[\"request_id\",\"preview_id\"],\"unique\":true,\"nullsNotDistinct\":true},{\"name\":\"preview_approvals_slug_context_idx\",\"columns\":[\"slug\",\"context\"]},{\"name\":\"preview_approvals_tenant_id_created_at_idx\",\"columns\":[\"tenant_id\",\"created_at\"]}],\"version\":\"ec7b2b14\"},\"importPath\":\"@happyvertical/smrt-projects\"},\"@happyvertical/smrt-projects:AssistanceRequestCollection\":{\"name\":\"assistancerequestcollection\",\"className\":\"AssistanceRequestCollection\",\"qualifiedName\":\"@happyvertical/smrt-projects:AssistanceRequestCollection\",\"collection\":\"assistancerequests\",\"filePath\":\"/home/runner/work/smrt/smrt/packages/projects/src/models/delivery-control-plane.ts\",\"packageName\":\"@happyvertical/smrt-projects\",\"fields\":{},\"methods\":{},\"decoratorConfig\":{\"tableName\":\"assistance_requests\",\"api\":false,\"mcp\":false,\"cli\":false},\"extends\":\"SmrtCollection\",\"extendsTypeArg\":\"AssistanceRequest\",\"exportName\":\"AssistanceRequestCollection\",\"collectionExportName\":\"AssistanceRequestCollectionCollection\",\"schema\":{\"tableName\":\"assistance_requests\",\"ddl\":\"CREATE TABLE IF NOT EXISTS \\\"assistance_requests\\\" (\\n \\\"id\\\" UUID PRIMARY KEY NOT NULL,\\n \\\"slug\\\" TEXT NOT NULL,\\n \\\"context\\\" TEXT NOT NULL DEFAULT '',\\n \\\"created_at\\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\\"updated_at\\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\\"tenant_id\\\" UUID NOT NULL,\\n \\\"integration_id\\\" UUID NOT NULL,\\n \\\"requester_id\\\" TEXT,\\n \\\"subject\\\" TEXT,\\n \\\"application_context\\\" TEXT,\\n \\\"conversation\\\" TEXT,\\n \\\"evidence\\\" TEXT,\\n \\\"classification\\\" TEXT,\\n \\\"support_case_id\\\" TEXT,\\n \\\"development_request_id\\\" TEXT,\\n \\\"delivery_handoff_linked_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\"},\"tenant_id\":{\"type\":\"UUID\",\"referenceKind\":\"tenantId\",\"notNull\":true,\"unique\":false},\"integration_id\":{\"type\":\"UUID\",\"referenceKind\":\"foreignKey\",\"notNull\":true,\"unique\":false,\"foreignKey\":{\"table\":\"project_integrations\",\"column\":\"id\",\"onDelete\":\"NO ACTION\",\"onUpdate\":\"CASCADE\"}},\"requester_id\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"subject\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"application_context\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"conversation\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"evidence\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"classification\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"support_case_id\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"development_request_id\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"delivery_handoff_linked_at\":{\"type\":\"TIMESTAMP\",\"notNull\":false,\"unique\":false}},\"indexes\":[{\"name\":\"assistance_requests_slug_context_idx\",\"columns\":[\"tenant_id\",\"slug\",\"context\"],\"unique\":true},{\"name\":\"assistance_requests_tenant_id_created_at_idx\",\"columns\":[\"tenant_id\",\"created_at\"]},{\"name\":\"assistance_requests_integration_id_idx\",\"columns\":[\"integration_id\"]}],\"version\":\"d1653259\"},\"importPath\":\"@happyvertical/smrt-projects\"},\"@happyvertical/smrt-projects:AssistanceRequestEventCollection\":{\"name\":\"assistancerequesteventcollection\",\"className\":\"AssistanceRequestEventCollection\",\"qualifiedName\":\"@happyvertical/smrt-projects:AssistanceRequestEventCollection\",\"collection\":\"assistancerequestevents\",\"filePath\":\"/home/runner/work/smrt/smrt/packages/projects/src/models/delivery-control-plane.ts\",\"packageName\":\"@happyvertical/smrt-projects\",\"fields\":{},\"methods\":{},\"decoratorConfig\":{\"tableName\":\"assistance_request_events\",\"api\":false,\"mcp\":false,\"cli\":false},\"extends\":\"SmrtCollection\",\"extendsTypeArg\":\"AssistanceRequestEvent\",\"exportName\":\"AssistanceRequestEventCollection\",\"collectionExportName\":\"AssistanceRequestEventCollectionCollection\",\"schema\":{\"tableName\":\"assistance_request_events\",\"ddl\":\"CREATE TABLE IF NOT EXISTS \\\"assistance_request_events\\\" (\\n \\\"id\\\" UUID PRIMARY KEY NOT NULL,\\n \\\"slug\\\" TEXT NOT NULL,\\n \\\"context\\\" TEXT NOT NULL DEFAULT '',\\n \\\"created_at\\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\\"updated_at\\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\\"tenant_id\\\" UUID NOT NULL,\\n \\\"assistance_request_id\\\" UUID NOT NULL,\\n \\\"prior_classification\\\" TEXT,\\n \\\"resulting_classification\\\" TEXT,\\n \\\"actor_ref\\\" TEXT,\\n \\\"reason\\\" TEXT,\\n \\\"resulting_links\\\" TEXT,\\n \\\"occurred_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\"},\"tenant_id\":{\"type\":\"UUID\",\"referenceKind\":\"tenantId\",\"notNull\":true,\"unique\":false},\"assistance_request_id\":{\"type\":\"UUID\",\"referenceKind\":\"foreignKey\",\"notNull\":true,\"unique\":false,\"foreignKey\":{\"table\":\"assistance_requests\",\"column\":\"id\",\"onDelete\":\"NO ACTION\",\"onUpdate\":\"CASCADE\"}},\"prior_classification\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"resulting_classification\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"actor_ref\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"reason\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"resulting_links\":{\"type\":\"TEXT\",\"notNull\":false,\"unique\":false},\"occurred_at\":{\"type\":\"TIMESTAMP\",\"notNull\":false,\"unique\":false}},\"indexes\":[{\"name\":\"assistance_request_events_slug_context_idx\",\"columns\":[\"tenant_id\",\"slug\",\"context\"],\"unique\":true},{\"name\":\"assistance_request_events_tenant_id_created_at_idx\",\"columns\":[\"tenant_id\",\"created_at\"]},{\"name\":\"assistance_request_events_assistance_request_id_idx\",\"columns\":[\"assistance_request_id\"]}],\"version\":\"bcc95ebe\"},\"importPath\":\"@happyvertical/smrt-projects\"}},\"moduleType\":\"smrt\",\"smrtDependencies\":[\"@happyvertical/smrt-core\",\"@happyvertical/smrt-prompts\",\"@happyvertical/smrt-subscriptions\",\"@happyvertical/smrt-tenancy\",\"@happyvertical/smrt-timesheets\"]}"));
|
|
17
|
+
ObjectRegistry.registerPackageManifest(JSON.parse(`{"version":"1.0.0","timestamp":0,"packageName":"@happyvertical/smrt-projects","packageVersion":"0.54.4","objects":{"@happyvertical/smrt-projects:DevelopmentRequestHistoryCollection":{"name":"developmentrequesthistorycollection","className":"DevelopmentRequestHistoryCollection","qualifiedName":"@happyvertical/smrt-projects:DevelopmentRequestHistoryCollection","collection":"developmentrequesthistories","filePath":"/home/runner/work/smrt/smrt/packages/projects/src/collections/DevelopmentRequestHistories.ts","packageName":"@happyvertical/smrt-projects","fields":{},"methods":{"listForRequest":{"name":"listForRequest","async":true,"parameters":[{"name":"tenantId","type":"string","optional":false},{"name":"requestId","type":"string","optional":false}],"returnType":"Promise<DevelopmentRequestHistory[]>","isStatic":false,"isPublic":true}},"decoratorConfig":{"tableName":"development_request_histories","api":false,"mcp":false,"cli":false},"extends":"SmrtCollection","extendsTypeArg":"DevelopmentRequestHistory","exportName":"DevelopmentRequestHistoryCollection","collectionExportName":"DevelopmentRequestHistoryCollectionCollection","schema":{"tableName":"development_request_histories","ddl":"CREATE TABLE IF NOT EXISTS \\"development_request_histories\\" (\\n \\"id\\" UUID PRIMARY KEY NOT NULL,\\n \\"slug\\" TEXT NOT NULL,\\n \\"context\\" TEXT NOT NULL DEFAULT '',\\n \\"created_at\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\"updated_at\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\"tenant_id\\" UUID NOT NULL,\\n \\"request_id\\" UUID NOT NULL,\\n \\"from_status\\" TEXT DEFAULT '',\\n \\"to_status\\" TEXT DEFAULT 'submitted',\\n \\"actor_type\\" TEXT DEFAULT 'system',\\n \\"actor_id\\" TEXT DEFAULT '',\\n \\"note\\" TEXT\\n);","columns":{"id":{"type":"UUID","primaryKey":true,"referenceKind":"id","notNull":true},"slug":{"type":"TEXT","notNull":true},"context":{"type":"TEXT","notNull":true,"default":""},"created_at":{"type":"TIMESTAMP","notNull":true,"default":"current_timestamp"},"updated_at":{"type":"TIMESTAMP","notNull":true,"default":"current_timestamp"},"tenant_id":{"type":"UUID","referenceKind":"tenantId","notNull":true,"unique":false},"request_id":{"type":"UUID","referenceKind":"foreignKey","notNull":true,"unique":false,"foreignKey":{"table":"development_requests","column":"id","onDelete":"NO ACTION","onUpdate":"CASCADE"}},"from_status":{"type":"TEXT","notNull":false,"unique":false,"default":""},"to_status":{"type":"TEXT","notNull":false,"unique":false,"default":"submitted"},"actor_type":{"type":"TEXT","notNull":false,"unique":false,"default":"system"},"actor_id":{"type":"TEXT","notNull":false,"unique":false,"default":""},"note":{"type":"TEXT","notNull":false,"unique":false}},"indexes":[{"name":"development_request_histories_slug_context_idx","columns":["tenant_id","slug","context"],"unique":true},{"name":"development_request_histories_tenant_id_created_at_idx","columns":["tenant_id","created_at"]},{"name":"development_request_histories_request_id_idx","columns":["request_id"]}],"version":"67389678"},"importPath":"@happyvertical/smrt-projects"},"@happyvertical/smrt-projects:DevelopmentRequestCollection":{"name":"developmentrequestcollection","className":"DevelopmentRequestCollection","qualifiedName":"@happyvertical/smrt-projects:DevelopmentRequestCollection","collection":"developmentrequests","filePath":"/home/runner/work/smrt/smrt/packages/projects/src/collections/DevelopmentRequests.ts","packageName":"@happyvertical/smrt-projects","fields":{},"methods":{"createManaged":{"name":"createManaged","async":true,"parameters":[{"name":"input","type":"any","optional":false,"typeUnresolved":true}],"returnType":"Promise<DevelopmentRequest>","isStatic":false,"isPublic":true},"listByIntegrationRequester":{"name":"listByIntegrationRequester","async":true,"parameters":[{"name":"input","type":"object","optional":false,"memberTypes":["string"]}],"returnType":"Promise<DevelopmentRequest[]>","isStatic":false,"isPublic":true},"transitionStatus":{"name":"transitionStatus","async":true,"parameters":[{"name":"tenantId","type":"string","optional":false},{"name":"requestId","type":"string","optional":false},{"name":"transition","type":"DevelopmentRequestTransitionInput","optional":false}],"returnType":"Promise<DevelopmentRequest>","isStatic":false,"isPublic":true},"listForProject":{"name":"listForProject","async":true,"parameters":[{"name":"tenantId","type":"string","optional":false},{"name":"projectId","type":"string","optional":false},{"name":"status","type":"DevelopmentRequestStatus","optional":true}],"returnType":"Promise<DevelopmentRequest[]>","isStatic":false,"isPublic":true}},"decoratorConfig":{"tableName":"development_requests","api":false,"mcp":false,"cli":false},"extends":"SmrtCollection","extendsTypeArg":"DevelopmentRequest","exportName":"DevelopmentRequestCollection","collectionExportName":"DevelopmentRequestCollectionCollection","schema":{"tableName":"development_requests","ddl":"CREATE TABLE IF NOT EXISTS \\"development_requests\\" (\\n \\"id\\" UUID PRIMARY KEY NOT NULL,\\n \\"slug\\" TEXT NOT NULL,\\n \\"context\\" TEXT NOT NULL DEFAULT '',\\n \\"created_at\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\"updated_at\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\"tenant_id\\" UUID NOT NULL,\\n \\"project_id\\" TEXT DEFAULT '',\\n \\"integration_id\\" UUID NOT NULL,\\n \\"requester_id\\" TEXT DEFAULT '',\\n \\"participant_id\\" TEXT DEFAULT '',\\n \\"type\\" TEXT DEFAULT 'feature',\\n \\"description\\" TEXT DEFAULT '',\\n \\"evidence\\" TEXT DEFAULT '[]',\\n \\"visibility\\" TEXT DEFAULT 'requester',\\n \\"origin\\" TEXT DEFAULT 'managed-app',\\n \\"discussion\\" TEXT DEFAULT '',\\n \\"status\\" TEXT DEFAULT 'submitted'\\n);","columns":{"id":{"type":"UUID","primaryKey":true,"referenceKind":"id","notNull":true},"slug":{"type":"TEXT","notNull":true},"context":{"type":"TEXT","notNull":true,"default":""},"created_at":{"type":"TIMESTAMP","notNull":true,"default":"current_timestamp"},"updated_at":{"type":"TIMESTAMP","notNull":true,"default":"current_timestamp"},"tenant_id":{"type":"UUID","referenceKind":"tenantId","notNull":true,"unique":false},"project_id":{"type":"TEXT","notNull":false,"unique":false,"default":""},"integration_id":{"type":"UUID","referenceKind":"foreignKey","notNull":true,"unique":false,"foreignKey":{"table":"project_integrations","column":"id","onDelete":"NO ACTION","onUpdate":"CASCADE"}},"requester_id":{"type":"TEXT","notNull":false,"unique":false,"default":""},"participant_id":{"type":"TEXT","notNull":false,"unique":false,"default":""},"type":{"type":"TEXT","notNull":false,"unique":false,"default":"feature"},"description":{"type":"TEXT","notNull":false,"unique":false,"default":""},"evidence":{"type":"TEXT","notNull":false,"unique":false,"default":"[]"},"visibility":{"type":"TEXT","notNull":false,"unique":false,"default":"requester"},"origin":{"type":"TEXT","notNull":false,"unique":false,"default":"managed-app"},"discussion":{"type":"TEXT","notNull":false,"unique":false,"default":""},"status":{"type":"TEXT","notNull":false,"unique":false,"default":"submitted"}},"indexes":[{"name":"development_requests_slug_context_idx","columns":["tenant_id","slug","context"],"unique":true},{"name":"development_requests_tenant_id_created_at_idx","columns":["tenant_id","created_at"]},{"name":"development_requests_integration_id_idx","columns":["integration_id"]}],"version":"4bdaa6ff"},"importPath":"@happyvertical/smrt-projects"},"@happyvertical/smrt-projects:IssueCollection":{"name":"issuecollection","className":"IssueCollection","qualifiedName":"@happyvertical/smrt-projects:IssueCollection","collection":"issues","filePath":"/home/runner/work/smrt/smrt/packages/projects/src/collections/Issues.ts","packageName":"@happyvertical/smrt-projects","fields":{},"methods":{"discover":{"name":"discover","async":true,"parameters":[{"name":"options","type":"object","optional":false,"memberTypes":["Repository","SearchFilters"]}],"returnType":"Promise<Issue[]>","isStatic":false,"isPublic":true},"findByRepository":{"name":"findByRepository","async":true,"parameters":[{"name":"repositoryId","type":"string","optional":false}],"returnType":"Promise<Issue[]>","isStatic":false,"isPublic":true},"findOpen":{"name":"findOpen","async":true,"parameters":[{"name":"repositoryId","type":"string","optional":true}],"returnType":"Promise<Issue[]>","isStatic":false,"isPublic":true},"findByLabel":{"name":"findByLabel","async":true,"parameters":[{"name":"label","type":"string","optional":false},{"name":"repositoryId","type":"string","optional":true}],"returnType":"Promise<Issue[]>","isStatic":false,"isPublic":true},"findByAssignee":{"name":"findByAssignee","async":true,"parameters":[{"name":"assignee","type":"string","optional":false},{"name":"repositoryId","type":"string","optional":true}],"returnType":"Promise<Issue[]>","isStatic":false,"isPublic":true},"findNeedingReview":{"name":"findNeedingReview","async":true,"parameters":[{"name":"repositoryId","type":"string","optional":true}],"returnType":"Promise<Issue[]>","isStatic":false,"isPublic":true},"findByNumber":{"name":"findByNumber","async":true,"parameters":[{"name":"repositoryId","type":"string","optional":false},{"name":"number","type":"number","optional":false}],"returnType":"Promise<Issue | null>","isStatic":false,"isPublic":true},"findWithUnincorporatedFeedback":{"name":"findWithUnincorporatedFeedback","async":true,"parameters":[{"name":"repositoryId","type":"string","optional":true}],"returnType":"Promise<Issue[]>","isStatic":false,"isPublic":true},"batchSync":{"name":"batchSync","async":true,"parameters":[{"name":"repository","type":"Repository","optional":false},{"name":"options","type":"object","optional":true,"memberTypes":["boolean"]}],"returnType":"Promise<Issue[]>","isStatic":false,"isPublic":true},"findByTenant":{"name":"findByTenant","async":true,"parameters":[{"name":"tenantId","type":"string","optional":false}],"returnType":"Promise<Issue[]>","isStatic":false,"isPublic":true},"findGlobal":{"name":"findGlobal","async":true,"parameters":[],"returnType":"Promise<Issue[]>","isStatic":false,"isPublic":true},"findWithGlobals":{"name":"findWithGlobals","async":true,"parameters":[{"name":"tenantId","type":"string","optional":false}],"returnType":"Promise<Issue[]>","isStatic":false,"isPublic":true}},"decoratorConfig":{},"extends":"SmrtCollection","extendsTypeArg":"Issue","exportName":"IssueCollection","collectionExportName":"IssueCollectionCollection","schema":{"tableName":"issues","ddl":"CREATE TABLE IF NOT EXISTS \\"issues\\" (\\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 \\"repository_id\\" UUID,\\n \\"number\\" INTEGER DEFAULT 0,\\n \\"node_id\\" TEXT DEFAULT '',\\n \\"title\\" TEXT DEFAULT '',\\n \\"body\\" TEXT DEFAULT '',\\n \\"state\\" TEXT DEFAULT 'open',\\n \\"author\\" TEXT DEFAULT '',\\n \\"labels\\" JSON DEFAULT '[]',\\n \\"assignees\\" JSON DEFAULT '[]',\\n \\"comments_count\\" INTEGER DEFAULT 0,\\n \\"last_synced_at\\" TIMESTAMP,\\n \\"original_body\\" TEXT DEFAULT '',\\n \\"synthesis_count\\" INTEGER DEFAULT 0,\\n \\"head_ref\\" TEXT DEFAULT '',\\n \\"base_ref\\" TEXT DEFAULT '',\\n \\"merged\\" BOOLEAN DEFAULT FALSE,\\n \\"merged_at\\" TIMESTAMP,\\n \\"mergeable\\" BOOLEAN DEFAULT TRUE,\\n \\"draft\\" BOOLEAN DEFAULT FALSE,\\n \\"additions\\" INTEGER DEFAULT 0,\\n \\"deletions\\" INTEGER DEFAULT 0,\\n \\"changed_files\\" INTEGER DEFAULT 0\\n);","columns":{"id":{"type":"UUID","primaryKey":true,"referenceKind":"id","notNull":true},"slug":{"type":"TEXT","notNull":true},"context":{"type":"TEXT","notNull":true,"default":""},"_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},"repository_id":{"type":"UUID","referenceKind":"foreignKey","notNull":false,"foreignKey":{"table":"repositories","column":"id","onDelete":"NO ACTION","onUpdate":"CASCADE"}},"number":{"type":"INTEGER","notNull":false,"default":0},"node_id":{"type":"TEXT","notNull":false,"default":""},"title":{"type":"TEXT","notNull":false,"default":""},"body":{"type":"TEXT","notNull":false,"default":""},"state":{"type":"TEXT","notNull":false,"default":"open"},"author":{"type":"TEXT","notNull":false,"default":""},"labels":{"type":"JSON","notNull":false,"default":[]},"assignees":{"type":"JSON","notNull":false,"default":[]},"comments_count":{"type":"INTEGER","notNull":false,"default":0},"last_synced_at":{"type":"TIMESTAMP","notNull":false},"original_body":{"type":"TEXT","notNull":false,"default":""},"synthesis_count":{"type":"INTEGER","notNull":false,"default":0},"head_ref":{"type":"TEXT","notNull":false,"default":""},"base_ref":{"type":"TEXT","notNull":false,"default":""},"merged":{"type":"BOOLEAN","notNull":false,"default":false},"merged_at":{"type":"TIMESTAMP","notNull":false},"mergeable":{"type":"BOOLEAN","notNull":false,"default":true},"draft":{"type":"BOOLEAN","notNull":false,"default":false},"additions":{"type":"INTEGER","notNull":false,"default":0},"deletions":{"type":"INTEGER","notNull":false,"default":0},"changed_files":{"type":"INTEGER","notNull":false,"default":0}},"indexes":[{"name":"issues_slug_context_meta_type_idx","columns":["tenant_id","slug","context","_meta_type"],"unique":true,"nullsNotDistinct":true},{"name":"issues_meta_type_idx","columns":["_meta_type"]},{"name":"issues_tenant_id_created_at_idx","columns":["tenant_id","created_at"]},{"name":"issues_repository_id_idx","columns":["repository_id"]}],"version":"c3d5425b"},"importPath":"@happyvertical/smrt-projects"},"@happyvertical/smrt-projects:ProjectIntegrationAuditCollection":{"name":"projectintegrationauditcollection","className":"ProjectIntegrationAuditCollection","qualifiedName":"@happyvertical/smrt-projects:ProjectIntegrationAuditCollection","collection":"projectintegrationaudits","filePath":"/home/runner/work/smrt/smrt/packages/projects/src/collections/ProjectIntegrationAudits.ts","packageName":"@happyvertical/smrt-projects","fields":{},"methods":{"listForIntegration":{"name":"listForIntegration","async":true,"parameters":[{"name":"tenantId","type":"string","optional":false},{"name":"integrationId","type":"string","optional":false}],"returnType":"Promise<ProjectIntegrationAudit[]>","isStatic":false,"isPublic":true}},"decoratorConfig":{"tableName":"project_integration_audits","api":false,"mcp":false,"cli":false},"extends":"SmrtCollection","extendsTypeArg":"ProjectIntegrationAudit","exportName":"ProjectIntegrationAuditCollection","collectionExportName":"ProjectIntegrationAuditCollectionCollection","schema":{"tableName":"project_integration_audits","ddl":"CREATE TABLE IF NOT EXISTS \\"project_integration_audits\\" (\\n \\"id\\" UUID PRIMARY KEY NOT NULL,\\n \\"slug\\" TEXT NOT NULL,\\n \\"context\\" TEXT NOT NULL DEFAULT '',\\n \\"created_at\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\"updated_at\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\"tenant_id\\" UUID NOT NULL,\\n \\"integration_id\\" UUID NOT NULL,\\n \\"action\\" TEXT DEFAULT 'created',\\n \\"note\\" TEXT\\n);","columns":{"id":{"type":"UUID","primaryKey":true,"referenceKind":"id","notNull":true},"slug":{"type":"TEXT","notNull":true},"context":{"type":"TEXT","notNull":true,"default":""},"created_at":{"type":"TIMESTAMP","notNull":true,"default":"current_timestamp"},"updated_at":{"type":"TIMESTAMP","notNull":true,"default":"current_timestamp"},"tenant_id":{"type":"UUID","referenceKind":"tenantId","notNull":true,"unique":false},"integration_id":{"type":"UUID","referenceKind":"foreignKey","notNull":true,"unique":false,"foreignKey":{"table":"project_integrations","column":"id","onDelete":"NO ACTION","onUpdate":"CASCADE"}},"action":{"type":"TEXT","notNull":false,"unique":false,"default":"created"},"note":{"type":"TEXT","notNull":false,"unique":false}},"indexes":[{"name":"project_integration_audits_slug_context_idx","columns":["tenant_id","slug","context"],"unique":true},{"name":"project_integration_audits_tenant_id_created_at_idx","columns":["tenant_id","created_at"]},{"name":"project_integration_audits_integration_id_idx","columns":["integration_id"]}],"version":"03cc10a2"},"importPath":"@happyvertical/smrt-projects"},"@happyvertical/smrt-projects:ProjectIntegrationCollection":{"name":"projectintegrationcollection","className":"ProjectIntegrationCollection","qualifiedName":"@happyvertical/smrt-projects:ProjectIntegrationCollection","collection":"projectintegrations","filePath":"/home/runner/work/smrt/smrt/packages/projects/src/collections/ProjectIntegrations.ts","packageName":"@happyvertical/smrt-projects","fields":{},"methods":{"provision":{"name":"provision","async":true,"parameters":[{"name":"input","type":"object","optional":false,"memberTypes":["string","ProjectIntegrationCapability[]"]}],"returnType":"Promise<object>","isStatic":false,"isPublic":true},"rotate":{"name":"rotate","async":true,"parameters":[{"name":"tenantId","type":"string","optional":false},{"name":"integrationId","type":"string","optional":false}],"returnType":"Promise<object>","isStatic":false,"isPublic":true},"revoke":{"name":"revoke","async":true,"parameters":[{"name":"tenantId","type":"string","optional":false},{"name":"integrationId","type":"string","optional":false}],"returnType":"Promise<ProjectIntegration>","isStatic":false,"isPublic":true},"authenticate":{"name":"authenticate","async":true,"parameters":[{"name":"credential","type":"string","optional":false}],"returnType":"Promise<ProjectIntegration | null>","isStatic":false,"isPublic":true},"listForProject":{"name":"listForProject","async":true,"parameters":[{"name":"tenantId","type":"string","optional":false},{"name":"projectId","type":"string","optional":false}],"returnType":"Promise<ProjectIntegration[]>","isStatic":false,"isPublic":true},"findActive":{"name":"findActive","async":true,"parameters":[{"name":"tenantId","type":"string","optional":false},{"name":"integrationId","type":"string","optional":false}],"returnType":"Promise<ProjectIntegration | null>","isStatic":false,"isPublic":true}},"decoratorConfig":{"tableName":"project_integrations"},"extends":"SmrtCollection","extendsTypeArg":"ProjectIntegration","exportName":"ProjectIntegrationCollection","collectionExportName":"ProjectIntegrationCollectionCollection","schema":{"tableName":"project_integrations","ddl":"CREATE TABLE IF NOT EXISTS \\"project_integrations\\" (\\n \\"id\\" UUID PRIMARY KEY NOT NULL,\\n \\"slug\\" TEXT NOT NULL,\\n \\"context\\" TEXT NOT NULL DEFAULT '',\\n \\"created_at\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\"updated_at\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\"tenant_id\\" UUID NOT NULL,\\n \\"project_id\\" TEXT DEFAULT '',\\n \\"name\\" TEXT DEFAULT '',\\n \\"credential_hash\\" TEXT DEFAULT '',\\n \\"capabilities\\" JSON DEFAULT '[]',\\n \\"status\\" TEXT DEFAULT 'active',\\n \\"revoked_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"},"tenant_id":{"type":"UUID","referenceKind":"tenantId","notNull":true,"unique":false},"project_id":{"type":"TEXT","notNull":false,"unique":false,"default":""},"name":{"type":"TEXT","notNull":false,"unique":false,"default":""},"credential_hash":{"type":"TEXT","notNull":false,"unique":false,"default":""},"capabilities":{"type":"JSON","notNull":false,"unique":false,"default":[]},"status":{"type":"TEXT","notNull":false,"unique":false,"default":"active"},"revoked_at":{"type":"TIMESTAMP","notNull":false,"unique":false}},"indexes":[{"name":"project_integrations_tenant_id_project_id_idx","columns":["tenant_id","project_id","name"],"unique":true,"nullsNotDistinct":true},{"name":"project_integrations_slug_context_idx","columns":["slug","context"]},{"name":"project_integrations_tenant_id_created_at_idx","columns":["tenant_id","created_at"]}],"version":"bfbaa783"},"importPath":"@happyvertical/smrt-projects"},"@happyvertical/smrt-projects:ProjectCollection":{"name":"projectcollection","className":"ProjectCollection","qualifiedName":"@happyvertical/smrt-projects:ProjectCollection","collection":"projects","filePath":"/home/runner/work/smrt/smrt/packages/projects/src/collections/Projects.ts","packageName":"@happyvertical/smrt-projects","fields":{},"methods":{"findByTitle":{"name":"findByTitle","async":true,"parameters":[{"name":"title","type":"string","optional":false}],"returnType":"Promise<Project | null>","isStatic":false,"isPublic":true},"findByOwner":{"name":"findByOwner","async":true,"parameters":[{"name":"owner","type":"string","optional":false}],"returnType":"Promise<Project[]>","isStatic":false,"isPublic":true},"findByProvider":{"name":"findByProvider","async":true,"parameters":[{"name":"providerType","type":"ProjectProviderType","optional":false}],"returnType":"Promise<Project[]>","isStatic":false,"isPublic":true},"getOrCreate":{"name":"getOrCreate","async":true,"parameters":[{"name":"projectId","type":"string","optional":false},{"name":"options","type":"object","optional":true,"memberTypes":["string","ProjectProviderType","Record<string, string>"]}],"returnType":"Promise<Project>","isStatic":false,"isPublic":true},"syncAll":{"name":"syncAll","async":true,"parameters":[{"name":"options","type":"object","optional":true,"memberTypes":["boolean"]}],"returnType":"Promise<Project[]>","isStatic":false,"isPublic":true},"findWithItemsInStatus":{"name":"findWithItemsInStatus","async":true,"parameters":[{"name":"status","type":"string","optional":false}],"returnType":"Promise<Project[]>","isStatic":false,"isPublic":true},"getStatistics":{"name":"getStatistics","async":true,"parameters":[{"name":"projectId","type":"string","optional":false}],"returnType":"Promise<object>","isStatic":false,"isPublic":true},"findByTenant":{"name":"findByTenant","async":true,"parameters":[{"name":"tenantId","type":"string","optional":false}],"returnType":"Promise<Project[]>","isStatic":false,"isPublic":true},"findGlobal":{"name":"findGlobal","async":true,"parameters":[],"returnType":"Promise<Project[]>","isStatic":false,"isPublic":true},"findWithGlobals":{"name":"findWithGlobals","async":true,"parameters":[{"name":"tenantId","type":"string","optional":false}],"returnType":"Promise<Project[]>","isStatic":false,"isPublic":true}},"decoratorConfig":{},"extends":"SmrtCollection","extendsTypeArg":"Project","exportName":"ProjectCollection","collectionExportName":"ProjectCollectionCollection","schema":{"tableName":"projects","ddl":"CREATE TABLE IF NOT EXISTS \\"projects\\" (\\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 \\"project_id\\" TEXT DEFAULT '',\\n \\"project_number\\" INTEGER DEFAULT 0,\\n \\"title\\" TEXT DEFAULT '',\\n \\"description\\" TEXT DEFAULT '',\\n \\"owner\\" TEXT DEFAULT '',\\n \\"url\\" TEXT DEFAULT '',\\n \\"provider_type\\" TEXT DEFAULT 'github',\\n \\"token_config_key\\" TEXT DEFAULT 'GITHUB_TOKEN',\\n \\"statuses\\" JSON DEFAULT '[]',\\n \\"fields\\" JSON DEFAULT '[]',\\n \\"status_field_id\\" TEXT DEFAULT '',\\n \\"status_options\\" JSON DEFAULT '{}',\\n \\"last_synced_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"},"tenant_id":{"type":"UUID","referenceKind":"tenantId","notNull":false,"unique":false},"project_id":{"type":"TEXT","notNull":false,"unique":false,"default":""},"project_number":{"type":"INTEGER","notNull":false,"unique":false,"default":0},"title":{"type":"TEXT","notNull":false,"unique":false,"default":""},"description":{"type":"TEXT","notNull":false,"unique":false,"default":""},"owner":{"type":"TEXT","notNull":false,"unique":false,"default":""},"url":{"type":"TEXT","notNull":false,"unique":false,"default":""},"provider_type":{"type":"TEXT","notNull":false,"unique":false,"default":"github"},"token_config_key":{"type":"TEXT","notNull":false,"unique":false,"default":"GITHUB_TOKEN"},"statuses":{"type":"JSON","notNull":false,"unique":false,"default":[]},"fields":{"type":"JSON","notNull":false,"unique":false,"default":[]},"status_field_id":{"type":"TEXT","notNull":false,"unique":false,"default":""},"status_options":{"type":"JSON","notNull":false,"unique":false,"default":{}},"last_synced_at":{"type":"TIMESTAMP","notNull":false,"unique":false}},"indexes":[{"name":"projects_slug_context_idx","columns":["tenant_id","slug","context"],"unique":true,"nullsNotDistinct":true},{"name":"projects_tenant_id_created_at_idx","columns":["tenant_id","created_at"]}],"version":"2e8c344a"},"importPath":"@happyvertical/smrt-projects"},"@happyvertical/smrt-projects:PullRequestCollection":{"name":"pullrequestcollection","className":"PullRequestCollection","qualifiedName":"@happyvertical/smrt-projects:PullRequestCollection","collection":"issues","filePath":"/home/runner/work/smrt/smrt/packages/projects/src/collections/PullRequests.ts","packageName":"@happyvertical/smrt-projects","fields":{},"methods":{"discover":{"name":"discover","async":true,"parameters":[{"name":"options","type":"object","optional":false,"memberTypes":["Repository","SearchFilters"]}],"returnType":"Promise<PullRequest[]>","isStatic":false,"isPublic":true},"findByRepository":{"name":"findByRepository","async":true,"parameters":[{"name":"repositoryId","type":"string","optional":false}],"returnType":"Promise<PullRequest[]>","isStatic":false,"isPublic":true},"findOpen":{"name":"findOpen","async":true,"parameters":[{"name":"repositoryId","type":"string","optional":true}],"returnType":"Promise<PullRequest[]>","isStatic":false,"isPublic":true},"findDrafts":{"name":"findDrafts","async":true,"parameters":[{"name":"repositoryId","type":"string","optional":true}],"returnType":"Promise<PullRequest[]>","isStatic":false,"isPublic":true},"findReadyToMerge":{"name":"findReadyToMerge","async":true,"parameters":[{"name":"repositoryId","type":"string","optional":true}],"returnType":"Promise<PullRequest[]>","isStatic":false,"isPublic":true},"findByBranch":{"name":"findByBranch","async":true,"parameters":[{"name":"branch","type":"string","optional":false},{"name":"repositoryId","type":"string","optional":true}],"returnType":"Promise<PullRequest[]>","isStatic":false,"isPublic":true},"findByNumber":{"name":"findByNumber","async":true,"parameters":[{"name":"repositoryId","type":"string","optional":false},{"name":"number","type":"number","optional":false}],"returnType":"Promise<PullRequest | null>","isStatic":false,"isPublic":true},"findAIReadyToMerge":{"name":"findAIReadyToMerge","async":true,"parameters":[{"name":"repositoryId","type":"string","optional":true}],"returnType":"Promise<PullRequest[]>","isStatic":false,"isPublic":true},"findBySize":{"name":"findBySize","async":true,"parameters":[{"name":"size","type":"'xs' | 's' | 'm' | 'l' | 'xl'","optional":false,"unionBranches":[{"type":"'xs'"},{"type":"'s'"},{"type":"'m'"},{"type":"'l'"},{"type":"'xl'"}]},{"name":"repositoryId","type":"string","optional":true}],"returnType":"Promise<PullRequest[]>","isStatic":false,"isPublic":true},"batchSync":{"name":"batchSync","async":true,"parameters":[{"name":"repository","type":"Repository","optional":false},{"name":"options","type":"object","optional":true,"memberTypes":["boolean"]}],"returnType":"Promise<PullRequest[]>","isStatic":false,"isPublic":true},"findByTenant":{"name":"findByTenant","async":true,"parameters":[{"name":"tenantId","type":"string","optional":false}],"returnType":"Promise<PullRequest[]>","isStatic":false,"isPublic":true},"findGlobal":{"name":"findGlobal","async":true,"parameters":[],"returnType":"Promise<PullRequest[]>","isStatic":false,"isPublic":true},"findWithGlobals":{"name":"findWithGlobals","async":true,"parameters":[{"name":"tenantId","type":"string","optional":false}],"returnType":"Promise<PullRequest[]>","isStatic":false,"isPublic":true}},"decoratorConfig":{"tableName":"issues"},"extends":"SmrtCollection","extendsTypeArg":"PullRequest","exportName":"PullRequestCollection","collectionExportName":"PullRequestCollectionCollection","schema":{"tableName":"issues","ddl":"CREATE TABLE IF NOT EXISTS \\"issues\\" (\\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 \\"repository_id\\" UUID,\\n \\"number\\" INTEGER DEFAULT 0,\\n \\"node_id\\" TEXT DEFAULT '',\\n \\"title\\" TEXT DEFAULT '',\\n \\"body\\" TEXT DEFAULT '',\\n \\"state\\" TEXT DEFAULT 'open',\\n \\"author\\" TEXT DEFAULT '',\\n \\"labels\\" JSON DEFAULT '[]',\\n \\"assignees\\" JSON DEFAULT '[]',\\n \\"comments_count\\" INTEGER DEFAULT 0,\\n \\"last_synced_at\\" TIMESTAMP,\\n \\"original_body\\" TEXT DEFAULT '',\\n \\"synthesis_count\\" INTEGER DEFAULT 0,\\n \\"head_ref\\" TEXT DEFAULT '',\\n \\"base_ref\\" TEXT DEFAULT '',\\n \\"merged\\" BOOLEAN DEFAULT FALSE,\\n \\"merged_at\\" TIMESTAMP,\\n \\"mergeable\\" BOOLEAN DEFAULT TRUE,\\n \\"draft\\" BOOLEAN DEFAULT FALSE,\\n \\"additions\\" INTEGER DEFAULT 0,\\n \\"deletions\\" INTEGER DEFAULT 0,\\n \\"changed_files\\" INTEGER DEFAULT 0\\n);","columns":{"id":{"type":"UUID","primaryKey":true,"referenceKind":"id","notNull":true},"slug":{"type":"TEXT","notNull":true},"context":{"type":"TEXT","notNull":true,"default":""},"_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},"repository_id":{"type":"UUID","referenceKind":"foreignKey","notNull":false,"foreignKey":{"table":"repositories","column":"id","onDelete":"NO ACTION","onUpdate":"CASCADE"}},"number":{"type":"INTEGER","notNull":false,"default":0},"node_id":{"type":"TEXT","notNull":false,"default":""},"title":{"type":"TEXT","notNull":false,"default":""},"body":{"type":"TEXT","notNull":false,"default":""},"state":{"type":"TEXT","notNull":false,"default":"open"},"author":{"type":"TEXT","notNull":false,"default":""},"labels":{"type":"JSON","notNull":false,"default":[]},"assignees":{"type":"JSON","notNull":false,"default":[]},"comments_count":{"type":"INTEGER","notNull":false,"default":0},"last_synced_at":{"type":"TIMESTAMP","notNull":false},"original_body":{"type":"TEXT","notNull":false,"default":""},"synthesis_count":{"type":"INTEGER","notNull":false,"default":0},"head_ref":{"type":"TEXT","notNull":false,"default":""},"base_ref":{"type":"TEXT","notNull":false,"default":""},"merged":{"type":"BOOLEAN","notNull":false,"default":false},"merged_at":{"type":"TIMESTAMP","notNull":false},"mergeable":{"type":"BOOLEAN","notNull":false,"default":true},"draft":{"type":"BOOLEAN","notNull":false,"default":false},"additions":{"type":"INTEGER","notNull":false,"default":0},"deletions":{"type":"INTEGER","notNull":false,"default":0},"changed_files":{"type":"INTEGER","notNull":false,"default":0}},"indexes":[{"name":"issues_slug_context_meta_type_idx","columns":["tenant_id","slug","context","_meta_type"],"unique":true,"nullsNotDistinct":true},{"name":"issues_meta_type_idx","columns":["_meta_type"]},{"name":"issues_tenant_id_created_at_idx","columns":["tenant_id","created_at"]},{"name":"issues_repository_id_idx","columns":["repository_id"]}],"version":"3f16e583"},"importPath":"@happyvertical/smrt-projects"},"@happyvertical/smrt-projects:RepositoryCollection":{"name":"repositorycollection","className":"RepositoryCollection","qualifiedName":"@happyvertical/smrt-projects:RepositoryCollection","collection":"repositories","filePath":"/home/runner/work/smrt/smrt/packages/projects/src/collections/Repositories.ts","packageName":"@happyvertical/smrt-projects","fields":{},"methods":{"findByFullName":{"name":"findByFullName","async":true,"parameters":[{"name":"owner","type":"string","optional":false},{"name":"name","type":"string","optional":false}],"returnType":"Promise<Repository | null>","isStatic":false,"isPublic":true},"findByOwner":{"name":"findByOwner","async":true,"parameters":[{"name":"owner","type":"string","optional":false}],"returnType":"Promise<Repository[]>","isStatic":false,"isPublic":true},"findByProvider":{"name":"findByProvider","async":true,"parameters":[{"name":"providerType","type":"RepositoryProviderType","optional":false}],"returnType":"Promise<Repository[]>","isStatic":false,"isPublic":true},"getOrCreate":{"name":"getOrCreate","async":true,"parameters":[{"name":"owner","type":"string","optional":false},{"name":"name","type":"string","optional":false},{"name":"options","type":"object","optional":true,"memberTypes":["RepositoryProviderType","string"]}],"returnType":"Promise<Repository>","isStatic":false,"isPublic":true},"syncAll":{"name":"syncAll","async":true,"parameters":[{"name":"options","type":"object","optional":true,"memberTypes":["boolean"]}],"returnType":"Promise<Repository[]>","isStatic":false,"isPublic":true},"findWithOpenIssues":{"name":"findWithOpenIssues","async":true,"parameters":[],"returnType":"Promise<Repository[]>","isStatic":false,"isPublic":true},"findByTenant":{"name":"findByTenant","async":true,"parameters":[{"name":"tenantId","type":"string","optional":false}],"returnType":"Promise<Repository[]>","isStatic":false,"isPublic":true},"findGlobal":{"name":"findGlobal","async":true,"parameters":[],"returnType":"Promise<Repository[]>","isStatic":false,"isPublic":true},"findWithGlobals":{"name":"findWithGlobals","async":true,"parameters":[{"name":"tenantId","type":"string","optional":false}],"returnType":"Promise<Repository[]>","isStatic":false,"isPublic":true}},"decoratorConfig":{},"extends":"SmrtCollection","extendsTypeArg":"Repository","exportName":"RepositoryCollection","collectionExportName":"RepositoryCollectionCollection","schema":{"tableName":"repositories","ddl":"CREATE TABLE IF NOT EXISTS \\"repositories\\" (\\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 \\"owner\\" TEXT DEFAULT '',\\n \\"name\\" TEXT DEFAULT '',\\n \\"full_name\\" TEXT DEFAULT '',\\n \\"description\\" TEXT DEFAULT '',\\n \\"default_branch\\" TEXT DEFAULT 'main',\\n \\"is_private\\" BOOLEAN DEFAULT FALSE,\\n \\"provider_type\\" TEXT DEFAULT 'github',\\n \\"base_url\\" TEXT DEFAULT '',\\n \\"token_config_key\\" TEXT DEFAULT 'GITHUB_TOKEN',\\n \\"last_synced_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"},"tenant_id":{"type":"UUID","referenceKind":"tenantId","notNull":false,"unique":false},"owner":{"type":"TEXT","notNull":false,"unique":false,"default":""},"name":{"type":"TEXT","notNull":false,"unique":false,"default":""},"full_name":{"type":"TEXT","notNull":false,"unique":false,"default":""},"description":{"type":"TEXT","notNull":false,"unique":false,"default":""},"default_branch":{"type":"TEXT","notNull":false,"unique":false,"default":"main"},"is_private":{"type":"BOOLEAN","notNull":false,"unique":false,"default":false},"provider_type":{"type":"TEXT","notNull":false,"unique":false,"default":"github"},"base_url":{"type":"TEXT","notNull":false,"unique":false,"default":""},"token_config_key":{"type":"TEXT","notNull":false,"unique":false,"default":"GITHUB_TOKEN"},"last_synced_at":{"type":"TIMESTAMP","notNull":false,"unique":false}},"indexes":[{"name":"repositories_slug_context_idx","columns":["tenant_id","slug","context"],"unique":true,"nullsNotDistinct":true},{"name":"repositories_tenant_id_created_at_idx","columns":["tenant_id","created_at"]}],"version":"c302a5e5"},"importPath":"@happyvertical/smrt-projects"},"@happyvertical/smrt-projects:Comment":{"name":"comment","className":"Comment","qualifiedName":"@happyvertical/smrt-projects:Comment","collection":"comments","filePath":"/home/runner/work/smrt/smrt/packages/projects/src/models/Comment.ts","packageName":"@happyvertical/smrt-projects","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}}},"issueId":{"type":"foreignKey","required":false,"related":"Issue"},"commentId":{"type":"text","required":false,"default":""},"body":{"type":"text","required":false,"default":""},"author":{"type":"text","required":false,"default":""},"createdAt":{"type":"datetime","required":false},"updatedAt":{"type":"datetime","required":false},"url":{"type":"text","required":false,"default":""}},"methods":{"isQuestion":{"name":"isQuestion","async":true,"parameters":[],"returnType":"Promise<boolean>","isStatic":false,"isPublic":true},"isApproval":{"name":"isApproval","async":true,"parameters":[],"returnType":"Promise<boolean>","isStatic":false,"isPublic":true},"requestsChanges":{"name":"requestsChanges","async":true,"parameters":[],"returnType":"Promise<boolean>","isStatic":false,"isPublic":true},"extractActionItems":{"name":"extractActionItems","async":true,"parameters":[],"returnType":"Promise<string[]>","isStatic":false,"isPublic":true},"summarize":{"name":"summarize","async":true,"parameters":[],"returnType":"Promise<string>","isStatic":false,"isPublic":true},"getSentiment":{"name":"getSentiment","async":true,"parameters":[],"returnType":"Promise<CommentSentiment>","isStatic":false,"isPublic":true}},"decoratorConfig":{"api":{"include":["list","get"]},"mcp":{"include":["list","get"]},"cli":{"include":["list","get"]},"tenantScoped":{"mode":"optional"},"conflictColumns":["tenant_id","slug","context"]},"extends":"SmrtObject","exportName":"Comment","collectionExportName":"CommentCollection","schema":{"tableName":"comments","ddl":"CREATE TABLE IF NOT EXISTS \\"comments\\" (\\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 \\"issue_id\\" UUID,\\n \\"comment_id\\" TEXT DEFAULT '',\\n \\"body\\" TEXT DEFAULT '',\\n \\"author\\" TEXT DEFAULT '',\\n \\"url\\" TEXT DEFAULT ''\\n);","columns":{"id":{"type":"UUID","primaryKey":true,"referenceKind":"id","notNull":true},"slug":{"type":"TEXT","notNull":true},"context":{"type":"TEXT","notNull":true,"default":""},"created_at":{"type":"TIMESTAMP","notNull":true,"default":"current_timestamp"},"updated_at":{"type":"TIMESTAMP","notNull":true,"default":"current_timestamp"},"tenant_id":{"type":"UUID","referenceKind":"tenantId","notNull":false,"unique":false},"issue_id":{"type":"UUID","referenceKind":"foreignKey","notNull":false,"unique":false,"foreignKey":{"table":"issues","column":"id","onDelete":"NO ACTION","onUpdate":"CASCADE"}},"comment_id":{"type":"TEXT","notNull":false,"unique":false,"default":""},"body":{"type":"TEXT","notNull":false,"unique":false,"default":""},"author":{"type":"TEXT","notNull":false,"unique":false,"default":""},"url":{"type":"TEXT","notNull":false,"unique":false,"default":""}},"indexes":[{"name":"comments_slug_context_idx","columns":["tenant_id","slug","context"],"unique":true,"nullsNotDistinct":true},{"name":"comments_tenant_id_created_at_idx","columns":["tenant_id","created_at"]},{"name":"comments_issue_id_idx","columns":["issue_id"]}],"version":"ffcc1937"},"importPath":"@happyvertical/smrt-projects"},"@happyvertical/smrt-projects:DevelopmentRequest":{"name":"developmentrequest","className":"DevelopmentRequest","qualifiedName":"@happyvertical/smrt-projects:DevelopmentRequest","collection":"developmentrequests","filePath":"/home/runner/work/smrt/smrt/packages/projects/src/models/DevelopmentRequest.ts","packageName":"@happyvertical/smrt-projects","fields":{"tenantId":{"type":"text","required":true,"_meta":{"sqlType":"UUID","__tenancy":{"isTenantIdField":true,"autoFilter":true,"required":true,"autoPopulate":true,"nullable":false,"mode":"required","field":"tenantId","allowSuperAdminBypass":false}}},"projectId":{"type":"text","required":false,"default":""},"integrationId":{"type":"foreignKey","required":true,"related":"ProjectIntegration","_meta":{"required":true}},"requesterId":{"type":"text","required":false,"default":""},"participantId":{"type":"text","required":false,"default":""},"type":{"type":"text","required":false,"default":"feature"},"description":{"type":"text","required":false,"default":""},"evidence":{"type":"text","required":false,"default":"[]"},"visibility":{"type":"text","required":false,"default":"requester"},"origin":{"type":"text","required":false,"default":"managed-app"},"discussion":{"type":"text","required":false,"default":""},"status":{"type":"text","required":false,"default":"submitted"}},"methods":{"initialize":{"name":"initialize","async":true,"parameters":[],"returnType":"Promise<this>","isStatic":false,"isPublic":true},"getEvidence":{"name":"getEvidence","async":false,"parameters":[],"returnType":"DevelopmentRequestEvidence[]","isStatic":false,"isPublic":true},"setEvidence":{"name":"setEvidence","async":false,"parameters":[{"name":"value","type":"DevelopmentRequestEvidence[] | string","optional":false,"unionBranches":[{"type":"DevelopmentRequestEvidence[]"},{"type":"string"}]}],"returnType":"void","isStatic":false,"isPublic":true}},"decoratorConfig":{"tableName":"development_requests","api":false,"mcp":false,"cli":false,"tenantScoped":{"mode":"required"},"conflictColumns":["tenant_id","slug","context"]},"extends":"SmrtObject","exportName":"DevelopmentRequest","collectionExportName":"DevelopmentRequestCollection","validationRules":[{"field":"integrationId","rule":"required","fieldType":"foreignKey"}],"schema":{"tableName":"development_requests","ddl":"CREATE TABLE IF NOT EXISTS \\"development_requests\\" (\\n \\"id\\" UUID PRIMARY KEY NOT NULL,\\n \\"slug\\" TEXT NOT NULL,\\n \\"context\\" TEXT NOT NULL DEFAULT '',\\n \\"created_at\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\"updated_at\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\"tenant_id\\" UUID NOT NULL,\\n \\"project_id\\" TEXT DEFAULT '',\\n \\"integration_id\\" UUID NOT NULL,\\n \\"requester_id\\" TEXT DEFAULT '',\\n \\"participant_id\\" TEXT DEFAULT '',\\n \\"type\\" TEXT DEFAULT 'feature',\\n \\"description\\" TEXT DEFAULT '',\\n \\"evidence\\" TEXT DEFAULT '[]',\\n \\"visibility\\" TEXT DEFAULT 'requester',\\n \\"origin\\" TEXT DEFAULT 'managed-app',\\n \\"discussion\\" TEXT DEFAULT '',\\n \\"status\\" TEXT DEFAULT 'submitted'\\n);","columns":{"id":{"type":"UUID","primaryKey":true,"referenceKind":"id","notNull":true},"slug":{"type":"TEXT","notNull":true},"context":{"type":"TEXT","notNull":true,"default":""},"created_at":{"type":"TIMESTAMP","notNull":true,"default":"current_timestamp"},"updated_at":{"type":"TIMESTAMP","notNull":true,"default":"current_timestamp"},"tenant_id":{"type":"UUID","referenceKind":"tenantId","notNull":true,"unique":false},"project_id":{"type":"TEXT","notNull":false,"unique":false,"default":""},"integration_id":{"type":"UUID","referenceKind":"foreignKey","notNull":true,"unique":false,"foreignKey":{"table":"project_integrations","column":"id","onDelete":"NO ACTION","onUpdate":"CASCADE"}},"requester_id":{"type":"TEXT","notNull":false,"unique":false,"default":""},"participant_id":{"type":"TEXT","notNull":false,"unique":false,"default":""},"type":{"type":"TEXT","notNull":false,"unique":false,"default":"feature"},"description":{"type":"TEXT","notNull":false,"unique":false,"default":""},"evidence":{"type":"TEXT","notNull":false,"unique":false,"default":"[]"},"visibility":{"type":"TEXT","notNull":false,"unique":false,"default":"requester"},"origin":{"type":"TEXT","notNull":false,"unique":false,"default":"managed-app"},"discussion":{"type":"TEXT","notNull":false,"unique":false,"default":""},"status":{"type":"TEXT","notNull":false,"unique":false,"default":"submitted"}},"indexes":[{"name":"development_requests_slug_context_idx","columns":["tenant_id","slug","context"],"unique":true},{"name":"development_requests_tenant_id_created_at_idx","columns":["tenant_id","created_at"]},{"name":"development_requests_integration_id_idx","columns":["integration_id"]}],"version":"4bdaa6ff"},"importPath":"@happyvertical/smrt-projects"},"@happyvertical/smrt-projects:DevelopmentRequestHistory":{"name":"developmentrequesthistory","className":"DevelopmentRequestHistory","qualifiedName":"@happyvertical/smrt-projects:DevelopmentRequestHistory","collection":"developmentrequesthistories","filePath":"/home/runner/work/smrt/smrt/packages/projects/src/models/DevelopmentRequestHistory.ts","packageName":"@happyvertical/smrt-projects","fields":{"tenantId":{"type":"text","required":true,"_meta":{"sqlType":"UUID","__tenancy":{"isTenantIdField":true,"autoFilter":true,"required":true,"autoPopulate":true,"nullable":false,"mode":"required","field":"tenantId","allowSuperAdminBypass":false}}},"requestId":{"type":"foreignKey","required":true,"related":"DevelopmentRequest","_meta":{"required":true}},"fromStatus":{"type":"text","required":false,"default":""},"toStatus":{"type":"text","required":false,"default":"submitted"},"actorType":{"type":"text","required":false,"default":"system"},"actorId":{"type":"text","required":false,"default":""},"note":{"type":"text","required":false}},"methods":{},"decoratorConfig":{"tableName":"development_request_histories","api":false,"mcp":false,"cli":false,"tenantScoped":{"mode":"required"},"conflictColumns":["tenant_id","slug","context"]},"extends":"SmrtObject","exportName":"DevelopmentRequestHistory","collectionExportName":"DevelopmentRequestHistoryCollection","validationRules":[{"field":"requestId","rule":"required","fieldType":"foreignKey"}],"schema":{"tableName":"development_request_histories","ddl":"CREATE TABLE IF NOT EXISTS \\"development_request_histories\\" (\\n \\"id\\" UUID PRIMARY KEY NOT NULL,\\n \\"slug\\" TEXT NOT NULL,\\n \\"context\\" TEXT NOT NULL DEFAULT '',\\n \\"created_at\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\"updated_at\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\"tenant_id\\" UUID NOT NULL,\\n \\"request_id\\" UUID NOT NULL,\\n \\"from_status\\" TEXT DEFAULT '',\\n \\"to_status\\" TEXT DEFAULT 'submitted',\\n \\"actor_type\\" TEXT DEFAULT 'system',\\n \\"actor_id\\" TEXT DEFAULT '',\\n \\"note\\" TEXT\\n);","columns":{"id":{"type":"UUID","primaryKey":true,"referenceKind":"id","notNull":true},"slug":{"type":"TEXT","notNull":true},"context":{"type":"TEXT","notNull":true,"default":""},"created_at":{"type":"TIMESTAMP","notNull":true,"default":"current_timestamp"},"updated_at":{"type":"TIMESTAMP","notNull":true,"default":"current_timestamp"},"tenant_id":{"type":"UUID","referenceKind":"tenantId","notNull":true,"unique":false},"request_id":{"type":"UUID","referenceKind":"foreignKey","notNull":true,"unique":false,"foreignKey":{"table":"development_requests","column":"id","onDelete":"NO ACTION","onUpdate":"CASCADE"}},"from_status":{"type":"TEXT","notNull":false,"unique":false,"default":""},"to_status":{"type":"TEXT","notNull":false,"unique":false,"default":"submitted"},"actor_type":{"type":"TEXT","notNull":false,"unique":false,"default":"system"},"actor_id":{"type":"TEXT","notNull":false,"unique":false,"default":""},"note":{"type":"TEXT","notNull":false,"unique":false}},"indexes":[{"name":"development_request_histories_slug_context_idx","columns":["tenant_id","slug","context"],"unique":true},{"name":"development_request_histories_tenant_id_created_at_idx","columns":["tenant_id","created_at"]},{"name":"development_request_histories_request_id_idx","columns":["request_id"]}],"version":"67389678"},"importPath":"@happyvertical/smrt-projects"},"@happyvertical/smrt-projects:Issue":{"name":"issue","className":"Issue","qualifiedName":"@happyvertical/smrt-projects:Issue","collection":"issues","filePath":"/home/runner/work/smrt/smrt/packages/projects/src/models/Issue.ts","packageName":"@happyvertical/smrt-projects","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}}},"repositoryId":{"type":"foreignKey","required":true,"related":"Repository","_meta":{"required":true}},"number":{"type":"integer","required":false,"default":0},"nodeId":{"type":"text","required":false,"default":""},"title":{"type":"text","required":false,"default":""},"body":{"type":"text","required":false,"default":""},"state":{"type":"text","required":false,"default":"open"},"author":{"type":"text","required":false,"default":""},"labels":{"type":"json","required":false,"default":[]},"assignees":{"type":"json","required":false,"default":[]},"commentsCount":{"type":"integer","required":false,"default":0},"lastSyncedAt":{"type":"datetime","required":false},"originalBody":{"type":"text","required":false,"default":""},"synthesisCount":{"type":"integer","required":false,"default":0}},"methods":{"getRepository":{"name":"getRepository","async":true,"parameters":[],"returnType":"Promise<Repository>","isStatic":false,"isPublic":true},"getClient":{"name":"getClient","async":true,"parameters":[],"returnType":"Promise<IRepository>","isStatic":false,"isPublic":true},"clearCache":{"name":"clearCache","async":false,"parameters":[],"returnType":"void","isStatic":false,"isPublic":true},"sync":{"name":"sync","async":true,"parameters":[{"name":"options","type":"SyncOptions","optional":true}],"returnType":"Promise<this>","isStatic":false,"isPublic":true},"getComments":{"name":"getComments","async":true,"parameters":[],"returnType":"Promise<Comment[]>","isStatic":false,"isPublic":true},"addComment":{"name":"addComment","async":true,"parameters":[{"name":"body","type":"string","optional":false}],"returnType":"Promise<Comment>","isStatic":false,"isPublic":true},"incorporateFeedback":{"name":"incorporateFeedback","async":true,"parameters":[{"name":"options","type":"IncorporateFeedbackOptions","optional":true}],"returnType":"Promise<IncorporateFeedbackResult>","isStatic":false,"isPublic":true},"rollback":{"name":"rollback","async":true,"parameters":[],"returnType":"Promise<object>","isStatic":false,"isPublic":true},"needsReview":{"name":"needsReview","async":true,"parameters":[],"returnType":"Promise<boolean>","isStatic":false,"isPublic":true},"isBugReport":{"name":"isBugReport","async":true,"parameters":[],"returnType":"Promise<boolean>","isStatic":false,"isPublic":true},"isFeatureRequest":{"name":"isFeatureRequest","async":true,"parameters":[],"returnType":"Promise<boolean>","isStatic":false,"isPublic":true},"suggestLabels":{"name":"suggestLabels","async":true,"parameters":[{"name":"vocabulary","type":"IssueLabelVocabulary","optional":true}],"returnType":"Promise<string[]>","isStatic":false,"isPublic":true},"close":{"name":"close","async":true,"parameters":[],"returnType":"Promise<void>","isStatic":false,"isPublic":true},"addLabels":{"name":"addLabels","async":true,"parameters":[{"name":"labels","type":"string[]","optional":false}],"returnType":"Promise<void>","isStatic":false,"isPublic":true},"removeLabel":{"name":"removeLabel","async":true,"parameters":[{"name":"label","type":"string","optional":false}],"returnType":"Promise<void>","isStatic":false,"isPublic":true},"assign":{"name":"assign","async":true,"parameters":[{"name":"assignees","type":"string[]","optional":false}],"returnType":"Promise<void>","isStatic":false,"isPublic":true},"getUrl":{"name":"getUrl","async":false,"parameters":[],"returnType":"string","isStatic":false,"isPublic":true}},"decoratorConfig":{"tableStrategy":"sti","api":{"include":["list","get","create","update"]},"mcp":{"include":["list","get","sync","incorporateFeedback"]},"cli":{"include":["list","get","sync","incorporateFeedback","rollback"],"skipApiCheck":true},"tenantScoped":{"mode":"optional"},"conflictColumns":["tenant_id","slug","context","_meta_type"]},"extends":"SmrtObject","exportName":"Issue","collectionExportName":"IssueCollection","validationRules":[{"field":"repositoryId","rule":"required","fieldType":"foreignKey"}],"schema":{"tableName":"issues","ddl":"CREATE TABLE IF NOT EXISTS \\"issues\\" (\\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 \\"repository_id\\" UUID,\\n \\"number\\" INTEGER DEFAULT 0,\\n \\"node_id\\" TEXT DEFAULT '',\\n \\"title\\" TEXT DEFAULT '',\\n \\"body\\" TEXT DEFAULT '',\\n \\"state\\" TEXT DEFAULT 'open',\\n \\"author\\" TEXT DEFAULT '',\\n \\"labels\\" JSON DEFAULT '[]',\\n \\"assignees\\" JSON DEFAULT '[]',\\n \\"comments_count\\" INTEGER DEFAULT 0,\\n \\"last_synced_at\\" TIMESTAMP,\\n \\"original_body\\" TEXT DEFAULT '',\\n \\"synthesis_count\\" INTEGER DEFAULT 0,\\n \\"head_ref\\" TEXT DEFAULT '',\\n \\"base_ref\\" TEXT DEFAULT '',\\n \\"merged\\" BOOLEAN DEFAULT FALSE,\\n \\"merged_at\\" TIMESTAMP,\\n \\"mergeable\\" BOOLEAN DEFAULT TRUE,\\n \\"draft\\" BOOLEAN DEFAULT FALSE,\\n \\"additions\\" INTEGER DEFAULT 0,\\n \\"deletions\\" INTEGER DEFAULT 0,\\n \\"changed_files\\" INTEGER DEFAULT 0\\n);","columns":{"id":{"type":"UUID","primaryKey":true,"referenceKind":"id","notNull":true},"slug":{"type":"TEXT","notNull":true},"context":{"type":"TEXT","notNull":true,"default":""},"_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},"repository_id":{"type":"UUID","referenceKind":"foreignKey","notNull":false,"foreignKey":{"table":"repositories","column":"id","onDelete":"NO ACTION","onUpdate":"CASCADE"}},"number":{"type":"INTEGER","notNull":false,"default":0},"node_id":{"type":"TEXT","notNull":false,"default":""},"title":{"type":"TEXT","notNull":false,"default":""},"body":{"type":"TEXT","notNull":false,"default":""},"state":{"type":"TEXT","notNull":false,"default":"open"},"author":{"type":"TEXT","notNull":false,"default":""},"labels":{"type":"JSON","notNull":false,"default":[]},"assignees":{"type":"JSON","notNull":false,"default":[]},"comments_count":{"type":"INTEGER","notNull":false,"default":0},"last_synced_at":{"type":"TIMESTAMP","notNull":false},"original_body":{"type":"TEXT","notNull":false,"default":""},"synthesis_count":{"type":"INTEGER","notNull":false,"default":0},"head_ref":{"type":"TEXT","notNull":false,"default":""},"base_ref":{"type":"TEXT","notNull":false,"default":""},"merged":{"type":"BOOLEAN","notNull":false,"default":false},"merged_at":{"type":"TIMESTAMP","notNull":false},"mergeable":{"type":"BOOLEAN","notNull":false,"default":true},"draft":{"type":"BOOLEAN","notNull":false,"default":false},"additions":{"type":"INTEGER","notNull":false,"default":0},"deletions":{"type":"INTEGER","notNull":false,"default":0},"changed_files":{"type":"INTEGER","notNull":false,"default":0}},"indexes":[{"name":"issues_slug_context_meta_type_idx","columns":["tenant_id","slug","context","_meta_type"],"unique":true,"nullsNotDistinct":true},{"name":"issues_meta_type_idx","columns":["_meta_type"]},{"name":"issues_tenant_id_created_at_idx","columns":["tenant_id","created_at"]},{"name":"issues_repository_id_idx","columns":["repository_id"]}],"version":"c3d5425b"},"importPath":"@happyvertical/smrt-projects"},"@happyvertical/smrt-projects:Label":{"name":"label","className":"Label","qualifiedName":"@happyvertical/smrt-projects:Label","collection":"labels","filePath":"/home/runner/work/smrt/smrt/packages/projects/src/models/Label.ts","packageName":"@happyvertical/smrt-projects","fields":{"repositoryId":{"type":"foreignKey","required":false,"related":"Repository"},"name":{"type":"text","required":false,"default":""},"color":{"type":"text","required":false,"default":""},"description":{"type":"text","required":false,"default":""}},"methods":{"isTypeLabel":{"name":"isTypeLabel","async":false,"parameters":[],"returnType":"boolean","isStatic":false,"isPublic":true},"isPriorityLabel":{"name":"isPriorityLabel","async":false,"parameters":[],"returnType":"boolean","isStatic":false,"isPublic":true},"isStatusLabel":{"name":"isStatusLabel","async":false,"parameters":[],"returnType":"boolean","isStatic":false,"isPublic":true},"getCategory":{"name":"getCategory","async":false,"parameters":[],"returnType":"'type' | 'priority' | 'status' | 'area' | 'other'","isStatic":false,"isPublic":true},"getPriorityLevel":{"name":"getPriorityLevel","async":false,"parameters":[],"returnType":"number | null","isStatic":false,"isPublic":true},"getHexColor":{"name":"getHexColor","async":false,"parameters":[],"returnType":"string","isStatic":false,"isPublic":true},"createInRepository":{"name":"createInRepository","async":true,"parameters":[],"returnType":"Promise<void>","isStatic":false,"isPublic":true},"updateInRepository":{"name":"updateInRepository","async":true,"parameters":[],"returnType":"Promise<void>","isStatic":false,"isPublic":true}},"decoratorConfig":{"api":{"include":["list","get","create","update","delete"]},"mcp":{"include":["list","get","create"]},"cli":{"include":["list","get","create","update","delete"]}},"extends":"SmrtObject","exportName":"Label","collectionExportName":"LabelCollection","schema":{"tableName":"labels","ddl":"CREATE TABLE IF NOT EXISTS \\"labels\\" (\\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 \\"repository_id\\" UUID,\\n \\"name\\" TEXT DEFAULT '',\\n \\"color\\" TEXT DEFAULT '',\\n \\"description\\" TEXT DEFAULT ''\\n);","columns":{"id":{"type":"UUID","primaryKey":true,"referenceKind":"id","notNull":true},"slug":{"type":"TEXT","notNull":true},"context":{"type":"TEXT","notNull":true,"default":""},"created_at":{"type":"TIMESTAMP","notNull":true,"default":"current_timestamp"},"updated_at":{"type":"TIMESTAMP","notNull":true,"default":"current_timestamp"},"repository_id":{"type":"UUID","referenceKind":"foreignKey","notNull":false,"unique":false,"foreignKey":{"table":"repositories","column":"id","onDelete":"NO ACTION","onUpdate":"CASCADE"}},"name":{"type":"TEXT","notNull":false,"unique":false,"default":""},"color":{"type":"TEXT","notNull":false,"unique":false,"default":""},"description":{"type":"TEXT","notNull":false,"unique":false,"default":""}},"indexes":[{"name":"labels_slug_context_idx","columns":["slug","context"],"unique":true},{"name":"labels_created_at_idx","columns":["created_at"]},{"name":"labels_repository_id_idx","columns":["repository_id"]}],"version":"d1e8d236"},"importPath":"@happyvertical/smrt-projects"},"@happyvertical/smrt-projects:Project":{"name":"project","className":"Project","qualifiedName":"@happyvertical/smrt-projects:Project","collection":"projects","filePath":"/home/runner/work/smrt/smrt/packages/projects/src/models/Project.ts","packageName":"@happyvertical/smrt-projects","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}}},"projectId":{"type":"text","required":false,"default":""},"projectNumber":{"type":"integer","required":false,"default":0},"title":{"type":"text","required":false,"default":""},"description":{"type":"text","required":false,"default":""},"owner":{"type":"text","required":false,"default":""},"url":{"type":"text","required":false,"default":""},"providerType":{"type":"text","required":false,"default":"github"},"tokenConfigKey":{"type":"text","required":false,"default":"GITHUB_TOKEN"},"statuses":{"type":"json","required":false,"default":[]},"fields":{"type":"json","required":false,"default":[]},"statusFieldId":{"type":"text","required":false,"default":""},"statusOptions":{"type":"json","required":false,"default":{}},"lastSyncedAt":{"type":"datetime","required":false}},"methods":{"getClient":{"name":"getClient","async":true,"parameters":[],"returnType":"Promise<IProject>","isStatic":false,"isPublic":true},"clearClient":{"name":"clearClient","async":false,"parameters":[],"returnType":"void","isStatic":false,"isPublic":true},"sync":{"name":"sync","async":true,"parameters":[{"name":"options","type":"SyncOptions","optional":true}],"returnType":"Promise<this>","isStatic":false,"isPublic":true},"addItem":{"name":"addItem","async":true,"parameters":[{"name":"item","type":"Issue | PullRequest","optional":false,"unionBranches":[{"type":"Issue"},{"type":"PullRequest"}]}],"returnType":"Promise<ProjectItem>","isStatic":false,"isPublic":true},"removeItem":{"name":"removeItem","async":true,"parameters":[{"name":"itemId","type":"string","optional":false}],"returnType":"Promise<void>","isStatic":false,"isPublic":true},"getItem":{"name":"getItem","async":true,"parameters":[{"name":"itemId","type":"string","optional":false}],"returnType":"Promise<ProjectItem | null>","isStatic":false,"isPublic":true},"listItems":{"name":"listItems","async":true,"parameters":[{"name":"filters","type":"ItemFilters","optional":true}],"returnType":"Promise<ProjectItem[]>","isStatic":false,"isPublic":true},"updateItemStatus":{"name":"updateItemStatus","async":true,"parameters":[{"name":"itemId","type":"string","optional":false},{"name":"status","type":"string","optional":false}],"returnType":"Promise<void>","isStatic":false,"isPublic":true},"updateItemField":{"name":"updateItemField","async":true,"parameters":[{"name":"itemId","type":"string","optional":false},{"name":"fieldId","type":"string","optional":false},{"name":"value","type":"unknown","optional":false}],"returnType":"Promise<void>","isStatic":false,"isPublic":true},"getStatuses":{"name":"getStatuses","async":true,"parameters":[],"returnType":"Promise<ProjectStatus[]>","isStatic":false,"isPublic":true},"getFields":{"name":"getFields","async":true,"parameters":[],"returnType":"Promise<ProjectField[]>","isStatic":false,"isPublic":true},"getItemsByStatus":{"name":"getItemsByStatus","async":true,"parameters":[{"name":"status","type":"string","optional":false}],"returnType":"Promise<ProjectItem[]>","isStatic":false,"isPublic":true},"moveItem":{"name":"moveItem","async":true,"parameters":[{"name":"item","type":"Issue | PullRequest","optional":false,"unionBranches":[{"type":"Issue"},{"type":"PullRequest"}]},{"name":"status","type":"string","optional":false}],"returnType":"Promise<void>","isStatic":false,"isPublic":true},"analyzeHealth":{"name":"analyzeHealth","async":true,"parameters":[],"returnType":"Promise<string>","isStatic":false,"isPublic":true},"getByTitle":{"name":"getByTitle","async":true,"parameters":[{"name":"title","type":"string","optional":false},{"name":"options","type":"SmrtObjectOptions","optional":true}],"returnType":"Promise<Project | null>","isStatic":true,"isPublic":true}},"decoratorConfig":{"api":{"include":["list","get","create","update"]},"mcp":{"include":["list","get","sync","addItem","updateItemStatus"]},"cli":{"include":["list","get","sync","addItem","updateItemStatus","listItems"],"skipApiCheck":true},"tenantScoped":{"mode":"optional"},"conflictColumns":["tenant_id","slug","context"]},"extends":"SmrtObject","exportName":"Project","collectionExportName":"ProjectCollection","schema":{"tableName":"projects","ddl":"CREATE TABLE IF NOT EXISTS \\"projects\\" (\\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 \\"project_id\\" TEXT DEFAULT '',\\n \\"project_number\\" INTEGER DEFAULT 0,\\n \\"title\\" TEXT DEFAULT '',\\n \\"description\\" TEXT DEFAULT '',\\n \\"owner\\" TEXT DEFAULT '',\\n \\"url\\" TEXT DEFAULT '',\\n \\"provider_type\\" TEXT DEFAULT 'github',\\n \\"token_config_key\\" TEXT DEFAULT 'GITHUB_TOKEN',\\n \\"statuses\\" JSON DEFAULT '[]',\\n \\"fields\\" JSON DEFAULT '[]',\\n \\"status_field_id\\" TEXT DEFAULT '',\\n \\"status_options\\" JSON DEFAULT '{}',\\n \\"last_synced_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"},"tenant_id":{"type":"UUID","referenceKind":"tenantId","notNull":false,"unique":false},"project_id":{"type":"TEXT","notNull":false,"unique":false,"default":""},"project_number":{"type":"INTEGER","notNull":false,"unique":false,"default":0},"title":{"type":"TEXT","notNull":false,"unique":false,"default":""},"description":{"type":"TEXT","notNull":false,"unique":false,"default":""},"owner":{"type":"TEXT","notNull":false,"unique":false,"default":""},"url":{"type":"TEXT","notNull":false,"unique":false,"default":""},"provider_type":{"type":"TEXT","notNull":false,"unique":false,"default":"github"},"token_config_key":{"type":"TEXT","notNull":false,"unique":false,"default":"GITHUB_TOKEN"},"statuses":{"type":"JSON","notNull":false,"unique":false,"default":[]},"fields":{"type":"JSON","notNull":false,"unique":false,"default":[]},"status_field_id":{"type":"TEXT","notNull":false,"unique":false,"default":""},"status_options":{"type":"JSON","notNull":false,"unique":false,"default":{}},"last_synced_at":{"type":"TIMESTAMP","notNull":false,"unique":false}},"indexes":[{"name":"projects_slug_context_idx","columns":["tenant_id","slug","context"],"unique":true,"nullsNotDistinct":true},{"name":"projects_tenant_id_created_at_idx","columns":["tenant_id","created_at"]}],"version":"2e8c344a"},"importPath":"@happyvertical/smrt-projects"},"@happyvertical/smrt-projects:ProjectIntegration":{"name":"projectintegration","className":"ProjectIntegration","qualifiedName":"@happyvertical/smrt-projects:ProjectIntegration","collection":"projectintegrations","filePath":"/home/runner/work/smrt/smrt/packages/projects/src/models/ProjectIntegration.ts","packageName":"@happyvertical/smrt-projects","fields":{"tenantId":{"type":"text","required":true,"_meta":{"sqlType":"UUID","__tenancy":{"isTenantIdField":true,"autoFilter":true,"required":true,"autoPopulate":true,"nullable":false,"mode":"required","field":"tenantId","allowSuperAdminBypass":false}}},"projectId":{"type":"text","required":false,"default":""},"name":{"type":"text","required":false,"default":""},"credentialHash":{"type":"text","required":false,"default":"","_meta":{"sensitive":true},"sensitive":true},"capabilities":{"type":"json","required":false,"default":[]},"status":{"type":"text","required":false,"default":"active"},"revokedAt":{"type":"datetime","required":false}},"methods":{"hasCapability":{"name":"hasCapability","async":false,"parameters":[{"name":"capability","type":"ProjectIntegrationCapability","optional":false}],"returnType":"boolean","isStatic":false,"isPublic":true},"isActive":{"name":"isActive","async":false,"parameters":[],"returnType":"boolean","isStatic":false,"isPublic":true}},"decoratorConfig":{"tableName":"project_integrations","conflictColumns":["tenant_id","project_id","name"],"api":{"include":["list","get"]},"mcp":{"include":["list","get"]},"cli":{"include":["list","get"]},"tenantScoped":{"mode":"required"}},"extends":"SmrtObject","exportName":"ProjectIntegration","collectionExportName":"ProjectIntegrationCollection","validationRules":[],"schema":{"tableName":"project_integrations","ddl":"CREATE TABLE IF NOT EXISTS \\"project_integrations\\" (\\n \\"id\\" UUID PRIMARY KEY NOT NULL,\\n \\"slug\\" TEXT NOT NULL,\\n \\"context\\" TEXT NOT NULL DEFAULT '',\\n \\"created_at\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\"updated_at\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\"tenant_id\\" UUID NOT NULL,\\n \\"project_id\\" TEXT DEFAULT '',\\n \\"name\\" TEXT DEFAULT '',\\n \\"credential_hash\\" TEXT DEFAULT '',\\n \\"capabilities\\" JSON DEFAULT '[]',\\n \\"status\\" TEXT DEFAULT 'active',\\n \\"revoked_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"},"tenant_id":{"type":"UUID","referenceKind":"tenantId","notNull":true,"unique":false},"project_id":{"type":"TEXT","notNull":false,"unique":false,"default":""},"name":{"type":"TEXT","notNull":false,"unique":false,"default":""},"credential_hash":{"type":"TEXT","notNull":false,"unique":false,"default":""},"capabilities":{"type":"JSON","notNull":false,"unique":false,"default":[]},"status":{"type":"TEXT","notNull":false,"unique":false,"default":"active"},"revoked_at":{"type":"TIMESTAMP","notNull":false,"unique":false}},"indexes":[{"name":"project_integrations_tenant_id_project_id_idx","columns":["tenant_id","project_id","name"],"unique":true,"nullsNotDistinct":true},{"name":"project_integrations_slug_context_idx","columns":["slug","context"]},{"name":"project_integrations_tenant_id_created_at_idx","columns":["tenant_id","created_at"]}],"version":"bfbaa783"},"importPath":"@happyvertical/smrt-projects"},"@happyvertical/smrt-projects:ProjectIntegrationAudit":{"name":"projectintegrationaudit","className":"ProjectIntegrationAudit","qualifiedName":"@happyvertical/smrt-projects:ProjectIntegrationAudit","collection":"projectintegrationaudits","filePath":"/home/runner/work/smrt/smrt/packages/projects/src/models/ProjectIntegrationAudit.ts","packageName":"@happyvertical/smrt-projects","fields":{"tenantId":{"type":"text","required":true,"_meta":{"sqlType":"UUID","__tenancy":{"isTenantIdField":true,"autoFilter":true,"required":true,"autoPopulate":true,"nullable":false,"mode":"required","field":"tenantId","allowSuperAdminBypass":false}}},"integrationId":{"type":"foreignKey","required":true,"related":"ProjectIntegration","_meta":{"required":true}},"action":{"type":"text","required":false,"default":"created"},"note":{"type":"text","required":false}},"methods":{},"decoratorConfig":{"tableName":"project_integration_audits","api":false,"mcp":false,"cli":false,"tenantScoped":{"mode":"required"},"conflictColumns":["tenant_id","slug","context"]},"extends":"SmrtObject","exportName":"ProjectIntegrationAudit","collectionExportName":"ProjectIntegrationAuditCollection","validationRules":[{"field":"integrationId","rule":"required","fieldType":"foreignKey"}],"schema":{"tableName":"project_integration_audits","ddl":"CREATE TABLE IF NOT EXISTS \\"project_integration_audits\\" (\\n \\"id\\" UUID PRIMARY KEY NOT NULL,\\n \\"slug\\" TEXT NOT NULL,\\n \\"context\\" TEXT NOT NULL DEFAULT '',\\n \\"created_at\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\"updated_at\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\"tenant_id\\" UUID NOT NULL,\\n \\"integration_id\\" UUID NOT NULL,\\n \\"action\\" TEXT DEFAULT 'created',\\n \\"note\\" TEXT\\n);","columns":{"id":{"type":"UUID","primaryKey":true,"referenceKind":"id","notNull":true},"slug":{"type":"TEXT","notNull":true},"context":{"type":"TEXT","notNull":true,"default":""},"created_at":{"type":"TIMESTAMP","notNull":true,"default":"current_timestamp"},"updated_at":{"type":"TIMESTAMP","notNull":true,"default":"current_timestamp"},"tenant_id":{"type":"UUID","referenceKind":"tenantId","notNull":true,"unique":false},"integration_id":{"type":"UUID","referenceKind":"foreignKey","notNull":true,"unique":false,"foreignKey":{"table":"project_integrations","column":"id","onDelete":"NO ACTION","onUpdate":"CASCADE"}},"action":{"type":"TEXT","notNull":false,"unique":false,"default":"created"},"note":{"type":"TEXT","notNull":false,"unique":false}},"indexes":[{"name":"project_integration_audits_slug_context_idx","columns":["tenant_id","slug","context"],"unique":true},{"name":"project_integration_audits_tenant_id_created_at_idx","columns":["tenant_id","created_at"]},{"name":"project_integration_audits_integration_id_idx","columns":["integration_id"]}],"version":"03cc10a2"},"importPath":"@happyvertical/smrt-projects"},"@happyvertical/smrt-projects:PullRequest":{"name":"pullrequest","className":"PullRequest","qualifiedName":"@happyvertical/smrt-projects:PullRequest","collection":"issues","filePath":"/home/runner/work/smrt/smrt/packages/projects/src/models/PullRequest.ts","packageName":"@happyvertical/smrt-projects","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}}},"repositoryId":{"type":"foreignKey","required":true,"related":"Repository","_meta":{"required":true}},"number":{"type":"integer","required":false,"default":0},"nodeId":{"type":"text","required":false,"default":""},"title":{"type":"text","required":false,"default":""},"body":{"type":"text","required":false,"default":""},"state":{"type":"text","required":false,"default":"open"},"author":{"type":"text","required":false,"default":""},"labels":{"type":"json","required":false,"default":[]},"assignees":{"type":"json","required":false,"default":[]},"commentsCount":{"type":"integer","required":false,"default":0},"lastSyncedAt":{"type":"datetime","required":false},"originalBody":{"type":"text","required":false,"default":""},"synthesisCount":{"type":"integer","required":false,"default":0},"headRef":{"type":"text","required":false,"default":""},"baseRef":{"type":"text","required":false,"default":""},"merged":{"type":"boolean","required":false,"default":false},"mergedAt":{"type":"datetime","required":false},"mergeable":{"type":"boolean","required":false,"default":true},"draft":{"type":"boolean","required":false,"default":false},"additions":{"type":"integer","required":false,"default":0},"deletions":{"type":"integer","required":false,"default":0},"changedFiles":{"type":"integer","required":false,"default":0}},"methods":{"getRepository":{"name":"getRepository","async":true,"parameters":[],"returnType":"Promise<Repository>","isStatic":false,"isPublic":true},"getClient":{"name":"getClient","async":true,"parameters":[],"returnType":"Promise<IRepository>","isStatic":false,"isPublic":true},"clearCache":{"name":"clearCache","async":false,"parameters":[],"returnType":"void","isStatic":false,"isPublic":true},"sync":{"name":"sync","async":true,"parameters":[{"name":"options","type":"SyncOptions","optional":true}],"returnType":"Promise<this>","isStatic":false,"isPublic":true},"getComments":{"name":"getComments","async":true,"parameters":[],"returnType":"Promise<Comment[]>","isStatic":false,"isPublic":true},"addComment":{"name":"addComment","async":true,"parameters":[{"name":"body","type":"string","optional":false}],"returnType":"Promise<Comment>","isStatic":false,"isPublic":true},"incorporateFeedback":{"name":"incorporateFeedback","async":true,"parameters":[{"name":"options","type":"IncorporateFeedbackOptions","optional":true}],"returnType":"Promise<IncorporateFeedbackResult>","isStatic":false,"isPublic":true},"rollback":{"name":"rollback","async":true,"parameters":[],"returnType":"Promise<object>","isStatic":false,"isPublic":true},"needsReview":{"name":"needsReview","async":true,"parameters":[],"returnType":"Promise<boolean>","isStatic":false,"isPublic":true},"isBugReport":{"name":"isBugReport","async":true,"parameters":[],"returnType":"Promise<boolean>","isStatic":false,"isPublic":true},"isFeatureRequest":{"name":"isFeatureRequest","async":true,"parameters":[],"returnType":"Promise<boolean>","isStatic":false,"isPublic":true},"suggestLabels":{"name":"suggestLabels","async":true,"parameters":[{"name":"vocabulary","type":"IssueLabelVocabulary","optional":true}],"returnType":"Promise<string[]>","isStatic":false,"isPublic":true},"close":{"name":"close","async":true,"parameters":[],"returnType":"Promise<void>","isStatic":false,"isPublic":true},"addLabels":{"name":"addLabels","async":true,"parameters":[{"name":"labels","type":"string[]","optional":false}],"returnType":"Promise<void>","isStatic":false,"isPublic":true},"removeLabel":{"name":"removeLabel","async":true,"parameters":[{"name":"label","type":"string","optional":false}],"returnType":"Promise<void>","isStatic":false,"isPublic":true},"assign":{"name":"assign","async":true,"parameters":[{"name":"assignees","type":"string[]","optional":false}],"returnType":"Promise<void>","isStatic":false,"isPublic":true},"getUrl":{"name":"getUrl","async":false,"parameters":[],"returnType":"string","isStatic":false,"isPublic":true},"summarize":{"name":"summarize","async":true,"parameters":[],"returnType":"Promise<string>","isStatic":false,"isPublic":true},"merge":{"name":"merge","async":true,"parameters":[{"name":"method","type":"MergeMethod","optional":true,"default":"squash"}],"returnType":"Promise<void>","isStatic":false,"isPublic":true},"markReady":{"name":"markReady","async":true,"parameters":[],"returnType":"Promise<void>","isStatic":false,"isPublic":true},"convertToDraft":{"name":"convertToDraft","async":true,"parameters":[],"returnType":"Promise<void>","isStatic":false,"isPublic":true},"requestReviewers":{"name":"requestReviewers","async":true,"parameters":[{"name":"reviewers","type":"string[]","optional":false}],"returnType":"Promise<void>","isStatic":false,"isPublic":true},"findLinkedIssue":{"name":"findLinkedIssue","async":true,"parameters":[],"returnType":"Promise<Issue | null>","isStatic":false,"isPublic":true},"isReadyToMerge":{"name":"isReadyToMerge","async":true,"parameters":[],"returnType":"Promise<boolean>","isStatic":false,"isPublic":true},"suggestReviewers":{"name":"suggestReviewers","async":true,"parameters":[],"returnType":"Promise<string[]>","isStatic":false,"isPublic":true},"getChangeSize":{"name":"getChangeSize","async":false,"parameters":[],"returnType":"'xs' | 's' | 'm' | 'l' | 'xl'","isStatic":false,"isPublic":true}},"decoratorConfig":{"api":{"include":["list","get","create","update"]},"mcp":{"include":["list","get","sync","summarize","merge"]},"cli":{"include":["list","get","sync","summarize","merge","markReady"],"skipApiCheck":true},"tenantScoped":{"mode":"optional"},"tableName":"issues","tableStrategy":"sti"},"extends":"Issue","exportName":"PullRequest","collectionExportName":"PullRequestCollection","validationRules":[{"field":"repositoryId","rule":"required","fieldType":"foreignKey"}],"schema":{"tableName":"issues","ddl":"CREATE TABLE IF NOT EXISTS \\"issues\\" (\\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 \\"repository_id\\" UUID,\\n \\"number\\" INTEGER DEFAULT 0,\\n \\"node_id\\" TEXT DEFAULT '',\\n \\"title\\" TEXT DEFAULT '',\\n \\"body\\" TEXT DEFAULT '',\\n \\"state\\" TEXT DEFAULT 'open',\\n \\"author\\" TEXT DEFAULT '',\\n \\"labels\\" JSON DEFAULT '[]',\\n \\"assignees\\" JSON DEFAULT '[]',\\n \\"comments_count\\" INTEGER DEFAULT 0,\\n \\"last_synced_at\\" TIMESTAMP,\\n \\"original_body\\" TEXT DEFAULT '',\\n \\"synthesis_count\\" INTEGER DEFAULT 0,\\n \\"head_ref\\" TEXT DEFAULT '',\\n \\"base_ref\\" TEXT DEFAULT '',\\n \\"merged\\" BOOLEAN DEFAULT FALSE,\\n \\"merged_at\\" TIMESTAMP,\\n \\"mergeable\\" BOOLEAN DEFAULT TRUE,\\n \\"draft\\" BOOLEAN DEFAULT FALSE,\\n \\"additions\\" INTEGER DEFAULT 0,\\n \\"deletions\\" INTEGER DEFAULT 0,\\n \\"changed_files\\" INTEGER DEFAULT 0\\n);","columns":{"id":{"type":"UUID","primaryKey":true,"referenceKind":"id","notNull":true},"slug":{"type":"TEXT","notNull":true},"context":{"type":"TEXT","notNull":true,"default":""},"_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},"repository_id":{"type":"UUID","referenceKind":"foreignKey","notNull":false,"foreignKey":{"table":"repositories","column":"id","onDelete":"NO ACTION","onUpdate":"CASCADE"}},"number":{"type":"INTEGER","notNull":false,"default":0},"node_id":{"type":"TEXT","notNull":false,"default":""},"title":{"type":"TEXT","notNull":false,"default":""},"body":{"type":"TEXT","notNull":false,"default":""},"state":{"type":"TEXT","notNull":false,"default":"open"},"author":{"type":"TEXT","notNull":false,"default":""},"labels":{"type":"JSON","notNull":false,"default":[]},"assignees":{"type":"JSON","notNull":false,"default":[]},"comments_count":{"type":"INTEGER","notNull":false,"default":0},"last_synced_at":{"type":"TIMESTAMP","notNull":false},"original_body":{"type":"TEXT","notNull":false,"default":""},"synthesis_count":{"type":"INTEGER","notNull":false,"default":0},"head_ref":{"type":"TEXT","notNull":false,"default":""},"base_ref":{"type":"TEXT","notNull":false,"default":""},"merged":{"type":"BOOLEAN","notNull":false,"default":false},"merged_at":{"type":"TIMESTAMP","notNull":false},"mergeable":{"type":"BOOLEAN","notNull":false,"default":true},"draft":{"type":"BOOLEAN","notNull":false,"default":false},"additions":{"type":"INTEGER","notNull":false,"default":0},"deletions":{"type":"INTEGER","notNull":false,"default":0},"changed_files":{"type":"INTEGER","notNull":false,"default":0}},"indexes":[{"name":"issues_slug_context_meta_type_idx","columns":["tenant_id","slug","context","_meta_type"],"unique":true,"nullsNotDistinct":true},{"name":"issues_meta_type_idx","columns":["_meta_type"]},{"name":"issues_tenant_id_created_at_idx","columns":["tenant_id","created_at"]},{"name":"issues_repository_id_idx","columns":["repository_id"]}],"version":"3f16e583"},"importPath":"@happyvertical/smrt-projects"},"@happyvertical/smrt-projects:Repository":{"name":"repository","className":"Repository","qualifiedName":"@happyvertical/smrt-projects:Repository","collection":"repositories","filePath":"/home/runner/work/smrt/smrt/packages/projects/src/models/Repository.ts","packageName":"@happyvertical/smrt-projects","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}}},"owner":{"type":"text","required":false,"default":""},"name":{"type":"text","required":false,"default":""},"fullName":{"type":"text","required":false,"default":""},"description":{"type":"text","required":false,"default":""},"defaultBranch":{"type":"text","required":false,"default":"main"},"isPrivate":{"type":"boolean","required":false,"default":false},"providerType":{"type":"text","required":false,"default":"github"},"baseUrl":{"type":"text","required":false,"default":""},"tokenConfigKey":{"type":"text","required":false,"default":"GITHUB_TOKEN"},"lastSyncedAt":{"type":"datetime","required":false}},"methods":{"getClient":{"name":"getClient","async":true,"parameters":[],"returnType":"Promise<IRepository>","isStatic":false,"isPublic":true},"clearClient":{"name":"clearClient","async":false,"parameters":[],"returnType":"void","isStatic":false,"isPublic":true},"sync":{"name":"sync","async":true,"parameters":[{"name":"options","type":"SyncOptions","optional":true}],"returnType":"Promise<this>","isStatic":false,"isPublic":true},"getIssues":{"name":"getIssues","async":true,"parameters":[{"name":"filters","type":"SearchFilters","optional":true}],"returnType":"Promise<Issue[]>","isStatic":false,"isPublic":true},"getPullRequests":{"name":"getPullRequests","async":true,"parameters":[{"name":"filters","type":"SearchFilters","optional":true}],"returnType":"Promise<PullRequest[]>","isStatic":false,"isPublic":true},"createIssue":{"name":"createIssue","async":true,"parameters":[{"name":"data","type":"CreateIssueInput","optional":false}],"returnType":"Promise<Issue>","isStatic":false,"isPublic":true},"createPullRequest":{"name":"createPullRequest","async":true,"parameters":[{"name":"data","type":"CreatePRInput","optional":false}],"returnType":"Promise<PullRequest>","isStatic":false,"isPublic":true},"hasOpenIssuesMatching":{"name":"hasOpenIssuesMatching","async":true,"parameters":[{"name":"criteria","type":"string","optional":false}],"returnType":"Promise<boolean>","isStatic":false,"isPublic":true},"summarizeActivity":{"name":"summarizeActivity","async":true,"parameters":[],"returnType":"Promise<string>","isStatic":false,"isPublic":true},"getByFullName":{"name":"getByFullName","async":true,"parameters":[{"name":"owner","type":"string","optional":false},{"name":"name","type":"string","optional":false},{"name":"options","type":"SmrtObjectOptions","optional":true}],"returnType":"Promise<Repository | null>","isStatic":true,"isPublic":true}},"decoratorConfig":{"api":{"include":["list","get","create","update"]},"mcp":{"include":["list","get","sync"]},"cli":{"include":["list","get","sync","create"],"skipApiCheck":true},"tenantScoped":{"mode":"optional"},"conflictColumns":["tenant_id","slug","context"]},"extends":"SmrtObject","exportName":"Repository","collectionExportName":"RepositoryCollection","schema":{"tableName":"repositories","ddl":"CREATE TABLE IF NOT EXISTS \\"repositories\\" (\\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 \\"owner\\" TEXT DEFAULT '',\\n \\"name\\" TEXT DEFAULT '',\\n \\"full_name\\" TEXT DEFAULT '',\\n \\"description\\" TEXT DEFAULT '',\\n \\"default_branch\\" TEXT DEFAULT 'main',\\n \\"is_private\\" BOOLEAN DEFAULT FALSE,\\n \\"provider_type\\" TEXT DEFAULT 'github',\\n \\"base_url\\" TEXT DEFAULT '',\\n \\"token_config_key\\" TEXT DEFAULT 'GITHUB_TOKEN',\\n \\"last_synced_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"},"tenant_id":{"type":"UUID","referenceKind":"tenantId","notNull":false,"unique":false},"owner":{"type":"TEXT","notNull":false,"unique":false,"default":""},"name":{"type":"TEXT","notNull":false,"unique":false,"default":""},"full_name":{"type":"TEXT","notNull":false,"unique":false,"default":""},"description":{"type":"TEXT","notNull":false,"unique":false,"default":""},"default_branch":{"type":"TEXT","notNull":false,"unique":false,"default":"main"},"is_private":{"type":"BOOLEAN","notNull":false,"unique":false,"default":false},"provider_type":{"type":"TEXT","notNull":false,"unique":false,"default":"github"},"base_url":{"type":"TEXT","notNull":false,"unique":false,"default":""},"token_config_key":{"type":"TEXT","notNull":false,"unique":false,"default":"GITHUB_TOKEN"},"last_synced_at":{"type":"TIMESTAMP","notNull":false,"unique":false}},"indexes":[{"name":"repositories_slug_context_idx","columns":["tenant_id","slug","context"],"unique":true,"nullsNotDistinct":true},{"name":"repositories_tenant_id_created_at_idx","columns":["tenant_id","created_at"]}],"version":"c302a5e5"},"importPath":"@happyvertical/smrt-projects"},"@happyvertical/smrt-projects:DevelopmentRequestWorkLink":{"name":"developmentrequestworklink","className":"DevelopmentRequestWorkLink","qualifiedName":"@happyvertical/smrt-projects:DevelopmentRequestWorkLink","collection":"developmentrequestworklinks","filePath":"/home/runner/work/smrt/smrt/packages/projects/src/models/delivery-control-plane.ts","packageName":"@happyvertical/smrt-projects","fields":{"tenantId":{"type":"text","required":true,"_meta":{"sqlType":"UUID","__tenancy":{"isTenantIdField":true,"autoFilter":true,"required":true,"autoPopulate":true,"nullable":false,"mode":"required","field":"tenantId","allowSuperAdminBypass":false}}},"requestId":{"type":"foreignKey","required":true,"related":"DevelopmentRequest","_meta":{"required":true}},"workItemType":{"type":"text","required":false,"_meta":{}},"workItemId":{"type":"text","required":false,"_meta":{}},"canonicalStatus":{"type":"text","required":false,"_meta":{}},"providerRef":{"type":"text","required":false,"_meta":{}},"metadata":{"type":"text","required":false,"_meta":{}},"lastProjectedAt":{"type":"datetime","required":false}},"methods":{},"decoratorConfig":{"tableName":"development_request_work_links","conflictColumns":["request_id","work_item_type","work_item_id"],"api":false,"cli":false,"mcp":false,"tenantScoped":{"mode":"required"}},"extends":"SmrtObject","exportName":"DevelopmentRequestWorkLink","collectionExportName":"DevelopmentRequestWorkLinkCollection","validationRules":[{"field":"requestId","rule":"required","fieldType":"foreignKey"}],"schema":{"tableName":"development_request_work_links","ddl":"CREATE TABLE IF NOT EXISTS \\"development_request_work_links\\" (\\n \\"id\\" UUID PRIMARY KEY NOT NULL,\\n \\"slug\\" TEXT NOT NULL,\\n \\"context\\" TEXT NOT NULL DEFAULT '',\\n \\"created_at\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\"updated_at\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\"tenant_id\\" UUID NOT NULL,\\n \\"request_id\\" UUID NOT NULL,\\n \\"work_item_type\\" TEXT,\\n \\"work_item_id\\" TEXT,\\n \\"canonical_status\\" TEXT,\\n \\"provider_ref\\" TEXT,\\n \\"metadata\\" TEXT,\\n \\"last_projected_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"},"tenant_id":{"type":"UUID","referenceKind":"tenantId","notNull":true,"unique":false},"request_id":{"type":"UUID","referenceKind":"foreignKey","notNull":true,"unique":false,"foreignKey":{"table":"development_requests","column":"id","onDelete":"CASCADE","onUpdate":"CASCADE"}},"work_item_type":{"type":"TEXT","notNull":false,"unique":false},"work_item_id":{"type":"TEXT","notNull":false,"unique":false},"canonical_status":{"type":"TEXT","notNull":false,"unique":false},"provider_ref":{"type":"TEXT","notNull":false,"unique":false},"metadata":{"type":"TEXT","notNull":false,"unique":false},"last_projected_at":{"type":"TIMESTAMP","notNull":false,"unique":false}},"indexes":[{"name":"development_request_work_links_request_id_work_item_type_idx","columns":["request_id","work_item_type","work_item_id"],"unique":true,"nullsNotDistinct":true},{"name":"development_request_work_links_slug_context_idx","columns":["slug","context"]},{"name":"development_request_work_links_tenant_id_created_at_idx","columns":["tenant_id","created_at"]}],"version":"adcbaa21"},"importPath":"@happyvertical/smrt-projects"},"@happyvertical/smrt-projects:ProjectDeliveryEvent":{"name":"projectdeliveryevent","className":"ProjectDeliveryEvent","qualifiedName":"@happyvertical/smrt-projects:ProjectDeliveryEvent","collection":"projectdeliveryevents","filePath":"/home/runner/work/smrt/smrt/packages/projects/src/models/delivery-control-plane.ts","packageName":"@happyvertical/smrt-projects","fields":{"tenantId":{"type":"text","required":true,"_meta":{"sqlType":"UUID","__tenancy":{"isTenantIdField":true,"autoFilter":true,"required":true,"autoPopulate":true,"nullable":false,"mode":"required","field":"tenantId","allowSuperAdminBypass":false}}},"integrationId":{"type":"foreignKey","required":true,"related":"ProjectIntegration","_meta":{"required":true}},"requestId":{"type":"foreignKey","required":true,"related":"DevelopmentRequest","_meta":{"required":true}},"idempotencyKey":{"type":"text","required":false,"_meta":{}},"sequence":{"type":"integer","required":false,"default":0},"type":{"type":"text","required":false,"_meta":{}},"payload":{"type":"text","required":false,"_meta":{}},"occurredAt":{"type":"datetime","required":false},"deliveredAt":{"type":"datetime","required":false},"deliveryAttempts":{"type":"integer","required":false,"default":0},"lastDeliveryError":{"type":"text","required":false,"_meta":{}}},"methods":{},"decoratorConfig":{"tableName":"project_delivery_events","conflictColumns":["integration_id","idempotency_key"],"api":false,"cli":false,"mcp":false,"tenantScoped":{"mode":"required"}},"extends":"SmrtObject","exportName":"ProjectDeliveryEvent","collectionExportName":"ProjectDeliveryEventCollection","validationRules":[{"field":"integrationId","rule":"required","fieldType":"foreignKey"},{"field":"requestId","rule":"required","fieldType":"foreignKey"}],"schema":{"tableName":"project_delivery_events","ddl":"CREATE TABLE IF NOT EXISTS \\"project_delivery_events\\" (\\n \\"id\\" UUID PRIMARY KEY NOT NULL,\\n \\"slug\\" TEXT NOT NULL,\\n \\"context\\" TEXT NOT NULL DEFAULT '',\\n \\"created_at\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\"updated_at\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\"tenant_id\\" UUID NOT NULL,\\n \\"integration_id\\" UUID NOT NULL,\\n \\"request_id\\" UUID NOT NULL,\\n \\"idempotency_key\\" TEXT,\\n \\"sequence\\" INTEGER DEFAULT 0,\\n \\"type\\" TEXT,\\n \\"payload\\" TEXT,\\n \\"occurred_at\\" TIMESTAMP,\\n \\"delivered_at\\" TIMESTAMP,\\n \\"delivery_attempts\\" INTEGER DEFAULT 0,\\n \\"last_delivery_error\\" TEXT\\n);","columns":{"id":{"type":"UUID","primaryKey":true,"referenceKind":"id","notNull":true},"slug":{"type":"TEXT","notNull":true},"context":{"type":"TEXT","notNull":true,"default":""},"created_at":{"type":"TIMESTAMP","notNull":true,"default":"current_timestamp"},"updated_at":{"type":"TIMESTAMP","notNull":true,"default":"current_timestamp"},"tenant_id":{"type":"UUID","referenceKind":"tenantId","notNull":true,"unique":false},"integration_id":{"type":"UUID","referenceKind":"foreignKey","notNull":true,"unique":false,"foreignKey":{"table":"project_integrations","column":"id","onDelete":"CASCADE","onUpdate":"CASCADE"}},"request_id":{"type":"UUID","referenceKind":"foreignKey","notNull":true,"unique":false,"foreignKey":{"table":"development_requests","column":"id","onDelete":"NO ACTION","onUpdate":"CASCADE"}},"idempotency_key":{"type":"TEXT","notNull":false,"unique":false},"sequence":{"type":"INTEGER","notNull":false,"unique":false,"default":0},"type":{"type":"TEXT","notNull":false,"unique":false},"payload":{"type":"TEXT","notNull":false,"unique":false},"occurred_at":{"type":"TIMESTAMP","notNull":false,"unique":false},"delivered_at":{"type":"TIMESTAMP","notNull":false,"unique":false},"delivery_attempts":{"type":"INTEGER","notNull":false,"unique":false,"default":0},"last_delivery_error":{"type":"TEXT","notNull":false,"unique":false}},"indexes":[{"name":"project_delivery_events_integration_id_idempotency_key_idx","columns":["integration_id","idempotency_key"],"unique":true,"nullsNotDistinct":true},{"name":"project_delivery_events_slug_context_idx","columns":["slug","context"]},{"name":"project_delivery_events_tenant_id_created_at_idx","columns":["tenant_id","created_at"]},{"name":"project_delivery_events_request_id_idx","columns":["request_id"]}],"version":"99b9e301"},"importPath":"@happyvertical/smrt-projects"},"@happyvertical/smrt-projects:PreviewApproval":{"name":"previewapproval","className":"PreviewApproval","qualifiedName":"@happyvertical/smrt-projects:PreviewApproval","collection":"previewapprovals","filePath":"/home/runner/work/smrt/smrt/packages/projects/src/models/delivery-control-plane.ts","packageName":"@happyvertical/smrt-projects","fields":{"tenantId":{"type":"text","required":true,"_meta":{"sqlType":"UUID","__tenancy":{"isTenantIdField":true,"autoFilter":true,"required":true,"autoPopulate":true,"nullable":false,"mode":"required","field":"tenantId","allowSuperAdminBypass":false}}},"requestId":{"type":"foreignKey","required":true,"related":"DevelopmentRequest","_meta":{"required":true}},"previewId":{"type":"text","required":false,"_meta":{}},"previewUrl":{"type":"text","required":false,"_meta":{}},"status":{"type":"text","required":false,"_meta":{}},"decidedByRef":{"type":"text","required":false,"_meta":{}},"reason":{"type":"text","required":false,"_meta":{}},"createdAt":{"type":"datetime","required":false},"decidedAt":{"type":"datetime","required":false},"staleAt":{"type":"datetime","required":false}},"methods":{},"decoratorConfig":{"tableName":"preview_approvals","conflictColumns":["request_id","preview_id"],"api":false,"cli":false,"mcp":false,"tenantScoped":{"mode":"required"}},"extends":"SmrtObject","exportName":"PreviewApproval","collectionExportName":"PreviewApprovalCollection","validationRules":[{"field":"requestId","rule":"required","fieldType":"foreignKey"}],"schema":{"tableName":"preview_approvals","ddl":"CREATE TABLE IF NOT EXISTS \\"preview_approvals\\" (\\n \\"id\\" UUID PRIMARY KEY NOT NULL,\\n \\"slug\\" TEXT NOT NULL,\\n \\"context\\" TEXT NOT NULL DEFAULT '',\\n \\"created_at\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\"updated_at\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\"tenant_id\\" UUID NOT NULL,\\n \\"request_id\\" UUID NOT NULL,\\n \\"preview_id\\" TEXT,\\n \\"preview_url\\" TEXT,\\n \\"status\\" TEXT,\\n \\"decided_by_ref\\" TEXT,\\n \\"reason\\" TEXT,\\n \\"decided_at\\" TIMESTAMP,\\n \\"stale_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"},"tenant_id":{"type":"UUID","referenceKind":"tenantId","notNull":true,"unique":false},"request_id":{"type":"UUID","referenceKind":"foreignKey","notNull":true,"unique":false,"foreignKey":{"table":"development_requests","column":"id","onDelete":"CASCADE","onUpdate":"CASCADE"}},"preview_id":{"type":"TEXT","notNull":false,"unique":false},"preview_url":{"type":"TEXT","notNull":false,"unique":false},"status":{"type":"TEXT","notNull":false,"unique":false},"decided_by_ref":{"type":"TEXT","notNull":false,"unique":false},"reason":{"type":"TEXT","notNull":false,"unique":false},"decided_at":{"type":"TIMESTAMP","notNull":false,"unique":false},"stale_at":{"type":"TIMESTAMP","notNull":false,"unique":false}},"indexes":[{"name":"preview_approvals_request_id_preview_id_idx","columns":["request_id","preview_id"],"unique":true,"nullsNotDistinct":true},{"name":"preview_approvals_slug_context_idx","columns":["slug","context"]},{"name":"preview_approvals_tenant_id_created_at_idx","columns":["tenant_id","created_at"]}],"version":"ec7b2b14"},"importPath":"@happyvertical/smrt-projects"},"@happyvertical/smrt-projects:AssistanceRequest":{"name":"assistancerequest","className":"AssistanceRequest","qualifiedName":"@happyvertical/smrt-projects:AssistanceRequest","collection":"assistancerequests","filePath":"/home/runner/work/smrt/smrt/packages/projects/src/models/delivery-control-plane.ts","packageName":"@happyvertical/smrt-projects","fields":{"tenantId":{"type":"text","required":true,"_meta":{"sqlType":"UUID","__tenancy":{"isTenantIdField":true,"autoFilter":true,"required":true,"autoPopulate":true,"nullable":false,"mode":"required","field":"tenantId","allowSuperAdminBypass":false}}},"integrationId":{"type":"foreignKey","required":true,"related":"ProjectIntegration","_meta":{"required":true}},"requesterId":{"type":"text","required":false,"_meta":{}},"subject":{"type":"text","required":false,"_meta":{}},"applicationContext":{"type":"text","required":false,"_meta":{}},"conversation":{"type":"text","required":false,"_meta":{}},"evidence":{"type":"text","required":false,"_meta":{}},"classification":{"type":"text","required":false,"_meta":{}},"supportCaseId":{"type":"text","required":false,"_meta":{}},"developmentRequestId":{"type":"text","required":false,"_meta":{}},"deliveryHandoffLinkedAt":{"type":"datetime","required":false},"createdAt":{"type":"datetime","required":false}},"methods":{},"decoratorConfig":{"tableName":"assistance_requests","api":false,"cli":false,"mcp":false,"tenantScoped":{"mode":"required"},"conflictColumns":["tenant_id","slug","context"]},"extends":"SmrtObject","exportName":"AssistanceRequest","collectionExportName":"AssistanceRequestCollection","validationRules":[{"field":"integrationId","rule":"required","fieldType":"foreignKey"}],"schema":{"tableName":"assistance_requests","ddl":"CREATE TABLE IF NOT EXISTS \\"assistance_requests\\" (\\n \\"id\\" UUID PRIMARY KEY NOT NULL,\\n \\"slug\\" TEXT NOT NULL,\\n \\"context\\" TEXT NOT NULL DEFAULT '',\\n \\"created_at\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\"updated_at\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\"tenant_id\\" UUID NOT NULL,\\n \\"integration_id\\" UUID NOT NULL,\\n \\"requester_id\\" TEXT,\\n \\"subject\\" TEXT,\\n \\"application_context\\" TEXT,\\n \\"conversation\\" TEXT,\\n \\"evidence\\" TEXT,\\n \\"classification\\" TEXT,\\n \\"support_case_id\\" TEXT,\\n \\"development_request_id\\" TEXT,\\n \\"delivery_handoff_linked_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"},"tenant_id":{"type":"UUID","referenceKind":"tenantId","notNull":true,"unique":false},"integration_id":{"type":"UUID","referenceKind":"foreignKey","notNull":true,"unique":false,"foreignKey":{"table":"project_integrations","column":"id","onDelete":"NO ACTION","onUpdate":"CASCADE"}},"requester_id":{"type":"TEXT","notNull":false,"unique":false},"subject":{"type":"TEXT","notNull":false,"unique":false},"application_context":{"type":"TEXT","notNull":false,"unique":false},"conversation":{"type":"TEXT","notNull":false,"unique":false},"evidence":{"type":"TEXT","notNull":false,"unique":false},"classification":{"type":"TEXT","notNull":false,"unique":false},"support_case_id":{"type":"TEXT","notNull":false,"unique":false},"development_request_id":{"type":"TEXT","notNull":false,"unique":false},"delivery_handoff_linked_at":{"type":"TIMESTAMP","notNull":false,"unique":false}},"indexes":[{"name":"assistance_requests_slug_context_idx","columns":["tenant_id","slug","context"],"unique":true},{"name":"assistance_requests_tenant_id_created_at_idx","columns":["tenant_id","created_at"]},{"name":"assistance_requests_integration_id_idx","columns":["integration_id"]}],"version":"d1653259"},"importPath":"@happyvertical/smrt-projects"},"@happyvertical/smrt-projects:AssistanceRequestEvent":{"name":"assistancerequestevent","className":"AssistanceRequestEvent","qualifiedName":"@happyvertical/smrt-projects:AssistanceRequestEvent","collection":"assistancerequestevents","filePath":"/home/runner/work/smrt/smrt/packages/projects/src/models/delivery-control-plane.ts","packageName":"@happyvertical/smrt-projects","fields":{"tenantId":{"type":"text","required":true,"_meta":{"sqlType":"UUID","__tenancy":{"isTenantIdField":true,"autoFilter":true,"required":true,"autoPopulate":true,"nullable":false,"mode":"required","field":"tenantId","allowSuperAdminBypass":false}}},"assistanceRequestId":{"type":"foreignKey","required":true,"related":"AssistanceRequest","_meta":{"required":true}},"priorClassification":{"type":"text","required":false,"_meta":{}},"resultingClassification":{"type":"text","required":false,"_meta":{}},"actorRef":{"type":"text","required":false,"_meta":{}},"reason":{"type":"text","required":false,"_meta":{}},"resultingLinks":{"type":"text","required":false,"_meta":{}},"occurredAt":{"type":"datetime","required":false}},"methods":{},"decoratorConfig":{"tableName":"assistance_request_events","api":false,"cli":false,"mcp":false,"tenantScoped":{"mode":"required"},"conflictColumns":["tenant_id","slug","context"]},"extends":"SmrtObject","exportName":"AssistanceRequestEvent","collectionExportName":"AssistanceRequestEventCollection","validationRules":[{"field":"assistanceRequestId","rule":"required","fieldType":"foreignKey"}],"schema":{"tableName":"assistance_request_events","ddl":"CREATE TABLE IF NOT EXISTS \\"assistance_request_events\\" (\\n \\"id\\" UUID PRIMARY KEY NOT NULL,\\n \\"slug\\" TEXT NOT NULL,\\n \\"context\\" TEXT NOT NULL DEFAULT '',\\n \\"created_at\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\"updated_at\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\"tenant_id\\" UUID NOT NULL,\\n \\"assistance_request_id\\" UUID NOT NULL,\\n \\"prior_classification\\" TEXT,\\n \\"resulting_classification\\" TEXT,\\n \\"actor_ref\\" TEXT,\\n \\"reason\\" TEXT,\\n \\"resulting_links\\" TEXT,\\n \\"occurred_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"},"tenant_id":{"type":"UUID","referenceKind":"tenantId","notNull":true,"unique":false},"assistance_request_id":{"type":"UUID","referenceKind":"foreignKey","notNull":true,"unique":false,"foreignKey":{"table":"assistance_requests","column":"id","onDelete":"NO ACTION","onUpdate":"CASCADE"}},"prior_classification":{"type":"TEXT","notNull":false,"unique":false},"resulting_classification":{"type":"TEXT","notNull":false,"unique":false},"actor_ref":{"type":"TEXT","notNull":false,"unique":false},"reason":{"type":"TEXT","notNull":false,"unique":false},"resulting_links":{"type":"TEXT","notNull":false,"unique":false},"occurred_at":{"type":"TIMESTAMP","notNull":false,"unique":false}},"indexes":[{"name":"assistance_request_events_slug_context_idx","columns":["tenant_id","slug","context"],"unique":true},{"name":"assistance_request_events_tenant_id_created_at_idx","columns":["tenant_id","created_at"]},{"name":"assistance_request_events_assistance_request_id_idx","columns":["assistance_request_id"]}],"version":"bcc95ebe"},"importPath":"@happyvertical/smrt-projects"},"@happyvertical/smrt-projects:DevelopmentRequestWorkLinkCollection":{"name":"developmentrequestworklinkcollection","className":"DevelopmentRequestWorkLinkCollection","qualifiedName":"@happyvertical/smrt-projects:DevelopmentRequestWorkLinkCollection","collection":"developmentrequestworklinks","filePath":"/home/runner/work/smrt/smrt/packages/projects/src/models/delivery-control-plane.ts","packageName":"@happyvertical/smrt-projects","fields":{},"methods":{},"decoratorConfig":{"tableName":"development_request_work_links","api":false,"mcp":false,"cli":false},"extends":"SmrtCollection","extendsTypeArg":"DevelopmentRequestWorkLink","exportName":"DevelopmentRequestWorkLinkCollection","collectionExportName":"DevelopmentRequestWorkLinkCollectionCollection","schema":{"tableName":"development_request_work_links","ddl":"CREATE TABLE IF NOT EXISTS \\"development_request_work_links\\" (\\n \\"id\\" UUID PRIMARY KEY NOT NULL,\\n \\"slug\\" TEXT NOT NULL,\\n \\"context\\" TEXT NOT NULL DEFAULT '',\\n \\"created_at\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\"updated_at\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\"tenant_id\\" UUID NOT NULL,\\n \\"request_id\\" UUID NOT NULL,\\n \\"work_item_type\\" TEXT,\\n \\"work_item_id\\" TEXT,\\n \\"canonical_status\\" TEXT,\\n \\"provider_ref\\" TEXT,\\n \\"metadata\\" TEXT,\\n \\"last_projected_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"},"tenant_id":{"type":"UUID","referenceKind":"tenantId","notNull":true,"unique":false},"request_id":{"type":"UUID","referenceKind":"foreignKey","notNull":true,"unique":false,"foreignKey":{"table":"development_requests","column":"id","onDelete":"CASCADE","onUpdate":"CASCADE"}},"work_item_type":{"type":"TEXT","notNull":false,"unique":false},"work_item_id":{"type":"TEXT","notNull":false,"unique":false},"canonical_status":{"type":"TEXT","notNull":false,"unique":false},"provider_ref":{"type":"TEXT","notNull":false,"unique":false},"metadata":{"type":"TEXT","notNull":false,"unique":false},"last_projected_at":{"type":"TIMESTAMP","notNull":false,"unique":false}},"indexes":[{"name":"development_request_work_links_request_id_work_item_type_idx","columns":["request_id","work_item_type","work_item_id"],"unique":true,"nullsNotDistinct":true},{"name":"development_request_work_links_slug_context_idx","columns":["slug","context"]},{"name":"development_request_work_links_tenant_id_created_at_idx","columns":["tenant_id","created_at"]}],"version":"adcbaa21"},"importPath":"@happyvertical/smrt-projects"},"@happyvertical/smrt-projects:ProjectDeliveryEventCollection":{"name":"projectdeliveryeventcollection","className":"ProjectDeliveryEventCollection","qualifiedName":"@happyvertical/smrt-projects:ProjectDeliveryEventCollection","collection":"projectdeliveryevents","filePath":"/home/runner/work/smrt/smrt/packages/projects/src/models/delivery-control-plane.ts","packageName":"@happyvertical/smrt-projects","fields":{},"methods":{},"decoratorConfig":{"tableName":"project_delivery_events","api":false,"mcp":false,"cli":false},"extends":"SmrtCollection","extendsTypeArg":"ProjectDeliveryEvent","exportName":"ProjectDeliveryEventCollection","collectionExportName":"ProjectDeliveryEventCollectionCollection","schema":{"tableName":"project_delivery_events","ddl":"CREATE TABLE IF NOT EXISTS \\"project_delivery_events\\" (\\n \\"id\\" UUID PRIMARY KEY NOT NULL,\\n \\"slug\\" TEXT NOT NULL,\\n \\"context\\" TEXT NOT NULL DEFAULT '',\\n \\"created_at\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\"updated_at\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\"tenant_id\\" UUID NOT NULL,\\n \\"integration_id\\" UUID NOT NULL,\\n \\"request_id\\" UUID NOT NULL,\\n \\"idempotency_key\\" TEXT,\\n \\"sequence\\" INTEGER DEFAULT 0,\\n \\"type\\" TEXT,\\n \\"payload\\" TEXT,\\n \\"occurred_at\\" TIMESTAMP,\\n \\"delivered_at\\" TIMESTAMP,\\n \\"delivery_attempts\\" INTEGER DEFAULT 0,\\n \\"last_delivery_error\\" TEXT\\n);","columns":{"id":{"type":"UUID","primaryKey":true,"referenceKind":"id","notNull":true},"slug":{"type":"TEXT","notNull":true},"context":{"type":"TEXT","notNull":true,"default":""},"created_at":{"type":"TIMESTAMP","notNull":true,"default":"current_timestamp"},"updated_at":{"type":"TIMESTAMP","notNull":true,"default":"current_timestamp"},"tenant_id":{"type":"UUID","referenceKind":"tenantId","notNull":true,"unique":false},"integration_id":{"type":"UUID","referenceKind":"foreignKey","notNull":true,"unique":false,"foreignKey":{"table":"project_integrations","column":"id","onDelete":"CASCADE","onUpdate":"CASCADE"}},"request_id":{"type":"UUID","referenceKind":"foreignKey","notNull":true,"unique":false,"foreignKey":{"table":"development_requests","column":"id","onDelete":"NO ACTION","onUpdate":"CASCADE"}},"idempotency_key":{"type":"TEXT","notNull":false,"unique":false},"sequence":{"type":"INTEGER","notNull":false,"unique":false,"default":0},"type":{"type":"TEXT","notNull":false,"unique":false},"payload":{"type":"TEXT","notNull":false,"unique":false},"occurred_at":{"type":"TIMESTAMP","notNull":false,"unique":false},"delivered_at":{"type":"TIMESTAMP","notNull":false,"unique":false},"delivery_attempts":{"type":"INTEGER","notNull":false,"unique":false,"default":0},"last_delivery_error":{"type":"TEXT","notNull":false,"unique":false}},"indexes":[{"name":"project_delivery_events_integration_id_idempotency_key_idx","columns":["integration_id","idempotency_key"],"unique":true,"nullsNotDistinct":true},{"name":"project_delivery_events_slug_context_idx","columns":["slug","context"]},{"name":"project_delivery_events_tenant_id_created_at_idx","columns":["tenant_id","created_at"]},{"name":"project_delivery_events_request_id_idx","columns":["request_id"]}],"version":"99b9e301"},"importPath":"@happyvertical/smrt-projects"},"@happyvertical/smrt-projects:PreviewApprovalCollection":{"name":"previewapprovalcollection","className":"PreviewApprovalCollection","qualifiedName":"@happyvertical/smrt-projects:PreviewApprovalCollection","collection":"previewapprovals","filePath":"/home/runner/work/smrt/smrt/packages/projects/src/models/delivery-control-plane.ts","packageName":"@happyvertical/smrt-projects","fields":{},"methods":{},"decoratorConfig":{"tableName":"preview_approvals","api":false,"mcp":false,"cli":false},"extends":"SmrtCollection","extendsTypeArg":"PreviewApproval","exportName":"PreviewApprovalCollection","collectionExportName":"PreviewApprovalCollectionCollection","schema":{"tableName":"preview_approvals","ddl":"CREATE TABLE IF NOT EXISTS \\"preview_approvals\\" (\\n \\"id\\" UUID PRIMARY KEY NOT NULL,\\n \\"slug\\" TEXT NOT NULL,\\n \\"context\\" TEXT NOT NULL DEFAULT '',\\n \\"created_at\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\"updated_at\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\"tenant_id\\" UUID NOT NULL,\\n \\"request_id\\" UUID NOT NULL,\\n \\"preview_id\\" TEXT,\\n \\"preview_url\\" TEXT,\\n \\"status\\" TEXT,\\n \\"decided_by_ref\\" TEXT,\\n \\"reason\\" TEXT,\\n \\"decided_at\\" TIMESTAMP,\\n \\"stale_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"},"tenant_id":{"type":"UUID","referenceKind":"tenantId","notNull":true,"unique":false},"request_id":{"type":"UUID","referenceKind":"foreignKey","notNull":true,"unique":false,"foreignKey":{"table":"development_requests","column":"id","onDelete":"CASCADE","onUpdate":"CASCADE"}},"preview_id":{"type":"TEXT","notNull":false,"unique":false},"preview_url":{"type":"TEXT","notNull":false,"unique":false},"status":{"type":"TEXT","notNull":false,"unique":false},"decided_by_ref":{"type":"TEXT","notNull":false,"unique":false},"reason":{"type":"TEXT","notNull":false,"unique":false},"decided_at":{"type":"TIMESTAMP","notNull":false,"unique":false},"stale_at":{"type":"TIMESTAMP","notNull":false,"unique":false}},"indexes":[{"name":"preview_approvals_request_id_preview_id_idx","columns":["request_id","preview_id"],"unique":true,"nullsNotDistinct":true},{"name":"preview_approvals_slug_context_idx","columns":["slug","context"]},{"name":"preview_approvals_tenant_id_created_at_idx","columns":["tenant_id","created_at"]}],"version":"ec7b2b14"},"importPath":"@happyvertical/smrt-projects"},"@happyvertical/smrt-projects:AssistanceRequestCollection":{"name":"assistancerequestcollection","className":"AssistanceRequestCollection","qualifiedName":"@happyvertical/smrt-projects:AssistanceRequestCollection","collection":"assistancerequests","filePath":"/home/runner/work/smrt/smrt/packages/projects/src/models/delivery-control-plane.ts","packageName":"@happyvertical/smrt-projects","fields":{},"methods":{},"decoratorConfig":{"tableName":"assistance_requests","api":false,"mcp":false,"cli":false},"extends":"SmrtCollection","extendsTypeArg":"AssistanceRequest","exportName":"AssistanceRequestCollection","collectionExportName":"AssistanceRequestCollectionCollection","schema":{"tableName":"assistance_requests","ddl":"CREATE TABLE IF NOT EXISTS \\"assistance_requests\\" (\\n \\"id\\" UUID PRIMARY KEY NOT NULL,\\n \\"slug\\" TEXT NOT NULL,\\n \\"context\\" TEXT NOT NULL DEFAULT '',\\n \\"created_at\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\"updated_at\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\"tenant_id\\" UUID NOT NULL,\\n \\"integration_id\\" UUID NOT NULL,\\n \\"requester_id\\" TEXT,\\n \\"subject\\" TEXT,\\n \\"application_context\\" TEXT,\\n \\"conversation\\" TEXT,\\n \\"evidence\\" TEXT,\\n \\"classification\\" TEXT,\\n \\"support_case_id\\" TEXT,\\n \\"development_request_id\\" TEXT,\\n \\"delivery_handoff_linked_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"},"tenant_id":{"type":"UUID","referenceKind":"tenantId","notNull":true,"unique":false},"integration_id":{"type":"UUID","referenceKind":"foreignKey","notNull":true,"unique":false,"foreignKey":{"table":"project_integrations","column":"id","onDelete":"NO ACTION","onUpdate":"CASCADE"}},"requester_id":{"type":"TEXT","notNull":false,"unique":false},"subject":{"type":"TEXT","notNull":false,"unique":false},"application_context":{"type":"TEXT","notNull":false,"unique":false},"conversation":{"type":"TEXT","notNull":false,"unique":false},"evidence":{"type":"TEXT","notNull":false,"unique":false},"classification":{"type":"TEXT","notNull":false,"unique":false},"support_case_id":{"type":"TEXT","notNull":false,"unique":false},"development_request_id":{"type":"TEXT","notNull":false,"unique":false},"delivery_handoff_linked_at":{"type":"TIMESTAMP","notNull":false,"unique":false}},"indexes":[{"name":"assistance_requests_slug_context_idx","columns":["tenant_id","slug","context"],"unique":true},{"name":"assistance_requests_tenant_id_created_at_idx","columns":["tenant_id","created_at"]},{"name":"assistance_requests_integration_id_idx","columns":["integration_id"]}],"version":"d1653259"},"importPath":"@happyvertical/smrt-projects"},"@happyvertical/smrt-projects:AssistanceRequestEventCollection":{"name":"assistancerequesteventcollection","className":"AssistanceRequestEventCollection","qualifiedName":"@happyvertical/smrt-projects:AssistanceRequestEventCollection","collection":"assistancerequestevents","filePath":"/home/runner/work/smrt/smrt/packages/projects/src/models/delivery-control-plane.ts","packageName":"@happyvertical/smrt-projects","fields":{},"methods":{},"decoratorConfig":{"tableName":"assistance_request_events","api":false,"mcp":false,"cli":false},"extends":"SmrtCollection","extendsTypeArg":"AssistanceRequestEvent","exportName":"AssistanceRequestEventCollection","collectionExportName":"AssistanceRequestEventCollectionCollection","schema":{"tableName":"assistance_request_events","ddl":"CREATE TABLE IF NOT EXISTS \\"assistance_request_events\\" (\\n \\"id\\" UUID PRIMARY KEY NOT NULL,\\n \\"slug\\" TEXT NOT NULL,\\n \\"context\\" TEXT NOT NULL DEFAULT '',\\n \\"created_at\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\"updated_at\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\"tenant_id\\" UUID NOT NULL,\\n \\"assistance_request_id\\" UUID NOT NULL,\\n \\"prior_classification\\" TEXT,\\n \\"resulting_classification\\" TEXT,\\n \\"actor_ref\\" TEXT,\\n \\"reason\\" TEXT,\\n \\"resulting_links\\" TEXT,\\n \\"occurred_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"},"tenant_id":{"type":"UUID","referenceKind":"tenantId","notNull":true,"unique":false},"assistance_request_id":{"type":"UUID","referenceKind":"foreignKey","notNull":true,"unique":false,"foreignKey":{"table":"assistance_requests","column":"id","onDelete":"NO ACTION","onUpdate":"CASCADE"}},"prior_classification":{"type":"TEXT","notNull":false,"unique":false},"resulting_classification":{"type":"TEXT","notNull":false,"unique":false},"actor_ref":{"type":"TEXT","notNull":false,"unique":false},"reason":{"type":"TEXT","notNull":false,"unique":false},"resulting_links":{"type":"TEXT","notNull":false,"unique":false},"occurred_at":{"type":"TIMESTAMP","notNull":false,"unique":false}},"indexes":[{"name":"assistance_request_events_slug_context_idx","columns":["tenant_id","slug","context"],"unique":true},{"name":"assistance_request_events_tenant_id_created_at_idx","columns":["tenant_id","created_at"]},{"name":"assistance_request_events_assistance_request_id_idx","columns":["assistance_request_id"]}],"version":"bcc95ebe"},"importPath":"@happyvertical/smrt-projects"}},"moduleType":"smrt","smrtDependencies":["@happyvertical/smrt-core","@happyvertical/smrt-prompts","@happyvertical/smrt-subscriptions","@happyvertical/smrt-tenancy","@happyvertical/smrt-timesheets"],"stampsConstructors":true}`));
|
|
18
18
|
//#endregion
|
|
19
19
|
//#region src/models/DevelopmentRequestHistory.ts
|
|
20
20
|
var __defProp$8 = Object.defineProperty;
|
|
21
21
|
var __getOwnPropDesc$8 = Object.getOwnPropertyDescriptor;
|
|
22
|
+
var __defNormalProp$8 = (obj, key, value) => key in obj ? __defProp$8(obj, key, {
|
|
23
|
+
enumerable: true,
|
|
24
|
+
configurable: true,
|
|
25
|
+
writable: true,
|
|
26
|
+
value
|
|
27
|
+
}) : obj[key] = value;
|
|
22
28
|
var __decorateClass$8 = (decorators, target, key, kind) => {
|
|
23
29
|
var result = kind > 1 ? void 0 : kind ? __getOwnPropDesc$8(target, key) : target;
|
|
24
30
|
for (var i = decorators.length - 1, decorator; i >= 0; i--) if (decorator = decorators[i]) result = (kind ? decorator(target, key, result) : decorator(result)) || result;
|
|
25
31
|
if (kind && result) __defProp$8(target, key, result);
|
|
26
32
|
return result;
|
|
27
33
|
};
|
|
34
|
+
var __publicField$8 = (obj, key, value) => __defNormalProp$8(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
28
35
|
var DevelopmentRequestHistory = class extends SmrtObject {
|
|
29
36
|
tenantId = "";
|
|
30
37
|
requestId = "";
|
|
@@ -44,6 +51,7 @@ var DevelopmentRequestHistory = class extends SmrtObject {
|
|
|
44
51
|
if (options.note !== void 0) this.note = options.note;
|
|
45
52
|
}
|
|
46
53
|
};
|
|
54
|
+
__publicField$8(DevelopmentRequestHistory, "__smrtPackage__", "@happyvertical/smrt-projects");
|
|
47
55
|
__decorateClass$8([tenantId()], DevelopmentRequestHistory.prototype, "tenantId", 2);
|
|
48
56
|
__decorateClass$8([foreignKey("DevelopmentRequest", { required: true })], DevelopmentRequestHistory.prototype, "requestId", 2);
|
|
49
57
|
DevelopmentRequestHistory = __decorateClass$8([TenantScoped({ mode: "required" }), smrt({
|
|
@@ -70,12 +78,19 @@ var DevelopmentRequestHistoryCollection = class extends SmrtCollection {
|
|
|
70
78
|
//#region src/models/DevelopmentRequest.ts
|
|
71
79
|
var __defProp$7 = Object.defineProperty;
|
|
72
80
|
var __getOwnPropDesc$7 = Object.getOwnPropertyDescriptor;
|
|
81
|
+
var __defNormalProp$7 = (obj, key, value) => key in obj ? __defProp$7(obj, key, {
|
|
82
|
+
enumerable: true,
|
|
83
|
+
configurable: true,
|
|
84
|
+
writable: true,
|
|
85
|
+
value
|
|
86
|
+
}) : obj[key] = value;
|
|
73
87
|
var __decorateClass$7 = (decorators, target, key, kind) => {
|
|
74
88
|
var result = kind > 1 ? void 0 : kind ? __getOwnPropDesc$7(target, key) : target;
|
|
75
89
|
for (var i = decorators.length - 1, decorator; i >= 0; i--) if (decorator = decorators[i]) result = (kind ? decorator(target, key, result) : decorator(result)) || result;
|
|
76
90
|
if (kind && result) __defProp$7(target, key, result);
|
|
77
91
|
return result;
|
|
78
92
|
};
|
|
93
|
+
var __publicField$7 = (obj, key, value) => __defNormalProp$7(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
79
94
|
function parseEvidence$1(raw) {
|
|
80
95
|
if (!raw) return [];
|
|
81
96
|
if (Array.isArray(raw)) return normalizeEvidence(raw);
|
|
@@ -140,6 +155,7 @@ var DevelopmentRequest = class extends SmrtObject {
|
|
|
140
155
|
this.evidence = typeof value === "string" ? value : stringifyEvidence(value);
|
|
141
156
|
}
|
|
142
157
|
};
|
|
158
|
+
__publicField$7(DevelopmentRequest, "__smrtPackage__", "@happyvertical/smrt-projects");
|
|
143
159
|
__decorateClass$7([tenantId()], DevelopmentRequest.prototype, "tenantId", 2);
|
|
144
160
|
__decorateClass$7([foreignKey("ProjectIntegration", { required: true })], DevelopmentRequest.prototype, "integrationId", 2);
|
|
145
161
|
DevelopmentRequest = __decorateClass$7([TenantScoped({ mode: "required" }), smrt({
|
|
@@ -414,12 +430,19 @@ var IssueCollection = class extends SmrtCollection {
|
|
|
414
430
|
//#region src/models/ProjectIntegrationAudit.ts
|
|
415
431
|
var __defProp$6 = Object.defineProperty;
|
|
416
432
|
var __getOwnPropDesc$6 = Object.getOwnPropertyDescriptor;
|
|
433
|
+
var __defNormalProp$6 = (obj, key, value) => key in obj ? __defProp$6(obj, key, {
|
|
434
|
+
enumerable: true,
|
|
435
|
+
configurable: true,
|
|
436
|
+
writable: true,
|
|
437
|
+
value
|
|
438
|
+
}) : obj[key] = value;
|
|
417
439
|
var __decorateClass$6 = (decorators, target, key, kind) => {
|
|
418
440
|
var result = kind > 1 ? void 0 : kind ? __getOwnPropDesc$6(target, key) : target;
|
|
419
441
|
for (var i = decorators.length - 1, decorator; i >= 0; i--) if (decorator = decorators[i]) result = (kind ? decorator(target, key, result) : decorator(result)) || result;
|
|
420
442
|
if (kind && result) __defProp$6(target, key, result);
|
|
421
443
|
return result;
|
|
422
444
|
};
|
|
445
|
+
var __publicField$6 = (obj, key, value) => __defNormalProp$6(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
423
446
|
var ProjectIntegrationAudit = class extends SmrtObject {
|
|
424
447
|
tenantId = "";
|
|
425
448
|
integrationId = "";
|
|
@@ -433,6 +456,7 @@ var ProjectIntegrationAudit = class extends SmrtObject {
|
|
|
433
456
|
if (options.note !== void 0) this.note = options.note;
|
|
434
457
|
}
|
|
435
458
|
};
|
|
459
|
+
__publicField$6(ProjectIntegrationAudit, "__smrtPackage__", "@happyvertical/smrt-projects");
|
|
436
460
|
__decorateClass$6([tenantId()], ProjectIntegrationAudit.prototype, "tenantId", 2);
|
|
437
461
|
__decorateClass$6([foreignKey("ProjectIntegration", { required: true })], ProjectIntegrationAudit.prototype, "integrationId", 2);
|
|
438
462
|
ProjectIntegrationAudit = __decorateClass$6([TenantScoped({ mode: "required" }), smrt({
|
|
@@ -459,12 +483,19 @@ var ProjectIntegrationAuditCollection = class extends SmrtCollection {
|
|
|
459
483
|
//#region src/models/ProjectIntegration.ts
|
|
460
484
|
var __defProp$5 = Object.defineProperty;
|
|
461
485
|
var __getOwnPropDesc$5 = Object.getOwnPropertyDescriptor;
|
|
486
|
+
var __defNormalProp$5 = (obj, key, value) => key in obj ? __defProp$5(obj, key, {
|
|
487
|
+
enumerable: true,
|
|
488
|
+
configurable: true,
|
|
489
|
+
writable: true,
|
|
490
|
+
value
|
|
491
|
+
}) : obj[key] = value;
|
|
462
492
|
var __decorateClass$5 = (decorators, target, key, kind) => {
|
|
463
493
|
var result = kind > 1 ? void 0 : kind ? __getOwnPropDesc$5(target, key) : target;
|
|
464
494
|
for (var i = decorators.length - 1, decorator; i >= 0; i--) if (decorator = decorators[i]) result = (kind ? decorator(target, key, result) : decorator(result)) || result;
|
|
465
495
|
if (kind && result) __defProp$5(target, key, result);
|
|
466
496
|
return result;
|
|
467
497
|
};
|
|
498
|
+
var __publicField$5 = (obj, key, value) => __defNormalProp$5(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
468
499
|
var ProjectIntegration = class extends SmrtObject {
|
|
469
500
|
tenantId = "";
|
|
470
501
|
projectId = "";
|
|
@@ -490,6 +521,7 @@ var ProjectIntegration = class extends SmrtObject {
|
|
|
490
521
|
return this.status === "active" && this.revokedAt === null;
|
|
491
522
|
}
|
|
492
523
|
};
|
|
524
|
+
__publicField$5(ProjectIntegration, "__smrtPackage__", "@happyvertical/smrt-projects");
|
|
493
525
|
__decorateClass$5([tenantId()], ProjectIntegration.prototype, "tenantId", 2);
|
|
494
526
|
__decorateClass$5([field({ sensitive: true })], ProjectIntegration.prototype, "credentialHash", 2);
|
|
495
527
|
ProjectIntegration = __decorateClass$5([TenantScoped({ mode: "required" }), smrt({
|
|
@@ -614,12 +646,19 @@ function parseCredentialTenant(credential) {
|
|
|
614
646
|
//#region src/models/Project.ts
|
|
615
647
|
var __defProp$4 = Object.defineProperty;
|
|
616
648
|
var __getOwnPropDesc$4 = Object.getOwnPropertyDescriptor;
|
|
649
|
+
var __defNormalProp$4 = (obj, key, value) => key in obj ? __defProp$4(obj, key, {
|
|
650
|
+
enumerable: true,
|
|
651
|
+
configurable: true,
|
|
652
|
+
writable: true,
|
|
653
|
+
value
|
|
654
|
+
}) : obj[key] = value;
|
|
617
655
|
var __decorateClass$4 = (decorators, target, key, kind) => {
|
|
618
656
|
var result = kind > 1 ? void 0 : kind ? __getOwnPropDesc$4(target, key) : target;
|
|
619
657
|
for (var i = decorators.length - 1, decorator; i >= 0; i--) if (decorator = decorators[i]) result = (kind ? decorator(target, key, result) : decorator(result)) || result;
|
|
620
658
|
if (kind && result) __defProp$4(target, key, result);
|
|
621
659
|
return result;
|
|
622
660
|
};
|
|
661
|
+
var __publicField$4 = (obj, key, value) => __defNormalProp$4(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
623
662
|
var Project = class extends SmrtObject {
|
|
624
663
|
tenantId = null;
|
|
625
664
|
/**
|
|
@@ -874,6 +913,7 @@ var Project = class extends SmrtObject {
|
|
|
874
913
|
return await (await ProjectCollection.create(options)).findByTitle(title);
|
|
875
914
|
}
|
|
876
915
|
};
|
|
916
|
+
__publicField$4(Project, "__smrtPackage__", "@happyvertical/smrt-projects");
|
|
877
917
|
__decorateClass$4([tenantId({ nullable: true })], Project.prototype, "tenantId", 2);
|
|
878
918
|
Project = __decorateClass$4([TenantScoped({ mode: "optional" }), smrt({
|
|
879
919
|
api: { include: [
|
|
@@ -1266,12 +1306,19 @@ var PullRequestCollection = class extends SmrtCollection {
|
|
|
1266
1306
|
//#region src/models/Repository.ts
|
|
1267
1307
|
var __defProp$3 = Object.defineProperty;
|
|
1268
1308
|
var __getOwnPropDesc$3 = Object.getOwnPropertyDescriptor;
|
|
1309
|
+
var __defNormalProp$3 = (obj, key, value) => key in obj ? __defProp$3(obj, key, {
|
|
1310
|
+
enumerable: true,
|
|
1311
|
+
configurable: true,
|
|
1312
|
+
writable: true,
|
|
1313
|
+
value
|
|
1314
|
+
}) : obj[key] = value;
|
|
1269
1315
|
var __decorateClass$3 = (decorators, target, key, kind) => {
|
|
1270
1316
|
var result = kind > 1 ? void 0 : kind ? __getOwnPropDesc$3(target, key) : target;
|
|
1271
1317
|
for (var i = decorators.length - 1, decorator; i >= 0; i--) if (decorator = decorators[i]) result = (kind ? decorator(target, key, result) : decorator(result)) || result;
|
|
1272
1318
|
if (kind && result) __defProp$3(target, key, result);
|
|
1273
1319
|
return result;
|
|
1274
1320
|
};
|
|
1321
|
+
var __publicField$3 = (obj, key, value) => __defNormalProp$3(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
1275
1322
|
var Repository = class extends SmrtObject {
|
|
1276
1323
|
tenantId = null;
|
|
1277
1324
|
/**
|
|
@@ -1447,7 +1494,7 @@ var Repository = class extends SmrtObject {
|
|
|
1447
1494
|
const repositoryId = this.id ?? void 0;
|
|
1448
1495
|
if (!repositoryId) throw new Error("Repository must be saved before creating issues");
|
|
1449
1496
|
const created = await (await this.getClient()).createIssue(data);
|
|
1450
|
-
const { Issue } = await import("./chunks/Issue-
|
|
1497
|
+
const { Issue } = await import("./chunks/Issue-DycFRe4L.js").then((n) => n.n);
|
|
1451
1498
|
const issue = new Issue({
|
|
1452
1499
|
...this.childOptions(),
|
|
1453
1500
|
repositoryId,
|
|
@@ -1476,7 +1523,7 @@ var Repository = class extends SmrtObject {
|
|
|
1476
1523
|
const repositoryId = this.id ?? void 0;
|
|
1477
1524
|
if (!repositoryId) throw new Error("Repository must be saved before creating pull requests");
|
|
1478
1525
|
const created = await (await this.getClient()).createPullRequest(data);
|
|
1479
|
-
const { PullRequest } = await import("./chunks/PullRequest
|
|
1526
|
+
const { PullRequest } = await import("./chunks/PullRequest--pr1Soaq.js").then((n) => n.n);
|
|
1480
1527
|
const pr = new PullRequest({
|
|
1481
1528
|
...this.childOptions(),
|
|
1482
1529
|
repositoryId,
|
|
@@ -1539,6 +1586,7 @@ var Repository = class extends SmrtObject {
|
|
|
1539
1586
|
return await (await RepositoryCollection.create(options)).findByFullName(owner, name);
|
|
1540
1587
|
}
|
|
1541
1588
|
};
|
|
1589
|
+
__publicField$3(Repository, "__smrtPackage__", "@happyvertical/smrt-projects");
|
|
1542
1590
|
__decorateClass$3([tenantId({ nullable: true })], Repository.prototype, "tenantId", 2);
|
|
1543
1591
|
Repository = __decorateClass$3([TenantScoped({ mode: "optional" }), smrt({
|
|
1544
1592
|
api: { include: [
|
|
@@ -1696,12 +1744,19 @@ var RepositoryCollection = class extends SmrtCollection {
|
|
|
1696
1744
|
//#region src/models/delivery-control-plane.ts
|
|
1697
1745
|
var __defProp$2 = Object.defineProperty;
|
|
1698
1746
|
var __getOwnPropDesc$2 = Object.getOwnPropertyDescriptor;
|
|
1747
|
+
var __defNormalProp$2 = (obj, key, value) => key in obj ? __defProp$2(obj, key, {
|
|
1748
|
+
enumerable: true,
|
|
1749
|
+
configurable: true,
|
|
1750
|
+
writable: true,
|
|
1751
|
+
value
|
|
1752
|
+
}) : obj[key] = value;
|
|
1699
1753
|
var __decorateClass$2 = (decorators, target, key, kind) => {
|
|
1700
1754
|
var result = kind > 1 ? void 0 : kind ? __getOwnPropDesc$2(target, key) : target;
|
|
1701
1755
|
for (var i = decorators.length - 1, decorator; i >= 0; i--) if (decorator = decorators[i]) result = (kind ? decorator(target, key, result) : decorator(result)) || result;
|
|
1702
1756
|
if (kind && result) __defProp$2(target, key, result);
|
|
1703
1757
|
return result;
|
|
1704
1758
|
};
|
|
1759
|
+
var __publicField$2 = (obj, key, value) => __defNormalProp$2(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
1705
1760
|
function parseProjectJson(value, fallback) {
|
|
1706
1761
|
try {
|
|
1707
1762
|
return JSON.parse(value);
|
|
@@ -1724,6 +1779,7 @@ var DevelopmentRequestWorkLink = class extends SmrtObject {
|
|
|
1724
1779
|
metadata = "{}";
|
|
1725
1780
|
lastProjectedAt = null;
|
|
1726
1781
|
};
|
|
1782
|
+
__publicField$2(DevelopmentRequestWorkLink, "__smrtPackage__", "@happyvertical/smrt-projects");
|
|
1727
1783
|
__decorateClass$2([tenantId()], DevelopmentRequestWorkLink.prototype, "tenantId", 2);
|
|
1728
1784
|
__decorateClass$2([foreignKey("DevelopmentRequest", { required: true })], DevelopmentRequestWorkLink.prototype, "requestId", 2);
|
|
1729
1785
|
__decorateClass$2([field({ type: "text" })], DevelopmentRequestWorkLink.prototype, "workItemType", 2);
|
|
@@ -1753,6 +1809,7 @@ var ProjectDeliveryEvent = class extends SmrtObject {
|
|
|
1753
1809
|
deliveryAttempts = 0;
|
|
1754
1810
|
lastDeliveryError = "";
|
|
1755
1811
|
};
|
|
1812
|
+
__publicField$2(ProjectDeliveryEvent, "__smrtPackage__", "@happyvertical/smrt-projects");
|
|
1756
1813
|
__decorateClass$2([tenantId()], ProjectDeliveryEvent.prototype, "tenantId", 2);
|
|
1757
1814
|
__decorateClass$2([foreignKey("ProjectIntegration", { required: true })], ProjectDeliveryEvent.prototype, "integrationId", 2);
|
|
1758
1815
|
__decorateClass$2([foreignKey("DevelopmentRequest", { required: true })], ProjectDeliveryEvent.prototype, "requestId", 2);
|
|
@@ -1777,6 +1834,7 @@ var PreviewApproval = class extends SmrtObject {
|
|
|
1777
1834
|
decidedAt = null;
|
|
1778
1835
|
staleAt = null;
|
|
1779
1836
|
};
|
|
1837
|
+
__publicField$2(PreviewApproval, "__smrtPackage__", "@happyvertical/smrt-projects");
|
|
1780
1838
|
__decorateClass$2([tenantId()], PreviewApproval.prototype, "tenantId", 2);
|
|
1781
1839
|
__decorateClass$2([foreignKey("DevelopmentRequest", { required: true })], PreviewApproval.prototype, "requestId", 2);
|
|
1782
1840
|
__decorateClass$2([field({ type: "text" })], PreviewApproval.prototype, "previewId", 2);
|
|
@@ -1803,6 +1861,7 @@ var AssistanceRequest = class extends SmrtObject {
|
|
|
1803
1861
|
deliveryHandoffLinkedAt = null;
|
|
1804
1862
|
createdAt = /* @__PURE__ */ new Date();
|
|
1805
1863
|
};
|
|
1864
|
+
__publicField$2(AssistanceRequest, "__smrtPackage__", "@happyvertical/smrt-projects");
|
|
1806
1865
|
__decorateClass$2([tenantId()], AssistanceRequest.prototype, "tenantId", 2);
|
|
1807
1866
|
__decorateClass$2([foreignKey("ProjectIntegration", { required: true })], AssistanceRequest.prototype, "integrationId", 2);
|
|
1808
1867
|
__decorateClass$2([field({ type: "text" })], AssistanceRequest.prototype, "requesterId", 2);
|
|
@@ -1827,6 +1886,7 @@ var AssistanceRequestEvent = class extends SmrtObject {
|
|
|
1827
1886
|
resultingLinks = "{}";
|
|
1828
1887
|
occurredAt = /* @__PURE__ */ new Date();
|
|
1829
1888
|
};
|
|
1889
|
+
__publicField$2(AssistanceRequestEvent, "__smrtPackage__", "@happyvertical/smrt-projects");
|
|
1830
1890
|
__decorateClass$2([tenantId()], AssistanceRequestEvent.prototype, "tenantId", 2);
|
|
1831
1891
|
__decorateClass$2([foreignKey("AssistanceRequest", { required: true })], AssistanceRequestEvent.prototype, "assistanceRequestId", 2);
|
|
1832
1892
|
__decorateClass$2([field({ type: "text" })], AssistanceRequestEvent.prototype, "priorClassification", 2);
|
|
@@ -2201,12 +2261,19 @@ function migrateProjectsMoneyToMinorUnits(db, options = {}) {
|
|
|
2201
2261
|
var Comment_exports = /* @__PURE__ */ __exportAll({ Comment: () => Comment });
|
|
2202
2262
|
var __defProp$1 = Object.defineProperty;
|
|
2203
2263
|
var __getOwnPropDesc$1 = Object.getOwnPropertyDescriptor;
|
|
2264
|
+
var __defNormalProp$1 = (obj, key, value) => key in obj ? __defProp$1(obj, key, {
|
|
2265
|
+
enumerable: true,
|
|
2266
|
+
configurable: true,
|
|
2267
|
+
writable: true,
|
|
2268
|
+
value
|
|
2269
|
+
}) : obj[key] = value;
|
|
2204
2270
|
var __decorateClass$1 = (decorators, target, key, kind) => {
|
|
2205
2271
|
var result = kind > 1 ? void 0 : kind ? __getOwnPropDesc$1(target, key) : target;
|
|
2206
2272
|
for (var i = decorators.length - 1, decorator; i >= 0; i--) if (decorator = decorators[i]) result = (kind ? decorator(target, key, result) : decorator(result)) || result;
|
|
2207
2273
|
if (kind && result) __defProp$1(target, key, result);
|
|
2208
2274
|
return result;
|
|
2209
2275
|
};
|
|
2276
|
+
var __publicField$1 = (obj, key, value) => __defNormalProp$1(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
2210
2277
|
var logger = createLogger({ level: "info" });
|
|
2211
2278
|
var SENTIMENT_CHOICES = {
|
|
2212
2279
|
positive: null,
|
|
@@ -2336,6 +2403,7 @@ var Comment = class extends SmrtObject {
|
|
|
2336
2403
|
return "neutral";
|
|
2337
2404
|
}
|
|
2338
2405
|
};
|
|
2406
|
+
__publicField$1(Comment, "__smrtPackage__", "@happyvertical/smrt-projects");
|
|
2339
2407
|
__decorateClass$1([tenantId({ nullable: true })], Comment.prototype, "tenantId", 2);
|
|
2340
2408
|
__decorateClass$1([foreignKey("Issue")], Comment.prototype, "issueId", 2);
|
|
2341
2409
|
Comment = __decorateClass$1([TenantScoped({ mode: "optional" }), smrt({
|
|
@@ -2347,12 +2415,19 @@ Comment = __decorateClass$1([TenantScoped({ mode: "optional" }), smrt({
|
|
|
2347
2415
|
//#region src/models/Label.ts
|
|
2348
2416
|
var __defProp = Object.defineProperty;
|
|
2349
2417
|
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
2418
|
+
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, {
|
|
2419
|
+
enumerable: true,
|
|
2420
|
+
configurable: true,
|
|
2421
|
+
writable: true,
|
|
2422
|
+
value
|
|
2423
|
+
}) : obj[key] = value;
|
|
2350
2424
|
var __decorateClass = (decorators, target, key, kind) => {
|
|
2351
2425
|
var result = kind > 1 ? void 0 : kind ? __getOwnPropDesc(target, key) : target;
|
|
2352
2426
|
for (var i = decorators.length - 1, decorator; i >= 0; i--) if (decorator = decorators[i]) result = (kind ? decorator(target, key, result) : decorator(result)) || result;
|
|
2353
2427
|
if (kind && result) __defProp(target, key, result);
|
|
2354
2428
|
return result;
|
|
2355
2429
|
};
|
|
2430
|
+
var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
2356
2431
|
var Label = class extends SmrtObject {
|
|
2357
2432
|
repositoryId;
|
|
2358
2433
|
/**
|
|
@@ -2477,6 +2552,7 @@ var Label = class extends SmrtObject {
|
|
|
2477
2552
|
await this.save();
|
|
2478
2553
|
}
|
|
2479
2554
|
};
|
|
2555
|
+
__publicField(Label, "__smrtPackage__", "@happyvertical/smrt-projects");
|
|
2480
2556
|
__decorateClass([foreignKey("Repository")], Label.prototype, "repositoryId", 2);
|
|
2481
2557
|
Label = __decorateClass([smrt({
|
|
2482
2558
|
api: { include: [
|