Commit Graph
100 Commits
Author SHA1 Message Date
Dave 3aa639b5b4 story-kit: queue 200_story_auto_prune_worktrees_for_archived_stories_in_watcher_sweep for merge 2026-02-26 14:22:23 +00:00
Dave 7d4fd8bc0d story-kit: done 202_story_make_agent_watchdog_interval_configurable_via_project_toml 2026-02-26 14:21:32 +00:00
Dave 8fc5cd263f story-kit: queue 207_story_rename_llm_provider_labels_claude_pty_to_claude_code_anthropic_to_anthropic_api for QA 2026-02-26 14:21:21 +00:00
Dave 864421dc75 story-kit: queue 202_story_make_agent_watchdog_interval_configurable_via_project_toml for merge 2026-02-26 14:17:43 +00:00
Dave 557229fd9e story-kit: done 205_bug_mergemaster_marks_stories_as_done_without_squash_merging_code 2026-02-26 14:17:26 +00:00
Dave bf5cc860b4 story-kit: queue 200_story_auto_prune_worktrees_for_archived_stories_in_watcher_sweep for QA 2026-02-26 14:17:05 +00:00
DaveandClaude Opus 4.6 81065a3ada fix: replace fast-forward with cherry-pick in mergemaster squash-merge
The mergemaster pipeline used git merge --ff-only to apply the squash
commit from a merge-queue branch onto master. This raced with the
filesystem watcher which auto-commits pipeline file moves to master,
causing the fast-forward to fail. The mergemaster agent would then
improvise by manually moving stories to done without the code merge.

- Replace --ff-only with cherry-pick so concurrent watcher commits
  don't block the merge
- Add report_merge_failure MCP tool for explicit failure handling
- Update mergemaster prompt to forbid manual file moves
- Fix cleanup_merge_workspace to handle stale directories

