Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions v2/crates/wifi-densepose-sensing-server/src/cli.rs
Original file line number Diff line number Diff line change
Expand Up @@ -19,8 +19,8 @@ pub struct Args {
#[arg(long, default_value = "5005")]
pub udp_port: u16,

/// Path to UI static files
#[arg(long, default_value = "../../ui")]
/// Path to UI static files (from `v2/` cwd use `../ui`)
#[arg(long, default_value = "../ui")]
pub ui_path: PathBuf,

/// Tick interval in milliseconds (default 100 ms = 10 fps for smooth pose animation)
Expand Down
26 changes: 23 additions & 3 deletions v2/crates/wifi-densepose-sensing-server/src/main.rs
Original file line number Diff line number Diff line change
Expand Up @@ -83,8 +83,8 @@ struct Args {
#[arg(long, default_value = "5005")]
udp_port: u16,

/// Path to UI static files
#[arg(long, default_value = "../../ui")]
/// Path to UI static files (repo `ui/`; from `v2/` use `../ui` or rely on auto-detect)
#[arg(long, default_value = "../ui")]
ui_path: PathBuf,

/// Tick interval in milliseconds (default 100 ms = 10 fps for smooth pose animation)
Expand Down Expand Up @@ -4223,6 +4223,25 @@ async fn broadcast_tick_task(state: SharedState, tick_ms: u64) {

// ── Main ─────────────────────────────────────────────────────────────────────

/// If `--ui-path` points nowhere (wrong cwd), try common repo layouts relative to cwd.
fn coalesce_ui_path(initial: std::path::PathBuf) -> std::path::PathBuf {
if initial.is_dir() {
return initial;
}
for rel in &["../ui", "./ui", "../../ui"] {
let p = std::path::PathBuf::from(rel);
if p.is_dir() {
warn!(
"UI path {} not found; using {} (set --ui-path explicitly if wrong)",
initial.display(),
p.display()
);
return p;
}
}
initial
}

#[tokio::main]
async fn main() {
// Initialize tracing
Expand All @@ -4233,7 +4252,8 @@ async fn main() {
)
.init();

let args = Args::parse();
let mut args = Args::parse();
args.ui_path = coalesce_ui_path(args.ui_path);

// Handle --benchmark mode: run vital sign benchmark and exit
if args.benchmark {
Expand Down
7 changes: 7 additions & 0 deletions v2/rust-toolchain.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
# wifi-densepose-sensing-server (ruvector-mincut -> ruvector-core / hnsw_rs / mmap-rs):
# - mmap-rs 0.7: Cargo must accept edition 2024 in a dependency manifest (1.85+).
# - hnsw_rs 0.3.4: u*.is_multiple_of (1.86+).
# - ruvector-core 2.0.5 x86_64: #[target_feature(enable = "avx512f")] (1.89+ stable).
[toolchain]
channel = "1.89"
profile = "minimal"