Files
Genarrative/server-rs/Cargo.toml
T
kdletters ee3948b491 合并旧创作模板退役分支
合并 codex/retire-legacy-creation,退役旧创作模板业务并保留历史数据壳
保留 master 最新编辑器 Agent、画布和个人页能力
补齐现役编辑器 Agent 的 LLM 与生成结果读取链路
同步 Vite、ESLint、Rust workspace、SpacetimeDB 与文档边界
2026-07-20 20:06:26 +08:00

154 lines
5.4 KiB
TOML

# 当前阶段先建立虚拟 workspace。
# 后续按“主工程 crate + 独立模块 crate”模式逐项补充 members。
[workspace]
resolver = "2"
default-members = [
"crates/api-server",
]
exclude = [
"crates/module-bark-battle",
"crates/module-big-fish",
"crates/module-combat",
"crates/module-creative-agent",
"crates/module-custom-world",
"crates/module-inventory",
"crates/module-jump-hop",
"crates/module-match3d",
"crates/module-npc",
"crates/module-progression",
"crates/module-puzzle",
"crates/module-puzzle-clear",
"crates/module-quest",
"crates/module-runtime-item",
"crates/module-runtime-story",
"crates/module-square-hole",
"crates/module-story",
"crates/module-visual-novel",
"crates/module-wooden-fish",
"crates/platform-agent",
]
members = [
"crates/api-server",
"crates/module-ai",
"crates/module-assets",
"crates/module-auth",
"crates/module-editor-agent",
"crates/module-runtime",
"crates/platform-oss",
"crates/platform-auth",
"crates/platform-audio",
"crates/platform-hyper3d",
"crates/platform-image",
"crates/platform-llm",
"crates/platform-matting",
"crates/platform-wechat",
"crates/platform-speech",
"crates/platform-editor-agent",
"crates/pingora-gateway",
"crates/server-manager-panel",
"crates/shared-contracts",
"crates/shared-kernel",
"crates/shared-logging",
"crates/spacetime-client",
"crates/spacetime-module",
"crates/tests-support",
]
[workspace.package]
edition = "2024"
version = "0.1.0"
license = "UNLICENSED"
[workspace.dependencies]
# 本地 workspace crate 路径统一在这里维护,成员 crate 只声明 feature 差异。
module-ai = { path = "crates/module-ai", default-features = false }
module-assets = { path = "crates/module-assets", default-features = false }
module-auth = { path = "crates/module-auth", default-features = false }
module-editor-agent = { path = "crates/module-editor-agent", default-features = false }
module-runtime = { path = "crates/module-runtime", default-features = false }
platform-editor-agent = { path = "crates/platform-editor-agent", default-features = false }
platform-auth = { path = "crates/platform-auth", default-features = false }
platform-audio = { path = "crates/platform-audio", default-features = false }
platform-hyper3d = { path = "crates/platform-hyper3d", default-features = false }
platform-image = { path = "crates/platform-image", default-features = false }
platform-llm = { path = "crates/platform-llm", default-features = false }
platform-matting = { path = "crates/platform-matting", default-features = false }
platform-oss = { path = "crates/platform-oss", default-features = false }
platform-speech = { path = "crates/platform-speech", default-features = false }
platform-wechat = { path = "crates/platform-wechat", default-features = false }
pingora-gateway = { path = "crates/pingora-gateway", default-features = false }
shared-contracts = { path = "crates/shared-contracts", default-features = false }
shared-kernel = { path = "crates/shared-kernel", default-features = false }
shared-logging = { path = "crates/shared-logging", default-features = false }
spacetime-client = { path = "crates/spacetime-client", default-features = false }
argon2 = "0.5"
aes = "0.8"
async-stream = "0.3"
async-trait = "0.1"
axum = "0.8"
base64 = "0.22"
cbc = { version = "0.1", features = ["alloc"] }
bytes = "1"
curl = "0.4"
csv = "1"
dotenvy = "0.15"
flate2 = "1"
futures-util = "0.3"
hmac = "0.12"
http-body-util = "0.1"
httpdate = "1"
hex = "0.4"
image = { version = "0.25", default-features = false }
jsonwebtoken = "9"
log = "0.4"
mime_guess = "2.0.5"
pingora = { version = "0.8.1", default-features = false, features = ["proxy", "rustls"] }
pingora-http = { version = "0.8.1", default-features = false }
pingora-proxy = { version = "0.8.1", default-features = false }
rand_core = "0.6"
reqwest = { version = "0.12", default-features = false }
ring = "0.17"
serde = { version = "1", features = ["derive"] }
serde_json = "1"
serde_urlencoded = "0.7"
sha1 = "0.10"
sha2 = "0.10"
socket2 = "0.6"
spacetimedb = "=2.6.1"
spacetimedb-sdk = "=2.6.1"
spacetimedb-lib = { version = "=2.6.1", default-features = false }
time = "0.3"
tokio = "1"
tokio-stream = "0.1"
tokio-tungstenite = "0.27"
tower = "0.5"
tower-http = "0.6"
tracing = "0.1"
opentelemetry = "0.31"
opentelemetry-appender-tracing = { version = "0.31", default-features = false, features = ["experimental_use_tracing_span_context"] }
opentelemetry-otlp = { version = "0.31", default-features = false, features = ["http-proto", "reqwest-blocking-client", "trace", "metrics", "logs"] }
opentelemetry_sdk = { version = "0.31", default-features = false, features = ["trace", "metrics", "logs"] }
tracing-opentelemetry = { version = "0.32", default-features = false }
tracing-subscriber = "0.3"
windows-sys = "0.61"
url = "2"
urlencoding = "2"
uuid = "1"
webp = "0.3"
x509-parser = "0.16"
zip = { version = "2", default-features = false }
[profile.dev]
opt-level = 0 # 默认 0,有人手滑改 1/2 会慢
debug = 1 # line-tables-only 比 full 快 30 %
codegen-units = 256 # 多单元并行 CodeGen
lto = "off" # dev 别开 LTO
incremental = true
[profile.release]
opt-level = 3 # 最大优化等级
lto = "thin" # 启用 Thin LTO,平衡编译时间和性能
codegen-units = 1 # 减少并行代码生成单元,提升优化但增加编译时间