Commit a60b288
Forward store options to the server projection so ssrSource works on stores
The server createStore dropped its options argument on the floor, making
ssrSource inert for derived stores: "client" sources ran (and streamed) on
the server (#2972) and "server" lost its serialization path (#2971).
Explicit ssrSource:"server" now also serializes SYNCHRONOUS results — for
stores, memos, signals, and effects alike. Without it nothing rode the
payload, so the client re-ran a source that may not be client-safe and the
in-memory value silently diverged from the claimed DOM. The default (no
ssrSource) is unchanged: sync sources recompute on the client as their own
parity mechanism, keeping payloads lean.
Harness scenarios cover all three shapes: client-sourced async store (server
renders seed, no stream hold), server-sourced async store (awaited,
serialized, isServer probe proves no client re-run), and server-sourced sync
store (probe surfaces the in-memory value to catch silent divergence).
Co-authored-by: Cursor <cursoragent@cursor.com>1 parent 0cd35f0 commit a60b288
6 files changed
Lines changed: 122 additions & 5 deletions
File tree
- .changeset
- packages
- solid-web/test/harness
- __artifacts__
- solid/src/server
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
Lines changed: 5 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
Lines changed: 5 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
Lines changed: 5 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
22 | 22 | | |
23 | 23 | | |
24 | 24 | | |
25 | | - | |
| 25 | + | |
26 | 26 | | |
27 | 27 | | |
28 | 28 | | |
| |||
707 | 707 | | |
708 | 708 | | |
709 | 709 | | |
| 710 | + | |
| 711 | + | |
| 712 | + | |
| 713 | + | |
| 714 | + | |
| 715 | + | |
| 716 | + | |
| 717 | + | |
| 718 | + | |
| 719 | + | |
| 720 | + | |
| 721 | + | |
| 722 | + | |
| 723 | + | |
| 724 | + | |
| 725 | + | |
| 726 | + | |
| 727 | + | |
| 728 | + | |
| 729 | + | |
| 730 | + | |
| 731 | + | |
| 732 | + | |
| 733 | + | |
| 734 | + | |
| 735 | + | |
| 736 | + | |
| 737 | + | |
| 738 | + | |
| 739 | + | |
| 740 | + | |
| 741 | + | |
| 742 | + | |
| 743 | + | |
| 744 | + | |
| 745 | + | |
| 746 | + | |
| 747 | + | |
| 748 | + | |
| 749 | + | |
| 750 | + | |
| 751 | + | |
| 752 | + | |
| 753 | + | |
| 754 | + | |
| 755 | + | |
| 756 | + | |
| 757 | + | |
| 758 | + | |
| 759 | + | |
| 760 | + | |
| 761 | + | |
| 762 | + | |
710 | 763 | | |
711 | 764 | | |
712 | 765 | | |
| |||
966 | 1019 | | |
967 | 1020 | | |
968 | 1021 | | |
| 1022 | + | |
| 1023 | + | |
| 1024 | + | |
| 1025 | + | |
| 1026 | + | |
| 1027 | + | |
| 1028 | + | |
| 1029 | + | |
| 1030 | + | |
| 1031 | + | |
| 1032 | + | |
| 1033 | + | |
| 1034 | + | |
| 1035 | + | |
| 1036 | + | |
| 1037 | + | |
| 1038 | + | |
| 1039 | + | |
| 1040 | + | |
| 1041 | + | |
| 1042 | + | |
| 1043 | + | |
| 1044 | + | |
| 1045 | + | |
| 1046 | + | |
969 | 1047 | | |
970 | 1048 | | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1040 | 1040 | | |
1041 | 1041 | | |
1042 | 1042 | | |
1043 | | - | |
| 1043 | + | |
| 1044 | + | |
| 1045 | + | |
| 1046 | + | |
| 1047 | + | |
| 1048 | + | |
| 1049 | + | |
1044 | 1050 | | |
1045 | 1051 | | |
1046 | 1052 | | |
| |||
1211 | 1217 | | |
1212 | 1218 | | |
1213 | 1219 | | |
1214 | | - | |
| 1220 | + | |
| 1221 | + | |
1215 | 1222 | | |
1216 | 1223 | | |
1217 | 1224 | | |
1218 | | - | |
| 1225 | + | |
| 1226 | + | |
1219 | 1227 | | |
1220 | 1228 | | |
1221 | | - | |
| 1229 | + | |
| 1230 | + | |
| 1231 | + | |
| 1232 | + | |
1222 | 1233 | | |
1223 | 1234 | | |
1224 | 1235 | | |
| |||
1480 | 1491 | | |
1481 | 1492 | | |
1482 | 1493 | | |
| 1494 | + | |
| 1495 | + | |
| 1496 | + | |
| 1497 | + | |
| 1498 | + | |
| 1499 | + | |
| 1500 | + | |
| 1501 | + | |
1483 | 1502 | | |
1484 | 1503 | | |
1485 | 1504 | | |
| |||
0 commit comments