Skip to content

✨ sdk: add DialContext/tcpConn and ActionContext.ShouldStop#1

Open
CodFrm wants to merge 4 commits into
mainfrom
feature/kafka-phase1-sdk
Open

✨ sdk: add DialContext/tcpConn and ActionContext.ShouldStop#1
CodFrm wants to merge 4 commits into
mainfrom
feature/kafka-phase1-sdk

Conversation

@CodFrm

@CodFrm CodFrm commented Apr 23, 2026

Copy link
Copy Markdown
Contributor

Summary

  • SDK hostCaller 三方同步新增 IOSetDeadline / ActionShouldStopsdk/go/opskat/hostcall.go + hostcall_wasm.go + hostcall_stub.go
  • 新增 sdk/go/opskat/tcp.go: DialContext / Dial / tcpConn 实现 net.Conn,签名契合 kafka-go Transport.Dial,SetDeadline / SetReadDeadline / SetWriteDeadline 通过 host_io_set_deadline 传回宿主
  • ActionContext.ShouldStop() 供长驻 action 轮询取消(sdk/go/opskat/opskat.go
  • TestHost 增加 WithMockTCP / WithActionCancel 选项,IORead/IOWrite/IOClose/IOSetDeadline 对 TCP handle 分支处理

Spec: 对应 opskat repo docs/superpowers/specs/2026-04-23-kafka-extension-design.md §2
Coupling: 必须与 opskat feature/kafka-phase1-framework PR 同批次 merge,否则 hostABI 错位

Test plan

  • go test ./... 全绿(8 个单测:ActionCancellation、tcpConn round-trip、SetReadDeadline、ActionContext.ShouldStop 等)
  • GOOS=wasip1 GOARCH=wasm go build . 通过
  • go vet ./... clean

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant