# Plan: Project-Specific Conductor Directory

## Phase 1: Extend paths.py
Focus: Add project-specific path resolution

- [ ] Task 1.1: Add project-aware conductor path functions
  - WHERE: src/paths.py
  - WHAT: Add optional project_path parameter to get_conductor_dir, get_tracks_dir, get_track_state_dir
  - HOW: If project_path provided, resolve relative to project root; otherwise use global
  - SAFETY: Maintain backward compatibility with no-arg calls

- [ ] Task 1.2: Add project conductor path resolution
  - WHERE: src/paths.py
  - WHAT: New function `_resolve_project_conductor_dir(project_path)` that reads from project TOML
  - HOW: Load project TOML, check `[conductor].dir` key
  - SAFETY: New function, no side effects

## Phase 2: Update project_manager.py
Focus: Use project-specific paths for track operations

- [ ] Task 2.1: Update save_track_state to use project conductor dir
  - WHERE: src/project_manager.py (around line 240)
  - WHAT: Pass project base_dir to paths.get_track_state_dir()
  - HOW: Get base_dir from project_path, call paths with project_path param
  - SAFETY: Maintain existing function signature compatibility

- [ ] Task 2.2: Update load_track_state to use project conductor dir
  - WHERE: src/project_manager.py (around line 252)
  - WHAT: Load track state from project-specific directory
  - HOW: Same as above

- [ ] Task 2.3: Update get_all_tracks to use project conductor dir
  - WHERE: src/project_manager.py (around line 297)
  - WHAT: List tracks from project-specific directory
  - HOW: Accept optional project_path param

## Phase 3: Update app_controller.py
Focus: Pass project path to track operations

- [ ] Task 3.1: Update track creation to use project conductor dir
  - WHERE: src/app_controller.py (around line 1907, 1937)
  - WHAT: Pass active_project_path to track path functions
  - HOW: Get active_project_path, pass to paths.get_tracks_dir()
  - SAFETY: Use existing active_project_path attribute

## Phase 4: Tests
Focus: Verify project-specific behavior

- [ ] Task 4.1: Write test for project-specific conductor dir
  - WHERE: tests/test_project_paths.py (new file)
  - WHAT: Create mock project with custom conductor dir, verify tracks saved there
  - HOW: Mock project_manager, verify path resolution
  - SAFETY: New test file

- [ ] Task 4.2: Test backward compatibility
  - WHERE: tests/test_project_paths.py
  - WHAT: Verify global paths still work without project_path
  - HOW: Call functions without project_path, verify defaults
