kanbaroo 0.2.2__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 (308) hide show
  1. kanbaroo-0.2.2/.claude/settings.local.json +54 -0
  2. kanbaroo-0.2.2/.gitignore +62 -0
  3. kanbaroo-0.2.2/.python-version +1 -0
  4. kanbaroo-0.2.2/.trusty-cage-patches/kanberoo-rename/0001-chore-rename-project-from-kanberoo-to-kanbaroo.patch +14171 -0
  5. kanbaroo-0.2.2/CHANGELOG.md +252 -0
  6. kanbaroo-0.2.2/CLAUDE.md +332 -0
  7. kanbaroo-0.2.2/Dockerfile +15 -0
  8. kanbaroo-0.2.2/LICENSE +21 -0
  9. kanbaroo-0.2.2/Makefile +58 -0
  10. kanbaroo-0.2.2/PKG-INFO +240 -0
  11. kanbaroo-0.2.2/README.md +221 -0
  12. kanbaroo-0.2.2/docker-compose.yml +15 -0
  13. kanbaroo-0.2.2/docs/api-reference.md +755 -0
  14. kanbaroo-0.2.2/docs/future-skill-draft.md +222 -0
  15. kanbaroo-0.2.2/docs/mcp-setup.md +111 -0
  16. kanbaroo-0.2.2/docs/spec.md +786 -0
  17. kanbaroo-0.2.2/packages/kanbaroo-api/README.md +12 -0
  18. kanbaroo-0.2.2/packages/kanbaroo-api/pyproject.toml +31 -0
  19. kanbaroo-0.2.2/packages/kanbaroo-api/src/kanbaroo_api/__init__.py +14 -0
  20. kanbaroo-0.2.2/packages/kanbaroo-api/src/kanbaroo_api/app.py +120 -0
  21. kanbaroo-0.2.2/packages/kanbaroo-api/src/kanbaroo_api/auth.py +67 -0
  22. kanbaroo-0.2.2/packages/kanbaroo-api/src/kanbaroo_api/concurrency.py +60 -0
  23. kanbaroo-0.2.2/packages/kanbaroo-api/src/kanbaroo_api/db.py +56 -0
  24. kanbaroo-0.2.2/packages/kanbaroo-api/src/kanbaroo_api/errors.py +236 -0
  25. kanbaroo-0.2.2/packages/kanbaroo-api/src/kanbaroo_api/routers/__init__.py +8 -0
  26. kanbaroo-0.2.2/packages/kanbaroo-api/src/kanbaroo_api/routers/audit.py +110 -0
  27. kanbaroo-0.2.2/packages/kanbaroo-api/src/kanbaroo_api/routers/comments.py +154 -0
  28. kanbaroo-0.2.2/packages/kanbaroo-api/src/kanbaroo_api/routers/epics.py +264 -0
  29. kanbaroo-0.2.2/packages/kanbaroo-api/src/kanbaroo_api/routers/events_ws.py +212 -0
  30. kanbaroo-0.2.2/packages/kanbaroo-api/src/kanbaroo_api/routers/export.py +69 -0
  31. kanbaroo-0.2.2/packages/kanbaroo-api/src/kanbaroo_api/routers/linkages.py +105 -0
  32. kanbaroo-0.2.2/packages/kanbaroo-api/src/kanbaroo_api/routers/stories.py +339 -0
  33. kanbaroo-0.2.2/packages/kanbaroo-api/src/kanbaroo_api/routers/tags.py +157 -0
  34. kanbaroo-0.2.2/packages/kanbaroo-api/src/kanbaroo_api/routers/tokens.py +81 -0
  35. kanbaroo-0.2.2/packages/kanbaroo-api/src/kanbaroo_api/routers/workspaces.py +180 -0
  36. kanbaroo-0.2.2/packages/kanbaroo-api/src/kanbaroo_api/server.py +35 -0
  37. kanbaroo-0.2.2/packages/kanbaroo-api/tests/conftest.py +125 -0
  38. kanbaroo-0.2.2/packages/kanbaroo-api/tests/test_audit_api.py +236 -0
  39. kanbaroo-0.2.2/packages/kanbaroo-api/tests/test_comments_api.py +189 -0
  40. kanbaroo-0.2.2/packages/kanbaroo-api/tests/test_epics_api.py +380 -0
  41. kanbaroo-0.2.2/packages/kanbaroo-api/tests/test_errors.py +137 -0
  42. kanbaroo-0.2.2/packages/kanbaroo-api/tests/test_events_ws.py +98 -0
  43. kanbaroo-0.2.2/packages/kanbaroo-api/tests/test_export_api.py +80 -0
  44. kanbaroo-0.2.2/packages/kanbaroo-api/tests/test_linkages_api.py +210 -0
  45. kanbaroo-0.2.2/packages/kanbaroo-api/tests/test_stories_api.py +632 -0
  46. kanbaroo-0.2.2/packages/kanbaroo-api/tests/test_tags_api.py +218 -0
  47. kanbaroo-0.2.2/packages/kanbaroo-api/tests/test_tokens_api.py +127 -0
  48. kanbaroo-0.2.2/packages/kanbaroo-api/tests/test_web_ui.py +90 -0
  49. kanbaroo-0.2.2/packages/kanbaroo-api/tests/test_workspaces_api.py +366 -0
  50. kanbaroo-0.2.2/packages/kanbaroo-cli/README.md +13 -0
  51. kanbaroo-0.2.2/packages/kanbaroo-cli/pyproject.toml +28 -0
  52. kanbaroo-0.2.2/packages/kanbaroo-cli/src/kanbaroo_cli/__init__.py +5 -0
  53. kanbaroo-0.2.2/packages/kanbaroo-cli/src/kanbaroo_cli/app.py +114 -0
  54. kanbaroo-0.2.2/packages/kanbaroo-cli/src/kanbaroo_cli/client.py +304 -0
  55. kanbaroo-0.2.2/packages/kanbaroo-cli/src/kanbaroo_cli/commands/__init__.py +6 -0
  56. kanbaroo-0.2.2/packages/kanbaroo-cli/src/kanbaroo_cli/commands/audit.py +123 -0
  57. kanbaroo-0.2.2/packages/kanbaroo-cli/src/kanbaroo_cli/commands/backup.py +78 -0
  58. kanbaroo-0.2.2/packages/kanbaroo-cli/src/kanbaroo_cli/commands/epic.py +323 -0
  59. kanbaroo-0.2.2/packages/kanbaroo-cli/src/kanbaroo_cli/commands/export.py +81 -0
  60. kanbaroo-0.2.2/packages/kanbaroo-cli/src/kanbaroo_cli/commands/init.py +160 -0
  61. kanbaroo-0.2.2/packages/kanbaroo-cli/src/kanbaroo_cli/commands/server.py +133 -0
  62. kanbaroo-0.2.2/packages/kanbaroo-cli/src/kanbaroo_cli/commands/story.py +627 -0
  63. kanbaroo-0.2.2/packages/kanbaroo-cli/src/kanbaroo_cli/commands/tag.py +252 -0
  64. kanbaroo-0.2.2/packages/kanbaroo-cli/src/kanbaroo_cli/commands/token.py +150 -0
  65. kanbaroo-0.2.2/packages/kanbaroo-cli/src/kanbaroo_cli/commands/workspace.py +263 -0
  66. kanbaroo-0.2.2/packages/kanbaroo-cli/src/kanbaroo_cli/config.py +233 -0
  67. kanbaroo-0.2.2/packages/kanbaroo-cli/src/kanbaroo_cli/context.py +104 -0
  68. kanbaroo-0.2.2/packages/kanbaroo-cli/src/kanbaroo_cli/rendering.py +83 -0
  69. kanbaroo-0.2.2/packages/kanbaroo-cli/src/kanbaroo_cli/resolvers.py +185 -0
  70. kanbaroo-0.2.2/packages/kanbaroo-cli/src/kanbaroo_cli/similar.py +67 -0
  71. kanbaroo-0.2.2/packages/kanbaroo-cli/tests/conftest.py +222 -0
  72. kanbaroo-0.2.2/packages/kanbaroo-cli/tests/test_audit.py +101 -0
  73. kanbaroo-0.2.2/packages/kanbaroo-cli/tests/test_backup.py +81 -0
  74. kanbaroo-0.2.2/packages/kanbaroo-cli/tests/test_epic.py +343 -0
  75. kanbaroo-0.2.2/packages/kanbaroo-cli/tests/test_export.py +83 -0
  76. kanbaroo-0.2.2/packages/kanbaroo-cli/tests/test_init.py +134 -0
  77. kanbaroo-0.2.2/packages/kanbaroo-cli/tests/test_server.py +154 -0
  78. kanbaroo-0.2.2/packages/kanbaroo-cli/tests/test_story.py +728 -0
  79. kanbaroo-0.2.2/packages/kanbaroo-cli/tests/test_tag.py +260 -0
  80. kanbaroo-0.2.2/packages/kanbaroo-cli/tests/test_token.py +96 -0
  81. kanbaroo-0.2.2/packages/kanbaroo-cli/tests/test_version.py +80 -0
  82. kanbaroo-0.2.2/packages/kanbaroo-cli/tests/test_workspace.py +514 -0
  83. kanbaroo-0.2.2/packages/kanbaroo-core/README.md +13 -0
  84. kanbaroo-0.2.2/packages/kanbaroo-core/alembic/env.py +70 -0
  85. kanbaroo-0.2.2/packages/kanbaroo-core/alembic/script.py.mako +26 -0
  86. kanbaroo-0.2.2/packages/kanbaroo-core/alembic/versions/0001_initial_schema.py +437 -0
  87. kanbaroo-0.2.2/packages/kanbaroo-core/alembic.ini +39 -0
  88. kanbaroo-0.2.2/packages/kanbaroo-core/pyproject.toml +25 -0
  89. kanbaroo-0.2.2/packages/kanbaroo-core/src/kanbaroo_core/__init__.py +59 -0
  90. kanbaroo-0.2.2/packages/kanbaroo-core/src/kanbaroo_core/actor.py +31 -0
  91. kanbaroo-0.2.2/packages/kanbaroo-core/src/kanbaroo_core/auth.py +121 -0
  92. kanbaroo-0.2.2/packages/kanbaroo-core/src/kanbaroo_core/db.py +66 -0
  93. kanbaroo-0.2.2/packages/kanbaroo-core/src/kanbaroo_core/enums.py +127 -0
  94. kanbaroo-0.2.2/packages/kanbaroo-core/src/kanbaroo_core/events.py +214 -0
  95. kanbaroo-0.2.2/packages/kanbaroo-core/src/kanbaroo_core/id_generator.py +36 -0
  96. kanbaroo-0.2.2/packages/kanbaroo-core/src/kanbaroo_core/migrations.py +67 -0
  97. kanbaroo-0.2.2/packages/kanbaroo-core/src/kanbaroo_core/models/__init__.py +38 -0
  98. kanbaroo-0.2.2/packages/kanbaroo-core/src/kanbaroo_core/models/api_token.py +42 -0
  99. kanbaroo-0.2.2/packages/kanbaroo-core/src/kanbaroo_core/models/audit.py +67 -0
  100. kanbaroo-0.2.2/packages/kanbaroo-core/src/kanbaroo_core/models/base.py +63 -0
  101. kanbaroo-0.2.2/packages/kanbaroo-core/src/kanbaroo_core/models/comment.py +64 -0
  102. kanbaroo-0.2.2/packages/kanbaroo-core/src/kanbaroo_core/models/epic.py +50 -0
  103. kanbaroo-0.2.2/packages/kanbaroo-core/src/kanbaroo_core/models/linkage.py +85 -0
  104. kanbaroo-0.2.2/packages/kanbaroo-core/src/kanbaroo_core/models/story.py +104 -0
  105. kanbaroo-0.2.2/packages/kanbaroo-core/src/kanbaroo_core/models/story_tag.py +30 -0
  106. kanbaroo-0.2.2/packages/kanbaroo-core/src/kanbaroo_core/models/tag.py +34 -0
  107. kanbaroo-0.2.2/packages/kanbaroo-core/src/kanbaroo_core/models/workspace.py +59 -0
  108. kanbaroo-0.2.2/packages/kanbaroo-core/src/kanbaroo_core/queries.py +27 -0
  109. kanbaroo-0.2.2/packages/kanbaroo-core/src/kanbaroo_core/schemas/__init__.py +65 -0
  110. kanbaroo-0.2.2/packages/kanbaroo-core/src/kanbaroo_core/schemas/_base.py +29 -0
  111. kanbaroo-0.2.2/packages/kanbaroo-core/src/kanbaroo_core/schemas/api_token.py +55 -0
  112. kanbaroo-0.2.2/packages/kanbaroo-core/src/kanbaroo_core/schemas/audit.py +56 -0
  113. kanbaroo-0.2.2/packages/kanbaroo-core/src/kanbaroo_core/schemas/comment.py +41 -0
  114. kanbaroo-0.2.2/packages/kanbaroo-core/src/kanbaroo_core/schemas/epic.py +44 -0
  115. kanbaroo-0.2.2/packages/kanbaroo-core/src/kanbaroo_core/schemas/linkage.py +33 -0
  116. kanbaroo-0.2.2/packages/kanbaroo-core/src/kanbaroo_core/schemas/story.py +77 -0
  117. kanbaroo-0.2.2/packages/kanbaroo-core/src/kanbaroo_core/schemas/tag.py +37 -0
  118. kanbaroo-0.2.2/packages/kanbaroo-core/src/kanbaroo_core/schemas/workspace.py +65 -0
  119. kanbaroo-0.2.2/packages/kanbaroo-core/src/kanbaroo_core/services/__init__.py +68 -0
  120. kanbaroo-0.2.2/packages/kanbaroo-core/src/kanbaroo_core/services/audit.py +228 -0
  121. kanbaroo-0.2.2/packages/kanbaroo-core/src/kanbaroo_core/services/comments.py +287 -0
  122. kanbaroo-0.2.2/packages/kanbaroo-core/src/kanbaroo_core/services/epics.py +432 -0
  123. kanbaroo-0.2.2/packages/kanbaroo-core/src/kanbaroo_core/services/events.py +109 -0
  124. kanbaroo-0.2.2/packages/kanbaroo-core/src/kanbaroo_core/services/exceptions.py +105 -0
  125. kanbaroo-0.2.2/packages/kanbaroo-core/src/kanbaroo_core/services/export.py +376 -0
  126. kanbaroo-0.2.2/packages/kanbaroo-core/src/kanbaroo_core/services/linkages.py +392 -0
  127. kanbaroo-0.2.2/packages/kanbaroo-core/src/kanbaroo_core/services/stories.py +531 -0
  128. kanbaroo-0.2.2/packages/kanbaroo-core/src/kanbaroo_core/services/tags.py +484 -0
  129. kanbaroo-0.2.2/packages/kanbaroo-core/src/kanbaroo_core/services/tokens.py +83 -0
  130. kanbaroo-0.2.2/packages/kanbaroo-core/src/kanbaroo_core/services/workspaces.py +313 -0
  131. kanbaroo-0.2.2/packages/kanbaroo-core/src/kanbaroo_core/text.py +34 -0
  132. kanbaroo-0.2.2/packages/kanbaroo-core/src/kanbaroo_core/time.py +20 -0
  133. kanbaroo-0.2.2/packages/kanbaroo-core/tests/__init__.py +0 -0
  134. kanbaroo-0.2.2/packages/kanbaroo-core/tests/conftest.py +49 -0
  135. kanbaroo-0.2.2/packages/kanbaroo-core/tests/test_actor.py +50 -0
  136. kanbaroo-0.2.2/packages/kanbaroo-core/tests/test_auth.py +176 -0
  137. kanbaroo-0.2.2/packages/kanbaroo-core/tests/test_events.py +187 -0
  138. kanbaroo-0.2.2/packages/kanbaroo-core/tests/test_id_generator.py +61 -0
  139. kanbaroo-0.2.2/packages/kanbaroo-core/tests/test_ids.py +68 -0
  140. kanbaroo-0.2.2/packages/kanbaroo-core/tests/test_services_audit.py +109 -0
  141. kanbaroo-0.2.2/packages/kanbaroo-core/tests/test_services_audit_queries.py +155 -0
  142. kanbaroo-0.2.2/packages/kanbaroo-core/tests/test_services_comments.py +333 -0
  143. kanbaroo-0.2.2/packages/kanbaroo-core/tests/test_services_epics.py +464 -0
  144. kanbaroo-0.2.2/packages/kanbaroo-core/tests/test_services_events.py +658 -0
  145. kanbaroo-0.2.2/packages/kanbaroo-core/tests/test_services_export.py +303 -0
  146. kanbaroo-0.2.2/packages/kanbaroo-core/tests/test_services_linkages.py +466 -0
  147. kanbaroo-0.2.2/packages/kanbaroo-core/tests/test_services_similar.py +251 -0
  148. kanbaroo-0.2.2/packages/kanbaroo-core/tests/test_services_stories.py +676 -0
  149. kanbaroo-0.2.2/packages/kanbaroo-core/tests/test_services_tags.py +354 -0
  150. kanbaroo-0.2.2/packages/kanbaroo-core/tests/test_services_tokens.py +171 -0
  151. kanbaroo-0.2.2/packages/kanbaroo-core/tests/test_services_workspaces.py +321 -0
  152. kanbaroo-0.2.2/packages/kanbaroo-core/tests/test_soft_delete.py +71 -0
  153. kanbaroo-0.2.2/packages/kanbaroo-core/tests/test_story_state.py +76 -0
  154. kanbaroo-0.2.2/packages/kanbaroo-core/tests/test_text.py +66 -0
  155. kanbaroo-0.2.2/packages/kanbaroo-core/tests/test_timestamps.py +40 -0
  156. kanbaroo-0.2.2/packages/kanbaroo-core/tests/test_unique_constraints.py +145 -0
  157. kanbaroo-0.2.2/packages/kanbaroo-core/tests/test_versioning.py +62 -0
  158. kanbaroo-0.2.2/packages/kanbaroo-mcp/README.md +11 -0
  159. kanbaroo-0.2.2/packages/kanbaroo-mcp/pyproject.toml +27 -0
  160. kanbaroo-0.2.2/packages/kanbaroo-mcp/src/kanbaroo_mcp/__init__.py +5 -0
  161. kanbaroo-0.2.2/packages/kanbaroo-mcp/src/kanbaroo_mcp/client.py +294 -0
  162. kanbaroo-0.2.2/packages/kanbaroo-mcp/src/kanbaroo_mcp/concurrency.py +67 -0
  163. kanbaroo-0.2.2/packages/kanbaroo-mcp/src/kanbaroo_mcp/config.py +208 -0
  164. kanbaroo-0.2.2/packages/kanbaroo-mcp/src/kanbaroo_mcp/resolver.py +131 -0
  165. kanbaroo-0.2.2/packages/kanbaroo-mcp/src/kanbaroo_mcp/server.py +335 -0
  166. kanbaroo-0.2.2/packages/kanbaroo-mcp/src/kanbaroo_mcp/tools/__init__.py +50 -0
  167. kanbaroo-0.2.2/packages/kanbaroo-mcp/src/kanbaroo_mcp/tools/audit.py +105 -0
  168. kanbaroo-0.2.2/packages/kanbaroo-mcp/src/kanbaroo_mcp/tools/base.py +79 -0
  169. kanbaroo-0.2.2/packages/kanbaroo-mcp/src/kanbaroo_mcp/tools/comments.py +79 -0
  170. kanbaroo-0.2.2/packages/kanbaroo-mcp/src/kanbaroo_mcp/tools/epics.py +176 -0
  171. kanbaroo-0.2.2/packages/kanbaroo-mcp/src/kanbaroo_mcp/tools/linkages.py +121 -0
  172. kanbaroo-0.2.2/packages/kanbaroo-mcp/src/kanbaroo_mcp/tools/stories.py +347 -0
  173. kanbaroo-0.2.2/packages/kanbaroo-mcp/src/kanbaroo_mcp/tools/tags.py +165 -0
  174. kanbaroo-0.2.2/packages/kanbaroo-mcp/src/kanbaroo_mcp/tools/workspaces.py +103 -0
  175. kanbaroo-0.2.2/packages/kanbaroo-mcp/tests/conftest.py +252 -0
  176. kanbaroo-0.2.2/packages/kanbaroo-mcp/tests/test_audit_tools.py +96 -0
  177. kanbaroo-0.2.2/packages/kanbaroo-mcp/tests/test_comment_tools.py +81 -0
  178. kanbaroo-0.2.2/packages/kanbaroo-mcp/tests/test_config.py +140 -0
  179. kanbaroo-0.2.2/packages/kanbaroo-mcp/tests/test_epic_tools.py +124 -0
  180. kanbaroo-0.2.2/packages/kanbaroo-mcp/tests/test_linkage_tools.py +76 -0
  181. kanbaroo-0.2.2/packages/kanbaroo-mcp/tests/test_mcp_server.py +112 -0
  182. kanbaroo-0.2.2/packages/kanbaroo-mcp/tests/test_registry.py +103 -0
  183. kanbaroo-0.2.2/packages/kanbaroo-mcp/tests/test_story_tools.py +410 -0
  184. kanbaroo-0.2.2/packages/kanbaroo-mcp/tests/test_tag_tools.py +123 -0
  185. kanbaroo-0.2.2/packages/kanbaroo-mcp/tests/test_workspace_tools.py +96 -0
  186. kanbaroo-0.2.2/packages/kanbaroo-tui/README.md +14 -0
  187. kanbaroo-0.2.2/packages/kanbaroo-tui/pyproject.toml +27 -0
  188. kanbaroo-0.2.2/packages/kanbaroo-tui/src/kanbaroo_tui/__init__.py +5 -0
  189. kanbaroo-0.2.2/packages/kanbaroo-tui/src/kanbaroo_tui/app.py +405 -0
  190. kanbaroo-0.2.2/packages/kanbaroo-tui/src/kanbaroo_tui/client.py +248 -0
  191. kanbaroo-0.2.2/packages/kanbaroo-tui/src/kanbaroo_tui/config.py +116 -0
  192. kanbaroo-0.2.2/packages/kanbaroo-tui/src/kanbaroo_tui/editor.py +111 -0
  193. kanbaroo-0.2.2/packages/kanbaroo-tui/src/kanbaroo_tui/messages.py +131 -0
  194. kanbaroo-0.2.2/packages/kanbaroo-tui/src/kanbaroo_tui/screens/__init__.py +11 -0
  195. kanbaroo-0.2.2/packages/kanbaroo-tui/src/kanbaroo_tui/screens/audit_feed.py +291 -0
  196. kanbaroo-0.2.2/packages/kanbaroo-tui/src/kanbaroo_tui/screens/board.py +965 -0
  197. kanbaroo-0.2.2/packages/kanbaroo-tui/src/kanbaroo_tui/screens/epic_detail.py +692 -0
  198. kanbaroo-0.2.2/packages/kanbaroo-tui/src/kanbaroo_tui/screens/epic_list.py +308 -0
  199. kanbaroo-0.2.2/packages/kanbaroo-tui/src/kanbaroo_tui/screens/search.py +422 -0
  200. kanbaroo-0.2.2/packages/kanbaroo-tui/src/kanbaroo_tui/screens/story_detail.py +920 -0
  201. kanbaroo-0.2.2/packages/kanbaroo-tui/src/kanbaroo_tui/screens/workspace_list.py +499 -0
  202. kanbaroo-0.2.2/packages/kanbaroo-tui/src/kanbaroo_tui/widgets/__init__.py +11 -0
  203. kanbaroo-0.2.2/packages/kanbaroo-tui/src/kanbaroo_tui/widgets/board_column.py +96 -0
  204. kanbaroo-0.2.2/packages/kanbaroo-tui/src/kanbaroo_tui/widgets/duplicate_confirm.py +136 -0
  205. kanbaroo-0.2.2/packages/kanbaroo-tui/src/kanbaroo_tui/widgets/help_modal.py +116 -0
  206. kanbaroo-0.2.2/packages/kanbaroo-tui/src/kanbaroo_tui/widgets/link_picker.py +241 -0
  207. kanbaroo-0.2.2/packages/kanbaroo-tui/src/kanbaroo_tui/widgets/story_card.py +183 -0
  208. kanbaroo-0.2.2/packages/kanbaroo-tui/src/kanbaroo_tui/widgets/tag_filter.py +156 -0
  209. kanbaroo-0.2.2/packages/kanbaroo-tui/src/kanbaroo_tui/widgets/tag_picker.py +186 -0
  210. kanbaroo-0.2.2/packages/kanbaroo-tui/src/kanbaroo_tui/ws.py +168 -0
  211. kanbaroo-0.2.2/packages/kanbaroo-tui/tests/__snapshots__/test_snapshots/test_snapshot_audit_feed.raw +219 -0
  212. kanbaroo-0.2.2/packages/kanbaroo-tui/tests/__snapshots__/test_snapshots/test_snapshot_board.raw +225 -0
  213. kanbaroo-0.2.2/packages/kanbaroo-tui/tests/__snapshots__/test_snapshots/test_snapshot_duplicate_confirm_modal.raw +154 -0
  214. kanbaroo-0.2.2/packages/kanbaroo-tui/tests/__snapshots__/test_snapshots/test_snapshot_epic_detail.raw +223 -0
  215. kanbaroo-0.2.2/packages/kanbaroo-tui/tests/__snapshots__/test_snapshots/test_snapshot_epic_list.raw +219 -0
  216. kanbaroo-0.2.2/packages/kanbaroo-tui/tests/__snapshots__/test_snapshots/test_snapshot_help_modal.raw +155 -0
  217. kanbaroo-0.2.2/packages/kanbaroo-tui/tests/__snapshots__/test_snapshots/test_snapshot_link_picker_modal.raw +158 -0
  218. kanbaroo-0.2.2/packages/kanbaroo-tui/tests/__snapshots__/test_snapshots/test_snapshot_quit_confirm_modal.raw +154 -0
  219. kanbaroo-0.2.2/packages/kanbaroo-tui/tests/__snapshots__/test_snapshots/test_snapshot_search.raw +222 -0
  220. kanbaroo-0.2.2/packages/kanbaroo-tui/tests/__snapshots__/test_snapshots/test_snapshot_story_detail_audit.raw +225 -0
  221. kanbaroo-0.2.2/packages/kanbaroo-tui/tests/__snapshots__/test_snapshots/test_snapshot_story_detail_comments.raw +228 -0
  222. kanbaroo-0.2.2/packages/kanbaroo-tui/tests/__snapshots__/test_snapshots/test_snapshot_story_detail_description.raw +228 -0
  223. kanbaroo-0.2.2/packages/kanbaroo-tui/tests/__snapshots__/test_snapshots/test_snapshot_story_detail_linkages.raw +225 -0
  224. kanbaroo-0.2.2/packages/kanbaroo-tui/tests/__snapshots__/test_snapshots/test_snapshot_story_detail_tags.raw +226 -0
  225. kanbaroo-0.2.2/packages/kanbaroo-tui/tests/__snapshots__/test_snapshots/test_snapshot_tag_filter_modal.raw +158 -0
  226. kanbaroo-0.2.2/packages/kanbaroo-tui/tests/__snapshots__/test_snapshots/test_snapshot_tag_picker_modal.raw +158 -0
  227. kanbaroo-0.2.2/packages/kanbaroo-tui/tests/__snapshots__/test_snapshots/test_snapshot_workspace_list.raw +219 -0
  228. kanbaroo-0.2.2/packages/kanbaroo-tui/tests/conftest.py +282 -0
  229. kanbaroo-0.2.2/packages/kanbaroo-tui/tests/test_audit_feed.py +215 -0
  230. kanbaroo-0.2.2/packages/kanbaroo-tui/tests/test_board.py +547 -0
  231. kanbaroo-0.2.2/packages/kanbaroo-tui/tests/test_board_duplicate_confirm.py +183 -0
  232. kanbaroo-0.2.2/packages/kanbaroo-tui/tests/test_board_filter_and_sort.py +276 -0
  233. kanbaroo-0.2.2/packages/kanbaroo-tui/tests/test_board_new_story.py +512 -0
  234. kanbaroo-0.2.2/packages/kanbaroo-tui/tests/test_cage_alpha_fixes.py +1152 -0
  235. kanbaroo-0.2.2/packages/kanbaroo-tui/tests/test_editor.py +168 -0
  236. kanbaroo-0.2.2/packages/kanbaroo-tui/tests/test_epic_detail.py +483 -0
  237. kanbaroo-0.2.2/packages/kanbaroo-tui/tests/test_epic_list.py +203 -0
  238. kanbaroo-0.2.2/packages/kanbaroo-tui/tests/test_link_picker.py +275 -0
  239. kanbaroo-0.2.2/packages/kanbaroo-tui/tests/test_search.py +282 -0
  240. kanbaroo-0.2.2/packages/kanbaroo-tui/tests/test_snapshots.py +831 -0
  241. kanbaroo-0.2.2/packages/kanbaroo-tui/tests/test_story_detail.py +883 -0
  242. kanbaroo-0.2.2/packages/kanbaroo-tui/tests/test_workspace_list.py +212 -0
  243. kanbaroo-0.2.2/packages/kanbaroo-tui/tests/test_ws_subscriber.py +57 -0
  244. kanbaroo-0.2.2/packages/kanbaroo-web/README.md +35 -0
  245. kanbaroo-0.2.2/packages/kanbaroo-web/frontend/.gitignore +24 -0
  246. kanbaroo-0.2.2/packages/kanbaroo-web/frontend/index.html +12 -0
  247. kanbaroo-0.2.2/packages/kanbaroo-web/frontend/package-lock.json +3815 -0
  248. kanbaroo-0.2.2/packages/kanbaroo-web/frontend/package.json +38 -0
  249. kanbaroo-0.2.2/packages/kanbaroo-web/frontend/src/App.tsx +52 -0
  250. kanbaroo-0.2.2/packages/kanbaroo-web/frontend/src/api/client.test.ts +72 -0
  251. kanbaroo-0.2.2/packages/kanbaroo-web/frontend/src/api/client.ts +30 -0
  252. kanbaroo-0.2.2/packages/kanbaroo-web/frontend/src/components/AppHeader.test.tsx +62 -0
  253. kanbaroo-0.2.2/packages/kanbaroo-web/frontend/src/components/AppHeader.tsx +96 -0
  254. kanbaroo-0.2.2/packages/kanbaroo-web/frontend/src/components/AuditTrail.test.tsx +112 -0
  255. kanbaroo-0.2.2/packages/kanbaroo-web/frontend/src/components/AuditTrail.tsx +190 -0
  256. kanbaroo-0.2.2/packages/kanbaroo-web/frontend/src/components/CommentComposer.tsx +63 -0
  257. kanbaroo-0.2.2/packages/kanbaroo-web/frontend/src/components/CommentThread.test.tsx +74 -0
  258. kanbaroo-0.2.2/packages/kanbaroo-web/frontend/src/components/CommentThread.tsx +219 -0
  259. kanbaroo-0.2.2/packages/kanbaroo-web/frontend/src/components/KeyboardHelpModal.tsx +52 -0
  260. kanbaroo-0.2.2/packages/kanbaroo-web/frontend/src/components/Modal.tsx +127 -0
  261. kanbaroo-0.2.2/packages/kanbaroo-web/frontend/src/components/StoryCreateModal.test.tsx +184 -0
  262. kanbaroo-0.2.2/packages/kanbaroo-web/frontend/src/components/StoryCreateModal.tsx +167 -0
  263. kanbaroo-0.2.2/packages/kanbaroo-web/frontend/src/components/TagManager.test.tsx +165 -0
  264. kanbaroo-0.2.2/packages/kanbaroo-web/frontend/src/components/TagManager.tsx +299 -0
  265. kanbaroo-0.2.2/packages/kanbaroo-web/frontend/src/hooks/useEventStream.test.tsx +402 -0
  266. kanbaroo-0.2.2/packages/kanbaroo-web/frontend/src/hooks/useEventStream.ts +205 -0
  267. kanbaroo-0.2.2/packages/kanbaroo-web/frontend/src/hooks/useHotkey.test.tsx +82 -0
  268. kanbaroo-0.2.2/packages/kanbaroo-web/frontend/src/hooks/useHotkey.ts +50 -0
  269. kanbaroo-0.2.2/packages/kanbaroo-web/frontend/src/index.css +1121 -0
  270. kanbaroo-0.2.2/packages/kanbaroo-web/frontend/src/lib/stateMachine.test.ts +118 -0
  271. kanbaroo-0.2.2/packages/kanbaroo-web/frontend/src/lib/stateMachine.ts +56 -0
  272. kanbaroo-0.2.2/packages/kanbaroo-web/frontend/src/main.tsx +30 -0
  273. kanbaroo-0.2.2/packages/kanbaroo-web/frontend/src/queries/audit.test.tsx +78 -0
  274. kanbaroo-0.2.2/packages/kanbaroo-web/frontend/src/queries/audit.ts +19 -0
  275. kanbaroo-0.2.2/packages/kanbaroo-web/frontend/src/queries/comments.test.tsx +244 -0
  276. kanbaroo-0.2.2/packages/kanbaroo-web/frontend/src/queries/comments.ts +181 -0
  277. kanbaroo-0.2.2/packages/kanbaroo-web/frontend/src/queries/epics.ts +19 -0
  278. kanbaroo-0.2.2/packages/kanbaroo-web/frontend/src/queries/http.ts +55 -0
  279. kanbaroo-0.2.2/packages/kanbaroo-web/frontend/src/queries/stories.test.tsx +373 -0
  280. kanbaroo-0.2.2/packages/kanbaroo-web/frontend/src/queries/stories.ts +308 -0
  281. kanbaroo-0.2.2/packages/kanbaroo-web/frontend/src/queries/tags.ts +68 -0
  282. kanbaroo-0.2.2/packages/kanbaroo-web/frontend/src/queries/workspaces.test.tsx +134 -0
  283. kanbaroo-0.2.2/packages/kanbaroo-web/frontend/src/queries/workspaces.ts +39 -0
  284. kanbaroo-0.2.2/packages/kanbaroo-web/frontend/src/routes/Board.test.tsx +602 -0
  285. kanbaroo-0.2.2/packages/kanbaroo-web/frontend/src/routes/Board.tsx +594 -0
  286. kanbaroo-0.2.2/packages/kanbaroo-web/frontend/src/routes/Login.test.tsx +79 -0
  287. kanbaroo-0.2.2/packages/kanbaroo-web/frontend/src/routes/Login.tsx +90 -0
  288. kanbaroo-0.2.2/packages/kanbaroo-web/frontend/src/routes/StoryDetail.test.tsx +326 -0
  289. kanbaroo-0.2.2/packages/kanbaroo-web/frontend/src/routes/StoryDetail.tsx +565 -0
  290. kanbaroo-0.2.2/packages/kanbaroo-web/frontend/src/routes/WorkspaceList.test.tsx +146 -0
  291. kanbaroo-0.2.2/packages/kanbaroo-web/frontend/src/routes/WorkspaceList.tsx +143 -0
  292. kanbaroo-0.2.2/packages/kanbaroo-web/frontend/src/state/auth.ts +24 -0
  293. kanbaroo-0.2.2/packages/kanbaroo-web/frontend/src/test/render.tsx +39 -0
  294. kanbaroo-0.2.2/packages/kanbaroo-web/frontend/src/test/setup.ts +7 -0
  295. kanbaroo-0.2.2/packages/kanbaroo-web/frontend/src/types/api.ts +153 -0
  296. kanbaroo-0.2.2/packages/kanbaroo-web/frontend/tsconfig.app.json +25 -0
  297. kanbaroo-0.2.2/packages/kanbaroo-web/frontend/tsconfig.json +7 -0
  298. kanbaroo-0.2.2/packages/kanbaroo-web/frontend/tsconfig.node.json +24 -0
  299. kanbaroo-0.2.2/packages/kanbaroo-web/frontend/vite.config.ts +30 -0
  300. kanbaroo-0.2.2/packages/kanbaroo-web/pyproject.toml +24 -0
  301. kanbaroo-0.2.2/packages/kanbaroo-web/src/kanbaroo_web/__init__.py +31 -0
  302. kanbaroo-0.2.2/packages/kanbaroo-web/src/kanbaroo_web/dist/assets/index-BRAP-JGv.js +26 -0
  303. kanbaroo-0.2.2/packages/kanbaroo-web/src/kanbaroo_web/dist/assets/index-CbEJFySo.css +1 -0
  304. kanbaroo-0.2.2/packages/kanbaroo-web/src/kanbaroo_web/dist/index.html +13 -0
  305. kanbaroo-0.2.2/pyproject.toml +99 -0
  306. kanbaroo-0.2.2/scripts/build_api_reference.py +302 -0
  307. kanbaroo-0.2.2/src/kanbaroo/__init__.py +18 -0
  308. kanbaroo-0.2.2/uv.lock +1631 -0
