dabke 0.82.0 → 0.84.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 (341) hide show
  1. package/CHANGELOG.md +44 -0
  2. package/README.md +22 -24
  3. package/dist/client.d.ts +39 -3
  4. package/dist/client.d.ts.map +1 -1
  5. package/dist/client.js.map +1 -1
  6. package/dist/client.schemas.d.ts +118 -18
  7. package/dist/client.schemas.d.ts.map +1 -1
  8. package/dist/client.schemas.js +110 -6
  9. package/dist/client.schemas.js.map +1 -1
  10. package/dist/client.types.d.ts +63 -7
  11. package/dist/client.types.d.ts.map +1 -1
  12. package/dist/client.types.js.map +1 -1
  13. package/dist/cpsat/cost.d.ts +5 -2
  14. package/dist/cpsat/cost.d.ts.map +1 -1
  15. package/dist/cpsat/cost.js +13 -6
  16. package/dist/cpsat/cost.js.map +1 -1
  17. package/dist/cpsat/model-builder.d.ts +42 -61
  18. package/dist/cpsat/model-builder.d.ts.map +1 -1
  19. package/dist/cpsat/model-builder.js +451 -56
  20. package/dist/cpsat/model-builder.js.map +1 -1
  21. package/dist/cpsat/response.d.ts +19 -7
  22. package/dist/cpsat/response.d.ts.map +1 -1
  23. package/dist/cpsat/response.js +48 -9
  24. package/dist/cpsat/response.js.map +1 -1
  25. package/dist/cpsat/rule-descriptor.d.ts +250 -0
  26. package/dist/cpsat/rule-descriptor.d.ts.map +1 -0
  27. package/dist/cpsat/rule-descriptor.js +51 -0
  28. package/dist/cpsat/rule-descriptor.js.map +1 -0
  29. package/dist/cpsat/rules/artifacts.d.ts +9 -0
  30. package/dist/cpsat/rules/artifacts.d.ts.map +1 -0
  31. package/dist/cpsat/rules/artifacts.js +31 -0
  32. package/dist/cpsat/rules/artifacts.js.map +1 -0
  33. package/dist/cpsat/rules/assign-together.d.ts +18 -20
  34. package/dist/cpsat/rules/assign-together.d.ts.map +1 -1
  35. package/dist/cpsat/rules/assign-together.js +90 -54
  36. package/dist/cpsat/rules/assign-together.js.map +1 -1
  37. package/dist/cpsat/rules/assigned-day.d.ts +12 -0
  38. package/dist/cpsat/rules/assigned-day.d.ts.map +1 -0
  39. package/dist/cpsat/rules/assigned-day.js +43 -0
  40. package/dist/cpsat/rules/assigned-day.js.map +1 -0
  41. package/dist/cpsat/rules/assignment-priority.d.ts +15 -29
  42. package/dist/cpsat/rules/assignment-priority.d.ts.map +1 -1
  43. package/dist/cpsat/rules/assignment-priority.js +47 -50
  44. package/dist/cpsat/rules/assignment-priority.js.map +1 -1
  45. package/dist/cpsat/rules/assignment-terms.d.ts +6 -0
  46. package/dist/cpsat/rules/assignment-terms.d.ts.map +1 -0
  47. package/dist/cpsat/rules/assignment-terms.js +19 -0
  48. package/dist/cpsat/rules/assignment-terms.js.map +1 -0
  49. package/dist/cpsat/rules/concurrent-intervals.d.ts +19 -0
  50. package/dist/cpsat/rules/concurrent-intervals.d.ts.map +1 -0
  51. package/dist/cpsat/rules/concurrent-intervals.js +57 -0
  52. package/dist/cpsat/rules/concurrent-intervals.js.map +1 -0
  53. package/dist/cpsat/rules/cost-utils.d.ts +1 -3
  54. package/dist/cpsat/rules/cost-utils.d.ts.map +1 -1
  55. package/dist/cpsat/rules/cost-utils.js +0 -7
  56. package/dist/cpsat/rules/cost-utils.js.map +1 -1
  57. package/dist/cpsat/rules/day-cost-multiplier.d.ts +10 -10
  58. package/dist/cpsat/rules/day-cost-multiplier.d.ts.map +1 -1
  59. package/dist/cpsat/rules/day-cost-multiplier.js +88 -77
  60. package/dist/cpsat/rules/day-cost-multiplier.js.map +1 -1
  61. package/dist/cpsat/rules/day-cost-surcharge.d.ts +10 -10
  62. package/dist/cpsat/rules/day-cost-surcharge.d.ts.map +1 -1
  63. package/dist/cpsat/rules/day-cost-surcharge.js +76 -65
  64. package/dist/cpsat/rules/day-cost-surcharge.js.map +1 -1
  65. package/dist/cpsat/rules/index.d.ts +30 -21
  66. package/dist/cpsat/rules/index.d.ts.map +1 -1
  67. package/dist/cpsat/rules/index.js +30 -21
  68. package/dist/cpsat/rules/index.js.map +1 -1
  69. package/dist/cpsat/rules/location-preference.d.ts +14 -21
  70. package/dist/cpsat/rules/location-preference.d.ts.map +1 -1
  71. package/dist/cpsat/rules/location-preference.js +45 -45
  72. package/dist/cpsat/rules/location-preference.js.map +1 -1
  73. package/dist/cpsat/rules/max-concurrent-assignments.d.ts +46 -0
  74. package/dist/cpsat/rules/max-concurrent-assignments.d.ts.map +1 -0
  75. package/dist/cpsat/rules/max-concurrent-assignments.js +121 -0
  76. package/dist/cpsat/rules/max-concurrent-assignments.js.map +1 -0
  77. package/dist/cpsat/rules/max-consecutive-days.d.ts +18 -17
  78. package/dist/cpsat/rules/max-consecutive-days.d.ts.map +1 -1
  79. package/dist/cpsat/rules/max-consecutive-days.js +67 -66
  80. package/dist/cpsat/rules/max-consecutive-days.js.map +1 -1
  81. package/dist/cpsat/rules/max-days-of-week-per-period.d.ts +45 -0
  82. package/dist/cpsat/rules/max-days-of-week-per-period.d.ts.map +1 -0
  83. package/dist/cpsat/rules/max-days-of-week-per-period.js +95 -0
  84. package/dist/cpsat/rules/max-days-of-week-per-period.js.map +1 -0
  85. package/dist/cpsat/rules/max-days-week.d.ts +30 -0
  86. package/dist/cpsat/rules/max-days-week.d.ts.map +1 -0
  87. package/dist/cpsat/rules/max-days-week.js +83 -0
  88. package/dist/cpsat/rules/max-days-week.js.map +1 -0
  89. package/dist/cpsat/rules/max-hours-day.d.ts +14 -31
  90. package/dist/cpsat/rules/max-hours-day.d.ts.map +1 -1
  91. package/dist/cpsat/rules/max-hours-day.js +56 -72
  92. package/dist/cpsat/rules/max-hours-day.js.map +1 -1
  93. package/dist/cpsat/rules/max-hours-week.d.ts +15 -31
  94. package/dist/cpsat/rules/max-hours-week.d.ts.map +1 -1
  95. package/dist/cpsat/rules/max-hours-week.js +60 -75
  96. package/dist/cpsat/rules/max-hours-week.js.map +1 -1
  97. package/dist/cpsat/rules/max-shifts-day.d.ts +17 -33
  98. package/dist/cpsat/rules/max-shifts-day.d.ts.map +1 -1
  99. package/dist/cpsat/rules/max-shifts-day.js +57 -73
  100. package/dist/cpsat/rules/max-shifts-day.js.map +1 -1
  101. package/dist/cpsat/rules/min-consecutive-days.d.ts +18 -18
  102. package/dist/cpsat/rules/min-consecutive-days.d.ts.map +1 -1
  103. package/dist/cpsat/rules/min-consecutive-days.js +123 -94
  104. package/dist/cpsat/rules/min-consecutive-days.js.map +1 -1
  105. package/dist/cpsat/rules/min-days-of-week-per-period.d.ts +35 -0
  106. package/dist/cpsat/rules/min-days-of-week-per-period.d.ts.map +1 -0
  107. package/dist/cpsat/rules/min-days-of-week-per-period.js +108 -0
  108. package/dist/cpsat/rules/min-days-of-week-per-period.js.map +1 -0
  109. package/dist/cpsat/rules/min-days-week.d.ts +21 -0
  110. package/dist/cpsat/rules/min-days-week.d.ts.map +1 -0
  111. package/dist/cpsat/rules/min-days-week.js +95 -0
  112. package/dist/cpsat/rules/min-days-week.js.map +1 -0
  113. package/dist/cpsat/rules/min-hours-day.d.ts +14 -17
  114. package/dist/cpsat/rules/min-hours-day.d.ts.map +1 -1
  115. package/dist/cpsat/rules/min-hours-day.js +72 -54
  116. package/dist/cpsat/rules/min-hours-day.js.map +1 -1
  117. package/dist/cpsat/rules/min-hours-week.d.ts +15 -18
  118. package/dist/cpsat/rules/min-hours-week.d.ts.map +1 -1
  119. package/dist/cpsat/rules/min-hours-week.js +75 -57
  120. package/dist/cpsat/rules/min-hours-week.js.map +1 -1
  121. package/dist/cpsat/rules/min-rest-between-shifts.d.ts +14 -17
  122. package/dist/cpsat/rules/min-rest-between-shifts.d.ts.map +1 -1
  123. package/dist/cpsat/rules/min-rest-between-shifts.js +148 -138
  124. package/dist/cpsat/rules/min-rest-between-shifts.js.map +1 -1
  125. package/dist/cpsat/rules/minimize-cost.d.ts +2 -18
  126. package/dist/cpsat/rules/minimize-cost.d.ts.map +1 -1
  127. package/dist/cpsat/rules/minimize-cost.js +151 -163
  128. package/dist/cpsat/rules/minimize-cost.js.map +1 -1
  129. package/dist/cpsat/rules/must-assign.d.ts +12 -0
  130. package/dist/cpsat/rules/must-assign.d.ts.map +1 -0
  131. package/dist/cpsat/rules/must-assign.js +54 -0
  132. package/dist/cpsat/rules/must-assign.js.map +1 -0
  133. package/dist/cpsat/rules/overtime-daily-multiplier.d.ts +6 -10
  134. package/dist/cpsat/rules/overtime-daily-multiplier.d.ts.map +1 -1
  135. package/dist/cpsat/rules/overtime-daily-multiplier.js +118 -112
  136. package/dist/cpsat/rules/overtime-daily-multiplier.js.map +1 -1
  137. package/dist/cpsat/rules/overtime-daily-surcharge.d.ts +6 -11
  138. package/dist/cpsat/rules/overtime-daily-surcharge.d.ts.map +1 -1
  139. package/dist/cpsat/rules/overtime-daily-surcharge.js +104 -99
  140. package/dist/cpsat/rules/overtime-daily-surcharge.js.map +1 -1
  141. package/dist/cpsat/rules/overtime-tiered-multiplier.d.ts +9 -21
  142. package/dist/cpsat/rules/overtime-tiered-multiplier.d.ts.map +1 -1
  143. package/dist/cpsat/rules/overtime-tiered-multiplier.js +181 -199
  144. package/dist/cpsat/rules/overtime-tiered-multiplier.js.map +1 -1
  145. package/dist/cpsat/rules/overtime-weekly-multiplier.d.ts +13 -12
  146. package/dist/cpsat/rules/overtime-weekly-multiplier.d.ts.map +1 -1
  147. package/dist/cpsat/rules/overtime-weekly-multiplier.js +143 -143
  148. package/dist/cpsat/rules/overtime-weekly-multiplier.js.map +1 -1
  149. package/dist/cpsat/rules/overtime-weekly-surcharge.d.ts +7 -11
  150. package/dist/cpsat/rules/overtime-weekly-surcharge.d.ts.map +1 -1
  151. package/dist/cpsat/rules/overtime-weekly-surcharge.js +124 -119
  152. package/dist/cpsat/rules/overtime-weekly-surcharge.js.map +1 -1
  153. package/dist/cpsat/rules/pattern-eligibility.d.ts +6 -0
  154. package/dist/cpsat/rules/pattern-eligibility.d.ts.map +1 -0
  155. package/dist/cpsat/rules/pattern-eligibility.js +16 -0
  156. package/dist/cpsat/rules/pattern-eligibility.js.map +1 -0
  157. package/dist/cpsat/rules/pattern-time.d.ts +5 -0
  158. package/dist/cpsat/rules/pattern-time.d.ts.map +1 -0
  159. package/dist/cpsat/rules/pattern-time.js +20 -0
  160. package/dist/cpsat/rules/pattern-time.js.map +1 -0
  161. package/dist/cpsat/rules/registry.d.ts +217 -27
  162. package/dist/cpsat/rules/registry.d.ts.map +1 -1
  163. package/dist/cpsat/rules/registry.js +98 -31
  164. package/dist/cpsat/rules/registry.js.map +1 -1
  165. package/dist/cpsat/rules/resolver.d.ts +9 -7
  166. package/dist/cpsat/rules/resolver.d.ts.map +1 -1
  167. package/dist/cpsat/rules/resolver.js +19 -18
  168. package/dist/cpsat/rules/resolver.js.map +1 -1
  169. package/dist/cpsat/rules/role-preference.d.ts +24 -0
  170. package/dist/cpsat/rules/role-preference.d.ts.map +1 -0
  171. package/dist/cpsat/rules/role-preference.js +72 -0
  172. package/dist/cpsat/rules/role-preference.js.map +1 -0
  173. package/dist/cpsat/rules/rules.types.d.ts +93 -17
  174. package/dist/cpsat/rules/rules.types.d.ts.map +1 -1
  175. package/dist/cpsat/rules/scope.types.d.ts +25 -12
  176. package/dist/cpsat/rules/scope.types.d.ts.map +1 -1
  177. package/dist/cpsat/rules/scope.types.js +14 -19
  178. package/dist/cpsat/rules/scope.types.js.map +1 -1
  179. package/dist/cpsat/rules/target-days-week.d.ts +31 -0
  180. package/dist/cpsat/rules/target-days-week.d.ts.map +1 -0
  181. package/dist/cpsat/rules/target-days-week.js +80 -0
  182. package/dist/cpsat/rules/target-days-week.js.map +1 -0
  183. package/dist/cpsat/rules/target-peak-concurrent-assignments.d.ts +33 -0
  184. package/dist/cpsat/rules/target-peak-concurrent-assignments.d.ts.map +1 -0
  185. package/dist/cpsat/rules/target-peak-concurrent-assignments.js +146 -0
  186. package/dist/cpsat/rules/target-peak-concurrent-assignments.js.map +1 -0
  187. package/dist/cpsat/rules/time-cost-surcharge.d.ts +15 -14
  188. package/dist/cpsat/rules/time-cost-surcharge.d.ts.map +1 -1
  189. package/dist/cpsat/rules/time-cost-surcharge.js +82 -96
  190. package/dist/cpsat/rules/time-cost-surcharge.js.map +1 -1
  191. package/dist/cpsat/rules/time-off.d.ts +21 -57
  192. package/dist/cpsat/rules/time-off.d.ts.map +1 -1
  193. package/dist/cpsat/rules/time-off.js +114 -127
  194. package/dist/cpsat/rules/time-off.js.map +1 -1
  195. package/dist/cpsat/rules/variables.d.ts +4 -0
  196. package/dist/cpsat/rules/variables.d.ts.map +1 -0
  197. package/dist/cpsat/rules/variables.js +10 -0
  198. package/dist/cpsat/rules/variables.js.map +1 -0
  199. package/dist/cpsat/rules.d.ts +20 -3
  200. package/dist/cpsat/rules.d.ts.map +1 -1
  201. package/dist/cpsat/rules.js +19 -2
  202. package/dist/cpsat/rules.js.map +1 -1
  203. package/dist/cpsat/semantic-time.d.ts +7 -6
  204. package/dist/cpsat/semantic-time.d.ts.map +1 -1
  205. package/dist/cpsat/semantic-time.js +15 -28
  206. package/dist/cpsat/semantic-time.js.map +1 -1
  207. package/dist/cpsat/types.d.ts +47 -4
  208. package/dist/cpsat/types.d.ts.map +1 -1
  209. package/dist/cpsat/types.js +24 -1
  210. package/dist/cpsat/types.js.map +1 -1
  211. package/dist/cpsat/utils.d.ts +23 -6
  212. package/dist/cpsat/utils.d.ts.map +1 -1
  213. package/dist/cpsat/utils.js +76 -15
  214. package/dist/cpsat/utils.js.map +1 -1
  215. package/dist/cpsat/validation-reporter.d.ts +6 -2
  216. package/dist/cpsat/validation-reporter.d.ts.map +1 -1
  217. package/dist/cpsat/validation-reporter.js +122 -10
  218. package/dist/cpsat/validation-reporter.js.map +1 -1
  219. package/dist/cpsat/validation.types.d.ts +21 -10
  220. package/dist/cpsat/validation.types.d.ts.map +1 -1
  221. package/dist/datetime.utils.d.ts +7 -13
  222. package/dist/datetime.utils.d.ts.map +1 -1
  223. package/dist/datetime.utils.js +29 -36
  224. package/dist/datetime.utils.js.map +1 -1
  225. package/dist/index.d.ts +15 -9
  226. package/dist/index.d.ts.map +1 -1
  227. package/dist/index.js +11 -4
  228. package/dist/index.js.map +1 -1
  229. package/dist/schedule/cost.d.ts +192 -0
  230. package/dist/schedule/cost.d.ts.map +1 -0
  231. package/dist/schedule/cost.js +151 -0
  232. package/dist/schedule/cost.js.map +1 -0
  233. package/dist/schedule/coverage.d.ts +114 -0
  234. package/dist/schedule/coverage.d.ts.map +1 -0
  235. package/dist/schedule/coverage.js +56 -0
  236. package/dist/schedule/coverage.js.map +1 -0
  237. package/dist/schedule/definition.d.ts +346 -0
  238. package/dist/schedule/definition.d.ts.map +1 -0
  239. package/dist/schedule/definition.js +668 -0
  240. package/dist/schedule/definition.js.map +1 -0
  241. package/dist/schedule/index.d.ts +67 -0
  242. package/dist/schedule/index.d.ts.map +1 -0
  243. package/dist/schedule/index.js +69 -0
  244. package/dist/schedule/index.js.map +1 -0
  245. package/dist/schedule/rules.d.ts +678 -0
  246. package/dist/schedule/rules.d.ts.map +1 -0
  247. package/dist/schedule/rules.js +554 -0
  248. package/dist/schedule/rules.js.map +1 -0
  249. package/dist/schedule/shift-patterns.d.ts +17 -0
  250. package/dist/schedule/shift-patterns.d.ts.map +1 -0
  251. package/dist/schedule/shift-patterns.js +24 -0
  252. package/dist/schedule/shift-patterns.js.map +1 -0
  253. package/dist/schedule/time-periods.d.ts +79 -0
  254. package/dist/schedule/time-periods.d.ts.map +1 -0
  255. package/dist/schedule/time-periods.js +101 -0
  256. package/dist/schedule/time-periods.js.map +1 -0
  257. package/dist/types.d.ts +67 -3
  258. package/dist/types.d.ts.map +1 -1
  259. package/dist/types.js +64 -0
  260. package/dist/types.js.map +1 -1
  261. package/package.json +8 -14
  262. package/solver/src/solver/models.py +41 -4
  263. package/solver/src/solver/solver.py +546 -157
  264. package/solver/tests/test_solver.py +363 -7
  265. package/src/client.schemas.ts +127 -10
  266. package/src/client.ts +3 -0
  267. package/src/client.types.ts +73 -7
  268. package/src/cpsat/cost.ts +17 -7
  269. package/src/cpsat/model-builder.ts +614 -129
  270. package/src/cpsat/response.ts +57 -13
  271. package/src/cpsat/rule-descriptor.ts +311 -0
  272. package/src/cpsat/rules/artifacts.ts +56 -0
  273. package/src/cpsat/rules/assign-together.ts +104 -69
  274. package/src/cpsat/rules/assigned-day.ts +70 -0
  275. package/src/cpsat/rules/assignment-priority.ts +54 -58
  276. package/src/cpsat/rules/assignment-terms.ts +43 -0
  277. package/src/cpsat/rules/concurrent-intervals.ts +93 -0
  278. package/src/cpsat/rules/cost-utils.ts +1 -9
  279. package/src/cpsat/rules/day-cost-multiplier.ts +101 -81
  280. package/src/cpsat/rules/day-cost-surcharge.ts +91 -70
  281. package/src/cpsat/rules/index.ts +30 -21
  282. package/src/cpsat/rules/location-preference.ts +47 -52
  283. package/src/cpsat/rules/max-concurrent-assignments.ts +170 -0
  284. package/src/cpsat/rules/max-consecutive-days.ts +74 -91
  285. package/src/cpsat/rules/max-days-of-week-per-period.ts +127 -0
  286. package/src/cpsat/rules/max-days-week.ts +117 -0
  287. package/src/cpsat/rules/max-hours-day.ts +64 -84
  288. package/src/cpsat/rules/max-hours-week.ts +74 -90
  289. package/src/cpsat/rules/max-shifts-day.ts +65 -85
  290. package/src/cpsat/rules/min-consecutive-days.ts +161 -127
  291. package/src/cpsat/rules/min-days-of-week-per-period.ts +144 -0
  292. package/src/cpsat/rules/min-days-week.ts +122 -0
  293. package/src/cpsat/rules/min-hours-day.ts +79 -58
  294. package/src/cpsat/rules/min-hours-week.ts +87 -62
  295. package/src/cpsat/rules/min-rest-between-shifts.ts +191 -178
  296. package/src/cpsat/rules/minimize-cost.ts +175 -188
  297. package/src/cpsat/rules/must-assign.ts +71 -0
  298. package/src/cpsat/rules/overtime-daily-multiplier.ts +158 -140
  299. package/src/cpsat/rules/overtime-daily-surcharge.ts +141 -126
  300. package/src/cpsat/rules/overtime-tiered-multiplier.ts +234 -253
  301. package/src/cpsat/rules/overtime-weekly-multiplier.ts +183 -175
  302. package/src/cpsat/rules/overtime-weekly-surcharge.ts +161 -150
  303. package/src/cpsat/rules/pattern-eligibility.ts +26 -0
  304. package/src/cpsat/rules/pattern-time.ts +30 -0
  305. package/src/cpsat/rules/registry.ts +140 -56
  306. package/src/cpsat/rules/resolver.ts +58 -30
  307. package/src/cpsat/rules/role-preference.ts +92 -0
  308. package/src/cpsat/rules/rules.types.ts +92 -17
  309. package/src/cpsat/rules/scope.types.ts +32 -27
  310. package/src/cpsat/rules/target-days-week.ts +105 -0
  311. package/src/cpsat/rules/target-peak-concurrent-assignments.ts +212 -0
  312. package/src/cpsat/rules/time-cost-surcharge.ts +116 -122
  313. package/src/cpsat/rules/time-off.ts +154 -163
  314. package/src/cpsat/rules/variables.ts +11 -0
  315. package/src/cpsat/rules.ts +43 -17
  316. package/src/cpsat/semantic-time.ts +29 -43
  317. package/src/cpsat/types.ts +53 -4
  318. package/src/cpsat/utils.ts +92 -20
  319. package/src/cpsat/validation-reporter.ts +170 -19
  320. package/src/cpsat/validation.types.ts +22 -11
  321. package/src/datetime.utils.ts +45 -44
  322. package/src/index.ts +72 -15
  323. package/src/schedule/cost.ts +221 -0
  324. package/src/schedule/coverage.ts +164 -0
  325. package/src/schedule/definition.ts +1447 -0
  326. package/src/schedule/index.ts +132 -0
  327. package/src/schedule/rules.ts +1028 -0
  328. package/src/schedule/shift-patterns.ts +29 -0
  329. package/src/schedule/time-periods.ts +120 -0
  330. package/src/types.ts +114 -2
  331. package/dist/llms.d.ts +0 -2
  332. package/dist/llms.d.ts.map +0 -1
  333. package/dist/llms.js +0 -3
  334. package/dist/llms.js.map +0 -1
  335. package/dist/schedule.d.ts +0 -917
  336. package/dist/schedule.d.ts.map +0 -1
  337. package/dist/schedule.js +0 -1323
  338. package/dist/schedule.js.map +0 -1
  339. package/llms.txt +0 -758
  340. package/src/llms.ts +0 -3
  341. package/src/schedule.ts +0 -1960
