@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.
Files changed (214) hide show
  1. package/dist/defineFunction-DO97DKs4.d.ts +14 -0
  2. package/dist/defineTable-CBQ03FXl.d.ts +36 -0
  3. package/dist/dsl-BgpoVOVQ.d.ts +110 -0
  4. package/dist/dsl.d.ts +5 -0
  5. package/dist/dsl.js +675 -0
  6. package/dist/dsl.js.map +1 -0
  7. package/dist/function-registry/beliefs.d.ts +519 -0
  8. package/dist/function-registry/beliefs.js +4326 -0
  9. package/dist/function-registry/beliefs.js.map +1 -0
  10. package/dist/function-registry/coding.d.ts +347 -0
  11. package/dist/function-registry/coding.js +4268 -0
  12. package/dist/function-registry/coding.js.map +1 -0
  13. package/dist/function-registry/context.d.ts +218 -0
  14. package/dist/function-registry/context.js +4175 -0
  15. package/dist/function-registry/context.js.map +1 -0
  16. package/dist/function-registry/contracts.d.ts +218 -0
  17. package/dist/function-registry/contracts.js +4143 -0
  18. package/dist/function-registry/contracts.js.map +1 -0
  19. package/dist/function-registry/coordination.d.ts +476 -0
  20. package/dist/function-registry/coordination.js +4254 -0
  21. package/dist/function-registry/coordination.js.map +1 -0
  22. package/dist/function-registry/edges.d.ts +175 -0
  23. package/dist/function-registry/edges.js +4150 -0
  24. package/dist/function-registry/edges.js.map +1 -0
  25. package/dist/function-registry/evidence.d.ts +433 -0
  26. package/dist/function-registry/evidence.js +4302 -0
  27. package/dist/function-registry/evidence.js.map +1 -0
  28. package/dist/function-registry/graph.d.ts +648 -0
  29. package/dist/function-registry/graph.js +4329 -0
  30. package/dist/function-registry/graph.js.map +1 -0
  31. package/dist/function-registry/helpers.d.ts +86 -0
  32. package/dist/function-registry/helpers.js +4131 -0
  33. package/dist/function-registry/helpers.js.map +1 -0
  34. package/dist/function-registry/identity.d.ts +218 -0
  35. package/dist/function-registry/identity.js +4154 -0
  36. package/dist/function-registry/identity.js.map +1 -0
  37. package/dist/function-registry/index.d.ts +32 -0
  38. package/dist/function-registry/index.js +4235 -0
  39. package/dist/function-registry/index.js.map +1 -0
  40. package/dist/function-registry/judgments.d.ts +175 -0
  41. package/dist/function-registry/judgments.js +4157 -0
  42. package/dist/function-registry/judgments.js.map +1 -0
  43. package/dist/function-registry/legacy.d.ts +132 -0
  44. package/dist/function-registry/legacy.js +4118 -0
  45. package/dist/function-registry/legacy.js.map +1 -0
  46. package/dist/function-registry/lenses.d.ts +261 -0
  47. package/dist/function-registry/lenses.js +4160 -0
  48. package/dist/function-registry/lenses.js.map +1 -0
  49. package/dist/function-registry/manifest.d.ts +36 -0
  50. package/dist/function-registry/manifest.js +366 -0
  51. package/dist/function-registry/manifest.js.map +1 -0
  52. package/dist/function-registry/ontologies.d.ts +562 -0
  53. package/dist/function-registry/ontologies.js +4292 -0
  54. package/dist/function-registry/ontologies.js.map +1 -0
  55. package/dist/function-registry/pipeline.d.ts +218 -0
  56. package/dist/function-registry/pipeline.js +4143 -0
  57. package/dist/function-registry/pipeline.js.map +1 -0
  58. package/dist/function-registry/questions.d.ts +605 -0
  59. package/dist/function-registry/questions.js +4329 -0
  60. package/dist/function-registry/questions.js.map +1 -0
  61. package/dist/function-registry/tasks.d.ts +261 -0
  62. package/dist/function-registry/tasks.js +4166 -0
  63. package/dist/function-registry/tasks.js.map +1 -0
  64. package/dist/function-registry/topics.d.ts +304 -0
  65. package/dist/function-registry/topics.js +4193 -0
  66. package/dist/function-registry/topics.js.map +1 -0
  67. package/dist/function-registry/types.d.ts +84 -0
  68. package/dist/function-registry/types.js +3 -0
  69. package/dist/function-registry/types.js.map +1 -0
  70. package/dist/function-registry/worktrees.d.ts +476 -0
  71. package/dist/function-registry/worktrees.js +4277 -0
  72. package/dist/function-registry/worktrees.js.map +1 -0
  73. package/dist/generated/convexSchemas.d.ts +20 -0
  74. package/dist/generated/convexSchemas.js +160 -0
  75. package/dist/generated/convexSchemas.js.map +1 -0
  76. package/dist/generated/schema-manifest.json +5179 -0
  77. package/dist/generated/tableOwnership.d.ts +127 -0
  78. package/dist/generated/tableOwnership.js +276 -0
  79. package/dist/generated/tableOwnership.js.map +1 -0
  80. package/dist/generated/tier-expectations.json +360 -0
  81. package/dist/idOf-DR8tkhQS.d.ts +10 -0
  82. package/dist/index-DoDXl8KS.d.ts +19 -0
  83. package/dist/index.d.ts +11 -2
  84. package/dist/index.js +5739 -315
  85. package/dist/index.js.map +1 -1
  86. package/dist/schema-helpers/enumValidation.d.ts +17 -0
  87. package/dist/schema-helpers/enumValidation.js +143 -0
  88. package/dist/schema-helpers/enumValidation.js.map +1 -0
  89. package/dist/schema-helpers/spine/nodes/decision.d.ts +19 -0
  90. package/dist/schema-helpers/spine/nodes/decision.js +81 -0
  91. package/dist/schema-helpers/spine/nodes/decision.js.map +1 -0
  92. package/dist/schema-helpers/spine/tables/epistemicNodes.d.ts +9 -0
  93. package/dist/schema-helpers/spine/tables/epistemicNodes.js +62 -0
  94. package/dist/schema-helpers/spine/tables/epistemicNodes.js.map +1 -0
  95. package/dist/schema-helpers/topicIds.d.ts +17 -0
  96. package/dist/schema-helpers/topicIds.js +21 -0
  97. package/dist/schema-helpers/topicIds.js.map +1 -0
  98. package/dist/schema-helpers/topicLegacyScope.d.ts +19 -0
  99. package/dist/schema-helpers/topicLegacyScope.js +44 -0
  100. package/dist/schema-helpers/topicLegacyScope.js.map +1 -0
  101. package/dist/schema-helpers/validators.d.ts +8 -0
  102. package/dist/schema-helpers/validators.js +18 -0
  103. package/dist/schema-helpers/validators.js.map +1 -0
  104. package/dist/schemas/enums.d.ts +12 -0
  105. package/dist/schemas/enums.js +11 -0
  106. package/dist/schemas/enums.js.map +1 -0
  107. package/dist/schemas/index.d.ts +5 -0
  108. package/dist/schemas/index.js +4240 -0
  109. package/dist/schemas/index.js.map +1 -0
  110. package/dist/schemas/manifest.d.ts +24521 -0
  111. package/dist/schemas/manifest.js +4242 -0
  112. package/dist/schemas/manifest.js.map +1 -0
  113. package/dist/schemas/tables/identity/agent.d.ts +21 -0
  114. package/dist/schemas/tables/identity/agent.js +41 -0
  115. package/dist/schemas/tables/identity/agent.js.map +1 -0
  116. package/dist/schemas/tables/identity/epistemic.d.ts +18 -0
  117. package/dist/schemas/tables/identity/epistemic.js +38 -0
  118. package/dist/schemas/tables/identity/epistemic.js.map +1 -0
  119. package/dist/schemas/tables/identity/model.d.ts +62 -0
  120. package/dist/schemas/tables/identity/model.js +110 -0
  121. package/dist/schemas/tables/identity/model.js.map +1 -0
  122. package/dist/schemas/tables/identity/platform.d.ts +392 -0
  123. package/dist/schemas/tables/identity/platform.js +475 -0
  124. package/dist/schemas/tables/identity/platform.js.map +1 -0
  125. package/dist/schemas/tables/identity/project.d.ts +22 -0
  126. package/dist/schemas/tables/identity/project.js +48 -0
  127. package/dist/schemas/tables/identity/project.js.map +1 -0
  128. package/dist/schemas/tables/identity/user.d.ts +26 -0
  129. package/dist/schemas/tables/identity/user.js +47 -0
  130. package/dist/schemas/tables/identity/user.js.map +1 -0
  131. package/dist/schemas/tables/kernel/config.d.ts +20 -0
  132. package/dist/schemas/tables/kernel/config.js +39 -0
  133. package/dist/schemas/tables/kernel/config.js.map +1 -0
  134. package/dist/schemas/tables/kernel/coordination.d.ts +30 -0
  135. package/dist/schemas/tables/kernel/coordination.js +57 -0
  136. package/dist/schemas/tables/kernel/coordination.js.map +1 -0
  137. package/dist/schemas/tables/kernel/decision.d.ts +246 -0
  138. package/dist/schemas/tables/kernel/decision.js +371 -0
  139. package/dist/schemas/tables/kernel/decision.js.map +1 -0
  140. package/dist/schemas/tables/kernel/embedding.d.ts +18 -0
  141. package/dist/schemas/tables/kernel/embedding.js +48 -0
  142. package/dist/schemas/tables/kernel/embedding.js.map +1 -0
  143. package/dist/schemas/tables/kernel/epistemic.d.ts +315 -0
  144. package/dist/schemas/tables/kernel/epistemic.js +327 -0
  145. package/dist/schemas/tables/kernel/epistemic.js.map +1 -0
  146. package/dist/schemas/tables/kernel/idempotency.d.ts +13 -0
  147. package/dist/schemas/tables/kernel/idempotency.js +31 -0
  148. package/dist/schemas/tables/kernel/idempotency.js.map +1 -0
  149. package/dist/schemas/tables/kernel/infra.d.ts +171 -0
  150. package/dist/schemas/tables/kernel/infra.js +160 -0
  151. package/dist/schemas/tables/kernel/infra.js.map +1 -0
  152. package/dist/schemas/tables/kernel/intelligence.d.ts +293 -0
  153. package/dist/schemas/tables/kernel/intelligence.js +207 -0
  154. package/dist/schemas/tables/kernel/intelligence.js.map +1 -0
  155. package/dist/schemas/tables/kernel/lens.d.ts +192 -0
  156. package/dist/schemas/tables/kernel/lens.js +122 -0
  157. package/dist/schemas/tables/kernel/lens.js.map +1 -0
  158. package/dist/schemas/tables/kernel/ontology.d.ts +89 -0
  159. package/dist/schemas/tables/kernel/ontology.js +91 -0
  160. package/dist/schemas/tables/kernel/ontology.js.map +1 -0
  161. package/dist/schemas/tables/kernel/platform.d.ts +353 -0
  162. package/dist/schemas/tables/kernel/platform.js +349 -0
  163. package/dist/schemas/tables/kernel/platform.js.map +1 -0
  164. package/dist/schemas/tables/kernel/spine.d.ts +206 -0
  165. package/dist/schemas/tables/kernel/spine.js +243 -0
  166. package/dist/schemas/tables/kernel/spine.js.map +1 -0
  167. package/dist/schemas/tables/kernel/task.d.ts +614 -0
  168. package/dist/schemas/tables/kernel/task.js +189 -0
  169. package/dist/schemas/tables/kernel/task.js.map +1 -0
  170. package/dist/schemas/tables/kernel/topic.d.ts +25 -0
  171. package/dist/schemas/tables/kernel/topic.js +62 -0
  172. package/dist/schemas/tables/kernel/topic.js.map +1 -0
  173. package/dist/schemas/tables/kernel/workflow.d.ts +45 -0
  174. package/dist/schemas/tables/kernel/workflow.js +94 -0
  175. package/dist/schemas/tables/kernel/workflow.js.map +1 -0
  176. package/dist/schemas/tables/kernel/worktree.d.ts +823 -0
  177. package/dist/schemas/tables/kernel/worktree.js +328 -0
  178. package/dist/schemas/tables/kernel/worktree.js.map +1 -0
  179. package/dist/schemas/tables/mc/identity.d.ts +134 -0
  180. package/dist/schemas/tables/mc/identity.js +221 -0
  181. package/dist/schemas/tables/mc/identity.js.map +1 -0
  182. package/dist/schemas/tables/mc/methodology.d.ts +46 -0
  183. package/dist/schemas/tables/mc/methodology.js +69 -0
  184. package/dist/schemas/tables/mc/methodology.js.map +1 -0
  185. package/dist/schemas/tables/mc/pack.d.ts +540 -0
  186. package/dist/schemas/tables/mc/pack.js +294 -0
  187. package/dist/schemas/tables/mc/pack.js.map +1 -0
  188. package/dist/schemas/tables/mc/policy.d.ts +57 -0
  189. package/dist/schemas/tables/mc/policy.js +121 -0
  190. package/dist/schemas/tables/mc/policy.js.map +1 -0
  191. package/dist/schemas/tables/mc/registry.d.ts +155 -0
  192. package/dist/schemas/tables/mc/registry.js +164 -0
  193. package/dist/schemas/tables/mc/registry.js.map +1 -0
  194. package/dist/schemas/tables/mc/runtime.d.ts +119 -0
  195. package/dist/schemas/tables/mc/runtime.js +199 -0
  196. package/dist/schemas/tables/mc/runtime.js.map +1 -0
  197. package/dist/schemas/tables/mc/tenant.d.ts +106 -0
  198. package/dist/schemas/tables/mc/tenant.js +114 -0
  199. package/dist/schemas/tables/mc/tenant.js.map +1 -0
  200. package/dist/schemas/tables/mc/workspace.d.ts +28 -0
  201. package/dist/schemas/tables/mc/workspace.js +52 -0
  202. package/dist/schemas/tables/mc/workspace.js.map +1 -0
  203. package/dist/{sdk-tools.contract-BnV0hKLp.d.ts → sdk-tools.contract-C2kQN_Xk.d.ts} +3 -7
  204. package/dist/sdk-tools.contract.d.ts +2 -2
  205. package/dist/sdk-tools.contract.js +664 -175
  206. package/dist/sdk-tools.contract.js.map +1 -1
  207. package/dist/tool-contracts-WCnuE9DW.d.ts +288 -0
  208. package/dist/tool-contracts.d.ts +1 -0
  209. package/dist/{mcp-tools.contract.js → tool-contracts.js} +666 -116
  210. package/dist/tool-contracts.js.map +1 -0
  211. package/package.json +119 -2
  212. package/dist/mcp-tools.contract-D8kXcP6d.d.ts +0 -254
  213. package/dist/mcp-tools.contract.d.ts +0 -1
  214. package/dist/mcp-tools.contract.js.map +0 -1
