roadmap-cli 0.1.1__tar.gz → 0.2.0__tar.gz

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 (616) hide show
  1. {roadmap_cli-0.1.1 → roadmap_cli-0.2.0}/.gitignore +1 -0
  2. roadmap_cli-0.2.0/CHANGELOG.md +86 -0
  3. roadmap_cli-0.2.0/PKG-INFO +235 -0
  4. roadmap_cli-0.2.0/README.md +186 -0
  5. roadmap_cli-0.2.0/pyproject.toml +147 -0
  6. roadmap_cli-0.2.0/roadmap/__init__.py +13 -0
  7. roadmap_cli-0.2.0/roadmap/adapters/__init__.py +1 -0
  8. roadmap_cli-0.2.0/roadmap/adapters/inbound/__init__.py +1 -0
  9. roadmap_cli-0.2.0/roadmap/adapters/inbound/cli/__init__.py +159 -0
  10. roadmap_cli-0.2.0/roadmap/adapters/inbound/cli/analysis/commands.py +126 -0
  11. roadmap_cli-0.2.0/roadmap/adapters/inbound/cli/analysis/presenter.py +30 -0
  12. roadmap_cli-0.2.0/roadmap/adapters/inbound/cli/cleanup.py +107 -0
  13. {roadmap_cli-0.1.1/roadmap/adapters → roadmap_cli-0.2.0/roadmap/adapters/inbound}/cli/cli_command_helpers.py +0 -3
  14. {roadmap_cli-0.1.1/roadmap/common/formatters/tables → roadmap_cli-0.2.0/roadmap/adapters/inbound/cli}/column_factory.py +3 -3
  15. roadmap_cli-0.2.0/roadmap/adapters/inbound/cli/config/__init__.py +5 -0
  16. roadmap_cli-0.2.0/roadmap/adapters/inbound/cli/config/commands.py +86 -0
  17. roadmap_cli-0.2.0/roadmap/adapters/inbound/cli/daily_summary.py +41 -0
  18. roadmap_cli-0.2.0/roadmap/adapters/inbound/cli/data/commands.py +215 -0
  19. roadmap_cli-0.2.0/roadmap/adapters/inbound/cli/datetime_parser.py +72 -0
  20. {roadmap_cli-0.1.1/roadmap/adapters → roadmap_cli-0.2.0/roadmap/adapters/inbound}/cli/decorators.py +4 -4
  21. {roadmap_cli-0.1.1/roadmap/adapters → roadmap_cli-0.2.0/roadmap/adapters/inbound}/cli/exception_handler.py +7 -18
  22. roadmap_cli-0.2.0/roadmap/adapters/inbound/cli/git/commands.py +77 -0
  23. roadmap_cli-0.2.0/roadmap/adapters/inbound/cli/health/__init__.py +10 -0
  24. roadmap_cli-0.2.0/roadmap/adapters/inbound/cli/health/commands.py +346 -0
  25. roadmap_cli-0.2.0/roadmap/adapters/inbound/cli/init/commands.py +74 -0
  26. roadmap_cli-0.2.0/roadmap/adapters/inbound/cli/issues/__init__.py +59 -0
  27. roadmap_cli-0.2.0/roadmap/adapters/inbound/cli/issues/archive.py +66 -0
  28. roadmap_cli-0.2.0/roadmap/adapters/inbound/cli/issues/block.py +27 -0
  29. roadmap_cli-0.2.0/roadmap/adapters/inbound/cli/issues/close.py +52 -0
  30. roadmap_cli-0.2.0/roadmap/adapters/inbound/cli/issues/comment.py +94 -0
  31. roadmap_cli-0.2.0/roadmap/adapters/inbound/cli/issues/create.py +92 -0
  32. roadmap_cli-0.2.0/roadmap/adapters/inbound/cli/issues/delete.py +24 -0
  33. roadmap_cli-0.2.0/roadmap/adapters/inbound/cli/issues/deps.py +70 -0
  34. roadmap_cli-0.2.0/roadmap/adapters/inbound/cli/issues/list.py +194 -0
  35. roadmap_cli-0.2.0/roadmap/adapters/inbound/cli/issues/progress.py +24 -0
  36. roadmap_cli-0.2.0/roadmap/adapters/inbound/cli/issues/query_presenter.py +104 -0
  37. roadmap_cli-0.2.0/roadmap/adapters/inbound/cli/issues/resolution.py +63 -0
  38. roadmap_cli-0.2.0/roadmap/adapters/inbound/cli/issues/restore.py +55 -0
  39. roadmap_cli-0.2.0/roadmap/adapters/inbound/cli/issues/start.py +59 -0
  40. roadmap_cli-0.2.0/roadmap/adapters/inbound/cli/issues/unblock.py +32 -0
  41. roadmap_cli-0.2.0/roadmap/adapters/inbound/cli/issues/update.py +78 -0
  42. roadmap_cli-0.2.0/roadmap/adapters/inbound/cli/issues/view.py +24 -0
  43. {roadmap_cli-0.1.1/roadmap/adapters → roadmap_cli-0.2.0/roadmap/adapters/inbound}/cli/layout.py +2 -10
  44. roadmap_cli-0.2.0/roadmap/adapters/inbound/cli/migrate.py +85 -0
  45. {roadmap_cli-0.1.1/roadmap/adapters → roadmap_cli-0.2.0/roadmap/adapters/inbound}/cli/milestones/__init__.py +11 -11
  46. roadmap_cli-0.2.0/roadmap/adapters/inbound/cli/milestones/archive.py +55 -0
  47. roadmap_cli-0.2.0/roadmap/adapters/inbound/cli/milestones/assign.py +29 -0
  48. roadmap_cli-0.2.0/roadmap/adapters/inbound/cli/milestones/close.py +25 -0
  49. roadmap_cli-0.2.0/roadmap/adapters/inbound/cli/milestones/create.py +72 -0
  50. roadmap_cli-0.2.0/roadmap/adapters/inbound/cli/milestones/delete.py +29 -0
  51. roadmap_cli-0.2.0/roadmap/adapters/inbound/cli/milestones/kanban.py +36 -0
  52. roadmap_cli-0.2.0/roadmap/adapters/inbound/cli/milestones/list.py +65 -0
  53. roadmap_cli-0.2.0/roadmap/adapters/inbound/cli/milestones/recalculate.py +33 -0
  54. roadmap_cli-0.2.0/roadmap/adapters/inbound/cli/milestones/restore.py +40 -0
  55. roadmap_cli-0.2.0/roadmap/adapters/inbound/cli/milestones/update.py +51 -0
  56. roadmap_cli-0.2.0/roadmap/adapters/inbound/cli/milestones/view.py +61 -0
  57. roadmap_cli-0.2.0/roadmap/adapters/inbound/cli/models/__init__.py +13 -0
  58. {roadmap_cli-0.1.1/roadmap/common → roadmap_cli-0.2.0/roadmap/adapters/inbound/cli}/output_formatter.py +1 -1
  59. roadmap_cli-0.1.1/roadmap/common/utils/cli_helpers.py → roadmap_cli-0.2.0/roadmap/adapters/inbound/cli/output_options.py +2 -2
  60. roadmap_cli-0.2.0/roadmap/adapters/inbound/cli/planning_resolution.py +46 -0
  61. {roadmap_cli-0.1.1/roadmap/adapters → roadmap_cli-0.2.0/roadmap/adapters/inbound}/cli/projects/__init__.py +8 -8
  62. roadmap_cli-0.2.0/roadmap/adapters/inbound/cli/projects/archive.py +55 -0
  63. roadmap_cli-0.2.0/roadmap/adapters/inbound/cli/projects/close.py +29 -0
  64. roadmap_cli-0.2.0/roadmap/adapters/inbound/cli/projects/create.py +28 -0
  65. roadmap_cli-0.2.0/roadmap/adapters/inbound/cli/projects/delete.py +26 -0
  66. roadmap_cli-0.2.0/roadmap/adapters/inbound/cli/projects/list.py +69 -0
  67. roadmap_cli-0.2.0/roadmap/adapters/inbound/cli/projects/restore.py +40 -0
  68. roadmap_cli-0.2.0/roadmap/adapters/inbound/cli/projects/update.py +51 -0
  69. roadmap_cli-0.2.0/roadmap/adapters/inbound/cli/projects/view.py +29 -0
  70. roadmap_cli-0.2.0/roadmap/adapters/inbound/cli/status.py +215 -0
  71. roadmap_cli-0.2.0/roadmap/adapters/inbound/cli/today.py +23 -0
  72. roadmap_cli-0.2.0/roadmap/adapters/outbound/__init__.py +1 -0
  73. roadmap_cli-0.2.0/roadmap/adapters/outbound/git/__init__.py +5 -0
  74. roadmap_cli-0.2.0/roadmap/adapters/outbound/git/local.py +126 -0
  75. roadmap_cli-0.2.0/roadmap/adapters/outbound/persistence/__init__.py +11 -0
  76. roadmap_cli-0.2.0/roadmap/adapters/outbound/persistence/canonical.py +517 -0
  77. roadmap_cli-0.2.0/roadmap/adapters/outbound/persistence/configuration.py +266 -0
  78. roadmap_cli-0.2.0/roadmap/adapters/outbound/persistence/diagnostics.py +301 -0
  79. roadmap_cli-0.2.0/roadmap/adapters/outbound/persistence/documents.py +450 -0
  80. roadmap_cli-0.2.0/roadmap/adapters/outbound/persistence/initialization.py +41 -0
  81. roadmap_cli-0.2.0/roadmap/adapters/outbound/persistence/issue_queries.py +87 -0
  82. roadmap_cli-0.2.0/roadmap/adapters/outbound/persistence/migration.py +452 -0
  83. roadmap_cli-0.2.0/roadmap/adapters/outbound/persistence/projection.py +248 -0
  84. roadmap_cli-0.2.0/roadmap/adapters/outbound/system.py +28 -0
  85. roadmap_cli-0.2.0/roadmap/application/__init__.py +1 -0
  86. roadmap_cli-0.2.0/roadmap/application/configuration.py +34 -0
  87. roadmap_cli-0.2.0/roadmap/application/contracts.py +374 -0
  88. roadmap_cli-0.2.0/roadmap/application/failures.py +21 -0
  89. roadmap_cli-0.2.0/roadmap/application/ports.py +130 -0
  90. roadmap_cli-0.2.0/roadmap/application/use_cases/__init__.py +19 -0
  91. roadmap_cli-0.2.0/roadmap/application/use_cases/health.py +29 -0
  92. roadmap_cli-0.2.0/roadmap/application/use_cases/issue_mutations.py +630 -0
  93. roadmap_cli-0.2.0/roadmap/application/use_cases/issues.py +199 -0
  94. roadmap_cli-0.2.0/roadmap/application/use_cases/local_git.py +107 -0
  95. roadmap_cli-0.2.0/roadmap/application/use_cases/planning.py +853 -0
  96. roadmap_cli-0.2.0/roadmap/application/use_cases/workspace_initialization.py +37 -0
  97. roadmap_cli-0.2.0/roadmap/application/use_cases/workspace_migration.py +29 -0
  98. roadmap_cli-0.2.0/roadmap/bootstrap/__init__.py +105 -0
  99. roadmap_cli-0.2.0/roadmap/bootstrap/core.py +87 -0
  100. roadmap_cli-0.2.0/roadmap/domain/__init__.py +1 -0
  101. roadmap_cli-0.2.0/roadmap/domain/aggregates.py +263 -0
  102. roadmap_cli-0.2.0/roadmap/domain/failures.py +17 -0
  103. roadmap_cli-0.2.0/roadmap/domain/transitions.py +57 -0
  104. roadmap_cli-0.2.0/roadmap/domain/types.py +152 -0
  105. roadmap_cli-0.1.1/CHANGELOG.md +0 -189
  106. roadmap_cli-0.1.1/PKG-INFO +0 -448
  107. roadmap_cli-0.1.1/README.md +0 -378
  108. roadmap_cli-0.1.1/pyproject.toml +0 -216
  109. roadmap_cli-0.1.1/roadmap/__init__.py +0 -27
  110. roadmap_cli-0.1.1/roadmap/adapters/__init__.py +0 -1
  111. roadmap_cli-0.1.1/roadmap/adapters/base_paginated_adapter.py +0 -117
  112. roadmap_cli-0.1.1/roadmap/adapters/cli/__init__.py +0 -249
  113. roadmap_cli-0.1.1/roadmap/adapters/cli/analysis/commands.py +0 -370
  114. roadmap_cli-0.1.1/roadmap/adapters/cli/analysis/presenter.py +0 -125
  115. roadmap_cli-0.1.1/roadmap/adapters/cli/archive_operations.py +0 -86
  116. roadmap_cli-0.1.1/roadmap/adapters/cli/cli_confirmations.py +0 -74
  117. roadmap_cli-0.1.1/roadmap/adapters/cli/cli_error_handlers.py +0 -146
  118. roadmap_cli-0.1.1/roadmap/adapters/cli/cli_validators.py +0 -39
  119. roadmap_cli-0.1.1/roadmap/adapters/cli/commands/sync_status.py +0 -308
  120. roadmap_cli-0.1.1/roadmap/adapters/cli/comment/__init__.py +0 -5
  121. roadmap_cli-0.1.1/roadmap/adapters/cli/comment/commands.py +0 -106
  122. roadmap_cli-0.1.1/roadmap/adapters/cli/config/__init__.py +0 -5
  123. roadmap_cli-0.1.1/roadmap/adapters/cli/config/commands.py +0 -198
  124. roadmap_cli-0.1.1/roadmap/adapters/cli/console_exports.py +0 -10
  125. roadmap_cli-0.1.1/roadmap/adapters/cli/core.py +0 -26
  126. roadmap_cli-0.1.1/roadmap/adapters/cli/crud/__init__.py +0 -47
  127. roadmap_cli-0.1.1/roadmap/adapters/cli/crud/base_archive.py +0 -208
  128. roadmap_cli-0.1.1/roadmap/adapters/cli/crud/base_create.py +0 -154
  129. roadmap_cli-0.1.1/roadmap/adapters/cli/crud/base_delete.py +0 -155
  130. roadmap_cli-0.1.1/roadmap/adapters/cli/crud/base_restore.py +0 -283
  131. roadmap_cli-0.1.1/roadmap/adapters/cli/crud/base_update.py +0 -193
  132. roadmap_cli-0.1.1/roadmap/adapters/cli/crud/crud_helpers.py +0 -206
  133. roadmap_cli-0.1.1/roadmap/adapters/cli/crud/crud_utils.py +0 -152
  134. roadmap_cli-0.1.1/roadmap/adapters/cli/crud/entity_builders.py +0 -374
  135. roadmap_cli-0.1.1/roadmap/adapters/cli/data/commands.py +0 -149
  136. roadmap_cli-0.1.1/roadmap/adapters/cli/dtos/__init__.py +0 -155
  137. roadmap_cli-0.1.1/roadmap/adapters/cli/git/commands.py +0 -475
  138. roadmap_cli-0.1.1/roadmap/adapters/cli/git/handlers/__init__.py +0 -1
  139. roadmap_cli-0.1.1/roadmap/adapters/cli/git/handlers/git_authentication_handler.py +0 -124
  140. roadmap_cli-0.1.1/roadmap/adapters/cli/git/handlers/git_branch_handler.py +0 -238
  141. roadmap_cli-0.1.1/roadmap/adapters/cli/git/handlers/git_connectivity_handler.py +0 -122
  142. roadmap_cli-0.1.1/roadmap/adapters/cli/git/handlers/git_hooks_handler.py +0 -105
  143. roadmap_cli-0.1.1/roadmap/adapters/cli/git/hooks_config.py +0 -327
  144. roadmap_cli-0.1.1/roadmap/adapters/cli/git/status_display.py +0 -158
  145. roadmap_cli-0.1.1/roadmap/adapters/cli/health/__init__.py +0 -8
  146. roadmap_cli-0.1.1/roadmap/adapters/cli/health/db_integrity.py +0 -204
  147. roadmap_cli-0.1.1/roadmap/adapters/cli/health/enhancer.py +0 -227
  148. roadmap_cli-0.1.1/roadmap/adapters/cli/health/fixer.py +0 -295
  149. roadmap_cli-0.1.1/roadmap/adapters/cli/health/fixers/__init__.py +0 -10
  150. roadmap_cli-0.1.1/roadmap/adapters/cli/health/fixers/corrupted_comments_fixer.py +0 -231
  151. roadmap_cli-0.1.1/roadmap/adapters/cli/health/fixers/data_integrity_fixer.py +0 -137
  152. roadmap_cli-0.1.1/roadmap/adapters/cli/health/fixers/duplicate_issues_fixer.py +0 -138
  153. roadmap_cli-0.1.1/roadmap/adapters/cli/health/fixers/folder_structure_fixer.py +0 -114
  154. roadmap_cli-0.1.1/roadmap/adapters/cli/health/fixers/label_normalization_fixer.py +0 -162
  155. roadmap_cli-0.1.1/roadmap/adapters/cli/health/fixers/milestone_name_normalization_fixer.py +0 -181
  156. roadmap_cli-0.1.1/roadmap/adapters/cli/health/fixers/milestone_naming_compliance_fixer.py +0 -244
  157. roadmap_cli-0.1.1/roadmap/adapters/cli/health/fixers/milestone_parse_error_fixer.py +0 -162
  158. roadmap_cli-0.1.1/roadmap/adapters/cli/health/fixers/milestone_validation_fixer.py +0 -211
  159. roadmap_cli-0.1.1/roadmap/adapters/cli/health/fixers/old_backups_fixer.py +0 -135
  160. roadmap_cli-0.1.1/roadmap/adapters/cli/health/fixers/orphaned_issues_fixer.py +0 -252
  161. roadmap_cli-0.1.1/roadmap/adapters/cli/health/formatter.py +0 -250
  162. roadmap_cli-0.1.1/roadmap/adapters/cli/health/formatters.py +0 -427
  163. roadmap_cli-0.1.1/roadmap/adapters/cli/health/scan.py +0 -293
  164. roadmap_cli-0.1.1/roadmap/adapters/cli/init/commands.py +0 -587
  165. roadmap_cli-0.1.1/roadmap/adapters/cli/init.py +0 -9
  166. roadmap_cli-0.1.1/roadmap/adapters/cli/issues/__init__.py +0 -70
  167. roadmap_cli-0.1.1/roadmap/adapters/cli/issues/archive.py +0 -137
  168. roadmap_cli-0.1.1/roadmap/adapters/cli/issues/archive_class.py +0 -253
  169. roadmap_cli-0.1.1/roadmap/adapters/cli/issues/block.py +0 -39
  170. roadmap_cli-0.1.1/roadmap/adapters/cli/issues/close.py +0 -216
  171. roadmap_cli-0.1.1/roadmap/adapters/cli/issues/comment.py +0 -178
  172. roadmap_cli-0.1.1/roadmap/adapters/cli/issues/create.py +0 -162
  173. roadmap_cli-0.1.1/roadmap/adapters/cli/issues/delete.py +0 -31
  174. roadmap_cli-0.1.1/roadmap/adapters/cli/issues/deps.py +0 -161
  175. roadmap_cli-0.1.1/roadmap/adapters/cli/issues/issue_status_helpers.py +0 -111
  176. roadmap_cli-0.1.1/roadmap/adapters/cli/issues/link.py +0 -308
  177. roadmap_cli-0.1.1/roadmap/adapters/cli/issues/list.py +0 -402
  178. roadmap_cli-0.1.1/roadmap/adapters/cli/issues/lookup.py +0 -96
  179. roadmap_cli-0.1.1/roadmap/adapters/cli/issues/progress.py +0 -102
  180. roadmap_cli-0.1.1/roadmap/adapters/cli/issues/restore.py +0 -96
  181. roadmap_cli-0.1.1/roadmap/adapters/cli/issues/restore_class.py +0 -57
  182. roadmap_cli-0.1.1/roadmap/adapters/cli/issues/start.py +0 -165
  183. roadmap_cli-0.1.1/roadmap/adapters/cli/issues/sync_status.py +0 -374
  184. roadmap_cli-0.1.1/roadmap/adapters/cli/issues/unblock.py +0 -43
  185. roadmap_cli-0.1.1/roadmap/adapters/cli/issues/unlink.py +0 -104
  186. roadmap_cli-0.1.1/roadmap/adapters/cli/issues/update.py +0 -120
  187. roadmap_cli-0.1.1/roadmap/adapters/cli/issues/view.py +0 -36
  188. roadmap_cli-0.1.1/roadmap/adapters/cli/mappers.py +0 -200
  189. roadmap_cli-0.1.1/roadmap/adapters/cli/milestones/archive.py +0 -125
  190. roadmap_cli-0.1.1/roadmap/adapters/cli/milestones/archive_class.py +0 -236
  191. roadmap_cli-0.1.1/roadmap/adapters/cli/milestones/assign.py +0 -62
  192. roadmap_cli-0.1.1/roadmap/adapters/cli/milestones/close.py +0 -177
  193. roadmap_cli-0.1.1/roadmap/adapters/cli/milestones/create.py +0 -131
  194. roadmap_cli-0.1.1/roadmap/adapters/cli/milestones/delete.py +0 -27
  195. roadmap_cli-0.1.1/roadmap/adapters/cli/milestones/kanban.py +0 -123
  196. roadmap_cli-0.1.1/roadmap/adapters/cli/milestones/list.py +0 -87
  197. roadmap_cli-0.1.1/roadmap/adapters/cli/milestones/recalculate.py +0 -79
  198. roadmap_cli-0.1.1/roadmap/adapters/cli/milestones/restore.py +0 -87
  199. roadmap_cli-0.1.1/roadmap/adapters/cli/milestones/restore_class.py +0 -99
  200. roadmap_cli-0.1.1/roadmap/adapters/cli/milestones/update.py +0 -61
  201. roadmap_cli-0.1.1/roadmap/adapters/cli/milestones/view.py +0 -142
  202. roadmap_cli-0.1.1/roadmap/adapters/cli/output_manager.py +0 -319
  203. roadmap_cli-0.1.1/roadmap/adapters/cli/presentation/base_presenter.py +0 -121
  204. roadmap_cli-0.1.1/roadmap/adapters/cli/presentation/cleanup_presenter.py +0 -235
  205. roadmap_cli-0.1.1/roadmap/adapters/cli/presentation/core_initialization_presenter.py +0 -277
  206. roadmap_cli-0.1.1/roadmap/adapters/cli/presentation/crud_presenter.py +0 -134
  207. roadmap_cli-0.1.1/roadmap/adapters/cli/presentation/daily_summary_presenter.py +0 -266
  208. roadmap_cli-0.1.1/roadmap/adapters/cli/presentation/issue_presenter.py +0 -258
  209. roadmap_cli-0.1.1/roadmap/adapters/cli/presentation/milestone_list_presenter.py +0 -135
  210. roadmap_cli-0.1.1/roadmap/adapters/cli/presentation/milestone_presenter.py +0 -297
  211. roadmap_cli-0.1.1/roadmap/adapters/cli/presentation/project_presenter.py +0 -233
  212. roadmap_cli-0.1.1/roadmap/adapters/cli/presentation/project_status_presenter.py +0 -186
  213. roadmap_cli-0.1.1/roadmap/adapters/cli/presentation/table_builders.py +0 -95
  214. roadmap_cli-0.1.1/roadmap/adapters/cli/projects/archive.py +0 -127
  215. roadmap_cli-0.1.1/roadmap/adapters/cli/projects/archive_class.py +0 -96
  216. roadmap_cli-0.1.1/roadmap/adapters/cli/projects/close.py +0 -94
  217. roadmap_cli-0.1.1/roadmap/adapters/cli/projects/create.py +0 -50
  218. roadmap_cli-0.1.1/roadmap/adapters/cli/projects/delete.py +0 -27
  219. roadmap_cli-0.1.1/roadmap/adapters/cli/projects/list.py +0 -227
  220. roadmap_cli-0.1.1/roadmap/adapters/cli/projects/restore.py +0 -87
  221. roadmap_cli-0.1.1/roadmap/adapters/cli/projects/restore_class.py +0 -56
  222. roadmap_cli-0.1.1/roadmap/adapters/cli/projects/update.py +0 -57
  223. roadmap_cli-0.1.1/roadmap/adapters/cli/projects/view.py +0 -157
  224. roadmap_cli-0.1.1/roadmap/adapters/cli/services/__init__.py +0 -1
  225. roadmap_cli-0.1.1/roadmap/adapters/cli/services/daily_summary_service.py +0 -313
  226. roadmap_cli-0.1.1/roadmap/adapters/cli/services/export_manager.py +0 -268
  227. roadmap_cli-0.1.1/roadmap/adapters/cli/services/milestone_list_service.py +0 -266
  228. roadmap_cli-0.1.1/roadmap/adapters/cli/services/project_initialization_service.py +0 -29
  229. roadmap_cli-0.1.1/roadmap/adapters/cli/services/project_status_service.py +0 -462
  230. roadmap_cli-0.1.1/roadmap/adapters/cli/services/sync_service.py +0 -62
  231. roadmap_cli-0.1.1/roadmap/adapters/cli/status.py +0 -408
  232. roadmap_cli-0.1.1/roadmap/adapters/cli/sync.py +0 -1117
  233. roadmap_cli-0.1.1/roadmap/adapters/cli/sync_context.py +0 -432
  234. roadmap_cli-0.1.1/roadmap/adapters/cli/sync_handlers/__init__.py +0 -77
  235. roadmap_cli-0.1.1/roadmap/adapters/cli/sync_handlers/apply_ops.py +0 -522
  236. roadmap_cli-0.1.1/roadmap/adapters/cli/sync_handlers/baseline_ops.py +0 -366
  237. roadmap_cli-0.1.1/roadmap/adapters/cli/sync_handlers/conflict_ops.py +0 -161
  238. roadmap_cli-0.1.1/roadmap/adapters/cli/sync_handlers/dry_run_display.py +0 -237
  239. roadmap_cli-0.1.1/roadmap/adapters/cli/sync_handlers/interactive_resolver.py +0 -396
  240. roadmap_cli-0.1.1/roadmap/adapters/cli/sync_handlers/progress_tracker.py +0 -128
  241. roadmap_cli-0.1.1/roadmap/adapters/cli/sync_metrics_command.py +0 -190
  242. roadmap_cli-0.1.1/roadmap/adapters/cli/sync_presenter.py +0 -58
  243. roadmap_cli-0.1.1/roadmap/adapters/cli/sync_validation.py +0 -295
  244. roadmap_cli-0.1.1/roadmap/adapters/cli/today.py +0 -52
  245. roadmap_cli-0.1.1/roadmap/adapters/cli/utils/click_options.py +0 -38
  246. roadmap_cli-0.1.1/roadmap/adapters/git/__init__.py +0 -1
  247. roadmap_cli-0.1.1/roadmap/adapters/git/git.py +0 -208
  248. roadmap_cli-0.1.1/roadmap/adapters/git/git_branch_manager.py +0 -400
  249. roadmap_cli-0.1.1/roadmap/adapters/git/git_command_executor.py +0 -56
  250. roadmap_cli-0.1.1/roadmap/adapters/git/git_commit_analyzer.py +0 -334
  251. roadmap_cli-0.1.1/roadmap/adapters/git/git_hooks.py +0 -22
  252. roadmap_cli-0.1.1/roadmap/adapters/git/git_hooks_manager.py +0 -455
  253. roadmap_cli-0.1.1/roadmap/adapters/git/git_repository_info.py +0 -65
  254. roadmap_cli-0.1.1/roadmap/adapters/git/hook_installer.py +0 -106
  255. roadmap_cli-0.1.1/roadmap/adapters/git/hook_registry.py +0 -97
  256. roadmap_cli-0.1.1/roadmap/adapters/git/hook_script_generator.py +0 -58
  257. roadmap_cli-0.1.1/roadmap/adapters/git/sync_monitor.py +0 -409
  258. roadmap_cli-0.1.1/roadmap/adapters/git/workflow_automation.py +0 -286
  259. roadmap_cli-0.1.1/roadmap/adapters/github/__init__.py +0 -1
  260. roadmap_cli-0.1.1/roadmap/adapters/github/github.py +0 -360
  261. roadmap_cli-0.1.1/roadmap/adapters/github/handlers/__init__.py +0 -17
  262. roadmap_cli-0.1.1/roadmap/adapters/github/handlers/base.py +0 -337
  263. roadmap_cli-0.1.1/roadmap/adapters/github/handlers/collaborators.py +0 -165
  264. roadmap_cli-0.1.1/roadmap/adapters/github/handlers/comments.py +0 -118
  265. roadmap_cli-0.1.1/roadmap/adapters/github/handlers/issues.py +0 -150
  266. roadmap_cli-0.1.1/roadmap/adapters/github/handlers/labels.py +0 -164
  267. roadmap_cli-0.1.1/roadmap/adapters/github/handlers/milestones.py +0 -104
  268. roadmap_cli-0.1.1/roadmap/adapters/persistence/__init__.py +0 -35
  269. roadmap_cli-0.1.1/roadmap/adapters/persistence/conflict_resolver.py +0 -190
  270. roadmap_cli-0.1.1/roadmap/adapters/persistence/database_manager.py +0 -492
  271. roadmap_cli-0.1.1/roadmap/adapters/persistence/entity_sync_coordinators.py +0 -672
  272. roadmap_cli-0.1.1/roadmap/adapters/persistence/file_locking.py +0 -348
  273. roadmap_cli-0.1.1/roadmap/adapters/persistence/file_parser.py +0 -92
  274. roadmap_cli-0.1.1/roadmap/adapters/persistence/file_synchronizer.py +0 -107
  275. roadmap_cli-0.1.1/roadmap/adapters/persistence/focused_managers.py +0 -140
  276. roadmap_cli-0.1.1/roadmap/adapters/persistence/git_history.py +0 -330
  277. roadmap_cli-0.1.1/roadmap/adapters/persistence/parser/__init__.py +0 -20
  278. roadmap_cli-0.1.1/roadmap/adapters/persistence/parser/frontmatter.py +0 -152
  279. roadmap_cli-0.1.1/roadmap/adapters/persistence/parser/issue.py +0 -245
  280. roadmap_cli-0.1.1/roadmap/adapters/persistence/parser/milestone.py +0 -146
  281. roadmap_cli-0.1.1/roadmap/adapters/persistence/parser/project.py +0 -106
  282. roadmap_cli-0.1.1/roadmap/adapters/persistence/persistence.py +0 -288
  283. roadmap_cli-0.1.1/roadmap/adapters/persistence/repositories/__init__.py +0 -15
  284. roadmap_cli-0.1.1/roadmap/adapters/persistence/repositories/issue_repository.py +0 -223
  285. roadmap_cli-0.1.1/roadmap/adapters/persistence/repositories/milestone_repository.py +0 -140
  286. roadmap_cli-0.1.1/roadmap/adapters/persistence/repositories/project_repository.py +0 -168
  287. roadmap_cli-0.1.1/roadmap/adapters/persistence/repositories/remote_link_repository.py +0 -355
  288. roadmap_cli-0.1.1/roadmap/adapters/persistence/repositories/sync_state_repository.py +0 -66
  289. roadmap_cli-0.1.1/roadmap/adapters/persistence/storage/__init__.py +0 -36
  290. roadmap_cli-0.1.1/roadmap/adapters/persistence/storage/conflicts.py +0 -101
  291. roadmap_cli-0.1.1/roadmap/adapters/persistence/storage/connection_manager.py +0 -79
  292. roadmap_cli-0.1.1/roadmap/adapters/persistence/storage/issue_storage.py +0 -89
  293. roadmap_cli-0.1.1/roadmap/adapters/persistence/storage/milestone_storage.py +0 -80
  294. roadmap_cli-0.1.1/roadmap/adapters/persistence/storage/project_storage.py +0 -102
  295. roadmap_cli-0.1.1/roadmap/adapters/persistence/storage/queries.py +0 -227
  296. roadmap_cli-0.1.1/roadmap/adapters/persistence/storage/state_manager.py +0 -652
  297. roadmap_cli-0.1.1/roadmap/adapters/persistence/storage/sync_state_storage.py +0 -207
  298. roadmap_cli-0.1.1/roadmap/adapters/persistence/sync_metrics_repository.py +0 -342
  299. roadmap_cli-0.1.1/roadmap/adapters/persistence/sync_orchestrator.py +0 -293
  300. roadmap_cli-0.1.1/roadmap/adapters/persistence/sync_state_tracker.py +0 -86
  301. roadmap_cli-0.1.1/roadmap/adapters/persistence/yaml_repositories.py +0 -711
  302. roadmap_cli-0.1.1/roadmap/adapters/sync/__init__.py +0 -21
  303. roadmap_cli-0.1.1/roadmap/adapters/sync/backend_factory.py +0 -108
  304. roadmap_cli-0.1.1/roadmap/adapters/sync/backends/__init__.py +0 -15
  305. roadmap_cli-0.1.1/roadmap/adapters/sync/backends/converters.py +0 -209
  306. roadmap_cli-0.1.1/roadmap/adapters/sync/backends/github_backend_helpers.py +0 -380
  307. roadmap_cli-0.1.1/roadmap/adapters/sync/backends/github_client.py +0 -99
  308. roadmap_cli-0.1.1/roadmap/adapters/sync/backends/github_sync_backend.py +0 -792
  309. roadmap_cli-0.1.1/roadmap/adapters/sync/backends/github_sync_ops.py +0 -908
  310. roadmap_cli-0.1.1/roadmap/adapters/sync/backends/services/__init__.py +0 -1
  311. roadmap_cli-0.1.1/roadmap/adapters/sync/backends/services/github_authentication_service.py +0 -105
  312. roadmap_cli-0.1.1/roadmap/adapters/sync/backends/services/github_issue_delete_service.py +0 -423
  313. roadmap_cli-0.1.1/roadmap/adapters/sync/backends/services/github_issue_dependency_service.py +0 -63
  314. roadmap_cli-0.1.1/roadmap/adapters/sync/backends/services/github_issue_fetch_service.py +0 -158
  315. roadmap_cli-0.1.1/roadmap/adapters/sync/backends/services/github_label_sync_service.py +0 -126
  316. roadmap_cli-0.1.1/roadmap/adapters/sync/backends/services/github_local_issue_sync_service.py +0 -229
  317. roadmap_cli-0.1.1/roadmap/adapters/sync/backends/services/github_milestone_fetch_service.py +0 -204
  318. roadmap_cli-0.1.1/roadmap/adapters/sync/backends/vanilla_git_sync_backend.py +0 -198
  319. roadmap_cli-0.1.1/roadmap/adapters/sync/services/__init__.py +0 -11
  320. roadmap_cli-0.1.1/roadmap/adapters/sync/services/baseline_state_handler.py +0 -83
  321. roadmap_cli-0.1.1/roadmap/adapters/sync/services/conflict_converter.py +0 -85
  322. roadmap_cli-0.1.1/roadmap/adapters/sync/services/issue_persistence_service.py +0 -263
  323. roadmap_cli-0.1.1/roadmap/adapters/sync/services/issue_state_service.py +0 -243
  324. roadmap_cli-0.1.1/roadmap/adapters/sync/services/local_change_filter.py +0 -129
  325. roadmap_cli-0.1.1/roadmap/adapters/sync/services/pull_result_processor.py +0 -71
  326. roadmap_cli-0.1.1/roadmap/adapters/sync/services/remote_issue_creation_service.py +0 -112
  327. roadmap_cli-0.1.1/roadmap/adapters/sync/services/sync_analysis_service.py +0 -250
  328. roadmap_cli-0.1.1/roadmap/adapters/sync/services/sync_authentication_service.py +0 -57
  329. roadmap_cli-0.1.1/roadmap/adapters/sync/services/sync_data_fetch_service.py +0 -212
  330. roadmap_cli-0.1.1/roadmap/adapters/sync/services/sync_linking_service.py +0 -329
  331. roadmap_cli-0.1.1/roadmap/adapters/sync/services/sync_report_service.py +0 -62
  332. roadmap_cli-0.1.1/roadmap/adapters/sync/services/sync_state_update_service.py +0 -51
  333. roadmap_cli-0.1.1/roadmap/adapters/sync/sync_cache_orchestrator.py +0 -454
  334. roadmap_cli-0.1.1/roadmap/adapters/sync/sync_merge_engine.py +0 -416
  335. roadmap_cli-0.1.1/roadmap/adapters/sync/sync_merge_orchestrator.py +0 -1313
  336. roadmap_cli-0.1.1/roadmap/adapters/sync/sync_retrieval_orchestrator.py +0 -810
  337. roadmap_cli-0.1.1/roadmap/application/services/__init__.py +0 -1
  338. roadmap_cli-0.1.1/roadmap/application/services/deduplicate_service.py +0 -517
  339. roadmap_cli-0.1.1/roadmap/application/use_cases/__init__.py +0 -1
  340. roadmap_cli-0.1.1/roadmap/common/__init__.py +0 -308
  341. roadmap_cli-0.1.1/roadmap/common/cache.py +0 -209
  342. roadmap_cli-0.1.1/roadmap/common/cli_errors.py +0 -147
  343. roadmap_cli-0.1.1/roadmap/common/configuration/__init__.py +0 -33
  344. roadmap_cli-0.1.1/roadmap/common/configuration/config_loader.py +0 -264
  345. roadmap_cli-0.1.1/roadmap/common/configuration/config_manager.py +0 -164
  346. roadmap_cli-0.1.1/roadmap/common/configuration/config_schema.py +0 -145
  347. roadmap_cli-0.1.1/roadmap/common/configuration/github/__init__.py +0 -9
  348. roadmap_cli-0.1.1/roadmap/common/configuration/github/config_manager.py +0 -154
  349. roadmap_cli-0.1.1/roadmap/common/configuration/github/token_resolver.py +0 -84
  350. roadmap_cli-0.1.1/roadmap/common/constants.py +0 -134
  351. roadmap_cli-0.1.1/roadmap/common/datetime_parser.py +0 -319
  352. roadmap_cli-0.1.1/roadmap/common/error_formatter.py +0 -84
  353. roadmap_cli-0.1.1/roadmap/common/errors/__init__.py +0 -143
  354. roadmap_cli-0.1.1/roadmap/common/errors/error_base.py +0 -73
  355. roadmap_cli-0.1.1/roadmap/common/errors/error_file.py +0 -82
  356. roadmap_cli-0.1.1/roadmap/common/errors/error_git.py +0 -67
  357. roadmap_cli-0.1.1/roadmap/common/errors/error_handler.py +0 -166
  358. roadmap_cli-0.1.1/roadmap/common/errors/error_network.py +0 -90
  359. roadmap_cli-0.1.1/roadmap/common/errors/error_security.py +0 -78
  360. roadmap_cli-0.1.1/roadmap/common/errors/error_standards.py +0 -561
  361. roadmap_cli-0.1.1/roadmap/common/errors/error_validation.py +0 -111
  362. roadmap_cli-0.1.1/roadmap/common/errors/exceptions.py +0 -432
  363. roadmap_cli-0.1.1/roadmap/common/formatters/__init__.py +0 -29
  364. roadmap_cli-0.1.1/roadmap/common/formatters/base_table_formatter.py +0 -96
  365. roadmap_cli-0.1.1/roadmap/common/formatters/export/__init__.py +0 -7
  366. roadmap_cli-0.1.1/roadmap/common/formatters/export/issue_exporter.py +0 -97
  367. roadmap_cli-0.1.1/roadmap/common/formatters/helpers.py +0 -28
  368. roadmap_cli-0.1.1/roadmap/common/formatters/kanban/__init__.py +0 -9
  369. roadmap_cli-0.1.1/roadmap/common/formatters/kanban/layout.py +0 -48
  370. roadmap_cli-0.1.1/roadmap/common/formatters/kanban/organizer.py +0 -81
  371. roadmap_cli-0.1.1/roadmap/common/formatters/output/__init__.py +0 -15
  372. roadmap_cli-0.1.1/roadmap/common/formatters/tables/__init__.py +0 -11
  373. roadmap_cli-0.1.1/roadmap/common/formatters/tables/issue_table.py +0 -276
  374. roadmap_cli-0.1.1/roadmap/common/formatters/tables/milestone_table.py +0 -247
  375. roadmap_cli-0.1.1/roadmap/common/formatters/tables/project_table.py +0 -195
  376. roadmap_cli-0.1.1/roadmap/common/formatters/text/__init__.py +0 -57
  377. roadmap_cli-0.1.1/roadmap/common/formatters/text/basic.py +0 -217
  378. roadmap_cli-0.1.1/roadmap/common/formatters/text/display.py +0 -42
  379. roadmap_cli-0.1.1/roadmap/common/formatters/text/duration.py +0 -36
  380. roadmap_cli-0.1.1/roadmap/common/formatters/text/operations.py +0 -325
  381. roadmap_cli-0.1.1/roadmap/common/formatters/text/status_badges.py +0 -57
  382. roadmap_cli-0.1.1/roadmap/common/initialization/github/__init__.py +0 -11
  383. roadmap_cli-0.1.1/roadmap/common/initialization/github/setup_service.py +0 -238
  384. roadmap_cli-0.1.1/roadmap/common/initialization/github/setup_validator.py +0 -78
  385. roadmap_cli-0.1.1/roadmap/common/logging/__init__.py +0 -113
  386. roadmap_cli-0.1.1/roadmap/common/logging/audit_logging.py +0 -5
  387. roadmap_cli-0.1.1/roadmap/common/logging/correlation.py +0 -45
  388. roadmap_cli-0.1.1/roadmap/common/logging/decorators.py +0 -267
  389. roadmap_cli-0.1.1/roadmap/common/logging/error_logging.py +0 -217
  390. roadmap_cli-0.1.1/roadmap/common/logging/formatters.py +0 -124
  391. roadmap_cli-0.1.1/roadmap/common/logging/loggers.py +0 -68
  392. roadmap_cli-0.1.1/roadmap/common/logging/performance_tracking.py +0 -267
  393. roadmap_cli-0.1.1/roadmap/common/logging/utils.py +0 -335
  394. roadmap_cli-0.1.1/roadmap/common/models/__init__.py +0 -44
  395. roadmap_cli-0.1.1/roadmap/common/models/cli_models.py +0 -118
  396. roadmap_cli-0.1.1/roadmap/common/models/config_models.py +0 -199
  397. roadmap_cli-0.1.1/roadmap/common/observability/__init__.py +0 -28
  398. roadmap_cli-0.1.1/roadmap/common/observability/instrumentation.py +0 -103
  399. roadmap_cli-0.1.1/roadmap/common/observability/observability.py +0 -76
  400. roadmap_cli-0.1.1/roadmap/common/observability/otel_init.py +0 -109
  401. roadmap_cli-0.1.1/roadmap/common/progress.py +0 -379
  402. roadmap_cli-0.1.1/roadmap/common/result.py +0 -396
  403. roadmap_cli-0.1.1/roadmap/common/security/__init__.py +0 -48
  404. roadmap_cli-0.1.1/roadmap/common/security/exceptions.py +0 -13
  405. roadmap_cli-0.1.1/roadmap/common/security/export_cleanup.py +0 -79
  406. roadmap_cli-0.1.1/roadmap/common/security/file_operations.py +0 -104
  407. roadmap_cli-0.1.1/roadmap/common/security/filename_sanitization.py +0 -54
  408. roadmap_cli-0.1.1/roadmap/common/security/logging.py +0 -27
  409. roadmap_cli-0.1.1/roadmap/common/security/path_validation.py +0 -137
  410. roadmap_cli-0.1.1/roadmap/common/security/temp_files.py +0 -41
  411. roadmap_cli-0.1.1/roadmap/common/services/__init__.py +0 -65
  412. roadmap_cli-0.1.1/roadmap/common/services/decorators.py +0 -183
  413. roadmap_cli-0.1.1/roadmap/common/services/logging_utils.py +0 -208
  414. roadmap_cli-0.1.1/roadmap/common/services/metrics.py +0 -161
  415. roadmap_cli-0.1.1/roadmap/common/services/performance.py +0 -219
  416. roadmap_cli-0.1.1/roadmap/common/services/profiling.py +0 -288
  417. roadmap_cli-0.1.1/roadmap/common/services/retry.py +0 -288
  418. roadmap_cli-0.1.1/roadmap/common/status_style_manager.py +0 -114
  419. roadmap_cli-0.1.1/roadmap/common/union_find.py +0 -88
  420. roadmap_cli-0.1.1/roadmap/common/update_constants.py +0 -13
  421. roadmap_cli-0.1.1/roadmap/common/utils/__init__.py +0 -65
  422. roadmap_cli-0.1.1/roadmap/common/utils/file_utils.py +0 -440
  423. roadmap_cli-0.1.1/roadmap/common/utils/path_utils.py +0 -38
  424. roadmap_cli-0.1.1/roadmap/common/utils/status_utils.py +0 -130
  425. roadmap_cli-0.1.1/roadmap/common/utils/timezone_utils.py +0 -480
  426. roadmap_cli-0.1.1/roadmap/common/validation/__init__.py +0 -37
  427. roadmap_cli-0.1.1/roadmap/common/validation/field_validator.py +0 -104
  428. roadmap_cli-0.1.1/roadmap/common/validation/result.py +0 -37
  429. roadmap_cli-0.1.1/roadmap/common/validation/roadmap_validator.py +0 -310
  430. roadmap_cli-0.1.1/roadmap/common/validation/schema_validator.py +0 -36
  431. roadmap_cli-0.1.1/roadmap/common/validation/validators.py +0 -50
  432. roadmap_cli-0.1.1/roadmap/core/__init__.py +0 -1
  433. roadmap_cli-0.1.1/roadmap/core/domain/__init__.py +0 -30
  434. roadmap_cli-0.1.1/roadmap/core/domain/comment.py +0 -24
  435. roadmap_cli-0.1.1/roadmap/core/domain/health.py +0 -15
  436. roadmap_cli-0.1.1/roadmap/core/domain/issue.py +0 -274
  437. roadmap_cli-0.1.1/roadmap/core/domain/milestone.py +0 -173
  438. roadmap_cli-0.1.1/roadmap/core/domain/ports/__init__.py +0 -1
  439. roadmap_cli-0.1.1/roadmap/core/domain/ports/baseline_repository.py +0 -24
  440. roadmap_cli-0.1.1/roadmap/core/domain/ports/issue_repository.py +0 -34
  441. roadmap_cli-0.1.1/roadmap/core/domain/ports/remote_backend_port.py +0 -31
  442. roadmap_cli-0.1.1/roadmap/core/domain/project.py +0 -130
  443. roadmap_cli-0.1.1/roadmap/core/interfaces/__init__.py +0 -109
  444. roadmap_cli-0.1.1/roadmap/core/interfaces/assignee_validator.py +0 -40
  445. roadmap_cli-0.1.1/roadmap/core/interfaces/backend_factory.py +0 -175
  446. roadmap_cli-0.1.1/roadmap/core/interfaces/github.py +0 -102
  447. roadmap_cli-0.1.1/roadmap/core/interfaces/parsers.py +0 -140
  448. roadmap_cli-0.1.1/roadmap/core/interfaces/persistence.py +0 -45
  449. roadmap_cli-0.1.1/roadmap/core/interfaces/repositories.py +0 -174
  450. roadmap_cli-0.1.1/roadmap/core/interfaces/state_managers.py +0 -111
  451. roadmap_cli-0.1.1/roadmap/core/interfaces/state_storage.py +0 -64
  452. roadmap_cli-0.1.1/roadmap/core/interfaces/sync_backend.py +0 -275
  453. roadmap_cli-0.1.1/roadmap/core/interfaces/sync_services.py +0 -119
  454. roadmap_cli-0.1.1/roadmap/core/interfaces/sync_validators.py +0 -180
  455. roadmap_cli-0.1.1/roadmap/core/models/__init__.py +0 -31
  456. roadmap_cli-0.1.1/roadmap/core/models/sync_models.py +0 -162
  457. roadmap_cli-0.1.1/roadmap/core/models.py +0 -115
  458. roadmap_cli-0.1.1/roadmap/core/observability/__init__.py +0 -17
  459. roadmap_cli-0.1.1/roadmap/core/observability/sync_metrics.py +0 -699
  460. roadmap_cli-0.1.1/roadmap/core/repositories.py +0 -200
  461. roadmap_cli-0.1.1/roadmap/core/services/__init__.py +0 -313
  462. roadmap_cli-0.1.1/roadmap/core/services/baseline/__init__.py +0 -1
  463. roadmap_cli-0.1.1/roadmap/core/services/baseline/baseline_builder_progress.py +0 -274
  464. roadmap_cli-0.1.1/roadmap/core/services/baseline/baseline_retriever.py +0 -63
  465. roadmap_cli-0.1.1/roadmap/core/services/baseline/baseline_selector.py +0 -248
  466. roadmap_cli-0.1.1/roadmap/core/services/baseline/baseline_state_retriever.py +0 -284
  467. roadmap_cli-0.1.1/roadmap/core/services/baseline/optimized_baseline_builder.py +0 -425
  468. roadmap_cli-0.1.1/roadmap/core/services/comment/__init__.py +0 -1
  469. roadmap_cli-0.1.1/roadmap/core/services/comment/comment_service.py +0 -277
  470. roadmap_cli-0.1.1/roadmap/core/services/git/__init__.py +0 -1
  471. roadmap_cli-0.1.1/roadmap/core/services/git/git_hook_auto_sync_service.py +0 -403
  472. roadmap_cli-0.1.1/roadmap/core/services/github/__init__.py +0 -1
  473. roadmap_cli-0.1.1/roadmap/core/services/github/github_change_detector.py +0 -162
  474. roadmap_cli-0.1.1/roadmap/core/services/github/github_config_validator.py +0 -148
  475. roadmap_cli-0.1.1/roadmap/core/services/github/github_conflict_detector.py +0 -179
  476. roadmap_cli-0.1.1/roadmap/core/services/github/github_entity_classifier.py +0 -51
  477. roadmap_cli-0.1.1/roadmap/core/services/github/github_integration_service.py +0 -439
  478. roadmap_cli-0.1.1/roadmap/core/services/github/github_issue_client.py +0 -346
  479. roadmap_cli-0.1.1/roadmap/core/services/health/__init__.py +0 -1
  480. roadmap_cli-0.1.1/roadmap/core/services/health/backup_cleanup_service.py +0 -202
  481. roadmap_cli-0.1.1/roadmap/core/services/health/data_integrity_validator_service.py +0 -90
  482. roadmap_cli-0.1.1/roadmap/core/services/health/entity_health_scanner.py +0 -460
  483. roadmap_cli-0.1.1/roadmap/core/services/health/file_repair_service.py +0 -193
  484. roadmap_cli-0.1.1/roadmap/core/services/health/health_check_service.py +0 -166
  485. roadmap_cli-0.1.1/roadmap/core/services/health/health_models.py +0 -80
  486. roadmap_cli-0.1.1/roadmap/core/services/health/infrastructure_validator_service.py +0 -328
  487. roadmap_cli-0.1.1/roadmap/core/services/health/issue_health_scanner.py +0 -263
  488. roadmap_cli-0.1.1/roadmap/core/services/helpers/__init__.py +0 -18
  489. roadmap_cli-0.1.1/roadmap/core/services/helpers/status_change_helpers.py +0 -88
  490. roadmap_cli-0.1.1/roadmap/core/services/initialization/__init__.py +0 -19
  491. roadmap_cli-0.1.1/roadmap/core/services/initialization/utils.py +0 -104
  492. roadmap_cli-0.1.1/roadmap/core/services/initialization/validator.py +0 -78
  493. roadmap_cli-0.1.1/roadmap/core/services/initialization/workflow.py +0 -182
  494. roadmap_cli-0.1.1/roadmap/core/services/initialization_service.py +0 -111
  495. roadmap_cli-0.1.1/roadmap/core/services/issue/__init__.py +0 -1
  496. roadmap_cli-0.1.1/roadmap/core/services/issue/assignee_validation_service.py +0 -312
  497. roadmap_cli-0.1.1/roadmap/core/services/issue/issue_creation_service.py +0 -309
  498. roadmap_cli-0.1.1/roadmap/core/services/issue/issue_filter_service.py +0 -302
  499. roadmap_cli-0.1.1/roadmap/core/services/issue/issue_matching_service.py +0 -127
  500. roadmap_cli-0.1.1/roadmap/core/services/issue/issue_service.py +0 -765
  501. roadmap_cli-0.1.1/roadmap/core/services/issue/issue_update_service.py +0 -144
  502. roadmap_cli-0.1.1/roadmap/core/services/issue/start_issue_service.py +0 -174
  503. roadmap_cli-0.1.1/roadmap/core/services/issue_helpers/__init__.py +0 -18
  504. roadmap_cli-0.1.1/roadmap/core/services/issue_helpers/issue_filters.py +0 -296
  505. roadmap_cli-0.1.1/roadmap/core/services/milestone_service.py +0 -438
  506. roadmap_cli-0.1.1/roadmap/core/services/project/__init__.py +0 -1
  507. roadmap_cli-0.1.1/roadmap/core/services/project/project_service.py +0 -434
  508. roadmap_cli-0.1.1/roadmap/core/services/project/project_status_service.py +0 -125
  509. roadmap_cli-0.1.1/roadmap/core/services/project_init/__init__.py +0 -22
  510. roadmap_cli-0.1.1/roadmap/core/services/project_init/context_detection.py +0 -146
  511. roadmap_cli-0.1.1/roadmap/core/services/project_init/creation.py +0 -76
  512. roadmap_cli-0.1.1/roadmap/core/services/project_init/detection.py +0 -51
  513. roadmap_cli-0.1.1/roadmap/core/services/project_init/template.py +0 -228
  514. roadmap_cli-0.1.1/roadmap/core/services/status_change_service.py +0 -88
  515. roadmap_cli-0.1.1/roadmap/core/services/sync/__init__.py +0 -1
  516. roadmap_cli-0.1.1/roadmap/core/services/sync/batch_processor.py +0 -290
  517. roadmap_cli-0.1.1/roadmap/core/services/sync/conflict_resolver.py +0 -154
  518. roadmap_cli-0.1.1/roadmap/core/services/sync/dependency_resolver.py +0 -367
  519. roadmap_cli-0.1.1/roadmap/core/services/sync/duplicate_detector.py +0 -771
  520. roadmap_cli-0.1.1/roadmap/core/services/sync/duplicate_resolver.py +0 -315
  521. roadmap_cli-0.1.1/roadmap/core/services/sync/error_classification.py +0 -470
  522. roadmap_cli-0.1.1/roadmap/core/services/sync/performance.py +0 -263
  523. roadmap_cli-0.1.1/roadmap/core/services/sync/sync_change_computer.py +0 -211
  524. roadmap_cli-0.1.1/roadmap/core/services/sync/sync_checkpoint.py +0 -348
  525. roadmap_cli-0.1.1/roadmap/core/services/sync/sync_conflict_detector.py +0 -147
  526. roadmap_cli-0.1.1/roadmap/core/services/sync/sync_conflict_resolver.py +0 -448
  527. roadmap_cli-0.1.1/roadmap/core/services/sync/sync_errors.py +0 -383
  528. roadmap_cli-0.1.1/roadmap/core/services/sync/sync_key_normalizer.py +0 -222
  529. roadmap_cli-0.1.1/roadmap/core/services/sync/sync_metadata_service.py +0 -361
  530. roadmap_cli-0.1.1/roadmap/core/services/sync/sync_plan.py +0 -171
  531. roadmap_cli-0.1.1/roadmap/core/services/sync/sync_plan_executor.py +0 -447
  532. roadmap_cli-0.1.1/roadmap/core/services/sync/sync_report.py +0 -296
  533. roadmap_cli-0.1.1/roadmap/core/services/sync/sync_state.py +0 -173
  534. roadmap_cli-0.1.1/roadmap/core/services/sync/sync_state_comparator.py +0 -690
  535. roadmap_cli-0.1.1/roadmap/core/services/sync/sync_state_manager.py +0 -431
  536. roadmap_cli-0.1.1/roadmap/core/services/sync/sync_state_normalizer.py +0 -98
  537. roadmap_cli-0.1.1/roadmap/core/services/sync/sync_three_way.py +0 -78
  538. roadmap_cli-0.1.1/roadmap/core/services/sync/three_way_merger.py +0 -178
  539. roadmap_cli-0.1.1/roadmap/core/services/utils/__init__.py +0 -1
  540. roadmap_cli-0.1.1/roadmap/core/services/utils/configuration_service.py +0 -113
  541. roadmap_cli-0.1.1/roadmap/core/services/utils/critical_path_calculator.py +0 -418
  542. roadmap_cli-0.1.1/roadmap/core/services/utils/dependency_analyzer.py +0 -360
  543. roadmap_cli-0.1.1/roadmap/core/services/utils/field_conflict_detector.py +0 -126
  544. roadmap_cli-0.1.1/roadmap/core/services/utils/remote_fetcher.py +0 -202
  545. roadmap_cli-0.1.1/roadmap/core/services/utils/remote_state_normalizer.py +0 -110
  546. roadmap_cli-0.1.1/roadmap/core/services/utils/retry_policy.py +0 -51
  547. roadmap_cli-0.1.1/roadmap/core/services/validator_base.py +0 -130
  548. roadmap_cli-0.1.1/roadmap/core/services/validators/__init__.py +0 -28
  549. roadmap_cli-0.1.1/roadmap/core/services/validators/_utils.py +0 -20
  550. roadmap_cli-0.1.1/roadmap/core/services/validators/archivable_issues_validator.py +0 -71
  551. roadmap_cli-0.1.1/roadmap/core/services/validators/archivable_milestones_validator.py +0 -69
  552. roadmap_cli-0.1.1/roadmap/core/services/validators/backup_validator.py +0 -89
  553. roadmap_cli-0.1.1/roadmap/core/services/validators/data_integrity_validator.py +0 -84
  554. roadmap_cli-0.1.1/roadmap/core/services/validators/duplicate_issues_validator.py +0 -75
  555. roadmap_cli-0.1.1/roadmap/core/services/validators/duplicate_milestones_validator.py +0 -141
  556. roadmap_cli-0.1.1/roadmap/core/services/validators/folder_structure_validator.py +0 -165
  557. roadmap_cli-0.1.1/roadmap/core/services/validators/health_status_utils.py +0 -28
  558. roadmap_cli-0.1.1/roadmap/core/services/validators/milestone_naming_validator.py +0 -146
  559. roadmap_cli-0.1.1/roadmap/core/services/validators/missing_headlines_validator.py +0 -97
  560. roadmap_cli-0.1.1/roadmap/core/services/validators/orphaned_issues_validator.py +0 -142
  561. roadmap_cli-0.1.1/roadmap/core/services/validators/orphaned_milestones_validator.py +0 -85
  562. roadmap_cli-0.1.1/roadmap/core/utils/git_remote_parser.py +0 -83
  563. roadmap_cli-0.1.1/roadmap/core/utils/github_urls.py +0 -66
  564. roadmap_cli-0.1.1/roadmap/domain/validation.py +0 -30
  565. roadmap_cli-0.1.1/roadmap/infrastructure/__init__.py +0 -55
  566. roadmap_cli-0.1.1/roadmap/infrastructure/coordination/__init__.py +0 -8
  567. roadmap_cli-0.1.1/roadmap/infrastructure/coordination/coordinator_params.py +0 -82
  568. roadmap_cli-0.1.1/roadmap/infrastructure/coordination/core.py +0 -446
  569. roadmap_cli-0.1.1/roadmap/infrastructure/coordination/git_coordinator.py +0 -160
  570. roadmap_cli-0.1.1/roadmap/infrastructure/coordination/initialization.py +0 -348
  571. roadmap_cli-0.1.1/roadmap/infrastructure/coordination/issue_coordinator.py +0 -154
  572. roadmap_cli-0.1.1/roadmap/infrastructure/coordination/issue_operations.py +0 -456
  573. roadmap_cli-0.1.1/roadmap/infrastructure/coordination/milestone_coordinator.py +0 -135
  574. roadmap_cli-0.1.1/roadmap/infrastructure/coordination/milestone_operations.py +0 -201
  575. roadmap_cli-0.1.1/roadmap/infrastructure/coordination/project_coordinator.py +0 -113
  576. roadmap_cli-0.1.1/roadmap/infrastructure/coordination/project_operations.py +0 -144
  577. roadmap_cli-0.1.1/roadmap/infrastructure/coordination/team_coordinator.py +0 -107
  578. roadmap_cli-0.1.1/roadmap/infrastructure/coordination/user_operations.py +0 -150
  579. roadmap_cli-0.1.1/roadmap/infrastructure/coordination/validation_coordinator.py +0 -249
  580. roadmap_cli-0.1.1/roadmap/infrastructure/coordination_gateway.py +0 -152
  581. roadmap_cli-0.1.1/roadmap/infrastructure/git/__init__.py +0 -6
  582. roadmap_cli-0.1.1/roadmap/infrastructure/git/git_integration_ops.py +0 -234
  583. roadmap_cli-0.1.1/roadmap/infrastructure/git_gateway.py +0 -35
  584. roadmap_cli-0.1.1/roadmap/infrastructure/github_gateway.py +0 -52
  585. roadmap_cli-0.1.1/roadmap/infrastructure/maintenance/__init__.py +0 -5
  586. roadmap_cli-0.1.1/roadmap/infrastructure/maintenance/cleanup.py +0 -483
  587. roadmap_cli-0.1.1/roadmap/infrastructure/observability/__init__.py +0 -7
  588. roadmap_cli-0.1.1/roadmap/infrastructure/observability/health.py +0 -196
  589. roadmap_cli-0.1.1/roadmap/infrastructure/observability/health_formatter.py +0 -73
  590. roadmap_cli-0.1.1/roadmap/infrastructure/observability/specialized_health_checkers.py +0 -188
  591. roadmap_cli-0.1.1/roadmap/infrastructure/persistence_gateway.py +0 -164
  592. roadmap_cli-0.1.1/roadmap/infrastructure/security/__init__.py +0 -1
  593. roadmap_cli-0.1.1/roadmap/infrastructure/security/credentials.py +0 -489
  594. roadmap_cli-0.1.1/roadmap/infrastructure/sync_gateway.py +0 -94
  595. roadmap_cli-0.1.1/roadmap/infrastructure/validation/__init__.py +0 -7
  596. roadmap_cli-0.1.1/roadmap/infrastructure/validation/file_enumeration.py +0 -219
  597. roadmap_cli-0.1.1/roadmap/infrastructure/validation/github_assignee_validator.py +0 -47
  598. roadmap_cli-0.1.1/roadmap/infrastructure/validation/github_validator.py +0 -101
  599. roadmap_cli-0.1.1/roadmap/infrastructure/validation/milestone_consistency_validator.py +0 -96
  600. roadmap_cli-0.1.1/roadmap/infrastructure/validation/vanilla_assignee_validator.py +0 -37
  601. roadmap_cli-0.1.1/roadmap/infrastructure/validation_gateway.py +0 -96
  602. roadmap_cli-0.1.1/roadmap/presentation/formatters/sync_metrics_formatter.py +0 -355
  603. roadmap_cli-0.1.1/roadmap/settings.py +0 -345
  604. roadmap_cli-0.1.1/roadmap/templates/github_workflows/ci-cd-roadmap.yml +0 -241
  605. roadmap_cli-0.1.1/roadmap/templates/github_workflows/issue-lifecycle.yml +0 -236
  606. roadmap_cli-0.1.1/roadmap/templates/github_workflows/roadmap-integration.yml +0 -137
  607. roadmap_cli-0.1.1/roadmap/templates/github_workflows/roadmap-starter.yml +0 -59
  608. roadmap_cli-0.1.1/roadmap/version.py +0 -381
  609. {roadmap_cli-0.1.1 → roadmap_cli-0.2.0}/LICENSE.md +0 -0
  610. {roadmap_cli-0.1.1/roadmap/adapters → roadmap_cli-0.2.0/roadmap/adapters/inbound}/cli/analysis/__init__.py +0 -0
  611. {roadmap_cli-0.1.1/roadmap/common → roadmap_cli-0.2.0/roadmap/adapters/inbound/cli}/console.py +0 -0
  612. {roadmap_cli-0.1.1/roadmap/adapters → roadmap_cli-0.2.0/roadmap/adapters/inbound}/cli/data/__init__.py +0 -0
  613. {roadmap_cli-0.1.1/roadmap/adapters → roadmap_cli-0.2.0/roadmap/adapters/inbound}/cli/git/__init__.py +0 -0
  614. {roadmap_cli-0.1.1/roadmap/adapters → roadmap_cli-0.2.0/roadmap/adapters/inbound}/cli/init/__init__.py +0 -0
  615. {roadmap_cli-0.1.1/roadmap/common → roadmap_cli-0.2.0/roadmap/adapters/inbound/cli}/models/output_models.py +0 -0
  616. {roadmap_cli-0.1.1/roadmap/adapters → roadmap_cli-0.2.0/roadmap/adapters/inbound}/cli/styling.py +0 -0
