diff --git a/rps/service.vdl.go b/rps/service.vdl.go
index e5101e2..49d8f17 100644
--- a/rps/service.vdl.go
+++ b/rps/service.vdl.go
@@ -530,17 +530,17 @@
 	JudgePlayServerStream
 }
 
-// JudgePlayContextStub is a wrapper that converts ipc.ServerCall into
+// JudgePlayContextStub is a wrapper that converts ipc.StreamServerCall into
 // a typesafe stub that implements JudgePlayContext.
 type JudgePlayContextStub struct {
-	ipc.ServerCall
+	ipc.StreamServerCall
 	valRecv PlayerAction
 	errRecv error
 }
 
-// Init initializes JudgePlayContextStub from ipc.ServerCall.
-func (s *JudgePlayContextStub) Init(call ipc.ServerCall) {
-	s.ServerCall = call
+// Init initializes JudgePlayContextStub from ipc.StreamServerCall.
+func (s *JudgePlayContextStub) Init(call ipc.StreamServerCall) {
+	s.StreamServerCall = call
 }
 
 // RecvStream returns the receiver side of the Judge.Play server stream.
diff --git a/tunnel/tunnel.vdl.go b/tunnel/tunnel.vdl.go
index e8bb4e5..e1cbb01 100644
--- a/tunnel/tunnel.vdl.go
+++ b/tunnel/tunnel.vdl.go
@@ -554,17 +554,17 @@
 	TunnelForwardServerStream
 }
 
-// TunnelForwardContextStub is a wrapper that converts ipc.ServerCall into
+// TunnelForwardContextStub is a wrapper that converts ipc.StreamServerCall into
 // a typesafe stub that implements TunnelForwardContext.
 type TunnelForwardContextStub struct {
-	ipc.ServerCall
+	ipc.StreamServerCall
 	valRecv []byte
 	errRecv error
 }
 
-// Init initializes TunnelForwardContextStub from ipc.ServerCall.
-func (s *TunnelForwardContextStub) Init(call ipc.ServerCall) {
-	s.ServerCall = call
+// Init initializes TunnelForwardContextStub from ipc.StreamServerCall.
+func (s *TunnelForwardContextStub) Init(call ipc.StreamServerCall) {
+	s.StreamServerCall = call
 }
 
 // RecvStream returns the receiver side of the Tunnel.Forward server stream.
@@ -638,17 +638,17 @@
 	TunnelShellServerStream
 }
 
-// TunnelShellContextStub is a wrapper that converts ipc.ServerCall into
+// TunnelShellContextStub is a wrapper that converts ipc.StreamServerCall into
 // a typesafe stub that implements TunnelShellContext.
 type TunnelShellContextStub struct {
-	ipc.ServerCall
+	ipc.StreamServerCall
 	valRecv ClientShellPacket
 	errRecv error
 }
 
-// Init initializes TunnelShellContextStub from ipc.ServerCall.
-func (s *TunnelShellContextStub) Init(call ipc.ServerCall) {
-	s.ServerCall = call
+// Init initializes TunnelShellContextStub from ipc.StreamServerCall.
+func (s *TunnelShellContextStub) Init(call ipc.StreamServerCall) {
+	s.StreamServerCall = call
 }
 
 // RecvStream returns the receiver side of the Tunnel.Shell server stream.
