Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
61 commits
Select commit Hold shift + click to select a range
f113441
Split server upstream transports
pirate May 26, 2026
dd7e262
Add Mod topology routing
pirate May 26, 2026
dccf05e
Simplify JS transport surfaces
pirate May 26, 2026
24d03dc
Rename client auto session router fields
pirate May 26, 2026
2522be7
Use single upstream transport send surface
pirate May 26, 2026
b005496
Fix upstream config and binding event routing
pirate May 26, 2026
73627ae
Fix native upstream defaults and keepalive startup
pirate May 26, 2026
1a43762
Expose reverse upstream endpoint on transport
pirate May 26, 2026
dabca33
Use reversews endpoint field in tests
pirate May 26, 2026
2bf6501
Simplify pipe and native upstream transport state
pirate May 26, 2026
8ee8489
Remove synthetic native transport URL state
pirate May 26, 2026
28400f1
Simplify transport state
pirate May 26, 2026
d96d418
Simplify ModCDP transport routing
pirate May 26, 2026
ea90999
Collapse loopback CDP into websocket transport
pirate May 26, 2026
6e1a23f
Simplify transport and launcher configuration
pirate May 26, 2026
0a8ef91
big cleanup
pirate May 26, 2026
512e115
Move Runtime context routing into router
pirate May 27, 2026
6b6a366
Make ModCDPServer a startable class
pirate May 27, 2026
b0dd7d0
Remove ModCDP session handle facade
pirate May 27, 2026
65cb032
Remove ModCDP server version field
pirate May 27, 2026
068fc14
Remove server version ready checks from SDKs
pirate May 27, 2026
81ad40d
Remove duplicated server config state
pirate May 27, 2026
06d4b36
clenaup
pirate May 27, 2026
5d57d63
Clean up ModCDP config schemas
pirate May 27, 2026
58c416e
Hydrate base component configs with zod
pirate May 27, 2026
19cd33c
clean translation
pirate May 27, 2026
456d275
more 1 to 1 cleanup
pirate May 27, 2026
df0e263
Align translated transport config surfaces
pirate May 27, 2026
87b43e0
Move translated route config under router
pirate May 27, 2026
d2d3a96
Fix proxy CLI extension loading tests
pirate May 27, 2026
db37454
Align translated config naming
pirate May 27, 2026
aaed2b4
Fix Linux local Chrome sandbox default
pirate May 27, 2026
dc539b0
Use config naming consistently
pirate May 27, 2026
7809500
Track translated router context state
pirate May 27, 2026
07669ee
Fix JS extension loading in CI
pirate May 27, 2026
b7c2849
Apply remaining config naming cleanup
pirate May 27, 2026
e6215fb
Align translated ModCDP type surfaces
pirate May 27, 2026
a14e319
Align translated upstream transport helpers
pirate May 27, 2026
871d7ba
Fix service worker custom event demo delivery
pirate May 27, 2026
0112e5a
Align Go router state names
pirate May 27, 2026
2a01d58
Align translated client launcher default
pirate May 27, 2026
45da285
Add translated client configure methods
pirate May 27, 2026
b8df95e
Remove invalid native messaging shell demo jobs
pirate May 27, 2026
c985ee3
Align translated router send routing
pirate May 27, 2026
466fb46
Use config naming in Go client constructor
pirate May 27, 2026
605a925
Add translated router topology support
pirate May 27, 2026
42354a9
Align translated config propagation tests
pirate May 27, 2026
b7dd7bc
Align translated injector config tests
pirate May 27, 2026
d29a5a0
Use config wording in client comments
pirate May 27, 2026
8022d78
Align translated extension injection behavior
pirate May 27, 2026
c016d4a
Align CI matrix with translated transports
pirate May 27, 2026
4113d9b
Align translated demo event emission
pirate May 27, 2026
c234162
Fix Python config typing drift
pirate May 27, 2026
3138b8e
Accept Pydantic schemas for custom registrations
pirate May 27, 2026
bd947dc
Fix Python static type checks
pirate May 27, 2026
f3a1344
Type router config map in Python
pirate May 27, 2026
ebcf22e
Accept wildcard middleware names in Go
pirate May 27, 2026
0863c03
Make Go latency ping deterministic
pirate May 27, 2026
09b6d02
Align Python and Go translated utility surfaces
pirate May 27, 2026
e868689
Export translated helpers from Python and Go roots
pirate May 27, 2026
9268679
Fill translated root exports
pirate May 27, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
80 changes: 39 additions & 41 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -45,8 +45,8 @@ jobs:
pnpm exec vitest run \
$(find js/test -name 'test.*.ts' \
! -name 'test.ModCDPClient.ts' \
! -name 'test.NatsUpstreamTransport.ts' \
! -name 'test.ReverseWebSocketUpstreamTransport.ts' \
! -name 'test.NATSUpstreamTransport.ts' \
! -name 'test.ReverseWSUpstreamTransport.ts' \
! -name 'test.proxy.ts' | sort) \
--fileParallelism=false --maxWorkers=1
;;
Expand All @@ -55,8 +55,6 @@ jobs:
uv run python -m unittest \
$(find tests -name 'test_*.py' \
! -name 'test_ModCDPClient.py' \
! -name 'test_NatsUpstreamTransport.py' \
! -name 'test_ReverseWebSocketUpstreamTransport.py' \
| sed 's#/#.#g; s#\.py$##' | sort)
;;
go)
Expand All @@ -81,18 +79,43 @@ jobs:
strategy:
fail-fast: false
matrix:
client: [js, python, go]
upstream: [ws, pipe, reversews, nativemessaging]
mode: [direct, loopback, debugger]
exclude:
- upstream: reversews
include:
- client: js
upstream: ws
mode: direct
- client: js
upstream: ws
mode: loopback
- client: js
upstream: ws
mode: debugger
- client: js
upstream: pipe
mode: direct
- upstream: reversews
- client: js
upstream: pipe
mode: loopback
- upstream: reversews
- client: js
upstream: pipe
mode: debugger
- upstream: nativemessaging
- client: python
upstream: ws
mode: direct
- client: python
upstream: ws
mode: loopback
- client: python
upstream: ws
mode: debugger
- client: go
upstream: ws
mode: direct
- client: go
upstream: ws
mode: loopback
- client: go
upstream: ws
mode: debugger
env:
CI: "true"
CHROME_PATH: /usr/bin/chromium
Expand Down Expand Up @@ -168,37 +191,26 @@ jobs:
run: |
pnpm exec vitest run \
js/test/test.ModCDPClient.ts \
js/test/test.NatsUpstreamTransport.ts \
js/test/test.NATSUpstreamTransport.ts \
js/test/test.proxy.ts \
--testNamePattern "^(?!.*reversews).*" \
--fileParallelism=false --maxWorkers=1
- name: Run JS serialized reversews tests
run: |
pnpm exec vitest run \
js/test/test.ReverseWebSocketUpstreamTransport.ts \
js/test/test.ReverseWSUpstreamTransport.ts \
js/test/test.proxy.ts \
--testNamePattern "reversews" \
--fileParallelism=false --maxWorkers=1
- name: Run Python serialized non-reverse connector tests
run: |
cd python
uv run python -m unittest \
tests.test_ModCDPClient \
tests.test_NatsUpstreamTransport
- name: Run Python serialized reversews tests
run: |
cd python
uv run python -m unittest \
tests.test_ReverseWebSocketUpstreamTransport
uv run python -m unittest tests.test_ModCDPClient
- name: Run Go serialized non-reverse connector tests
run: |
cd go
go test -count=1 -p 1 ./modcdp/client
go test -count=1 -p 1 ./modcdp/transport -run 'Test(UpstreamTransport|WebSocketUpstreamTransport|PipeUpstreamTransport|NativeMessagingUpstreamTransport|NatsUpstreamTransport)'
- name: Run Go serialized reversews tests
run: |
cd go
go test -count=1 -p 1 ./modcdp/transport -run 'TestReverseWebSocketUpstreamTransport'
go test -count=1 -p 1 ./modcdp/transport -run 'Test(UpstreamTransport|WebSocketUpstreamTransport)'

serialized-reversews-demo:
name: serialized reversews demos
Expand All @@ -216,26 +228,12 @@ jobs:
with:
node-version: 22
cache: pnpm
- uses: actions/setup-python@v5
with:
python-version: "3.12"
- uses: astral-sh/setup-uv@v5
- uses: actions/setup-go@v5
with:
go-version-file: go/go.mod
cache-dependency-path: go/go.sum
- run: pnpm install --frozen-lockfile
- run: pnpm run build
- name: Run reversews demos serially
run: |
for mode in loopback debugger; do
node dist/js/examples/demo.js --"$mode" --upstream=reversews
cd python
uv run python examples/demo.py --"$mode" --upstream=reversews
cd ..
cd go
go run ./examples/demo --"$mode" --upstream=reversews
cd ..
done

proxy-example:
Expand Down
Loading
Loading