@m6d/cortex-server 1.8.0 → 2.0.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 (352) hide show
  1. package/README.md +8 -3
  2. package/contracts/README.md +23 -0
  3. package/contracts/graph/embed.ts +50 -0
  4. package/{src/lib → contracts}/graph/helpers.ts +4 -10
  5. package/{src/lib → contracts}/graph/neo4j.ts +14 -27
  6. package/contracts/graph/schema.ts +65 -0
  7. package/{src/lib → contracts}/graph/types.ts +2 -29
  8. package/contracts/graph.ts +36 -0
  9. package/contracts/runtime.ts +208 -0
  10. package/contracts/wire.ts +143 -0
  11. package/dist/contracts/graph/embed.d.ts +22 -0
  12. package/dist/{src/lib → contracts}/graph/helpers.d.ts +16 -14
  13. package/dist/{src/lib → contracts}/graph/neo4j.d.ts +5 -5
  14. package/dist/contracts/graph/schema.d.ts +62 -0
  15. package/dist/{src/lib → contracts}/graph/types.d.ts +1 -1
  16. package/dist/contracts/graph.d.ts +14 -0
  17. package/dist/contracts/runtime.d.ts +278 -0
  18. package/dist/contracts/wire.d.ts +120 -0
  19. package/dist/src/lib/adapters/database/index.d.ts +61 -0
  20. package/dist/src/lib/adapters/database/message-content.d.ts +30 -0
  21. package/dist/src/lib/adapters/database/mssql/attachments.d.ts +100 -0
  22. package/dist/src/lib/adapters/database/mssql/client.d.ts +8 -0
  23. package/dist/src/lib/adapters/database/mssql/index.d.ts +194 -0
  24. package/dist/src/lib/adapters/database/mssql/llm-requests.d.ts +17 -0
  25. package/dist/src/lib/adapters/database/mssql/messages.d.ts +37 -0
  26. package/dist/src/lib/adapters/database/mssql/threads.d.ts +50 -0
  27. package/dist/src/lib/adapters/database/postgres/attachments.d.ts +113 -0
  28. package/dist/src/lib/adapters/database/postgres/client.d.ts +8 -0
  29. package/dist/src/lib/adapters/database/postgres/index.d.ts +207 -0
  30. package/dist/src/lib/adapters/database/postgres/llm-requests.d.ts +17 -0
  31. package/dist/src/lib/adapters/database/postgres/messages.d.ts +37 -0
  32. package/dist/src/lib/adapters/database/postgres/threads.d.ts +50 -0
  33. package/{src/lib/adapters/storage.ts → dist/src/lib/adapters/storage/index.d.ts} +1 -1
  34. package/dist/src/lib/adapters/{minio.d.ts → storage/minio.d.ts} +1 -1
  35. package/dist/src/lib/ai/active-runs.d.ts +63 -0
  36. package/dist/src/lib/ai/attachments.d.ts +30 -0
  37. package/dist/src/lib/ai/backend-url.d.ts +16 -0
  38. package/dist/src/lib/ai/cc-runtime.d.ts +61 -0
  39. package/dist/src/lib/ai/commit-gate.d.ts +21 -0
  40. package/dist/src/lib/ai/context/builder.d.ts +6 -7
  41. package/dist/src/lib/ai/context/compression-middleware.d.ts +15 -0
  42. package/dist/src/lib/ai/context/compressor.d.ts +2 -13
  43. package/dist/src/lib/ai/context/intra-turn-compressor.d.ts +9 -9
  44. package/dist/src/lib/ai/context/optimize-thread-context.d.ts +9 -0
  45. package/dist/src/lib/ai/context/summarizer.d.ts +3 -3
  46. package/dist/src/lib/ai/context/token-estimator.d.ts +5 -8
  47. package/dist/src/lib/ai/fetch.d.ts +1 -1
  48. package/dist/src/lib/ai/finish-turn.d.ts +23 -0
  49. package/dist/src/lib/ai/helpers.d.ts +37 -4
  50. package/dist/src/lib/ai/index.d.ts +6 -3
  51. package/dist/src/lib/ai/inspector.d.ts +41 -0
  52. package/dist/src/lib/ai/interceptors/request-interceptor.d.ts +6 -5
  53. package/dist/src/lib/ai/prompt.d.ts +5 -4
  54. package/dist/src/lib/ai/redis-runs.d.ts +41 -0
  55. package/dist/src/lib/ai/redis-stream-log.d.ts +39 -0
  56. package/dist/src/lib/ai/tools/execute-code.tool.d.ts +18 -4
  57. package/dist/src/lib/ai/tools/query-graph.tool.d.ts +13 -5
  58. package/dist/src/lib/ai/tools/read-attachment.tool.d.ts +21 -0
  59. package/dist/src/lib/ai/tools/search-common.d.ts +17 -0
  60. package/dist/src/lib/ai/tools/search-knowledge.tool.d.ts +15 -0
  61. package/dist/src/lib/ai/tools/search-services.tool.d.ts +12 -0
  62. package/dist/src/lib/ai/tools/search-tools.tool.d.ts +12 -0
  63. package/dist/src/lib/ai/turn-tools.d.ts +39 -0
  64. package/dist/src/lib/ai/vision/rasterize-pdf.d.ts +26 -0
  65. package/dist/src/lib/ai/vision/rasterize-pdf.worker.d.ts +1 -0
  66. package/dist/src/lib/ai/vision/vision-reader.d.ts +45 -0
  67. package/dist/src/lib/cc/client.d.ts +183 -0
  68. package/dist/src/lib/cc/config-cache.d.ts +20 -0
  69. package/dist/src/lib/cc/format.d.ts +23 -0
  70. package/dist/src/lib/cc/registry.d.ts +34 -0
  71. package/dist/src/lib/cc/types.d.ts +27 -0
  72. package/dist/src/lib/config.d.ts +81 -64
  73. package/dist/src/lib/db/drizzle.config.mssql.d.ts +2 -0
  74. package/dist/src/lib/db/drizzle.config.pg.d.ts +2 -0
  75. package/dist/src/lib/db/migrate.d.ts +7 -1
  76. package/dist/src/lib/db/{schema.d.ts → schema.mssql.d.ts} +138 -29
  77. package/dist/src/lib/db/schema.pg.d.ts +546 -0
  78. package/dist/src/lib/factory.d.ts +2 -12
  79. package/dist/src/lib/graph/index.d.ts +10 -11
  80. package/dist/src/lib/graph/resolver.d.ts +2 -3
  81. package/dist/src/lib/index.d.ts +3 -3
  82. package/dist/src/lib/redis.d.ts +19 -0
  83. package/dist/src/lib/routes/chat.d.ts +1 -1
  84. package/dist/src/lib/routes/files.d.ts +1 -1
  85. package/dist/src/lib/routes/owned-thread.d.ts +17 -0
  86. package/dist/src/lib/routes/threads.d.ts +1 -1
  87. package/dist/src/lib/routes/ws.d.ts +1 -1
  88. package/dist/src/lib/types.d.ts +20 -37
  89. package/dist/src/lib/ws/connections.d.ts +2 -1
  90. package/package.json +33 -18
  91. package/src/lib/adapters/database/index.ts +78 -0
  92. package/src/lib/adapters/database/message-content.ts +39 -0
  93. package/src/lib/adapters/database/mssql/attachments.ts +90 -0
  94. package/src/lib/adapters/database/mssql/client.ts +11 -0
  95. package/src/lib/adapters/database/mssql/index.ts +23 -0
  96. package/src/lib/adapters/database/mssql/llm-requests.ts +43 -0
  97. package/src/lib/adapters/database/mssql/messages.ts +92 -0
  98. package/src/lib/adapters/database/mssql/threads.ts +83 -0
  99. package/src/lib/adapters/database/postgres/attachments.ts +88 -0
  100. package/src/lib/adapters/database/postgres/client.ts +11 -0
  101. package/src/lib/adapters/database/postgres/index.ts +23 -0
  102. package/src/lib/adapters/database/postgres/llm-requests.ts +45 -0
  103. package/src/lib/adapters/database/postgres/messages.ts +92 -0
  104. package/src/lib/adapters/database/postgres/threads.ts +84 -0
  105. package/{dist/src/lib/adapters/storage.d.ts → src/lib/adapters/storage/index.ts} +1 -1
  106. package/src/lib/adapters/{minio.ts → storage/minio.ts} +5 -5
  107. package/src/lib/ai/active-runs.ts +157 -0
  108. package/src/lib/ai/attachments.ts +144 -0
  109. package/src/lib/ai/backend-url.ts +27 -0
  110. package/src/lib/ai/cc-runtime.ts +63 -0
  111. package/src/lib/ai/commit-gate.ts +116 -0
  112. package/src/lib/ai/context/builder.ts +12 -14
  113. package/src/lib/ai/context/compression-middleware.ts +44 -0
  114. package/src/lib/ai/context/compressor.ts +67 -59
  115. package/src/lib/ai/context/intra-turn-compressor.ts +121 -204
  116. package/src/lib/ai/context/optimize-thread-context.ts +50 -0
  117. package/src/lib/ai/context/summarizer.ts +28 -30
  118. package/src/lib/ai/context/token-estimator.ts +35 -30
  119. package/src/lib/ai/fetch.ts +10 -5
  120. package/src/lib/ai/finish-turn.ts +75 -0
  121. package/src/lib/ai/helpers.ts +83 -15
  122. package/src/lib/ai/index.ts +359 -329
  123. package/src/lib/ai/inspector.ts +112 -0
  124. package/src/lib/ai/interceptors/request-interceptor.ts +70 -42
  125. package/src/lib/ai/prompt.ts +126 -125
  126. package/src/lib/ai/redis-runs.ts +167 -0
  127. package/src/lib/ai/redis-stream-log.ts +219 -0
  128. package/src/lib/ai/tools/execute-code.tool.ts +178 -67
  129. package/src/lib/ai/tools/query-graph.tool.ts +7 -8
  130. package/src/lib/ai/tools/read-attachment.tool.ts +59 -0
  131. package/src/lib/ai/tools/search-common.ts +15 -0
  132. package/src/lib/ai/tools/search-knowledge.tool.ts +33 -0
  133. package/src/lib/ai/tools/search-services.tool.ts +31 -0
  134. package/src/lib/ai/tools/search-tools.tool.ts +29 -0
  135. package/src/lib/ai/turn-tools.ts +154 -0
  136. package/src/lib/ai/vision/rasterize-pdf.ts +69 -0
  137. package/src/lib/ai/vision/rasterize-pdf.worker.ts +81 -0
  138. package/src/lib/ai/vision/vision-reader.ts +130 -0
  139. package/src/lib/auth/middleware.ts +5 -3
  140. package/src/lib/cc/client.ts +273 -0
  141. package/src/lib/cc/config-cache.ts +32 -0
  142. package/src/lib/cc/format.ts +96 -0
  143. package/src/lib/cc/registry.ts +62 -0
  144. package/src/lib/cc/types.ts +44 -0
  145. package/src/lib/config.ts +102 -71
  146. package/src/lib/db/drizzle.config.mssql.ts +9 -0
  147. package/src/lib/db/drizzle.config.pg.ts +9 -0
  148. package/src/lib/db/migrate.ts +45 -10
  149. package/src/lib/db/migrations/mssql/20260729092726_talented_wilson_fisk/migration.sql +20 -0
  150. package/src/lib/db/migrations/mssql/20260729092726_talented_wilson_fisk/snapshot.json +497 -0
  151. package/src/lib/db/migrations/mssql/20260801003652_perpetual_blue_shield/migration.sql +1 -0
  152. package/src/lib/db/migrations/mssql/20260801003652_perpetual_blue_shield/snapshot.json +516 -0
  153. package/src/lib/db/migrations/mssql/20260812174642_user_id_text/migration.sql +2 -0
  154. package/src/lib/db/migrations/mssql/20260812174642_user_id_text/snapshot.json +516 -0
  155. package/src/lib/db/migrations/pg/20260801084117_thick_ben_grimm/migration.sql +53 -0
  156. package/src/lib/db/migrations/pg/20260801084117_thick_ben_grimm/snapshot.json +584 -0
  157. package/src/lib/db/migrations/pg/20260812174622_user_id_text/migration.sql +2 -0
  158. package/src/lib/db/migrations/pg/20260812174622_user_id_text/snapshot.json +584 -0
  159. package/src/lib/db/{schema.ts → schema.mssql.ts} +29 -18
  160. package/src/lib/db/schema.pg.ts +95 -0
  161. package/src/lib/factory.ts +44 -89
  162. package/src/lib/graph/index.ts +12 -40
  163. package/src/lib/graph/resolver.ts +146 -116
  164. package/src/lib/index.ts +11 -4
  165. package/src/lib/redis.ts +44 -0
  166. package/src/lib/routes/chat.ts +91 -62
  167. package/src/lib/routes/files.ts +105 -83
  168. package/src/lib/routes/owned-thread.ts +17 -0
  169. package/src/lib/routes/threads.ts +14 -30
  170. package/src/lib/routes/ws.ts +9 -3
  171. package/src/lib/types.ts +37 -36
  172. package/src/lib/ws/connections.ts +9 -1
  173. package/tsconfig.json +48 -0
  174. package/dist/src/lib/adapters/database.d.ts +0 -45
  175. package/dist/src/lib/adapters/mssql.d.ts +0 -3
  176. package/dist/src/lib/ai/active-streams.d.ts +0 -14
  177. package/dist/src/lib/ai/context/index.d.ts +0 -16
  178. package/dist/src/lib/ai/tools/capture-files.tool.d.ts +0 -6
  179. package/dist/src/lib/cli/extract-endpoints.d.ts +0 -6
  180. package/dist/src/lib/graph/expand-domains.d.ts +0 -2
  181. package/dist/src/lib/graph/generate-cypher.d.ts +0 -22
  182. package/dist/src/lib/graph/seed.d.ts +0 -19
  183. package/dist/src/lib/graph/validate.d.ts +0 -2
  184. package/dist/src/lib/routes/index.d.ts +0 -4
  185. package/dist/src/lib/ws/events.d.ts +0 -39
  186. package/dist/src/lib/ws/index.d.ts +0 -3
  187. package/dist/src/lib/ws/notify.d.ts +0 -2
  188. package/src/lib/adapters/database.ts +0 -48
  189. package/src/lib/adapters/mssql.ts +0 -231
  190. package/src/lib/ai/active-streams.ts +0 -123
  191. package/src/lib/ai/context/index.ts +0 -80
  192. package/src/lib/ai/tools/capture-files.tool.ts +0 -20
  193. package/src/lib/cli/extract-endpoints.ts +0 -550
  194. package/src/lib/graph/expand-domains.ts +0 -276
  195. package/src/lib/graph/generate-cypher.ts +0 -192
  196. package/src/lib/graph/seed.ts +0 -162
  197. package/src/lib/graph/validate.ts +0 -78
  198. package/src/lib/routes/index.ts +0 -4
  199. package/src/lib/ws/events.ts +0 -39
  200. package/src/lib/ws/index.ts +0 -11
  201. package/src/lib/ws/notify.ts +0 -9
  202. package/src/sample/db/client.ts +0 -9
  203. package/src/sample/db/migrations/20260411023125_rich_purple_man/migration.sql +0 -5
  204. package/src/sample/db/migrations/20260411023125_rich_purple_man/snapshot.json +0 -50
  205. package/src/sample/db/schema.ts +0 -10
  206. package/src/sample/domains/account/concepts/session.concept.ts +0 -17
  207. package/src/sample/domains/account/endpoints/listCurrentSessions.endpoint.ts +0 -31
  208. package/src/sample/domains/account/endpoints/revokeAllOtherSessions.endpoint.ts +0 -22
  209. package/src/sample/domains/account/endpoints/revokeCurrentSession.endpoint.ts +0 -33
  210. package/src/sample/domains/account/index.ts +0 -18
  211. package/src/sample/domains/appraisals/concepts/appraisalCycle.concept.ts +0 -15
  212. package/src/sample/domains/appraisals/concepts/appraisalRecord.concept.ts +0 -20
  213. package/src/sample/domains/appraisals/concepts/appraisalRecordCompetency.concept.ts +0 -10
  214. package/src/sample/domains/appraisals/concepts/appraisalRecordFunctionalRequirement.concept.ts +0 -10
  215. package/src/sample/domains/appraisals/concepts/appraisalRecordGoal.concept.ts +0 -17
  216. package/src/sample/domains/appraisals/endpoints/getAppraisalRecordById.endpoint.ts +0 -321
  217. package/src/sample/domains/appraisals/endpoints/getAppraisalRecordCompetencies.endpoint.ts +0 -120
  218. package/src/sample/domains/appraisals/endpoints/getAppraisalRecordFunctionalRequirements.endpoint.ts +0 -126
  219. package/src/sample/domains/appraisals/endpoints/getAppraisalRecordGoals.endpoint.ts +0 -104
  220. package/src/sample/domains/appraisals/endpoints/getAppraisalRecordScore.endpoint.ts +0 -58
  221. package/src/sample/domains/appraisals/endpoints/listAppraisalCyclesSimple.endpoint.ts +0 -52
  222. package/src/sample/domains/appraisals/endpoints/listAppraisalRecords.endpoint.ts +0 -245
  223. package/src/sample/domains/appraisals/endpoints/listAppraisalTemplatesSimple.endpoint.ts +0 -52
  224. package/src/sample/domains/appraisals/index.ts +0 -40
  225. package/src/sample/domains/appraisals/rules/appraisalRecordScoping.rule.ts +0 -7
  226. package/src/sample/domains/attendance/concepts/attendancePermission.concept.ts +0 -17
  227. package/src/sample/domains/attendance/concepts/attendanceTransaction.concept.ts +0 -17
  228. package/src/sample/domains/attendance/concepts/publicHoliday.concept.ts +0 -10
  229. package/src/sample/domains/attendance/concepts/punch.concept.ts +0 -19
  230. package/src/sample/domains/attendance/endpoints/getAttendanceTransactionById.endpoint.ts +0 -444
  231. package/src/sample/domains/attendance/endpoints/getCurrentAttendanceProfile.endpoint.ts +0 -886
  232. package/src/sample/domains/attendance/endpoints/getCurrentAttendanceStatistics.endpoint.ts +0 -49
  233. package/src/sample/domains/attendance/endpoints/listAttendancePermissions.endpoint.ts +0 -176
  234. package/src/sample/domains/attendance/endpoints/listAttendanceTransactionStates.endpoint.ts +0 -26
  235. package/src/sample/domains/attendance/endpoints/listAttendanceTransactions.endpoint.ts +0 -373
  236. package/src/sample/domains/attendance/endpoints/listPublicHolidaysSimple.endpoint.ts +0 -52
  237. package/src/sample/domains/attendance/endpoints/listPunchTypes.endpoint.ts +0 -25
  238. package/src/sample/domains/attendance/endpoints/listPunches.endpoint.ts +0 -178
  239. package/src/sample/domains/attendance/index.ts +0 -41
  240. package/src/sample/domains/attendance/services/attendancePermissions.service.ts +0 -15
  241. package/src/sample/domains/employees/concepts/employee.concept.ts +0 -20
  242. package/src/sample/domains/employees/concepts/employeeBankAccount.concept.ts +0 -19
  243. package/src/sample/domains/employees/concepts/employeeChild.concept.ts +0 -19
  244. package/src/sample/domains/employees/concepts/employeeDocument.concept.ts +0 -21
  245. package/src/sample/domains/employees/concepts/employeeEvent.concept.ts +0 -21
  246. package/src/sample/domains/employees/concepts/employeeExperience.concept.ts +0 -18
  247. package/src/sample/domains/employees/concepts/employeeJobLevelChange.concept.ts +0 -21
  248. package/src/sample/domains/employees/concepts/employeeMedal.concept.ts +0 -20
  249. package/src/sample/domains/employees/concepts/employeeQualification.concept.ts +0 -20
  250. package/src/sample/domains/employees/concepts/employeeSpouse.concept.ts +0 -21
  251. package/src/sample/domains/employees/concepts/employeeViolation.concept.ts +0 -19
  252. package/src/sample/domains/employees/endpoints/getCurrentEmployee.endpoint.ts +0 -1651
  253. package/src/sample/domains/employees/endpoints/getCurrentIdentity.endpoint.ts +0 -197
  254. package/src/sample/domains/employees/endpoints/getCurrentManagers.endpoint.ts +0 -142
  255. package/src/sample/domains/employees/endpoints/getEmployeeById.endpoint.ts +0 -1659
  256. package/src/sample/domains/employees/endpoints/getEmployeeStatistics.endpoint.ts +0 -43
  257. package/src/sample/domains/employees/endpoints/listBankAccounts.endpoint.ts +0 -223
  258. package/src/sample/domains/employees/endpoints/listChildren.endpoint.ts +0 -211
  259. package/src/sample/domains/employees/endpoints/listDocuments.endpoint.ts +0 -222
  260. package/src/sample/domains/employees/endpoints/listEmployeesSimple.endpoint.ts +0 -156
  261. package/src/sample/domains/employees/endpoints/listEvents.endpoint.ts +0 -120
  262. package/src/sample/domains/employees/endpoints/listExperiences.endpoint.ts +0 -188
  263. package/src/sample/domains/employees/endpoints/listJobLevelChanges.endpoint.ts +0 -240
  264. package/src/sample/domains/employees/endpoints/listMedals.endpoint.ts +0 -266
  265. package/src/sample/domains/employees/endpoints/listQualifications.endpoint.ts +0 -265
  266. package/src/sample/domains/employees/endpoints/listSpouses.endpoint.ts +0 -278
  267. package/src/sample/domains/employees/endpoints/listViolations.endpoint.ts +0 -245
  268. package/src/sample/domains/employees/index.ts +0 -75
  269. package/src/sample/domains/employees/services/employees.service.ts +0 -181
  270. package/src/sample/domains/index.ts +0 -10
  271. package/src/sample/domains/leaves/concepts/leave.concept.ts +0 -21
  272. package/src/sample/domains/leaves/concepts/leaveBalance.concept.ts +0 -17
  273. package/src/sample/domains/leaves/concepts/leaveBalanceTransaction.concept.ts +0 -16
  274. package/src/sample/domains/leaves/concepts/leaveType.concept.ts +0 -13
  275. package/src/sample/domains/leaves/concepts/leaveTypes.concept.ts +0 -205
  276. package/src/sample/domains/leaves/endpoints/getBalance.endpoint.ts +0 -53
  277. package/src/sample/domains/leaves/endpoints/getLeaveById.endpoint.ts +0 -53
  278. package/src/sample/domains/leaves/endpoints/listBalanceTransactions.endpoint.ts +0 -196
  279. package/src/sample/domains/leaves/endpoints/listBalanceTypes.endpoint.ts +0 -26
  280. package/src/sample/domains/leaves/endpoints/listBalances.endpoint.ts +0 -201
  281. package/src/sample/domains/leaves/endpoints/listLeaveTypes.endpoint.ts +0 -28
  282. package/src/sample/domains/leaves/endpoints/listLeaves.endpoint.ts +0 -234
  283. package/src/sample/domains/leaves/index.ts +0 -38
  284. package/src/sample/domains/leaves/services/leaveRequests.service.ts +0 -232
  285. package/src/sample/domains/notifications/concepts/notification.concept.ts +0 -19
  286. package/src/sample/domains/notifications/endpoints/countMyNotifications.endpoint.ts +0 -21
  287. package/src/sample/domains/notifications/endpoints/getMyNotification.endpoint.ts +0 -57
  288. package/src/sample/domains/notifications/endpoints/listMyNotifications.endpoint.ts +0 -59
  289. package/src/sample/domains/notifications/endpoints/markMyNotificationAsRead.endpoint.ts +0 -32
  290. package/src/sample/domains/notifications/index.ts +0 -20
  291. package/src/sample/domains/payroll/concepts/payslip.concept.ts +0 -18
  292. package/src/sample/domains/payroll/concepts/salaryCertificate.concept.ts +0 -17
  293. package/src/sample/domains/payroll/concepts/salaryCertificateRequestingEntity.concept.ts +0 -8
  294. package/src/sample/domains/payroll/endpoints/getPayslipById.endpoint.ts +0 -238
  295. package/src/sample/domains/payroll/endpoints/listPayslips.endpoint.ts +0 -216
  296. package/src/sample/domains/payroll/endpoints/listSalaryCertificateLanguages.endpoint.ts +0 -25
  297. package/src/sample/domains/payroll/endpoints/listSalaryCertificateRequestingEntities.endpoint.ts +0 -62
  298. package/src/sample/domains/payroll/endpoints/listSalaryCertificateTypes.endpoint.ts +0 -24
  299. package/src/sample/domains/payroll/endpoints/listSalaryCertificates.endpoint.ts +0 -122
  300. package/src/sample/domains/payroll/endpoints/previewSalaryCertificate.endpoint.ts +0 -45
  301. package/src/sample/domains/payroll/index.ts +0 -32
  302. package/src/sample/domains/payroll/rules/payrollEmployeeContext.rule.ts +0 -7
  303. package/src/sample/domains/payroll/services/salaryCertificates.service.ts +0 -15
  304. package/src/sample/domains/servicing/concepts/service.concept.ts +0 -6
  305. package/src/sample/domains/servicing/concepts/serviceRequest.concept.ts +0 -12
  306. package/src/sample/domains/servicing/concepts/serviceRequestApproval.concept.ts +0 -9
  307. package/src/sample/domains/servicing/endpoints/cancelServiceRequest.endpoint.ts +0 -21
  308. package/src/sample/domains/servicing/endpoints/createServiceRequest.endpoint.ts +0 -511
  309. package/src/sample/domains/servicing/endpoints/getServiceRequest.endpoint.ts +0 -352
  310. package/src/sample/domains/servicing/endpoints/getServiceRequestFormItems.endpoint.ts +0 -219
  311. package/src/sample/domains/servicing/endpoints/getServiceRequestTransactionFormItems.endpoint.ts +0 -216
  312. package/src/sample/domains/servicing/endpoints/getServiceStates.endpoint.ts +0 -47
  313. package/src/sample/domains/servicing/endpoints/invokeServiceRequestAction.endpoint.ts +0 -139
  314. package/src/sample/domains/servicing/endpoints/listServiceRequests.endpoint.ts +0 -292
  315. package/src/sample/domains/servicing/endpoints/listServices.endpoint.ts +0 -108
  316. package/src/sample/domains/servicing/endpoints/updateServiceRequest.endpoint.ts +0 -355
  317. package/src/sample/domains/servicing/index.ts +0 -44
  318. package/src/sample/domains/servicing/rules/checkValidActions.rule.ts +0 -7
  319. package/src/sample/domains/servicing/rules/createServiceRequest.rule.ts +0 -7
  320. package/src/sample/domains/servicing/rules/filterServiceRequestsByState.rule.ts +0 -7
  321. package/src/sample/domains/servicing/rules/passingOptionFields.rule.ts +0 -7
  322. package/src/sample/domains/shared/rules/pagination.rule.ts +0 -7
  323. package/src/sample/domains/suggestions/concepts/suggestion.concept.ts +0 -19
  324. package/src/sample/domains/suggestions/concepts/suggestionCategory.concept.ts +0 -7
  325. package/src/sample/domains/suggestions/concepts/suggestionImpactLevel.concept.ts +0 -7
  326. package/src/sample/domains/suggestions/endpoints/createSuggestion.endpoint.ts +0 -705
  327. package/src/sample/domains/suggestions/endpoints/deleteSuggestion.endpoint.ts +0 -32
  328. package/src/sample/domains/suggestions/endpoints/getSuggestionById.endpoint.ts +0 -635
  329. package/src/sample/domains/suggestions/endpoints/listSuggestionCategories.endpoint.ts +0 -62
  330. package/src/sample/domains/suggestions/endpoints/listSuggestionImpactLevels.endpoint.ts +0 -62
  331. package/src/sample/domains/suggestions/endpoints/listSuggestionStates.endpoint.ts +0 -24
  332. package/src/sample/domains/suggestions/endpoints/listSuggestions.endpoint.ts +0 -132
  333. package/src/sample/domains/suggestions/endpoints/updateSuggestion.endpoint.ts +0 -690
  334. package/src/sample/domains/suggestions/endpoints/updateSuggestionState.endpoint.ts +0 -39
  335. package/src/sample/domains/suggestions/index.ts +0 -34
  336. package/src/sample/domains/suggestions/rules/suggestionScope.rule.ts +0 -7
  337. package/src/sample/domains/surveys/concepts/survey.concept.ts +0 -10
  338. package/src/sample/domains/surveys/concepts/surveyResponse.concept.ts +0 -14
  339. package/src/sample/domains/surveys/endpoints/getSurveyResponseById.endpoint.ts +0 -131
  340. package/src/sample/domains/surveys/endpoints/getTargetedSurvey.endpoint.ts +0 -129
  341. package/src/sample/domains/surveys/endpoints/listTargetedSurveys.endpoint.ts +0 -160
  342. package/src/sample/domains/surveys/endpoints/respondToSurvey.endpoint.ts +0 -144
  343. package/src/sample/domains/surveys/index.ts +0 -21
  344. package/src/sample/drizzle.config.ts +0 -11
  345. package/src/sample/index.bak.ts +0 -341
  346. package/src/sample/index.ts +0 -318
  347. package/src/sample/official-statements/defaults.ts +0 -57
  348. package/src/sample/official-statements/routes.ts +0 -137
  349. package/src/sample/official-statements/service.ts +0 -148
  350. package/src/sample/official-statements/types.ts +0 -23
  351. /package/src/lib/db/migrations/{20260326231647_nice_speedball → mssql/20260326231647_nice_speedball}/migration.sql +0 -0
  352. /package/src/lib/db/migrations/{20260326231647_nice_speedball → mssql/20260326231647_nice_speedball}/snapshot.json +0 -0
