Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Filesystem Paths Used by batchalign3

Status: Current Last updated: 2026-08-05 22:40 EDT

All current filesystem paths used by the public batchalign3 runtime.

Unless otherwise noted, paths are rooted under batchalign::types::config::layout::ba_state_dir() (defined at crates/batchalign/src/types/config/layout.rs:98), which defaults to ~/.batchalign3 and can be overridden with BATCHALIGN_STATE_DIR.

Configuration

PathPurposeDefined in
~/.batchalign.iniUser config shared with older tooling (for example Rev.AI credentials and default ASR selection)batchalign/config.py, crates/batchalign/src/cli/setup_cmd.rs
~/.batchalign3/server.yamlServer/daemon configurationcrates/batchalign/src/types/config/ (directory module: layout.rs, server.rs, resolve.rs, tests.rs)

Runtime data

PathPurposeDefined in
~/.batchalign3/logs/Structured CLI run logs (run-*.jsonl) and exported log zipscrates/batchalign/src/cli/logs_cmd.rs
~/.batchalign3/server.pidHandshake for the main server: the PID and the port it actually bound, written by the server after its bind succeedscrates/batchalign/src/server_handshake.rs
~/.batchalign3/sidecar-server.pidThe same, for the transcribe sidecar daemoncrates/batchalign/src/server_handshake.rs
~/.batchalign3/server.logstderr log for manual batchalign3 serve startcrates/batchalign/src/cli/serve_cmd.rs
~/.batchalign3/daemon.jsonmain auto-daemon statecrates/batchalign/src/cli/daemon.rs
~/.batchalign3/daemon.lockmain auto-daemon startup lockcrates/batchalign/src/cli/daemon.rs
~/.batchalign3/daemon.logmain auto-daemon stderr logcrates/batchalign/src/cli/daemon.rs
~/.batchalign3/sidecar-daemon.jsonsidecar-daemon state for transcribe-heavy workloadscrates/batchalign/src/cli/daemon.rs
~/.batchalign3/sidecar-daemon.locksidecar-daemon startup lockcrates/batchalign/src/cli/daemon.rs
~/.batchalign3/sidecar-daemon.logsidecar-daemon stderr logcrates/batchalign/src/cli/daemon.rs
~/.batchalign3/jobs/per-job staging directoriescrates/batchalign/src/lib.rs, crates/batchalign/src/routes/jobs/mod.rs
~/.batchalign3/jobs.dbSQLite job persistence databasecrates/batchalign/src/db/mod.rs

Caches

Analysis cache (SQLite)

Utterance-level cache entries for morphosyntax, utterance segmentation, translation, and forced alignment.

The default path comes from dirs::cache_dir() in Rust and intentionally matches the Python-side platformdirs location.

Platform examplePath
macOS~/Library/Caches/batchalign3/cache.db
Linux~/.cache/batchalign3/cache.db

Override with BATCHALIGN_ANALYSIS_CACHE_DIR, which relocates the database to $BATCHALIGN_ANALYSIS_CACHE_DIR/cache.db.

Defined in:

  • crates/batchalign/src/cache/sqlite.rs
  • crates/batchalign/src/cli/cache_cmd.rs

Media cache

Directory used for cached media artifacts and exposed through batchalign3 cache stats|clear.

The default path comes from dirs::data_dir().

Platform examplePath
macOS~/Library/Application Support/batchalign3/media_cache/
Linux~/.local/share/batchalign3/media_cache/

Override with BATCHALIGN_MEDIA_CACHE_DIR.

Defined in:

  • crates/batchalign/src/ensure_wav.rs
  • crates/batchalign/src/cli/cache_cmd.rs

Legacy compatibility note

BA2-era tooling used:

  • ~/.batchalign.ini
  • ~/.batchalign/
  • ~/.cache/batchalign/
  • ~/Library/Application Support/batchalign/media_cache/

The current release intentionally still shares ~/.batchalign.ini, but the state directory, jobs DB, logs, daemon state, and caches otherwise use the batchalign3 prefix.


This page last changed: 2026-08-05 (commit 7ae429e7). The whole book last changed: 2026-09-16 (commit 34d249d8).