@@ -0,0 +1,54 @@
1
+ {
2
+ "permissions": {
3
+ "allow": [
4
+ "Bash(git checkout *)",
5
+ "Bash(git pull *)",
6
+ "Bash(uv --version)",
7
+ "Bash(git commit *)",
8
+ "Bash(venv/bin/tc exists *)",
9
+ "Bash(venv/bin/tc create *)",
10
+ "Bash(venv/bin/tc launch *)",
11
+ "Bash(venv/bin/tc outbox *)",
12
+ "Bash(venv/bin/tc export *)",
13
+ "Bash(uv sync *)",
14
+ "Bash(uv run *)",
15
+ "Bash(venv/bin/tc destroy *)",
16
+ "Bash(git push *)",
17
+ "Bash(gh pr *)",
18
+ "Bash(git add *)",
19
+ "Bash(docker exec *)",
20
+ "Bash(venv/bin/tc logs *)",
21
+ "Read(//Users/areese/.claude/plugins/marketplaces/trusty-cage-plugin/plugins/trusty-cage/skills/cage-orchestrator/scripts/**)",
22
+ "Read(//Users/areese/.claude/plugins/cache/trusty-cage-plugin/trusty-cage/1.2.0/skills/cage-orchestrator/scripts/**)",
23
+ "Read(//Users/areese/.claude/plugins/marketplaces/trusty-cage-plugin/plugins/trusty-cage/skills/cage-orchestrator/**)",
24
+ "Bash(git stash *)",
25
+ "Bash(lsof *)",
26
+ "Bash(uv publish *)",
27
+ "Bash(uv build *)",
28
+ "Bash(make build *)",
29
+ "Bash(pipx --version)",
30
+ "Bash(pipx install *)",
31
+ "Bash(pipx list *)",
32
+ "Bash(pipx uninstall *)",
33
+ "Bash(git -C /Users/areese/projects/personal/kanberoo branch --show-current)",
34
+ "Bash(git -C /Users/areese/projects/personal/kanberoo status --short)",
35
+ "Bash(git -C /Users/areese/projects/personal/kanberoo branch -a)",
36
+ "Bash(git -C /Users/areese/projects/personal/kanberoo show docs/human-test-plan:docs/human-test-plan.md)",
37
+ "Bash(git -C /Users/areese/projects/personal/kanberoo log docs/human-test-plan --oneline)",
38
+ "Bash(git -C /Users/areese/projects/personal/kanberoo show docs/human-test-plan --stat)",
39
+ "Bash(git -C /Users/areese/projects/personal/kanberoo stash list)",
40
+ "Bash(git *)",
41
+ "Bash(venv/bin/tc diff *)",
42
+ "Bash(xargs -I {} bash -c 'echo \"--- {}\"; ls {} | head -20')",
43
+ "Bash(docker compose *)",
44
+ "Bash(docker volume *)",
45
+ "Bash(docker rm *)",
46
+ "Bash(kb --help)",
47
+ "Bash(kb server *)",
48
+ "Bash(make web-build *)",
49
+ "Bash(uv venv *)",
50
+ "Bash(python3 -c \"import json,sys; d=json.load\\(sys.stdin\\); print\\(f'latest: {d[\\\\\"info\\\\\"][\\\\\"version\\\\\"]}'\\); print\\(f'releases: {list\\(d[\\\\\"releases\\\\\"].keys\\(\\)\\)}'\\)\")",
51
+ "Bash(venv/bin/tc patch *)"
52
+ ]
53
+ }
54
+ }
@@ -0,0 +1,62 @@
1
+ # Ignore patterns for git.
2
+ # See: https://www.atlassian.com/git/tutorials/saving-changes/gitignore
3
+
4
+ # Don't track IDE stuff (Jetbrains, Fleet, VS Code)
5
+ .idea/
6
+ .fleet/
7
+ .vscode/
8
+
9
+ # Don't track .DS_Store (Mac Temp file)
10
+ .DS_Store
11
+
12
+ # Python bytecode and caches
13
+ __pycache__/
14
+ *.py[cod]
15
+ *$py.class
16
+
17
+ # Tooling caches
18
+ .mypy_cache/
19
+ .pytest_cache/
20
+ .ruff_cache/
21
+ .coverage
22
+ htmlcov/
23
+
24
+ # Build artifacts
25
+ build/
26
+ dist/
27
+ *.egg-info/
28
+ # Exception: kanbaroo-web ships its static bundle under src/.../dist/ and
29
+ # must be tracked so the wheel picks it up.
30
+ !packages/kanbaroo-web/src/kanbaroo_web/dist/
31
+ !packages/kanbaroo-web/src/kanbaroo_web/dist/**
32
+
33
+ # kanbaroo-web frontend (Vite + React build inputs; only the built dist
34
+ # under src/kanbaroo_web/dist/ is version-controlled).
35
+ packages/kanbaroo-web/frontend/node_modules/
36
+ packages/kanbaroo-web/frontend/dist/
37
+ packages/kanbaroo-web/frontend/.vite/
38
+ packages/kanbaroo-web/frontend/coverage/
39
+
40
+ # Don't track virtual environment subdirectories
41
+ virtualenv/
42
+ .venv/
43
+ venv/
44
+
45
+ # Ignore .env, which may hold sensitive variables / secrets
46
+ .env
47
+
48
+ # Cross-session scratch work tracking
49
+ TODO.md
50
+
51
+ # Human test plans (local scratch, not version-controlled)
52
+ test-plans/
53
+
54
+ # Publishing credentials (read by the Makefile's publish target)
55
+ set_creds*.sh
56
+
57
+ # Local Kanbaroo data (SQLite DBs, exports, backups)
58
+ data/
59
+ *.db
60
+ *.db-journal
61
+ *.db-shm
62
+ *.db-wal
@@ -0,0 +1 @@
1
+ 3.12