@@ -1,355 +0,0 @@
1
- import { defineEndpoint } from "@m6d/cortex-server";
2
- import { serviceRequestConcept } from "../concepts/serviceRequest.concept";
3
- import { createServiceRequestRule } from "../rules/createServiceRequest.rule";
4
- import { passingOptionFieldsRule } from "../rules/passingOptionFields.rule";
5
-
6
- export const updateServiceRequestEndpoint = defineEndpoint({
7
- name: "Update service request",
8
- path: "/servicing/requests/{id}",
9
- method: "PUT",
10
- description:
11
- "Update the data of a draft service request (before it is submitted). The body is the full updated request data JSON.",
12
- mutates: [serviceRequestConcept],
13
-
14
- governedBy: [createServiceRequestRule, passingOptionFieldsRule],
15
-
16
- // @auto-generated-start
17
- autoGenerated: {
18
- params: [{ name: "id", required: true, type: "uuid" }] as const,
19
- body: [] as const,
20
- response: [
21
- { name: "id", required: false, type: "uuid" },
22
- { name: "createdTime", required: false, type: "datetime" },
23
- {
24
- name: "service",
25
- required: false,
26
- type: "object",
27
- properties: [
28
- { name: "id", required: false, type: "uuid" },
29
- { name: "builtInId", required: false, type: "string" },
30
- {
31
- name: "name",
32
- required: false,
33
- type: "object",
34
- properties: [
35
- { name: "ar", required: false, type: "string" },
36
- { name: "en", required: false, type: "string" },
37
- ],
38
- },
39
- {
40
- name: "description",
41
- required: false,
42
- type: "object",
43
- properties: [
44
- { name: "ar", required: false, type: "string" },
45
- { name: "en", required: false, type: "string" },
46
- ],
47
- },
48
- {
49
- name: "subcategory",
50
- required: false,
51
- type: "object",
52
- properties: [
53
- { name: "id", required: false, type: "uuid" },
54
- {
55
- name: "name",
56
- required: false,
57
- type: "object",
58
- properties: [
59
- { name: "ar", required: false, type: "string" },
60
- { name: "en", required: false, type: "string" },
61
- ],
62
- },
63
- {
64
- name: "description",
65
- required: false,
66
- type: "object",
67
- properties: [
68
- { name: "ar", required: false, type: "string" },
69
- { name: "en", required: false, type: "string" },
70
- ],
71
- },
72
- {
73
- name: "category",
74
- required: false,
75
- type: "object",
76
- properties: [
77
- { name: "id", required: false, type: "uuid" },
78
- {
79
- name: "name",
80
- required: false,
81
- type: "object",
82
- properties: [
83
- { name: "ar", required: false, type: "string" },
84
- { name: "en", required: false, type: "string" },
85
- ],
86
- },
87
- ],
88
- },
89
- ],
90
- },
91
- { name: "isProxyApplicationEnabled", required: false, type: "boolean" },
92
- { name: "isArchived", required: false, type: "boolean" },
93
- { name: "isSystemManaged", required: false, type: "boolean" },
94
- {
95
- name: "states",
96
- required: false,
97
- type: "object",
98
- isArray: true,
99
- properties: [
100
- { name: "value", required: false, type: "string" },
101
- {
102
- name: "name",
103
- required: false,
104
- type: "object",
105
- properties: [
106
- { name: "ar", required: false, type: "string" },
107
- { name: "en", required: false, type: "string" },
108
- ],
109
- },
110
- {
111
- name: "description",
112
- required: false,
113
- type: "object",
114
- properties: [
115
- { name: "ar", required: false, type: "string" },
116
- { name: "en", required: false, type: "string" },
117
- ],
118
- },
119
- ],
120
- },
121
- {
122
- name: "actions",
123
- required: false,
124
- type: "object",
125
- isArray: true,
126
- properties: [
127
- { name: "key", required: false, type: "string" },
128
- {
129
- name: "name",
130
- required: false,
131
- type: "object",
132
- properties: [
133
- { name: "ar", required: false, type: "string" },
134
- { name: "en", required: false, type: "string" },
135
- ],
136
- },
137
- ],
138
- },
139
- {
140
- name: "requirements",
141
- required: false,
142
- type: "object",
143
- isArray: true,
144
- properties: [
145
- {
146
- name: "name",
147
- required: false,
148
- type: "object",
149
- properties: [
150
- { name: "ar", required: false, type: "string" },
151
- { name: "en", required: false, type: "string" },
152
- ],
153
- },
154
- ],
155
- },
156
- ],
157
- },
158
- {
159
- name: "user",
160
- required: false,
161
- type: "object",
162
- properties: [
163
- { name: "id", required: false, type: "uuid" },
164
- {
165
- name: "name",
166
- required: false,
167
- type: "object",
168
- properties: [
169
- { name: "ar", required: false, type: "string" },
170
- { name: "en", required: false, type: "string" },
171
- ],
172
- },
173
- { name: "globalExtraData", required: false, type: "unknown" },
174
- ],
175
- },
176
- {
177
- name: "applyingUser",
178
- required: false,
179
- type: "object",
180
- properties: [
181
- { name: "id", required: false, type: "uuid" },
182
- {
183
- name: "name",
184
- required: false,
185
- type: "object",
186
- properties: [
187
- { name: "ar", required: false, type: "string" },
188
- { name: "en", required: false, type: "string" },
189
- ],
190
- },
191
- { name: "globalExtraData", required: false, type: "unknown" },
192
- ],
193
- },
194
- {
195
- name: "state",
196
- required: false,
197
- type: "object",
198
- properties: [
199
- { name: "value", required: false, type: "string" },
200
- {
201
- name: "name",
202
- required: false,
203
- type: "object",
204
- properties: [
205
- { name: "ar", required: false, type: "string" },
206
- { name: "en", required: false, type: "string" },
207
- ],
208
- },
209
- {
210
- name: "description",
211
- required: false,
212
- type: "object",
213
- properties: [
214
- { name: "ar", required: false, type: "string" },
215
- { name: "en", required: false, type: "string" },
216
- ],
217
- },
218
- ],
219
- },
220
- {
221
- name: "lastAction",
222
- required: false,
223
- type: "object",
224
- properties: [
225
- { name: "key", required: false, type: "string" },
226
- {
227
- name: "name",
228
- required: false,
229
- type: "object",
230
- properties: [
231
- { name: "ar", required: false, type: "string" },
232
- { name: "en", required: false, type: "string" },
233
- ],
234
- },
235
- ],
236
- },
237
- { name: "data", required: false, type: "object" },
238
- { name: "latestTransactionCreatedTime", required: false, type: "datetime" },
239
- {
240
- name: "ability",
241
- required: false,
242
- type: "object",
243
- properties: [
244
- { name: "canWrite", required: false, type: "boolean" },
245
- { name: "canDelete", required: false, type: "boolean" },
246
- { name: "canCancel", required: false, type: "boolean" },
247
- ],
248
- },
249
- { name: "isUserSuspended", required: false, type: "boolean" },
250
- { name: "globalExtraData", required: false, type: "unknown" },
251
- { name: "validActions", required: false, type: "string", isArray: true },
252
- {
253
- name: "transactions",
254
- required: false,
255
- type: "object",
256
- isArray: true,
257
- properties: [
258
- { name: "id", required: false, type: "uuid" },
259
- { name: "createdTime", required: false, type: "datetime" },
260
- {
261
- name: "user",
262
- required: false,
263
- type: "object",
264
- properties: [
265
- { name: "id", required: false, type: "uuid" },
266
- {
267
- name: "name",
268
- required: false,
269
- type: "object",
270
- properties: [
271
- { name: "ar", required: false, type: "string" },
272
- { name: "en", required: false, type: "string" },
273
- ],
274
- },
275
- ],
276
- },
277
- {
278
- name: "fromState",
279
- required: false,
280
- type: "object",
281
- properties: [
282
- { name: "value", required: false, type: "string" },
283
- {
284
- name: "name",
285
- required: false,
286
- type: "object",
287
- properties: [
288
- { name: "ar", required: false, type: "string" },
289
- { name: "en", required: false, type: "string" },
290
- ],
291
- },
292
- {
293
- name: "description",
294
- required: false,
295
- type: "object",
296
- properties: [
297
- { name: "ar", required: false, type: "string" },
298
- { name: "en", required: false, type: "string" },
299
- ],
300
- },
301
- ],
302
- },
303
- {
304
- name: "action",
305
- required: false,
306
- type: "object",
307
- properties: [
308
- { name: "key", required: false, type: "string" },
309
- {
310
- name: "name",
311
- required: false,
312
- type: "object",
313
- properties: [
314
- { name: "ar", required: false, type: "string" },
315
- { name: "en", required: false, type: "string" },
316
- ],
317
- },
318
- ],
319
- },
320
- {
321
- name: "toState",
322
- required: false,
323
- type: "object",
324
- properties: [
325
- { name: "value", required: false, type: "string" },
326
- {
327
- name: "name",
328
- required: false,
329
- type: "object",
330
- properties: [
331
- { name: "ar", required: false, type: "string" },
332
- { name: "en", required: false, type: "string" },
333
- ],
334
- },
335
- {
336
- name: "description",
337
- required: false,
338
- type: "object",
339
- properties: [
340
- { name: "ar", required: false, type: "string" },
341
- { name: "en", required: false, type: "string" },
342
- ],
343
- },
344
- ],
345
- },
346
- { name: "data", required: false, type: "object" },
347
- ],
348
- },
349
- ] as const,
350
- successStatus: 200,
351
- errorStatuses: [401, 404],
352
- responseKind: "object",
353
- } as const,
354
- // @auto-generated-end
355
- });
@@ -1,44 +0,0 @@
1
- import { defineDomain } from "@m6d/cortex-server";
2
- import type { DomainDef } from "@m6d/cortex-server";
3
- import { serviceConcept } from "./concepts/service.concept";
4
- import { serviceRequestConcept } from "./concepts/serviceRequest.concept";
5
- import { serviceRequestApprovalConcept } from "./concepts/serviceRequestApproval.concept";
6
- import { cancelServiceRequestEndpoint } from "./endpoints/cancelServiceRequest.endpoint";
7
- import { createServiceRequestEndpoint } from "./endpoints/createServiceRequest.endpoint";
8
- import { getServiceRequestEndpoint } from "./endpoints/getServiceRequest.endpoint";
9
- import { getServiceRequestFormItems } from "./endpoints/getServiceRequestFormItems.endpoint";
10
- import { getServiceRequestTransactionFormItemsEndpoint } from "./endpoints/getServiceRequestTransactionFormItems.endpoint";
11
- import { getServiceStatesEndpoint } from "./endpoints/getServiceStates.endpoint";
12
- import { invokeServiceRequestActionEndpoint } from "./endpoints/invokeServiceRequestAction.endpoint";
13
- import { listServiceRequestsEndpoint } from "./endpoints/listServiceRequests.endpoint";
14
- import { listServicesEndpoint } from "./endpoints/listServices.endpoint";
15
- import { updateServiceRequestEndpoint } from "./endpoints/updateServiceRequest.endpoint";
16
- import { checkValidActionsRule } from "./rules/checkValidActions.rule";
17
- import { createServiceRequestRule } from "./rules/createServiceRequest.rule";
18
- import { filterServiceRequestsByStateRule } from "./rules/filterServiceRequestsByState.rule";
19
- import { passingOptionFieldsRule } from "./rules/passingOptionFields.rule";
20
-
21
- export const servicingDomain: DomainDef = defineDomain({
22
- name: "Servicing",
23
- description:
24
- "Service request workflows and servicing APIs, including service listing, request creation, state transitions, and form metadata retrieval.",
25
- concepts: [serviceConcept, serviceRequestConcept, serviceRequestApprovalConcept],
26
- endpoints: [
27
- cancelServiceRequestEndpoint,
28
- createServiceRequestEndpoint,
29
- getServiceRequestEndpoint,
30
- getServiceRequestFormItems,
31
- getServiceRequestTransactionFormItemsEndpoint,
32
- getServiceStatesEndpoint,
33
- invokeServiceRequestActionEndpoint,
34
- listServiceRequestsEndpoint,
35
- listServicesEndpoint,
36
- updateServiceRequestEndpoint,
37
- ],
38
- rules: [
39
- createServiceRequestRule,
40
- passingOptionFieldsRule,
41
- filterServiceRequestsByStateRule,
42
- checkValidActionsRule,
43
- ],
44
- });
@@ -1,7 +0,0 @@
1
- import { defineRule } from "@m6d/cortex-server";
2
-
3
- export const checkValidActionsRule = defineRule({
4
- name: "Check valid actions before invoking",
5
- description:
6
- 'Before invoking an action on a service request, always fetch the request first (GET /servicing/requests/{id}) and check the "validActions" array to confirm the desired action is available. The valid actions depend on the request\'s current state and the current user\'s permissions. For newly created requests, "submit" is typically the only valid action. For submitted requests, other users may see "approve", "return", or "reject".',
7
- });
@@ -1,7 +0,0 @@
1
- import { defineRule } from "@m6d/cortex-server";
2
- import { getServiceRequestFormItems } from "../endpoints/getServiceRequestFormItems.endpoint";
3
-
4
- export const createServiceRequestRule = defineRule({
5
- name: "Ensure the correct data is passed before creating a request",
6
- description: `Before you create the request, you need to pass in the correct data, which can be fetched from the ${getServiceRequestFormItems.path}`,
7
- });
@@ -1,7 +0,0 @@
1
- import { defineRule } from "@m6d/cortex-server";
2
-
3
- export const filterServiceRequestsByStateRule = defineRule({
4
- name: "Service request state filter requires single service",
5
- description:
6
- "When filtering service requests by state, exactly one serviceIds value must be provided. The valid state values are specific to each service and must be fetched from GET /servicing/services/{id}/states before using them as a filter.",
7
- });
@@ -1,7 +0,0 @@
1
- import { defineRule } from "@m6d/cortex-server";
2
-
3
- export const passingOptionFieldsRule = defineRule({
4
- name: "Passing option field in request/transaction forms",
5
- description:
6
- 'When filling the data for option fields, make sure to set in the following format: `{ "id": "the actual value", "name": { "ar": "Arabic label from the form", "en": "English label from the form" } }`',
7
- });
@@ -1,7 +0,0 @@
1
- import { defineRule } from "@m6d/cortex-server";
2
-
3
- export const paginationRule = defineRule({
4
- name: "Pagination required for large lists",
5
- description:
6
- 'NEVER use pageSize=-1 on list endpoints that return employee-scoped records (leaves, service requests, balance transactions). These can have thousands of records and will exceed response size limits. Always use the default pageSize (usually 20) and rely on count/filteredCount from the response to tell the user the total. If the user asks for "all" records, fetch the first page and say "You have N total, here are the most recent 20. Would you like to see more?". Only use pageSize=-1 on small reference/lookup endpoints like leave types, balance types, and services list.',
7
- });
@@ -1,19 +0,0 @@
1
- import { defineConcept } from "@m6d/cortex-server";
2
- import { paginationRule } from "../../shared/rules/pagination.rule";
3
-
4
- export const suggestionConcept = defineConcept({
5
- name: "Suggestion",
6
- description:
7
- "An employee suggestion or idea submitted by the current user, including its category, impact level, files, employees involved, and lifecycle state such as draft, submitted, returned, or completed.",
8
- aliases: [
9
- "suggestion",
10
- "idea",
11
- "my suggestions",
12
- "employee suggestion",
13
- "اقتراح",
14
- "اقتراحاتي",
15
- "فكرة",
16
- "أفكاري",
17
- ],
18
- governedBy: [paginationRule],
19
- });
@@ -1,7 +0,0 @@
1
- import { defineConcept } from "@m6d/cortex-server";
2
-
3
- export const suggestionCategoryConcept = defineConcept({
4
- name: "Suggestion Category",
5
- description: "A selectable category used when creating or updating a suggestion.",
6
- aliases: ["suggestion category", "category", "تصنيف الاقتراح"],
7
- });
@@ -1,7 +0,0 @@
1
- import { defineConcept } from "@m6d/cortex-server";
2
-
3
- export const suggestionImpactLevelConcept = defineConcept({
4
- name: "Suggestion Impact Level",
5
- description: "A selectable impact level describing the expected impact of a suggestion.",
6
- aliases: ["impact level", "suggestion impact", "مستوى التأثير"],
7
- });