Squash merge of feature/story-205

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-26 14:16:35 +00:00
Dave c435d86d1a story-kit: queue 205_bug_mergemaster_marks_stories_as_done_without_squash_merging_code for merge 2026-02-26 14:15:12 +00:00
Dave ea60db575d story-kit: start 207_story_rename_llm_provider_labels_claude_pty_to_claude_code_anthropic_to_anthropic_api 2026-02-26 14:11:52 +00:00
Dave d44648e169 story-kit: queue 202_story_make_agent_watchdog_interval_configurable_via_project_toml for QA 2026-02-26 14:11:21 +00:00
Dave 6a389d86ee story-kit: create 207_story_rename_llm_provider_labels_claude_pty_to_claude_code_anthropic_to_anthropic_api 2026-02-26 14:11:20 +00:00
Dave 089287c8a2 story-kit: start 206_story_claude_pty_should_be_selected_by_default_on_first_use 2026-02-26 14:09:58 +00:00
Dave 50a3527828 story-kit: create 206_story_claude_pty_should_be_selected_by_default_on_first_use 2026-02-26 14:09:22 +00:00
Dave af2fea81af story-kit: queue 205_bug_mergemaster_marks_stories_as_done_without_squash_merging_code for QA 2026-02-26 14:07:51 +00:00
DaveandClaude Opus 4.6 d006e47d3f Rename nav header branding from "Story Kit" to "StorkIt"
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-26 13:59:31 +00:00
Dave 1491c6b811 story-kit: start 202_story_make_agent_watchdog_interval_configurable_via_project_toml 2026-02-26 13:56:05 +00:00
Dave f37401697f story-kit: start 200_story_auto_prune_worktrees_for_archived_stories_in_watcher_sweep 2026-02-26 13:55:59 +00:00
Dave c51964d9f1 story-kit: start 205_bug_mergemaster_marks_stories_as_done_without_squash_merging_code 2026-02-26 13:51:08 +00:00
Dave 1966cb7cd5 story-kit: create 205_bug_mergemaster_marks_stories_as_done_without_squash_merging_code 2026-02-26 13:50:44 +00:00
Dave 9c0df59db0 story-kit: create 205_bug_mergemaster_marks_stories_as_done_without_squash_merging_code 2026-02-26 13:49:52 +00:00
Dave 181e49e0ec story-kit: create 205_bug_mergemaster_marks_stories_as_done_without_squash_merging_code 2026-02-26 13:48:50 +00:00
Dave c24301d60c story-kit: create 205_bug_mergemaster_marks_stories_as_done_without_squash_merging_code 2026-02-26 13:45:40 +00:00
Dave bf71151605 story-kit: done 204_story_rename_storkit_branding_to_story_kit 2026-02-26 12:52:01 +00:00
Dave b05ac6acac story-kit: merge 204_story_rename_storkit_branding_to_story_kit 2026-02-26 12:49:28 +00:00
Dave 146a45a33e story-kit: done 203_story_move_story_to_current_before_checking_agent_availability_in_start_agent 2026-02-26 12:46:07 +00:00
Dave 819b72523f story-kit: merge 203_story_move_story_to_current_before_checking_agent_availability_in_start_agent 2026-02-26 12:41:12 +00:00
Dave 3a9790a277 story-kit: done 202_story_make_agent_watchdog_interval_configurable_via_project_toml 2026-02-26 12:36:35 +00:00
Dave 77547972c4 feat(story-193): clickable code references in frontend 2026-02-26 12:34:57 +00:00
Dave 4cafc6f299 story-kit: done 200_story_auto_prune_worktrees_for_archived_stories_in_watcher_sweep 2026-02-26 12:27:32 +00:00
Dave b86c50b2d5 story-kit: remove 199_story_web_ui_submits_all_queued_items_at_once 2026-02-26 12:20:27 +00:00
Dave 9a98e4b46e story-kit: start 199_story_web_ui_submits_all_queued_items_at_once 2026-02-26 12:20:23 +00:00
Dave 78b05397b7 story-kit: accept 199_story_web_ui_submits_all_queued_items_at_once 2026-02-26 12:17:07 +00:00
Dave 2dbfd42c6e story-kit: done 199_story_web_ui_submits_all_queued_items_at_once 2026-02-26 12:16:07 +00:00
Dave f5f2716a3a story-kit: remove 199_story_web_ui_submits_all_queued_items_at_once 2026-02-26 12:12:41 +00:00
Dave 69400f8eb9 story-kit: remove 199_story_web_ui_submits_all_queued_items_at_once 2026-02-26 12:12:40 +00:00
Dave a489386f46 story-kit: merge 199_story_web_ui_submits_all_queued_items_at_once 2026-02-26 12:09:33 +00:00
Dave cb3a804259 story-kit: done 199_story_web_ui_submits_all_queued_items_at_once 2026-02-26 12:09:20 +00:00
Dave 8d29956dea story-kit: merge 199_story_web_ui_submits_all_queued_items_at_once 2026-02-26 12:05:08 +00:00
Dave 3c5b496432 story-kit: done 201_story_make_watcher_sweep_interval_configurable_via_project_toml 2026-02-26 12:00:04 +00:00
Dave badb4edf96 story-kit: queue 200_story_auto_prune_worktrees_for_archived_stories_in_watcher_sweep for merge 2026-02-26 11:59:16 +00:00
Dave 8836bff7cb story-kit: queue 199_story_web_ui_submits_all_queued_items_at_once for merge 2026-02-26 11:59:15 +00:00
Dave b791304bb0 story-kit: queue 203_story_move_story_to_current_before_checking_agent_availability_in_start_agent for merge 2026-02-26 11:54:23 +00:00
Dave 39887eb0bf story-kit: accept 199_story_web_ui_submits_all_queued_items_at_once 2026-02-26 11:04:43 +00:00
Dave 39d81812da story-kit: done 199_story_web_ui_submits_all_queued_items_at_once 2026-02-26 11:04:43 +00:00
Dave 1d9a275e74 story-kit: queue 204_story_rename_storkit_branding_to_story_kit for merge 2026-02-26 11:04:37 +00:00
Dave 37a0ca50e5 story-kit: queue 202_story_make_agent_watchdog_interval_configurable_via_project_toml for merge 2026-02-26 11:04:05 +00:00
Dave a5d6f4dd32 story-kit: done 200_story_auto_prune_worktrees_for_archived_stories_in_watcher_sweep 2026-02-26 11:00:39 +00:00
Dave ff3360295d story-kit: queue 204_story_rename_storkit_branding_to_story_kit for QA 2026-02-26 10:59:02 +00:00
Dave 004442e001 story-kit: queue 202_story_make_agent_watchdog_interval_configurable_via_project_toml for QA 2026-02-26 10:57:54 +00:00
Dave b7a370dbc0 story-kit: queue 201_story_make_watcher_sweep_interval_configurable_via_project_toml for merge 2026-02-26 10:56:36 +00:00
Dave 6e88c639f6 story-kit: queue 203_story_move_story_to_current_before_checking_agent_availability_in_start_agent for QA 2026-02-26 10:55:53 +00:00
Dave 062d24abd6 story-kit: accept 193_story_clickable_code_references_in_frontend 2026-02-26 10:54:58 +00:00
Dave ced1808049 story-kit: done 193_story_clickable_code_references_in_frontend 2026-02-26 10:53:58 +00:00
Dave c9343152ab story-kit: queue 200_story_auto_prune_worktrees_for_archived_stories_in_watcher_sweep for merge 2026-02-26 10:53:52 +00:00
Dave 9d00f77d86 story-kit: start 204_story_rename_storkit_branding_to_story_kit 2026-02-26 10:51:50 +00:00
Dave 7243bab7d5 story-kit: create 204_story_rename_storkit_branding_to_story_kit 2026-02-26 10:51:18 +00:00
Dave 7b1778a312 story-kit: queue 199_story_web_ui_submits_all_queued_items_at_once for merge 2026-02-26 10:49:13 +00:00
Dave b2b1e7ed3d story-kit: start 202_story_make_agent_watchdog_interval_configurable_via_project_toml 2026-02-26 10:48:24 +00:00
Dave 474814ead3 story-kit: queue 193_story_clickable_code_references_in_frontend for merge 2026-02-26 10:47:18 +00:00
Dave ba9ea2a602 story-kit: start 203_story_move_story_to_current_before_checking_agent_availability_in_start_agent 2026-02-26 10:46:11 +00:00
Dave d9bbbe9b58 story-kit: create 203_story_move_story_to_current_before_checking_agent_availability_in_start_agent 2026-02-26 10:46:01 +00:00
Dave e2e977e06d story-kit: queue 201_story_make_watcher_sweep_interval_configurable_via_project_toml for QA 2026-02-26 10:44:46 +00:00
Dave 43e8d5ac28 story-kit: queue 200_story_auto_prune_worktrees_for_archived_stories_in_watcher_sweep for QA 2026-02-26 10:44:34 +00:00
Dave 39cdd819cc story-kit: queue 199_story_web_ui_submits_all_queued_items_at_once for QA 2026-02-26 10:44:00 +00:00
Dave 87ac946714 story-kit: accept 194_story_enable_matrix_e2ee_with_cross_signing_verification_on_bot 2026-02-26 10:42:34 +00:00
Dave 5a8063bc91 story-kit: done 194_story_enable_matrix_e2ee_with_cross_signing_verification_on_bot 2026-02-26 10:41:34 +00:00
DaveandClaude Opus 4.6 08e23e3830 feat: enable Matrix E2EE with cross-signing verification on bot
Add end-to-end encryption support to the Matrix bot using the matrix-sdk
crypto features. The bot now:
- Enables E2EE on the Matrix client with cross-signing bootstrapping
- Auto-verifies its own cross-signing identity on startup
- Handles key verification requests from other users automatically
- Sends encrypted messages in E2EE-enabled rooms
- Adds MATRIX_STORE_PATH config for persistent crypto store

