@dakkitor/api-contracts 1.1.153 → 1.4.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 (340) hide show
  1. package/dist/abilities/abilities.contract.d.ts +53 -1
  2. package/dist/abilities/abilities.contract.d.ts.map +1 -1
  3. package/dist/abilities/abilities.contract.js +92 -1
  4. package/dist/abilities/abilities.contract.spec.d.ts +2 -0
  5. package/dist/abilities/abilities.contract.spec.d.ts.map +1 -0
  6. package/dist/abilities/abilities.contract.spec.js +145 -0
  7. package/dist/abilities/admin-dashboard.abilities.test.d.ts +2 -0
  8. package/dist/abilities/admin-dashboard.abilities.test.d.ts.map +1 -0
  9. package/dist/abilities/admin-dashboard.abilities.test.js +33 -0
  10. package/dist/abilities/admin.abilities.json +19 -0
  11. package/dist/abilities/bot.abilities.json +13 -4
  12. package/dist/abilities/first-agent.abilities.json +317 -70
  13. package/dist/abilities/interconnection.abilities.json +75 -0
  14. package/dist/abilities/kpi.abilities.json +68 -0
  15. package/dist/abilities/office-manager.abilities.json +111 -0
  16. package/dist/abilities/second-agent.abilities.json +417 -43
  17. package/dist/abilities/team-leads.json +71 -6
  18. package/dist/abilities/worker-curator.abilities.json +233 -0
  19. package/dist/actives/actives.contract.d.ts +19379 -23651
  20. package/dist/actives/actives.contract.d.ts.map +1 -1
  21. package/dist/actives/actives.contract.js +517 -114
  22. package/dist/agent-client-links/agent-client-links.contract.d.ts +1431 -291
  23. package/dist/agent-client-links/agent-client-links.contract.d.ts.map +1 -1
  24. package/dist/auth/auth.contract.d.ts +1050 -81
  25. package/dist/auth/auth.contract.d.ts.map +1 -1
  26. package/dist/auth/auth.contract.js +115 -3
  27. package/dist/bookings/booking-worker-summary.spec.d.ts +2 -0
  28. package/dist/bookings/booking-worker-summary.spec.d.ts.map +1 -0
  29. package/dist/bookings/booking-worker-summary.spec.js +25 -0
  30. package/dist/bookings/bookings.contract.d.ts +20643 -26117
  31. package/dist/bookings/bookings.contract.d.ts.map +1 -1
  32. package/dist/bookings/bookings.contract.js +383 -91
  33. package/dist/bookings/bookings.contract.spec.d.ts +2 -0
  34. package/dist/bookings/bookings.contract.spec.d.ts.map +1 -0
  35. package/dist/bookings/bookings.contract.spec.js +11 -0
  36. package/dist/bookings/job-lock.spec.d.ts +2 -0
  37. package/dist/bookings/job-lock.spec.d.ts.map +1 -0
  38. package/dist/bookings/job-lock.spec.js +56 -0
  39. package/dist/bot-parse-cache/bot-parse-cache.contract.d.ts +232 -0
  40. package/dist/bot-parse-cache/bot-parse-cache.contract.d.ts.map +1 -0
  41. package/dist/bot-parse-cache/bot-parse-cache.contract.js +64 -0
  42. package/dist/call-history/call-history.contract.d.ts +1336 -767
  43. package/dist/call-history/call-history.contract.d.ts.map +1 -1
  44. package/dist/call-history/call-history.contract.js +86 -10
  45. package/dist/calls-feed/calls-feed.contract.d.ts +417 -0
  46. package/dist/calls-feed/calls-feed.contract.d.ts.map +1 -0
  47. package/dist/calls-feed/calls-feed.contract.js +32 -0
  48. package/dist/client-contacts/client-contacts.contract.d.ts +410 -226
  49. package/dist/client-contacts/client-contacts.contract.d.ts.map +1 -1
  50. package/dist/client-contacts/client-contacts.contract.js +35 -4
  51. package/dist/clients/clients.contract.d.ts +227 -73
  52. package/dist/clients/clients.contract.d.ts.map +1 -1
  53. package/dist/clients/clients.contract.js +45 -21
  54. package/dist/collaboration-checkings/collaboration-checkings.contract.d.ts +2908 -1834
  55. package/dist/collaboration-checkings/collaboration-checkings.contract.d.ts.map +1 -1
  56. package/dist/collaboration-checkings/collaboration-checkings.contract.js +14 -9
  57. package/dist/collaborations/collaborations.contract.d.ts +2676 -1409
  58. package/dist/collaborations/collaborations.contract.d.ts.map +1 -1
  59. package/dist/collaborations/collaborations.contract.js +33 -9
  60. package/dist/common/call-rating.schema.d.ts.map +1 -1
  61. package/dist/common/call-rating.schema.js +4 -2
  62. package/dist/common/common-schemas.d.ts +59 -11
  63. package/dist/common/common-schemas.d.ts.map +1 -1
  64. package/dist/common/common-schemas.js +55 -29
  65. package/dist/common/error-schemas.d.ts +2 -2
  66. package/dist/common/pagination-query.schema.d.ts +13 -2
  67. package/dist/common/pagination-query.schema.d.ts.map +1 -1
  68. package/dist/common/pagination-query.schema.js +21 -2
  69. package/dist/common/pagination-query.schema.spec.d.ts +2 -0
  70. package/dist/common/pagination-query.schema.spec.d.ts.map +1 -0
  71. package/dist/common/pagination-query.schema.spec.js +53 -0
  72. package/dist/companies/companies.contract.d.ts +53 -28
  73. package/dist/companies/companies.contract.d.ts.map +1 -1
  74. package/dist/companies/companies.contract.js +11 -10
  75. package/dist/crews/crews.contract.d.ts +1010 -196
  76. package/dist/crews/crews.contract.d.ts.map +1 -1
  77. package/dist/crews/crews.contract.js +98 -17
  78. package/dist/crews/crews.contract.spec.d.ts +2 -0
  79. package/dist/crews/crews.contract.spec.d.ts.map +1 -0
  80. package/dist/crews/crews.contract.spec.js +67 -0
  81. package/dist/cron-executions/cron-executions.contract.d.ts +988 -59
  82. package/dist/cron-executions/cron-executions.contract.d.ts.map +1 -1
  83. package/dist/cron-executions/cron-executions.contract.js +127 -7
  84. package/dist/curated-worker-leads/__tests__/disposition-reason.spec.d.ts +2 -0
  85. package/dist/curated-worker-leads/__tests__/disposition-reason.spec.d.ts.map +1 -0
  86. package/dist/curated-worker-leads/__tests__/disposition-reason.spec.js +40 -0
  87. package/dist/curated-worker-leads/candidate-coordination-snapshot.spec.d.ts +2 -0
  88. package/dist/curated-worker-leads/candidate-coordination-snapshot.spec.d.ts.map +1 -0
  89. package/dist/curated-worker-leads/candidate-coordination-snapshot.spec.js +16 -0
  90. package/dist/curated-worker-leads/candidate-coordination.contract.d.ts +21650 -0
  91. package/dist/curated-worker-leads/candidate-coordination.contract.d.ts.map +1 -0
  92. package/dist/curated-worker-leads/candidate-coordination.contract.js +921 -0
  93. package/dist/curated-worker-leads/candidate-coordination.contract.spec.d.ts +2 -0
  94. package/dist/curated-worker-leads/candidate-coordination.contract.spec.d.ts.map +1 -0
  95. package/dist/curated-worker-leads/candidate-coordination.contract.spec.js +51 -0
  96. package/dist/curated-worker-leads/candidate-edit-session.contract.d.ts +2364 -0
  97. package/dist/curated-worker-leads/candidate-edit-session.contract.d.ts.map +1 -0
  98. package/dist/curated-worker-leads/candidate-edit-session.contract.js +173 -0
  99. package/dist/curated-worker-leads/consent-queue.contract.d.ts +4497 -0
  100. package/dist/curated-worker-leads/consent-queue.contract.d.ts.map +1 -0
  101. package/dist/curated-worker-leads/consent-queue.contract.js +201 -0
  102. package/dist/curated-worker-leads/contact-history.spec.d.ts +2 -0
  103. package/dist/curated-worker-leads/contact-history.spec.d.ts.map +1 -0
  104. package/dist/curated-worker-leads/contact-history.spec.js +88 -0
  105. package/dist/curated-worker-leads/contact-session.contract.spec.d.ts +2 -0
  106. package/dist/curated-worker-leads/contact-session.contract.spec.d.ts.map +1 -0
  107. package/dist/curated-worker-leads/contact-session.contract.spec.js +315 -0
  108. package/dist/curated-worker-leads/curated-worker-lead-config.contract.d.ts +489 -0
  109. package/dist/curated-worker-leads/curated-worker-lead-config.contract.d.ts.map +1 -0
  110. package/dist/curated-worker-leads/curated-worker-lead-config.contract.js +88 -0
  111. package/dist/curated-worker-leads/curated-worker-leads.contract.d.ts +135 -0
  112. package/dist/curated-worker-leads/curated-worker-leads.contract.d.ts.map +1 -0
  113. package/dist/curated-worker-leads/curated-worker-leads.contract.js +32 -0
  114. package/dist/curated-worker-leads/job-candidate-cards.spec.d.ts +2 -0
  115. package/dist/curated-worker-leads/job-candidate-cards.spec.d.ts.map +1 -0
  116. package/dist/curated-worker-leads/job-candidate-cards.spec.js +157 -0
  117. package/dist/curated-worker-leads/job-candidates.spec.d.ts +2 -0
  118. package/dist/curated-worker-leads/job-candidates.spec.d.ts.map +1 -0
  119. package/dist/curated-worker-leads/job-candidates.spec.js +140 -0
  120. package/dist/curated-worker-leads/job-feed-match-counts.contract.spec.d.ts +2 -0
  121. package/dist/curated-worker-leads/job-feed-match-counts.contract.spec.d.ts.map +1 -0
  122. package/dist/curated-worker-leads/job-feed-match-counts.contract.spec.js +19 -0
  123. package/dist/curated-worker-leads/jobs-tab.contract.d.ts +18365 -0
  124. package/dist/curated-worker-leads/jobs-tab.contract.d.ts.map +1 -0
  125. package/dist/curated-worker-leads/jobs-tab.contract.js +642 -0
  126. package/dist/curated-worker-leads/lead-agent-area.contract.d.ts +348 -0
  127. package/dist/curated-worker-leads/lead-agent-area.contract.d.ts.map +1 -0
  128. package/dist/curated-worker-leads/lead-agent-area.contract.js +51 -0
  129. package/dist/curated-worker-leads/owned-jobs-tab.contract.d.ts +1116 -0
  130. package/dist/curated-worker-leads/owned-jobs-tab.contract.d.ts.map +1 -0
  131. package/dist/curated-worker-leads/owned-jobs-tab.contract.js +93 -0
  132. package/dist/curated-workers/curated-filter-additions.spec.d.ts +2 -0
  133. package/dist/curated-workers/curated-filter-additions.spec.d.ts.map +1 -0
  134. package/dist/curated-workers/curated-filter-additions.spec.js +17 -0
  135. package/dist/curated-workers/curated-job-seeking.spec.d.ts +2 -0
  136. package/dist/curated-workers/curated-job-seeking.spec.d.ts.map +1 -0
  137. package/dist/curated-workers/curated-job-seeking.spec.js +53 -0
  138. package/dist/curated-workers/curated-workers-id-documents.spec.d.ts +2 -0
  139. package/dist/curated-workers/curated-workers-id-documents.spec.d.ts.map +1 -0
  140. package/dist/curated-workers/curated-workers-id-documents.spec.js +38 -0
  141. package/dist/curated-workers/curated-workers.contract.d.ts +6160 -1906
  142. package/dist/curated-workers/curated-workers.contract.d.ts.map +1 -1
  143. package/dist/curated-workers/curated-workers.contract.js +333 -51
  144. package/dist/dashboards/agent-daily-metrics.contract.d.ts +10 -10
  145. package/dist/dashboards/agent-daily-metrics.contract.js +1 -1
  146. package/dist/dashboards/dashboard-widgets.contract.d.ts +3800 -496
  147. package/dist/dashboards/dashboard-widgets.contract.d.ts.map +1 -1
  148. package/dist/dashboards/dashboard-widgets.contract.js +527 -29
  149. package/dist/dashboards/dashboard.contract.d.ts +8 -8
  150. package/dist/document-intake/document-intake.contract.d.ts +3132 -0
  151. package/dist/document-intake/document-intake.contract.d.ts.map +1 -0
  152. package/dist/document-intake/document-intake.contract.js +418 -0
  153. package/dist/export-jobs/export-jobs.contract.d.ts +3918 -0
  154. package/dist/export-jobs/export-jobs.contract.d.ts.map +1 -0
  155. package/dist/export-jobs/export-jobs.contract.js +240 -0
  156. package/dist/exports-events/exports-events.schemas.d.ts +90 -0
  157. package/dist/exports-events/exports-events.schemas.d.ts.map +1 -0
  158. package/dist/exports-events/exports-events.schemas.js +56 -0
  159. package/dist/files/files.contract.d.ts +133 -126
  160. package/dist/files/files.contract.d.ts.map +1 -1
  161. package/dist/files/files.contract.js +8 -0
  162. package/dist/health/health.contract.d.ts +4 -4
  163. package/dist/index.d.ts +82 -0
  164. package/dist/index.d.ts.map +1 -1
  165. package/dist/index.js +87 -1
  166. package/dist/interactions/interactions.contract.d.ts +162 -0
  167. package/dist/interactions/interactions.contract.d.ts.map +1 -0
  168. package/dist/interactions/interactions.contract.js +42 -0
  169. package/dist/job-clusters/job-clusters.contract.d.ts +1584 -0
  170. package/dist/job-clusters/job-clusters.contract.d.ts.map +1 -0
  171. package/dist/job-clusters/job-clusters.contract.js +133 -0
  172. package/dist/jobs/jobs.contract.d.ts +16517 -8495
  173. package/dist/jobs/jobs.contract.d.ts.map +1 -1
  174. package/dist/jobs/jobs.contract.js +394 -190
  175. package/dist/jobs/jobs.contract.spec.d.ts +2 -0
  176. package/dist/jobs/jobs.contract.spec.d.ts.map +1 -0
  177. package/dist/jobs/jobs.contract.spec.js +70 -0
  178. package/dist/kpi-impersonation/kpi-impersonation.contract.d.ts +75 -75
  179. package/dist/lead-assignments/lead-assignments.contract.d.ts +2933 -1122
  180. package/dist/lead-assignments/lead-assignments.contract.d.ts.map +1 -1
  181. package/dist/lead-assignments/lead-assignments.contract.js +29 -7
  182. package/dist/lead-distribution/agent-lead-distribution.contract.d.ts +328 -64
  183. package/dist/lead-distribution/agent-lead-distribution.contract.d.ts.map +1 -1
  184. package/dist/lead-distribution/agent-lead-distribution.contract.js +1 -1
  185. package/dist/lead-distribution/lead-distribution-config.contract.d.ts +31 -31
  186. package/dist/leads/leads.contract.d.ts +830 -368
  187. package/dist/leads/leads.contract.d.ts.map +1 -1
  188. package/dist/leads/leads.contract.js +106 -26
  189. package/dist/locations/locations.contract.d.ts +36 -36
  190. package/dist/notifications/notifications.contract.d.ts +1039 -0
  191. package/dist/notifications/notifications.contract.d.ts.map +1 -0
  192. package/dist/notifications/notifications.contract.js +110 -0
  193. package/dist/offices/offices.contract.d.ts +210 -60
  194. package/dist/offices/offices.contract.d.ts.map +1 -1
  195. package/dist/offices/offices.contract.js +18 -4
  196. package/dist/outreach/__tests__/outreach-claim.test.d.ts +2 -0
  197. package/dist/outreach/__tests__/outreach-claim.test.d.ts.map +1 -0
  198. package/dist/outreach/__tests__/outreach-claim.test.js +97 -0
  199. package/dist/outreach/__tests__/outreach-confirm-release.test.d.ts +2 -0
  200. package/dist/outreach/__tests__/outreach-confirm-release.test.d.ts.map +1 -0
  201. package/dist/outreach/__tests__/outreach-confirm-release.test.js +98 -0
  202. package/dist/outreach/__tests__/outreach-routes.test.d.ts +2 -0
  203. package/dist/outreach/__tests__/outreach-routes.test.d.ts.map +1 -0
  204. package/dist/outreach/__tests__/outreach-routes.test.js +57 -0
  205. package/dist/outreach/__tests__/outreach.schemas.test.d.ts +2 -0
  206. package/dist/outreach/__tests__/outreach.schemas.test.d.ts.map +1 -0
  207. package/dist/outreach/__tests__/outreach.schemas.test.js +140 -0
  208. package/dist/outreach/outreach.contract.d.ts +809 -0
  209. package/dist/outreach/outreach.contract.d.ts.map +1 -0
  210. package/dist/outreach/outreach.contract.js +195 -0
  211. package/dist/outreach/outreach.schemas.d.ts +113 -0
  212. package/dist/outreach/outreach.schemas.d.ts.map +1 -0
  213. package/dist/outreach/outreach.schemas.js +132 -0
  214. package/dist/own-research/own-research.contract.d.ts +1356 -552
  215. package/dist/own-research/own-research.contract.d.ts.map +1 -1
  216. package/dist/own-research/own-research.contract.js +14 -3
  217. package/dist/postcodes/postcodes.contract.d.ts +16 -16
  218. package/dist/proofs/proof-category.enum.d.ts +4 -0
  219. package/dist/proofs/proof-category.enum.d.ts.map +1 -0
  220. package/dist/proofs/proof-category.enum.js +5 -0
  221. package/dist/proofs/proof-entity-type.enum.d.ts +4 -0
  222. package/dist/proofs/proof-entity-type.enum.d.ts.map +1 -0
  223. package/dist/proofs/proof-entity-type.enum.js +5 -0
  224. package/dist/proofs/proof-type.enum.d.ts +28 -0
  225. package/dist/proofs/proof-type.enum.d.ts.map +1 -0
  226. package/dist/proofs/proof-type.enum.js +14 -0
  227. package/dist/proofs/proofs.contract.d.ts +3009 -0
  228. package/dist/proofs/proofs.contract.d.ts.map +1 -0
  229. package/dist/proofs/proofs.contract.js +92 -0
  230. package/dist/proofs/proofs.dtos.d.ts +1319 -0
  231. package/dist/proofs/proofs.dtos.d.ts.map +1 -0
  232. package/dist/proofs/proofs.dtos.js +178 -0
  233. package/dist/qualifications/qualifications.contract.d.ts +94 -94
  234. package/dist/realtime/data-changed.d.ts +21 -0
  235. package/dist/realtime/data-changed.d.ts.map +1 -0
  236. package/dist/realtime/data-changed.js +37 -0
  237. package/dist/shared/booking-history.schema.d.ts +27 -0
  238. package/dist/shared/booking-history.schema.d.ts.map +1 -0
  239. package/dist/shared/booking-history.schema.js +22 -0
  240. package/dist/shared/booking-history.spec.d.ts +2 -0
  241. package/dist/shared/booking-history.spec.d.ts.map +1 -0
  242. package/dist/shared/booking-history.spec.js +44 -0
  243. package/dist/shared/contact-suppressions.contract.d.ts +22 -0
  244. package/dist/shared/contact-suppressions.contract.d.ts.map +1 -0
  245. package/dist/shared/contact-suppressions.contract.js +13 -0
  246. package/dist/shared/live-booking.schema.d.ts +57 -0
  247. package/dist/shared/live-booking.schema.d.ts.map +1 -0
  248. package/dist/shared/live-booking.schema.js +34 -0
  249. package/dist/shared/summary-schemas.d.ts +218 -0
  250. package/dist/shared/summary-schemas.d.ts.map +1 -0
  251. package/dist/shared/summary-schemas.js +56 -0
  252. package/dist/sheets-sync/__tests__/sheets-sync-events.schemas.test.d.ts +2 -0
  253. package/dist/sheets-sync/__tests__/sheets-sync-events.schemas.test.d.ts.map +1 -0
  254. package/dist/sheets-sync/__tests__/sheets-sync-events.schemas.test.js +20 -0
  255. package/dist/sheets-sync/__tests__/tab-sync-config.schema.test.d.ts +2 -0
  256. package/dist/sheets-sync/__tests__/tab-sync-config.schema.test.d.ts.map +1 -0
  257. package/dist/sheets-sync/__tests__/tab-sync-config.schema.test.js +41 -0
  258. package/dist/sheets-sync/sheets-sync-events.schemas.d.ts +43 -0
  259. package/dist/sheets-sync/sheets-sync-events.schemas.d.ts.map +1 -0
  260. package/dist/sheets-sync/sheets-sync-events.schemas.js +29 -0
  261. package/dist/sheets-sync/sheets-sync.contract.d.ts +7258 -0
  262. package/dist/sheets-sync/sheets-sync.contract.d.ts.map +1 -0
  263. package/dist/sheets-sync/sheets-sync.contract.js +323 -0
  264. package/dist/telegram/telegram.contract.d.ts +727 -0
  265. package/dist/telegram/telegram.contract.d.ts.map +1 -0
  266. package/dist/telegram/telegram.contract.js +75 -0
  267. package/dist/trades/trade-rate-assessment.d.ts +18 -0
  268. package/dist/trades/trade-rate-assessment.d.ts.map +1 -0
  269. package/dist/trades/trade-rate-assessment.js +46 -0
  270. package/dist/trades/trade-rate-assessment.spec.d.ts +2 -0
  271. package/dist/trades/trade-rate-assessment.spec.d.ts.map +1 -0
  272. package/dist/trades/trade-rate-assessment.spec.js +223 -0
  273. package/dist/trades/trades.contract.d.ts +111 -0
  274. package/dist/trades/trades.contract.d.ts.map +1 -1
  275. package/dist/trades/trades.contract.js +49 -1
  276. package/dist/trades/trades.contract.spec.d.ts +2 -0
  277. package/dist/trades/trades.contract.spec.d.ts.map +1 -0
  278. package/dist/trades/trades.contract.spec.js +173 -0
  279. package/dist/user-access-grants/build-user-access-grant-rules.d.ts +10 -0
  280. package/dist/user-access-grants/build-user-access-grant-rules.d.ts.map +1 -0
  281. package/dist/user-access-grants/build-user-access-grant-rules.js +69 -0
  282. package/dist/user-access-grants/build-user-access-grant-rules.spec.d.ts +2 -0
  283. package/dist/user-access-grants/build-user-access-grant-rules.spec.d.ts.map +1 -0
  284. package/dist/user-access-grants/build-user-access-grant-rules.spec.js +77 -0
  285. package/dist/user-access-grants/user-access-grant-templates.json +454 -0
  286. package/dist/user-access-grants/user-access-grants.contract.d.ts +3886 -0
  287. package/dist/user-access-grants/user-access-grants.contract.d.ts.map +1 -0
  288. package/dist/user-access-grants/user-access-grants.contract.js +189 -0
  289. package/dist/user-access-grants/user-access-grants.contract.spec.d.ts +2 -0
  290. package/dist/user-access-grants/user-access-grants.contract.spec.d.ts.map +1 -0
  291. package/dist/user-access-grants/user-access-grants.contract.spec.js +149 -0
  292. package/dist/users/users.contract.d.ts +1959 -349
  293. package/dist/users/users.contract.d.ts.map +1 -1
  294. package/dist/users/users.contract.js +222 -37
  295. package/dist/users/users.contract.spec.d.ts +2 -0
  296. package/dist/users/users.contract.spec.d.ts.map +1 -0
  297. package/dist/users/users.contract.spec.js +103 -0
  298. package/dist/worker-identity-cases/worker-identity-cases.contract.d.ts +4609 -0
  299. package/dist/worker-identity-cases/worker-identity-cases.contract.d.ts.map +1 -0
  300. package/dist/worker-identity-cases/worker-identity-cases.contract.js +409 -0
  301. package/dist/worker-merge-proposals/worker-merge-proposals.contract.d.ts +1511 -0
  302. package/dist/worker-merge-proposals/worker-merge-proposals.contract.d.ts.map +1 -0
  303. package/dist/worker-merge-proposals/worker-merge-proposals.contract.js +150 -0
  304. package/dist/worker-source-identity-conflicts/worker-source-identity-conflicts.contract.d.ts +1106 -0
  305. package/dist/worker-source-identity-conflicts/worker-source-identity-conflicts.contract.d.ts.map +1 -0
  306. package/dist/worker-source-identity-conflicts/worker-source-identity-conflicts.contract.js +85 -0
  307. package/dist/worker-source-identity-conflicts/worker-source-identity-conflicts.contract.spec.d.ts +2 -0
  308. package/dist/worker-source-identity-conflicts/worker-source-identity-conflicts.contract.spec.d.ts.map +1 -0
  309. package/dist/worker-source-identity-conflicts/worker-source-identity-conflicts.contract.spec.js +216 -0
  310. package/dist/worker-source-identity-conflicts/worker-source-identity-conflicts.schemas.d.ts +453 -0
  311. package/dist/worker-source-identity-conflicts/worker-source-identity-conflicts.schemas.d.ts.map +1 -0
  312. package/dist/worker-source-identity-conflicts/worker-source-identity-conflicts.schemas.js +109 -0
  313. package/dist/workers/do-not-contact.contract.d.ts +46 -0
  314. package/dist/workers/do-not-contact.contract.d.ts.map +1 -0
  315. package/dist/workers/do-not-contact.contract.js +41 -0
  316. package/dist/workers/do-not-contact.contract.spec.d.ts +2 -0
  317. package/dist/workers/do-not-contact.contract.spec.d.ts.map +1 -0
  318. package/dist/workers/do-not-contact.contract.spec.js +47 -0
  319. package/dist/workers/duplicate-group-worker.spec.d.ts +2 -0
  320. package/dist/workers/duplicate-group-worker.spec.d.ts.map +1 -0
  321. package/dist/workers/duplicate-group-worker.spec.js +34 -0
  322. package/dist/workers/filter-exact-flags.spec.d.ts +2 -0
  323. package/dist/workers/filter-exact-flags.spec.d.ts.map +1 -0
  324. package/dist/workers/filter-exact-flags.spec.js +37 -0
  325. package/dist/workers/worker-source-attribution.contract.spec.d.ts +2 -0
  326. package/dist/workers/worker-source-attribution.contract.spec.d.ts.map +1 -0
  327. package/dist/workers/worker-source-attribution.contract.spec.js +442 -0
  328. package/dist/workers/worker-source.spec.d.ts +2 -0
  329. package/dist/workers/worker-source.spec.d.ts.map +1 -0
  330. package/dist/workers/worker-source.spec.js +13 -0
  331. package/dist/workers/worker-status-facets.spec.d.ts +2 -0
  332. package/dist/workers/worker-status-facets.spec.d.ts.map +1 -0
  333. package/dist/workers/worker-status-facets.spec.js +34 -0
  334. package/dist/workers/workers.contract.d.ts +19534 -5969
  335. package/dist/workers/workers.contract.d.ts.map +1 -1
  336. package/dist/workers/workers.contract.js +1096 -113
  337. package/dist/workers/workers.contract.spec.d.ts +2 -0
  338. package/dist/workers/workers.contract.spec.d.ts.map +1 -0
  339. package/dist/workers/workers.contract.spec.js +31 -0
  340. package/package.json +5 -4
