Commit 150eb33
Add transform operation for system prompt section customization
Adds a new 'transform' action to SectionOverride that enables read-then-write
mutation of system prompt sections via callbacks. The SDK intercepts function-
valued actions before serialization, stores the callbacks locally, and handles
the batched systemMessage.transform JSON-RPC callback from the runtime.
Changes across all 4 SDKs (TypeScript, Python, Go, .NET):
- Types: SectionTransformFn, SectionOverrideAction (TS/Python), Transform
field (Go/.NET), SectionOverrideAction constants (Go)
- Client: extractTransformCallbacks helper, transform callback registration,
systemMessage.transform RPC handler
- Session: transform callback storage and batched dispatch with error handling
- E2E tests and shared snapshot YAML files
Wire protocol: single batched RPC call with all transform sections, matching
the runtime implementation in copilot-agent-runtime PR #5103.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>1 parent bd39949 commit 150eb33
File tree
21 files changed
+1330
-26
lines changed- dotnet
- src
- test
- go
- internal/e2e
- nodejs
- src
- test/e2e
- python
- copilot
- e2e
- test/snapshots/system_message_transform
21 files changed
+1330
-26
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
365 | 365 | | |
366 | 366 | | |
367 | 367 | | |
| 368 | + | |
| 369 | + | |
| 370 | + | |
| 371 | + | |
| 372 | + | |
| 373 | + | |
| 374 | + | |
| 375 | + | |
| 376 | + | |
| 377 | + | |
| 378 | + | |
| 379 | + | |
| 380 | + | |
| 381 | + | |
| 382 | + | |
| 383 | + | |
| 384 | + | |
| 385 | + | |
| 386 | + | |
| 387 | + | |
| 388 | + | |
| 389 | + | |
| 390 | + | |
| 391 | + | |
| 392 | + | |
| 393 | + | |
| 394 | + | |
| 395 | + | |
| 396 | + | |
| 397 | + | |
| 398 | + | |
| 399 | + | |
| 400 | + | |
| 401 | + | |
| 402 | + | |
| 403 | + | |
| 404 | + | |
| 405 | + | |
368 | 406 | | |
369 | 407 | | |
370 | 408 | | |
| |||
409 | 447 | | |
410 | 448 | | |
411 | 449 | | |
| 450 | + | |
| 451 | + | |
412 | 452 | | |
413 | 453 | | |
414 | 454 | | |
| |||
424 | 464 | | |
425 | 465 | | |
426 | 466 | | |
| 467 | + | |
| 468 | + | |
| 469 | + | |
| 470 | + | |
427 | 471 | | |
428 | 472 | | |
429 | 473 | | |
| |||
440 | 484 | | |
441 | 485 | | |
442 | 486 | | |
443 | | - | |
| 487 | + | |
444 | 488 | | |
445 | 489 | | |
446 | 490 | | |
| |||
519 | 563 | | |
520 | 564 | | |
521 | 565 | | |
| 566 | + | |
| 567 | + | |
522 | 568 | | |
523 | 569 | | |
524 | 570 | | |
| |||
532 | 578 | | |
533 | 579 | | |
534 | 580 | | |
| 581 | + | |
| 582 | + | |
| 583 | + | |
| 584 | + | |
535 | 585 | | |
536 | 586 | | |
537 | 587 | | |
| |||
548 | 598 | | |
549 | 599 | | |
550 | 600 | | |
551 | | - | |
| 601 | + | |
552 | 602 | | |
553 | 603 | | |
554 | 604 | | |
| |||
1222 | 1272 | | |
1223 | 1273 | | |
1224 | 1274 | | |
| 1275 | + | |
1225 | 1276 | | |
1226 | 1277 | | |
1227 | 1278 | | |
| |||
1350 | 1401 | | |
1351 | 1402 | | |
1352 | 1403 | | |
| 1404 | + | |
| 1405 | + | |
| 1406 | + | |
| 1407 | + | |
| 1408 | + | |
| 1409 | + | |
1353 | 1410 | | |
1354 | 1411 | | |
1355 | 1412 | | |
| |||
1683 | 1740 | | |
1684 | 1741 | | |
1685 | 1742 | | |
1686 | | - | |
1687 | 1743 | | |
1688 | 1744 | | |
| 1745 | + | |
1689 | 1746 | | |
1690 | 1747 | | |
1691 | 1748 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
65 | 65 | | |
66 | 66 | | |
67 | 67 | | |
| 68 | + | |
| 69 | + | |
68 | 70 | | |
69 | 71 | | |
70 | 72 | | |
| |||
653 | 655 | | |
654 | 656 | | |
655 | 657 | | |
| 658 | + | |
| 659 | + | |
| 660 | + | |
| 661 | + | |
| 662 | + | |
| 663 | + | |
| 664 | + | |
| 665 | + | |
| 666 | + | |
| 667 | + | |
| 668 | + | |
| 669 | + | |
| 670 | + | |
| 671 | + | |
| 672 | + | |
| 673 | + | |
| 674 | + | |
| 675 | + | |
| 676 | + | |
| 677 | + | |
| 678 | + | |
| 679 | + | |
| 680 | + | |
| 681 | + | |
| 682 | + | |
| 683 | + | |
| 684 | + | |
| 685 | + | |
| 686 | + | |
| 687 | + | |
| 688 | + | |
| 689 | + | |
| 690 | + | |
| 691 | + | |
| 692 | + | |
| 693 | + | |
| 694 | + | |
| 695 | + | |
| 696 | + | |
| 697 | + | |
| 698 | + | |
| 699 | + | |
| 700 | + | |
| 701 | + | |
| 702 | + | |
| 703 | + | |
| 704 | + | |
| 705 | + | |
| 706 | + | |
| 707 | + | |
| 708 | + | |
| 709 | + | |
| 710 | + | |
| 711 | + | |
| 712 | + | |
| 713 | + | |
| 714 | + | |
| 715 | + | |
| 716 | + | |
| 717 | + | |
| 718 | + | |
| 719 | + | |
| 720 | + | |
| 721 | + | |
| 722 | + | |
| 723 | + | |
656 | 724 | | |
657 | 725 | | |
658 | 726 | | |
| |||
890 | 958 | | |
891 | 959 | | |
892 | 960 | | |
| 961 | + | |
| 962 | + | |
| 963 | + | |
893 | 964 | | |
894 | 965 | | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
991 | 991 | | |
992 | 992 | | |
993 | 993 | | |
994 | | - | |
| 994 | + | |
| 995 | + | |
| 996 | + | |
| 997 | + | |
995 | 998 | | |
996 | 999 | | |
997 | 1000 | | |
| |||
1000 | 1003 | | |
1001 | 1004 | | |
1002 | 1005 | | |
1003 | | - | |
| 1006 | + | |
1004 | 1007 | | |
1005 | | - | |
| 1008 | + | |
| 1009 | + | |
1006 | 1010 | | |
1007 | 1011 | | |
1008 | 1012 | | |
1009 | 1013 | | |
| 1014 | + | |
1010 | 1015 | | |
| 1016 | + | |
| 1017 | + | |
| 1018 | + | |
| 1019 | + | |
| 1020 | + | |
| 1021 | + | |
| 1022 | + | |
| 1023 | + | |
1011 | 1024 | | |
1012 | 1025 | | |
1013 | 1026 | | |
| |||
2106 | 2119 | | |
2107 | 2120 | | |
2108 | 2121 | | |
| 2122 | + | |
| 2123 | + | |
| 2124 | + | |
| 2125 | + | |
| 2126 | + | |
| 2127 | + | |
| 2128 | + | |
| 2129 | + | |
| 2130 | + | |
| 2131 | + | |
| 2132 | + | |
| 2133 | + | |
| 2134 | + | |
| 2135 | + | |
| 2136 | + | |
| 2137 | + | |
| 2138 | + | |
| 2139 | + | |
| 2140 | + | |
| 2141 | + | |
| 2142 | + | |
| 2143 | + | |
| 2144 | + | |
| 2145 | + | |
2109 | 2146 | | |
2110 | 2147 | | |
2111 | 2148 | | |
| |||
0 commit comments