rivox 1.0.0

Universal polyglot build coordination layer for Python, Rust, and Node monorepos
Documentation
# Rivox Configuration Manual

Complete reference for `rivox.toml` and `rivox.lock`.

---

## `rivox.toml` Specification

The user-authored manifest at the root of a workspace.

```toml
[project]
name = "my-polyglot-monorepo"    # String (required): Monorepo workspace name
version = "1.0.0"                 # String (required): Workspace version

[ecosystems.python]
path = "services/api"             # PathBuf (required): Path to service directory containing pyproject.toml
tool = "uv"                       # String (required): Native resolver tool ("uv")

[ecosystems.rust]
path = "services/core"            # PathBuf (required): Path to service directory containing Cargo.toml
tool = "cargo"                    # String (required): Native resolver tool ("cargo")

[ecosystems.node]
path = "services/web"             # PathBuf (required): Path to service directory containing package.json
tool = "pnpm"                     # String (required): Native resolver tool ("pnpm")

[[cross_refs]]
consumer = "python:services/api"   # String (required): Consumer service identifier
dependency = "rust:services/core" # String (required): Dependency service identifier
type = "native_extension"         # String (required): Edge type ("native_extension", "build_dep")
```

---

## `rivox.lock` Specification

Generated deterministic lockfile (manifest of manifests). Never hand-edited.

```toml
version = 1
created_at = "2026-07-27T19:42:00Z"

[[ecosystem]]
name = "python"
tool = "uv"
tool_version = "0.4.15"
lockfile_path = "services/api/uv.lock"
lockfile_hash = "sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"

[[cross_ref]]
from = "python:services/api"
to = "rust:services/core"
hash = "sha256:8f434346648f6b96df89dda901c5176b10a6d83961dd3c1ac88b59b2dc327aa4"

[provenance]
bundle_path = ".rivox/provenance.json"
signature_ref = "sigstore:rekor"
```