@tailor-platform/erp-kit 0.5.0 → 0.6.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 (262) hide show
  1. package/CHANGELOG.md +24 -0
  2. package/dist/cli.mjs +139 -35
  3. package/package.json +1 -1
  4. package/skills/erp-kit-app-5-impl-backend/SKILL.md +10 -5
  5. package/skills/erp-kit-app-7-impl-review/SKILL.md +1 -1
  6. package/skills/erp-kit-module-6-impl-review/SKILL.md +39 -17
  7. package/src/commands/generate-doc.ts +1 -1
  8. package/src/commands/init-module.test.ts +17 -3
  9. package/src/commands/init-module.ts +0 -12
  10. package/src/commands/lib/discovery.test.ts +13 -3
  11. package/src/commands/lib/discovery.ts +10 -2
  12. package/src/commands/lib/paths.ts +4 -2
  13. package/src/commands/lib/sync-check-tests.test.ts +84 -6
  14. package/src/commands/lib/sync-check-tests.ts +63 -3
  15. package/src/commands/sync-check.ts +7 -3
  16. package/src/generator/generate-app-code.ts +51 -16
  17. package/src/generator/generate-code-boilerplate.test.ts +9 -1
  18. package/src/generator/generate-stubs.ts +4 -0
  19. package/src/generator/scaffold.ts +6 -2
  20. package/src/generator/stub-templates.test.ts +11 -0
  21. package/src/generator/stub-templates.ts +22 -1
  22. package/src/mdschema.ts +39 -3
  23. package/src/modules/inventory/docs/features/inventory-adjustment.md +2 -1
  24. package/src/modules/inventory/docs/features/scrap-management.md +39 -1
  25. package/src/modules/manufacturing/README.md +63 -0
  26. package/src/modules/manufacturing/command/activateBillOfMaterial.generated.ts +6 -0
  27. package/src/modules/manufacturing/command/activateBillOfMaterial.test.ts +166 -0
  28. package/src/modules/manufacturing/command/activateBillOfMaterial.ts +173 -0
  29. package/src/modules/manufacturing/command/activateRouting.generated.ts +6 -0
  30. package/src/modules/manufacturing/command/activateRouting.test.ts +152 -0
  31. package/src/modules/manufacturing/command/activateRouting.ts +92 -0
  32. package/src/modules/manufacturing/command/activateWorkCenter.generated.ts +6 -0
  33. package/src/modules/manufacturing/command/activateWorkCenter.test.ts +135 -0
  34. package/src/modules/manufacturing/command/activateWorkCenter.ts +91 -0
  35. package/src/modules/manufacturing/command/cancelProductionOrder.generated.ts +6 -0
  36. package/src/modules/manufacturing/command/cancelProductionOrder.test.ts +151 -0
  37. package/src/modules/manufacturing/command/cancelProductionOrder.ts +114 -0
  38. package/src/modules/manufacturing/command/closeProductionOrder.generated.ts +6 -0
  39. package/src/modules/manufacturing/command/closeProductionOrder.test.ts +126 -0
  40. package/src/modules/manufacturing/command/closeProductionOrder.ts +87 -0
  41. package/src/modules/manufacturing/command/completeProductionOrder.generated.ts +6 -0
  42. package/src/modules/manufacturing/command/completeProductionOrder.test.ts +132 -0
  43. package/src/modules/manufacturing/command/completeProductionOrder.ts +97 -0
  44. package/src/modules/manufacturing/command/completeWorkOrder.generated.ts +6 -0
  45. package/src/modules/manufacturing/command/completeWorkOrder.test.ts +369 -0
  46. package/src/modules/manufacturing/command/completeWorkOrder.ts +212 -0
  47. package/src/modules/manufacturing/command/createBillOfMaterial.generated.ts +6 -0
  48. package/src/modules/manufacturing/command/createBillOfMaterial.test.ts +210 -0
  49. package/src/modules/manufacturing/command/createBillOfMaterial.ts +176 -0
  50. package/src/modules/manufacturing/command/createProductionOrder.generated.ts +6 -0
  51. package/src/modules/manufacturing/command/createProductionOrder.test.ts +160 -0
  52. package/src/modules/manufacturing/command/createProductionOrder.ts +129 -0
  53. package/src/modules/manufacturing/command/createRouting.generated.ts +6 -0
  54. package/src/modules/manufacturing/command/createRouting.test.ts +168 -0
  55. package/src/modules/manufacturing/command/createRouting.ts +128 -0
  56. package/src/modules/manufacturing/command/createWorkCenter.generated.ts +6 -0
  57. package/src/modules/manufacturing/command/createWorkCenter.test.ts +148 -0
  58. package/src/modules/manufacturing/command/createWorkCenter.ts +131 -0
  59. package/src/modules/manufacturing/command/deactivateBillOfMaterial.generated.ts +6 -0
  60. package/src/modules/manufacturing/command/deactivateBillOfMaterial.test.ts +103 -0
  61. package/src/modules/manufacturing/command/deactivateBillOfMaterial.ts +78 -0
  62. package/src/modules/manufacturing/command/deactivateRouting.generated.ts +6 -0
  63. package/src/modules/manufacturing/command/deactivateRouting.test.ts +112 -0
  64. package/src/modules/manufacturing/command/deactivateRouting.ts +76 -0
  65. package/src/modules/manufacturing/command/deactivateWorkCenter.generated.ts +6 -0
  66. package/src/modules/manufacturing/command/deactivateWorkCenter.test.ts +113 -0
  67. package/src/modules/manufacturing/command/deactivateWorkCenter.ts +85 -0
  68. package/src/modules/manufacturing/command/pauseWorkOrder.generated.ts +6 -0
  69. package/src/modules/manufacturing/command/pauseWorkOrder.test.ts +118 -0
  70. package/src/modules/manufacturing/command/pauseWorkOrder.ts +82 -0
  71. package/src/modules/manufacturing/command/recordInventoryIssueOutcome.generated.ts +6 -0
  72. package/src/modules/manufacturing/command/recordInventoryIssueOutcome.test.ts +183 -0
  73. package/src/modules/manufacturing/command/recordInventoryIssueOutcome.ts +139 -0
  74. package/src/modules/manufacturing/command/recordManufacturingCostSettlementAcknowledgment.generated.ts +6 -0
  75. package/src/modules/manufacturing/command/recordManufacturingCostSettlementAcknowledgment.test.ts +120 -0
  76. package/src/modules/manufacturing/command/recordManufacturingCostSettlementAcknowledgment.ts +110 -0
  77. package/src/modules/manufacturing/command/releaseProductionOrder.generated.ts +6 -0
  78. package/src/modules/manufacturing/command/releaseProductionOrder.test.ts +220 -0
  79. package/src/modules/manufacturing/command/releaseProductionOrder.ts +450 -0
  80. package/src/modules/manufacturing/command/reopenProductionOrder.generated.ts +6 -0
  81. package/src/modules/manufacturing/command/reopenProductionOrder.test.ts +196 -0
  82. package/src/modules/manufacturing/command/reopenProductionOrder.ts +98 -0
  83. package/src/modules/manufacturing/command/reportWorkOrderProgress.generated.ts +6 -0
  84. package/src/modules/manufacturing/command/reportWorkOrderProgress.test.ts +204 -0
  85. package/src/modules/manufacturing/command/reportWorkOrderProgress.ts +129 -0
  86. package/src/modules/manufacturing/command/rescheduleProductionOrder.generated.ts +6 -0
  87. package/src/modules/manufacturing/command/rescheduleProductionOrder.test.ts +185 -0
  88. package/src/modules/manufacturing/command/rescheduleProductionOrder.ts +95 -0
  89. package/src/modules/manufacturing/command/resumeWorkOrder.generated.ts +6 -0
  90. package/src/modules/manufacturing/command/resumeWorkOrder.test.ts +122 -0
  91. package/src/modules/manufacturing/command/resumeWorkOrder.ts +94 -0
  92. package/src/modules/manufacturing/command/reviewManufacturingCostSummary.generated.ts +6 -0
  93. package/src/modules/manufacturing/command/reviewManufacturingCostSummary.test.ts +231 -0
  94. package/src/modules/manufacturing/command/reviewManufacturingCostSummary.ts +137 -0
  95. package/src/modules/manufacturing/command/startWorkOrder.generated.ts +6 -0
  96. package/src/modules/manufacturing/command/startWorkOrder.test.ts +118 -0
  97. package/src/modules/manufacturing/command/startWorkOrder.ts +126 -0
  98. package/src/modules/manufacturing/command/technicallyCompleteProductionOrder.generated.ts +6 -0
  99. package/src/modules/manufacturing/command/technicallyCompleteProductionOrder.test.ts +153 -0
  100. package/src/modules/manufacturing/command/technicallyCompleteProductionOrder.ts +106 -0
  101. package/src/modules/manufacturing/command/unreleaseProductionOrder.generated.ts +6 -0
  102. package/src/modules/manufacturing/command/unreleaseProductionOrder.test.ts +140 -0
  103. package/src/modules/manufacturing/command/unreleaseProductionOrder.ts +131 -0
  104. package/src/modules/manufacturing/command/updateBillOfMaterial.generated.ts +6 -0
  105. package/src/modules/manufacturing/command/updateBillOfMaterial.test.ts +149 -0
  106. package/src/modules/manufacturing/command/updateBillOfMaterial.ts +174 -0
  107. package/src/modules/manufacturing/command/updateProductionOrder.generated.ts +6 -0
  108. package/src/modules/manufacturing/command/updateProductionOrder.test.ts +112 -0
  109. package/src/modules/manufacturing/command/updateProductionOrder.ts +145 -0
  110. package/src/modules/manufacturing/command/updateRouting.generated.ts +6 -0
  111. package/src/modules/manufacturing/command/updateRouting.test.ts +211 -0
  112. package/src/modules/manufacturing/command/updateRouting.ts +124 -0
  113. package/src/modules/manufacturing/command/updateWorkCenter.generated.ts +6 -0
  114. package/src/modules/manufacturing/command/updateWorkCenter.test.ts +152 -0
  115. package/src/modules/manufacturing/command/updateWorkCenter.ts +137 -0
  116. package/src/modules/manufacturing/db/.gitkeep +0 -0
  117. package/src/modules/manufacturing/db/billOfMaterial.ts +70 -0
  118. package/src/modules/manufacturing/db/billOfMaterialLine.ts +49 -0
  119. package/src/modules/manufacturing/db/costVarianceLine.ts +53 -0
  120. package/src/modules/manufacturing/db/manufacturingCostLine.ts +35 -0
  121. package/src/modules/manufacturing/db/manufacturingCostSettlementRecord.ts +39 -0
  122. package/src/modules/manufacturing/db/manufacturingCostSummary.ts +59 -0
  123. package/src/modules/manufacturing/db/productionOrder.ts +83 -0
  124. package/src/modules/manufacturing/db/productionOrderBomSnapshot.ts +44 -0
  125. package/src/modules/manufacturing/db/productionOrderCostBaseline.ts +44 -0
  126. package/src/modules/manufacturing/db/productionOrderMaterialRequirement.ts +57 -0
  127. package/src/modules/manufacturing/db/productionOrderRoutingSnapshot.ts +43 -0
  128. package/src/modules/manufacturing/db/routing.ts +63 -0
  129. package/src/modules/manufacturing/db/routingOperation.ts +57 -0
  130. package/src/modules/manufacturing/db/workCenter.ts +87 -0
  131. package/src/modules/manufacturing/db/workOrder.ts +65 -0
  132. package/src/modules/manufacturing/db/workOrderExecutionEvent.ts +54 -0
  133. package/src/modules/manufacturing/docs/commands/ActivateBillOfMaterial.md +50 -0
  134. package/src/modules/manufacturing/docs/commands/ActivateRouting.md +48 -0
  135. package/src/modules/manufacturing/docs/commands/ActivateWorkCenter.md +49 -0
  136. package/src/modules/manufacturing/docs/commands/CancelProductionOrder.md +48 -0
  137. package/src/modules/manufacturing/docs/commands/CloseProductionOrder.md +46 -0
  138. package/src/modules/manufacturing/docs/commands/CompleteProductionOrder.md +48 -0
  139. package/src/modules/manufacturing/docs/commands/CompleteWorkOrder.md +66 -0
  140. package/src/modules/manufacturing/docs/commands/CreateBillOfMaterial.md +54 -0
  141. package/src/modules/manufacturing/docs/commands/CreateProductionOrder.md +49 -0
  142. package/src/modules/manufacturing/docs/commands/CreateRouting.md +50 -0
  143. package/src/modules/manufacturing/docs/commands/CreateWorkCenter.md +51 -0
  144. package/src/modules/manufacturing/docs/commands/DeactivateBillOfMaterial.md +45 -0
  145. package/src/modules/manufacturing/docs/commands/DeactivateRouting.md +45 -0
  146. package/src/modules/manufacturing/docs/commands/DeactivateWorkCenter.md +45 -0
  147. package/src/modules/manufacturing/docs/commands/PauseWorkOrder.md +44 -0
  148. package/src/modules/manufacturing/docs/commands/RecordInventoryIssueOutcome.md +59 -0
  149. package/src/modules/manufacturing/docs/commands/RecordManufacturingCostSettlementAcknowledgment.md +49 -0
  150. package/src/modules/manufacturing/docs/commands/ReleaseProductionOrder.md +57 -0
  151. package/src/modules/manufacturing/docs/commands/ReopenProductionOrder.md +54 -0
  152. package/src/modules/manufacturing/docs/commands/ReportWorkOrderProgress.md +53 -0
  153. package/src/modules/manufacturing/docs/commands/RescheduleProductionOrder.md +45 -0
  154. package/src/modules/manufacturing/docs/commands/ResumeWorkOrder.md +44 -0
  155. package/src/modules/manufacturing/docs/commands/ReviewManufacturingCostSummary.md +52 -0
  156. package/src/modules/manufacturing/docs/commands/StartWorkOrder.md +46 -0
  157. package/src/modules/manufacturing/docs/commands/TechnicallyCompleteProductionOrder.md +51 -0
  158. package/src/modules/manufacturing/docs/commands/UnreleaseProductionOrder.md +46 -0
  159. package/src/modules/manufacturing/docs/commands/UpdateBillOfMaterial.md +48 -0
  160. package/src/modules/manufacturing/docs/commands/UpdateProductionOrder.md +48 -0
  161. package/src/modules/manufacturing/docs/commands/UpdateRouting.md +52 -0
  162. package/src/modules/manufacturing/docs/commands/UpdateWorkCenter.md +48 -0
  163. package/src/modules/manufacturing/docs/features/bill-of-material-management.md +83 -0
  164. package/src/modules/manufacturing/docs/features/manufacturing-cost-and-variance.md +191 -0
  165. package/src/modules/manufacturing/docs/features/production-order-lifecycle.md +103 -0
  166. package/src/modules/manufacturing/docs/features/routing-and-work-center-definition.md +63 -0
  167. package/src/modules/manufacturing/docs/features/work-order-execution.md +115 -0
  168. package/src/modules/manufacturing/docs/models/BillOfMaterial.md +60 -0
  169. package/src/modules/manufacturing/docs/models/ManufacturingCostSummary.md +66 -0
  170. package/src/modules/manufacturing/docs/models/ProductionOrder.md +76 -0
  171. package/src/modules/manufacturing/docs/models/Routing.md +58 -0
  172. package/src/modules/manufacturing/docs/models/WorkCenter.md +56 -0
  173. package/src/modules/manufacturing/docs/models/WorkOrder.md +63 -0
  174. package/src/modules/manufacturing/docs/queries/DetectBillOfMaterialCircularReference.md +39 -0
  175. package/src/modules/manufacturing/docs/queries/ExplodeBillOfMaterial.md +56 -0
  176. package/src/modules/manufacturing/docs/queries/GetBillOfMaterial.md +37 -0
  177. package/src/modules/manufacturing/docs/queries/GetManufacturingCostSummary.md +39 -0
  178. package/src/modules/manufacturing/docs/queries/GetProductionOrder.md +37 -0
  179. package/src/modules/manufacturing/docs/queries/GetRouting.md +39 -0
  180. package/src/modules/manufacturing/docs/queries/GetWorkCenter.md +35 -0
  181. package/src/modules/manufacturing/docs/queries/GetWorkOrder.md +38 -0
  182. package/src/modules/manufacturing/docs/queries/ListBillOfMaterialsByItem.md +42 -0
  183. package/src/modules/manufacturing/docs/queries/ListManufacturingCostSummariesByStatus.md +41 -0
  184. package/src/modules/manufacturing/docs/queries/ListProductionOrdersByStatus.md +41 -0
  185. package/src/modules/manufacturing/docs/queries/ListRoutingsByItem.md +42 -0
  186. package/src/modules/manufacturing/docs/queries/ListWorkCentersBySite.md +38 -0
  187. package/src/modules/manufacturing/docs/queries/ListWorkOrdersByProductionOrder.md +39 -0
  188. package/src/modules/manufacturing/docs/queries/ListWorkOrdersByWorkCenter.md +43 -0
  189. package/src/modules/manufacturing/executor/.gitkeep +0 -0
  190. package/src/modules/manufacturing/generated/enums.ts +113 -0
  191. package/src/modules/manufacturing/generated/kysely-tailordb.ts +247 -0
  192. package/src/modules/manufacturing/index.ts +2 -0
  193. package/src/modules/manufacturing/lib/_db_deps.ts +22 -0
  194. package/src/modules/manufacturing/lib/errors.generated.ts +592 -0
  195. package/src/modules/manufacturing/lib/permissions.generated.ts +35 -0
  196. package/src/modules/manufacturing/lib/types.ts +111 -0
  197. package/src/modules/manufacturing/module.ts +226 -0
  198. package/src/modules/manufacturing/permissions.ts +3 -0
  199. package/src/modules/manufacturing/query/.gitkeep +0 -0
  200. package/src/modules/manufacturing/query/detectBillOfMaterialCircularReference.generated.ts +5 -0
  201. package/src/modules/manufacturing/query/detectBillOfMaterialCircularReference.test.ts +115 -0
  202. package/src/modules/manufacturing/query/detectBillOfMaterialCircularReference.ts +79 -0
  203. package/src/modules/manufacturing/query/explodeBillOfMaterial.generated.ts +5 -0
  204. package/src/modules/manufacturing/query/explodeBillOfMaterial.test.ts +445 -0
  205. package/src/modules/manufacturing/query/explodeBillOfMaterial.ts +306 -0
  206. package/src/modules/manufacturing/query/getBillOfMaterial.generated.ts +5 -0
  207. package/src/modules/manufacturing/query/getBillOfMaterial.test.ts +64 -0
  208. package/src/modules/manufacturing/query/getBillOfMaterial.ts +27 -0
  209. package/src/modules/manufacturing/query/getManufacturingCostSummary.generated.ts +5 -0
  210. package/src/modules/manufacturing/query/getManufacturingCostSummary.test.ts +147 -0
  211. package/src/modules/manufacturing/query/getManufacturingCostSummary.ts +46 -0
  212. package/src/modules/manufacturing/query/getProductionOrder.generated.ts +5 -0
  213. package/src/modules/manufacturing/query/getProductionOrder.test.ts +139 -0
  214. package/src/modules/manufacturing/query/getProductionOrder.ts +84 -0
  215. package/src/modules/manufacturing/query/getRouting.generated.ts +5 -0
  216. package/src/modules/manufacturing/query/getRouting.test.ts +71 -0
  217. package/src/modules/manufacturing/query/getRouting.ts +34 -0
  218. package/src/modules/manufacturing/query/getWorkCenter.generated.ts +5 -0
  219. package/src/modules/manufacturing/query/getWorkCenter.test.ts +37 -0
  220. package/src/modules/manufacturing/query/getWorkCenter.ts +21 -0
  221. package/src/modules/manufacturing/query/getWorkOrder.generated.ts +5 -0
  222. package/src/modules/manufacturing/query/getWorkOrder.test.ts +73 -0
  223. package/src/modules/manufacturing/query/getWorkOrder.ts +28 -0
  224. package/src/modules/manufacturing/query/listBillOfMaterialsByItem.generated.ts +5 -0
  225. package/src/modules/manufacturing/query/listBillOfMaterialsByItem.test.ts +107 -0
  226. package/src/modules/manufacturing/query/listBillOfMaterialsByItem.ts +58 -0
  227. package/src/modules/manufacturing/query/listManufacturingCostSummariesByStatus.generated.ts +5 -0
  228. package/src/modules/manufacturing/query/listManufacturingCostSummariesByStatus.test.ts +96 -0
  229. package/src/modules/manufacturing/query/listManufacturingCostSummariesByStatus.ts +77 -0
  230. package/src/modules/manufacturing/query/listProductionOrdersByStatus.generated.ts +5 -0
  231. package/src/modules/manufacturing/query/listProductionOrdersByStatus.test.ts +121 -0
  232. package/src/modules/manufacturing/query/listProductionOrdersByStatus.ts +83 -0
  233. package/src/modules/manufacturing/query/listRoutingsByItem.generated.ts +5 -0
  234. package/src/modules/manufacturing/query/listRoutingsByItem.test.ts +110 -0
  235. package/src/modules/manufacturing/query/listRoutingsByItem.ts +54 -0
  236. package/src/modules/manufacturing/query/listWorkCentersBySite.generated.ts +5 -0
  237. package/src/modules/manufacturing/query/listWorkCentersBySite.test.ts +81 -0
  238. package/src/modules/manufacturing/query/listWorkCentersBySite.ts +70 -0
  239. package/src/modules/manufacturing/query/listWorkOrdersByProductionOrder.generated.ts +5 -0
  240. package/src/modules/manufacturing/query/listWorkOrdersByProductionOrder.test.ts +102 -0
  241. package/src/modules/manufacturing/query/listWorkOrdersByProductionOrder.ts +53 -0
  242. package/src/modules/manufacturing/query/listWorkOrdersByWorkCenter.generated.ts +5 -0
  243. package/src/modules/manufacturing/query/listWorkOrdersByWorkCenter.test.ts +143 -0
  244. package/src/modules/manufacturing/query/listWorkOrdersByWorkCenter.ts +56 -0
  245. package/src/modules/manufacturing/seed/index.ts +19 -0
  246. package/src/modules/manufacturing/tailor.config.ts +13 -0
  247. package/src/modules/manufacturing/tailor.d.ts +13 -0
  248. package/src/modules/manufacturing/testing/commandTestUtils.ts +29 -0
  249. package/src/modules/manufacturing/testing/fixtures.ts +402 -0
  250. package/templates/scaffold/app/backend/package.json +9 -2
  251. package/templates/scaffold/app/backend/src/tests/utils/graphql-client.ts +66 -0
  252. package/templates/scaffold/app/backend/src/tests/utils/setup.ts +21 -0
  253. package/templates/scaffold/app/backend/tsconfig.json +9 -2
  254. package/templates/scaffold/app/backend/vitest.config.ts +35 -0
  255. package/templates/scaffold/app/frontend/package.json +2 -2
  256. package/templates/scaffold/module/__dot__gitignore +3 -0
  257. package/templates/scaffold/module/eslint.config.js +31 -0
  258. package/templates/scaffold/module/generated/kysely-tailordb.ts +3 -0
  259. package/templates/scaffold/module/lib/types.ts +1 -6
  260. package/templates/scaffold/module/package.json +26 -0
  261. package/templates/scaffold/module/tsconfig.json +16 -0
  262. /package/{templates/scaffold/module/generated → src/modules/manufacturing/command}/.gitkeep +0 -0
