Add explanatory comments around startup timing, single-instance focus handoff, config migration, and Windows/Linux autostart choices.
The new comments capture why these implementations were chosen, what alternatives were intentionally avoided, and which user-facing problems those tradeoffs solve.
Bump the version to 0.3.1 and record startup timing after the main window is actually shown.
Keep autostart launches distinct in History by recording a separate tray-start message when the UI intentionally starts hidden.
Rename the application, Go module path, command package, build artifacts, resource script, and embedded icon assets from PySentry/pysentry to GoSentry/gosentry.
Move portable settings to gosentry.yaml while reading legacy pysentry.yaml during the transition, then rewrite settings under the new name.
Update Windows and Linux autostart integration to use GoSentry names while cleaning up legacy PySentry registry, desktop-entry, and systemd artifacts.
Refresh README, architecture notes, roadmap, changelog, and release examples for version 0.3.0.
Add a shared --start-in-tray argument that lets autostart start the scheduler and tray integration without opening the main window.
Write the argument into Windows Startup shortcuts and Linux XDG Autostart desktop entries, and verify existing autostart entries include it.
Keep manual launches unchanged and let a manual second launch reveal an already-running instance while duplicate autostart launches stay hidden.
Wrap dynamic job detail labels so long names, schedules, commands, and status values no longer change the right panel minimum width when the selected job changes.
Point embedded and Windows resource icons at the current asset filenames so tests and Windows builds continue to work after the asset cleanup.
Prevent repeated application launches by using a local single-instance control channel. A second process forwards a show command to the already running instance and exits.
Bump the application version to 0.2.4 and update README artifact examples plus docs/CHANGELOG.md.
Add a Settings-specific row layout with a narrower label column so Storage and About no longer waste half the width on captions.
Format the Application section with the same row layout and reserve a third column for the autostart status. The checkbox column is sized to fit the longest Application checkbox so the section reads like a table.
Remove the duplicated application version row from the Settings Application block now that version details live in About.
Keep the autostart control inline and shorten its checkbox text to Start on login.
Tag Docker builder images with the current application version in both Linux Docker build scripts so different release environments do not overwrite each other with one floating builder tag.
Replace the Settings Scheduler note with an About block that shows the GoSentry version, Go runtime version, Fyne module version, and the project repository link.
Improve the History tab by keeping records in chronological order, rendering them as a compact table, and allowing the Time column to toggle ascending or descending order.
Use the native Fyne table header so users can resize columns, including Detail and Log, and show only the log file name instead of the full log path.
Bump the application version to 0.2.3 and update README artifact examples plus docs/CHANGELOG.md.
Append new History events at the end instead of prepending them so the tab reads from oldest to newest.
Replace the loose widget.List rendering with a table that exposes Time, Trigger, Job, State, Detail, and Log columns. This removes the large visual gaps between rows and makes the activity log easier to scan.
Use full timestamps for UI-generated events so startup, UI actions, manual runs, and scheduled runs share the same time format.
Add Linux desktop integration that installs a user-level .desktop file and icon under XDG data directories so taskbars can match the PySentry window to the application icon.
Pass the installed icon path into Linux autostart desktop entries when available, while keeping the Windows and fallback autostart APIs compatible.
Bump the application version to 0.2.2, update README artifact examples, and record the release notes in docs/CHANGELOG.md. Also adjust the Mermaid architecture diagram so Gitea can render it without invalid SVG line-break tags.
Measure GUI startup from the beginning of Run until the main view has loaded its store and is ready to build the History model.
Insert the measurement as the first in-memory History event using the existing RunRecord display path: Application / Started / Startup completed in <duration>. This keeps startup diagnostics visible in the UI without creating a separate application log file.
No scheduler, storage, or command log behavior is changed.
Replace the resizable HSplit on the Jobs tab with a border layout that keeps the job list pane at a stable minimum width.
The left pane now uses a small custom layout that asks Fyne for the content minimum size and applies at least 480 logical pixels. This prevents the divider from moving when the selected job changes while still allowing the toolbar buttons, including Delete, to fit when their calculated minimum width is larger.
Only the Jobs tab layout is changed; settings, storage, scheduler behavior, and documentation are intentionally left untouched.