@@ -176,6 +176,7 @@ Thumbs.db
176
176
  # Roadmap local data and backups
177
177
  .roadmap/backups/
178
178
  .roadmap/artifacts/
179
+ .roadmap/db/
179
180
  .roadmap/logs/
180
181
  .roadmap/*.local # User-specific local overrides (not to be shared)
181
182
  .roadmap/config.yaml.local # User settings override file (gitignored)
@@ -0,0 +1,86 @@
1
+ # Changelog
2
+
3
+ All notable changes to Roadmap CLI are recorded here. The format follows
4
+ [Keep a Changelog](https://keepachangelog.com/en/1.1.0/), and releases follow
5
+ [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
6
+
7
+ ## [Unreleased]
8
+
9
+ ## [0.2.0] - 2026-08-27
10
+
11
+ ### Added
12
+
13
+ - Added explicit `roadmap migrate` preflight, dry-run, confirmed execution,
14
+ structured output, recovery, and idempotent rerun for supported 0.1.1
15
+ workspaces.
16
+ - Added versioned workspace/document schemas, stable entity IDs, scoped
17
+ configuration, deterministic JSON/CSV output, read-only health diagnosis,
18
+ previewable repair, and explicit local Git status/branch/reference commands.
19
+ - Added architecture, test-quality, package-installation, compatibility,
20
+ failure-injection, concurrency, corruption, migration, offline, and measured
21
+ performance gates.
22
+
23
+ ### Changed
24
+
25
+ - Canonical Markdown/YAML documents are now the sole data authority. SQLite is
26
+ a disposable query projection refreshed or rebuilt only from those files.
27
+ - Projects, milestones, and issues use flat stable-ID paths. Lifecycle state is
28
+ metadata rather than a physical archive-directory contract.
29
+ - New IDs use complete UUID4 values; migration preserves existing IDs and
30
+ user-authored content.
31
+ - The package now has one Domain/Application/Adapters/Bootstrap architecture,
32
+ one configuration path, one persistence path, and one implementation for
33
+ each retained CLI journey.
34
+ - Supported runtimes now include Python 3.12 through 3.14 on macOS and Linux;
35
+ CI verifies the full Python range and installed artifacts on Ubuntu x64 and
36
+ macOS ARM64.
37
+ - Machine-readable stdout is isolated from diagnostics and confirmations on
38
+ stderr.
39
+
40
+ ### Removed
41
+
42
+ - Removed provider-backed synchronization, GitHub entity replication,
43
+ Roadmap-owned credentials, connectivity/setup handlers, provider baselines,
44
+ reconciliation databases, and sync metrics. Ordinary Git transport remains
45
+ outside Roadmap and local file-to-SQLite projection maintenance remains.
46
+ - Removed the legacy `core`, `common`, `infrastructure`, `presentation`, and
47
+ superseded adapter ownership zones, along with duplicate configuration,
48
+ health, export, persistence, and compatibility implementations.
49
+ - Removed claimed features that did not belong to the retained product,
50
+ including hosted dashboards, predictive analytics, OAuth, and generated API
51
+ documentation stacks.
52
+
53
+ ### Migration
54
+
55
+ - Existing 0.1.1 workspaces must run `roadmap migrate --dry-run` and review the
56
+ report before `roadmap migrate --yes`.
57
+ - Migration rewrites canonical entities to stable paths, externalizes user
58
+ preferences, removes legacy credential fields, and rebuilds SQLite without
59
+ treating it as authority. See `docs/user_guide/MIGRATING_TO_0_2.md`.
60
+
61
+ ## [0.1.1] - 2026-08-09
62
+
63
+ ### Fixed
64
+
65
+ - Removed the unrelated `roadmap` PyPI distribution from runtime dependencies;
66
+ it shadowed this project's package and broke the console command.
67
+ - Moved development and documentation tooling out of runtime dependencies.
68
+ - Read the installed version from distribution metadata and added clean wheel
69
+ and source-distribution smoke tests.
70
+ - Corrected supported Python/platform declarations, repository URLs, and
71
+ installation guidance.
72
+
73
+ ## [0.1.0] - 2026-05-18
74
+
75
+ ### Changed
76
+
77
+ - Reset the public version from premature 1.x tags to 0.1.0 so package versions
78
+ accurately communicate pre-1.0 compatibility and maturity.
79
+
80
+ ## Pre-reset 1.x tags
81
+
82
+ Tags numbered 1.0.0 through 1.0.2 predated the maturity reset. Their release
83
+ notes contained aspirational and unverified feature, compatibility, coverage,
84
+ security, and performance claims, so they are not a description of the current
85
+ product contract. Git history remains available for provenance; supported
86
+ behavior begins with the honest 0.1.x line above.
@@ -0,0 +1,235 @@
1
+ Metadata-Version: 2.5
2
+ Name: roadmap-cli
3
+ Version: 0.2.0
4
+ Summary: Git-native command line tool for local project roadmap management
5
+ Project-URL: Homepage, https://github.com/shanewilkins/roadmap
6
+ Project-URL: Repository, https://github.com/shanewilkins/roadmap
7
+ Project-URL: Issues, https://github.com/shanewilkins/roadmap/issues
8
+ Project-URL: Documentation, https://github.com/shanewilkins/roadmap/tree/main/docs
9
+ Author: Shane Wilkins
10
+ License: MIT
11
+ License-File: LICENSE.md
12
+ Keywords: cli,git,issue-tracking,milestone,offline,planning,productivity,project-management,roadmap
13
+ Classifier: Development Status :: 4 - Beta
14
+ Classifier: Environment :: Console
15
+ Classifier: Intended Audience :: Developers
16
+ Classifier: Intended Audience :: Information Technology
17
+ Classifier: Intended Audience :: System Administrators
18
+ Classifier: License :: OSI Approved :: MIT License
19
+ Classifier: Operating System :: MacOS
20
+ Classifier: Operating System :: POSIX :: Linux
21
+ Classifier: Programming Language :: Python :: 3
22
+ Classifier: Programming Language :: Python :: 3.12
23
+ Classifier: Programming Language :: Python :: 3.13
24
+ Classifier: Programming Language :: Python :: 3.14
25
+ Classifier: Topic :: Office/Business :: Scheduling
26
+ Classifier: Topic :: Software Development :: Bug Tracking
27
+ Classifier: Topic :: Software Development :: Libraries :: Python Modules
28
+ Classifier: Topic :: Software Development :: Version Control :: Git
29
+ Classifier: Topic :: Utilities
30
+ Requires-Python: <4.0,>=3.12
31
+ Requires-Dist: click<9.0.0,>=8.4.0
32
+ Requires-Dist: pyyaml<7.0.0,>=6.0.3
33
+ Requires-Dist: rich<16.0.0,>=15.0.0
34
+ Provides-Extra: dev
35
+ Requires-Dist: bandit[toml]>=1.9.4; extra == 'dev'
36
+ Requires-Dist: pre-commit>=4.6.0; extra == 'dev'
37
+ Requires-Dist: pyright>=1.1.411; extra == 'dev'
38
+ Requires-Dist: pytest-aiohttp>=1.1.0; extra == 'dev'
39
+ Requires-Dist: pytest-asyncio>=1.3.0; extra == 'dev'
40
+ Requires-Dist: pytest-benchmark>=5.2.3; extra == 'dev'
41
+ Requires-Dist: pytest-cov>=7.1.0; extra == 'dev'
42
+ Requires-Dist: pytest-mock>=3.15.1; extra == 'dev'
43
+ Requires-Dist: pytest-xdist>=3.8.0; extra == 'dev'
44
+ Requires-Dist: pytest>=9.0.3; extra == 'dev'
45
+ Requires-Dist: radon<7.0.0,>=6.0.1; extra == 'dev'
46
+ Requires-Dist: ruff==0.16.4; extra == 'dev'
47
+ Requires-Dist: xenon<1.0.0,>=0.9.3; extra == 'dev'
48
+ Description-Content-Type: text/markdown
49
+
50
+ # Roadmap CLI
51
+
52
+ Roadmap is a repository-local project-management CLI for developers who want
53
+ their planning data in reviewable Markdown and YAML files rather than a hosted
54
+ service. It supports issues, dependencies, comments, projects, milestones,
55
+ daily views, health checks, and machine-readable exports.
56
+
57
+ The current release is 0.2.0. Its deliberately contracted behavior is defined
58
+ by an explicit
59
+ [public compatibility contract](docs/architecture/public-contract-0.2.md).
60
+
61
+ ## What it does
62
+
63
+ - Stores canonical project data under `.roadmap/` so it can be reviewed and
64
+ versioned with the repository.
65
+ - Works offline after installation; no Roadmap account or server is required.
66
+ - Manages issue state, priority, assignment, dependencies, progress, and
67
+ threaded comments.
68
+ - Organizes work into projects and milestones and derives planning views.
69
+ - Exposes JSON and CSV for scripts alongside human-readable terminal output.
70
+ - Uses a local SQLite index as a rebuildable projection of canonical files.
71
+ - Leaves network collaboration to ordinary Git.
72
+
73
+ Roadmap is intentionally repository-scoped and CLI-first. It does not provide
74
+ a hosted web UI, cross-repository portfolio planning, or provider-owned remote
75
+ issue synchronization.
76
+
77
+ ## Requirements
78
+
79
+ - Python 3.12, 3.13, or 3.14
80
+ - macOS or Linux; CI tests Ubuntu 24.04 x64 and macOS 15 ARM64
81
+ - Git when the `.roadmap/` data will be shared with collaborators
82
+
83
+ ## Installation
84
+
85
+ With `uv`:
86
+
87
+ ```bash
88
+ uv tool install roadmap-cli
89
+ roadmap --version
90
+ ```
91
+
92
+ With `pipx`:
93
+
94
+ ```bash
95
+ pipx install roadmap-cli
96
+ roadmap --version
97
+ ```
98
+
99
+ Or in a virtual environment:
100
+
101
+ ```bash
102
+ python3.12 -m venv .venv
103
+ source .venv/bin/activate
104
+ pip install roadmap-cli
105
+ roadmap --version
106
+ ```
107
+
108
+ For development:
109
+
110
+ ```bash
111
+ git clone https://github.com/shanewilkins/roadmap.git
112
+ cd roadmap
113
+ uv sync --all-extras --locked
114
+ uv run roadmap --help
115
+ ```
116
+
117
+ ## Quick start
118
+
119
+ Initialize a repository and create work:
120
+
121
+ ```bash
122
+ cd my-project
123
+ roadmap init --project-name "My project"
124
+ roadmap issue create --title "Fix login timeout" --priority high
125
+ roadmap issue list
126
+ ```
127
+
128
+ Use the ID printed by `issue create` to inspect and update the issue:
129
+
130
+ ```bash
131
+ roadmap issue view <issue-id>
132
+ roadmap issue update <issue-id> --status in-progress
133
+ roadmap issue progress <issue-id> 50
134
+ roadmap issue comment add <issue-id> "Reproduced and isolated the cause."
135
+ roadmap issue close <issue-id> --reason "Fixed and verified"
136
+ ```
137
+
138
+ Organize delivery:
139
+
140
+ ```bash
141
+ roadmap project create --title "Web application"
142
+ roadmap milestone create --title "0.2" --due-date 2026-09-30
143
+ roadmap milestone assign <issue-id> "0.2"
144
+ roadmap milestone view "0.2"
145
+ ```
146
+
147
+ Query or export data:
148
+
149
+ ```bash
150
+ roadmap today
151
+ roadmap status --format json
152
+ roadmap issue list --status blocked --format json
153
+ roadmap data export --format csv --output roadmap.csv
154
+ roadmap health --format json
155
+ ```
156
+
157
+ Run `roadmap <command> --help` for the exact options supported by the installed
158
+ version.
159
+
160
+ ## Migrating an existing workspace
161
+
162
+ The 0.2 development line upgrades 0.1.1 workspaces explicitly. Preview the
163
+ complete validated write set first, then confirm the migration:
164
+
165
+ ```bash
166
+ roadmap migrate --dry-run
167
+ roadmap migrate --yes
168
+ ```
169
+
170
+ Migration preserves existing IDs and user-authored content, moves canonical
171
+ documents to flat stable-ID paths, externalizes user preferences, and rebuilds
172
+ SQLite from canonical files. Resolve every reported conflict before retrying;
173
+ ordinary reads never migrate files automatically. Follow the complete
174
+ [0.2 migration guide](docs/user_guide/MIGRATING_TO_0_2.md) before upgrading.
175
+
176
+ ## Collaborating through Git
177
+
178
+ Roadmap data is shared the same way as source code:
179
+
180
+ ```bash
181
+ git add .roadmap/
182
+ git commit -m "Update project roadmap"
183
+ git pull --rebase
184
+ git push
185
+ ```
186
+
187
+ Roadmap 0.2 keeps explicit local Git conveniences such as `roadmap git status`,
188
+ `roadmap git branch <issue-id>`, and `roadmap git link <issue-id>`. It does not
189
+ install hooks, interpret commit prose to mutate issue state, store provider
190
+ credentials, or synchronize directly with GitHub or another issue service.
191
+
192
+ The 0.2 codebase removes the experimental 0.1.1 remote-sync, provider, and
193
+ automatic-hook commands. Use normal Git commands for collaboration. See the
194
+ [0.2 removal guide](docs/user_guide/REMOTE_SYNC_REMOVAL_0_2.md) before upgrading
195
+ an existing workspace.
196
+
197
+ ## Data ownership and recovery
198
+
199
+ Canonical Markdown and YAML are the durable data. SQLite is a local search and
200
+ validation projection, not a second source of truth and not a remote sync
201
+ target. Projection rebuild and canonical-file recovery are explicit and
202
+ testable.
203
+
204
+ Keep `.roadmap/` versioned and make a normal Git commit before running the 0.2
205
+ migration. Do not treat the internal SQLite schema as a public API.
206
+
207
+ ## Documentation
208
+
209
+ - [Quick start](docs/user_guide/QUICK_START.md)
210
+ - [Installation](docs/user_guide/INSTALLATION.md)
211
+ - [Workflows](docs/user_guide/WORKFLOWS.md)
212
+ - [FAQ](docs/user_guide/FAQ.md)
213
+ - [0.2 migration guide](docs/user_guide/MIGRATING_TO_0_2.md)
214
+ - [Architecture decisions](docs/architecture/README.md)
215
+ - [Refactor case study](docs/architecture/portfolio-case-study.md)
216
+ - [0.2 release checklist](docs/releases/0.2.0-checklist.md)
217
+ - [Requirements register](docs/requirements/README.md)
218
+ - [Project governance](docs/governance/README.md)
219
+ - [Security policy](SECURITY.md)
220
+ - [Contributing guide](CONTRIBUTING.md)
221
+
222
+ The old GitHub and milestone synchronization guides describe experimental
223
+ 0.1.1 behavior and are retained only as migration history; they are not the 0.2
224
+ product direction.
225
+
226
+ ## Project status
227
+
228
+ Roadmap 0.2.0 is the result of thirteen independently verified refactor phases.
229
+ See the
230
+ [execution plan](docs/architecture/refactor-execution-plan.md) and published
231
+ [checkpoint reports](docs/architecture/README.md#execution-checkpoints).
232
+
233
+ ## License
234
+
235
+ [MIT](LICENSE.md)
@@ -0,0 +1,186 @@
1
+ # Roadmap CLI
2
+
3
+ Roadmap is a repository-local project-management CLI for developers who want
4
+ their planning data in reviewable Markdown and YAML files rather than a hosted
5
+ service. It supports issues, dependencies, comments, projects, milestones,
6
+ daily views, health checks, and machine-readable exports.
7
+
8
+ The current release is 0.2.0. Its deliberately contracted behavior is defined
9
+ by an explicit
10
+ [public compatibility contract](docs/architecture/public-contract-0.2.md).
11
+
12
+ ## What it does
13
+
14
+ - Stores canonical project data under `.roadmap/` so it can be reviewed and
15
+ versioned with the repository.
16
+ - Works offline after installation; no Roadmap account or server is required.
17
+ - Manages issue state, priority, assignment, dependencies, progress, and
18
+ threaded comments.
19
+ - Organizes work into projects and milestones and derives planning views.
20
+ - Exposes JSON and CSV for scripts alongside human-readable terminal output.
21
+ - Uses a local SQLite index as a rebuildable projection of canonical files.
22
+ - Leaves network collaboration to ordinary Git.
23
+
24
+ Roadmap is intentionally repository-scoped and CLI-first. It does not provide
25
+ a hosted web UI, cross-repository portfolio planning, or provider-owned remote
26
+ issue synchronization.
27
+
28
+ ## Requirements
29
+
30
+ - Python 3.12, 3.13, or 3.14
31
+ - macOS or Linux; CI tests Ubuntu 24.04 x64 and macOS 15 ARM64
32
+ - Git when the `.roadmap/` data will be shared with collaborators
33
+
34
+ ## Installation
35
+
36
+ With `uv`:
37
+
38
+ ```bash
39
+ uv tool install roadmap-cli
40
+ roadmap --version
41
+ ```
42
+
43
+ With `pipx`:
44
+
45
+ ```bash
46
+ pipx install roadmap-cli
47
+ roadmap --version
48
+ ```
49
+
50
+ Or in a virtual environment:
51
+
52
+ ```bash
53
+ python3.12 -m venv .venv
54
+ source .venv/bin/activate
55
+ pip install roadmap-cli
56
+ roadmap --version
57
+ ```
58
+
59
+ For development:
60
+
61
+ ```bash
62
+ git clone https://github.com/shanewilkins/roadmap.git
63
+ cd roadmap
64
+ uv sync --all-extras --locked
65
+ uv run roadmap --help
66
+ ```
67
+
68
+ ## Quick start
69
+
70
+ Initialize a repository and create work:
71
+
72
+ ```bash
73
+ cd my-project
74
+ roadmap init --project-name "My project"
75
+ roadmap issue create --title "Fix login timeout" --priority high
76
+ roadmap issue list
77
+ ```
78
+
79
+ Use the ID printed by `issue create` to inspect and update the issue:
80
+
81
+ ```bash
82
+ roadmap issue view <issue-id>
83
+ roadmap issue update <issue-id> --status in-progress
84
+ roadmap issue progress <issue-id> 50
85
+ roadmap issue comment add <issue-id> "Reproduced and isolated the cause."
86
+ roadmap issue close <issue-id> --reason "Fixed and verified"
87
+ ```
88
+
89
+ Organize delivery:
90
+
91
+ ```bash
92
+ roadmap project create --title "Web application"
93
+ roadmap milestone create --title "0.2" --due-date 2026-09-30
94
+ roadmap milestone assign <issue-id> "0.2"
95
+ roadmap milestone view "0.2"
96
+ ```
97
+
98
+ Query or export data:
99
+
100
+ ```bash
101
+ roadmap today
102
+ roadmap status --format json
103
+ roadmap issue list --status blocked --format json
104
+ roadmap data export --format csv --output roadmap.csv
105
+ roadmap health --format json
106
+ ```
107
+
108
+ Run `roadmap <command> --help` for the exact options supported by the installed
109
+ version.
110
+
111
+ ## Migrating an existing workspace
112
+
113
+ The 0.2 development line upgrades 0.1.1 workspaces explicitly. Preview the
114
+ complete validated write set first, then confirm the migration:
115
+
116
+ ```bash
117
+ roadmap migrate --dry-run
118
+ roadmap migrate --yes
119
+ ```
120
+
121
+ Migration preserves existing IDs and user-authored content, moves canonical
122
+ documents to flat stable-ID paths, externalizes user preferences, and rebuilds
123
+ SQLite from canonical files. Resolve every reported conflict before retrying;
124
+ ordinary reads never migrate files automatically. Follow the complete
125
+ [0.2 migration guide](docs/user_guide/MIGRATING_TO_0_2.md) before upgrading.
126
+
127
+ ## Collaborating through Git
128
+
129
+ Roadmap data is shared the same way as source code:
130
+
131
+ ```bash
132
+ git add .roadmap/
133
+ git commit -m "Update project roadmap"
134
+ git pull --rebase
135
+ git push
136
+ ```
137
+
138
+ Roadmap 0.2 keeps explicit local Git conveniences such as `roadmap git status`,
139
+ `roadmap git branch <issue-id>`, and `roadmap git link <issue-id>`. It does not
140
+ install hooks, interpret commit prose to mutate issue state, store provider
141
+ credentials, or synchronize directly with GitHub or another issue service.
142
+
143
+ The 0.2 codebase removes the experimental 0.1.1 remote-sync, provider, and
144
+ automatic-hook commands. Use normal Git commands for collaboration. See the
145
+ [0.2 removal guide](docs/user_guide/REMOTE_SYNC_REMOVAL_0_2.md) before upgrading
146
+ an existing workspace.
147
+
148
+ ## Data ownership and recovery
149
+
150
+ Canonical Markdown and YAML are the durable data. SQLite is a local search and
151
+ validation projection, not a second source of truth and not a remote sync
152
+ target. Projection rebuild and canonical-file recovery are explicit and
153
+ testable.
154
+
155
+ Keep `.roadmap/` versioned and make a normal Git commit before running the 0.2
156
+ migration. Do not treat the internal SQLite schema as a public API.
157
+
158
+ ## Documentation
159
+
160
+ - [Quick start](docs/user_guide/QUICK_START.md)
161
+ - [Installation](docs/user_guide/INSTALLATION.md)
162
+ - [Workflows](docs/user_guide/WORKFLOWS.md)
163
+ - [FAQ](docs/user_guide/FAQ.md)
164
+ - [0.2 migration guide](docs/user_guide/MIGRATING_TO_0_2.md)
165
+ - [Architecture decisions](docs/architecture/README.md)
166
+ - [Refactor case study](docs/architecture/portfolio-case-study.md)
167
+ - [0.2 release checklist](docs/releases/0.2.0-checklist.md)
168
+ - [Requirements register](docs/requirements/README.md)
169
+ - [Project governance](docs/governance/README.md)
170
+ - [Security policy](SECURITY.md)
171
+ - [Contributing guide](CONTRIBUTING.md)
172
+
173
+ The old GitHub and milestone synchronization guides describe experimental
174
+ 0.1.1 behavior and are retained only as migration history; they are not the 0.2
175
+ product direction.
176
+
177
+ ## Project status
178
+
179
+ Roadmap 0.2.0 is the result of thirteen independently verified refactor phases.
180
+ See the
181
+ [execution plan](docs/architecture/refactor-execution-plan.md) and published
182
+ [checkpoint reports](docs/architecture/README.md#execution-checkpoints).
183
+
184
+ ## License
185
+
186
+ [MIT](LICENSE.md)
@@ -0,0 +1,147 @@
1
+ [build-system]
2
+ requires = ["hatchling>=1.24"]
3
+ build-backend = "hatchling.build"
4
+
5
+ [project]
6
+ # ============================================================================
7
+ # ROADMAP CLI - Local Project Management Tool
8
+ # ============================================================================
9
+ # USER INSTALLATION: uv tool install roadmap-cli
10
+ # Installs the CLI and runtime dependencies in an isolated environment.
11
+ #
12
+ # DEVELOPMENT INSTALLATION: uv sync --all-extras --locked
13
+ # Installs the locked runtime and development dependency sets.
14
+ # ============================================================================
15
+ name = "roadmap-cli"
16
+ version = "0.2.0"
17
+ description = "Git-native command line tool for local project roadmap management"
18
+ readme = "README.md"
19
+ requires-python = ">=3.12,<4.0"
20
+ license = {text = "MIT"}
21
+ authors = [{name = "Shane Wilkins"}]
22
+ keywords = [
23
+ "cli",
24
+ "roadmap",
25
+ "planning",
26
+ "project-management",
27
+ "milestone",
28
+ "issue-tracking",
29
+ "git",
30
+ "offline",
31
+ "productivity"
32
+ ]
33
+ classifiers = [
34
+ "Development Status :: 4 - Beta",
35
+ "Intended Audience :: Developers",
36
+ "Intended Audience :: Information Technology",
37
+ "Intended Audience :: System Administrators",
38
+ "License :: OSI Approved :: MIT License",
39
+ "Programming Language :: Python :: 3",
40
+ "Programming Language :: Python :: 3.12",
41
+ "Programming Language :: Python :: 3.13",
42
+ "Programming Language :: Python :: 3.14",
43
+ "Topic :: Software Development :: Libraries :: Python Modules",
44
+ "Topic :: Software Development :: Bug Tracking",
45
+ "Topic :: Software Development :: Version Control :: Git",
46
+ "Topic :: Office/Business :: Scheduling",
47
+ "Topic :: Utilities",
48
+ "Environment :: Console",
49
+ "Operating System :: MacOS",
50
+ "Operating System :: POSIX :: Linux"
51
+ ]
52
+ dependencies = [
53
+ "click>=8.4.0,<9.0.0",
54
+ "rich>=15.0.0,<16.0.0",
55
+ "pyyaml>=6.0.3,<7.0.0",
56
+ ]
57
+
58
+ [project.optional-dependencies]
59
+ dev = [
60
+ "pytest>=9.0.3",
61
+ "pytest-cov>=7.1.0",
62
+ "pytest-asyncio>=1.3.0",
63
+ "pytest-aiohttp>=1.1.0",
64
+ "ruff==0.16.4",
65
+ "pre-commit>=4.6.0",
66
+ "bandit[toml]>=1.9.4",
67
+ "radon>=6.0.1,<7.0.0",
68
+ "xenon>=0.9.3,<1.0.0",
69
+ "pytest-xdist>=3.8.0",
70
+ "pytest-benchmark>=5.2.3",
71
+ "pyright>=1.1.411",
72
+ "pytest-mock>=3.15.1",
73
+ ]
74
+
75
+ [project.urls]
76
+ Homepage = "https://github.com/shanewilkins/roadmap"
77
+ Repository = "https://github.com/shanewilkins/roadmap"
78
+ Issues = "https://github.com/shanewilkins/roadmap/issues"
79
+ Documentation = "https://github.com/shanewilkins/roadmap/tree/main/docs"
80
+
81
+ [project.scripts]
82
+ roadmap = "roadmap.bootstrap:main"
83
+
84
+ [tool.hatch.build]
85
+ exclude = [
86
+ "/.venv",
87
+ "/.venv/**",
88
+ "/.venv_release",
89
+ "/.venv_release/**",
90
+ "/venv",
91
+ "/venv/**",
92
+ "/build/**",
93
+ "/dist/**",
94
+ "/htmlcov/**",
95
+ "/.roadmap/**",
96
+ "/.import_linter_cache/**",
97
+ ]
98
+
99
+ [tool.hatch.build.targets.wheel]
100
+ packages = ["roadmap"]
101
+
102
+ [tool.hatch.build.targets.sdist]
103
+ include = [
104
+ "/roadmap/**",
105
+ "/README.md",
106
+ "/LICENSE.md",
107
+ "/CHANGELOG.md",
108
+ "/pyproject.toml",
109
+ ]
110
+
111
+ # Tool configurations have been moved to config/ directory:
112
+ # - ruff.toml: Linting and formatting rules
113
+ # - bandit.toml: Security scanning configuration
114
+ # - .coveragerc: Test coverage thresholds and exclusions
115
+ # - pyrightconfig.json: Type checking configuration
116
+
117
+ # Type checking is now handled by Pyright
118
+ # Configuration is in pyrightconfig.json
119
+
120
+ [tool.pytest.ini_options]
121
+ testpaths = ["tests"]
122
+ python_files = ["test_*.py"]
123
+ python_functions = ["test_*"]
124
+ addopts = "--tb=short --strict-markers -n auto --maxfail=3 --strict-config -ra"
125
+ markers = [
126
+ "unit: Unit tests (fast, no filesystem operations)",
127
+ "integration: Integration tests (slower, with filesystem operations)",
128
+ "filesystem: Tests that require real filesystem operations",
129
+ "slow: Slow tests that may be skipped in CI",
130
+ "performance: Performance-focused tests",
131
+ "mock_scanning: Tests with mocked repository scanning operations",
132
+ "no_xdist: Tests that should not run in parallel (disables xdist parallelization)"
133
+ ]
134
+ filterwarnings = [
135
+ "ignore::pytest_benchmark.logger.PytestBenchmarkWarning"
136
+ ]
137
+
138
+ [dependency-groups]
139
+ dev = [
140
+ "pytest-asyncio>=1.4.0",
141
+ "pytest-benchmark>=5.2.3",
142
+ "pytest-cov>=7.1.0",
143
+ "pytest-mock>=3.15.1",
144
+ "pytest-xdist>=3.8.0",
145
+ ]
146
+
147
+ # Coverage configuration moved to config/.coveragerc
@@ -0,0 +1,13 @@
1
+ """Roadmap CLI - A command line tool for creating and managing roadmaps."""
2
+
3
+ from importlib.metadata import PackageNotFoundError, version
4
+
5
+ # Installed artifacts read their distribution metadata; source checkouts use the
6
+ # matching fallback without importing the executable adapter as a side effect.
7
+ __version__ = "0.2.0"
8
+ try:
9
+ __version__ = version("roadmap-cli")
10
+ except PackageNotFoundError:
11
+ __version__ = "0.2.0"
12
+
13
+ __all__ = ["__version__"]
@@ -0,0 +1 @@
1
+ """Adapters for the CLI, local Git, documents, and SQLite projection."""
@@ -0,0 +1 @@
1
+ """Inbound adapters that translate user input into Application requests."""