@@ -0,0 +1,189 @@
1
+ import { z } from 'zod';
2
+
3
+ // src/schemas/tables/kernel/task.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/kernel/task.ts
22
+ var tasks = defineTable({
23
+ name: "tasks",
24
+ component: "kernel",
25
+ category: "task",
26
+ shape: z.object({
27
+ "topicId": z.string().optional(),
28
+ "tenantId": z.string().optional(),
29
+ "workspaceId": z.string().optional(),
30
+ "title": z.string(),
31
+ "description": z.string().optional(),
32
+ "status": z.enum(["todo", "in_progress", "blocked", "done"]),
33
+ "priority": z.enum(["urgent", "high", "medium", "low"]),
34
+ "dueDate": z.number().optional(),
35
+ "linkedWorktreeId": idOf("worktrees").optional(),
36
+ "linkedBeliefId": z.string().optional(),
37
+ "linkedQuestionId": z.string().optional(),
38
+ "taskType": z.enum(["general", "find_evidence", "verify_claim", "research", "review", "interview", "analysis", "track_metrics"]).optional(),
39
+ "assigneeId": z.string().optional(),
40
+ "blockedReason": z.string().optional(),
41
+ "blockedBy": z.array(idOf("tasks")).optional(),
42
+ "blocks": z.array(idOf("tasks")).optional(),
43
+ "sortOrder": z.number().optional(),
44
+ "executionOrder": z.number().optional(),
45
+ "subtasks": z.array(z.object({
46
+ "id": z.string(),
47
+ "title": z.string(),
48
+ "completed": z.boolean(),
49
+ "completedAt": z.number().optional()
50
+ })).optional(),
51
+ "comments": z.array(z.object({
52
+ "id": z.string(),
53
+ "userId": z.string(),
54
+ "content": z.string(),
55
+ "createdAt": z.number()
56
+ })).optional(),
57
+ "attachments": z.array(z.object({
58
+ "id": z.string(),
59
+ "type": z.enum(["call_script", "email_template", "research_plan", "framework", "checklist", "note", "file", "transcript"]),
60
+ "title": z.string(),
61
+ "content": z.string(),
62
+ "metadata": z.object({
63
+ "items": z.array(z.object({
64
+ "id": z.string(),
65
+ "text": z.string(),
66
+ "completed": z.boolean()
67
+ })).optional(),
68
+ "fileUrl": z.string().optional(),
69
+ "fileName": z.string().optional(),
70
+ "fileSize": z.number().optional(),
71
+ "frameworkType": z.string().optional(),
72
+ "variables": z.array(z.string()).optional(),
73
+ "mappedQuestions": z.array(z.object({
74
+ "id": z.string(),
75
+ "questionText": z.string(),
76
+ "linkedQuestionId": z.string().optional(),
77
+ "linkedBeliefId": z.string().optional(),
78
+ "category": z.string().optional(),
79
+ "priority": z.enum(["must_ask", "nice_to_have"]).optional(),
80
+ "answered": z.boolean().optional(),
81
+ "answerExcerpt": z.string().optional(),
82
+ "answerTimestamp": z.string().optional(),
83
+ "capturedAsInsight": z.boolean().optional(),
84
+ "insightId": idOf("epistemicNodes").optional()
85
+ })).optional(),
86
+ "linkedCallScriptId": z.string().optional(),
87
+ "editable": z.boolean().optional(),
88
+ "executionTool": z.string().optional(),
89
+ "linkedQuestionId": z.string().optional(),
90
+ "linkedBeliefId": z.string().optional(),
91
+ "workflowStepId": z.string().optional(),
92
+ "workflowOrder": z.number().optional(),
93
+ "dependsOnStepIds": z.array(z.string()).optional(),
94
+ "runCondition": z.string().optional(),
95
+ "continueOnFailure": z.boolean().optional(),
96
+ "stepStatus": z.enum(["pending", "running", "completed", "failed", "skipped"]).optional(),
97
+ "stepRunCount": z.number().optional(),
98
+ "stepLastRunAt": z.number().optional(),
99
+ "stepOutputSummary": z.string().optional(),
100
+ "stepOutputData": z.string().optional(),
101
+ "stepFailureReason": z.string().optional(),
102
+ "researchResult": z.string().optional(),
103
+ "researchStatus": z.enum(["pending", "running", "completed", "failed"]).optional(),
104
+ "researchCompletedAt": z.number().optional(),
105
+ "researchCitations": z.array(z.union([z.string(), z.object({
106
+ "url": z.string(),
107
+ "title": z.string().optional(),
108
+ "snippet": z.string().optional()
109
+ })])).optional(),
110
+ "generatedPersonas": z.array(z.any()).optional(),
111
+ "personasGeneratedAt": z.number().optional(),
112
+ "expertSearchResults": z.array(z.any()).optional(),
113
+ "expertSearchAt": z.number().optional(),
114
+ "capturedAsEvidence": z.boolean().optional(),
115
+ "capturedInsightId": z.string().optional(),
116
+ "capturedAt": z.number().optional(),
117
+ "capturedImpact": z.number().optional(),
118
+ "tools": z.array(z.object({
119
+ "tool": z.string(),
120
+ "purpose": z.string(),
121
+ "suggestedQuery": z.string()
122
+ })).optional(),
123
+ "metrics": z.array(z.object({
124
+ "metric": z.string(),
125
+ "source": z.string(),
126
+ "frequency": z.string(),
127
+ "currentValue": z.string().optional()
128
+ })).optional(),
129
+ "personas": z.array(z.object({
130
+ "role": z.string(),
131
+ "title": z.string(),
132
+ "company": z.string(),
133
+ "rationale": z.string()
134
+ })).optional(),
135
+ "experts": z.array(z.object({
136
+ "expertise": z.string(),
137
+ "potentialSources": z.array(z.string()),
138
+ "questions": z.array(z.string()),
139
+ "searchStrategy": z.string().optional()
140
+ })).optional(),
141
+ "factChecker": z.object({
142
+ "claimsToVerify": z.array(z.string()),
143
+ "sourcesToCheck": z.array(z.string()),
144
+ "verificationCriteria": z.array(z.string())
145
+ }).optional()
146
+ }).optional(),
147
+ "capturedAsEvidence": z.boolean().optional(),
148
+ "capturedInsightId": idOf("epistemicNodes").optional(),
149
+ "capturedAt": z.number().optional(),
150
+ "createdBy": z.string(),
151
+ "createdAt": z.number()
152
+ })).optional(),
153
+ "tags": z.array(z.string()).optional(),
154
+ "executionType": z.enum(["research_search", "find_news", "identify_experts", "market_research", "generate_primer", "verify_claim", "manual", "mcp_research", "mcp_web_search", "mcp_capture", "mcp_network_search"]).optional(),
155
+ "executionStatus": z.enum(["pending", "running", "completed", "failed"]).optional(),
156
+ "executionResults": z.union([z.string(), z.number(), z.boolean(), z.null(), z.record(z.any()), z.array(z.any())]).optional(),
157
+ "executionStartedAt": z.number().optional(),
158
+ "executionCompletedAt": z.number().optional(),
159
+ "executionError": z.string().optional(),
160
+ "mcpDatasetIds": z.array(z.string()).optional(),
161
+ "mcpSkillIds": z.array(z.string()).optional(),
162
+ "mcpExecutionId": z.string().optional(),
163
+ "linkedChatId": z.string().optional(),
164
+ "createdBy": z.string(),
165
+ "createdAt": z.number(),
166
+ "updatedAt": z.number(),
167
+ "completedAt": z.number().optional(),
168
+ "completedBy": z.string().optional()
169
+ }),
170
+ indices: [
171
+ { kind: "index", name: "by_topicId", columns: ["topicId"] },
172
+ { kind: "index", name: "by_topicId_status", columns: ["topicId", "status"] },
173
+ { kind: "index", name: "by_tenantId", columns: ["tenantId"] },
174
+ { kind: "index", name: "by_workspaceId", columns: ["workspaceId"] },
175
+ { kind: "index", name: "by_worktreeId", columns: ["linkedWorktreeId"] },
176
+ { kind: "index", name: "by_beliefId", columns: ["linkedBeliefId"] },
177
+ { kind: "index", name: "by_questionId", columns: ["linkedQuestionId"] },
178
+ { kind: "index", name: "by_status", columns: ["status"] },
179
+ { kind: "index", name: "by_assigneeId", columns: ["assigneeId"] },
180
+ { kind: "index", name: "by_dueDate", columns: ["dueDate"] },
181
+ { kind: "index", name: "by_priority", columns: ["priority"] },
182
+ { kind: "index", name: "by_executionType", columns: ["executionType"] },
183
+ { kind: "index", name: "by_executionStatus", columns: ["executionStatus"] }
184
+ ]
185
+ });
186
+
187
+ export { tasks };
188
+ //# sourceMappingURL=task.js.map
189
+ //# sourceMappingURL=task.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/dsl/defineTable.ts","../../../../src/dsl/idOf.ts","../../../../src/schemas/tables/kernel/task.ts"],"names":["z"],"mappings":"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","file":"task.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 kernel/task.\n *\n * Mirrored from:\n * - packages/reasoning-kernel/src/adapters/schema/domains/task.ts\n */\n\nimport { z } from 'zod';\nimport { defineTable, idOf } from '../../../dsl.js';\n\nexport const tasks = defineTable({\n name: \"tasks\",\n component: \"kernel\",\n category: \"task\",\n shape: z.object({\n \"topicId\": z.string().optional(),\n \"tenantId\": z.string().optional(),\n \"workspaceId\": z.string().optional(),\n \"title\": z.string(),\n \"description\": z.string().optional(),\n \"status\": z.enum([\"todo\", \"in_progress\", \"blocked\", \"done\"]),\n \"priority\": z.enum([\"urgent\", \"high\", \"medium\", \"low\"]),\n \"dueDate\": z.number().optional(),\n \"linkedWorktreeId\": idOf(\"worktrees\").optional(),\n \"linkedBeliefId\": z.string().optional(),\n \"linkedQuestionId\": z.string().optional(),\n \"taskType\": z.enum([\"general\", \"find_evidence\", \"verify_claim\", \"research\", \"review\", \"interview\", \"analysis\", \"track_metrics\"]).optional(),\n \"assigneeId\": z.string().optional(),\n \"blockedReason\": z.string().optional(),\n \"blockedBy\": z.array(idOf(\"tasks\")).optional(),\n \"blocks\": z.array(idOf(\"tasks\")).optional(),\n \"sortOrder\": z.number().optional(),\n \"executionOrder\": z.number().optional(),\n \"subtasks\": z.array(z.object({\n \"id\": z.string(),\n \"title\": z.string(),\n \"completed\": z.boolean(),\n \"completedAt\": z.number().optional()\n })).optional(),\n \"comments\": z.array(z.object({\n \"id\": z.string(),\n \"userId\": z.string(),\n \"content\": z.string(),\n \"createdAt\": z.number()\n })).optional(),\n \"attachments\": z.array(z.object({\n \"id\": z.string(),\n \"type\": z.enum([\"call_script\", \"email_template\", \"research_plan\", \"framework\", \"checklist\", \"note\", \"file\", \"transcript\"]),\n \"title\": z.string(),\n \"content\": z.string(),\n \"metadata\": z.object({\n \"items\": z.array(z.object({\n \"id\": z.string(),\n \"text\": z.string(),\n \"completed\": z.boolean()\n })).optional(),\n \"fileUrl\": z.string().optional(),\n \"fileName\": z.string().optional(),\n \"fileSize\": z.number().optional(),\n \"frameworkType\": z.string().optional(),\n \"variables\": z.array(z.string()).optional(),\n \"mappedQuestions\": z.array(z.object({\n \"id\": z.string(),\n \"questionText\": z.string(),\n \"linkedQuestionId\": z.string().optional(),\n \"linkedBeliefId\": z.string().optional(),\n \"category\": z.string().optional(),\n \"priority\": z.enum([\"must_ask\", \"nice_to_have\"]).optional(),\n \"answered\": z.boolean().optional(),\n \"answerExcerpt\": z.string().optional(),\n \"answerTimestamp\": z.string().optional(),\n \"capturedAsInsight\": z.boolean().optional(),\n \"insightId\": idOf(\"epistemicNodes\").optional()\n })).optional(),\n \"linkedCallScriptId\": z.string().optional(),\n \"editable\": z.boolean().optional(),\n \"executionTool\": z.string().optional(),\n \"linkedQuestionId\": z.string().optional(),\n \"linkedBeliefId\": z.string().optional(),\n \"workflowStepId\": z.string().optional(),\n \"workflowOrder\": z.number().optional(),\n \"dependsOnStepIds\": z.array(z.string()).optional(),\n \"runCondition\": z.string().optional(),\n \"continueOnFailure\": z.boolean().optional(),\n \"stepStatus\": z.enum([\"pending\", \"running\", \"completed\", \"failed\", \"skipped\"]).optional(),\n \"stepRunCount\": z.number().optional(),\n \"stepLastRunAt\": z.number().optional(),\n \"stepOutputSummary\": z.string().optional(),\n \"stepOutputData\": z.string().optional(),\n \"stepFailureReason\": z.string().optional(),\n \"researchResult\": z.string().optional(),\n \"researchStatus\": z.enum([\"pending\", \"running\", \"completed\", \"failed\"]).optional(),\n \"researchCompletedAt\": z.number().optional(),\n \"researchCitations\": z.array(z.union([z.string(), z.object({\n \"url\": z.string(),\n \"title\": z.string().optional(),\n \"snippet\": z.string().optional()\n })])).optional(),\n \"generatedPersonas\": z.array(z.any()).optional(),\n \"personasGeneratedAt\": z.number().optional(),\n \"expertSearchResults\": z.array(z.any()).optional(),\n \"expertSearchAt\": z.number().optional(),\n \"capturedAsEvidence\": z.boolean().optional(),\n \"capturedInsightId\": z.string().optional(),\n \"capturedAt\": z.number().optional(),\n \"capturedImpact\": z.number().optional(),\n \"tools\": z.array(z.object({\n \"tool\": z.string(),\n \"purpose\": z.string(),\n \"suggestedQuery\": z.string()\n })).optional(),\n \"metrics\": z.array(z.object({\n \"metric\": z.string(),\n \"source\": z.string(),\n \"frequency\": z.string(),\n \"currentValue\": z.string().optional()\n })).optional(),\n \"personas\": z.array(z.object({\n \"role\": z.string(),\n \"title\": z.string(),\n \"company\": z.string(),\n \"rationale\": z.string()\n })).optional(),\n \"experts\": z.array(z.object({\n \"expertise\": z.string(),\n \"potentialSources\": z.array(z.string()),\n \"questions\": z.array(z.string()),\n \"searchStrategy\": z.string().optional()\n })).optional(),\n \"factChecker\": z.object({\n \"claimsToVerify\": z.array(z.string()),\n \"sourcesToCheck\": z.array(z.string()),\n \"verificationCriteria\": z.array(z.string())\n }).optional()\n }).optional(),\n \"capturedAsEvidence\": z.boolean().optional(),\n \"capturedInsightId\": idOf(\"epistemicNodes\").optional(),\n \"capturedAt\": z.number().optional(),\n \"createdBy\": z.string(),\n \"createdAt\": z.number()\n })).optional(),\n \"tags\": z.array(z.string()).optional(),\n \"executionType\": z.enum([\"research_search\", \"find_news\", \"identify_experts\", \"market_research\", \"generate_primer\", \"verify_claim\", \"manual\", \"mcp_research\", \"mcp_web_search\", \"mcp_capture\", \"mcp_network_search\"]).optional(),\n \"executionStatus\": z.enum([\"pending\", \"running\", \"completed\", \"failed\"]).optional(),\n \"executionResults\": z.union([z.string(), z.number(), z.boolean(), z.null(), z.record(z.any()), z.array(z.any())]).optional(),\n \"executionStartedAt\": z.number().optional(),\n \"executionCompletedAt\": z.number().optional(),\n \"executionError\": z.string().optional(),\n \"mcpDatasetIds\": z.array(z.string()).optional(),\n \"mcpSkillIds\": z.array(z.string()).optional(),\n \"mcpExecutionId\": z.string().optional(),\n \"linkedChatId\": z.string().optional(),\n \"createdBy\": z.string(),\n \"createdAt\": z.number(),\n \"updatedAt\": z.number(),\n \"completedAt\": z.number().optional(),\n \"completedBy\": z.string().optional()\n }),\n indices: [\n { kind: 'index', name: \"by_topicId\", columns: [\"topicId\"] },\n { kind: 'index', name: \"by_topicId_status\", columns: [\"topicId\", \"status\"] },\n { kind: 'index', name: \"by_tenantId\", columns: [\"tenantId\"] },\n { kind: 'index', name: \"by_workspaceId\", columns: [\"workspaceId\"] },\n { kind: 'index', name: \"by_worktreeId\", columns: [\"linkedWorktreeId\"] },\n { kind: 'index', name: \"by_beliefId\", columns: [\"linkedBeliefId\"] },\n { kind: 'index', name: \"by_questionId\", columns: [\"linkedQuestionId\"] },\n { kind: 'index', name: \"by_status\", columns: [\"status\"] },\n { kind: 'index', name: \"by_assigneeId\", columns: [\"assigneeId\"] },\n { kind: 'index', name: \"by_dueDate\", columns: [\"dueDate\"] },\n { kind: 'index', name: \"by_priority\", columns: [\"priority\"] },\n { kind: 'index', name: \"by_executionType\", columns: [\"executionType\"] },\n { kind: 'index', name: \"by_executionStatus\", columns: [\"executionStatus\"] }\n ],\n});\n"]}
@@ -0,0 +1,25 @@
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 topics: TableContract<{
6
+ globalId: z.ZodString;
7
+ name: z.ZodString;
8
+ description: z.ZodOptional<z.ZodString>;
9
+ parentTopicId: z.ZodOptional<ConvexIdSchema<"topics">>;
10
+ depth: z.ZodNumber;
11
+ path: z.ZodArray<z.ZodString, "many">;
12
+ type: z.ZodString;
13
+ ontologyId: z.ZodOptional<ConvexIdSchema<"ontologyDefinitions">>;
14
+ graphScopeProjectId: z.ZodOptional<z.ZodString>;
15
+ metadata: z.ZodOptional<z.ZodAny>;
16
+ tenantId: z.ZodOptional<z.ZodString>;
17
+ workspaceId: z.ZodOptional<z.ZodString>;
18
+ status: z.ZodEnum<["active", "archived", "watching"]>;
19
+ visibility: z.ZodOptional<z.ZodEnum<["private", "team", "firm", "external", "public"]>>;
20
+ createdBy: z.ZodString;
21
+ createdAt: z.ZodNumber;
22
+ updatedAt: z.ZodNumber;
23
+ }>;
24
+
25
+ export { topics };
@@ -0,0 +1,62 @@
1
+ import { z } from 'zod';
2
+
3
+ // src/schemas/tables/kernel/topic.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
+ z.enum(["decision", "belief", "question", "theme", "deal", "topic", "claim", "evidence", "synthesis", "answer", "atomic_fact", "excerpt", "source", "company", "person", "investor", "function", "value_chain"]);
21
+ z.enum(["supports", "informs", "depends_on", "extracted_from", "contains", "tests", "supersedes", "responds_to", "belongs_to", "relates_to_thesis", "works_at", "invested_in", "competes_with", "participates_in", "founded_by", "evaluates", "performs", "function_in", "impacts", "raised_from", "mentioned_in", "perspective_on", "plays_theme", "answers", "explores", "qualifies", "based_on", "based_on_belief", "based_on_question", "blocked_by_contradiction", "informed_by_theme", "same_as", "reinforces", "parent_of", "child_of", "falsified_by", "exclusive_with", "collapses_if", "cascade_from", "counterfactual_of", "cascade_to", "mutually_exclusive", "correlates_with", "amplifies", "precondition_for", "in_tension_with", "strengthened_by", "weakened_by", "alternative_to", "subsumes", "validated_by", "required_for", "blocks", "prerequisite_for", "parallel_to", "corroborates", "extends", "same_source_as", "same_theme_as", "assumes", "would_predict", "analogous_to", "independent_of", "implements", "violates", "co_changes_with", "migrating_from", "migrating_to", "scoped_by", "about_entity", "entity_referenced_in", "contradicts", "cites", "summarizes", "related_to", "partially_answers", "refines", "branches_from"]);
22
+ var TOPIC_STATUS = z.enum(["active", "archived", "watching"]);
23
+ var TOPIC_VISIBILITY = z.enum(["private", "team", "firm", "external", "public"]);
24
+
25
+ // src/schemas/tables/kernel/topic.ts
26
+ var topics = defineTable({
27
+ name: "topics",
28
+ component: "kernel",
29
+ category: "topic",
30
+ shape: z.object({
31
+ "globalId": z.string(),
32
+ "name": z.string(),
33
+ "description": z.string().optional(),
34
+ "parentTopicId": idOf("topics").optional(),
35
+ "depth": z.number(),
36
+ "path": z.array(z.string()),
37
+ "type": z.string(),
38
+ "ontologyId": idOf("ontologyDefinitions").optional(),
39
+ "graphScopeProjectId": z.string().optional(),
40
+ "metadata": z.any().optional(),
41
+ "tenantId": z.string().optional(),
42
+ "workspaceId": z.string().optional(),
43
+ "status": TOPIC_STATUS,
44
+ "visibility": TOPIC_VISIBILITY.optional(),
45
+ "createdBy": z.string(),
46
+ "createdAt": z.number(),
47
+ "updatedAt": z.number()
48
+ }),
49
+ indices: [
50
+ { kind: "index", name: "by_parent", columns: ["parentTopicId"] },
51
+ { kind: "index", name: "by_type", columns: ["type"] },
52
+ { kind: "index", name: "by_graph_scope_project", columns: ["graphScopeProjectId"] },
53
+ { kind: "index", name: "by_tenant", columns: ["tenantId"] },
54
+ { kind: "index", name: "by_ontology", columns: ["ontologyId"] },
55
+ { kind: "index", name: "by_path", columns: ["path"] },
56
+ { kind: "search", name: "search_name", searchField: "name", filterFields: ["tenantId", "type"] }
57
+ ]
58
+ });
59
+
60
+ export { topics };
61
+ //# sourceMappingURL=topic.js.map
62
+ //# sourceMappingURL=topic.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/dsl/defineTable.ts","../../../../src/dsl/idOf.ts","../../../../src/schemas/enums.ts","../../../../src/schemas/tables/kernel/topic.ts"],"names":["z"],"mappings":"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","file":"topic.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 * Shared schema enums referenced by the initial table manifest.\n */\n\nimport { z } from 'zod';\n\nexport const NODE_TYPE = z.enum([\"decision\", \"belief\", \"question\", \"theme\", \"deal\", \"topic\", \"claim\", \"evidence\", \"synthesis\", \"answer\", \"atomic_fact\", \"excerpt\", \"source\", \"company\", \"person\", \"investor\", \"function\", \"value_chain\"]);\n\nexport const EDGE_TYPE = z.enum([\"supports\", \"informs\", \"depends_on\", \"extracted_from\", \"contains\", \"tests\", \"supersedes\", \"responds_to\", \"belongs_to\", \"relates_to_thesis\", \"works_at\", \"invested_in\", \"competes_with\", \"participates_in\", \"founded_by\", \"evaluates\", \"performs\", \"function_in\", \"impacts\", \"raised_from\", \"mentioned_in\", \"perspective_on\", \"plays_theme\", \"answers\", \"explores\", \"qualifies\", \"based_on\", \"based_on_belief\", \"based_on_question\", \"blocked_by_contradiction\", \"informed_by_theme\", \"same_as\", \"reinforces\", \"parent_of\", \"child_of\", \"falsified_by\", \"exclusive_with\", \"collapses_if\", \"cascade_from\", \"counterfactual_of\", \"cascade_to\", \"mutually_exclusive\", \"correlates_with\", \"amplifies\", \"precondition_for\", \"in_tension_with\", \"strengthened_by\", \"weakened_by\", \"alternative_to\", \"subsumes\", \"validated_by\", \"required_for\", \"blocks\", \"prerequisite_for\", \"parallel_to\", \"corroborates\", \"extends\", \"same_source_as\", \"same_theme_as\", \"assumes\", \"would_predict\", \"analogous_to\", \"independent_of\", \"implements\", \"violates\", \"co_changes_with\", \"migrating_from\", \"migrating_to\", \"scoped_by\", \"about_entity\", \"entity_referenced_in\", \"contradicts\", \"cites\", \"summarizes\", \"related_to\", \"partially_answers\", \"refines\", \"branches_from\"]);\n\nexport const TOPIC_STATUS = z.enum([\"active\", \"archived\", \"watching\"]);\n\nexport const TOPIC_VISIBILITY = z.enum([\"private\", \"team\", \"firm\", \"external\", \"public\"]);\n","/**\n * Schema contracts for kernel/topic.\n *\n * Mirrored from:\n * - packages/reasoning-kernel/src/adapters/schema/domains/topic.ts\n */\n\nimport { z } from 'zod';\nimport { defineTable, idOf } from '../../../dsl.js';\nimport { TOPIC_STATUS, TOPIC_VISIBILITY } from '../../enums.js';\n\nexport const topics = defineTable({\n name: \"topics\",\n component: \"kernel\",\n category: \"topic\",\n shape: z.object({\n \"globalId\": z.string(),\n \"name\": z.string(),\n \"description\": z.string().optional(),\n \"parentTopicId\": idOf(\"topics\").optional(),\n \"depth\": z.number(),\n \"path\": z.array(z.string()),\n \"type\": z.string(),\n \"ontologyId\": idOf(\"ontologyDefinitions\").optional(),\n \"graphScopeProjectId\": z.string().optional(),\n \"metadata\": z.any().optional(),\n \"tenantId\": z.string().optional(),\n \"workspaceId\": z.string().optional(),\n \"status\": TOPIC_STATUS,\n \"visibility\": TOPIC_VISIBILITY.optional(),\n \"createdBy\": z.string(),\n \"createdAt\": z.number(),\n \"updatedAt\": z.number()\n }),\n indices: [\n { kind: 'index', name: \"by_parent\", columns: [\"parentTopicId\"] },\n { kind: 'index', name: \"by_type\", columns: [\"type\"] },\n { kind: 'index', name: \"by_graph_scope_project\", columns: [\"graphScopeProjectId\"] },\n { kind: 'index', name: \"by_tenant\", columns: [\"tenantId\"] },\n { kind: 'index', name: \"by_ontology\", columns: [\"ontologyId\"] },\n { kind: 'index', name: \"by_path\", columns: [\"path\"] },\n { kind: 'search', name: \"search_name\", searchField: \"name\", filterFields: [\"tenantId\", \"type\"] }\n ],\n});\n"]}
@@ -0,0 +1,45 @@
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 workflowDefinitions: TableContract<{
6
+ tenantId: z.ZodString;
7
+ name: z.ZodString;
8
+ displayName: z.ZodString;
9
+ description: z.ZodOptional<z.ZodString>;
10
+ status: z.ZodEnum<["draft", "active", "deprecated"]>;
11
+ version: z.ZodNumber;
12
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodAny>>;
13
+ createdBy: z.ZodString;
14
+ createdAt: z.ZodNumber;
15
+ updatedAt: z.ZodNumber;
16
+ }>;
17
+ declare const workflowPullRequests: TableContract<{
18
+ topicId: z.ZodOptional<z.ZodString>;
19
+ worktreeId: ConvexIdSchema<"worktrees">;
20
+ status: z.ZodEnum<["pending_review", "changes_requested", "approved", "blocked"]>;
21
+ summary: z.ZodString;
22
+ reviewers: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
23
+ createdBy: z.ZodString;
24
+ createdAt: z.ZodNumber;
25
+ updatedAt: z.ZodNumber;
26
+ resolvedAt: z.ZodOptional<z.ZodNumber>;
27
+ resolvedBy: z.ZodOptional<z.ZodString>;
28
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodAny>>;
29
+ }>;
30
+ declare const workflowStages: TableContract<{
31
+ workflowDefinitionId: ConvexIdSchema<"workflowDefinitions">;
32
+ name: z.ZodString;
33
+ displayName: z.ZodString;
34
+ description: z.ZodOptional<z.ZodString>;
35
+ order: z.ZodNumber;
36
+ entryConditions: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodAny>>;
37
+ exitConditions: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodAny>>;
38
+ gateRules: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodAny>>;
39
+ isOptional: z.ZodOptional<z.ZodBoolean>;
40
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodAny>>;
41
+ createdAt: z.ZodNumber;
42
+ updatedAt: z.ZodNumber;
43
+ }>;
44
+
45
+ export { workflowDefinitions, workflowPullRequests, workflowStages };
@@ -0,0 +1,94 @@
1
+ import { z } from 'zod';
2
+
3
+ // src/schemas/tables/kernel/workflow.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/kernel/workflow.ts
22
+ var workflowDefinitions = defineTable({
23
+ name: "workflowDefinitions",
24
+ component: "kernel",
25
+ category: "workflow",
26
+ shape: z.object({
27
+ "tenantId": z.string(),
28
+ "name": z.string(),
29
+ "displayName": z.string(),
30
+ "description": z.string().optional(),
31
+ "status": z.enum(["draft", "active", "deprecated"]),
32
+ "version": z.number(),
33
+ "metadata": z.record(z.any()).optional(),
34
+ "createdBy": z.string(),
35
+ "createdAt": z.number(),
36
+ "updatedAt": z.number()
37
+ }),
38
+ indices: [
39
+ { kind: "index", name: "by_tenant", columns: ["tenantId"] },
40
+ { kind: "index", name: "by_tenant_name", columns: ["tenantId", "name"] },
41
+ { kind: "index", name: "by_tenant_status", columns: ["tenantId", "status"] }
42
+ ]
43
+ });
44
+ var workflowPullRequests = defineTable({
45
+ name: "workflowPullRequests",
46
+ component: "kernel",
47
+ category: "workflow",
48
+ shape: z.object({
49
+ "topicId": z.string().optional(),
50
+ "worktreeId": idOf("worktrees"),
51
+ "status": z.enum(["pending_review", "changes_requested", "approved", "blocked"]),
52
+ "summary": z.string(),
53
+ "reviewers": z.array(z.string()).optional(),
54
+ "createdBy": z.string(),
55
+ "createdAt": z.number(),
56
+ "updatedAt": z.number(),
57
+ "resolvedAt": z.number().optional(),
58
+ "resolvedBy": z.string().optional(),
59
+ "metadata": z.record(z.any()).optional()
60
+ }),
61
+ indices: [
62
+ { kind: "index", name: "by_worktreeId", columns: ["worktreeId"] },
63
+ { kind: "index", name: "by_status", columns: ["status"] },
64
+ { kind: "index", name: "by_topicId", columns: ["topicId"] },
65
+ { kind: "index", name: "by_topic_status", columns: ["topicId", "status"] }
66
+ ]
67
+ });
68
+ var workflowStages = defineTable({
69
+ name: "workflowStages",
70
+ component: "kernel",
71
+ category: "workflow",
72
+ shape: z.object({
73
+ "workflowDefinitionId": idOf("workflowDefinitions"),
74
+ "name": z.string(),
75
+ "displayName": z.string(),
76
+ "description": z.string().optional(),
77
+ "order": z.number(),
78
+ "entryConditions": z.record(z.any()).optional(),
79
+ "exitConditions": z.record(z.any()).optional(),
80
+ "gateRules": z.record(z.any()).optional(),
81
+ "isOptional": z.boolean().optional(),
82
+ "metadata": z.record(z.any()).optional(),
83
+ "createdAt": z.number(),
84
+ "updatedAt": z.number()
85
+ }),
86
+ indices: [
87
+ { kind: "index", name: "by_workflow", columns: ["workflowDefinitionId"] },
88
+ { kind: "index", name: "by_workflow_order", columns: ["workflowDefinitionId", "order"] }
89
+ ]
90
+ });
91
+
92
+ export { workflowDefinitions, workflowPullRequests, workflowStages };
93
+ //# sourceMappingURL=workflow.js.map
94
+ //# sourceMappingURL=workflow.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/dsl/defineTable.ts","../../../../src/dsl/idOf.ts","../../../../src/schemas/tables/kernel/workflow.ts"],"names":["z"],"mappings":"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","file":"workflow.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 kernel/workflow.\n *\n * Mirrored from:\n * - packages/reasoning-kernel/src/adapters/schema/domains/workflow.ts\n */\n\nimport { z } from 'zod';\nimport { defineTable, idOf } from '../../../dsl.js';\n\nexport const workflowDefinitions = defineTable({\n name: \"workflowDefinitions\",\n component: \"kernel\",\n category: \"workflow\",\n shape: z.object({\n \"tenantId\": z.string(),\n \"name\": z.string(),\n \"displayName\": z.string(),\n \"description\": z.string().optional(),\n \"status\": z.enum([\"draft\", \"active\", \"deprecated\"]),\n \"version\": z.number(),\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_tenant\", columns: [\"tenantId\"] },\n { kind: 'index', name: \"by_tenant_name\", columns: [\"tenantId\", \"name\"] },\n { kind: 'index', name: \"by_tenant_status\", columns: [\"tenantId\", \"status\"] }\n ],\n});\n\nexport const workflowPullRequests = defineTable({\n name: \"workflowPullRequests\",\n component: \"kernel\",\n category: \"workflow\",\n shape: z.object({\n \"topicId\": z.string().optional(),\n \"worktreeId\": idOf(\"worktrees\"),\n \"status\": z.enum([\"pending_review\", \"changes_requested\", \"approved\", \"blocked\"]),\n \"summary\": z.string(),\n \"reviewers\": z.array(z.string()).optional(),\n \"createdBy\": z.string(),\n \"createdAt\": z.number(),\n \"updatedAt\": z.number(),\n \"resolvedAt\": z.number().optional(),\n \"resolvedBy\": z.string().optional(),\n \"metadata\": z.record(z.any()).optional()\n }),\n indices: [\n { kind: 'index', name: \"by_worktreeId\", columns: [\"worktreeId\"] },\n { kind: 'index', name: \"by_status\", columns: [\"status\"] },\n { kind: 'index', name: \"by_topicId\", columns: [\"topicId\"] },\n { kind: 'index', name: \"by_topic_status\", columns: [\"topicId\", \"status\"] }\n ],\n});\n\nexport const workflowStages = defineTable({\n name: \"workflowStages\",\n component: \"kernel\",\n category: \"workflow\",\n shape: z.object({\n \"workflowDefinitionId\": idOf(\"workflowDefinitions\"),\n \"name\": z.string(),\n \"displayName\": z.string(),\n \"description\": z.string().optional(),\n \"order\": z.number(),\n \"entryConditions\": z.record(z.any()).optional(),\n \"exitConditions\": z.record(z.any()).optional(),\n \"gateRules\": z.record(z.any()).optional(),\n \"isOptional\": z.boolean().optional(),\n \"metadata\": z.record(z.any()).optional(),\n \"createdAt\": z.number(),\n \"updatedAt\": z.number()\n }),\n indices: [\n { kind: 'index', name: \"by_workflow\", columns: [\"workflowDefinitionId\"] },\n { kind: 'index', name: \"by_workflow_order\", columns: [\"workflowDefinitionId\", \"order\"] }\n ],\n});\n"]}