Yuvu API - shared API definitions and contracts
  • Rust 85.7%
  • Shell 7.2%
  • Go 6.7%
  • Python 0.2%
  • Makefile 0.2%
Find a file
2026-10-04 15:07:58 +08:00
docs feat(api): add scoped remote task cancellation 2026-10-04 15:07:58 +08:00
proto/yuvu feat(api): add scoped remote task cancellation 2026-10-04 15:07:58 +08:00
scripts feat(adapter-v3): add audited execution stop confirmation 2026-10-04 07:19:39 +08:00
sdk feat(api): add scoped remote task cancellation 2026-10-04 15:07:58 +08:00
tools/rust-sdk-gen fix(sdk): generate Rust image revision contract 2026-10-03 23:04:58 +08:00
.gitignore chore(rust): remove generator build cache 2026-06-20 21:23:28 +08:00
.woodpecker.yml ci: avoid cross-repository contract clones 2026-06-22 13:54:32 +08:00
buf.gen.yaml feat(adapter-v3): add audited execution stop confirmation 2026-10-04 07:19:39 +08:00
buf.yaml feat: add initial protobuf contracts and SDKs 2026-06-07 00:17:07 +08:00
Makefile feat(adapter-v3): add audited execution stop confirmation 2026-10-04 07:19:39 +08:00
README.md fix(codegen): pin protoc and regenerate Python SDK consistently 2026-10-03 22:37:44 +08:00

yuvuApi

Yuvu shared Protobuf contracts and generated SDKs.

Protobuf is the single source of truth for communication across Yuvu service boundaries. Service-internal domain and persistence models remain independently owned. See Contract Governance.

Layout

  • proto/: versioned API contracts.
  • docs/: contract ownership and compatibility rules.
  • sdk/go/: generated Go and Connect clients.
  • sdk/python/: generated Python messages.
  • sdk/rust/: Rust SDK crate generated by prost.

Commands

Code generation uses local protobuf tools rather than Buf remote plugins. The expected toolchain is:

  • buf v1.65.0
  • protoc 3.21.12 (release archive v21.12; also supplied by Bookworm)
  • protoc-gen-go v1.36.10
  • protoc-gen-connect-go v1.19.1
make lint
make generate
make check

The yuvuApi CI uses the same local-tool path: protobuf checks run in a Go image, call scripts/ensure_protobuf_tools.sh, and then execute the Makefile targets. Rust SDK tests install the system protoc package instead of using vendored compiler binaries.

Generated SDKs are committed so consumers can pin the same contract revision. Dynamic adapter capability inputs remain google.protobuf.Struct and are validated by the capability schema owned by Yuvu Core.