This PR fixes Issue #59 by initializing a legitimate default user directory (document_dir / home_dir) on app startup, displaying it to the user, disabling "Generate (.ti1)" until both a basename and working directory are present, and adding safe defense-in-depth backend directory resolution across all stages.
Incremented point version 0.1.11 -> 0.1.12 across package.json, src-tauri/Cargo.toml, and src-tauri/tauri.conf.json.
### Summary
This PR fixes Issue #59 by initializing a legitimate default user directory (`document_dir` / `home_dir`) on app startup, displaying it to the user, disabling "Generate (.ti1)" until both a basename and working directory are present, and adding safe defense-in-depth backend directory resolution across all stages.
Closes #59
### Changes
1. **Rust Backend (`src-tauri/src/commands.rs`, `src-tauri/src/lib.rs`)**:
- Added `get_default_working_dir` command and registered it in `lib.rs`.
- Added `resolve_safe_cwd` helper: if `cwd` is empty, resolves `document_dir` or `home_dir` rather than `None`.
- Applied `resolve_safe_cwd` across `run_targen`, `run_printtarg`, `run_chartread`, `run_colprof`, and `run_profcheck`.
- Removed obsolete `DEBUG RUN_TARGEN` println.
2. **Frontend (`src/js/targen.js`)**:
- On `initTargen()`, queries `get_default_working_dir` and sets `currentWorkingDir`.
- Displays `Directory: <path>` in `selectedPathDisplay`.
- Enforces `btnGenerate.disabled = !(basename && currentWorkingDir)`.
3. **Version Bump**:
- Incremented point version `0.1.11` -> `0.1.12` across `package.json`, `src-tauri/Cargo.toml`, and `src-tauri/tauri.conf.json`.
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Summary
This PR fixes Issue #59 by initializing a legitimate default user directory (
document_dir/home_dir) on app startup, displaying it to the user, disabling "Generate (.ti1)" until both a basename and working directory are present, and adding safe defense-in-depth backend directory resolution across all stages.Closes #59
Changes
src-tauri/src/commands.rs,src-tauri/src/lib.rs):get_default_working_dircommand and registered it inlib.rs.resolve_safe_cwdhelper: ifcwdis empty, resolvesdocument_dirorhome_dirrather thanNone.resolve_safe_cwdacrossrun_targen,run_printtarg,run_chartread,run_colprof, andrun_profcheck.DEBUG RUN_TARGENprintln.src/js/targen.js):initTargen(), queriesget_default_working_dirand setscurrentWorkingDir.Directory: <path>inselectedPathDisplay.btnGenerate.disabled = !(basename && currentWorkingDir).0.1.11->0.1.12acrosspackage.json,src-tauri/Cargo.toml, andsrc-tauri/tauri.conf.json.