@@ -0,0 +1,42 @@
1
+ # ListBillOfMaterialsByItem
2
+
3
+ ## Overview
4
+
5
+ ListBillOfMaterialsByItem lists BOM versions for one manufactured parent item and scope so planners can compare draft, active, and inactive recipe revisions.
6
+
7
+ ## Business Rules
8
+
9
+ - Company scope and parent item reference are required.
10
+ - Optional filters may restrict by site, status, effectivity date, or `bomType`.
11
+ - Results include all statuses by default.
12
+ - Results are ordered by effectivity start date and version identifier.
13
+
14
+ ## Process Flow
15
+
16
+ ```mermaid
17
+ flowchart TD
18
+ A[Receive company, item, and filters] --> B[Query BOM versions for item and scope]
19
+ B --> C[Apply optional status or date filters]
20
+ C --> D[Order versions]
21
+ D --> E[Return BOM list]
22
+ ```
23
+
24
+ ## External Dependencies
25
+
26
+ - None
27
+
28
+ ## Error Scenarios
29
+
30
+ - **COMPANY_SCOPE_REQUIRED**: Company scope was not provided.
31
+ - **PARENT_ITEM_REQUIRED**: Parent item reference was not provided.
32
+
33
+ ## Test Cases
34
+
35
+ - lists BOM versions for a manufactured item
36
+ - filters BOM versions by site when provided
37
+ - filters BOM versions by status when provided
38
+ - filters BOM versions by bomType when provided
39
+ - returns all statuses by default
40
+ - returns an empty list when no BOM versions exist
41
+ - returns error when the parent item reference is missing
42
+ - returns error when company scope is missing
@@ -0,0 +1,41 @@
1
+ # ListManufacturingCostSummariesByStatus
2
+
3
+ ## Overview
4
+
5
+ ListManufacturingCostSummariesByStatus lists manufacturing cost summaries by review or settlement lifecycle so supervisors and finance reviewers can work review queues.
6
+
7
+ ## Business Rules
8
+
9
+ - Company scope and at least one summary status are required.
10
+ - Optional filters may restrict by site, produced item, or production-order reference.
11
+ - Results are ordered by production-order completion or review date.
12
+ - The query returns summary-level cost and variance totals suitable for queue views, including production-order reference, site, item, and current cost-summary status.
13
+
14
+ ## Process Flow
15
+
16
+ ```mermaid
17
+ flowchart TD
18
+ A[Receive scope and status filters] --> B[Validate company and status filters]
19
+ B --> C[Query matching cost summaries]
20
+ C --> D[Apply optional site or order filters]
21
+ D --> E[Return summary list]
22
+ ```
23
+
24
+ ## External Dependencies
25
+
26
+ - None
27
+
28
+ ## Error Scenarios
29
+
30
+ - **STATUS_FILTER_REQUIRED**: At least one summary status was not provided.
31
+ - **COMPANY_SCOPE_REQUIRED**: Company scope was not provided.
32
+
33
+ ## Test Cases
34
+
35
+ - lists pending-review cost summaries for a company
36
+ - lists reviewed cost summaries awaiting settlement
37
+ - filters summaries by site when provided
38
+ - filters summaries by production order when provided
39
+ - returns summary rows with production-order and status context
40
+ - returns error when no status filter is provided
41
+ - returns error when company scope is missing
@@ -0,0 +1,41 @@
1
+ # ListProductionOrdersByStatus
2
+
3
+ ## Overview
4
+
5
+ ListProductionOrdersByStatus lists production orders for planning, execution, or closeout queues by lifecycle state.
6
+
7
+ ## Business Rules
8
+
9
+ - Company scope and at least one status value are required.
10
+ - Optional filters may restrict by site, produced item, or planned date range.
11
+ - Results are ordered by planned start date and priority.
12
+ - The query returns summary-level fields suitable for operational worklists, including item, quantity, site, lifecycle state, and linked cost-summary state.
13
+
14
+ ## Process Flow
15
+
16
+ ```mermaid
17
+ flowchart TD
18
+ A[Receive status and scope filters] --> B[Validate company and status filters]
19
+ B --> C[Query matching production orders]
20
+ C --> D[Apply optional item or date filters]
21
+ D --> E[Return production-order summaries]
22
+ ```
23
+
24
+ ## External Dependencies
25
+
26
+ - None
27
+
28
+ ## Error Scenarios
29
+
30
+ - **STATUS_FILTER_REQUIRED**: At least one production-order status was not provided.
31
+ - **COMPANY_SCOPE_REQUIRED**: Company scope was not provided.
32
+
33
+ ## Test Cases
34
+
35
+ - lists released production orders for a company
36
+ - lists in-progress production orders for a site
37
+ - filters production orders by produced item when provided
38
+ - filters production orders by planned date range when provided
39
+ - returns summary fields with site and cost-summary status
40
+ - returns error when no status filter is provided
41
+ - returns error when company scope is missing
@@ -0,0 +1,42 @@
1
+ # ListRoutingsByItem
2
+
3
+ ## Overview
4
+
5
+ ListRoutingsByItem lists routing revisions available for one produced item and scope so planners can choose or compare executable process definitions.
6
+
7
+ ## Business Rules
8
+
9
+ - Company scope and parent item reference are required.
10
+ - Optional filters may restrict by site or status.
11
+ - Results include all statuses by default.
12
+ - Results are ordered by revision or effectivity precedence.
13
+
14
+ ## Process Flow
15
+
16
+ ```mermaid
17
+ flowchart TD
18
+ A[Receive company, item, and filters] --> B[Query routings for item and scope]
19
+ B --> C[Apply optional site and status filters]
20
+ C --> D[Order routing revisions]
21
+ D --> E[Return routing list]
22
+ ```
23
+
24
+ ## External Dependencies
25
+
26
+ - None
27
+
28
+ ## Error Scenarios
29
+
30
+ - **COMPANY_SCOPE_REQUIRED**: Company scope was not provided.
31
+ - **PARENT_ITEM_REQUIRED**: Parent item reference was not provided.
32
+
33
+ ## Test Cases
34
+
35
+ - lists routing revisions for a produced item
36
+ - filters routing revisions by site when provided
37
+ - filters routing revisions by status when provided
38
+ - returns all statuses by default
39
+ - returns an empty list when no routings exist
40
+ - returns routing revisions for the requested company scope
41
+ - returns error when the parent item reference is missing
42
+ - returns error when company scope is missing
@@ -0,0 +1,38 @@
1
+ # ListWorkCentersBySite
2
+
3
+ ## Overview
4
+
5
+ ListWorkCentersBySite lists work centers available at one site or facility context for capacity review, routing maintenance, or scheduling decisions.
6
+
7
+ ## Business Rules
8
+
9
+ - Company and site references are required.
10
+ - Optional filters may restrict by status or work-center type.
11
+ - Results include all statuses by default.
12
+ - Results are ordered by work-center code or name.
13
+
14
+ ## Process Flow
15
+
16
+ ```mermaid
17
+ flowchart TD
18
+ A[Receive site and filters] --> B[Query work centers for site]
19
+ B --> C[Apply optional filters]
20
+ C --> D[Order results]
21
+ D --> E[Return work-center list]
22
+ ```
23
+
24
+ ## External Dependencies
25
+
26
+ - None
27
+
28
+ ## Error Scenarios
29
+
30
+ - **SITE_SCOPE_REQUIRED**: Company or site reference was not provided.
31
+
32
+ ## Test Cases
33
+
34
+ - lists work centers for a site
35
+ - filters work centers by status when provided
36
+ - returns an empty list when the site has no work centers
37
+ - returns error when company scope is missing
38
+ - returns error when site scope is missing
@@ -0,0 +1,39 @@
1
+ # ListWorkOrdersByProductionOrder
2
+
3
+ ## Overview
4
+
5
+ ListWorkOrdersByProductionOrder lists the operation-level execution plan under one production order in sequence order for supervisors and execution UIs.
6
+
7
+ ## Business Rules
8
+
9
+ - Production-order reference is required.
10
+ - Results are ordered by routing sequence.
11
+ - Optional filters may restrict by work-order status or assigned work center.
12
+ - The query returns summary fields suitable for execution boards, including sequence, status, work-center context, and progress totals.
13
+
14
+ ## Process Flow
15
+
16
+ ```mermaid
17
+ flowchart TD
18
+ A[Receive production-order reference and filters] --> B[Query child work orders]
19
+ B --> C[Apply optional status or work-center filters]
20
+ C --> D[Order by sequence]
21
+ D --> E[Return work-order list]
22
+ ```
23
+
24
+ ## External Dependencies
25
+
26
+ - None
27
+
28
+ ## Error Scenarios
29
+
30
+ - **PRODUCTION_ORDER_REFERENCE_REQUIRED**: Production-order reference was not provided.
31
+
32
+ ## Test Cases
33
+
34
+ - lists work orders for a production order in sequence order
35
+ - filters work orders by status when provided
36
+ - filters work orders by work center when provided
37
+ - returns summary fields with sequence and progress data
38
+ - returns an empty list when no work orders exist
39
+ - returns error when the production-order reference is missing
@@ -0,0 +1,43 @@
1
+ # ListWorkOrdersByWorkCenter
2
+
3
+ ## Overview
4
+
5
+ ListWorkOrdersByWorkCenter lists work orders queued or executing at one work center across multiple production orders so supervisors can review shared bottlenecks and dispatch work.
6
+
7
+ ## Business Rules
8
+
9
+ - Work-center reference is required.
10
+ - Optional filters may restrict by work-order status or planned execution date range.
11
+ - Results may span multiple production orders, but every returned work order must belong to the requested work center only.
12
+ - Results are ordered for execution review, prioritizing active bottleneck work by status and planned execution timing.
13
+ - The query returns summary fields suitable for a dispatch or bottleneck board, including production-order reference, operation sequence, status, planned and completed quantities, and current execution timestamps.
14
+
15
+ ## Process Flow
16
+
17
+ ```mermaid
18
+ flowchart TD
19
+ A[Receive work-center reference and filters] --> B[Validate work-center input]
20
+ B --> C[Query work orders assigned to the work center]
21
+ C --> D[Apply optional status and date-range filters]
22
+ D --> E[Order for execution review]
23
+ E --> F[Return cross-order work-order list]
24
+ ```
25
+
26
+ ## External Dependencies
27
+
28
+ - None
29
+
30
+ ## Error Scenarios
31
+
32
+ - **WORK_CENTER_REFERENCE_REQUIRED**: Work-center reference was not provided.
33
+ - **WORK_CENTER_NOT_FOUND**: Requested work center does not exist.
34
+
35
+ ## Test Cases
36
+
37
+ - lists pending and in-progress work orders for one work center across multiple production orders
38
+ - filters work orders by status when provided
39
+ - orders the result for bottleneck review by execution priority and planned timing
40
+ - returns summary fields with production-order reference operation sequence and progress totals
41
+ - returns an empty list when the work center has no assigned work orders
42
+ - returns error when the work-center reference is missing
43
+ - returns error when the work center does not exist
File without changes
@@ -0,0 +1,113 @@
1
+ /**
2
+ * BOM type: MANUFACTURE, PHANTOM, KIT
3
+ */
4
+ export const BillOfMaterialBomType = {
5
+ "MANUFACTURE": "MANUFACTURE",
6
+ "PHANTOM": "PHANTOM",
7
+ "KIT": "KIT"
8
+ } as const;
9
+ export type BillOfMaterialBomType = (typeof BillOfMaterialBomType)[keyof typeof BillOfMaterialBomType];
10
+
11
+ /**
12
+ * Lifecycle status: DRAFT, ACTIVE, INACTIVE
13
+ */
14
+ export const BillOfMaterialStatus = {
15
+ "DRAFT": "DRAFT",
16
+ "ACTIVE": "ACTIVE",
17
+ "INACTIVE": "INACTIVE"
18
+ } as const;
19
+ export type BillOfMaterialStatus = (typeof BillOfMaterialStatus)[keyof typeof BillOfMaterialStatus];
20
+
21
+ /**
22
+ * Variance type: MATERIAL_PRICE, MATERIAL_USAGE, LABOR_RATE, LABOR_EFFICIENCY, MACHINE_RATE, MACHINE_EFFICIENCY, SCRAP, YIELD
23
+ */
24
+ export const CostVarianceLineVarianceType = {
25
+ "MATERIAL_PRICE": "MATERIAL_PRICE",
26
+ "MATERIAL_USAGE": "MATERIAL_USAGE",
27
+ "LABOR_RATE": "LABOR_RATE",
28
+ "LABOR_EFFICIENCY": "LABOR_EFFICIENCY",
29
+ "MACHINE_RATE": "MACHINE_RATE",
30
+ "MACHINE_EFFICIENCY": "MACHINE_EFFICIENCY",
31
+ "SCRAP": "SCRAP",
32
+ "YIELD": "YIELD"
33
+ } as const;
34
+ export type CostVarianceLineVarianceType = (typeof CostVarianceLineVarianceType)[keyof typeof CostVarianceLineVarianceType];
35
+
36
+ /**
37
+ * Lifecycle status: COLLECTING, PENDING_VARIANCE_REVIEW, VARIANCE_REVIEWED, SETTLED
38
+ */
39
+ export const ManufacturingCostSummaryStatus = {
40
+ "COLLECTING": "COLLECTING",
41
+ "PENDING_VARIANCE_REVIEW": "PENDING_VARIANCE_REVIEW",
42
+ "VARIANCE_REVIEWED": "VARIANCE_REVIEWED",
43
+ "SETTLED": "SETTLED"
44
+ } as const;
45
+ export type ManufacturingCostSummaryStatus = (typeof ManufacturingCostSummaryStatus)[keyof typeof ManufacturingCostSummaryStatus];
46
+
47
+ /**
48
+ * Lifecycle status: DRAFT, RELEASED, IN_PROGRESS, COMPLETED, TECHNICALLY_COMPLETE, CLOSED, CANCELLED
49
+ */
50
+ export const ProductionOrderStatus = {
51
+ "DRAFT": "DRAFT",
52
+ "RELEASED": "RELEASED",
53
+ "IN_PROGRESS": "IN_PROGRESS",
54
+ "COMPLETED": "COMPLETED",
55
+ "TECHNICALLY_COMPLETE": "TECHNICALLY_COMPLETE",
56
+ "CLOSED": "CLOSED",
57
+ "CANCELLED": "CANCELLED"
58
+ } as const;
59
+ export type ProductionOrderStatus = (typeof ProductionOrderStatus)[keyof typeof ProductionOrderStatus];
60
+
61
+ /**
62
+ * Lifecycle status: DRAFT, ACTIVE, INACTIVE
63
+ */
64
+ export const RoutingStatus = {
65
+ "DRAFT": "DRAFT",
66
+ "ACTIVE": "ACTIVE",
67
+ "INACTIVE": "INACTIVE"
68
+ } as const;
69
+ export type RoutingStatus = (typeof RoutingStatus)[keyof typeof RoutingStatus];
70
+
71
+ /**
72
+ * Lifecycle status: DRAFT, ACTIVE, INACTIVE
73
+ */
74
+ export const WorkCenterStatus = {
75
+ "DRAFT": "DRAFT",
76
+ "ACTIVE": "ACTIVE",
77
+ "INACTIVE": "INACTIVE"
78
+ } as const;
79
+ export type WorkCenterStatus = (typeof WorkCenterStatus)[keyof typeof WorkCenterStatus];
80
+
81
+ /**
82
+ * Method for absorbing overhead: PERCENT_OF_LABOR_COST, PERCENT_OF_MACHINE_COST, or FIXED_AMOUNT_PER_GOOD_UNIT
83
+ */
84
+ export const WorkCenterOverheadAbsorptionMethod = {
85
+ "PERCENT_OF_LABOR_COST": "PERCENT_OF_LABOR_COST",
86
+ "PERCENT_OF_MACHINE_COST": "PERCENT_OF_MACHINE_COST",
87
+ "FIXED_AMOUNT_PER_GOOD_UNIT": "FIXED_AMOUNT_PER_GOOD_UNIT"
88
+ } as const;
89
+ export type WorkCenterOverheadAbsorptionMethod = (typeof WorkCenterOverheadAbsorptionMethod)[keyof typeof WorkCenterOverheadAbsorptionMethod];
90
+
91
+ /**
92
+ * Lifecycle status: PENDING, IN_PROGRESS, PAUSED, COMPLETE, CANCELLED
93
+ */
94
+ export const WorkOrderStatus = {
95
+ "PENDING": "PENDING",
96
+ "IN_PROGRESS": "IN_PROGRESS",
97
+ "PAUSED": "PAUSED",
98
+ "COMPLETE": "COMPLETE",
99
+ "CANCELLED": "CANCELLED"
100
+ } as const;
101
+ export type WorkOrderStatus = (typeof WorkOrderStatus)[keyof typeof WorkOrderStatus];
102
+
103
+ /**
104
+ * Event type: STARTED, PAUSED, RESUMED, PROGRESS_REPORTED, COMPLETED
105
+ */
106
+ export const WorkOrderExecutionEventEventType = {
107
+ "STARTED": "STARTED",
108
+ "PAUSED": "PAUSED",
109
+ "RESUMED": "RESUMED",
110
+ "PROGRESS_REPORTED": "PROGRESS_REPORTED",
111
+ "COMPLETED": "COMPLETED"
112
+ } as const;
113
+ export type WorkOrderExecutionEventEventType = (typeof WorkOrderExecutionEventEventType)[keyof typeof WorkOrderExecutionEventEventType];
@@ -0,0 +1,247 @@
1
+ import {
2
+ createGetDB,
3
+ type Generated,
4
+ type Timestamp,
5
+ type NamespaceDB,
6
+ type NamespaceInsertable,
7
+ type NamespaceSelectable,
8
+ type NamespaceTable,
9
+ type NamespaceTableName,
10
+ type NamespaceTransaction,
11
+ type NamespaceUpdateable,
12
+ } from "@tailor-platform/sdk/kysely";
13
+
14
+ export interface Namespace {
15
+ "main-db": {
16
+ BillOfMaterial: {
17
+ id: Generated<string>;
18
+ parentItemId: string;
19
+ companyId: string;
20
+ siteId: string | null;
21
+ bomType: "MANUFACTURE" | "PHANTOM" | "KIT";
22
+ effectivityStartDate: Timestamp | null;
23
+ effectivityEndDate: Timestamp | null;
24
+ defaultSelection: boolean | null;
25
+ revisionNumber: string | null;
26
+ status: "DRAFT" | "ACTIVE" | "INACTIVE";
27
+ createdAt: Generated<Timestamp>;
28
+ updatedAt: Timestamp | null;
29
+ }
30
+
31
+ BillOfMaterialLine: {
32
+ id: Generated<string>;
33
+ billOfMaterialId: string;
34
+ itemId: string;
35
+ requiredQuantity: number;
36
+ unitOfMeasure: string | null;
37
+ scrapAssumption: number | null;
38
+ isSubassembly: boolean | null;
39
+ createdAt: Generated<Timestamp>;
40
+ updatedAt: Timestamp | null;
41
+ }
42
+
43
+ CostVarianceLine: {
44
+ id: Generated<string>;
45
+ costSummaryId: string;
46
+ varianceType: "MATERIAL_PRICE" | "MATERIAL_USAGE" | "LABOR_RATE" | "LABOR_EFFICIENCY" | "MACHINE_RATE" | "MACHINE_EFFICIENCY" | "SCRAP" | "YIELD";
47
+ amount: number;
48
+ accountReference: string | null;
49
+ variancePercentage: number | null;
50
+ createdAt: Generated<Timestamp>;
51
+ updatedAt: Timestamp | null;
52
+ }
53
+
54
+ ManufacturingCostLine: {
55
+ id: Generated<string>;
56
+ costSummaryId: string;
57
+ costType: string;
58
+ plannedAmount: number;
59
+ actualAmount: number;
60
+ createdAt: Generated<Timestamp>;
61
+ updatedAt: Timestamp | null;
62
+ }
63
+
64
+ ManufacturingCostSettlementRecord: {
65
+ id: Generated<string>;
66
+ costSummaryId: string;
67
+ settlementDate: Timestamp;
68
+ settlementReference: string;
69
+ acknowledgedDate: Timestamp | null;
70
+ createdAt: Generated<Timestamp>;
71
+ updatedAt: Timestamp | null;
72
+ }
73
+
74
+ ManufacturingCostSummary: {
75
+ id: Generated<string>;
76
+ productionOrderId: string;
77
+ plannedMaterialCost: number;
78
+ plannedLaborCost: number;
79
+ plannedMachineCost: number;
80
+ plannedOverheadCost: number;
81
+ actualMaterialCost: number;
82
+ actualLaborCost: number;
83
+ actualMachineCost: number;
84
+ actualOverheadCost: number;
85
+ currencyCode: string;
86
+ reviewedDate: Timestamp | null;
87
+ reviewerNotes: string | null;
88
+ status: "COLLECTING" | "PENDING_VARIANCE_REVIEW" | "VARIANCE_REVIEWED" | "SETTLED";
89
+ createdAt: Generated<Timestamp>;
90
+ updatedAt: Timestamp | null;
91
+ }
92
+
93
+ ProductionOrder: {
94
+ id: Generated<string>;
95
+ orderedItemId: string;
96
+ companyId: string;
97
+ siteId: string;
98
+ plannedQuantity: number;
99
+ plannedStartDate: Timestamp;
100
+ plannedEndDate: Timestamp;
101
+ selectedBomVersionId: string | null;
102
+ selectedRoutingRevisionId: string | null;
103
+ status: "DRAFT" | "RELEASED" | "IN_PROGRESS" | "COMPLETED" | "TECHNICALLY_COMPLETE" | "CLOSED" | "CANCELLED";
104
+ createdAt: Generated<Timestamp>;
105
+ updatedAt: Timestamp | null;
106
+ }
107
+
108
+ ProductionOrderBomSnapshot: {
109
+ id: Generated<string>;
110
+ productionOrderId: string;
111
+ parentItemId: string;
112
+ bomType: string;
113
+ snapshotData: string | null;
114
+ createdAt: Generated<Timestamp>;
115
+ updatedAt: Timestamp | null;
116
+ }
117
+
118
+ ProductionOrderCostBaseline: {
119
+ id: Generated<string>;
120
+ productionOrderId: string;
121
+ plannedMaterialCost: number;
122
+ plannedLaborCost: number;
123
+ plannedMachineCost: number;
124
+ plannedOverheadCost: number;
125
+ currencyCode: string;
126
+ createdAt: Generated<Timestamp>;
127
+ updatedAt: Timestamp | null;
128
+ }
129
+
130
+ ProductionOrderMaterialRequirement: {
131
+ id: Generated<string>;
132
+ productionOrderId: string;
133
+ itemId: string;
134
+ requiredQuantity: number;
135
+ unitOfMeasure: string | null;
136
+ plannedUnitCost: number | null;
137
+ createdAt: Generated<Timestamp>;
138
+ updatedAt: Timestamp | null;
139
+ }
140
+
141
+ ProductionOrderRoutingSnapshot: {
142
+ id: Generated<string>;
143
+ productionOrderId: string;
144
+ routingId: string;
145
+ snapshotData: string | null;
146
+ createdAt: Generated<Timestamp>;
147
+ updatedAt: Timestamp | null;
148
+ }
149
+
150
+ Routing: {
151
+ id: Generated<string>;
152
+ parentItemId: string;
153
+ companyId: string;
154
+ siteId: string | null;
155
+ revisionNumber: string | null;
156
+ status: "DRAFT" | "ACTIVE" | "INACTIVE";
157
+ createdAt: Generated<Timestamp>;
158
+ updatedAt: Timestamp | null;
159
+ }
160
+
161
+ RoutingOperation: {
162
+ id: Generated<string>;
163
+ routingId: string;
164
+ sequenceNumber: number;
165
+ operationDescription: string | null;
166
+ workCenterId: string;
167
+ standardSetupTime: number;
168
+ standardRunTime: number;
169
+ operatorInstructions: string | null;
170
+ createdAt: Generated<Timestamp>;
171
+ updatedAt: Timestamp | null;
172
+ }
173
+
174
+ WorkCenter: {
175
+ id: Generated<string>;
176
+ code: string;
177
+ companyId: string;
178
+ siteId: string | null;
179
+ status: "DRAFT" | "ACTIVE" | "INACTIVE";
180
+ capacityAssumptions: number;
181
+ laborRate: number | null;
182
+ machineRate: number | null;
183
+ calendarReference: string | null;
184
+ overheadAbsorptionMethod: "PERCENT_OF_LABOR_COST" | "PERCENT_OF_MACHINE_COST" | "FIXED_AMOUNT_PER_GOOD_UNIT" | null;
185
+ overheadAbsorptionCurrency: string | null;
186
+ createdAt: Generated<Timestamp>;
187
+ updatedAt: Timestamp | null;
188
+ }
189
+
190
+ WorkOrder: {
191
+ id: Generated<string>;
192
+ productionOrderId: string;
193
+ routingOperationSequenceNumber: number;
194
+ workCenterId: string;
195
+ plannedQuantity: number;
196
+ completedQuantity: number;
197
+ scrapQuantity: number;
198
+ actualSetupTime: number;
199
+ actualRunTime: number;
200
+ actualStartDate: Timestamp | null;
201
+ pauseReason: string | null;
202
+ executionNotes: string | null;
203
+ status: "PENDING" | "IN_PROGRESS" | "PAUSED" | "COMPLETE" | "CANCELLED";
204
+ createdAt: Generated<Timestamp>;
205
+ updatedAt: Timestamp | null;
206
+ }
207
+
208
+ WorkOrderExecutionEvent: {
209
+ id: Generated<string>;
210
+ workOrderId: string;
211
+ eventType: "STARTED" | "PAUSED" | "RESUMED" | "PROGRESS_REPORTED" | "COMPLETED";
212
+ timestamp: Timestamp;
213
+ quantity: number | null;
214
+ timeValue: number | null;
215
+ scrapValue: number | null;
216
+ notes: string | null;
217
+ createdAt: Generated<Timestamp>;
218
+ updatedAt: Timestamp | null;
219
+ }
220
+
221
+ Company: {
222
+ id: Generated<string>;
223
+ }
224
+
225
+ Item: {
226
+ id: Generated<string>;
227
+ }
228
+
229
+ Site: {
230
+ id: Generated<string>;
231
+ }
232
+ }
233
+ }
234
+
235
+ export const getDB = createGetDB<Namespace>();
236
+
237
+ export type DB<N extends keyof Namespace = keyof Namespace> = NamespaceDB<Namespace, N>;
238
+
239
+ export type Transaction<K extends keyof Namespace | DB = keyof Namespace> =
240
+ NamespaceTransaction<Namespace, K>;
241
+
242
+ type TableName = NamespaceTableName<Namespace>;
243
+ export type Table<T extends TableName> = NamespaceTable<Namespace, T>;
244
+
245
+ export type Insertable<T extends TableName> = NamespaceInsertable<Namespace, T>;
246
+ export type Selectable<T extends TableName> = NamespaceSelectable<Namespace, T>;
247
+ export type Updateable<T extends TableName> = NamespaceUpdateable<Namespace, T>;
@@ -0,0 +1,2 @@
1
+ export { defineModule } from "./module";
2
+ export { permissions, own, all } from "./permissions";
@@ -0,0 +1,22 @@
1
+ // Stub types for cross-module dependencies — used only for codegen.
2
+ // At runtime, actual types are injected via defineModule() params.
3
+ import {
4
+ db,
5
+ unsafeAllowAllGqlPermission,
6
+ unsafeAllowAllTypePermission,
7
+ } from "@tailor-platform/sdk";
8
+
9
+ export const company = db
10
+ .type("Company", {})
11
+ .permission(unsafeAllowAllTypePermission)
12
+ .gqlPermission(unsafeAllowAllGqlPermission);
13
+
14
+ export const site = db
15
+ .type("Site", {})
16
+ .permission(unsafeAllowAllTypePermission)
17
+ .gqlPermission(unsafeAllowAllGqlPermission);
18
+
19
+ export const item = db
20
+ .type("Item", {})
21
+ .permission(unsafeAllowAllTypePermission)
22
+ .gqlPermission(unsafeAllowAllGqlPermission);