Releases: experimaestro/experimaestro-python
Releases · experimaestro/experimaestro-python
v2.0.0b27
refactor(api): change get_job to use task_id instead of experiment_id Jobs are stored independently at workspace/jobs/task_id/job_id/, so they don't need experiment context to be retrieved. This simplifies the API and better reflects the actual data model. Also fixes SSH client --remote-xpm option to properly parse commands with arguments using shlex.split(). Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
v2.0.0b26
feat(scheduler): properly track SCHEDULED state for batch jobs - Add _set_job_state_from_process() to check process state and set job state to SCHEDULED or RUNNING accordingly - Add aio_wait_until_running() to Process base class with polling default - SLURM: implement event-driven aio_wait_until_running() using watcher - Add clock icon (🕐) for SCHEDULED state in TUI - Show informative message when trying to view logs for SCHEDULED jobs This enables proper tracking of jobs that are submitted to batch systems like SLURM but not yet executing. The TUI now shows a distinct icon and prevents attempts to view logs that don't exist yet. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
v2.0.0b25
v2.0.0b24
v2.0.0b23
v2.0.0b22
feat(scheduler): add adaptive file polling with FileWatcher Add a new polling module that provides hybrid file watching: - FileWatcher combines watchdog with adaptive polling (0.5s to 30s) - When watchdog fires, polling interval resets to minimum - When files are idle, polling interval gradually increases - Provides reliable change detection as fallback when watchdog misses events Integrate FileWatcher into EventReader for more reactive file monitoring. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
v2.0.0b21
feat(tui): add OSC 52 clipboard support for remote/tmux environments Clipboard operations now work over SSH and tmux by using OSC 52 escape sequences as a fallback when pyperclip fails. This enables copy actions (like 'f' to copy path) to work in remote terminal sessions. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
v2.0.0b20
feat(tui): add OSC 52 clipboard support for remote/tmux environments Clipboard operations now work over SSH and tmux by using OSC 52 escape sequences as a fallback when pyperclip fails. This enables copy actions (like 'f' to copy path) to work in remote terminal sessions. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
v2.0.0b19
fix(events): prevent duplicate event processing due to race condition When processing event files in order (e.g., events-2.jsonl triggering read of events-1.jsonl), the on_created callback could later reset the file position to 0, causing events to be processed twice. Fix: Only set file position to 0 in on_created if not already tracked. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>