package/CHANGELOG.md CHANGED
@@ -5,6 +5,50 @@ All notable changes to this project will be documented in this file.
5
5
  This changelog was generated from the git history of the project when it was
6
6
  named `scheduling-core`, prior to the rename to `dabke` in v0.78.0.
7
7
 
8
+ ## 0.84.0 (2026-06-03)
9
+
10
+ ### Breaking Changes
11
+
12
+ - Replace string day representations in compiled model internals with `SchedulingDay` values.
13
+ - Replace the older assignment preference helper shape with `preferAssignment()` and `avoidAssignment()`, and add role-specific preference support with `preferRole()`.
14
+
15
+ ### Features
16
+
17
+ - Add `targetPeakConcurrentAssignments()` for soft peak-concurrency targets that can be paired with `maxConcurrentAssignments()` hard caps.
18
+ - Add feasibility-only solve strategy support for finding any hard-feasible schedule while ignoring soft objectives.
19
+ - Report assigned roles in solver assignments when a shift can satisfy multiple roles.
20
+ - Report hard constraint conflicts for infeasible schedules when hard diagnostics are enabled.
21
+
22
+ ### Improvements
23
+
24
+ - Compile rules through descriptors and artifacts for more consistent constraint tracking and validation.
25
+ - Add staged objective transport so the solver can optimize objective stages in priority order.
26
+ - Fail fast when staged solve requests return an unexpected solver error.
27
+ - Update devDependencies.
28
+
29
+ ## 0.83.0 (2026-03-21)
30
+
31
+ ### Breaking Changes
32
+
33
+ - Remove `./llms` export path and `llms.txt` from the package. The LLM reference
34
+ is now generated externally via `generate:reference`.
35
+
36
+ ### Features
37
+
38
+ - Add `maxDaysPerWeek(days, opts?)` and `minDaysPerWeek(days, opts?)` rule functions
39
+ to constrain the number of distinct working days per member per scheduling week.
40
+ - Add `mustAssign(opts?)` rule for staffing obligations. Guarantees targeted members
41
+ appear on the schedule each week; defaults to HIGH priority so the schedule still
42
+ generates when a member cannot be placed.
43
+
44
+ ### Improvements
45
+
46
+ - Split `schedule.ts` into focused modules under `src/schedule/` (public API unchanged).
47
+ - Add `NoInfer` on coverage entry types so role/skill references are checked against
48
+ declared roles and skills at compile time.
49
+ - Update devDependencies (@types/node ^25.0.0, commander ^14.0.3).
50
+ - Publish workflow now includes changelog text in GitHub releases.
51
+
8
52
  ## 0.82.0 (2026-02-23)
