@lucern/contracts 0.1.2-alpha.4 → 0.3.0-alpha.0
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/defineFunction-DO97DKs4.d.ts +14 -0
- package/dist/defineTable-CBQ03FXl.d.ts +36 -0
- package/dist/dsl-BgpoVOVQ.d.ts +110 -0
- package/dist/dsl.d.ts +5 -0
- package/dist/dsl.js +675 -0
- package/dist/dsl.js.map +1 -0
- package/dist/function-registry/beliefs.d.ts +519 -0
- package/dist/function-registry/beliefs.js +4326 -0
- package/dist/function-registry/beliefs.js.map +1 -0
- package/dist/function-registry/coding.d.ts +347 -0
- package/dist/function-registry/coding.js +4268 -0
- package/dist/function-registry/coding.js.map +1 -0
- package/dist/function-registry/context.d.ts +218 -0
- package/dist/function-registry/context.js +4175 -0
- package/dist/function-registry/context.js.map +1 -0
- package/dist/function-registry/contracts.d.ts +218 -0
- package/dist/function-registry/contracts.js +4143 -0
- package/dist/function-registry/contracts.js.map +1 -0
- package/dist/function-registry/coordination.d.ts +476 -0
- package/dist/function-registry/coordination.js +4254 -0
- package/dist/function-registry/coordination.js.map +1 -0
- package/dist/function-registry/edges.d.ts +175 -0
- package/dist/function-registry/edges.js +4150 -0
- package/dist/function-registry/edges.js.map +1 -0
- package/dist/function-registry/evidence.d.ts +433 -0
- package/dist/function-registry/evidence.js +4302 -0
- package/dist/function-registry/evidence.js.map +1 -0
- package/dist/function-registry/graph.d.ts +648 -0
- package/dist/function-registry/graph.js +4329 -0
- package/dist/function-registry/graph.js.map +1 -0
- package/dist/function-registry/helpers.d.ts +86 -0
- package/dist/function-registry/helpers.js +4131 -0
- package/dist/function-registry/helpers.js.map +1 -0
- package/dist/function-registry/identity.d.ts +218 -0
- package/dist/function-registry/identity.js +4154 -0
- package/dist/function-registry/identity.js.map +1 -0
- package/dist/function-registry/index.d.ts +32 -0
- package/dist/function-registry/index.js +4235 -0
- package/dist/function-registry/index.js.map +1 -0
- package/dist/function-registry/judgments.d.ts +175 -0
- package/dist/function-registry/judgments.js +4157 -0
- package/dist/function-registry/judgments.js.map +1 -0
- package/dist/function-registry/legacy.d.ts +132 -0
- package/dist/function-registry/legacy.js +4118 -0
- package/dist/function-registry/legacy.js.map +1 -0
- package/dist/function-registry/lenses.d.ts +261 -0
- package/dist/function-registry/lenses.js +4160 -0
- package/dist/function-registry/lenses.js.map +1 -0
- package/dist/function-registry/manifest.d.ts +36 -0
- package/dist/function-registry/manifest.js +366 -0
- package/dist/function-registry/manifest.js.map +1 -0
- package/dist/function-registry/ontologies.d.ts +562 -0
- package/dist/function-registry/ontologies.js +4292 -0
- package/dist/function-registry/ontologies.js.map +1 -0
- package/dist/function-registry/pipeline.d.ts +218 -0
- package/dist/function-registry/pipeline.js +4143 -0
- package/dist/function-registry/pipeline.js.map +1 -0
- package/dist/function-registry/questions.d.ts +605 -0
- package/dist/function-registry/questions.js +4329 -0
- package/dist/function-registry/questions.js.map +1 -0
- package/dist/function-registry/tasks.d.ts +261 -0
- package/dist/function-registry/tasks.js +4166 -0
- package/dist/function-registry/tasks.js.map +1 -0
- package/dist/function-registry/topics.d.ts +304 -0
- package/dist/function-registry/topics.js +4193 -0
- package/dist/function-registry/topics.js.map +1 -0
- package/dist/function-registry/types.d.ts +84 -0
- package/dist/function-registry/types.js +3 -0
- package/dist/function-registry/types.js.map +1 -0
- package/dist/function-registry/worktrees.d.ts +476 -0
- package/dist/function-registry/worktrees.js +4277 -0
- package/dist/function-registry/worktrees.js.map +1 -0
- package/dist/generated/convexSchemas.d.ts +20 -0
- package/dist/generated/convexSchemas.js +160 -0
- package/dist/generated/convexSchemas.js.map +1 -0
- package/dist/generated/schema-manifest.json +5179 -0
- package/dist/generated/tableOwnership.d.ts +127 -0
- package/dist/generated/tableOwnership.js +276 -0
- package/dist/generated/tableOwnership.js.map +1 -0
- package/dist/generated/tier-expectations.json +360 -0
- package/dist/idOf-DR8tkhQS.d.ts +10 -0
- package/dist/index-DoDXl8KS.d.ts +19 -0
- package/dist/index.d.ts +11 -2
- package/dist/index.js +5739 -315
- package/dist/index.js.map +1 -1
- package/dist/schema-helpers/enumValidation.d.ts +17 -0
- package/dist/schema-helpers/enumValidation.js +143 -0
- package/dist/schema-helpers/enumValidation.js.map +1 -0
- package/dist/schema-helpers/spine/nodes/decision.d.ts +19 -0
- package/dist/schema-helpers/spine/nodes/decision.js +81 -0
- package/dist/schema-helpers/spine/nodes/decision.js.map +1 -0
- package/dist/schema-helpers/spine/tables/epistemicNodes.d.ts +9 -0
- package/dist/schema-helpers/spine/tables/epistemicNodes.js +62 -0
- package/dist/schema-helpers/spine/tables/epistemicNodes.js.map +1 -0
- package/dist/schema-helpers/topicIds.d.ts +17 -0
- package/dist/schema-helpers/topicIds.js +21 -0
- package/dist/schema-helpers/topicIds.js.map +1 -0
- package/dist/schema-helpers/topicLegacyScope.d.ts +19 -0
- package/dist/schema-helpers/topicLegacyScope.js +44 -0
- package/dist/schema-helpers/topicLegacyScope.js.map +1 -0
- package/dist/schema-helpers/validators.d.ts +8 -0
- package/dist/schema-helpers/validators.js +18 -0
- package/dist/schema-helpers/validators.js.map +1 -0
- package/dist/schemas/enums.d.ts +12 -0
- package/dist/schemas/enums.js +11 -0
- package/dist/schemas/enums.js.map +1 -0
- package/dist/schemas/index.d.ts +5 -0
- package/dist/schemas/index.js +4240 -0
- package/dist/schemas/index.js.map +1 -0
- package/dist/schemas/manifest.d.ts +24521 -0
- package/dist/schemas/manifest.js +4242 -0
- package/dist/schemas/manifest.js.map +1 -0
- package/dist/schemas/tables/identity/agent.d.ts +21 -0
- package/dist/schemas/tables/identity/agent.js +41 -0
- package/dist/schemas/tables/identity/agent.js.map +1 -0
- package/dist/schemas/tables/identity/epistemic.d.ts +18 -0
- package/dist/schemas/tables/identity/epistemic.js +38 -0
- package/dist/schemas/tables/identity/epistemic.js.map +1 -0
- package/dist/schemas/tables/identity/model.d.ts +62 -0
- package/dist/schemas/tables/identity/model.js +110 -0
- package/dist/schemas/tables/identity/model.js.map +1 -0
- package/dist/schemas/tables/identity/platform.d.ts +392 -0
- package/dist/schemas/tables/identity/platform.js +475 -0
- package/dist/schemas/tables/identity/platform.js.map +1 -0
- package/dist/schemas/tables/identity/project.d.ts +22 -0
- package/dist/schemas/tables/identity/project.js +48 -0
- package/dist/schemas/tables/identity/project.js.map +1 -0
- package/dist/schemas/tables/identity/user.d.ts +26 -0
- package/dist/schemas/tables/identity/user.js +47 -0
- package/dist/schemas/tables/identity/user.js.map +1 -0
- package/dist/schemas/tables/kernel/config.d.ts +20 -0
- package/dist/schemas/tables/kernel/config.js +39 -0
- package/dist/schemas/tables/kernel/config.js.map +1 -0
- package/dist/schemas/tables/kernel/coordination.d.ts +30 -0
- package/dist/schemas/tables/kernel/coordination.js +57 -0
- package/dist/schemas/tables/kernel/coordination.js.map +1 -0
- package/dist/schemas/tables/kernel/decision.d.ts +246 -0
- package/dist/schemas/tables/kernel/decision.js +371 -0
- package/dist/schemas/tables/kernel/decision.js.map +1 -0
- package/dist/schemas/tables/kernel/embedding.d.ts +18 -0
- package/dist/schemas/tables/kernel/embedding.js +48 -0
- package/dist/schemas/tables/kernel/embedding.js.map +1 -0
- package/dist/schemas/tables/kernel/epistemic.d.ts +315 -0
- package/dist/schemas/tables/kernel/epistemic.js +327 -0
- package/dist/schemas/tables/kernel/epistemic.js.map +1 -0
- package/dist/schemas/tables/kernel/idempotency.d.ts +13 -0
- package/dist/schemas/tables/kernel/idempotency.js +31 -0
- package/dist/schemas/tables/kernel/idempotency.js.map +1 -0
- package/dist/schemas/tables/kernel/infra.d.ts +171 -0
- package/dist/schemas/tables/kernel/infra.js +160 -0
- package/dist/schemas/tables/kernel/infra.js.map +1 -0
- package/dist/schemas/tables/kernel/intelligence.d.ts +293 -0
- package/dist/schemas/tables/kernel/intelligence.js +207 -0
- package/dist/schemas/tables/kernel/intelligence.js.map +1 -0
- package/dist/schemas/tables/kernel/lens.d.ts +192 -0
- package/dist/schemas/tables/kernel/lens.js +122 -0
- package/dist/schemas/tables/kernel/lens.js.map +1 -0
- package/dist/schemas/tables/kernel/ontology.d.ts +89 -0
- package/dist/schemas/tables/kernel/ontology.js +91 -0
- package/dist/schemas/tables/kernel/ontology.js.map +1 -0
- package/dist/schemas/tables/kernel/platform.d.ts +353 -0
- package/dist/schemas/tables/kernel/platform.js +349 -0
- package/dist/schemas/tables/kernel/platform.js.map +1 -0
- package/dist/schemas/tables/kernel/spine.d.ts +206 -0
- package/dist/schemas/tables/kernel/spine.js +243 -0
- package/dist/schemas/tables/kernel/spine.js.map +1 -0
- package/dist/schemas/tables/kernel/task.d.ts +614 -0
- package/dist/schemas/tables/kernel/task.js +189 -0
- package/dist/schemas/tables/kernel/task.js.map +1 -0
- package/dist/schemas/tables/kernel/topic.d.ts +25 -0
- package/dist/schemas/tables/kernel/topic.js +62 -0
- package/dist/schemas/tables/kernel/topic.js.map +1 -0
- package/dist/schemas/tables/kernel/workflow.d.ts +45 -0
- package/dist/schemas/tables/kernel/workflow.js +94 -0
- package/dist/schemas/tables/kernel/workflow.js.map +1 -0
- package/dist/schemas/tables/kernel/worktree.d.ts +823 -0
- package/dist/schemas/tables/kernel/worktree.js +328 -0
- package/dist/schemas/tables/kernel/worktree.js.map +1 -0
- package/dist/schemas/tables/mc/identity.d.ts +134 -0
- package/dist/schemas/tables/mc/identity.js +221 -0
- package/dist/schemas/tables/mc/identity.js.map +1 -0
- package/dist/schemas/tables/mc/methodology.d.ts +46 -0
- package/dist/schemas/tables/mc/methodology.js +69 -0
- package/dist/schemas/tables/mc/methodology.js.map +1 -0
- package/dist/schemas/tables/mc/pack.d.ts +540 -0
- package/dist/schemas/tables/mc/pack.js +294 -0
- package/dist/schemas/tables/mc/pack.js.map +1 -0
- package/dist/schemas/tables/mc/policy.d.ts +57 -0
- package/dist/schemas/tables/mc/policy.js +121 -0
- package/dist/schemas/tables/mc/policy.js.map +1 -0
- package/dist/schemas/tables/mc/registry.d.ts +155 -0
- package/dist/schemas/tables/mc/registry.js +164 -0
- package/dist/schemas/tables/mc/registry.js.map +1 -0
- package/dist/schemas/tables/mc/runtime.d.ts +119 -0
- package/dist/schemas/tables/mc/runtime.js +199 -0
- package/dist/schemas/tables/mc/runtime.js.map +1 -0
- package/dist/schemas/tables/mc/tenant.d.ts +106 -0
- package/dist/schemas/tables/mc/tenant.js +114 -0
- package/dist/schemas/tables/mc/tenant.js.map +1 -0
- package/dist/schemas/tables/mc/workspace.d.ts +28 -0
- package/dist/schemas/tables/mc/workspace.js +52 -0
- package/dist/schemas/tables/mc/workspace.js.map +1 -0
- package/dist/{sdk-tools.contract-BnV0hKLp.d.ts → sdk-tools.contract-C2kQN_Xk.d.ts} +3 -7
- package/dist/sdk-tools.contract.d.ts +2 -2
- package/dist/sdk-tools.contract.js +664 -175
- package/dist/sdk-tools.contract.js.map +1 -1
- package/dist/tool-contracts-WCnuE9DW.d.ts +288 -0
- package/dist/tool-contracts.d.ts +1 -0
- package/dist/{mcp-tools.contract.js → tool-contracts.js} +666 -116
- package/dist/tool-contracts.js.map +1 -0
- package/package.json +119 -2
- package/dist/mcp-tools.contract-D8kXcP6d.d.ts +0 -254
- package/dist/mcp-tools.contract.d.ts +0 -1
- package/dist/mcp-tools.contract.js.map +0 -1
|
@@ -0,0 +1,199 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
|
|
3
|
+
// src/schemas/tables/mc/runtime.ts
|
|
4
|
+
|
|
5
|
+
// src/dsl/defineTable.ts
|
|
6
|
+
function defineTable(spec) {
|
|
7
|
+
return spec;
|
|
8
|
+
}
|
|
9
|
+
var CONVEX_ID_TABLE = /* @__PURE__ */ Symbol.for("lucern.contracts.convexIdTable");
|
|
10
|
+
function idOf(table) {
|
|
11
|
+
const schema = z.string().brand();
|
|
12
|
+
Object.defineProperty(schema, CONVEX_ID_TABLE, {
|
|
13
|
+
configurable: false,
|
|
14
|
+
enumerable: false,
|
|
15
|
+
value: table,
|
|
16
|
+
writable: false
|
|
17
|
+
});
|
|
18
|
+
return schema;
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
// src/schemas/tables/mc/runtime.ts
|
|
22
|
+
var compatibilityShims = defineTable({
|
|
23
|
+
name: "compatibilityShims",
|
|
24
|
+
component: "mc",
|
|
25
|
+
category: "runtime",
|
|
26
|
+
shape: z.object({
|
|
27
|
+
"shimId": z.string(),
|
|
28
|
+
"gateId": z.string(),
|
|
29
|
+
"removalDate": z.string(),
|
|
30
|
+
"removalPriority": z.enum(["P1", "P2", "P3"]),
|
|
31
|
+
"description": z.string(),
|
|
32
|
+
"owner": z.string(),
|
|
33
|
+
"createdAt": z.string(),
|
|
34
|
+
"status": z.enum(["active", "overdue", "removed"]),
|
|
35
|
+
"bridgeType": z.enum(["tool", "agent"]),
|
|
36
|
+
"bridgeTarget": z.object({
|
|
37
|
+
"type": z.enum(["tool", "agent"]),
|
|
38
|
+
"legacyPath": z.string(),
|
|
39
|
+
"harnessPath": z.string()
|
|
40
|
+
}),
|
|
41
|
+
"shimBehavior": z.enum(["passthrough_with_logging", "adapter", "feature_flag_gate"]),
|
|
42
|
+
"producesLedgerEntries": z.boolean(),
|
|
43
|
+
"lastAuditedAt": z.number(),
|
|
44
|
+
"metadata": z.record(z.any()).optional()
|
|
45
|
+
}),
|
|
46
|
+
indices: [
|
|
47
|
+
{ kind: "index", name: "by_shimId", columns: ["shimId"] },
|
|
48
|
+
{ kind: "index", name: "by_status", columns: ["status"] },
|
|
49
|
+
{ kind: "index", name: "by_bridgeType_status", columns: ["bridgeType", "status"] }
|
|
50
|
+
]
|
|
51
|
+
});
|
|
52
|
+
var cutoverFlags = defineTable({
|
|
53
|
+
name: "cutoverFlags",
|
|
54
|
+
component: "mc",
|
|
55
|
+
category: "runtime",
|
|
56
|
+
shape: z.object({
|
|
57
|
+
"domain": z.enum(["graph", "schema", "identity", "policy", "audit", "admin", "agent", "tool", "prompt", "intelligence"]),
|
|
58
|
+
"state": z.enum(["legacy", "cutover", "disabled"]),
|
|
59
|
+
"metadata": z.record(z.any()).optional(),
|
|
60
|
+
"updatedBy": z.string(),
|
|
61
|
+
"createdAt": z.number(),
|
|
62
|
+
"updatedAt": z.number()
|
|
63
|
+
}),
|
|
64
|
+
indices: [
|
|
65
|
+
{ kind: "index", name: "by_domain", columns: ["domain"] },
|
|
66
|
+
{ kind: "index", name: "by_state", columns: ["state"] }
|
|
67
|
+
]
|
|
68
|
+
});
|
|
69
|
+
var tenantDeploymentCredentials = defineTable({
|
|
70
|
+
name: "tenantDeploymentCredentials",
|
|
71
|
+
component: "mc",
|
|
72
|
+
category: "runtime",
|
|
73
|
+
shape: z.object({
|
|
74
|
+
"credentialRef": z.string(),
|
|
75
|
+
"tenantId": idOf("tenants"),
|
|
76
|
+
"target": z.enum(["kernelDeployment", "appDeployment"]),
|
|
77
|
+
"environment": z.enum(["dev", "prod"]),
|
|
78
|
+
"encryptedDeployKey": z.string(),
|
|
79
|
+
"encryptionVersion": z.string(),
|
|
80
|
+
"keyFingerprint": z.string(),
|
|
81
|
+
"keyHint": z.string(),
|
|
82
|
+
"status": z.enum(["active", "revoked"]),
|
|
83
|
+
"rotatedFromCredentialRef": z.string().optional(),
|
|
84
|
+
"revokedAt": z.number().optional(),
|
|
85
|
+
"revokedBy": z.string().optional(),
|
|
86
|
+
"lastUsedAt": z.number().optional(),
|
|
87
|
+
"metadata": z.record(z.any()).optional(),
|
|
88
|
+
"createdBy": z.string(),
|
|
89
|
+
"createdAt": z.number(),
|
|
90
|
+
"updatedAt": z.number()
|
|
91
|
+
}),
|
|
92
|
+
indices: [
|
|
93
|
+
{ kind: "index", name: "by_credentialRef", columns: ["credentialRef"] },
|
|
94
|
+
{ kind: "index", name: "by_tenantId", columns: ["tenantId"] },
|
|
95
|
+
{ kind: "index", name: "by_tenant_target", columns: ["tenantId", "target"] },
|
|
96
|
+
{ kind: "index", name: "by_tenant_target_environment", columns: ["tenantId", "target", "environment"] },
|
|
97
|
+
{ kind: "index", name: "by_tenant_target_environment_status", columns: ["tenantId", "target", "environment", "status"] },
|
|
98
|
+
{ kind: "index", name: "by_status", columns: ["status"] }
|
|
99
|
+
]
|
|
100
|
+
});
|
|
101
|
+
var controlPlaneTenantModelSlotBindings = defineTable({
|
|
102
|
+
name: "controlPlaneTenantModelSlotBindings",
|
|
103
|
+
component: "mc",
|
|
104
|
+
category: "runtime",
|
|
105
|
+
shape: z.object({
|
|
106
|
+
"bindingId": z.string(),
|
|
107
|
+
"tenantId": idOf("tenants"),
|
|
108
|
+
"providerId": z.string(),
|
|
109
|
+
"modelSlotId": z.string(),
|
|
110
|
+
"secretRef": z.string(),
|
|
111
|
+
"status": z.enum(["active", "revoked"]),
|
|
112
|
+
"passThroughOnly": z.boolean(),
|
|
113
|
+
"revokedAt": z.number().optional(),
|
|
114
|
+
"revokedBy": z.string().optional(),
|
|
115
|
+
"metadata": z.record(z.any()).optional(),
|
|
116
|
+
"createdBy": z.string(),
|
|
117
|
+
"createdAt": z.number(),
|
|
118
|
+
"updatedAt": z.number()
|
|
119
|
+
}),
|
|
120
|
+
indices: [
|
|
121
|
+
{ kind: "index", name: "by_bindingId", columns: ["bindingId"] },
|
|
122
|
+
{ kind: "index", name: "by_tenantId", columns: ["tenantId"] },
|
|
123
|
+
{ kind: "index", name: "by_tenant_slot", columns: ["tenantId", "modelSlotId"] },
|
|
124
|
+
{ kind: "index", name: "by_tenant_provider_slot", columns: ["tenantId", "providerId", "modelSlotId"] },
|
|
125
|
+
{ kind: "index", name: "by_secretRef", columns: ["secretRef"] },
|
|
126
|
+
{ kind: "index", name: "by_status", columns: ["status"] }
|
|
127
|
+
]
|
|
128
|
+
});
|
|
129
|
+
var controlPlaneTenantProviderSecrets = defineTable({
|
|
130
|
+
name: "controlPlaneTenantProviderSecrets",
|
|
131
|
+
component: "mc",
|
|
132
|
+
category: "runtime",
|
|
133
|
+
shape: z.object({
|
|
134
|
+
"secretRef": z.string(),
|
|
135
|
+
"tenantId": idOf("tenants"),
|
|
136
|
+
"providerId": z.string(),
|
|
137
|
+
"label": z.string().optional(),
|
|
138
|
+
"encryptedSecret": z.string(),
|
|
139
|
+
"encryptionVersion": z.string(),
|
|
140
|
+
"secretFingerprint": z.string(),
|
|
141
|
+
"keyHint": z.string(),
|
|
142
|
+
"status": z.enum(["active", "revoked"]),
|
|
143
|
+
"rotatedFromSecretRef": z.string().optional(),
|
|
144
|
+
"revokedAt": z.number().optional(),
|
|
145
|
+
"revokedBy": z.string().optional(),
|
|
146
|
+
"lastUsedAt": z.number().optional(),
|
|
147
|
+
"metadata": z.record(z.any()).optional(),
|
|
148
|
+
"createdBy": z.string(),
|
|
149
|
+
"createdAt": z.number(),
|
|
150
|
+
"updatedAt": z.number()
|
|
151
|
+
}),
|
|
152
|
+
indices: [
|
|
153
|
+
{ kind: "index", name: "by_secretRef", columns: ["secretRef"] },
|
|
154
|
+
{ kind: "index", name: "by_tenantId", columns: ["tenantId"] },
|
|
155
|
+
{ kind: "index", name: "by_tenant_provider", columns: ["tenantId", "providerId"] },
|
|
156
|
+
{ kind: "index", name: "by_tenant_provider_status", columns: ["tenantId", "providerId", "status"] },
|
|
157
|
+
{ kind: "index", name: "by_status", columns: ["status"] }
|
|
158
|
+
]
|
|
159
|
+
});
|
|
160
|
+
var controlPlaneTenantProxyGatewayUsage = defineTable({
|
|
161
|
+
name: "controlPlaneTenantProxyGatewayUsage",
|
|
162
|
+
component: "mc",
|
|
163
|
+
category: "runtime",
|
|
164
|
+
shape: z.object({
|
|
165
|
+
"usageId": z.string(),
|
|
166
|
+
"tenantId": idOf("tenants"),
|
|
167
|
+
"providerId": z.string(),
|
|
168
|
+
"modelSlotId": z.string(),
|
|
169
|
+
"secretRef": z.string(),
|
|
170
|
+
"proxyTokenId": z.string(),
|
|
171
|
+
"sessionId": z.string(),
|
|
172
|
+
"principalId": z.string(),
|
|
173
|
+
"workspaceId": z.string().optional(),
|
|
174
|
+
"modelId": z.string().optional(),
|
|
175
|
+
"requestPath": z.string(),
|
|
176
|
+
"status": z.enum(["success", "error"]),
|
|
177
|
+
"responseStatus": z.number().optional(),
|
|
178
|
+
"inputTokens": z.number().optional(),
|
|
179
|
+
"outputTokens": z.number().optional(),
|
|
180
|
+
"tokenCount": z.number().optional(),
|
|
181
|
+
"latencyMs": z.number(),
|
|
182
|
+
"estimatedCostUsd": z.number().optional(),
|
|
183
|
+
"failureCode": z.string().optional(),
|
|
184
|
+
"metadata": z.record(z.any()).optional(),
|
|
185
|
+
"createdAt": z.number(),
|
|
186
|
+
"updatedAt": z.number()
|
|
187
|
+
}),
|
|
188
|
+
indices: [
|
|
189
|
+
{ kind: "index", name: "by_usageId", columns: ["usageId"] },
|
|
190
|
+
{ kind: "index", name: "by_tenantId", columns: ["tenantId", "createdAt"] },
|
|
191
|
+
{ kind: "index", name: "by_tenant_provider", columns: ["tenantId", "providerId", "createdAt"] },
|
|
192
|
+
{ kind: "index", name: "by_proxyTokenId", columns: ["proxyTokenId", "createdAt"] },
|
|
193
|
+
{ kind: "index", name: "by_sessionId", columns: ["sessionId", "createdAt"] }
|
|
194
|
+
]
|
|
195
|
+
});
|
|
196
|
+
|
|
197
|
+
export { compatibilityShims, controlPlaneTenantModelSlotBindings, controlPlaneTenantProviderSecrets, controlPlaneTenantProxyGatewayUsage, cutoverFlags, tenantDeploymentCredentials };
|
|
198
|
+
//# sourceMappingURL=runtime.js.map
|
|
199
|
+
//# sourceMappingURL=runtime.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/dsl/defineTable.ts","../../../../src/dsl/idOf.ts","../../../../src/schemas/tables/mc/runtime.ts"],"names":["z"],"mappings":"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","file":"runtime.js","sourcesContent":["import type { ZodObject, ZodRawShape } from \"zod\";\n\nexport type TableComponent = \"mc\" | \"kernel\" | \"identity\" | \"developer-pack\";\n\nexport type TableIndex =\n | {\n kind: \"index\";\n name: string;\n columns: readonly string[];\n }\n | {\n kind: \"search\";\n name: string;\n searchField: string;\n filterFields?: readonly string[];\n }\n | {\n kind: \"vector\";\n name: string;\n vectorField: string;\n dimensions: number;\n filterFields?: readonly string[];\n };\n\nexport type TableDeprecation = {\n since: string;\n reason: string;\n replacement?: string;\n};\n\nexport type TableContract<S extends ZodRawShape = ZodRawShape> = {\n name: string;\n component: TableComponent;\n category: string;\n shape: ZodObject<S>;\n indices: readonly TableIndex[];\n deprecated?: TableDeprecation;\n invariants?: readonly string[];\n};\n\nexport function defineTable<S extends ZodRawShape>(\n spec: TableContract<S>\n): TableContract<S> {\n return spec;\n}\n","import { z } from \"zod\";\n\nexport const CONVEX_ID_TABLE = Symbol.for(\"lucern.contracts.convexIdTable\");\n\nexport type ConvexIdSchema<T extends string> = z.ZodBranded<\n z.ZodString,\n `Id<${T}>`\n> & {\n readonly [CONVEX_ID_TABLE]: T;\n};\n\nexport function idOf<T extends string>(table: T): ConvexIdSchema<T> {\n const schema = z.string().brand<`Id<${T}>`>();\n Object.defineProperty(schema, CONVEX_ID_TABLE, {\n configurable: false,\n enumerable: false,\n value: table,\n writable: false,\n });\n return schema as ConvexIdSchema<T>;\n}\n\nexport function getConvexIdTable(schema: z.ZodTypeAny): string | undefined {\n return (schema as Partial<Record<typeof CONVEX_ID_TABLE, string>>)[\n CONVEX_ID_TABLE\n ];\n}\n","/**\n * Schema contracts for mc/runtime.\n *\n * Mirrored from:\n * - services/master-control/convex/schema.ts\n */\n\nimport { z } from 'zod';\nimport { defineTable, idOf } from '../../../dsl.js';\n\nexport const compatibilityShims = defineTable({\n name: \"compatibilityShims\",\n component: \"mc\",\n category: \"runtime\",\n shape: z.object({\n \"shimId\": z.string(),\n \"gateId\": z.string(),\n \"removalDate\": z.string(),\n \"removalPriority\": z.enum([\"P1\", \"P2\", \"P3\"]),\n \"description\": z.string(),\n \"owner\": z.string(),\n \"createdAt\": z.string(),\n \"status\": z.enum([\"active\", \"overdue\", \"removed\"]),\n \"bridgeType\": z.enum([\"tool\", \"agent\"]),\n \"bridgeTarget\": z.object({\n \"type\": z.enum([\"tool\", \"agent\"]),\n \"legacyPath\": z.string(),\n \"harnessPath\": z.string()\n }),\n \"shimBehavior\": z.enum([\"passthrough_with_logging\", \"adapter\", \"feature_flag_gate\"]),\n \"producesLedgerEntries\": z.boolean(),\n \"lastAuditedAt\": z.number(),\n \"metadata\": z.record(z.any()).optional()\n }),\n indices: [\n { kind: 'index', name: \"by_shimId\", columns: [\"shimId\"] },\n { kind: 'index', name: \"by_status\", columns: [\"status\"] },\n { kind: 'index', name: \"by_bridgeType_status\", columns: [\"bridgeType\", \"status\"] }\n ],\n});\n\nexport const cutoverFlags = defineTable({\n name: \"cutoverFlags\",\n component: \"mc\",\n category: \"runtime\",\n shape: z.object({\n \"domain\": z.enum([\"graph\", \"schema\", \"identity\", \"policy\", \"audit\", \"admin\", \"agent\", \"tool\", \"prompt\", \"intelligence\"]),\n \"state\": z.enum([\"legacy\", \"cutover\", \"disabled\"]),\n \"metadata\": z.record(z.any()).optional(),\n \"updatedBy\": z.string(),\n \"createdAt\": z.number(),\n \"updatedAt\": z.number()\n }),\n indices: [\n { kind: 'index', name: \"by_domain\", columns: [\"domain\"] },\n { kind: 'index', name: \"by_state\", columns: [\"state\"] }\n ],\n});\n\nexport const tenantDeploymentCredentials = defineTable({\n name: \"tenantDeploymentCredentials\",\n component: \"mc\",\n category: \"runtime\",\n shape: z.object({\n \"credentialRef\": z.string(),\n \"tenantId\": idOf(\"tenants\"),\n \"target\": z.enum([\"kernelDeployment\", \"appDeployment\"]),\n \"environment\": z.enum([\"dev\", \"prod\"]),\n \"encryptedDeployKey\": z.string(),\n \"encryptionVersion\": z.string(),\n \"keyFingerprint\": z.string(),\n \"keyHint\": z.string(),\n \"status\": z.enum([\"active\", \"revoked\"]),\n \"rotatedFromCredentialRef\": z.string().optional(),\n \"revokedAt\": z.number().optional(),\n \"revokedBy\": z.string().optional(),\n \"lastUsedAt\": z.number().optional(),\n \"metadata\": z.record(z.any()).optional(),\n \"createdBy\": z.string(),\n \"createdAt\": z.number(),\n \"updatedAt\": z.number()\n }),\n indices: [\n { kind: 'index', name: \"by_credentialRef\", columns: [\"credentialRef\"] },\n { kind: 'index', name: \"by_tenantId\", columns: [\"tenantId\"] },\n { kind: 'index', name: \"by_tenant_target\", columns: [\"tenantId\", \"target\"] },\n { kind: 'index', name: \"by_tenant_target_environment\", columns: [\"tenantId\", \"target\", \"environment\"] },\n { kind: 'index', name: \"by_tenant_target_environment_status\", columns: [\"tenantId\", \"target\", \"environment\", \"status\"] },\n { kind: 'index', name: \"by_status\", columns: [\"status\"] }\n ],\n});\n\nexport const controlPlaneTenantModelSlotBindings = defineTable({\n name: \"controlPlaneTenantModelSlotBindings\",\n component: \"mc\",\n category: \"runtime\",\n shape: z.object({\n \"bindingId\": z.string(),\n \"tenantId\": idOf(\"tenants\"),\n \"providerId\": z.string(),\n \"modelSlotId\": z.string(),\n \"secretRef\": z.string(),\n \"status\": z.enum([\"active\", \"revoked\"]),\n \"passThroughOnly\": z.boolean(),\n \"revokedAt\": z.number().optional(),\n \"revokedBy\": z.string().optional(),\n \"metadata\": z.record(z.any()).optional(),\n \"createdBy\": z.string(),\n \"createdAt\": z.number(),\n \"updatedAt\": z.number()\n }),\n indices: [\n { kind: 'index', name: \"by_bindingId\", columns: [\"bindingId\"] },\n { kind: 'index', name: \"by_tenantId\", columns: [\"tenantId\"] },\n { kind: 'index', name: \"by_tenant_slot\", columns: [\"tenantId\", \"modelSlotId\"] },\n { kind: 'index', name: \"by_tenant_provider_slot\", columns: [\"tenantId\", \"providerId\", \"modelSlotId\"] },\n { kind: 'index', name: \"by_secretRef\", columns: [\"secretRef\"] },\n { kind: 'index', name: \"by_status\", columns: [\"status\"] }\n ],\n});\n\nexport const controlPlaneTenantProviderSecrets = defineTable({\n name: \"controlPlaneTenantProviderSecrets\",\n component: \"mc\",\n category: \"runtime\",\n shape: z.object({\n \"secretRef\": z.string(),\n \"tenantId\": idOf(\"tenants\"),\n \"providerId\": z.string(),\n \"label\": z.string().optional(),\n \"encryptedSecret\": z.string(),\n \"encryptionVersion\": z.string(),\n \"secretFingerprint\": z.string(),\n \"keyHint\": z.string(),\n \"status\": z.enum([\"active\", \"revoked\"]),\n \"rotatedFromSecretRef\": z.string().optional(),\n \"revokedAt\": z.number().optional(),\n \"revokedBy\": z.string().optional(),\n \"lastUsedAt\": z.number().optional(),\n \"metadata\": z.record(z.any()).optional(),\n \"createdBy\": z.string(),\n \"createdAt\": z.number(),\n \"updatedAt\": z.number()\n }),\n indices: [\n { kind: 'index', name: \"by_secretRef\", columns: [\"secretRef\"] },\n { kind: 'index', name: \"by_tenantId\", columns: [\"tenantId\"] },\n { kind: 'index', name: \"by_tenant_provider\", columns: [\"tenantId\", \"providerId\"] },\n { kind: 'index', name: \"by_tenant_provider_status\", columns: [\"tenantId\", \"providerId\", \"status\"] },\n { kind: 'index', name: \"by_status\", columns: [\"status\"] }\n ],\n});\n\nexport const controlPlaneTenantProxyGatewayUsage = defineTable({\n name: \"controlPlaneTenantProxyGatewayUsage\",\n component: \"mc\",\n category: \"runtime\",\n shape: z.object({\n \"usageId\": z.string(),\n \"tenantId\": idOf(\"tenants\"),\n \"providerId\": z.string(),\n \"modelSlotId\": z.string(),\n \"secretRef\": z.string(),\n \"proxyTokenId\": z.string(),\n \"sessionId\": z.string(),\n \"principalId\": z.string(),\n \"workspaceId\": z.string().optional(),\n \"modelId\": z.string().optional(),\n \"requestPath\": z.string(),\n \"status\": z.enum([\"success\", \"error\"]),\n \"responseStatus\": z.number().optional(),\n \"inputTokens\": z.number().optional(),\n \"outputTokens\": z.number().optional(),\n \"tokenCount\": z.number().optional(),\n \"latencyMs\": z.number(),\n \"estimatedCostUsd\": z.number().optional(),\n \"failureCode\": z.string().optional(),\n \"metadata\": z.record(z.any()).optional(),\n \"createdAt\": z.number(),\n \"updatedAt\": z.number()\n }),\n indices: [\n { kind: 'index', name: \"by_usageId\", columns: [\"usageId\"] },\n { kind: 'index', name: \"by_tenantId\", columns: [\"tenantId\", \"createdAt\"] },\n { kind: 'index', name: \"by_tenant_provider\", columns: [\"tenantId\", \"providerId\", \"createdAt\"] },\n { kind: 'index', name: \"by_proxyTokenId\", columns: [\"proxyTokenId\", \"createdAt\"] },\n { kind: 'index', name: \"by_sessionId\", columns: [\"sessionId\", \"createdAt\"] }\n ],\n});\n"]}
|
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
import { T as TableContract } from '../../../defineTable-CBQ03FXl.js';
|
|
3
|
+
import { C as ConvexIdSchema } from '../../../idOf-DR8tkhQS.js';
|
|
4
|
+
|
|
5
|
+
declare const apiKeys: TableContract<{
|
|
6
|
+
tenantId: ConvexIdSchema<"tenants">;
|
|
7
|
+
keyPrefix: z.ZodEnum<["luc", "stk"]>;
|
|
8
|
+
keyHash: z.ZodString;
|
|
9
|
+
keyHint: z.ZodString;
|
|
10
|
+
label: z.ZodOptional<z.ZodString>;
|
|
11
|
+
status: z.ZodEnum<["active", "revoked", "expired"]>;
|
|
12
|
+
expiresAt: z.ZodOptional<z.ZodNumber>;
|
|
13
|
+
lastUsedAt: z.ZodOptional<z.ZodNumber>;
|
|
14
|
+
revokedAt: z.ZodOptional<z.ZodNumber>;
|
|
15
|
+
revokedBy: z.ZodOptional<z.ZodString>;
|
|
16
|
+
createdBy: z.ZodString;
|
|
17
|
+
createdAt: z.ZodNumber;
|
|
18
|
+
updatedAt: z.ZodNumber;
|
|
19
|
+
}>;
|
|
20
|
+
declare const auditLog: TableContract<{
|
|
21
|
+
tenantId: z.ZodOptional<ConvexIdSchema<"tenants">>;
|
|
22
|
+
apiKeyId: z.ZodOptional<ConvexIdSchema<"apiKeys">>;
|
|
23
|
+
action: z.ZodEnum<["key_created", "key_revoked", "key_expired", "key_used", "tenant_secret_created", "tenant_secret_rotated", "tenant_secret_revoked", "tenant_slot_binding_upserted", "tenant_slot_binding_revoked", "proxy_token_minted", "proxy_request_recorded", "tenant_created", "tenant_updated", "tenant_suspended", "tenant_archived", "tenant_reactivated", "principal_created", "principal_updated", "principal_suspended", "membership_created", "membership_updated", "membership_revoked", "group_created", "group_updated", "group_deleted", "group_member_added", "group_member_removed", "workspace_created", "workspace_updated", "workspace_archived", "workspace_deployment_set", "workspace_deployment_removed", "service_key_created", "service_key_rotated", "service_key_revoked", "service_key_used", "service_key_auth_failed", "session_created", "session_validated", "session_revoked", "session_cascade_revoked", "session_expired", "sandbox_created", "sandbox_secret_injected", "sandbox_execution_started", "sandbox_execution_completed", "sandbox_limit_violated", "policy_created", "policy_updated", "policy_enforced", "policy_archived", "agent_registered", "agent_updated", "tool_registered", "tool_updated", "pack_entitled", "pack_installed", "pack_enabled", "pack_disabled", "pack_entitlement_revoked", "pack_upgraded", "pack_upgrade_committed", "pack_upgrade_rolled_back", "pack_group_assigned", "pack_group_unassigned", "methodology_pack_created", "methodology_pack_updated", "methodology_pack_assigned", "methodology_pack_removed", "pack_assigned_to_group", "pack_revoked_from_group", "pack_ontology_materialized", "pack_ontology_topic_bound", "cutover_flag_set", "cutover_flag_cleared"]>;
|
|
24
|
+
actorClerkId: z.ZodString;
|
|
25
|
+
details: z.ZodOptional<z.ZodAny>;
|
|
26
|
+
createdAt: z.ZodNumber;
|
|
27
|
+
}>;
|
|
28
|
+
declare const tenants: TableContract<{
|
|
29
|
+
slug: z.ZodString;
|
|
30
|
+
name: z.ZodString;
|
|
31
|
+
status: z.ZodEnum<["provisioning", "active", "suspended", "archived"]>;
|
|
32
|
+
tier: z.ZodEnum<["free", "developer", "team", "enterprise"]>;
|
|
33
|
+
kernelDeployment: z.ZodOptional<z.ZodObject<{
|
|
34
|
+
devUrl: z.ZodString;
|
|
35
|
+
devId: z.ZodString;
|
|
36
|
+
stagingUrl: z.ZodOptional<z.ZodString>;
|
|
37
|
+
stagingId: z.ZodOptional<z.ZodString>;
|
|
38
|
+
prodUrl: z.ZodOptional<z.ZodString>;
|
|
39
|
+
prodId: z.ZodOptional<z.ZodString>;
|
|
40
|
+
}, "strip", z.ZodTypeAny, {
|
|
41
|
+
devUrl: string;
|
|
42
|
+
devId: string;
|
|
43
|
+
stagingUrl?: string | undefined;
|
|
44
|
+
stagingId?: string | undefined;
|
|
45
|
+
prodUrl?: string | undefined;
|
|
46
|
+
prodId?: string | undefined;
|
|
47
|
+
}, {
|
|
48
|
+
devUrl: string;
|
|
49
|
+
devId: string;
|
|
50
|
+
stagingUrl?: string | undefined;
|
|
51
|
+
stagingId?: string | undefined;
|
|
52
|
+
prodUrl?: string | undefined;
|
|
53
|
+
prodId?: string | undefined;
|
|
54
|
+
}>>;
|
|
55
|
+
lucernDeployment: z.ZodOptional<z.ZodObject<{
|
|
56
|
+
devUrl: z.ZodString;
|
|
57
|
+
devId: z.ZodString;
|
|
58
|
+
stagingUrl: z.ZodOptional<z.ZodString>;
|
|
59
|
+
stagingId: z.ZodOptional<z.ZodString>;
|
|
60
|
+
prodUrl: z.ZodOptional<z.ZodString>;
|
|
61
|
+
prodId: z.ZodOptional<z.ZodString>;
|
|
62
|
+
}, "strip", z.ZodTypeAny, {
|
|
63
|
+
devUrl: string;
|
|
64
|
+
devId: string;
|
|
65
|
+
stagingUrl?: string | undefined;
|
|
66
|
+
stagingId?: string | undefined;
|
|
67
|
+
prodUrl?: string | undefined;
|
|
68
|
+
prodId?: string | undefined;
|
|
69
|
+
}, {
|
|
70
|
+
devUrl: string;
|
|
71
|
+
devId: string;
|
|
72
|
+
stagingUrl?: string | undefined;
|
|
73
|
+
stagingId?: string | undefined;
|
|
74
|
+
prodUrl?: string | undefined;
|
|
75
|
+
prodId?: string | undefined;
|
|
76
|
+
}>>;
|
|
77
|
+
appDeployment: z.ZodOptional<z.ZodObject<{
|
|
78
|
+
devUrl: z.ZodString;
|
|
79
|
+
devId: z.ZodString;
|
|
80
|
+
stagingUrl: z.ZodOptional<z.ZodString>;
|
|
81
|
+
stagingId: z.ZodOptional<z.ZodString>;
|
|
82
|
+
prodUrl: z.ZodOptional<z.ZodString>;
|
|
83
|
+
prodId: z.ZodOptional<z.ZodString>;
|
|
84
|
+
}, "strip", z.ZodTypeAny, {
|
|
85
|
+
devUrl: string;
|
|
86
|
+
devId: string;
|
|
87
|
+
stagingUrl?: string | undefined;
|
|
88
|
+
stagingId?: string | undefined;
|
|
89
|
+
prodUrl?: string | undefined;
|
|
90
|
+
prodId?: string | undefined;
|
|
91
|
+
}, {
|
|
92
|
+
devUrl: string;
|
|
93
|
+
devId: string;
|
|
94
|
+
stagingUrl?: string | undefined;
|
|
95
|
+
stagingId?: string | undefined;
|
|
96
|
+
prodUrl?: string | undefined;
|
|
97
|
+
prodId?: string | undefined;
|
|
98
|
+
}>>;
|
|
99
|
+
ownerClerkId: z.ZodString;
|
|
100
|
+
ownerEmail: z.ZodOptional<z.ZodString>;
|
|
101
|
+
metadata: z.ZodOptional<z.ZodAny>;
|
|
102
|
+
createdAt: z.ZodNumber;
|
|
103
|
+
updatedAt: z.ZodNumber;
|
|
104
|
+
}>;
|
|
105
|
+
|
|
106
|
+
export { apiKeys, auditLog, tenants };
|
|
@@ -0,0 +1,114 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
|
|
3
|
+
// src/schemas/tables/mc/tenant.ts
|
|
4
|
+
|
|
5
|
+
// src/dsl/defineTable.ts
|
|
6
|
+
function defineTable(spec) {
|
|
7
|
+
return spec;
|
|
8
|
+
}
|
|
9
|
+
var CONVEX_ID_TABLE = /* @__PURE__ */ Symbol.for("lucern.contracts.convexIdTable");
|
|
10
|
+
function idOf(table) {
|
|
11
|
+
const schema = z.string().brand();
|
|
12
|
+
Object.defineProperty(schema, CONVEX_ID_TABLE, {
|
|
13
|
+
configurable: false,
|
|
14
|
+
enumerable: false,
|
|
15
|
+
value: table,
|
|
16
|
+
writable: false
|
|
17
|
+
});
|
|
18
|
+
return schema;
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
// src/schemas/tables/mc/tenant.ts
|
|
22
|
+
var apiKeys = defineTable({
|
|
23
|
+
name: "apiKeys",
|
|
24
|
+
component: "mc",
|
|
25
|
+
category: "tenant",
|
|
26
|
+
shape: z.object({
|
|
27
|
+
"tenantId": idOf("tenants"),
|
|
28
|
+
"keyPrefix": z.enum(["luc", "stk"]),
|
|
29
|
+
"keyHash": z.string(),
|
|
30
|
+
"keyHint": z.string(),
|
|
31
|
+
"label": z.string().optional(),
|
|
32
|
+
"status": z.enum(["active", "revoked", "expired"]),
|
|
33
|
+
"expiresAt": z.number().optional(),
|
|
34
|
+
"lastUsedAt": z.number().optional(),
|
|
35
|
+
"revokedAt": z.number().optional(),
|
|
36
|
+
"revokedBy": z.string().optional(),
|
|
37
|
+
"createdBy": z.string(),
|
|
38
|
+
"createdAt": z.number(),
|
|
39
|
+
"updatedAt": z.number()
|
|
40
|
+
}),
|
|
41
|
+
indices: [
|
|
42
|
+
{ kind: "index", name: "by_tenantId", columns: ["tenantId"] },
|
|
43
|
+
{ kind: "index", name: "by_keyHash", columns: ["keyHash"] },
|
|
44
|
+
{ kind: "index", name: "by_tenant_prefix", columns: ["tenantId", "keyPrefix"] },
|
|
45
|
+
{ kind: "index", name: "by_status", columns: ["status"] }
|
|
46
|
+
]
|
|
47
|
+
});
|
|
48
|
+
var auditLog = defineTable({
|
|
49
|
+
name: "auditLog",
|
|
50
|
+
component: "mc",
|
|
51
|
+
category: "tenant",
|
|
52
|
+
shape: z.object({
|
|
53
|
+
"tenantId": idOf("tenants").optional(),
|
|
54
|
+
"apiKeyId": idOf("apiKeys").optional(),
|
|
55
|
+
"action": z.enum(["key_created", "key_revoked", "key_expired", "key_used", "tenant_secret_created", "tenant_secret_rotated", "tenant_secret_revoked", "tenant_slot_binding_upserted", "tenant_slot_binding_revoked", "proxy_token_minted", "proxy_request_recorded", "tenant_created", "tenant_updated", "tenant_suspended", "tenant_archived", "tenant_reactivated", "principal_created", "principal_updated", "principal_suspended", "membership_created", "membership_updated", "membership_revoked", "group_created", "group_updated", "group_deleted", "group_member_added", "group_member_removed", "workspace_created", "workspace_updated", "workspace_archived", "workspace_deployment_set", "workspace_deployment_removed", "service_key_created", "service_key_rotated", "service_key_revoked", "service_key_used", "service_key_auth_failed", "session_created", "session_validated", "session_revoked", "session_cascade_revoked", "session_expired", "sandbox_created", "sandbox_secret_injected", "sandbox_execution_started", "sandbox_execution_completed", "sandbox_limit_violated", "policy_created", "policy_updated", "policy_enforced", "policy_archived", "agent_registered", "agent_updated", "tool_registered", "tool_updated", "pack_entitled", "pack_installed", "pack_enabled", "pack_disabled", "pack_entitlement_revoked", "pack_upgraded", "pack_upgrade_committed", "pack_upgrade_rolled_back", "pack_group_assigned", "pack_group_unassigned", "methodology_pack_created", "methodology_pack_updated", "methodology_pack_assigned", "methodology_pack_removed", "pack_assigned_to_group", "pack_revoked_from_group", "pack_ontology_materialized", "pack_ontology_topic_bound", "cutover_flag_set", "cutover_flag_cleared"]),
|
|
56
|
+
"actorClerkId": z.string(),
|
|
57
|
+
"details": z.any().optional(),
|
|
58
|
+
"createdAt": z.number()
|
|
59
|
+
}),
|
|
60
|
+
indices: [
|
|
61
|
+
{ kind: "index", name: "by_tenantId", columns: ["tenantId", "createdAt"] },
|
|
62
|
+
{ kind: "index", name: "by_apiKeyId", columns: ["apiKeyId", "createdAt"] },
|
|
63
|
+
{ kind: "index", name: "by_action", columns: ["action", "createdAt"] }
|
|
64
|
+
]
|
|
65
|
+
});
|
|
66
|
+
var tenants = defineTable({
|
|
67
|
+
name: "tenants",
|
|
68
|
+
component: "mc",
|
|
69
|
+
category: "tenant",
|
|
70
|
+
shape: z.object({
|
|
71
|
+
"slug": z.string(),
|
|
72
|
+
"name": z.string(),
|
|
73
|
+
"status": z.enum(["provisioning", "active", "suspended", "archived"]),
|
|
74
|
+
"tier": z.enum(["free", "developer", "team", "enterprise"]),
|
|
75
|
+
"kernelDeployment": z.object({
|
|
76
|
+
"devUrl": z.string(),
|
|
77
|
+
"devId": z.string(),
|
|
78
|
+
"stagingUrl": z.string().optional(),
|
|
79
|
+
"stagingId": z.string().optional(),
|
|
80
|
+
"prodUrl": z.string().optional(),
|
|
81
|
+
"prodId": z.string().optional()
|
|
82
|
+
}).optional(),
|
|
83
|
+
"lucernDeployment": z.object({
|
|
84
|
+
"devUrl": z.string(),
|
|
85
|
+
"devId": z.string(),
|
|
86
|
+
"stagingUrl": z.string().optional(),
|
|
87
|
+
"stagingId": z.string().optional(),
|
|
88
|
+
"prodUrl": z.string().optional(),
|
|
89
|
+
"prodId": z.string().optional()
|
|
90
|
+
}).optional(),
|
|
91
|
+
"appDeployment": z.object({
|
|
92
|
+
"devUrl": z.string(),
|
|
93
|
+
"devId": z.string(),
|
|
94
|
+
"stagingUrl": z.string().optional(),
|
|
95
|
+
"stagingId": z.string().optional(),
|
|
96
|
+
"prodUrl": z.string().optional(),
|
|
97
|
+
"prodId": z.string().optional()
|
|
98
|
+
}).optional(),
|
|
99
|
+
"ownerClerkId": z.string(),
|
|
100
|
+
"ownerEmail": z.string().optional(),
|
|
101
|
+
"metadata": z.any().optional(),
|
|
102
|
+
"createdAt": z.number(),
|
|
103
|
+
"updatedAt": z.number()
|
|
104
|
+
}),
|
|
105
|
+
indices: [
|
|
106
|
+
{ kind: "index", name: "by_slug", columns: ["slug"] },
|
|
107
|
+
{ kind: "index", name: "by_status", columns: ["status"] },
|
|
108
|
+
{ kind: "index", name: "by_ownerClerkId", columns: ["ownerClerkId"] }
|
|
109
|
+
]
|
|
110
|
+
});
|
|
111
|
+
|
|
112
|
+
export { apiKeys, auditLog, tenants };
|
|
113
|
+
//# sourceMappingURL=tenant.js.map
|
|
114
|
+
//# sourceMappingURL=tenant.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/dsl/defineTable.ts","../../../../src/dsl/idOf.ts","../../../../src/schemas/tables/mc/tenant.ts"],"names":["z"],"mappings":"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","file":"tenant.js","sourcesContent":["import type { ZodObject, ZodRawShape } from \"zod\";\n\nexport type TableComponent = \"mc\" | \"kernel\" | \"identity\" | \"developer-pack\";\n\nexport type TableIndex =\n | {\n kind: \"index\";\n name: string;\n columns: readonly string[];\n }\n | {\n kind: \"search\";\n name: string;\n searchField: string;\n filterFields?: readonly string[];\n }\n | {\n kind: \"vector\";\n name: string;\n vectorField: string;\n dimensions: number;\n filterFields?: readonly string[];\n };\n\nexport type TableDeprecation = {\n since: string;\n reason: string;\n replacement?: string;\n};\n\nexport type TableContract<S extends ZodRawShape = ZodRawShape> = {\n name: string;\n component: TableComponent;\n category: string;\n shape: ZodObject<S>;\n indices: readonly TableIndex[];\n deprecated?: TableDeprecation;\n invariants?: readonly string[];\n};\n\nexport function defineTable<S extends ZodRawShape>(\n spec: TableContract<S>\n): TableContract<S> {\n return spec;\n}\n","import { z } from \"zod\";\n\nexport const CONVEX_ID_TABLE = Symbol.for(\"lucern.contracts.convexIdTable\");\n\nexport type ConvexIdSchema<T extends string> = z.ZodBranded<\n z.ZodString,\n `Id<${T}>`\n> & {\n readonly [CONVEX_ID_TABLE]: T;\n};\n\nexport function idOf<T extends string>(table: T): ConvexIdSchema<T> {\n const schema = z.string().brand<`Id<${T}>`>();\n Object.defineProperty(schema, CONVEX_ID_TABLE, {\n configurable: false,\n enumerable: false,\n value: table,\n writable: false,\n });\n return schema as ConvexIdSchema<T>;\n}\n\nexport function getConvexIdTable(schema: z.ZodTypeAny): string | undefined {\n return (schema as Partial<Record<typeof CONVEX_ID_TABLE, string>>)[\n CONVEX_ID_TABLE\n ];\n}\n","/**\n * Schema contracts for mc/tenant.\n *\n * Mirrored from:\n * - services/master-control/convex/schema.ts\n */\n\nimport { z } from 'zod';\nimport { defineTable, idOf } from '../../../dsl.js';\n\nexport const apiKeys = defineTable({\n name: \"apiKeys\",\n component: \"mc\",\n category: \"tenant\",\n shape: z.object({\n \"tenantId\": idOf(\"tenants\"),\n \"keyPrefix\": z.enum([\"luc\", \"stk\"]),\n \"keyHash\": z.string(),\n \"keyHint\": z.string(),\n \"label\": z.string().optional(),\n \"status\": z.enum([\"active\", \"revoked\", \"expired\"]),\n \"expiresAt\": z.number().optional(),\n \"lastUsedAt\": z.number().optional(),\n \"revokedAt\": z.number().optional(),\n \"revokedBy\": z.string().optional(),\n \"createdBy\": z.string(),\n \"createdAt\": z.number(),\n \"updatedAt\": z.number()\n }),\n indices: [\n { kind: 'index', name: \"by_tenantId\", columns: [\"tenantId\"] },\n { kind: 'index', name: \"by_keyHash\", columns: [\"keyHash\"] },\n { kind: 'index', name: \"by_tenant_prefix\", columns: [\"tenantId\", \"keyPrefix\"] },\n { kind: 'index', name: \"by_status\", columns: [\"status\"] }\n ],\n});\n\nexport const auditLog = defineTable({\n name: \"auditLog\",\n component: \"mc\",\n category: \"tenant\",\n shape: z.object({\n \"tenantId\": idOf(\"tenants\").optional(),\n \"apiKeyId\": idOf(\"apiKeys\").optional(),\n \"action\": z.enum([\"key_created\", \"key_revoked\", \"key_expired\", \"key_used\", \"tenant_secret_created\", \"tenant_secret_rotated\", \"tenant_secret_revoked\", \"tenant_slot_binding_upserted\", \"tenant_slot_binding_revoked\", \"proxy_token_minted\", \"proxy_request_recorded\", \"tenant_created\", \"tenant_updated\", \"tenant_suspended\", \"tenant_archived\", \"tenant_reactivated\", \"principal_created\", \"principal_updated\", \"principal_suspended\", \"membership_created\", \"membership_updated\", \"membership_revoked\", \"group_created\", \"group_updated\", \"group_deleted\", \"group_member_added\", \"group_member_removed\", \"workspace_created\", \"workspace_updated\", \"workspace_archived\", \"workspace_deployment_set\", \"workspace_deployment_removed\", \"service_key_created\", \"service_key_rotated\", \"service_key_revoked\", \"service_key_used\", \"service_key_auth_failed\", \"session_created\", \"session_validated\", \"session_revoked\", \"session_cascade_revoked\", \"session_expired\", \"sandbox_created\", \"sandbox_secret_injected\", \"sandbox_execution_started\", \"sandbox_execution_completed\", \"sandbox_limit_violated\", \"policy_created\", \"policy_updated\", \"policy_enforced\", \"policy_archived\", \"agent_registered\", \"agent_updated\", \"tool_registered\", \"tool_updated\", \"pack_entitled\", \"pack_installed\", \"pack_enabled\", \"pack_disabled\", \"pack_entitlement_revoked\", \"pack_upgraded\", \"pack_upgrade_committed\", \"pack_upgrade_rolled_back\", \"pack_group_assigned\", \"pack_group_unassigned\", \"methodology_pack_created\", \"methodology_pack_updated\", \"methodology_pack_assigned\", \"methodology_pack_removed\", \"pack_assigned_to_group\", \"pack_revoked_from_group\", \"pack_ontology_materialized\", \"pack_ontology_topic_bound\", \"cutover_flag_set\", \"cutover_flag_cleared\"]),\n \"actorClerkId\": z.string(),\n \"details\": z.any().optional(),\n \"createdAt\": z.number()\n }),\n indices: [\n { kind: 'index', name: \"by_tenantId\", columns: [\"tenantId\", \"createdAt\"] },\n { kind: 'index', name: \"by_apiKeyId\", columns: [\"apiKeyId\", \"createdAt\"] },\n { kind: 'index', name: \"by_action\", columns: [\"action\", \"createdAt\"] }\n ],\n});\n\nexport const tenants = defineTable({\n name: \"tenants\",\n component: \"mc\",\n category: \"tenant\",\n shape: z.object({\n \"slug\": z.string(),\n \"name\": z.string(),\n \"status\": z.enum([\"provisioning\", \"active\", \"suspended\", \"archived\"]),\n \"tier\": z.enum([\"free\", \"developer\", \"team\", \"enterprise\"]),\n \"kernelDeployment\": z.object({\n \"devUrl\": z.string(),\n \"devId\": z.string(),\n \"stagingUrl\": z.string().optional(),\n \"stagingId\": z.string().optional(),\n \"prodUrl\": z.string().optional(),\n \"prodId\": z.string().optional()\n }).optional(),\n \"lucernDeployment\": z.object({\n \"devUrl\": z.string(),\n \"devId\": z.string(),\n \"stagingUrl\": z.string().optional(),\n \"stagingId\": z.string().optional(),\n \"prodUrl\": z.string().optional(),\n \"prodId\": z.string().optional()\n }).optional(),\n \"appDeployment\": z.object({\n \"devUrl\": z.string(),\n \"devId\": z.string(),\n \"stagingUrl\": z.string().optional(),\n \"stagingId\": z.string().optional(),\n \"prodUrl\": z.string().optional(),\n \"prodId\": z.string().optional()\n }).optional(),\n \"ownerClerkId\": z.string(),\n \"ownerEmail\": z.string().optional(),\n \"metadata\": z.any().optional(),\n \"createdAt\": z.number(),\n \"updatedAt\": z.number()\n }),\n indices: [\n { kind: 'index', name: \"by_slug\", columns: [\"slug\"] },\n { kind: 'index', name: \"by_status\", columns: [\"status\"] },\n { kind: 'index', name: \"by_ownerClerkId\", columns: [\"ownerClerkId\"] }\n ],\n});\n"]}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
import { T as TableContract } from '../../../defineTable-CBQ03FXl.js';
|
|
3
|
+
import { C as ConvexIdSchema } from '../../../idOf-DR8tkhQS.js';
|
|
4
|
+
|
|
5
|
+
declare const workspaces: TableContract<{
|
|
6
|
+
tenantId: ConvexIdSchema<"tenants">;
|
|
7
|
+
key: z.ZodString;
|
|
8
|
+
slug: z.ZodString;
|
|
9
|
+
name: z.ZodString;
|
|
10
|
+
status: z.ZodEnum<["active", "archived"]>;
|
|
11
|
+
defaultProjectVisibility: z.ZodOptional<z.ZodEnum<["private", "team", "firm", "external", "public"]>>;
|
|
12
|
+
deployments: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
|
|
13
|
+
url: z.ZodString;
|
|
14
|
+
encryptedDeployKey: z.ZodString;
|
|
15
|
+
}, "strip", z.ZodTypeAny, {
|
|
16
|
+
encryptedDeployKey: string;
|
|
17
|
+
url: string;
|
|
18
|
+
}, {
|
|
19
|
+
encryptedDeployKey: string;
|
|
20
|
+
url: string;
|
|
21
|
+
}>>>;
|
|
22
|
+
metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodAny>>;
|
|
23
|
+
createdBy: z.ZodOptional<z.ZodString>;
|
|
24
|
+
createdAt: z.ZodNumber;
|
|
25
|
+
updatedAt: z.ZodNumber;
|
|
26
|
+
}>;
|
|
27
|
+
|
|
28
|
+
export { workspaces };
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
|
|
3
|
+
// src/schemas/tables/mc/workspace.ts
|
|
4
|
+
|
|
5
|
+
// src/dsl/defineTable.ts
|
|
6
|
+
function defineTable(spec) {
|
|
7
|
+
return spec;
|
|
8
|
+
}
|
|
9
|
+
var CONVEX_ID_TABLE = /* @__PURE__ */ Symbol.for("lucern.contracts.convexIdTable");
|
|
10
|
+
function idOf(table) {
|
|
11
|
+
const schema = z.string().brand();
|
|
12
|
+
Object.defineProperty(schema, CONVEX_ID_TABLE, {
|
|
13
|
+
configurable: false,
|
|
14
|
+
enumerable: false,
|
|
15
|
+
value: table,
|
|
16
|
+
writable: false
|
|
17
|
+
});
|
|
18
|
+
return schema;
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
// src/schemas/tables/mc/workspace.ts
|
|
22
|
+
var workspaces = defineTable({
|
|
23
|
+
name: "workspaces",
|
|
24
|
+
component: "mc",
|
|
25
|
+
category: "workspace",
|
|
26
|
+
shape: z.object({
|
|
27
|
+
"tenantId": idOf("tenants"),
|
|
28
|
+
"key": z.string(),
|
|
29
|
+
"slug": z.string(),
|
|
30
|
+
"name": z.string(),
|
|
31
|
+
"status": z.enum(["active", "archived"]),
|
|
32
|
+
"defaultProjectVisibility": z.enum(["private", "team", "firm", "external", "public"]).optional(),
|
|
33
|
+
"deployments": z.record(z.object({
|
|
34
|
+
"url": z.string(),
|
|
35
|
+
"encryptedDeployKey": z.string()
|
|
36
|
+
})).optional(),
|
|
37
|
+
"metadata": z.record(z.any()).optional(),
|
|
38
|
+
"createdBy": z.string().optional(),
|
|
39
|
+
"createdAt": z.number(),
|
|
40
|
+
"updatedAt": z.number()
|
|
41
|
+
}),
|
|
42
|
+
indices: [
|
|
43
|
+
{ kind: "index", name: "by_tenantId", columns: ["tenantId"] },
|
|
44
|
+
{ kind: "index", name: "by_tenantId_key", columns: ["tenantId", "key"] },
|
|
45
|
+
{ kind: "index", name: "by_tenantId_slug", columns: ["tenantId", "slug"] },
|
|
46
|
+
{ kind: "index", name: "by_status", columns: ["status"] }
|
|
47
|
+
]
|
|
48
|
+
});
|
|
49
|
+
|
|
50
|
+
export { workspaces };
|
|
51
|
+
//# sourceMappingURL=workspace.js.map
|
|
52
|
+
//# sourceMappingURL=workspace.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/dsl/defineTable.ts","../../../../src/dsl/idOf.ts","../../../../src/schemas/tables/mc/workspace.ts"],"names":["z"],"mappings":";;;;;AAwCO,SAAS,YACd,IAAA,EACkB;AAClB,EAAA,OAAO,IAAA;AACT;AC1CO,IAAM,eAAA,mBAAkB,MAAA,CAAO,GAAA,CAAI,gCAAgC,CAAA;AASnE,SAAS,KAAuB,KAAA,EAA6B;AAClE,EAAA,MAAM,MAAA,GAAS,CAAA,CAAE,MAAA,EAAO,CAAE,KAAA,EAAkB;AAC5C,EAAA,MAAA,CAAO,cAAA,CAAe,QAAQ,eAAA,EAAiB;AAAA,IAC7C,YAAA,EAAc,KAAA;AAAA,IACd,UAAA,EAAY,KAAA;AAAA,IACZ,KAAA,EAAO,KAAA;AAAA,IACP,QAAA,EAAU;AAAA,GACX,CAAA;AACD,EAAA,OAAO,MAAA;AACT;;;ACVO,IAAM,aAAa,WAAA,CAAY;AAAA,EACpC,IAAA,EAAM,YAAA;AAAA,EACN,SAAA,EAAW,IAAA;AAAA,EACX,QAAA,EAAU,WAAA;AAAA,EACV,KAAA,EAAOA,EAAE,MAAA,CAAO;AAAA,IACd,UAAA,EAAY,KAAK,SAAS,CAAA;AAAA,IAC1B,KAAA,EAAOA,EAAE,MAAA,EAAO;AAAA,IAChB,MAAA,EAAQA,EAAE,MAAA,EAAO;AAAA,IACjB,MAAA,EAAQA,EAAE,MAAA,EAAO;AAAA,IACjB,UAAUA,CAAAA,CAAE,IAAA,CAAK,CAAC,QAAA,EAAU,UAAU,CAAC,CAAA;AAAA,IACvC,0BAAA,EAA4BA,CAAAA,CAAE,IAAA,CAAK,CAAC,SAAA,EAAW,MAAA,EAAQ,MAAA,EAAQ,UAAA,EAAY,QAAQ,CAAC,CAAA,CAAE,QAAA,EAAS;AAAA,IAC/F,aAAA,EAAeA,CAAAA,CAAE,MAAA,CAAOA,CAAAA,CAAE,MAAA,CAAO;AAAA,MACjC,KAAA,EAAOA,EAAE,MAAA,EAAO;AAAA,MAChB,oBAAA,EAAsBA,EAAE,MAAA;AAAO,KAChC,CAAC,CAAA,CAAE,QAAA,EAAS;AAAA,IACX,YAAYA,CAAAA,CAAE,MAAA,CAAOA,EAAE,GAAA,EAAK,EAAE,QAAA,EAAS;AAAA,IACvC,WAAA,EAAaA,CAAAA,CAAE,MAAA,EAAO,CAAE,QAAA,EAAS;AAAA,IACjC,WAAA,EAAaA,EAAE,MAAA,EAAO;AAAA,IACtB,WAAA,EAAaA,EAAE,MAAA;AAAO,GACvB,CAAA;AAAA,EACD,OAAA,EAAS;AAAA,IACL,EAAE,MAAM,OAAA,EAAS,IAAA,EAAM,eAAe,OAAA,EAAS,CAAC,UAAU,CAAA,EAAE;AAAA,IAC5D,EAAE,MAAM,OAAA,EAAS,IAAA,EAAM,mBAAmB,OAAA,EAAS,CAAC,UAAA,EAAY,KAAK,CAAA,EAAE;AAAA,IACvE,EAAE,MAAM,OAAA,EAAS,IAAA,EAAM,oBAAoB,OAAA,EAAS,CAAC,UAAA,EAAY,MAAM,CAAA,EAAE;AAAA,IACzE,EAAE,MAAM,OAAA,EAAS,IAAA,EAAM,aAAa,OAAA,EAAS,CAAC,QAAQ,CAAA;AAAE;AAE9D,CAAC","file":"workspace.js","sourcesContent":["import type { ZodObject, ZodRawShape } from \"zod\";\n\nexport type TableComponent = \"mc\" | \"kernel\" | \"identity\" | \"developer-pack\";\n\nexport type TableIndex =\n | {\n kind: \"index\";\n name: string;\n columns: readonly string[];\n }\n | {\n kind: \"search\";\n name: string;\n searchField: string;\n filterFields?: readonly string[];\n }\n | {\n kind: \"vector\";\n name: string;\n vectorField: string;\n dimensions: number;\n filterFields?: readonly string[];\n };\n\nexport type TableDeprecation = {\n since: string;\n reason: string;\n replacement?: string;\n};\n\nexport type TableContract<S extends ZodRawShape = ZodRawShape> = {\n name: string;\n component: TableComponent;\n category: string;\n shape: ZodObject<S>;\n indices: readonly TableIndex[];\n deprecated?: TableDeprecation;\n invariants?: readonly string[];\n};\n\nexport function defineTable<S extends ZodRawShape>(\n spec: TableContract<S>\n): TableContract<S> {\n return spec;\n}\n","import { z } from \"zod\";\n\nexport const CONVEX_ID_TABLE = Symbol.for(\"lucern.contracts.convexIdTable\");\n\nexport type ConvexIdSchema<T extends string> = z.ZodBranded<\n z.ZodString,\n `Id<${T}>`\n> & {\n readonly [CONVEX_ID_TABLE]: T;\n};\n\nexport function idOf<T extends string>(table: T): ConvexIdSchema<T> {\n const schema = z.string().brand<`Id<${T}>`>();\n Object.defineProperty(schema, CONVEX_ID_TABLE, {\n configurable: false,\n enumerable: false,\n value: table,\n writable: false,\n });\n return schema as ConvexIdSchema<T>;\n}\n\nexport function getConvexIdTable(schema: z.ZodTypeAny): string | undefined {\n return (schema as Partial<Record<typeof CONVEX_ID_TABLE, string>>)[\n CONVEX_ID_TABLE\n ];\n}\n","/**\n * Schema contracts for mc/workspace.\n *\n * Mirrored from:\n * - services/master-control/convex/schema.ts\n */\n\nimport { z } from 'zod';\nimport { defineTable, idOf } from '../../../dsl.js';\n\nexport const workspaces = defineTable({\n name: \"workspaces\",\n component: \"mc\",\n category: \"workspace\",\n shape: z.object({\n \"tenantId\": idOf(\"tenants\"),\n \"key\": z.string(),\n \"slug\": z.string(),\n \"name\": z.string(),\n \"status\": z.enum([\"active\", \"archived\"]),\n \"defaultProjectVisibility\": z.enum([\"private\", \"team\", \"firm\", \"external\", \"public\"]).optional(),\n \"deployments\": z.record(z.object({\n \"url\": z.string(),\n \"encryptedDeployKey\": z.string()\n })).optional(),\n \"metadata\": z.record(z.any()).optional(),\n \"createdBy\": z.string().optional(),\n \"createdAt\": z.number(),\n \"updatedAt\": z.number()\n }),\n indices: [\n { kind: 'index', name: \"by_tenantId\", columns: [\"tenantId\"] },\n { kind: 'index', name: \"by_tenantId_key\", columns: [\"tenantId\", \"key\"] },\n { kind: 'index', name: \"by_tenantId_slug\", columns: [\"tenantId\", \"slug\"] },\n { kind: 'index', name: \"by_status\", columns: [\"status\"] }\n ],\n});\n"]}
|