@@ -0,0 +1 @@
1
+ {"version":3,"file":"worker-identity-cases.contract.d.ts","sourceRoot":"","sources":["../../contracts/worker-identity-cases/worker-identity-cases.contract.ts"],"names":[],"mappings":"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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;gBA9LpC;wFACwE;;;;;;;;;;;;;;;oBAXxE,2EAA2E;;oBAE3E,mEAAmE;;;;;;;;;gBAYnE;yDACyC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;gBALzC;wFACwE;;;;;;;;;;;;;;;oBAXxE,2EAA2E;;oBAE3E,mEAAmE;;;;;;;;;gBAYnE;yDACyC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;gBALzC;wFACwE;;;;;;;;;;;;;;;oBAXxE,2EAA2E;;oBAE3E,mEAAmE;;;;;;;;;gBAYnE;yDACyC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;gBALzC;wFACwE;;;;;;;;;;;;;;;oBAXxE,2EAA2E;;oBAE3E,mEAAmE;;;;;;;;;gBAYnE;yDACyC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;oBALzC;4FACwE;;;;;;;;;;;;;;;wBAXxE,2EAA2E;;wBAE3E,mEAAmE;;;;;;;;;oBAYnE;6DACyC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA0V5C,CAAC"}
@@ -0,0 +1,409 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.workerIdentityCasesContract = exports.ResolveCuratedLinkAuditResponseSchema = exports.CuratedLinkAuditReprocessingSchema = exports.ResolveCuratedLinkAuditSchema = exports.RejectIdentityCaseSchema = exports.ResolveIdentityCaseValuesSchema = exports.WorkerIdentitySuggestedMergeValuesSchema = exports.ConfirmIdentityCaseSchema = exports.IdentityCaseTargetSchema = exports.WorkerIdentityBackfillStatusSchema = exports.WorkerIdentityBackfillStartResponseSchema = exports.WorkerIdentityBackfillResultSchema = exports.WorkerIdentityCaseListResponseSchema = exports.FilterWorkerIdentityCasesSchema = exports.WorkerIdentityCaseDetailSchema = exports.WorkerIdentityCasePendingDocumentsSchema = exports.WorkerIdentityCaseCuratedSubjectSchema = exports.WorkerIdentityCaseSummarySchema = exports.WorkerIdentityCaseEdgeSchema = exports.IdentityEvidenceSignalSchema = exports.WorkerCuratedLinkAuditRunResultSchema = exports.WorkerCuratedLinkAuditSchema = exports.WorkerCuratedLinkAuditReasonSchema = exports.WorkerIdentityCaseKindSchema = exports.WorkerIdentityCaseStatusSchema = exports.WorkerIdentityCaseQueueSchema = void 0;
4
+ const zod_openapi_1 = require("@anatine/zod-openapi");
5
+ const core_1 = require("@ts-rest/core");
6
+ const zod_1 = require("zod");
7
+ const error_schemas_1 = require("../common/error-schemas");
8
+ const worker_merge_proposals_contract_1 = require("../worker-merge-proposals/worker-merge-proposals.contract");
9
+ (0, zod_openapi_1.extendZodWithOpenApi)(zod_1.z);
10
+ exports.WorkerIdentityCaseQueueSchema = zod_1.z.enum([
11
+ 'NEEDS_REVIEW',
12
+ 'CONFLICTS',
13
+ 'RESOLVED',
14
+ ]);
15
+ exports.WorkerIdentityCaseStatusSchema = zod_1.z.enum([
16
+ 'PENDING',
17
+ 'CONFLICT',
18
+ 'AUTO_APPLIED',
19
+ 'CONFIRMED',
20
+ 'PARTIALLY_CONFIRMED',
21
+ 'REJECTED',
22
+ 'OBSOLETE',
23
+ ]);
24
+ exports.WorkerIdentityCaseKindSchema = zod_1.z.enum([
25
+ 'IDENTITY_MERGE',
26
+ 'CURATED_UPDATE',
27
+ 'CURATED_LINK_AUDIT',
28
+ ]);
29
+ exports.WorkerCuratedLinkAuditReasonSchema = zod_1.z.enum([
30
+ 'NAME_MISMATCH',
31
+ 'NINO_CONFLICT',
32
+ 'DOB_CONFLICT',
33
+ 'NO_SUPPORTING_EVIDENCE',
34
+ 'WEAK_PHONE_ONLY',
35
+ ]);
36
+ exports.WorkerCuratedLinkAuditSchema = zod_1.z
37
+ .object({
38
+ suggestedAction: zod_1.z.literal('UNLINK'),
39
+ reasons: zod_1.z.array(exports.WorkerCuratedLinkAuditReasonSchema).min(1),
40
+ })
41
+ .openapi({ title: 'WorkerCuratedLinkAudit' });
42
+ exports.WorkerCuratedLinkAuditRunResultSchema = zod_1.z
43
+ .object({
44
+ scanned: zod_1.z.number().int().min(0),
45
+ suggestions: zod_1.z.number().int().min(0),
46
+ closed: zod_1.z.number().int().min(0),
47
+ })
48
+ .openapi({ title: 'WorkerCuratedLinkAuditRunResult' });
49
+ exports.IdentityEvidenceSignalSchema = zod_1.z.enum([
50
+ 'NINO',
51
+ 'DOC_NUMBER',
52
+ 'SHARE_CODE',
53
+ 'EMAIL',
54
+ 'PHONE',
55
+ 'DOB_NAME',
56
+ 'AI',
57
+ ]);
58
+ exports.WorkerIdentityCaseEdgeSchema = worker_merge_proposals_contract_1.WorkerMergePairEvidenceSchema.extend({
59
+ kind: zod_1.z.enum(['HARD', 'REVIEW', 'AI', 'CONFLICT']).optional(),
60
+ llmVerdict: zod_1.z.enum(['SAME', 'DIFFERENT', 'UNSURE']).optional(),
61
+ llmReason: zod_1.z.string().optional(),
62
+ }).openapi({ title: 'WorkerIdentityCaseEdge' });
63
+ exports.WorkerIdentityCaseSummarySchema = zod_1.z
64
+ .object({
65
+ id: zod_1.z.string().uuid(),
66
+ kind: exports.WorkerIdentityCaseKindSchema,
67
+ status: exports.WorkerIdentityCaseStatusSchema,
68
+ revision: zod_1.z.number().int(),
69
+ confidence: zod_1.z.number().nullable(),
70
+ curatedWorker: zod_1.z
71
+ .object({
72
+ id: zod_1.z.string().uuid(),
73
+ firstName: zod_1.z.string(),
74
+ lastName: zod_1.z.string().nullable(),
75
+ })
76
+ .nullable(),
77
+ workers: zod_1.z.array(worker_merge_proposals_contract_1.WorkerMergeProposalWorkerSchema),
78
+ evidenceBadges: zod_1.z.array(exports.IdentityEvidenceSignalSchema),
79
+ conflicts: zod_1.z.array(zod_1.z.string()),
80
+ hasHardEvidence: zod_1.z.boolean(),
81
+ linkAudit: exports.WorkerCuratedLinkAuditSchema.nullable(),
82
+ createdAt: zod_1.z.string(),
83
+ })
84
+ .openapi({ title: 'WorkerIdentityCaseSummary' });
85
+ exports.WorkerIdentityCaseCuratedSubjectSchema = zod_1.z
86
+ .object({
87
+ id: zod_1.z.string().uuid(),
88
+ firstName: zod_1.z.string(),
89
+ lastName: zod_1.z.string().nullable(),
90
+ })
91
+ .openapi({ title: 'WorkerIdentityCaseCuratedSubject' });
92
+ /** Member documents the intelligence pipeline has not finished with — a
93
+ * staleness hint (spec §5): the case's evidence may still gain hard signals
94
+ * once these are extracted and their values reviewed/applied. */
95
+ exports.WorkerIdentityCasePendingDocumentsSchema = zod_1.z
96
+ .object({
97
+ /** Attachments with no extraction attempt yet (await the intake sweep). */
98
+ notExtracted: zod_1.z.number().int().min(0),
99
+ /** Extractions awaiting human review (or failed and retryable). */
100
+ awaitingReview: zod_1.z.number().int().min(0),
101
+ })
102
+ .openapi({ title: 'WorkerIdentityCasePendingDocuments' });
103
+ exports.WorkerIdentityCaseDetailSchema = exports.WorkerIdentityCaseSummarySchema.extend({
104
+ edges: zod_1.z.array(exports.WorkerIdentityCaseEdgeSchema),
105
+ /** Every curated subject of the case (evidence targets included), so
106
+ * multi-target conflict cases can offer each as an EXISTING target. */
107
+ curatedSubjects: zod_1.z.array(exports.WorkerIdentityCaseCuratedSubjectSchema),
108
+ pendingDocuments: exports.WorkerIdentityCasePendingDocumentsSchema,
109
+ /** The surviving case id when the requested case was absorbed; null when
110
+ * the requested id is the live case. */
111
+ absorbedIntoCaseId: zod_1.z.string().uuid().nullable(),
112
+ obsoleteReason: zod_1.z.string().nullable(),
113
+ reviewedAt: zod_1.z.string().nullable(),
114
+ appliedCuratedWorkerId: zod_1.z.string().uuid().nullable(),
115
+ }).openapi({ title: 'WorkerIdentityCaseDetail' });
116
+ exports.FilterWorkerIdentityCasesSchema = zod_1.z.object({
117
+ page: zod_1.z.coerce.number().int().min(1).default(1),
118
+ limit: zod_1.z.coerce.number().int().min(1).max(200).default(50),
119
+ queue: exports.WorkerIdentityCaseQueueSchema.default('NEEDS_REVIEW'),
120
+ status: exports.WorkerIdentityCaseStatusSchema.optional(),
121
+ kind: exports.WorkerIdentityCaseKindSchema.optional(),
122
+ evidence: exports.IdentityEvidenceSignalSchema.optional(),
123
+ targetType: zod_1.z.enum(['EXISTING', 'NEW']).optional(),
124
+ search: zod_1.z.string().trim().min(1).optional(),
125
+ });
126
+ exports.WorkerIdentityCaseListResponseSchema = zod_1.z
127
+ .object({
128
+ cases: zod_1.z.array(exports.WorkerIdentityCaseSummarySchema),
129
+ totalCount: zod_1.z.number().int(),
130
+ totalPages: zod_1.z.number().int(),
131
+ page: zod_1.z.number().int(),
132
+ limit: zod_1.z.number().int(),
133
+ })
134
+ .openapi({ title: 'WorkerIdentityCaseListResponse' });
135
+ exports.WorkerIdentityBackfillResultSchema = zod_1.z
136
+ .object({
137
+ scanned: zod_1.z.number().int().min(0),
138
+ linkedScanned: zod_1.z.number().int().min(0),
139
+ linkAudits: zod_1.z.number().int().min(0),
140
+ cases: zod_1.z.number().int().min(0),
141
+ conflicts: zod_1.z.number().int().min(0),
142
+ autoApplied: zod_1.z.number().int().min(0),
143
+ pending: zod_1.z.number().int().min(0),
144
+ llmCalls: zod_1.z.number().int().min(0),
145
+ rejected: zod_1.z.number().int().min(0),
146
+ absorbed: zod_1.z.number().int().min(0),
147
+ obsoleteClosed: zod_1.z.number().int().min(0),
148
+ parity: zod_1.z.object({
149
+ legacyPhoneGroups: zod_1.z.number().int().min(0),
150
+ representedPhoneGroups: zod_1.z.number().int().min(0),
151
+ }),
152
+ })
153
+ .openapi({ title: 'WorkerIdentityBackfillResult' });
154
+ exports.WorkerIdentityBackfillStartResponseSchema = zod_1.z
155
+ .object({
156
+ started: zod_1.z.boolean(),
157
+ alreadyRunning: zod_1.z.boolean(),
158
+ })
159
+ .openapi({ title: 'WorkerIdentityBackfillStartResponse' });
160
+ exports.WorkerIdentityBackfillStatusSchema = zod_1.z
161
+ .object({
162
+ running: zod_1.z.boolean(),
163
+ startedAt: zod_1.z.string().nullable(),
164
+ finishedAt: zod_1.z.string().nullable(),
165
+ error: zod_1.z.string().nullable(),
166
+ result: exports.WorkerIdentityBackfillResultSchema.nullable(),
167
+ })
168
+ .openapi({ title: 'WorkerIdentityBackfillStatus' });
169
+ exports.IdentityCaseTargetSchema = zod_1.z.discriminatedUnion('type', [
170
+ zod_1.z.object({
171
+ type: zod_1.z.literal('EXISTING'),
172
+ curatedWorkerId: zod_1.z.string().uuid(),
173
+ }),
174
+ zod_1.z.object({ type: zod_1.z.literal('NEW') }),
175
+ ]);
176
+ exports.ConfirmIdentityCaseSchema = zod_1.z.object({
177
+ expectedRevision: zod_1.z.number().int().min(1),
178
+ selectedWorkerIds: zod_1.z.array(zod_1.z.string().uuid()).min(1),
179
+ excluded: zod_1.z
180
+ .array(zod_1.z.object({
181
+ workerId: zod_1.z.string().uuid(),
182
+ mode: zod_1.z.enum(['NOT_SAME', 'DECIDE_LATER']),
183
+ }))
184
+ .default([]),
185
+ target: exports.IdentityCaseTargetSchema,
186
+ acknowledgeHardEvidence: zod_1.z.boolean().optional(),
187
+ reason: zod_1.z.string().trim().min(1).optional(),
188
+ });
189
+ /** The standard merge policy's field choices for a selection — used to seed
190
+ * the hand-tune dialogs so reviewers start from what Confirm would apply. */
191
+ exports.WorkerIdentitySuggestedMergeValuesSchema = zod_1.z
192
+ .object({
193
+ firstName: zod_1.z.string().nullable(),
194
+ lastName: zod_1.z.string().nullable(),
195
+ email: zod_1.z.string().nullable(),
196
+ nino: zod_1.z.string().nullable(),
197
+ shareCode: zod_1.z.string().nullable(),
198
+ dateOfBirth: zod_1.z.string().nullable(),
199
+ bio: zod_1.z.string().nullable(),
200
+ hasTools: zod_1.z.boolean(),
201
+ hasPpe: zod_1.z.boolean(),
202
+ englishLevel: zod_1.z.string().nullable(),
203
+ nationality: zod_1.z.string().nullable(),
204
+ locationId: zod_1.z.string().uuid().nullable(),
205
+ phoneNumbers: zod_1.z.array(zod_1.z.string()),
206
+ tradeIds: zod_1.z.array(zod_1.z.string().uuid()),
207
+ mainTradeId: zod_1.z.string().uuid().nullable(),
208
+ })
209
+ .openapi({ title: 'WorkerIdentitySuggestedMergeValues' });
210
+ exports.ResolveIdentityCaseValuesSchema = zod_1.z.object({
211
+ selectedWorkerIds: zod_1.z.array(zod_1.z.string().uuid()).min(1),
212
+ target: exports.IdentityCaseTargetSchema,
213
+ });
214
+ exports.RejectIdentityCaseSchema = zod_1.z.object({
215
+ expectedRevision: zod_1.z.number().int().min(1),
216
+ acknowledgeHardEvidence: zod_1.z.boolean().optional(),
217
+ reason: zod_1.z.string().trim().min(1).optional(),
218
+ });
219
+ exports.ResolveCuratedLinkAuditSchema = zod_1.z.discriminatedUnion('action', [
220
+ zod_1.z.object({
221
+ action: zod_1.z.literal('KEEP_CURRENT'),
222
+ expectedRevision: zod_1.z.number().int().min(1),
223
+ reason: zod_1.z.string().trim().min(1).optional(),
224
+ }),
225
+ zod_1.z.object({
226
+ action: zod_1.z.literal('UNLINK_REPROCESS'),
227
+ expectedRevision: zod_1.z.number().int().min(1),
228
+ reason: zod_1.z.string().trim().min(1).optional(),
229
+ }),
230
+ zod_1.z.object({
231
+ action: zod_1.z.literal('MOVE'),
232
+ expectedRevision: zod_1.z.number().int().min(1),
233
+ curatedWorkerId: zod_1.z.string().uuid(),
234
+ reason: zod_1.z.string().trim().min(1).optional(),
235
+ }),
236
+ zod_1.z.object({
237
+ action: zod_1.z.literal('CREATE_NEW'),
238
+ expectedRevision: zod_1.z.number().int().min(1),
239
+ reason: zod_1.z.string().trim().min(1).optional(),
240
+ }),
241
+ ]);
242
+ exports.CuratedLinkAuditReprocessingSchema = zod_1.z
243
+ .object({
244
+ status: zod_1.z.enum(['COMPLETED', 'FAILED']),
245
+ casesCreated: zod_1.z.number().int().min(0),
246
+ message: zod_1.z.string().nullable(),
247
+ })
248
+ .openapi({ title: 'CuratedLinkAuditReprocessing' });
249
+ exports.ResolveCuratedLinkAuditResponseSchema = zod_1.z
250
+ .object({
251
+ case: exports.WorkerIdentityCaseDetailSchema,
252
+ reprocessing: exports.CuratedLinkAuditReprocessingSchema.nullable(),
253
+ })
254
+ .openapi({ title: 'ResolveCuratedLinkAuditResponse' });
255
+ const c = (0, core_1.initContract)();
256
+ exports.workerIdentityCasesContract = c.router({
257
+ list: {
258
+ method: 'GET',
259
+ path: '/worker-identity-cases',
260
+ query: exports.FilterWorkerIdentityCasesSchema,
261
+ responses: { 200: exports.WorkerIdentityCaseListResponseSchema },
262
+ summary: 'List worker identity cases by queue',
263
+ metadata: {
264
+ tags: ['Workers'],
265
+ openApi: { operationId: 'listWorkerIdentityCases' },
266
+ },
267
+ },
268
+ backfill: {
269
+ method: 'POST',
270
+ path: '/worker-identity-cases/backfill',
271
+ body: zod_1.z.object({
272
+ batchSize: zod_1.z.number().int().min(50).max(2000).default(500),
273
+ maxWorkers: zod_1.z.number().int().min(1).max(200000).optional(),
274
+ }),
275
+ responses: { 200: exports.WorkerIdentityBackfillStartResponseSchema },
276
+ summary: 'Start a bounded full-history worker identity backfill in the background',
277
+ metadata: {
278
+ tags: ['Workers'],
279
+ openApi: { operationId: 'backfillWorkerIdentityCases' },
280
+ },
281
+ },
282
+ backfillStatus: {
283
+ method: 'GET',
284
+ path: '/worker-identity-cases/backfill/status',
285
+ responses: { 200: exports.WorkerIdentityBackfillStatusSchema },
286
+ summary: 'Progress and last-run counters of the identity backfill',
287
+ metadata: {
288
+ tags: ['Workers'],
289
+ openApi: { operationId: 'workerIdentityBackfillStatus' },
290
+ },
291
+ },
292
+ auditLinks: {
293
+ method: 'POST',
294
+ path: '/worker-identity-cases/audit-links',
295
+ body: zod_1.z.object({
296
+ workerIds: zod_1.z.array(zod_1.z.string().uuid()).min(1).max(200),
297
+ }),
298
+ responses: { 200: exports.WorkerCuratedLinkAuditRunResultSchema },
299
+ summary: 'Audit specific existing worker-to-curated links',
300
+ metadata: {
301
+ tags: ['Workers'],
302
+ openApi: { operationId: 'auditWorkerCuratedLinks' },
303
+ },
304
+ },
305
+ getOne: {
306
+ method: 'GET',
307
+ path: '/worker-identity-cases/:id',
308
+ pathParams: zod_1.z.object({ id: zod_1.z.string().uuid() }),
309
+ responses: {
310
+ 200: exports.WorkerIdentityCaseDetailSchema,
311
+ 404: error_schemas_1.ErrorResponseSchema,
312
+ },
313
+ summary: 'Get one identity case (follows absorbed-case redirects)',
314
+ metadata: {
315
+ tags: ['Workers'],
316
+ openApi: { operationId: 'getWorkerIdentityCase' },
317
+ },
318
+ },
319
+ confirm: {
320
+ method: 'PATCH',
321
+ path: '/worker-identity-cases/:id/confirm',
322
+ pathParams: zod_1.z.object({ id: zod_1.z.string().uuid() }),
323
+ body: exports.ConfirmIdentityCaseSchema,
324
+ responses: {
325
+ 200: exports.WorkerIdentityCaseDetailSchema,
326
+ 404: error_schemas_1.ErrorResponseSchema,
327
+ 409: error_schemas_1.ErrorResponseSchema,
328
+ 422: error_schemas_1.ErrorResponseSchema,
329
+ },
330
+ summary: 'Confirm selected identity members and target at an expected revision',
331
+ metadata: {
332
+ tags: ['Workers'],
333
+ openApi: { operationId: 'confirmWorkerIdentityCase' },
334
+ },
335
+ },
336
+ reject: {
337
+ method: 'PATCH',
338
+ path: '/worker-identity-cases/:id/reject',
339
+ pathParams: zod_1.z.object({ id: zod_1.z.string().uuid() }),
340
+ body: exports.RejectIdentityCaseSchema,
341
+ responses: {
342
+ 200: exports.WorkerIdentityCaseDetailSchema,
343
+ 404: error_schemas_1.ErrorResponseSchema,
344
+ 409: error_schemas_1.ErrorResponseSchema,
345
+ 422: error_schemas_1.ErrorResponseSchema,
346
+ },
347
+ summary: 'Mark every candidate edge in a case as not the same (hard edges need acknowledgment)',
348
+ metadata: {
349
+ tags: ['Workers'],
350
+ openApi: { operationId: 'rejectWorkerIdentityCase' },
351
+ },
352
+ },
353
+ resolveValues: {
354
+ method: 'POST',
355
+ path: '/worker-identity-cases/:id/resolve-values',
356
+ pathParams: zod_1.z.object({ id: zod_1.z.string().uuid() }),
357
+ body: exports.ResolveIdentityCaseValuesSchema,
358
+ responses: {
359
+ 200: exports.WorkerIdentitySuggestedMergeValuesSchema,
360
+ 404: error_schemas_1.ErrorResponseSchema,
361
+ 409: error_schemas_1.ErrorResponseSchema,
362
+ },
363
+ summary: "Preview the standard merge policy's field choices for a selection (seeds hand-tuning)",
364
+ metadata: {
365
+ tags: ['Workers'],
366
+ openApi: { operationId: 'resolveWorkerIdentityCaseValues' },
367
+ },
368
+ },
369
+ refresh: {
370
+ method: 'POST',
371
+ path: '/worker-identity-cases/:id/refresh',
372
+ pathParams: zod_1.z.object({ id: zod_1.z.string().uuid() }),
373
+ body: zod_1.z.object({}),
374
+ responses: {
375
+ 200: exports.WorkerIdentityCaseDetailSchema,
376
+ 404: error_schemas_1.ErrorResponseSchema,
377
+ },
378
+ summary: 'Recompute a stale open case before review',
379
+ metadata: {
380
+ tags: ['Workers'],
381
+ openApi: { operationId: 'refreshWorkerIdentityCase' },
382
+ },
383
+ },
384
+ resolveLinkAudit: {
385
+ method: 'PATCH',
386
+ path: '/worker-identity-cases/:id/resolve-link-audit',
387
+ pathParams: zod_1.z.object({ id: zod_1.z.string().uuid() }),
388
+ body: exports.ResolveCuratedLinkAuditSchema,
389
+ responses: {
390
+ 200: exports.ResolveCuratedLinkAuditResponseSchema,
391
+ 404: error_schemas_1.ErrorResponseSchema,
392
+ 409: error_schemas_1.ErrorResponseSchema,
393
+ 422: error_schemas_1.ErrorResponseSchema,
394
+ },
395
+ summary: 'Keep, unlink, move, or replace a curated-worker link audit suggestion',
396
+ metadata: {
397
+ tags: ['Workers'],
398
+ openApi: { operationId: 'resolveWorkerCuratedLinkAudit' },
399
+ },
400
+ },
401
+ }, {
402
+ pathPrefix: '/v2',
403
+ commonResponses: {
404
+ 400: error_schemas_1.ErrorResponseSchema,
405
+ 401: error_schemas_1.ErrorResponseSchema,
406
+ 403: error_schemas_1.ErrorResponseSchema,
407
+ 500: error_schemas_1.ErrorResponseSchema,
408
+ },
409
+ });