Commit graph

36 commits

Author SHA1 Message Date
56aa8dc9bd
Route awareness messages between peers 2026-01-27 21:13:26 -05:00
93bb462ffa
Add awareness broadcast to session 2026-01-27 21:13:07 -05:00
cd4b1def5b
Add a new plan 2026-01-27 21:12:41 -05:00
853fcba641
Add type-safe message decoding 2026-01-27 21:12:41 -05:00
0f506faa5f
Apply biome formatting fixes
Reorder imports to match biome style guide.
2026-01-27 21:05:17 -05:00
4b4b434bf8
Update session test mocks to use WsData type
Change mock websocket objects in session tests to include both room
and client fields, matching the WsData interface definition.
2026-01-27 21:04:54 -05:00
00c9a140c6
Fix type assertion in protocol decode test
Use 'as const' on the type field to ensure the literal type "join" is
preserved, matching the ClientMessage union type requirements.
2026-01-27 21:04:17 -05:00
d654a1bcdf
Add proper typing to integration test websocket mocks
Import and apply WsData type to the test server's websocket handlers
to ensure mock websocket objects match production typing.
2026-01-27 21:03:52 -05:00
0235b2c3e6
Fix websocket data type for room and client storage
Add WsData interface to properly type the websocket data object that
stores room name and client reference. This fixes type errors where
ws.data was previously untyped and causing compilation failures.
2026-01-27 21:03:19 -05:00
100cd67823
Add type checking and testing to check command 2026-01-27 21:00:07 -05:00
5b9931c585
Rename justfile 2026-01-27 20:59:37 -05:00
77ee36d0ab
Write fixes when checking 2026-01-27 20:54:37 -05:00
4c0f0fbf52
Document security limitations 2026-01-27 18:01:08 -05:00
8ce1e098e6
Make session cleanup atomic in leave() 2026-01-27 17:59:49 -05:00
2de33370cd
Add WebSocket.send() error handling 2026-01-27 17:57:04 -05:00
bad4cdac51
Add room name validation to prevent DoS 2026-01-27 17:55:40 -05:00
dcd97a451f
Fix stdin buffer splitting bug in bridge 2026-01-27 17:54:31 -05:00
c8020154e7
Fix biome formatting in bridge.test.ts 2026-01-27 17:53:33 -05:00
a07618deb5
Fix biome lint errors in integration.test.ts 2026-01-27 17:53:12 -05:00
063564b1cd
Fix biome lint errors in bridge.test.ts 2026-01-27 17:52:47 -05:00
ece0618a17
Update readme and agent config to reality 2026-01-27 17:47:47 -05:00
8671265479
Fix vim9script null_job and null_channel type consistency 2026-01-27 17:20:27 -05:00
ee358c1e84
Fix bridge_job initialization to prevent type error 2026-01-27 17:06:44 -05:00
e5cb351a1a
Add bridge lifecycle test
Tests verify that:
- Bridge starts and signals ready message immediately
- Bridge connects to daemon via websocket and disconnects cleanly
- Bridge handles content synchronization without errors
- Process exits with code 0 on clean disconnect
2026-01-27 16:26:29 -05:00
7e92cf251a
Add integration test for concurrent websocket edits
Tests verify that:
- Two concurrent clients can both insert text and CRDT resolves correctly
- Three clients with sequential edits all converge to the same state
- No data is lost during concurrent operations
- The delete-all-insert-all bug is fixed
2026-01-27 16:26:21 -05:00
0a71e7b321
Fix linting errors and formatting 2026-01-27 16:20:42 -05:00
83dac38f29
Add room cleanup to remove empty sessions 2026-01-27 16:19:41 -05:00
2e370afe2c
Document Vim 9.0+ requirement for adapter 2026-01-27 16:18:48 -05:00
7b81777d9d
Fix suppression flag timing with counter instead of boolean 2026-01-27 16:18:15 -05:00
73ee70c52a
Add error handling for Yjs operations 2026-01-27 16:17:53 -05:00
68a7517dec
Fix race condition in vim connect with ready signal 2026-01-27 16:17:33 -05:00
bbfc9998a5
Add clean exit handling to bridge process 2026-01-27 16:16:46 -05:00
4d6ecf78cd
Implement text diffing for proper CRDT operations 2026-01-27 16:16:34 -05:00
925c7a3c0d
Fix client identity tracking to prevent memory leak 2026-01-27 16:16:14 -05:00
3cf16586aa
Add docs 2026-01-27 16:02:36 -05:00
cb73ceb2d3
Add initial generation 2026-01-27 16:02:36 -05:00