Integrate integration/worker-restore without reviving removed Worker socket/discovery paths. Keep restore candidate allocation and canonical effects deferred until activation, with registry reclamation and observer publication fences on the in-process controller. Preserve develop BackendJob/provenance, immutable Journal body capture and erasure, and Workdir diagnostics. Adapt obsolete socket fault tests to in-process publication and registry drift boundaries. Validation: root cargo check; ordinary worker, worker-runtime and standalone package tests; Server restore (43) and Journal (49) filters; mcp/server-api/runtime-api/session-store tests; optional Runtime feature check; OpenAPI and six generated TypeScript checks; Web restore unit tests (15); runner tests (21); fmt, naming and diff checks. Full workspace/Server suites, E2E, live/model and fixture generation not run.
71 lines
2.2 KiB
TOML
71 lines
2.2 KiB
TOML
[package]
|
|
name = "worker-runtime"
|
|
description = "Embedded memory-backed Runtime API for Worker management"
|
|
version = "0.1.0"
|
|
edition.workspace = true
|
|
license.workspace = true
|
|
autobins = false
|
|
|
|
[[bin]]
|
|
name = "yoi-runtime"
|
|
path = "src/main.rs"
|
|
required-features = ["ws-server", "fs-store"]
|
|
|
|
[[bin]]
|
|
name = "worker-runtime"
|
|
path = "src/worker_runtime_bin.rs"
|
|
required-features = ["ws-server", "fs-store"]
|
|
|
|
[features]
|
|
default = ["ws-server", "fs-store"]
|
|
fs-store = ["dep:fs4"]
|
|
# Offline fixture tooling only; never enabled by the product defaults.
|
|
test-support = ["fs-store", "ws-server"]
|
|
# Explicit process-test synchronization; independent of offline fixture tooling.
|
|
restore-checkpoints = ["fs-store"]
|
|
http-server = ["dep:axum", "dep:tower", "dep:reqwest"]
|
|
ws-server = ["http-server", "axum/ws", "tokio/sync"]
|
|
|
|
[dependencies]
|
|
agen.workspace = true
|
|
async-trait.workspace = true
|
|
base64.workspace = true
|
|
axum = { workspace = true, optional = true }
|
|
futures.workspace = true
|
|
decodal.workspace = true
|
|
flow = { path = "../flow" }
|
|
fs4 = { workspace = true, optional = true }
|
|
manifest.workspace = true
|
|
libc.workspace = true
|
|
protocol.workspace = true
|
|
runtime-api.workspace = true
|
|
serde = { workspace = true, features = ["derive"] }
|
|
session-store.workspace = true
|
|
sha2.workspace = true
|
|
serde_json.workspace = true
|
|
reqwest = { version = "0.13", optional = true, default-features = false, features = ["json", "rustls"] }
|
|
ring.workspace = true
|
|
tar.workspace = true
|
|
thiserror = { workspace = true }
|
|
tokio = { workspace = true, features = ["net", "process", "rt", "signal", "sync", "time"] }
|
|
tracing.workspace = true
|
|
tracing-subscriber.workspace = true
|
|
toml.workspace = true
|
|
url.workspace = true
|
|
uuid = { workspace = true, features = ["v7"] }
|
|
zeroize.workspace = true
|
|
tower = { workspace = true, features = ["util"], optional = true }
|
|
worker.workspace = true
|
|
server-api = { path = "../server-api" }
|
|
workdir.workspace = true
|
|
|
|
[dev-dependencies]
|
|
tools.workspace = true
|
|
workdir = { workspace = true, features = ["http-client"] }
|
|
futures.workspace = true
|
|
agen.workspace = true
|
|
serial_test = "3.4.0"
|
|
tempfile.workspace = true
|
|
tokio = { workspace = true, features = ["macros", "rt-multi-thread", "test-util"] }
|
|
tokio-tungstenite.workspace = true
|