Squash merge of feature/story-194_story_enable_matrix_e2ee_with_cross_signing_verification_on_bot

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-26 10:41:29 +00:00
Dave 92395c5068 story-kit: start 201_story_make_watcher_sweep_interval_configurable_via_project_toml 2026-02-26 10:34:53 +00:00
Dave ce96b555f7 story-kit: start 200_story_auto_prune_worktrees_for_archived_stories_in_watcher_sweep 2026-02-26 10:34:52 +00:00
Dave a68f07dd29 story-kit: create 202_story_make_agent_watchdog_interval_configurable_via_project_toml 2026-02-26 10:34:31 +00:00
Dave ead3d3aeba story-kit: create 201_story_make_watcher_sweep_interval_configurable_via_project_toml 2026-02-26 10:34:29 +00:00
Dave f984f1bcde story-kit: create 200_story_auto_prune_worktrees_for_archived_stories_in_watcher_sweep 2026-02-26 10:32:16 +00:00
Dave 1757664711 story-kit: accept 198_story_distinguish_work_item_types_in_web_ui 2026-02-25 22:12:22 +00:00
Dave dc255c75de story-kit: accept 197_bug_cancel_button_discards_queued_messages_instead_of_preserving_them_in_chat_input 2026-02-25 21:57:21 +00:00
Dave bc5da4a0dc story-kit: accept 195_story_preserve_newlines_in_chat_message_submission 2026-02-25 21:55:20 +00:00
Dave 4d54a08b0f story-kit: accept 192_bug_code_fences_lose_newlines_when_pasted_from_agent_output 2026-02-25 20:33:18 +00:00
Dave 2688e91db1 story-kit: accept 191_story_matrix_bot_should_only_respond_when_directly_addressed 2026-02-25 20:11:17 +00:00
Dave 685a856abd story-kit: accept 190_story_auto_select_available_agent_for_stage_in_start_agent 2026-02-25 19:55:16 +00:00
Dave 53117138ad story-kit: accept 189_story_surface_claude_code_compaction_notices_in_matrix_chat 2026-02-25 19:53:15 +00:00
Dave 5476fd6d57 story-kit: accept 188_story_render_matrix_bot_messages_with_html_formatting 2026-02-25 19:51:14 +00:00
Dave e105e7b5f6 story-kit: accept 187_story_preserve_queued_messages_in_chat_input_on_cancel 2026-02-25 19:36:13 +00:00
Dave 8181907ea0 story-kit: accept 186_story_add_storkit_branding_to_header 2026-02-25 19:21:12 +00:00
Dave 288c4a8fbe story-kit: accept 170_story_add_test_first_requirements_to_agent_role_descriptions 2026-02-25 19:10:11 +00:00
Dave edb2c920d6 story-kit: done 198_story_distinguish_work_item_types_in_web_ui 2026-02-25 18:31:10 +00:00
Dave a5bf11a0f6 story-kit: queue 193_story_clickable_code_references_in_frontend for QA 2026-02-25 18:30:38 +00:00
Dave e319d2afbe story-kit: start 199_story_web_ui_submits_all_queued_items_at_once 2026-02-25 18:28:14 +00:00
Dave e876363ad6 story-kit: start 199_story_web_ui_submits_all_queued_items_at_once 2026-02-25 18:28:06 +00:00
Dave b6676147db story-kit: queue 194_story_enable_matrix_e2ee_with_cross_signing_verification_on_bot for merge 2026-02-25 18:27:58 +00:00
Dave b95392da1f story-kit: start 199_story_web_ui_submits_all_queued_items_at_once 2026-02-25 18:27:55 +00:00
Dave 36d36e7d90 story-kit: queue 198_story_distinguish_work_item_types_in_web_ui for merge 2026-02-25 18:27:29 +00:00
Dave b655eb80a3 story-kit: done 197_bug_cancel_button_discards_queued_messages_instead_of_preserving_them_in_chat_input 2026-02-25 18:26:57 +00:00
Dave 424386d649 story-kit: queue 194_story_enable_matrix_e2ee_with_cross_signing_verification_on_bot for QA 2026-02-25 18:23:33 +00:00
Dave fd96105f2c story-kit: queue 198_story_distinguish_work_item_types_in_web_ui for QA 2026-02-25 18:22:31 +00:00
Dave b8b29c4588 story-kit: queue 197_bug_cancel_button_discards_queued_messages_instead_of_preserving_them_in_chat_input for merge 2026-02-25 18:20:33 +00:00
Dave b5e5b783a3 story-kit: done 195_story_preserve_newlines_in_chat_message_submission 2026-02-25 18:19:33 +00:00
Dave 9f469068fc story-kit: merge 195_story_preserve_newlines_in_chat_message_submission 2026-02-25 18:16:46 +00:00
Dave 4e0b6b143b story-kit: queue 197_bug_cancel_button_discards_queued_messages_instead_of_preserving_them_in_chat_input for QA 2026-02-25 18:14:47 +00:00
Dave 722e1ee0e4 story-kit: start 198_story_distinguish_work_item_types_in_web_ui 2026-02-25 18:13:44 +00:00
Dave 119c18a30b story-kit: create 198_story_distinguish_work_item_types_in_web_ui 2026-02-25 18:12:20 +00:00
Dave 01abd8e053 story-kit: create 198_story_distinguish_work_item_types_in_web_ui 2026-02-25 18:12:16 +00:00