9
53
 
10
54
  ### Breaking Changes
package/README.md CHANGED
@@ -16,6 +16,7 @@ import {
16
16
  cover,
17
17
  shift,
18
18
  maxHoursPerWeek,
19
+ maxConcurrentAssignments,
19
20
  minRestBetweenShifts,
20
21
  timeOff,
21
22
  minimizeCost,
@@ -55,6 +56,7 @@ const venue = schedule({
55
56
 
56
57
  rules: [
57
58
  maxHoursPerWeek(40),
59
+ maxConcurrentAssignments(3, { appliesTo: "barista" }),
58
60
  minRestBetweenShifts(11),
59
61
  timeOff({ appliesTo: "alice", dayOfWeek: weekend }),
60
62
  minimizeCost(),
@@ -145,20 +147,26 @@ const ready = venue.with([
145
147
 
146
148
  ### Scheduling
147
149
 
148
- | Function | Description |
149
- | -------------------------- | ------------------------------------ |
150
- | `maxHoursPerDay(hours)` | Max hours per person per day |
151
- | `maxHoursPerWeek(hours)` | Max hours per person per week |
152
- | `minHoursPerDay(hours)` | Min hours per person per day |
153
- | `minHoursPerWeek(hours)` | Min hours per person per week |
154
- | `maxShiftsPerDay(n)` | Max shift assignments per day |
155
- | `maxConsecutiveDays(n)` | Max consecutive working days |
156
- | `minConsecutiveDays(n)` | Min consecutive working days |
157
- | `minRestBetweenShifts(h)` | Min rest hours between shifts |
158
- | `timeOff(opts)` | Block assignments during periods |
159
- | `preference(level, opts)` | Prefer or avoid assigning members |
160
- | `preferLocation(id, opts)` | Prefer members at specific locations |
161
- | `assignTogether(opts)` | Keep members on the same shifts |
150
+ | Function | Description |
151
+ | ------------------------------------ | -------------------------------------- |
152
+ | `maxHoursPerDay(hours)` | Max hours per person per day |
153
+ | `maxHoursPerWeek(hours)` | Max hours per person per week |
154
+ | `minHoursPerDay(hours)` | Min hours per person per day |
155
+ | `minHoursPerWeek(hours)` | Min hours per person per week |
156
+ | `maxShiftsPerDay(n)` | Max shift assignments per day |
157
+ | `maxConcurrentAssignments(n)` | Max concurrent assignments in a window |
158
+ | `targetPeakConcurrentAssignments(n)` | Preferred peak concurrent assignments |
159
+ | `maxConsecutiveDays(n)` | Max consecutive assigned days |
160
+ | `minConsecutiveDays(n)` | Min consecutive assigned days |
161
+ | `maxDaysOfWeekPerPeriod(n, days, p)` | Max matching weekdays across a period |
162
+ | `minDaysOfWeekPerPeriod(n, days, p)` | Min matching weekdays across a period |
163
+ | `minRestBetweenShifts(h)` | Min rest hours between shifts |
164
+ | `timeOff(opts)` | Block assignments during periods |
165
+ | `preferAssignment(opts)` | Prefer assigning targeted members |
166
+ | `avoidAssignment(opts)` | Avoid assigning targeted members |
167
+ | `preferRole(id, opts)` | Prefer members in a specific role |
168
+ | `preferLocation(id, opts)` | Prefer members at specific locations |
169
+ | `assignTogether(opts)` | Keep members on the same shifts |
162
170
 
163
171
  ### Cost
164
172
 
@@ -176,16 +184,6 @@ const ready = venue.with([
176
184
 
177
185
  ---
178
186
 
179
- ## LLM Integration
180
-
181
- dabke ships an `llms.txt` with complete API documentation for AI code generation:
182
-
183
- ```typescript
184
- import { apiDocs } from "dabke/llms";
185
- ```
186
-
187
- ---
188
-
189
187
  ## Development
190
188
 
191
189
  Unit tests (no dependencies): `npm run test:unit`
package/dist/client.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  import { type FetcherLike, type SolverClient, type SolverRequest } from "./client.types.js";
2
- export type { SolverClient, SolverRequest, SolverResponse, SolverVariable, SolverConstraint, SolverTerm, SolverObjective, FetcherLike, } from "./client.types.js";
2
+ export type { SolverClient, SolverRequest, SolverResponse, SolverVariable, SolverConstraint, SolverTerm, SolverObjective, SolverObjectiveStage, SolverMode, SolverStageResult, FetcherLike, } from "./client.types.js";
3
3
  /**
4
4
  * Generic HTTP client for the solver service.
5
5
  *
@@ -11,7 +11,33 @@ export declare class HttpSolverClient implements SolverClient {
11
11
  solve(request: SolverRequest, options?: {
12
12
  signal?: AbortSignal;
13
13
  }): Promise<{
14
- status: "OPTIMAL" | "FEASIBLE" | "INFEASIBLE" | "TIMEOUT" | "ERROR";
14
+ status: "OPTIMAL" | "FEASIBLE";
15
+ softConstraintViolations: {
16
+ constraintId: string;
17
+ violationAmount: number;
18
+ targetValue: number;
19
+ actualValue: number;
20
+ }[];
21
+ values?: Record<string, number> | undefined;
22
+ statistics?: {
23
+ solveTimeMs?: number | undefined;
24
+ conflicts?: number | undefined;
25
+ branches?: number | undefined;
26
+ } | undefined;
27
+ error?: string | undefined;
28
+ solutionInfo?: string | undefined;
29
+ hardConstraintConflicts?: {
30
+ constraintId: string;
31
+ }[] | undefined;
32
+ stageResults?: {
33
+ id: string;
34
+ status: "OPTIMAL" | "FEASIBLE" | "INFEASIBLE" | "TIMEOUT" | "ERROR";
35
+ solveTimeMs: number;
36
+ objectiveValue?: number | undefined;
37
+ bestObjectiveBound?: number | undefined;
38
+ }[] | undefined;
39
+ } | {
40
+ status: "INFEASIBLE" | "TIMEOUT" | "ERROR";
15
41
  values?: Record<string, number> | undefined;
16
42
  statistics?: {
17
43
  solveTimeMs?: number | undefined;
@@ -20,7 +46,17 @@ export declare class HttpSolverClient implements SolverClient {
20
46
  } | undefined;
21
47
  error?: string | undefined;
22
48
  solutionInfo?: string | undefined;
23
- softViolations?: {
49
+ hardConstraintConflicts?: {
50
+ constraintId: string;
51
+ }[] | undefined;
52
+ stageResults?: {
53
+ id: string;
54
+ status: "OPTIMAL" | "FEASIBLE" | "INFEASIBLE" | "TIMEOUT" | "ERROR";
55
+ solveTimeMs: number;
56
+ objectiveValue?: number | undefined;
57
+ bestObjectiveBound?: number | undefined;
58
+ }[] | undefined;
59
+ softConstraintViolations?: {
24
60
  constraintId: string;
25
61
  violationAmount: number;
26
62
  targetValue: number;
@@ -1 +1 @@
1
- {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,WAAW,EAAE,KAAK,YAAY,EAAE,KAAK,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAG5F,YAAY,EACV,YAAY,EACZ,aAAa,EACb,cAAc,EACd,cAAc,EACd,gBAAgB,EAChB,UAAU,EACV,eAAe,EACf,WAAW,GACZ,MAAM,mBAAmB,CAAC;AAS3B;;;;GAIG;AACH,qBAAa,gBAAiB,YAAW,YAAY;;gBAIvC,OAAO,EAAE,WAAW,EAAE,OAAO,GAAE,MAAgC;IAKrE,KAAK,CAAC,OAAO,EAAE,aAAa,EAAE,OAAO,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,WAAW,CAAA;KAAE;;;;;;;;;;;;;;;;;IAqBhE,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;CAQ9B"}
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,WAAW,EAAE,KAAK,YAAY,EAAE,KAAK,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAG5F,YAAY,EACV,YAAY,EACZ,aAAa,EACb,cAAc,EACd,cAAc,EACd,gBAAgB,EAChB,UAAU,EACV,eAAe,EACf,oBAAoB,EACpB,UAAU,EACV,iBAAiB,EACjB,WAAW,GACZ,MAAM,mBAAmB,CAAC;AAS3B;;;;GAIG;AACH,qBAAa,gBAAiB,YAAW,YAAY;;gBAIvC,OAAO,EAAE,WAAW,EAAE,OAAO,GAAE,MAAgC;IAKrE,KAAK,CAAC,OAAO,EAAE,aAAa,EAAE,OAAO,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,WAAW,CAAA;KAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAqBhE,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;CAQ9B"}
@@ -1 +1 @@
1
- {"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAa3D,MAAM,cAAc,GAAG,CACrB,OAAoB,EAC8C,EAAE;IACpE,IAAI,OAAO,OAAO,KAAK,UAAU;QAAE,OAAO,OAAO,CAAC;IAClD,OAAO,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;AACrC,CAAC,CAAC;AAEF;;;;GAIG;AACH,MAAM,OAAO,gBAAgB;IAC3B,MAAM,CAAiE;IACvE,QAAQ,CAAS;IAEjB,YAAY,OAAoB,EAAE,UAAkB,uBAAuB;QACzE,IAAI,CAAC,MAAM,GAAG,cAAc,CAAC,OAAO,CAAC,CAAC;QACtC,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;IAC7C,CAAC;IAED,KAAK,CAAC,KAAK,CAAC,OAAsB,EAAE,OAAkC;QACpE,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC,QAAQ,QAAQ,EAAE;YACtD,MAAM,EAAE,MAAM;YACd,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;YAC/C,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC;YAC7B,MAAM,EAAE,OAAO,EAAE,MAAM;SACxB,CAAC,CAAC;QAEH,MAAM,QAAQ,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC;QAClC,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;YACZ,MAAM,MAAM,GAAG,QAAQ,CAAC,CAAC,CAAC,KAAK,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC/C,MAAM,IAAI,KAAK,CAAC,mBAAmB,GAAG,CAAC,MAAM,GAAG,MAAM,EAAE,CAAC,CAAC;QAC5D,CAAC;QAED,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;QACvD,CAAC;QAED,OAAO,oBAAoB,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;IAC1D,CAAC;IAED,KAAK,CAAC,MAAM;QACV,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC,QAAQ,SAAS,CAAC,CAAC;QACzD,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;YACZ,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;YAChD,MAAM,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC,KAAK,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC3C,MAAM,IAAI,KAAK,CAAC,mCAAmC,GAAG,CAAC,MAAM,GAAG,MAAM,EAAE,CAAC,CAAC;QAC5E,CAAC;IACH,CAAC;CACF"}
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAgB3D,MAAM,cAAc,GAAG,CACrB,OAAoB,EAC8C,EAAE;IACpE,IAAI,OAAO,OAAO,KAAK,UAAU;QAAE,OAAO,OAAO,CAAC;IAClD,OAAO,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;AACrC,CAAC,CAAC;AAEF;;;;GAIG;AACH,MAAM,OAAO,gBAAgB;IAC3B,MAAM,CAAiE;IACvE,QAAQ,CAAS;IAEjB,YAAY,OAAoB,EAAE,UAAkB,uBAAuB;QACzE,IAAI,CAAC,MAAM,GAAG,cAAc,CAAC,OAAO,CAAC,CAAC;QACtC,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;IAC7C,CAAC;IAED,KAAK,CAAC,KAAK,CAAC,OAAsB,EAAE,OAAkC;QACpE,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC,QAAQ,QAAQ,EAAE;YACtD,MAAM,EAAE,MAAM;YACd,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;YAC/C,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC;YAC7B,MAAM,EAAE,OAAO,EAAE,MAAM;SACxB,CAAC,CAAC;QAEH,MAAM,QAAQ,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC;QAClC,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;YACZ,MAAM,MAAM,GAAG,QAAQ,CAAC,CAAC,CAAC,KAAK,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC/C,MAAM,IAAI,KAAK,CAAC,mBAAmB,GAAG,CAAC,MAAM,GAAG,MAAM,EAAE,CAAC,CAAC;QAC5D,CAAC;QAED,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;QACvD,CAAC;QAED,OAAO,oBAAoB,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;IAC1D,CAAC;IAED,KAAK,CAAC,MAAM;QACV,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC,QAAQ,SAAS,CAAC,CAAC;QACzD,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;YACZ,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;YAChD,MAAM,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC,KAAK,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC3C,MAAM,IAAI,KAAK,CAAC,mCAAmC,GAAG,CAAC,MAAM,GAAG,MAAM,EAAE,CAAC,CAAC;QAC5E,CAAC;IACH,CAAC;CACF"}
@@ -53,6 +53,7 @@ export declare const LinearConstraintSchema: z.ZodObject<{
53
53
  }, z.core.$strip>>;
54
54
  op: z.ZodUnion<readonly [z.ZodLiteral<"<=">, z.ZodLiteral<">=">, z.ZodLiteral<"==">]>;
55
55
  rhs: z.ZodNumber;
56
+ id: z.ZodOptional<z.ZodString>;
56
57
  }, z.core.$strip>;
57
58
  export declare const SoftLinearConstraintSchema: z.ZodObject<{
58
59
  type: z.ZodLiteral<"soft_linear">;
@@ -64,6 +65,7 @@ export declare const SoftLinearConstraintSchema: z.ZodObject<{
64
65
  rhs: z.ZodNumber;
65
66
  penalty: z.ZodNumber;
66
67
  id: z.ZodOptional<z.ZodString>;
68
+ stage: z.ZodOptional<z.ZodString>;
67
69
  }, z.core.$strip>;
68
70
  export declare const ExactlyOneConstraintSchema: z.ZodObject<{
69
71
  type: z.ZodLiteral<"exactly_one">;
@@ -98,6 +100,7 @@ export declare const SolverConstraintSchema: z.ZodUnion<readonly [z.ZodObject<{
98
100
  }, z.core.$strip>>;
99
101
  op: z.ZodUnion<readonly [z.ZodLiteral<"<=">, z.ZodLiteral<">=">, z.ZodLiteral<"==">]>;
100
102
  rhs: z.ZodNumber;
103
+ id: z.ZodOptional<z.ZodString>;
101
104
  }, z.core.$strip>, z.ZodObject<{
102
105
  type: z.ZodLiteral<"soft_linear">;
103
106
  terms: z.ZodArray<z.ZodObject<{
@@ -108,6 +111,7 @@ export declare const SolverConstraintSchema: z.ZodUnion<readonly [z.ZodObject<{
108
111
  rhs: z.ZodNumber;
109
112
  penalty: z.ZodNumber;
110
113
  id: z.ZodOptional<z.ZodString>;
114
+ stage: z.ZodOptional<z.ZodString>;
111
115
  }, z.core.$strip>, z.ZodObject<{
112
116
  type: z.ZodLiteral<"exactly_one">;
113
117
  vars: z.ZodArray<z.ZodString>;
@@ -135,9 +139,49 @@ export declare const SolverObjectiveSchema: z.ZodObject<{
135
139
  coeff: z.ZodNumber;
136
140
  }, z.core.$strip>>;
137
141
  }, z.core.$strip>;
142
+ export declare const SolverObjectiveStageSchema: z.ZodObject<{
143
+ sense: z.ZodUnion<readonly [z.ZodLiteral<"minimize">, z.ZodLiteral<"maximize">]>;
144
+ terms: z.ZodArray<z.ZodObject<{
145
+ var: z.ZodString;
146
+ coeff: z.ZodNumber;
147
+ }, z.core.$strip>>;
148
+ id: z.ZodString;
149
+ }, z.core.$strip>;
150
+ export declare const SolverModeSchema: z.ZodEnum<{
151
+ optimize: "optimize";
152
+ satisfy: "satisfy";
153
+ }>;
154
+ export declare const SolverDiagnosticModeSchema: z.ZodEnum<{
155
+ none: "none";
156
+ hard: "hard";
157
+ }>;
138
158
  export declare const SolverOptionsSchema: z.ZodObject<{
139
159
  timeLimitSeconds: z.ZodOptional<z.ZodNumber>;
140
160
  solutionLimit: z.ZodOptional<z.ZodNumber>;
161
+ diagnostics: z.ZodOptional<z.ZodEnum<{
162
+ none: "none";
163
+ hard: "hard";
164
+ }>>;
165
+ }, z.core.$strip>;
166
+ export declare const SolverStatusSchema: z.ZodEnum<{
167
+ OPTIMAL: "OPTIMAL";
168
+ FEASIBLE: "FEASIBLE";
169
+ INFEASIBLE: "INFEASIBLE";
170
+ TIMEOUT: "TIMEOUT";
171
+ ERROR: "ERROR";
172
+ }>;
173
+ export declare const SolverStageResultSchema: z.ZodObject<{
174
+ id: z.ZodString;
175
+ status: z.ZodEnum<{
176
+ OPTIMAL: "OPTIMAL";
177
+ FEASIBLE: "FEASIBLE";
178
+ INFEASIBLE: "INFEASIBLE";
179
+ TIMEOUT: "TIMEOUT";
180
+ ERROR: "ERROR";
181
+ }>;
182
+ objectiveValue: z.ZodOptional<z.ZodNumber>;
183
+ bestObjectiveBound: z.ZodOptional<z.ZodNumber>;
184
+ solveTimeMs: z.ZodNumber;
141
185
  }, z.core.$strip>;
142
186
  export declare const SolverRequestSchema: z.ZodObject<{
143
187
  variables: z.ZodArray<z.ZodUnion<readonly [z.ZodObject<{
@@ -164,6 +208,7 @@ export declare const SolverRequestSchema: z.ZodObject<{
164
208
  }, z.core.$strip>>;
165
209
  op: z.ZodUnion<readonly [z.ZodLiteral<"<=">, z.ZodLiteral<">=">, z.ZodLiteral<"==">]>;
166
210
  rhs: z.ZodNumber;
211
+ id: z.ZodOptional<z.ZodString>;
167
212
  }, z.core.$strip>, z.ZodObject<{
168
213
  type: z.ZodLiteral<"soft_linear">;
169
214
  terms: z.ZodArray<z.ZodObject<{
@@ -174,6 +219,7 @@ export declare const SolverRequestSchema: z.ZodObject<{
174
219
  rhs: z.ZodNumber;
175
220
  penalty: z.ZodNumber;
176
221
  id: z.ZodOptional<z.ZodString>;
222
+ stage: z.ZodOptional<z.ZodString>;
177
223
  }, z.core.$strip>, z.ZodObject<{
178
224
  type: z.ZodLiteral<"exactly_one">;
179
225
  vars: z.ZodArray<z.ZodString>;
@@ -201,37 +247,42 @@ export declare const SolverRequestSchema: z.ZodObject<{
201
247
  coeff: z.ZodNumber;
202
248
  }, z.core.$strip>>;
203
249
  }, z.core.$strip>>;
250
+ objectiveStages: z.ZodOptional<z.ZodArray<z.ZodObject<{
251
+ sense: z.ZodUnion<readonly [z.ZodLiteral<"minimize">, z.ZodLiteral<"maximize">]>;
252
+ terms: z.ZodArray<z.ZodObject<{
253
+ var: z.ZodString;
254
+ coeff: z.ZodNumber;
255
+ }, z.core.$strip>>;
256
+ id: z.ZodString;
257
+ }, z.core.$strip>>>;
258
+ mode: z.ZodOptional<z.ZodEnum<{
259
+ optimize: "optimize";
260
+ satisfy: "satisfy";
261
+ }>>;
204
262
  options: z.ZodOptional<z.ZodObject<{
205
263
  timeLimitSeconds: z.ZodOptional<z.ZodNumber>;
206
264
  solutionLimit: z.ZodOptional<z.ZodNumber>;
265
+ diagnostics: z.ZodOptional<z.ZodEnum<{
266
+ none: "none";
267
+ hard: "hard";
268
+ }>>;
207
269
  }, z.core.$strip>>;
208
270
  }, z.core.$strip>;
209
- export declare const SolverStatusSchema: z.ZodEnum<{
210
- OPTIMAL: "OPTIMAL";
211
- FEASIBLE: "FEASIBLE";
212
- INFEASIBLE: "INFEASIBLE";
213
- TIMEOUT: "TIMEOUT";
214
- ERROR: "ERROR";
215
- }>;
216
271
  export declare const SolverStatisticsSchema: z.ZodObject<{
217
272
  solveTimeMs: z.ZodOptional<z.ZodNumber>;
218
273
  conflicts: z.ZodOptional<z.ZodNumber>;
219
274
  branches: z.ZodOptional<z.ZodNumber>;
220
275
  }, z.core.$strip>;
221
- export declare const SoftConstraintViolationSchema: z.ZodObject<{
276
+ export declare const SolverSoftConstraintViolationSchema: z.ZodObject<{
222
277
  constraintId: z.ZodString;
223
278
  violationAmount: z.ZodNumber;
224
279
  targetValue: z.ZodNumber;
225
280
  actualValue: z.ZodNumber;
226
281
  }, z.core.$strip>;
227
- export declare const SolverResponseSchema: z.ZodObject<{
228
- status: z.ZodEnum<{
229
- OPTIMAL: "OPTIMAL";
230
- FEASIBLE: "FEASIBLE";
231
- INFEASIBLE: "INFEASIBLE";
232
- TIMEOUT: "TIMEOUT";
233
- ERROR: "ERROR";
234
- }>;
282
+ export declare const SolverHardConstraintConflictSchema: z.ZodObject<{
283
+ constraintId: z.ZodString;
284
+ }, z.core.$strip>;
285
+ export declare const SolverResponseSchema: z.ZodUnion<readonly [z.ZodObject<{
235
286
  values: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodNumber>>;
236
287
  statistics: z.ZodOptional<z.ZodObject<{
237
288
  solveTimeMs: z.ZodOptional<z.ZodNumber>;
@@ -240,11 +291,60 @@ export declare const SolverResponseSchema: z.ZodObject<{
240
291
  }, z.core.$strip>>;
241
292
  error: z.ZodOptional<z.ZodString>;
242
293
  solutionInfo: z.ZodOptional<z.ZodString>;
243
- softViolations: z.ZodOptional<z.ZodArray<z.ZodObject<{
294
+ hardConstraintConflicts: z.ZodOptional<z.ZodArray<z.ZodObject<{
295
+ constraintId: z.ZodString;
296
+ }, z.core.$strip>>>;
297
+ stageResults: z.ZodOptional<z.ZodArray<z.ZodObject<{
298
+ id: z.ZodString;
299
+ status: z.ZodEnum<{
300
+ OPTIMAL: "OPTIMAL";
301
+ FEASIBLE: "FEASIBLE";
302
+ INFEASIBLE: "INFEASIBLE";
303
+ TIMEOUT: "TIMEOUT";
304
+ ERROR: "ERROR";
305
+ }>;
306
+ objectiveValue: z.ZodOptional<z.ZodNumber>;
307
+ bestObjectiveBound: z.ZodOptional<z.ZodNumber>;
308
+ solveTimeMs: z.ZodNumber;
309
+ }, z.core.$strip>>>;
310
+ status: z.ZodUnion<readonly [z.ZodLiteral<"OPTIMAL">, z.ZodLiteral<"FEASIBLE">]>;
311
+ softConstraintViolations: z.ZodArray<z.ZodObject<{
244
312
  constraintId: z.ZodString;
245
313
  violationAmount: z.ZodNumber;
246
314
  targetValue: z.ZodNumber;
247
315
  actualValue: z.ZodNumber;
316
+ }, z.core.$strip>>;
317
+ }, z.core.$strip>, z.ZodObject<{
318
+ values: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodNumber>>;
319
+ statistics: z.ZodOptional<z.ZodObject<{
320
+ solveTimeMs: z.ZodOptional<z.ZodNumber>;
321
+ conflicts: z.ZodOptional<z.ZodNumber>;
322
+ branches: z.ZodOptional<z.ZodNumber>;
323
+ }, z.core.$strip>>;
324
+ error: z.ZodOptional<z.ZodString>;
325
+ solutionInfo: z.ZodOptional<z.ZodString>;
326
+ hardConstraintConflicts: z.ZodOptional<z.ZodArray<z.ZodObject<{
327
+ constraintId: z.ZodString;
248
328
  }, z.core.$strip>>>;
249
- }, z.core.$strip>;
329
+ stageResults: z.ZodOptional<z.ZodArray<z.ZodObject<{
330
+ id: z.ZodString;
331
+ status: z.ZodEnum<{
332
+ OPTIMAL: "OPTIMAL";
333
+ FEASIBLE: "FEASIBLE";
334
+ INFEASIBLE: "INFEASIBLE";
335
+ TIMEOUT: "TIMEOUT";
336
+ ERROR: "ERROR";
337
+ }>;
338
+ objectiveValue: z.ZodOptional<z.ZodNumber>;
339
+ bestObjectiveBound: z.ZodOptional<z.ZodNumber>;
340
+ solveTimeMs: z.ZodNumber;
341
+ }, z.core.$strip>>>;
342
+ status: z.ZodUnion<readonly [z.ZodLiteral<"INFEASIBLE">, z.ZodLiteral<"TIMEOUT">, z.ZodLiteral<"ERROR">]>;
343
+ softConstraintViolations: z.ZodOptional<z.ZodArray<z.ZodObject<{
344
+ constraintId: z.ZodString;
345
+ violationAmount: z.ZodNumber;
346
+ targetValue: z.ZodNumber;
347
+ actualValue: z.ZodNumber;
348
+ }, z.core.$strip>>>;
349
+ }, z.core.$strip>]>;
250
350
  //# sourceMappingURL=client.schemas.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"client.schemas.d.ts","sourceRoot":"","sources":["../src/client.schemas.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAMxB,eAAO,MAAM,gBAAgB;;;iBAG3B,CAAC;AAEH,eAAO,MAAM,kBAAkB;;;iBAG7B,CAAC;AAEH,eAAO,MAAM,iBAAiB;;;;;iBAK5B,CAAC;AAEH,eAAO,MAAM,sBAAsB;;;;;;;iBAQjC,CAAC;AAEH,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;mBAI/B,CAAC;AAMH,eAAO,MAAM,sBAAsB;;;;;;;;iBAKjC,CAAC;AAEH,eAAO,MAAM,0BAA0B;;;;;;;;;;iBAOrC,CAAC;AAEH,eAAO,MAAM,0BAA0B;;;iBAGrC,CAAC;AAEH,eAAO,MAAM,yBAAyB;;;iBAGpC,CAAC;AAEH,eAAO,MAAM,2BAA2B;;;;iBAKtC,CAAC;AAEH,eAAO,MAAM,sBAAsB;;;iBAGjC,CAAC;AAEH,eAAO,MAAM,uBAAuB;;;iBAGlC,CAAC;AAEH,eAAO,MAAM,yBAAyB;;;iBAGpC,CAAC;AAEH,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;mBASjC,CAAC;AAMH,eAAO,MAAM,qBAAqB;;;;;;iBAGhC,CAAC;AAMH,eAAO,MAAM,mBAAmB;;;iBAG9B,CAAC;AAMH,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAK9B,CAAC;AAEH,eAAO,MAAM,kBAAkB;;;;;;EAAoE,CAAC;AAEpG,eAAO,MAAM,sBAAsB;;;;iBAIjC,CAAC;AAEH,eAAO,MAAM,6BAA6B;;;;;iBAKxC,CAAC;AAEH,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;iBAO/B,CAAC"}
1
+ {"version":3,"file":"client.schemas.d.ts","sourceRoot":"","sources":["../src/client.schemas.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAMxB,eAAO,MAAM,gBAAgB;;;iBAG3B,CAAC;AAEH,eAAO,MAAM,kBAAkB;;;iBAG7B,CAAC;AAEH,eAAO,MAAM,iBAAiB;;;;;iBAK5B,CAAC;AAEH,eAAO,MAAM,sBAAsB;;;;;;;iBAQjC,CAAC;AAEH,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;mBAI/B,CAAC;AAMH,eAAO,MAAM,sBAAsB;;;;;;;;;iBAMjC,CAAC;AAEH,eAAO,MAAM,0BAA0B;;;;;;;;;;;iBAQrC,CAAC;AAEH,eAAO,MAAM,0BAA0B;;;iBAGrC,CAAC;AAEH,eAAO,MAAM,yBAAyB;;;iBAGpC,CAAC;AAEH,eAAO,MAAM,2BAA2B;;;;iBAKtC,CAAC;AAEH,eAAO,MAAM,sBAAsB;;;iBAGjC,CAAC;AAEH,eAAO,MAAM,uBAAuB;;;iBAGlC,CAAC;AAEH,eAAO,MAAM,yBAAyB;;;iBAGpC,CAAC;AAEH,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;mBASjC,CAAC;AAMH,eAAO,MAAM,qBAAqB;;;;;;iBAGhC,CAAC;AAEH,eAAO,MAAM,0BAA0B;;;;;;;iBAErC,CAAC;AAEH,eAAO,MAAM,gBAAgB;;;EAAkC,CAAC;AAChE,eAAO,MAAM,0BAA0B;;;EAA2B,CAAC;AAMnE,eAAO,MAAM,mBAAmB;;;;;;;iBAI9B,CAAC;AAMH,eAAO,MAAM,kBAAkB;;;;;;EAAoE,CAAC;AAEpG,eAAO,MAAM,uBAAuB;;;;;;;;;;;;iBAMlC,CAAC;AAEH,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAqF5B,CAAC;AAEL,eAAO,MAAM,sBAAsB;;;;iBAIjC,CAAC;AAEH,eAAO,MAAM,mCAAmC;;;;;iBAK9C,CAAC;AAEH,eAAO,MAAM,kCAAkC;;iBAE7C,CAAC;AAqBH,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;mBAG/B,CAAC"}
@@ -46,6 +46,7 @@ export const LinearConstraintSchema = z.object({
46
46
  terms: z.array(SolverTermSchema),
47
47
  op: z.union([z.literal("<="), z.literal(">="), z.literal("==")]),
48
48
  rhs: z.number(),
49
+ id: z.string().optional(),
49
50
  });
50
51
  export const SoftLinearConstraintSchema = z.object({
51
52
  type: z.literal("soft_linear"),
@@ -54,6 +55,7 @@ export const SoftLinearConstraintSchema = z.object({
54
55
  rhs: z.number(),
55
56
  penalty: z.number(),
56
57
  id: z.string().optional(),
58
+ stage: z.string().optional(),
57
59
  });
58
60
  export const ExactlyOneConstraintSchema = z.object({
59
61
  type: z.literal("exactly_one"),
@@ -98,40 +100,142 @@ export const SolverObjectiveSchema = z.object({
98
100
  sense: z.union([z.literal("minimize"), z.literal("maximize")]),
99
101
  terms: z.array(SolverTermSchema),
100
102
  });
103
+ export const SolverObjectiveStageSchema = SolverObjectiveSchema.extend({
104
+ id: z.string(),
105
+ });
106
+ export const SolverModeSchema = z.enum(["optimize", "satisfy"]);
107
+ export const SolverDiagnosticModeSchema = z.enum(["none", "hard"]);
101
108
  // --------------------------------------------------------------------------
102
109
  // Options schema
103
110
  // --------------------------------------------------------------------------
104
111
  export const SolverOptionsSchema = z.object({
105
112
  timeLimitSeconds: z.number().optional(),
106
113
  solutionLimit: z.number().optional(),
114
+ diagnostics: SolverDiagnosticModeSchema.optional(),
107
115
  });
108
116
  // --------------------------------------------------------------------------
109
117
  // Request/Response schemas
110
118
  // --------------------------------------------------------------------------
111
- export const SolverRequestSchema = z.object({
119
+ export const SolverStatusSchema = z.enum(["OPTIMAL", "FEASIBLE", "INFEASIBLE", "TIMEOUT", "ERROR"]);
120
+ export const SolverStageResultSchema = z.object({
121
+ id: z.string(),
122
+ status: SolverStatusSchema,
123
+ objectiveValue: z.number().optional(),
124
+ bestObjectiveBound: z.number().optional(),
125
+ solveTimeMs: z.number(),
126
+ });
127
+ export const SolverRequestSchema = z
128
+ .object({
112
129
  variables: z.array(SolverVariableSchema),
113
130
  constraints: z.array(SolverConstraintSchema),
114
131
  objective: SolverObjectiveSchema.optional(),
132
+ objectiveStages: z.array(SolverObjectiveStageSchema).optional(),
133
+ mode: SolverModeSchema.optional(),
115
134
  options: SolverOptionsSchema.optional(),
135
+ })
136
+ .superRefine((request, ctx) => {
137
+ if (request.objective && request.objectiveStages) {
138
+ ctx.addIssue({
139
+ code: "custom",
140
+ path: ["objectiveStages"],
141
+ message: "objective and objectiveStages cannot both be present",
142
+ });
143
+ }
144
+ if (request.objectiveStages !== undefined) {
145
+ if (request.objectiveStages.length === 0) {
146
+ ctx.addIssue({
147
+ code: "custom",
148
+ path: ["objectiveStages"],
149
+ message: "objectiveStages cannot be empty",
150
+ });
151
+ }
152
+ const seenStageIds = new Set();
153
+ for (const [index, stage] of request.objectiveStages.entries()) {
154
+ if (seenStageIds.has(stage.id)) {
155
+ ctx.addIssue({
156
+ code: "custom",
157
+ path: ["objectiveStages", index, "id"],
158
+ message: `Duplicate objective stage id ${stage.id}`,
159
+ });
160
+ }
161
+ seenStageIds.add(stage.id);
162
+ }
163
+ if (request.options?.solutionLimit === 1) {
164
+ ctx.addIssue({
165
+ code: "custom",
166
+ path: ["options", "solutionLimit"],
167
+ message: "objectiveStages cannot be used with solutionLimit=1",
168
+ });
169
+ }
170
+ for (const [index, constraint] of request.constraints.entries()) {
171
+ if (constraint.type !== "soft_linear")
172
+ continue;
173
+ if (constraint.stage === undefined) {
174
+ ctx.addIssue({
175
+ code: "custom",
176
+ path: ["constraints", index, "stage"],
177
+ message: "Soft linear constraint requires stage when objectiveStages are used",
178
+ });
179
+ continue;
180
+ }
181
+ if (!seenStageIds.has(constraint.stage)) {
182
+ ctx.addIssue({
183
+ code: "custom",
184
+ path: ["constraints", index, "stage"],
185
+ message: `Soft linear constraint stage ${constraint.stage} is not declared`,
186
+ });
187
+ }
188
+ }
189
+ }
190
+ if (request.mode === "satisfy") {
191
+ if (request.objective) {
192
+ ctx.addIssue({
193
+ code: "custom",
194
+ path: ["objective"],
195
+ message: 'mode "satisfy" cannot be used with objective',
196
+ });
197
+ }
198
+ if (request.objectiveStages) {
199
+ ctx.addIssue({
200
+ code: "custom",
201
+ path: ["objectiveStages"],
202
+ message: 'mode "satisfy" cannot be used with objectiveStages',
203
+ });
204
+ }
205
+ }
116
206
  });
117
- export const SolverStatusSchema = z.enum(["OPTIMAL", "FEASIBLE", "INFEASIBLE", "TIMEOUT", "ERROR"]);
118
207
  export const SolverStatisticsSchema = z.object({
119
208
  solveTimeMs: z.number().optional(),
120
209
  conflicts: z.number().optional(),
121
210
  branches: z.number().optional(),
122
211
  });
123
- export const SoftConstraintViolationSchema = z.object({
212
+ export const SolverSoftConstraintViolationSchema = z.object({
124
213
  constraintId: z.string(),
125
214
  violationAmount: z.number(),
126
215
  targetValue: z.number(),
127
216
  actualValue: z.number(),
128
217
  });
129
- export const SolverResponseSchema = z.object({
130
- status: SolverStatusSchema,
218
+ export const SolverHardConstraintConflictSchema = z.object({
219
+ constraintId: z.string(),
220
+ });
221
+ const SolverResponseBaseSchema = z.object({
131
222
  values: z.record(z.string(), z.number()).optional(),
132
223
  statistics: SolverStatisticsSchema.optional(),
133
224
  error: z.string().optional(),
134
225
  solutionInfo: z.string().optional(),
135
- softViolations: z.array(SoftConstraintViolationSchema).optional(),
226
+ hardConstraintConflicts: z.array(SolverHardConstraintConflictSchema).optional(),
227
+ stageResults: z.array(SolverStageResultSchema).optional(),
136
228
  });
229
+ const SuccessfulSolverResponseSchema = SolverResponseBaseSchema.extend({
230
+ status: z.union([z.literal("OPTIMAL"), z.literal("FEASIBLE")]),
231
+ softConstraintViolations: z.array(SolverSoftConstraintViolationSchema),
232
+ });
233
+ const NonSuccessfulSolverResponseSchema = SolverResponseBaseSchema.extend({
234
+ status: z.union([z.literal("INFEASIBLE"), z.literal("TIMEOUT"), z.literal("ERROR")]),
235
+ softConstraintViolations: z.array(SolverSoftConstraintViolationSchema).optional(),
236
+ });
237
+ export const SolverResponseSchema = z.union([
238
+ SuccessfulSolverResponseSchema,
239
+ NonSuccessfulSolverResponseSchema,
240
+ ]);
137
241
  //# sourceMappingURL=client.schemas.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"client.schemas.js","sourceRoot":"","sources":["../src/client.schemas.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client.schemas.js","sourceRoot":"","sources":["../src/client.schemas.ts"],"names":[],"mappings":"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"}