Commit b82a11d
committed
feat: Implement real-time progress updates for test generation
This commit introduces a real-time progress update feature to the UI. When a user clicks "Generate & Execute Test", the backend now streams progress updates to the frontend, which are displayed in the "Execution Results" panel.
Key changes:
- Modified the agentic workflow in `robot_generator.py` to be a generator that yields status updates at each step of the process.
- Refactored the `/generate-and-run` endpoint in `main.py` to use Server-Sent Events (SSE) with a heartbeat mechanism. The heartbeat prevents proxy buffering issues and ensures real-time delivery of messages.
- The synchronous agentic workflow is run in a separate thread to avoid blocking the async server. A queue is used to communicate between the thread and the main event loop.
- Updated the frontend JavaScript in `index.html` to handle the SSE stream and display the progress messages in a running log format in the UI.1 parent 5689e47 commit b82a11d
3 files changed
+116
-35
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
9 | 9 | | |
10 | 10 | | |
11 | 11 | | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
12 | 15 | | |
13 | 16 | | |
14 | 17 | | |
| |||
37 | 40 | | |
38 | 41 | | |
39 | 42 | | |
40 | | - | |
41 | | - | |
| 43 | + | |
| 44 | + | |
| 45 | + | |
| 46 | + | |
| 47 | + | |
| 48 | + | |
| 49 | + | |
| 50 | + | |
42 | 51 | | |
43 | | - | |
44 | | - | |
| 52 | + | |
| 53 | + | |
| 54 | + | |
| 55 | + | |
| 56 | + | |
| 57 | + | |
| 58 | + | |
| 59 | + | |
| 60 | + | |
| 61 | + | |
| 62 | + | |
| 63 | + | |
| 64 | + | |
| 65 | + | |
| 66 | + | |
| 67 | + | |
| 68 | + | |
| 69 | + | |
| 70 | + | |
| 71 | + | |
| 72 | + | |
| 73 | + | |
| 74 | + | |
| 75 | + | |
| 76 | + | |
| 77 | + | |
| 78 | + | |
| 79 | + | |
| 80 | + | |
| 81 | + | |
| 82 | + | |
| 83 | + | |
| 84 | + | |
| 85 | + | |
| 86 | + | |
| 87 | + | |
| 88 | + | |
| 89 | + | |
| 90 | + | |
| 91 | + | |
| 92 | + | |
| 93 | + | |
| 94 | + | |
| 95 | + | |
| 96 | + | |
| 97 | + | |
| 98 | + | |
| 99 | + | |
45 | 100 | | |
46 | | - | |
47 | | - | |
48 | | - | |
49 | | - | |
50 | | - | |
51 | | - | |
52 | | - | |
53 | 101 | | |
54 | | - | |
| 102 | + | |
| 103 | + | |
| 104 | + | |
| 105 | + | |
55 | 106 | | |
56 | | - | |
57 | | - | |
58 | | - | |
59 | | - | |
60 | | - | |
61 | 107 | | |
62 | | - | |
| 108 | + | |
63 | 109 | | |
64 | 110 | | |
65 | 111 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
288 | 288 | | |
289 | 289 | | |
290 | 290 | | |
291 | | - | |
| 291 | + | |
292 | 292 | | |
293 | 293 | | |
294 | | - | |
| 294 | + | |
295 | 295 | | |
296 | 296 | | |
| 297 | + | |
297 | 298 | | |
298 | 299 | | |
299 | 300 | | |
300 | 301 | | |
301 | 302 | | |
302 | 303 | | |
303 | 304 | | |
304 | | - | |
| 305 | + | |
| 306 | + | |
305 | 307 | | |
306 | 308 | | |
307 | | - | |
308 | 309 | | |
309 | 310 | | |
310 | 311 | | |
311 | 312 | | |
| 313 | + | |
312 | 314 | | |
313 | 315 | | |
| 316 | + | |
314 | 317 | | |
315 | 318 | | |
316 | 319 | | |
317 | | - | |
| 320 | + | |
| 321 | + | |
| 322 | + | |
318 | 323 | | |
319 | 324 | | |
| 325 | + | |
320 | 326 | | |
321 | 327 | | |
322 | 328 | | |
323 | | - | |
| 329 | + | |
| 330 | + | |
| 331 | + | |
324 | 332 | | |
325 | 333 | | |
| 334 | + | |
326 | 335 | | |
| 336 | + | |
327 | 337 | | |
328 | 338 | | |
| 339 | + | |
329 | 340 | | |
| 341 | + | |
330 | 342 | | |
331 | 343 | | |
332 | 344 | | |
333 | | - | |
334 | | - | |
| 345 | + | |
| 346 | + | |
335 | 347 | | |
336 | 348 | | |
337 | | - | |
| 349 | + | |
338 | 350 | | |
339 | 351 | | |
340 | 352 | | |
| |||
349 | 361 | | |
350 | 362 | | |
351 | 363 | | |
352 | | - | |
353 | | - | |
| 364 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
626 | 626 | | |
627 | 627 | | |
628 | 628 | | |
629 | | - | |
630 | | - | |
| 629 | + | |
| 630 | + | |
631 | 631 | | |
632 | 632 | | |
633 | 633 | | |
| |||
687 | 687 | | |
688 | 688 | | |
689 | 689 | | |
690 | | - | |
| 690 | + | |
| 691 | + | |
| 692 | + | |
| 693 | + | |
| 694 | + | |
| 695 | + | |
| 696 | + | |
691 | 697 | | |
692 | 698 | | |
693 | 699 | | |
| 700 | + | |
| 701 | + | |
694 | 702 | | |
695 | 703 | | |
696 | 704 | | |
| 705 | + | |
| 706 | + | |
| 707 | + | |
| 708 | + | |
697 | 709 | | |
698 | 710 | | |
699 | 711 | | |
700 | | - | |
| 712 | + | |
| 713 | + | |
| 714 | + | |
| 715 | + | |
| 716 | + | |
| 717 | + | |
| 718 | + | |
| 719 | + | |
| 720 | + | |
| 721 | + | |
701 | 722 | | |
702 | | - | |
| 723 | + | |
703 | 724 | | |
704 | 725 | | |
705 | 726 | | |
| |||
708 | 729 | | |
709 | 730 | | |
710 | 731 | | |
711 | | - | |
| 732 | + | |
| 733 | + | |
| 734 | + | |
| 735 | + | |
712 | 736 | | |
713 | 737 | | |
714 | 738 | | |
| |||
0 commit comments