@gitgov/core 1.0.1 → 1.0.2

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 (469) hide show
  1. package/README.md +31 -31
  2. package/dist/src/index.d.ts +5475 -21
  3. package/dist/src/index.js +7873 -22
  4. package/dist/src/index.js.map +1 -1
  5. package/package.json +17 -5
  6. package/dist/scripts/compile-json-to-types.d.ts +0 -11
  7. package/dist/scripts/compile-json-to-types.d.ts.map +0 -1
  8. package/dist/scripts/compile-json-to-types.js +0 -129
  9. package/dist/scripts/compile-json-to-types.js.map +0 -1
  10. package/dist/scripts/diagnose-duplicates.d.ts +0 -7
  11. package/dist/scripts/diagnose-duplicates.d.ts.map +0 -1
  12. package/dist/scripts/diagnose-duplicates.js +0 -72
  13. package/dist/scripts/diagnose-duplicates.js.map +0 -1
  14. package/dist/scripts/generate-indexes.d.ts +0 -22
  15. package/dist/scripts/generate-indexes.d.ts.map +0 -1
  16. package/dist/scripts/generate-indexes.js +0 -168
  17. package/dist/scripts/generate-indexes.js.map +0 -1
  18. package/dist/scripts/sync-schemas.d.ts +0 -10
  19. package/dist/scripts/sync-schemas.d.ts.map +0 -1
  20. package/dist/scripts/sync-schemas.js +0 -84
  21. package/dist/scripts/sync-schemas.js.map +0 -1
  22. package/dist/scripts/sync-workflow-configs.d.ts +0 -11
  23. package/dist/scripts/sync-workflow-configs.d.ts.map +0 -1
  24. package/dist/scripts/sync-workflow-configs.js +0 -61
  25. package/dist/scripts/sync-workflow-configs.js.map +0 -1
  26. package/dist/scripts/update-diagram.d.ts +0 -7
  27. package/dist/scripts/update-diagram.d.ts.map +0 -1
  28. package/dist/scripts/update-diagram.js +0 -47
  29. package/dist/scripts/update-diagram.js.map +0 -1
  30. package/dist/scripts/validate-schemas.d.ts +0 -18
  31. package/dist/scripts/validate-schemas.d.ts.map +0 -1
  32. package/dist/scripts/validate-schemas.js +0 -313
  33. package/dist/scripts/validate-schemas.js.map +0 -1
  34. package/dist/src/adapters/backlog_adapter/backlog_adapter.integration.test.d.ts +0 -2
  35. package/dist/src/adapters/backlog_adapter/backlog_adapter.integration.test.d.ts.map +0 -1
  36. package/dist/src/adapters/backlog_adapter/backlog_adapter.integration.test.js +0 -507
  37. package/dist/src/adapters/backlog_adapter/backlog_adapter.integration.test.js.map +0 -1
  38. package/dist/src/adapters/backlog_adapter/backlog_adapter.test.d.ts +0 -2
  39. package/dist/src/adapters/backlog_adapter/backlog_adapter.test.d.ts.map +0 -1
  40. package/dist/src/adapters/backlog_adapter/backlog_adapter.test.js +0 -1282
  41. package/dist/src/adapters/backlog_adapter/backlog_adapter.test.js.map +0 -1
  42. package/dist/src/adapters/backlog_adapter/backlog_adapter_e2e.test.d.ts +0 -10
  43. package/dist/src/adapters/backlog_adapter/backlog_adapter_e2e.test.d.ts.map +0 -1
  44. package/dist/src/adapters/backlog_adapter/backlog_adapter_e2e.test.js +0 -144
  45. package/dist/src/adapters/backlog_adapter/backlog_adapter_e2e.test.js.map +0 -1
  46. package/dist/src/adapters/backlog_adapter/index.d.ts +0 -213
  47. package/dist/src/adapters/backlog_adapter/index.d.ts.map +0 -1
  48. package/dist/src/adapters/backlog_adapter/index.js +0 -924
  49. package/dist/src/adapters/backlog_adapter/index.js.map +0 -1
  50. package/dist/src/adapters/changelog_adapter/changelog_adapter.test.d.ts +0 -2
  51. package/dist/src/adapters/changelog_adapter/changelog_adapter.test.d.ts.map +0 -1
  52. package/dist/src/adapters/changelog_adapter/changelog_adapter.test.js +0 -505
  53. package/dist/src/adapters/changelog_adapter/changelog_adapter.test.js.map +0 -1
  54. package/dist/src/adapters/changelog_adapter/index.d.ts +0 -101
  55. package/dist/src/adapters/changelog_adapter/index.d.ts.map +0 -1
  56. package/dist/src/adapters/changelog_adapter/index.js +0 -197
  57. package/dist/src/adapters/changelog_adapter/index.js.map +0 -1
  58. package/dist/src/adapters/execution_adapter/execution_adapter.test.d.ts +0 -2
  59. package/dist/src/adapters/execution_adapter/execution_adapter.test.d.ts.map +0 -1
  60. package/dist/src/adapters/execution_adapter/execution_adapter.test.js +0 -266
  61. package/dist/src/adapters/execution_adapter/execution_adapter.test.js.map +0 -1
  62. package/dist/src/adapters/execution_adapter/index.d.ts +0 -90
  63. package/dist/src/adapters/execution_adapter/index.d.ts.map +0 -1
  64. package/dist/src/adapters/execution_adapter/index.js +0 -150
  65. package/dist/src/adapters/execution_adapter/index.js.map +0 -1
  66. package/dist/src/adapters/feedback_adapter/feedback_adapter.test.d.ts +0 -2
  67. package/dist/src/adapters/feedback_adapter/feedback_adapter.test.d.ts.map +0 -1
  68. package/dist/src/adapters/feedback_adapter/feedback_adapter.test.js +0 -256
  69. package/dist/src/adapters/feedback_adapter/feedback_adapter.test.js.map +0 -1
  70. package/dist/src/adapters/feedback_adapter/index.d.ts +0 -95
  71. package/dist/src/adapters/feedback_adapter/index.d.ts.map +0 -1
  72. package/dist/src/adapters/feedback_adapter/index.js +0 -192
  73. package/dist/src/adapters/feedback_adapter/index.js.map +0 -1
  74. package/dist/src/adapters/identity_adapter/identity_adapter.test.d.ts +0 -2
  75. package/dist/src/adapters/identity_adapter/identity_adapter.test.d.ts.map +0 -1
  76. package/dist/src/adapters/identity_adapter/identity_adapter.test.js +0 -624
  77. package/dist/src/adapters/identity_adapter/identity_adapter.test.js.map +0 -1
  78. package/dist/src/adapters/identity_adapter/index.d.ts +0 -82
  79. package/dist/src/adapters/identity_adapter/index.d.ts.map +0 -1
  80. package/dist/src/adapters/identity_adapter/index.js +0 -336
  81. package/dist/src/adapters/identity_adapter/index.js.map +0 -1
  82. package/dist/src/adapters/index.d.ts +0 -10
  83. package/dist/src/adapters/index.d.ts.map +0 -1
  84. package/dist/src/adapters/index.js +0 -10
  85. package/dist/src/adapters/index.js.map +0 -1
  86. package/dist/src/adapters/indexer_adapter/index.d.ts +0 -214
  87. package/dist/src/adapters/indexer_adapter/index.d.ts.map +0 -1
  88. package/dist/src/adapters/indexer_adapter/index.js +0 -643
  89. package/dist/src/adapters/indexer_adapter/index.js.map +0 -1
  90. package/dist/src/adapters/indexer_adapter/indexer_adapter.test.d.ts +0 -2
  91. package/dist/src/adapters/indexer_adapter/indexer_adapter.test.d.ts.map +0 -1
  92. package/dist/src/adapters/indexer_adapter/indexer_adapter.test.js +0 -409
  93. package/dist/src/adapters/indexer_adapter/indexer_adapter.test.js.map +0 -1
  94. package/dist/src/adapters/metrics_adapter/index.d.ts +0 -189
  95. package/dist/src/adapters/metrics_adapter/index.d.ts.map +0 -1
  96. package/dist/src/adapters/metrics_adapter/index.js +0 -592
  97. package/dist/src/adapters/metrics_adapter/index.js.map +0 -1
  98. package/dist/src/adapters/metrics_adapter/metrics_adapter.test.d.ts +0 -2
  99. package/dist/src/adapters/metrics_adapter/metrics_adapter.test.d.ts.map +0 -1
  100. package/dist/src/adapters/metrics_adapter/metrics_adapter.test.js +0 -558
  101. package/dist/src/adapters/metrics_adapter/metrics_adapter.test.js.map +0 -1
  102. package/dist/src/adapters/project_adapter/index.d.ts +0 -164
  103. package/dist/src/adapters/project_adapter/index.d.ts.map +0 -1
  104. package/dist/src/adapters/project_adapter/index.js +0 -445
  105. package/dist/src/adapters/project_adapter/index.js.map +0 -1
  106. package/dist/src/adapters/project_adapter/project_adapter.test.d.ts +0 -2
  107. package/dist/src/adapters/project_adapter/project_adapter.test.d.ts.map +0 -1
  108. package/dist/src/adapters/project_adapter/project_adapter.test.js +0 -627
  109. package/dist/src/adapters/project_adapter/project_adapter.test.js.map +0 -1
  110. package/dist/src/adapters/workflow_methodology_adapter/index.d.ts +0 -75
  111. package/dist/src/adapters/workflow_methodology_adapter/index.d.ts.map +0 -1
  112. package/dist/src/adapters/workflow_methodology_adapter/index.js +0 -205
  113. package/dist/src/adapters/workflow_methodology_adapter/index.js.map +0 -1
  114. package/dist/src/adapters/workflow_methodology_adapter/workflow_methodology_adapter.test.d.ts +0 -2
  115. package/dist/src/adapters/workflow_methodology_adapter/workflow_methodology_adapter.test.d.ts.map +0 -1
  116. package/dist/src/adapters/workflow_methodology_adapter/workflow_methodology_adapter.test.js +0 -463
  117. package/dist/src/adapters/workflow_methodology_adapter/workflow_methodology_adapter.test.js.map +0 -1
  118. package/dist/src/adapters/workflow_methodology_adapter/workflow_methodology_adapter_integration.test.d.ts +0 -2
  119. package/dist/src/adapters/workflow_methodology_adapter/workflow_methodology_adapter_integration.test.d.ts.map +0 -1
  120. package/dist/src/adapters/workflow_methodology_adapter/workflow_methodology_adapter_integration.test.js +0 -287
  121. package/dist/src/adapters/workflow_methodology_adapter/workflow_methodology_adapter_integration.test.js.map +0 -1
  122. package/dist/src/adapters/workflow_methodology_adapter/workflow_methodology_adapter_scrum_integration.test.d.ts +0 -2
  123. package/dist/src/adapters/workflow_methodology_adapter/workflow_methodology_adapter_scrum_integration.test.d.ts.map +0 -1
  124. package/dist/src/adapters/workflow_methodology_adapter/workflow_methodology_adapter_scrum_integration.test.js +0 -278
  125. package/dist/src/adapters/workflow_methodology_adapter/workflow_methodology_adapter_scrum_integration.test.js.map +0 -1
  126. package/dist/src/adapters/workflow_methodology_adapter/workflow_methodology_default.json +0 -188
  127. package/dist/src/adapters/workflow_methodology_adapter/workflow_methodology_scrum.json +0 -284
  128. package/dist/src/config_manager/config_manager.test.d.ts +0 -2
  129. package/dist/src/config_manager/config_manager.test.d.ts.map +0 -1
  130. package/dist/src/config_manager/config_manager.test.js +0 -321
  131. package/dist/src/config_manager/config_manager.test.js.map +0 -1
  132. package/dist/src/config_manager/index.d.ts +0 -107
  133. package/dist/src/config_manager/index.d.ts.map +0 -1
  134. package/dist/src/config_manager/index.js +0 -192
  135. package/dist/src/config_manager/index.js.map +0 -1
  136. package/dist/src/crypto/checksum.d.ts +0 -6
  137. package/dist/src/crypto/checksum.d.ts.map +0 -1
  138. package/dist/src/crypto/checksum.js +0 -38
  139. package/dist/src/crypto/checksum.js.map +0 -1
  140. package/dist/src/crypto/checksum.test.d.ts +0 -2
  141. package/dist/src/crypto/checksum.test.d.ts.map +0 -1
  142. package/dist/src/crypto/checksum.test.js +0 -167
  143. package/dist/src/crypto/checksum.test.js.map +0 -1
  144. package/dist/src/crypto/index.d.ts +0 -3
  145. package/dist/src/crypto/index.d.ts.map +0 -1
  146. package/dist/src/crypto/index.js +0 -3
  147. package/dist/src/crypto/index.js.map +0 -1
  148. package/dist/src/crypto/signatures.d.ts +0 -24
  149. package/dist/src/crypto/signatures.d.ts.map +0 -1
  150. package/dist/src/crypto/signatures.js +0 -67
  151. package/dist/src/crypto/signatures.js.map +0 -1
  152. package/dist/src/crypto/signatures.test.d.ts +0 -2
  153. package/dist/src/crypto/signatures.test.d.ts.map +0 -1
  154. package/dist/src/crypto/signatures.test.js +0 -378
  155. package/dist/src/crypto/signatures.test.js.map +0 -1
  156. package/dist/src/diagram_generator/diagram_generator.d.ts +0 -76
  157. package/dist/src/diagram_generator/diagram_generator.d.ts.map +0 -1
  158. package/dist/src/diagram_generator/diagram_generator.js +0 -233
  159. package/dist/src/diagram_generator/diagram_generator.js.map +0 -1
  160. package/dist/src/diagram_generator/graph_validator.d.ts +0 -19
  161. package/dist/src/diagram_generator/graph_validator.d.ts.map +0 -1
  162. package/dist/src/diagram_generator/graph_validator.js +0 -98
  163. package/dist/src/diagram_generator/graph_validator.js.map +0 -1
  164. package/dist/src/diagram_generator/index.d.ts +0 -4
  165. package/dist/src/diagram_generator/index.d.ts.map +0 -1
  166. package/dist/src/diagram_generator/index.js +0 -4
  167. package/dist/src/diagram_generator/index.js.map +0 -1
  168. package/dist/src/diagram_generator/mermaid_renderer.d.ts +0 -82
  169. package/dist/src/diagram_generator/mermaid_renderer.d.ts.map +0 -1
  170. package/dist/src/diagram_generator/mermaid_renderer.js +0 -306
  171. package/dist/src/diagram_generator/mermaid_renderer.js.map +0 -1
  172. package/dist/src/diagram_generator/relationship_analyzer.d.ts +0 -116
  173. package/dist/src/diagram_generator/relationship_analyzer.d.ts.map +0 -1
  174. package/dist/src/diagram_generator/relationship_analyzer.js +0 -381
  175. package/dist/src/diagram_generator/relationship_analyzer.js.map +0 -1
  176. package/dist/src/event_bus/event_bus.d.ts +0 -110
  177. package/dist/src/event_bus/event_bus.d.ts.map +0 -1
  178. package/dist/src/event_bus/event_bus.js +0 -161
  179. package/dist/src/event_bus/event_bus.js.map +0 -1
  180. package/dist/src/event_bus/event_bus.test.d.ts +0 -2
  181. package/dist/src/event_bus/event_bus.test.d.ts.map +0 -1
  182. package/dist/src/event_bus/event_bus.test.js +0 -332
  183. package/dist/src/event_bus/event_bus.test.js.map +0 -1
  184. package/dist/src/event_bus/event_bus_integration.test.d.ts +0 -2
  185. package/dist/src/event_bus/event_bus_integration.test.d.ts.map +0 -1
  186. package/dist/src/event_bus/event_bus_integration.test.js +0 -474
  187. package/dist/src/event_bus/event_bus_integration.test.js.map +0 -1
  188. package/dist/src/event_bus/index.d.ts +0 -3
  189. package/dist/src/event_bus/index.d.ts.map +0 -1
  190. package/dist/src/event_bus/index.js +0 -3
  191. package/dist/src/event_bus/index.js.map +0 -1
  192. package/dist/src/event_bus/types.d.ts +0 -203
  193. package/dist/src/event_bus/types.d.ts.map +0 -1
  194. package/dist/src/event_bus/types.js +0 -5
  195. package/dist/src/event_bus/types.js.map +0 -1
  196. package/dist/src/factories/actor_factory.d.ts +0 -6
  197. package/dist/src/factories/actor_factory.d.ts.map +0 -1
  198. package/dist/src/factories/actor_factory.js +0 -25
  199. package/dist/src/factories/actor_factory.js.map +0 -1
  200. package/dist/src/factories/actor_factory.test.d.ts +0 -2
  201. package/dist/src/factories/actor_factory.test.d.ts.map +0 -1
  202. package/dist/src/factories/actor_factory.test.js +0 -169
  203. package/dist/src/factories/actor_factory.test.js.map +0 -1
  204. package/dist/src/factories/agent_factory.d.ts +0 -6
  205. package/dist/src/factories/agent_factory.d.ts.map +0 -1
  206. package/dist/src/factories/agent_factory.js +0 -25
  207. package/dist/src/factories/agent_factory.js.map +0 -1
  208. package/dist/src/factories/agent_factory.test.d.ts +0 -2
  209. package/dist/src/factories/agent_factory.test.d.ts.map +0 -1
  210. package/dist/src/factories/agent_factory.test.js +0 -199
  211. package/dist/src/factories/agent_factory.test.js.map +0 -1
  212. package/dist/src/factories/changelog_factory.d.ts +0 -9
  213. package/dist/src/factories/changelog_factory.d.ts.map +0 -1
  214. package/dist/src/factories/changelog_factory.js +0 -46
  215. package/dist/src/factories/changelog_factory.js.map +0 -1
  216. package/dist/src/factories/changelog_factory.test.d.ts +0 -2
  217. package/dist/src/factories/changelog_factory.test.d.ts.map +0 -1
  218. package/dist/src/factories/changelog_factory.test.js +0 -368
  219. package/dist/src/factories/changelog_factory.test.js.map +0 -1
  220. package/dist/src/factories/cycle_factory.d.ts +0 -6
  221. package/dist/src/factories/cycle_factory.d.ts.map +0 -1
  222. package/dist/src/factories/cycle_factory.js +0 -28
  223. package/dist/src/factories/cycle_factory.js.map +0 -1
  224. package/dist/src/factories/cycle_factory.test.d.ts +0 -2
  225. package/dist/src/factories/cycle_factory.test.d.ts.map +0 -1
  226. package/dist/src/factories/cycle_factory.test.js +0 -175
  227. package/dist/src/factories/cycle_factory.test.js.map +0 -1
  228. package/dist/src/factories/execution_factory.d.ts +0 -9
  229. package/dist/src/factories/execution_factory.d.ts.map +0 -1
  230. package/dist/src/factories/execution_factory.js +0 -29
  231. package/dist/src/factories/execution_factory.js.map +0 -1
  232. package/dist/src/factories/execution_factory.test.d.ts +0 -2
  233. package/dist/src/factories/execution_factory.test.d.ts.map +0 -1
  234. package/dist/src/factories/execution_factory.test.js +0 -207
  235. package/dist/src/factories/execution_factory.test.js.map +0 -1
  236. package/dist/src/factories/feedback_factory.d.ts +0 -9
  237. package/dist/src/factories/feedback_factory.d.ts.map +0 -1
  238. package/dist/src/factories/feedback_factory.js +0 -30
  239. package/dist/src/factories/feedback_factory.js.map +0 -1
  240. package/dist/src/factories/feedback_factory.test.d.ts +0 -2
  241. package/dist/src/factories/feedback_factory.test.d.ts.map +0 -1
  242. package/dist/src/factories/feedback_factory.test.js +0 -256
  243. package/dist/src/factories/feedback_factory.test.js.map +0 -1
  244. package/dist/src/factories/index.d.ts +0 -9
  245. package/dist/src/factories/index.d.ts.map +0 -1
  246. package/dist/src/factories/index.js +0 -9
  247. package/dist/src/factories/index.js.map +0 -1
  248. package/dist/src/factories/task_factory.d.ts +0 -6
  249. package/dist/src/factories/task_factory.d.ts.map +0 -1
  250. package/dist/src/factories/task_factory.js +0 -30
  251. package/dist/src/factories/task_factory.js.map +0 -1
  252. package/dist/src/factories/task_factory.test.d.ts +0 -2
  253. package/dist/src/factories/task_factory.test.d.ts.map +0 -1
  254. package/dist/src/factories/task_factory.test.js +0 -197
  255. package/dist/src/factories/task_factory.test.js.map +0 -1
  256. package/dist/src/factories/workflow_methodology_factory.d.ts +0 -11
  257. package/dist/src/factories/workflow_methodology_factory.d.ts.map +0 -1
  258. package/dist/src/factories/workflow_methodology_factory.js +0 -173
  259. package/dist/src/factories/workflow_methodology_factory.js.map +0 -1
  260. package/dist/src/factories/workflow_methodology_factory.test.d.ts +0 -2
  261. package/dist/src/factories/workflow_methodology_factory.test.d.ts.map +0 -1
  262. package/dist/src/factories/workflow_methodology_factory.test.js +0 -244
  263. package/dist/src/factories/workflow_methodology_factory.test.js.map +0 -1
  264. package/dist/src/index.d.ts.map +0 -1
  265. package/dist/src/integration/cycles_tasks_integration.test.d.ts +0 -2
  266. package/dist/src/integration/cycles_tasks_integration.test.d.ts.map +0 -1
  267. package/dist/src/integration/cycles_tasks_integration.test.js +0 -258
  268. package/dist/src/integration/cycles_tasks_integration.test.js.map +0 -1
  269. package/dist/src/integration/schema_integration.test.d.ts +0 -8
  270. package/dist/src/integration/schema_integration.test.d.ts.map +0 -1
  271. package/dist/src/integration/schema_integration.test.js +0 -279
  272. package/dist/src/integration/schema_integration.test.js.map +0 -1
  273. package/dist/src/logger/index.d.ts +0 -2
  274. package/dist/src/logger/index.d.ts.map +0 -1
  275. package/dist/src/logger/index.js +0 -2
  276. package/dist/src/logger/index.js.map +0 -1
  277. package/dist/src/logger/logger.d.ts +0 -10
  278. package/dist/src/logger/logger.d.ts.map +0 -1
  279. package/dist/src/logger/logger.js +0 -48
  280. package/dist/src/logger/logger.js.map +0 -1
  281. package/dist/src/schemas/errors.d.ts +0 -28
  282. package/dist/src/schemas/errors.d.ts.map +0 -1
  283. package/dist/src/schemas/errors.js +0 -31
  284. package/dist/src/schemas/errors.js.map +0 -1
  285. package/dist/src/schemas/generated/actor_record_schema.json +0 -91
  286. package/dist/src/schemas/generated/agent_record_schema.json +0 -142
  287. package/dist/src/schemas/generated/changelog_record_schema.json +0 -227
  288. package/dist/src/schemas/generated/cycle_record_schema.json +0 -80
  289. package/dist/src/schemas/generated/embedded_metadata_schema.json +0 -318
  290. package/dist/src/schemas/generated/execution_record_schema.json +0 -89
  291. package/dist/src/schemas/generated/feedback_record_schema.json +0 -83
  292. package/dist/src/schemas/generated/index.d.ts +0 -2221
  293. package/dist/src/schemas/generated/index.d.ts.map +0 -1
  294. package/dist/src/schemas/generated/index.js +0 -48
  295. package/dist/src/schemas/generated/index.js.map +0 -1
  296. package/dist/src/schemas/generated/task_record_schema.json +0 -103
  297. package/dist/src/schemas/generated/workflow_methodology_record_schema.json +0 -393
  298. package/dist/src/schemas/index.d.ts +0 -4
  299. package/dist/src/schemas/index.d.ts.map +0 -1
  300. package/dist/src/schemas/index.js +0 -4
  301. package/dist/src/schemas/index.js.map +0 -1
  302. package/dist/src/schemas/schema_cache.d.ts +0 -39
  303. package/dist/src/schemas/schema_cache.d.ts.map +0 -1
  304. package/dist/src/schemas/schema_cache.js +0 -109
  305. package/dist/src/schemas/schema_cache.js.map +0 -1
  306. package/dist/src/schemas/schema_cache.test.d.ts +0 -2
  307. package/dist/src/schemas/schema_cache.test.d.ts.map +0 -1
  308. package/dist/src/schemas/schema_cache.test.js +0 -163
  309. package/dist/src/schemas/schema_cache.test.js.map +0 -1
  310. package/dist/src/store/index.d.ts +0 -2
  311. package/dist/src/store/index.d.ts.map +0 -1
  312. package/dist/src/store/index.js +0 -2
  313. package/dist/src/store/index.js.map +0 -1
  314. package/dist/src/store/record_store.d.ts +0 -30
  315. package/dist/src/store/record_store.d.ts.map +0 -1
  316. package/dist/src/store/record_store.js +0 -83
  317. package/dist/src/store/record_store.js.map +0 -1
  318. package/dist/src/store/record_store.test.d.ts +0 -2
  319. package/dist/src/store/record_store.test.d.ts.map +0 -1
  320. package/dist/src/store/record_store.test.js +0 -646
  321. package/dist/src/store/record_store.test.js.map +0 -1
  322. package/dist/src/types/common.types.d.ts +0 -43
  323. package/dist/src/types/common.types.d.ts.map +0 -1
  324. package/dist/src/types/common.types.js +0 -13
  325. package/dist/src/types/common.types.js.map +0 -1
  326. package/dist/src/types/embedded.types.d.ts +0 -17
  327. package/dist/src/types/embedded.types.d.ts.map +0 -1
  328. package/dist/src/types/embedded.types.js +0 -2
  329. package/dist/src/types/embedded.types.js.map +0 -1
  330. package/dist/src/types/generated/actor_record.d.ts +0 -45
  331. package/dist/src/types/generated/actor_record.d.ts.map +0 -1
  332. package/dist/src/types/generated/actor_record.js +0 -7
  333. package/dist/src/types/generated/actor_record.js.map +0 -1
  334. package/dist/src/types/generated/agent_record.d.ts +0 -40
  335. package/dist/src/types/generated/agent_record.d.ts.map +0 -1
  336. package/dist/src/types/generated/agent_record.js +0 -7
  337. package/dist/src/types/generated/agent_record.js.map +0 -1
  338. package/dist/src/types/generated/changelog_record.d.ts +0 -100
  339. package/dist/src/types/generated/changelog_record.d.ts.map +0 -1
  340. package/dist/src/types/generated/changelog_record.js +0 -7
  341. package/dist/src/types/generated/changelog_record.js.map +0 -1
  342. package/dist/src/types/generated/cycle_record.d.ts +0 -36
  343. package/dist/src/types/generated/cycle_record.d.ts.map +0 -1
  344. package/dist/src/types/generated/cycle_record.js +0 -7
  345. package/dist/src/types/generated/cycle_record.js.map +0 -1
  346. package/dist/src/types/generated/embedded_metadata.d.ts +0 -94
  347. package/dist/src/types/generated/embedded_metadata.d.ts.map +0 -1
  348. package/dist/src/types/generated/embedded_metadata.js +0 -7
  349. package/dist/src/types/generated/embedded_metadata.js.map +0 -1
  350. package/dist/src/types/generated/execution_record.d.ts +0 -39
  351. package/dist/src/types/generated/execution_record.d.ts.map +0 -1
  352. package/dist/src/types/generated/execution_record.js +0 -7
  353. package/dist/src/types/generated/execution_record.js.map +0 -1
  354. package/dist/src/types/generated/feedback_record.d.ts +0 -43
  355. package/dist/src/types/generated/feedback_record.d.ts.map +0 -1
  356. package/dist/src/types/generated/feedback_record.js +0 -7
  357. package/dist/src/types/generated/feedback_record.js.map +0 -1
  358. package/dist/src/types/generated/index.d.ts +0 -15
  359. package/dist/src/types/generated/index.d.ts.map +0 -1
  360. package/dist/src/types/generated/index.js +0 -15
  361. package/dist/src/types/generated/index.js.map +0 -1
  362. package/dist/src/types/generated/task_record.d.ts +0 -47
  363. package/dist/src/types/generated/task_record.d.ts.map +0 -1
  364. package/dist/src/types/generated/task_record.js +0 -7
  365. package/dist/src/types/generated/task_record.js.map +0 -1
  366. package/dist/src/types/generated/workflow_methodology_record.d.ts +0 -211
  367. package/dist/src/types/generated/workflow_methodology_record.d.ts.map +0 -1
  368. package/dist/src/types/generated/workflow_methodology_record.js +0 -7
  369. package/dist/src/types/generated/workflow_methodology_record.js.map +0 -1
  370. package/dist/src/types/index.d.ts +0 -4
  371. package/dist/src/types/index.d.ts.map +0 -1
  372. package/dist/src/types/index.js +0 -4
  373. package/dist/src/types/index.js.map +0 -1
  374. package/dist/src/utils/id_generator.d.ts +0 -44
  375. package/dist/src/utils/id_generator.d.ts.map +0 -1
  376. package/dist/src/utils/id_generator.js +0 -107
  377. package/dist/src/utils/id_generator.js.map +0 -1
  378. package/dist/src/utils/id_generator.test.d.ts +0 -2
  379. package/dist/src/utils/id_generator.test.d.ts.map +0 -1
  380. package/dist/src/utils/id_generator.test.js +0 -100
  381. package/dist/src/utils/id_generator.test.js.map +0 -1
  382. package/dist/src/utils/index.d.ts +0 -2
  383. package/dist/src/utils/index.d.ts.map +0 -1
  384. package/dist/src/utils/index.js +0 -3
  385. package/dist/src/utils/index.js.map +0 -1
  386. package/dist/src/validation/actor_validator.d.ts +0 -21
  387. package/dist/src/validation/actor_validator.d.ts.map +0 -1
  388. package/dist/src/validation/actor_validator.js +0 -48
  389. package/dist/src/validation/actor_validator.js.map +0 -1
  390. package/dist/src/validation/actor_validator.test.d.ts +0 -2
  391. package/dist/src/validation/actor_validator.test.d.ts.map +0 -1
  392. package/dist/src/validation/actor_validator.test.js +0 -83
  393. package/dist/src/validation/actor_validator.test.js.map +0 -1
  394. package/dist/src/validation/agent_validator.d.ts +0 -30
  395. package/dist/src/validation/agent_validator.d.ts.map +0 -1
  396. package/dist/src/validation/agent_validator.js +0 -66
  397. package/dist/src/validation/agent_validator.js.map +0 -1
  398. package/dist/src/validation/agent_validator.test.d.ts +0 -2
  399. package/dist/src/validation/agent_validator.test.d.ts.map +0 -1
  400. package/dist/src/validation/agent_validator.test.js +0 -73
  401. package/dist/src/validation/agent_validator.test.js.map +0 -1
  402. package/dist/src/validation/changelog_validator.d.ts +0 -23
  403. package/dist/src/validation/changelog_validator.d.ts.map +0 -1
  404. package/dist/src/validation/changelog_validator.js +0 -58
  405. package/dist/src/validation/changelog_validator.js.map +0 -1
  406. package/dist/src/validation/changelog_validator.test.d.ts +0 -2
  407. package/dist/src/validation/changelog_validator.test.d.ts.map +0 -1
  408. package/dist/src/validation/changelog_validator.test.js +0 -401
  409. package/dist/src/validation/changelog_validator.test.js.map +0 -1
  410. package/dist/src/validation/common.d.ts +0 -10
  411. package/dist/src/validation/common.d.ts.map +0 -1
  412. package/dist/src/validation/common.js +0 -12
  413. package/dist/src/validation/common.js.map +0 -1
  414. package/dist/src/validation/cycle_validator.d.ts +0 -24
  415. package/dist/src/validation/cycle_validator.d.ts.map +0 -1
  416. package/dist/src/validation/cycle_validator.js +0 -51
  417. package/dist/src/validation/cycle_validator.js.map +0 -1
  418. package/dist/src/validation/cycle_validator.test.d.ts +0 -2
  419. package/dist/src/validation/cycle_validator.test.d.ts.map +0 -1
  420. package/dist/src/validation/cycle_validator.test.js +0 -182
  421. package/dist/src/validation/cycle_validator.test.js.map +0 -1
  422. package/dist/src/validation/embedded_metadata_validator.d.ts +0 -26
  423. package/dist/src/validation/embedded_metadata_validator.d.ts.map +0 -1
  424. package/dist/src/validation/embedded_metadata_validator.js +0 -122
  425. package/dist/src/validation/embedded_metadata_validator.js.map +0 -1
  426. package/dist/src/validation/embedded_metadata_validator.test.d.ts +0 -2
  427. package/dist/src/validation/embedded_metadata_validator.test.d.ts.map +0 -1
  428. package/dist/src/validation/embedded_metadata_validator.test.js +0 -316
  429. package/dist/src/validation/embedded_metadata_validator.test.js.map +0 -1
  430. package/dist/src/validation/errors.d.ts +0 -67
  431. package/dist/src/validation/errors.d.ts.map +0 -1
  432. package/dist/src/validation/errors.js +0 -83
  433. package/dist/src/validation/errors.js.map +0 -1
  434. package/dist/src/validation/execution_validator.d.ts +0 -23
  435. package/dist/src/validation/execution_validator.d.ts.map +0 -1
  436. package/dist/src/validation/execution_validator.js +0 -58
  437. package/dist/src/validation/execution_validator.js.map +0 -1
  438. package/dist/src/validation/execution_validator.test.d.ts +0 -2
  439. package/dist/src/validation/execution_validator.test.d.ts.map +0 -1
  440. package/dist/src/validation/execution_validator.test.js +0 -167
  441. package/dist/src/validation/execution_validator.test.js.map +0 -1
  442. package/dist/src/validation/feedback_validator.d.ts +0 -23
  443. package/dist/src/validation/feedback_validator.d.ts.map +0 -1
  444. package/dist/src/validation/feedback_validator.js +0 -58
  445. package/dist/src/validation/feedback_validator.js.map +0 -1
  446. package/dist/src/validation/feedback_validator.test.d.ts +0 -2
  447. package/dist/src/validation/feedback_validator.test.d.ts.map +0 -1
  448. package/dist/src/validation/feedback_validator.test.js +0 -131
  449. package/dist/src/validation/feedback_validator.test.js.map +0 -1
  450. package/dist/src/validation/index.d.ts +0 -11
  451. package/dist/src/validation/index.d.ts.map +0 -1
  452. package/dist/src/validation/index.js +0 -10
  453. package/dist/src/validation/index.js.map +0 -1
  454. package/dist/src/validation/task_validator.d.ts +0 -24
  455. package/dist/src/validation/task_validator.d.ts.map +0 -1
  456. package/dist/src/validation/task_validator.js +0 -50
  457. package/dist/src/validation/task_validator.js.map +0 -1
  458. package/dist/src/validation/task_validator.test.d.ts +0 -2
  459. package/dist/src/validation/task_validator.test.d.ts.map +0 -1
  460. package/dist/src/validation/task_validator.test.js +0 -185
  461. package/dist/src/validation/task_validator.test.js.map +0 -1
  462. package/dist/src/validation/workflow_methodology_validator.d.ts +0 -32
  463. package/dist/src/validation/workflow_methodology_validator.d.ts.map +0 -1
  464. package/dist/src/validation/workflow_methodology_validator.js +0 -91
  465. package/dist/src/validation/workflow_methodology_validator.js.map +0 -1
  466. package/dist/src/validation/workflow_methodology_validator.test.d.ts +0 -2
  467. package/dist/src/validation/workflow_methodology_validator.test.d.ts.map +0 -1
  468. package/dist/src/validation/workflow_methodology_validator.test.js +0 -229
  469. package/dist/src/validation/workflow_methodology_validator.test.js.map +0 -1
