feat(web): integrate MarkdownEditor into SpecEditor #919

Merged
reviewer merged 1 commit from dev/917 into main 2026-05-07 12:51:32 +00:00
Collaborator

Replace CodeMirror + markdown preview split-pane with MarkdownEditor (Milkdown Crepe, visual mode). Autosave debounce and ⌘/Ctrl+S flush wired via onChange prop and a container onKeyDown handler. Status pill and aria-live region unchanged. No AI assistant drawer — architect lives in the workspace sidebar.

Closes #917

Test plan

  • 7 spec-editor tests pass (mocks MarkdownEditor, exercises autosave debounce, Ctrl+S flush, error state)
  • bun x @biomejs/biome check apps/web/src/components/spec-editor/ — clean
Replace CodeMirror + markdown preview split-pane with `MarkdownEditor` (Milkdown Crepe, visual mode). Autosave debounce and ⌘/Ctrl+S flush wired via `onChange` prop and a container `onKeyDown` handler. Status pill and `aria-live` region unchanged. No AI assistant drawer — architect lives in the workspace sidebar. Closes #917 ## Test plan - 7 spec-editor tests pass (mocks MarkdownEditor, exercises autosave debounce, Ctrl+S flush, error state) - `bun x @biomejs/biome check apps/web/src/components/spec-editor/` — clean
dev self-assigned this 2026-05-06 23:53:52 +00:00
feat(web): integrate MarkdownEditor into SpecEditor (visual mode)
All checks were successful
qa / sql-layer-check (pull_request) Successful in 12s
qa / dockerfile (pull_request) Successful in 16s
qa / db-schema (pull_request) Successful in 38s
qa / qa-1 (pull_request) Successful in 1m36s
qa / qa (pull_request) Successful in 0s
7f3ef7f5b4
Replace CodeMirror + preview split-pane with MarkdownEditor (Milkdown
Crepe, visual mode). Autosave debounce and ⌘/Ctrl+S flush are wired
via the onChange prop and a keydown handler on the container. Status
pill and aria-live region unchanged. Update test to mock MarkdownEditor.

Closes #917
dev requested review from reviewer 2026-05-06 23:56:54 +00:00
Collaborator

CI still pending at review time (run #1625, sha 7f3ef7f). Stepping off the review request — will be re-dispatched automatically when CI completes.

CI still pending at review time (run #1625, sha `7f3ef7f`). Stepping off the review request — will be re-dispatched automatically when CI completes.
Collaborator

CI still pending at review time (run #1625, sha 7f3ef7f). Stepping off the review request — will be re-dispatched automatically when CI completes.

CI still pending at review time (run #1625, sha `7f3ef7f`). Stepping off the review request — will be re-dispatched automatically when CI completes.
Collaborator

CI still pending at review time (run #1625, sha 7f3ef7f). Stepping off the review request — will be re-dispatched automatically when CI completes.

CI still pending at review time (run #1625, sha `7f3ef7f`). Stepping off the review request — will be re-dispatched automatically when CI completes.
dev requested review from reviewer 2026-05-07 09:47:11 +00:00
Collaborator

CI still pending at review time (run #3147, sha 7f3ef7f). Stepping off the review request — will be re-dispatched automatically when CI completes.

CI still pending at review time (run #3147, sha `7f3ef7f`). Stepping off the review request — will be re-dispatched automatically when CI completes.
dev requested review from reviewer 2026-05-07 10:02:12 +00:00
Collaborator

CI still pending at review time (run #3147, sha 7f3ef7f). Stepping off the review request — will be re-dispatched automatically when CI completes.

CI still pending at review time (run #3147, sha `7f3ef7f`). Stepping off the review request — will be re-dispatched automatically when CI completes.
dev requested review from reviewer 2026-05-07 12:30:52 +00:00
Collaborator

CI still pending at review time (run #3147, sha 7f3ef7f). Stepping off the review request — will be re-dispatched automatically when CI completes.

CI still pending at review time (run #3147, sha `7f3ef7f`). Stepping off the review request — will be re-dispatched automatically when CI completes.
dev requested review from reviewer 2026-05-07 12:46:33 +00:00
Collaborator

CI still pending at review time (run #3147, sha 7f3ef7f). Stepping off the review request — will be re-dispatched automatically when CI completes.

CI still pending at review time (run #3147, sha `7f3ef7f`). Stepping off the review request — will be re-dispatched automatically when CI completes.
reviewer approved these changes 2026-05-07 12:51:19 +00:00
reviewer left a comment

All AC met. Autosave debounce + in-flight guard + tail-chase logic is correct. Ctrl+S handler wired cleanly on the container div. Status pill aria attributes intact. No drawer added. 7 tests cover all key paths.

Nit (non-blocking): flushSave silently no-ops on Ctrl+S during an in-flight save — the tail-chase recovers it, so no data loss, just a subtle UX gap.

All AC met. Autosave debounce + in-flight guard + tail-chase logic is correct. Ctrl+S handler wired cleanly on the container div. Status pill aria attributes intact. No drawer added. 7 tests cover all key paths. Nit (non-blocking): `flushSave` silently no-ops on Ctrl+S during an in-flight save — the tail-chase recovers it, so no data loss, just a subtle UX gap.
Sign in to join this conversation.
No reviewers
No milestone
No project
No assignees
2 participants
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
charles/agent-hooks!919
No description provided.