Commit 6e3d72c
Support sessionFs in Node SDK. Update runtime. (#917)
* feat: add session data store support to TypeScript SDK
- Add sessionDataStore option to CopilotClientOptions
- Extend codegen to generate client API handler types (SessionDataStoreHandler)
- Register as session data storage provider on connection via sessionDataStore.setDataStore RPC
- Add E2E tests for persist, resume, list, delete, and reject scenarios
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
* feat: replace sessionDataStore with SessionFs virtual filesystem
Migrate the TypeScript SDK from the event-level sessionDataStore
abstraction to the general-purpose SessionFs virtual filesystem,
matching the runtime's new design (copilot-agent-runtime#5432).
Key changes:
- Regenerate RPC types from runtime schema with sessionFs.* methods
- Replace SessionDataStoreConfig with SessionFsConfig (initialCwd,
sessionStatePath, conventions + 9 filesystem handler callbacks)
- Client calls sessionFs.setProvider on connect (was setDataStore)
- Client registers sessionFs.* RPC handlers (readFile, writeFile,
appendFile, exists, stat, mkdir, readdir, rm, rename)
- New E2E tests with InMemorySessionFs (filesystem-level, not events)
- Remove old session_store tests and snapshots
* Test cleanup
* Test large output handling
* Expand API surface slightly
* Update test
* Move to per-session client APIs
* Simplify
* Move createSessionFsHandler onto SessionConfig
* Fix
* Update to newer API schema
* Add compaction+sessionFs test
* Improve compaction test
* Update codegen output
* Update to latest runtime
* fix: bump @github/copilot to 1.0.15-1, remove spurious root package-lock
* fix: remove hardcoded COPILOT_CLI_PATH from test
* skip postToolUse hook tests broken by runtime (issue #972)
---------
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>1 parent 346a38e commit 6e3d72c
File tree
30 files changed
+1863
-90
lines changed- dotnet
- src/Generated
- test
- go
- internal/e2e
- rpc
- nodejs
- src
- generated
- test/e2e
- harness
- python
- copilot/generated
- e2e
- scripts/codegen
- test
- harness
- snapshots
- session_fs
- session_lifecycle
30 files changed
+1863
-90
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
219 | 219 | | |
220 | 220 | | |
221 | 221 | | |
| 222 | + | |
| 223 | + | |
| 224 | + | |
| 225 | + | |
| 226 | + | |
| 227 | + | |
| 228 | + | |
| 229 | + | |
| 230 | + | |
| 231 | + | |
| 232 | + | |
| 233 | + | |
| 234 | + | |
| 235 | + | |
| 236 | + | |
| 237 | + | |
| 238 | + | |
| 239 | + | |
| 240 | + | |
| 241 | + | |
| 242 | + | |
| 243 | + | |
| 244 | + | |
| 245 | + | |
222 | 246 | | |
223 | 247 | | |
224 | 248 | | |
| |||
705 | 729 | | |
706 | 730 | | |
707 | 731 | | |
708 | | - | |
| 732 | + | |
709 | 733 | | |
710 | 734 | | |
711 | 735 | | |
| |||
1156 | 1180 | | |
1157 | 1181 | | |
1158 | 1182 | | |
| 1183 | + | |
| 1184 | + | |
| 1185 | + | |
| 1186 | + | |
| 1187 | + | |
| 1188 | + | |
| 1189 | + | |
| 1190 | + | |
| 1191 | + | |
| 1192 | + | |
| 1193 | + | |
| 1194 | + | |
| 1195 | + | |
1159 | 1196 | | |
1160 | 1197 | | |
1161 | 1198 | | |
| |||
1188 | 1225 | | |
1189 | 1226 | | |
1190 | 1227 | | |
1191 | | - | |
| 1228 | + | |
1192 | 1229 | | |
1193 | 1230 | | |
1194 | 1231 | | |
| |||
1198 | 1235 | | |
1199 | 1236 | | |
1200 | 1237 | | |
| 1238 | + | |
| 1239 | + | |
| 1240 | + | |
1201 | 1241 | | |
1202 | 1242 | | |
1203 | 1243 | | |
| |||
1285 | 1325 | | |
1286 | 1326 | | |
1287 | 1327 | | |
| 1328 | + | |
| 1329 | + | |
1288 | 1330 | | |
1289 | 1331 | | |
1290 | 1332 | | |
| |||
1302 | 1344 | | |
1303 | 1345 | | |
1304 | 1346 | | |
| 1347 | + | |
| 1348 | + | |
| 1349 | + | |
| 1350 | + | |
| 1351 | + | |
| 1352 | + | |
1305 | 1353 | | |
1306 | 1354 | | |
1307 | 1355 | | |
| |||
1356 | 1404 | | |
1357 | 1405 | | |
1358 | 1406 | | |
| 1407 | + | |
| 1408 | + | |
| 1409 | + | |
| 1410 | + | |
| 1411 | + | |
| 1412 | + | |
| 1413 | + | |
| 1414 | + | |
| 1415 | + | |
| 1416 | + | |
| 1417 | + | |
| 1418 | + | |
| 1419 | + | |
| 1420 | + | |
| 1421 | + | |
| 1422 | + | |
| 1423 | + | |
| 1424 | + | |
| 1425 | + | |
| 1426 | + | |
| 1427 | + | |
| 1428 | + | |
| 1429 | + | |
| 1430 | + | |
| 1431 | + | |
| 1432 | + | |
| 1433 | + | |
| 1434 | + | |
| 1435 | + | |
1359 | 1436 | | |
1360 | 1437 | | |
1361 | 1438 | | |
| |||
1959 | 2036 | | |
1960 | 2037 | | |
1961 | 2038 | | |
| 2039 | + | |
| 2040 | + | |
1962 | 2041 | | |
1963 | 2042 | | |
1964 | 2043 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1216 | 1216 | | |
1217 | 1217 | | |
1218 | 1218 | | |
| 1219 | + | |
| 1220 | + | |
| 1221 | + | |
| 1222 | + | |
| 1223 | + | |
1219 | 1224 | | |
1220 | 1225 | | |
1221 | 1226 | | |
| |||
2593 | 2598 | | |
2594 | 2599 | | |
2595 | 2600 | | |
2596 | | - | |
| 2601 | + | |
2597 | 2602 | | |
2598 | 2603 | | |
2599 | 2604 | | |
| |||
3786 | 3791 | | |
3787 | 3792 | | |
3788 | 3793 | | |
3789 | | - | |
| 3794 | + | |
3790 | 3795 | | |
3791 | 3796 | | |
3792 | 3797 | | |
| |||
3998 | 4003 | | |
3999 | 4004 | | |
4000 | 4005 | | |
4001 | | - | |
| 4006 | + | |
4002 | 4007 | | |
4003 | 4008 | | |
4004 | 4009 | | |
| |||
4008 | 4013 | | |
4009 | 4014 | | |
4010 | 4015 | | |
| 4016 | + | |
| 4017 | + | |
| 4018 | + | |
4011 | 4019 | | |
4012 | 4020 | | |
4013 | 4021 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
46 | 46 | | |
47 | 47 | | |
48 | 48 | | |
49 | | - | |
| 49 | + | |
| 50 | + | |
50 | 51 | | |
51 | 52 | | |
52 | 53 | | |
| |||
83 | 84 | | |
84 | 85 | | |
85 | 86 | | |
86 | | - | |
| 87 | + | |
| 88 | + | |
87 | 89 | | |
88 | 90 | | |
89 | 91 | | |
| |||
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
74 | 74 | | |
75 | 75 | | |
76 | 76 | | |
| 77 | + | |
77 | 78 | | |
| 79 | + | |
78 | 80 | | |
79 | 81 | | |
80 | 82 | | |
| |||
139 | 141 | | |
140 | 142 | | |
141 | 143 | | |
| 144 | + | |
142 | 145 | | |
| 146 | + | |
143 | 147 | | |
144 | 148 | | |
145 | 149 | | |
| |||
0 commit comments