@@ -1,368 +0,0 @@
1
- import { createChangelogRecord } from './changelog_factory';
2
- import { generateChangelogId } from '../utils/id_generator';
3
- import { DetailedValidationError } from '../validation/common';
4
- // Mock the validator
5
- jest.mock('../validation/changelog_validator', () => ({
6
- validateChangelogRecordDetailed: jest.fn()
7
- }));
8
- // Mock ID generator
9
- jest.mock('../utils/id_generator', () => ({
10
- generateChangelogId: jest.fn()
11
- }));
12
- describe('ChangelogRecord Factory', () => {
13
- const mockValidateChangelogRecordDetailed = require('../validation/changelog_validator').validateChangelogRecordDetailed;
14
- const mockGenerateChangelogId = generateChangelogId;
15
- beforeEach(() => {
16
- jest.clearAllMocks();
17
- // Default successful validation
18
- mockValidateChangelogRecordDetailed.mockReturnValue({
19
- isValid: true,
20
- errors: []
21
- });
22
- // Default ID generation
23
- mockGenerateChangelogId.mockReturnValue('1752707800-changelog-task-test-task');
24
- });
25
- describe('createChangelogRecord', () => {
26
- it('[EARS-1] should create a valid ChangelogRecord with all required fields', async () => {
27
- const payload = {
28
- entityType: 'task',
29
- entityId: '1752274500-task-test-task',
30
- changeType: 'completion',
31
- title: 'Test Task Completion',
32
- description: 'Successfully completed the test task with all requirements',
33
- triggeredBy: 'human:developer',
34
- reason: 'All acceptance criteria met and code review passed',
35
- files: ['src/test.ts', 'docs/test.md'],
36
- commits: ['abc123', 'def456']
37
- };
38
- const result = await createChangelogRecord(payload);
39
- expect(result).toEqual({
40
- id: '1752707800-changelog-task-test-task',
41
- entityType: 'task',
42
- entityId: '1752274500-task-test-task',
43
- changeType: 'completion',
44
- title: 'Test Task Completion',
45
- description: 'Successfully completed the test task with all requirements',
46
- timestamp: expect.any(Number),
47
- trigger: 'manual',
48
- triggeredBy: 'human:developer',
49
- reason: 'All acceptance criteria met and code review passed',
50
- riskLevel: 'low',
51
- files: ['src/test.ts', 'docs/test.md'],
52
- commits: ['abc123', 'def456']
53
- });
54
- expect(mockValidateChangelogRecordDetailed).toHaveBeenCalledWith(result);
55
- });
56
- it('[EARS-2] should apply default values for missing optional fields', async () => {
57
- const payload = {
58
- entityType: 'task',
59
- entityId: '1752274500-task-test-task',
60
- title: 'Test Task Completion',
61
- description: 'Successfully completed the test task',
62
- triggeredBy: 'human:developer',
63
- reason: 'Task completed successfully'
64
- };
65
- const result = await createChangelogRecord(payload);
66
- expect(result).toEqual({
67
- id: '1752707800-changelog-task-test-task',
68
- entityType: 'task',
69
- entityId: '1752274500-task-test-task',
70
- changeType: 'completion',
71
- title: 'Test Task Completion',
72
- description: 'Successfully completed the test task',
73
- timestamp: expect.any(Number),
74
- trigger: 'manual',
75
- triggeredBy: 'human:developer',
76
- reason: 'Task completed successfully',
77
- riskLevel: 'low'
78
- });
79
- expect(mockGenerateChangelogId).toHaveBeenCalledWith('task', '1752274500-task-test-task', expect.any(Number));
80
- });
81
- it('[EARS-3] should preserve provided ID when specified', async () => {
82
- const payload = {
83
- id: '1752707900-changelog-task-custom-id',
84
- entityType: 'task',
85
- entityId: '1752274500-task-test-task',
86
- changeType: 'completion',
87
- title: 'Custom ID Test',
88
- description: 'Successfully completed the test task',
89
- triggeredBy: 'human:developer',
90
- reason: 'Custom test case'
91
- };
92
- const result = await createChangelogRecord(payload);
93
- expect(result.id).toBe('1752707900-changelog-task-custom-id');
94
- expect(mockGenerateChangelogId).not.toHaveBeenCalled();
95
- });
96
- it('[EARS-4] should generate ID from entityType and entityId when ID is not provided', async () => {
97
- const payload = {
98
- entityType: 'task',
99
- entityId: '1752274500-task-implement-auth',
100
- changeType: 'completion',
101
- title: 'Authentication Implementation Completed',
102
- description: 'Authentication system implemented successfully',
103
- triggeredBy: 'human:developer',
104
- reason: 'All auth requirements completed'
105
- };
106
- mockGenerateChangelogId.mockReturnValue('1752707800-changelog-task-implement-auth');
107
- const result = await createChangelogRecord(payload);
108
- expect(result.id).toBe('1752707800-changelog-task-implement-auth');
109
- expect(mockGenerateChangelogId).toHaveBeenCalledWith('task', '1752274500-task-implement-auth', expect.any(Number));
110
- });
111
- it('[EARS-5] should throw DetailedValidationError when validation fails', async () => {
112
- const payload = {
113
- entityType: 'task',
114
- entityId: 'invalid-entity-id',
115
- changeType: 'completion',
116
- title: 'Test',
117
- description: 'Test description',
118
- triggeredBy: 'human:developer',
119
- reason: 'Test reason'
120
- };
121
- const validationErrors = [
122
- { field: 'entityId', message: 'must match pattern', value: payload.entityId }
123
- ];
124
- mockValidateChangelogRecordDetailed.mockReturnValue({
125
- isValid: false,
126
- errors: validationErrors
127
- });
128
- await expect(createChangelogRecord(payload)).rejects.toThrow(DetailedValidationError);
129
- await expect(createChangelogRecord(payload)).rejects.toThrow('ChangelogRecord');
130
- });
131
- it('[EARS-6] should preserve all provided fields in the output', async () => {
132
- const payload = {
133
- id: '1752707900-changelog-task-preserve-fields',
134
- entityType: 'task',
135
- entityId: '1752274500-task-test-task',
136
- changeType: 'update',
137
- title: 'Task Update',
138
- description: 'Updating task configuration',
139
- timestamp: 1752707900,
140
- trigger: 'automated',
141
- triggeredBy: 'agent:system',
142
- reason: 'Automated update process',
143
- riskLevel: 'medium',
144
- files: ['src/updated.ts'],
145
- commits: ['xyz789'],
146
- usersAffected: 10
147
- };
148
- const result = await createChangelogRecord(payload);
149
- expect(result).toEqual(payload);
150
- expect(mockValidateChangelogRecordDetailed).toHaveBeenCalledWith(payload);
151
- });
152
- it('[EARS-7] should handle empty files array', async () => {
153
- const payload = {
154
- entityType: 'task',
155
- entityId: '1752274500-task-test-task',
156
- changeType: 'completion',
157
- title: 'Test Task Completion',
158
- description: 'Successfully completed the test task',
159
- triggeredBy: 'human:developer',
160
- reason: 'Task completed',
161
- files: []
162
- };
163
- const result = await createChangelogRecord(payload);
164
- expect(result.files).toEqual([]);
165
- });
166
- it('[EARS-8] should use current timestamp when none provided', async () => {
167
- const payload = {
168
- entityType: 'task',
169
- entityId: '1752274500-task-test-task',
170
- changeType: 'completion',
171
- title: 'Timestamp Test',
172
- description: 'Testing timestamp generation',
173
- triggeredBy: 'human:developer',
174
- reason: 'Testing timestamp functionality'
175
- };
176
- const beforeTime = Math.floor(Date.now() / 1000);
177
- await createChangelogRecord(payload);
178
- const afterTime = Math.floor(Date.now() / 1000);
179
- expect(mockGenerateChangelogId).toHaveBeenCalledWith('task', '1752274500-task-test-task', expect.any(Number));
180
- const calledTimestamp = mockGenerateChangelogId.mock.calls[0][2];
181
- expect(calledTimestamp).toBeGreaterThanOrEqual(beforeTime);
182
- expect(calledTimestamp).toBeLessThanOrEqual(afterTime);
183
- });
184
- describe('ChangelogRecord Specific Factory Operations (EARS 29-37)', () => {
185
- it('[EARS-29] should generate ID with timestamp-changelog-entityType-slug format', async () => {
186
- const payload = {
187
- entityType: 'task',
188
- entityId: '1752274500-task-implement-feature',
189
- changeType: 'completion',
190
- title: 'Feature Implementation Completed',
191
- description: 'Successfully implemented the requested feature',
192
- triggeredBy: 'human:developer',
193
- reason: 'All requirements completed'
194
- };
195
- mockGenerateChangelogId.mockReturnValue('1752707800-changelog-task-implement-feature');
196
- const result = await createChangelogRecord(payload);
197
- expect(result.id).toBe('1752707800-changelog-task-implement-feature');
198
- expect(mockGenerateChangelogId).toHaveBeenCalledWith('task', '1752274500-task-implement-feature', expect.any(Number));
199
- });
200
- it('[EARS-30] should use entityId directly for system entities', async () => {
201
- const payload = {
202
- entityType: 'system',
203
- entityId: 'payment-gateway',
204
- changeType: 'hotfix',
205
- title: 'Payment Gateway Hotfix',
206
- description: 'Fixed critical payment processing issue',
207
- triggeredBy: 'human:on-call',
208
- reason: 'Critical production issue'
209
- };
210
- mockGenerateChangelogId.mockReturnValue('1752707800-changelog-system-payment-gateway');
211
- const result = await createChangelogRecord(payload);
212
- expect(result.id).toBe('1752707800-changelog-system-payment-gateway');
213
- expect(mockGenerateChangelogId).toHaveBeenCalledWith('system', 'payment-gateway', expect.any(Number));
214
- });
215
- it('[EARS-31] should use entityId directly for configuration entities', async () => {
216
- const payload = {
217
- entityType: 'configuration',
218
- entityId: 'database-config',
219
- changeType: 'update',
220
- title: 'Database Configuration Update',
221
- description: 'Updated connection pool settings',
222
- triggeredBy: 'human:devops',
223
- reason: 'Performance optimization'
224
- };
225
- mockGenerateChangelogId.mockReturnValue('1752707800-changelog-configuration-database-config');
226
- const result = await createChangelogRecord(payload);
227
- expect(result.id).toBe('1752707800-changelog-configuration-database-config');
228
- expect(mockGenerateChangelogId).toHaveBeenCalledWith('configuration', 'database-config', expect.any(Number));
229
- });
230
- it('[EARS-32] should extract slug from timestamped entityId for task/cycle/agent', async () => {
231
- const testCases = [
232
- { entityType: 'task', entityId: '1752274500-task-implement-auth', expectedSlug: 'implement-auth' },
233
- { entityType: 'cycle', entityId: '1752300000-cycle-sprint-q4', expectedSlug: 'sprint-q4' },
234
- { entityType: 'agent', entityId: 'agent:cursor-assistant', expectedSlug: 'cursor-assistant' }
235
- ];
236
- for (const testCase of testCases) {
237
- const payload = {
238
- entityType: testCase.entityType,
239
- entityId: testCase.entityId,
240
- changeType: 'update',
241
- title: `${testCase.entityType} Update`,
242
- description: `Updated ${testCase.entityType}`,
243
- triggeredBy: 'human:developer',
244
- reason: 'Regular update'
245
- };
246
- mockGenerateChangelogId.mockReturnValue(`1752707800-changelog-${testCase.entityType}-${testCase.expectedSlug}`);
247
- const result = await createChangelogRecord(payload);
248
- expect(result.id).toBe(`1752707800-changelog-${testCase.entityType}-${testCase.expectedSlug}`);
249
- expect(mockGenerateChangelogId).toHaveBeenCalledWith(testCase.entityType, testCase.entityId, expect.any(Number));
250
- }
251
- });
252
- it('[EARS-33] should apply sensible defaults for required fields', async () => {
253
- const payload = {
254
- entityType: 'task',
255
- entityId: '1752274500-task-test-task',
256
- title: 'Test Changelog',
257
- description: 'Testing default values application',
258
- triggeredBy: 'human:developer',
259
- reason: 'Testing defaults'
260
- };
261
- const result = await createChangelogRecord(payload);
262
- expect(result.changeType).toBe('completion'); // Default
263
- expect(result.trigger).toBe('manual'); // Default
264
- expect(result.riskLevel).toBe('low'); // Default
265
- expect(result.timestamp).toEqual(expect.any(Number)); // Generated timestamp
266
- });
267
- it('[EARS-34] should preserve all provided optional fields', async () => {
268
- const payload = {
269
- entityType: 'task',
270
- entityId: '1752274500-task-test-task',
271
- changeType: 'hotfix',
272
- title: 'Critical Hotfix',
273
- description: 'Emergency fix for production issue',
274
- timestamp: 1752707900,
275
- trigger: 'emergency',
276
- triggeredBy: 'human:on-call',
277
- reason: 'Production down',
278
- riskLevel: 'critical',
279
- affectedSystems: ['api-gateway', 'auth-service'],
280
- usersAffected: 1000,
281
- downtime: 300,
282
- files: ['src/auth.ts', 'src/gateway.ts'],
283
- commits: ['abc123', 'def456'],
284
- rollbackInstructions: 'Revert commits and restart services',
285
- references: {
286
- tasks: ['1752274500-task-test-task'],
287
- executions: ['1752707800-exec-hotfix']
288
- }
289
- };
290
- const result = await createChangelogRecord(payload);
291
- // All optional fields should be preserved exactly
292
- expect(result.affectedSystems).toEqual(['api-gateway', 'auth-service']);
293
- expect(result.usersAffected).toBe(1000);
294
- expect(result.downtime).toBe(300);
295
- expect(result.files).toEqual(['src/auth.ts', 'src/gateway.ts']);
296
- expect(result.commits).toEqual(['abc123', 'def456']);
297
- expect(result.rollbackInstructions).toBe('Revert commits and restart services');
298
- expect(result.references).toEqual({
299
- tasks: ['1752274500-task-test-task'],
300
- executions: ['1752707800-exec-hotfix']
301
- });
302
- });
303
- it('[EARS-35] should throw DetailedValidationError for high riskLevel without rollbackInstructions', async () => {
304
- const validationErrors = [
305
- { field: 'root', message: 'rollbackInstructions is required when riskLevel is high', value: { riskLevel: 'high' } }
306
- ];
307
- mockValidateChangelogRecordDetailed.mockReturnValue({
308
- isValid: false,
309
- errors: validationErrors
310
- });
311
- const payload = {
312
- entityType: 'task',
313
- entityId: '1752274500-task-test-task',
314
- changeType: 'update',
315
- title: 'High Risk Update',
316
- description: 'Major system update with high risk',
317
- triggeredBy: 'human:developer',
318
- reason: 'System upgrade',
319
- riskLevel: 'high'
320
- // rollbackInstructions missing
321
- };
322
- await expect(createChangelogRecord(payload)).rejects.toThrow(DetailedValidationError);
323
- });
324
- it('[EARS-36] should throw DetailedValidationError for critical riskLevel without rollbackInstructions', async () => {
325
- const validationErrors = [
326
- { field: 'root', message: 'rollbackInstructions is required when riskLevel is critical', value: { riskLevel: 'critical' } }
327
- ];
328
- mockValidateChangelogRecordDetailed.mockReturnValue({
329
- isValid: false,
330
- errors: validationErrors
331
- });
332
- const payload = {
333
- entityType: 'system',
334
- entityId: 'payment-gateway',
335
- changeType: 'hotfix',
336
- title: 'Critical System Fix',
337
- description: 'Emergency fix for critical system failure',
338
- triggeredBy: 'human:on-call',
339
- reason: 'System down',
340
- riskLevel: 'critical'
341
- // rollbackInstructions missing
342
- };
343
- await expect(createChangelogRecord(payload)).rejects.toThrow(DetailedValidationError);
344
- });
345
- it('[EARS-37] should throw DetailedValidationError for completion changeType without references.tasks', async () => {
346
- const validationErrors = [
347
- { field: 'root', message: 'references.tasks is required when changeType is completion', value: { changeType: 'completion' } }
348
- ];
349
- mockValidateChangelogRecordDetailed.mockReturnValue({
350
- isValid: false,
351
- errors: validationErrors
352
- });
353
- const payload = {
354
- entityType: 'task',
355
- entityId: '1752274500-task-test-task',
356
- changeType: 'completion',
357
- title: 'Task Completion',
358
- description: 'Task has been completed',
359
- triggeredBy: 'human:developer',
360
- reason: 'All work finished'
361
- // references.tasks missing for completion
362
- };
363
- await expect(createChangelogRecord(payload)).rejects.toThrow(DetailedValidationError);
364
- });
365
- });
366
- });
367
- });
368
- //# sourceMappingURL=changelog_factory.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"changelog_factory.test.js","sourceRoot":"","sources":["../../../src/factories/changelog_factory.test.ts"],"names":[],"mappings":"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"}
@@ -1,6 +0,0 @@
1
- import type { CycleRecord } from "../types";
2
- /**
3
- * Creates a new, fully-formed CycleRecord with validation.
4
- */
5
- export declare function createCycleRecord(payload: Partial<CycleRecord>): Promise<CycleRecord>;
6
- //# sourceMappingURL=cycle_factory.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"cycle_factory.d.ts","sourceRoot":"","sources":["../../../src/factories/cycle_factory.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAK5C;;GAEG;AACH,wBAAsB,iBAAiB,CACrC,OAAO,EAAE,OAAO,CAAC,WAAW,CAAC,GAC5B,OAAO,CAAC,WAAW,CAAC,CAuBtB"}
@@ -1,28 +0,0 @@
1
- import { validateCycleRecordDetailed } from "../validation/cycle_validator";
2
- import { DetailedValidationError } from "../validation/common";
3
- import { generateCycleId } from "../utils/id_generator";
4
- /**
5
- * Creates a new, fully-formed CycleRecord with validation.
6
- */
7
- export async function createCycleRecord(payload) {
8
- // Generate timestamp for ID if not provided
9
- const timestamp = Math.floor(Date.now() / 1000);
10
- // Build cycle with defaults for optional fields
11
- const cycle = {
12
- id: payload.id || generateCycleId(payload.title || '', timestamp),
13
- title: payload.title || '',
14
- status: payload.status || 'planning',
15
- taskIds: payload.taskIds || [], // EARS-21: Default empty array
16
- childCycleIds: payload.childCycleIds,
17
- tags: payload.tags,
18
- notes: payload.notes,
19
- ...payload,
20
- };
21
- // Use validator to check complete schema with detailed errors
22
- const validation = validateCycleRecordDetailed(cycle);
23
- if (!validation.isValid) {
24
- throw new DetailedValidationError('CycleRecord', validation.errors);
25
- }
26
- return cycle;
27
- }
28
- //# sourceMappingURL=cycle_factory.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"cycle_factory.js","sourceRoot":"","sources":["../../../src/factories/cycle_factory.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAC;AAC5E,OAAO,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAC;AAC/D,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAExD;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,OAA6B;IAE7B,4CAA4C;IAC5C,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC;IAEhD,gDAAgD;IAChD,MAAM,KAAK,GAAgB;QACzB,EAAE,EAAE,OAAO,CAAC,EAAE,IAAI,eAAe,CAAC,OAAO,CAAC,KAAK,IAAI,EAAE,EAAE,SAAS,CAAC;QACjE,KAAK,EAAE,OAAO,CAAC,KAAK,IAAI,EAAE;QAC1B,MAAM,EAAE,OAAO,CAAC,MAAM,IAAI,UAAU;QACpC,OAAO,EAAE,OAAO,CAAC,OAAO,IAAI,EAAE,EAAE,+BAA+B;QAC/D,aAAa,EAAE,OAAO,CAAC,aAAa;QACpC,IAAI,EAAE,OAAO,CAAC,IAAI;QAClB,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,GAAG,OAAO;KACI,CAAC;IAEjB,8DAA8D;IAC9D,MAAM,UAAU,GAAG,2BAA2B,CAAC,KAAK,CAAC,CAAC;IACtD,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC;QACxB,MAAM,IAAI,uBAAuB,CAAC,aAAa,EAAE,UAAU,CAAC,MAAM,CAAC,CAAC;IACtE,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=cycle_factory.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"cycle_factory.test.d.ts","sourceRoot":"","sources":["../../../src/factories/cycle_factory.test.ts"],"names":[],"mappings":""}
@@ -1,175 +0,0 @@
1
- import { createCycleRecord } from './cycle_factory';
2
- import { DetailedValidationError } from '../validation/common';
3
- // Manual mock for validateCycleRecordDetailed
4
- jest.mock('../validation/cycle_validator', () => ({
5
- validateCycleRecordDetailed: jest.fn()
6
- .mockReturnValue({ isValid: true, errors: [] }),
7
- }));
8
- describe('createCycleRecord', () => {
9
- beforeEach(() => {
10
- // Reset mock to default success state before each test
11
- const { validateCycleRecordDetailed } = require('../validation/cycle_validator');
12
- validateCycleRecordDetailed.mockReturnValue({ isValid: true, errors: [] });
13
- });
14
- it('[EARS-2 & EARS-3] should create a valid cycle record with defaults and a generated ID', async () => {
15
- const payload = {
16
- title: 'Sprint Q4 API Performance',
17
- taskIds: ['1752274500-task-optimizar-endpoint', '1752360900-task-cache-redis'],
18
- tags: ['roadmap:q4', 'team:backend'],
19
- };
20
- const cycle = await createCycleRecord(payload);
21
- expect(cycle.id).toMatch(/^\d{10}-cycle-sprint-q4-api-performance$/); // ID is generated
22
- expect(cycle.status).toBe('planning'); // Default status
23
- expect(cycle.title).toBe('Sprint Q4 API Performance');
24
- expect(cycle.taskIds).toEqual(['1752274500-task-optimizar-endpoint', '1752360900-task-cache-redis']);
25
- expect(cycle.tags).toEqual(['roadmap:q4', 'team:backend']);
26
- });
27
- it('[EARS-1] should throw DetailedValidationError for missing/invalid fields', async () => {
28
- const { validateCycleRecordDetailed } = require('../validation/cycle_validator');
29
- validateCycleRecordDetailed.mockReturnValue({
30
- isValid: false,
31
- errors: [
32
- { field: 'title', message: 'must be a non-empty string', value: '' },
33
- { field: 'status', message: 'must be one of: planning, active, completed, archived', value: 'invalid' }
34
- ]
35
- });
36
- const payload = {
37
- title: '',
38
- status: 'invalid',
39
- };
40
- await expect(createCycleRecord(payload)).rejects.toThrow(DetailedValidationError);
41
- });
42
- it('[EARS-4] should use a provided ID instead of generating one', async () => {
43
- const payload = {
44
- id: '1754400000-cycle-custom-cycle-id',
45
- title: 'Custom Cycle',
46
- status: 'active',
47
- tags: ['custom'],
48
- };
49
- const cycle = await createCycleRecord(payload);
50
- expect(cycle.id).toBe('1754400000-cycle-custom-cycle-id');
51
- });
52
- it('[EARS-5] should throw DetailedValidationError if the created record fails validation', async () => {
53
- const { validateCycleRecordDetailed } = require('../validation/cycle_validator');
54
- validateCycleRecordDetailed.mockReturnValue({
55
- isValid: false,
56
- errors: [
57
- { field: 'taskIds', message: 'items must match pattern', value: ['invalid-task-id'] }
58
- ]
59
- });
60
- const payload = {
61
- title: 'Valid Title',
62
- status: 'active',
63
- taskIds: ['invalid-task-id'],
64
- };
65
- await expect(createCycleRecord(payload)).rejects.toThrow(DetailedValidationError);
66
- });
67
- it('[EARS-6] should set default values for optional fields', async () => {
68
- const payload = {
69
- title: 'Minimal Cycle',
70
- };
71
- const cycle = await createCycleRecord(payload);
72
- expect(cycle.status).toBe('planning');
73
- expect(cycle.taskIds).toEqual([]); // EARS-21: Default empty array
74
- expect(cycle.childCycleIds).toBeUndefined();
75
- expect(cycle.tags).toBeUndefined();
76
- expect(cycle.notes).toBeUndefined();
77
- });
78
- it('[EARS-7] should preserve provided optional fields', async () => {
79
- const payload = {
80
- title: 'Complex Cycle',
81
- status: 'active',
82
- taskIds: ['1752274500-task-task1', '1752360900-task-task2'],
83
- childCycleIds: ['1754500000-cycle-child1'],
84
- tags: ['roadmap:q4', 'team:backend'],
85
- notes: 'This cycle requires careful coordination between teams'
86
- };
87
- const cycle = await createCycleRecord(payload);
88
- expect(cycle.status).toBe('active');
89
- expect(cycle.taskIds).toEqual(['1752274500-task-task1', '1752360900-task-task2']);
90
- expect(cycle.childCycleIds).toEqual(['1754500000-cycle-child1']);
91
- expect(cycle.tags).toEqual(['roadmap:q4', 'team:backend']);
92
- expect(cycle.notes).toBe('This cycle requires careful coordination between teams');
93
- });
94
- it('[EARS-8] should generate ID with current timestamp when title is provided', async () => {
95
- const beforeTimestamp = Math.floor(Date.now() / 1000);
96
- const payload = {
97
- title: 'Test Cycle for ID Generation',
98
- };
99
- const cycle = await createCycleRecord(payload);
100
- const afterTimestamp = Math.floor(Date.now() / 1000);
101
- // Extract timestamp from generated ID
102
- const idParts = cycle.id.split('-');
103
- const extractedTimestamp = parseInt(idParts[0] || '0');
104
- expect(extractedTimestamp).toBeGreaterThanOrEqual(beforeTimestamp);
105
- expect(extractedTimestamp).toBeLessThanOrEqual(afterTimestamp);
106
- expect(cycle.id).toMatch(/^\d{10}-cycle-test-cycle-for-id-generation$/);
107
- });
108
- describe('CycleRecord Specific Factory Operations (EARS 19-21)', () => {
109
- it('[EARS-19] should throw DetailedValidationError for invalid status', async () => {
110
- const { validateCycleRecordDetailed } = require('../validation/cycle_validator');
111
- validateCycleRecordDetailed.mockReturnValue({
112
- isValid: false,
113
- errors: [
114
- { field: 'status', message: 'must be one of planning, active, completed, archived', value: 'invalid-status' }
115
- ]
116
- });
117
- const payload = {
118
- title: 'Test Cycle',
119
- status: 'invalid-status'
120
- };
121
- await expect(createCycleRecord(payload)).rejects.toThrow(DetailedValidationError);
122
- // Restore mock
123
- validateCycleRecordDetailed.mockReturnValue({ isValid: true, errors: [] });
124
- });
125
- it('[EARS-20] should throw DetailedValidationError for invalid taskIds pattern', async () => {
126
- const { validateCycleRecordDetailed } = require('../validation/cycle_validator');
127
- validateCycleRecordDetailed.mockReturnValue({
128
- isValid: false,
129
- errors: [
130
- { field: 'taskIds', message: 'items must match task ID pattern', value: ['invalid-task-id', '1752274500-task-valid'] }
131
- ]
132
- });
133
- const payload = {
134
- title: 'Test Cycle',
135
- taskIds: ['invalid-task-id', '1752274500-task-valid']
136
- };
137
- await expect(createCycleRecord(payload)).rejects.toThrow(DetailedValidationError);
138
- // Restore mock
139
- validateCycleRecordDetailed.mockReturnValue({ isValid: true, errors: [] });
140
- });
141
- it('[EARS-21] should apply default empty array for taskIds when not provided', async () => {
142
- const payload = {
143
- title: 'Cycle Without Tasks'
144
- // taskIds not provided - should default to []
145
- };
146
- const cycle = await createCycleRecord(payload);
147
- expect(cycle.taskIds).toEqual([]); // Default empty array
148
- });
149
- it('[EARS-19] should accept valid status values', async () => {
150
- const validStatuses = ['planning', 'active', 'completed', 'archived'];
151
- for (const status of validStatuses) {
152
- const payload = {
153
- title: `Test Cycle ${status}`,
154
- status: status
155
- };
156
- const cycle = await createCycleRecord(payload);
157
- expect(cycle.status).toBe(status);
158
- }
159
- });
160
- it('[EARS-20] should accept valid taskIds with correct pattern', async () => {
161
- const validTaskIds = [
162
- '1752274500-task-implement-feature',
163
- '1752360900-task-write-tests',
164
- '1752400000-task-deploy-service'
165
- ];
166
- const payload = {
167
- title: 'Cycle With Valid Tasks',
168
- taskIds: validTaskIds
169
- };
170
- const cycle = await createCycleRecord(payload);
171
- expect(cycle.taskIds).toEqual(validTaskIds);
172
- });
173
- });
174
- });
175
- //# sourceMappingURL=cycle_factory.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"cycle_factory.test.js","sourceRoot":"","sources":["../../../src/factories/cycle_factory.test.ts"],"names":[],"mappings":"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"}
@@ -1,9 +0,0 @@
1
- import type { ExecutionRecord } from '../types';
2
- /**
3
- * Creates a complete ExecutionRecord with validation
4
- *
5
- * @param payload - Partial ExecutionRecord payload
6
- * @returns Promise<ExecutionRecord> - The validated ExecutionRecord
7
- */
8
- export declare function createExecutionRecord(payload: Partial<ExecutionRecord>): Promise<ExecutionRecord>;
9
- //# sourceMappingURL=execution_factory.d.ts.map