Skip to content

feat: Phase 1 — Unix socket transport, wire protocol, public API (v0.1.0)#1

Merged
kolkov merged 10 commits into
mainfrom
feat/phase1-internal-packages
May 17, 2026
Merged

feat: Phase 1 — Unix socket transport, wire protocol, public API (v0.1.0)#1
kolkov merged 10 commits into
mainfrom
feat/phase1-internal-packages

Conversation

@kolkov
Copy link
Copy Markdown
Contributor

@kolkov kolkov commented May 17, 2026

Summary

First release of gogpu/compose — Pure Go multi-process composition library.

Internal packages (5):

  • internal/protocol — 64-byte wire protocol v1, 128-byte handshake (100% coverage)
  • internal/codec — Raw + LZ4 compression (97% coverage, 2.9 GB/s, 99.6% ratio on GUI pixels)
  • internal/conn — module registry, lifecycle manager, hot-plug (98.9% coverage)
  • internal/flow — pull-based frame pacing, adaptive rate reduction (100% coverage)
  • internal/transport/socket — Unix domain socket, framed I/O (95.1% coverage, 4.3 GB/s)

Public API:

  • compose.Listen() / compose.Dial() — server and client entry points
  • compose.Frame — central data type
  • Functional options: WithMaxModules, WithCompression, WithName, WithFrameSize, WithFPS
  • 22 integration tests

Repository setup:

  • CI/CD (GitHub Actions: build/test/lint on Ubuntu/macOS/Windows, Codecov)
  • Enterprise golangci-lint v2 config (30+ linters, 0 issues)
  • CONTRIBUTING.md, CODE_OF_CONDUCT.md, SECURITY.md, CHANGELOG.md
  • docs/ARCHITECTURE.md

Metrics:

  • ~9,000 LOC, 220+ tests, ~98% average coverage
  • Zero CGO, cross-platform (Linux/macOS/Windows)
  • One dependency: github.com/pierrec/lz4/v4

Test plan

  • go build ./... — PASS
  • go test ./... -count=1 — 6 packages, 0 FAIL
  • golangci-lint run --timeout=5m — 0 issues
  • go vet ./... — clean
  • go fmt ./... — clean
  • CI green (Ubuntu/macOS/Windows)

@codecov
Copy link
Copy Markdown

codecov Bot commented May 17, 2026

Welcome to Codecov 🎉

Once you merge this PR into your default branch, you're all set! Codecov will compare coverage reports and display results in all future pull requests.

ℹ️ You can also turn on project coverage checks and project coverage reporting on Pull Request comment

Thanks for integrating Codecov - We've got you covered ☂️

@kolkov kolkov merged commit df08c56 into main May 17, 2026
9 checks passed
@kolkov kolkov deleted the feat/phase1-internal-packages branch May 17, 2026 09:20
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