mirror of
https://github.com/fabro-sh/fabro.git
synced 2026-10-07 03:00:29 +00:00
Ed25519 asymmetric JWT: arc-web signs with private key, arc-attractor verifies with public key. Adds AuthenticatedService axum extractor to all routes, jose dependency for TypeScript signing, and key generation script. Startup behavior: ARC_JWT_PUBLIC_KEY set → enforce JWT auth; not set + ARC_INSECURE_DISABLE_AUTHENTICATION=true → allow unauthenticated; neither → refuse to start with clear error. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
50 lines
1.3 KiB
TOML
50 lines
1.3 KiB
TOML
[workspace]
|
|
members = ["crates/*"]
|
|
resolver = "2"
|
|
|
|
[workspace.package]
|
|
edition = "2021"
|
|
version = "0.1.0"
|
|
license = "MIT"
|
|
|
|
[workspace.dependencies]
|
|
anyhow = "1"
|
|
thiserror = "2"
|
|
serde = { version = "1", features = ["derive"] }
|
|
serde_json = "1"
|
|
tokio = { version = "1", features = ["full"] }
|
|
reqwest = { version = "0.12", default-features = false, features = ["json", "stream", "rustls-tls"] }
|
|
ulid = "1"
|
|
uuid = { version = "1", features = ["v4"] }
|
|
rand = "0.8"
|
|
dotenvy = "0.15"
|
|
futures = "0.3"
|
|
tokio-stream = "0.1"
|
|
async-trait = "0.1"
|
|
base64 = "0.22"
|
|
bytes = "1"
|
|
tokio-util = "0.7"
|
|
clap = { version = "4", features = ["derive"] }
|
|
jsonschema = "0.42"
|
|
chrono = "0.4"
|
|
bollard = "0.18"
|
|
tar = "0.4"
|
|
dialoguer = "0.12"
|
|
git2 = "0.19"
|
|
tracing = "0.1"
|
|
rmcp = { version = "0.15.0", default-features = false }
|
|
walkdir = "2"
|
|
regex = "1"
|
|
aho-corasick = "1"
|
|
toml = "0.8"
|
|
jsonwebtoken = "9"
|
|
daytona-sdk = { git = "https://github.com/brynary/daytona-sdk-rust", package = "daytona-sdk" }
|
|
daytona-api-client = { git = "https://github.com/brynary/daytona-sdk-rust", package = "daytona-api-client" }
|
|
|
|
# regex is extremely slow in debug builds (~10s to compile gitleaks patterns)
|
|
[profile.dev.package.regex]
|
|
opt-level = 2
|
|
[profile.dev.package.regex-automata]
|
|
opt-level = 2
|
|
[profile.dev.package.regex-syntax]
|
|
opt-level = 2
|