fix(dev): recover bacon run after transient errors #34

Merged
jwilger merged 1 commit from fix/issue-31-bacon-rebuild-recovery into main 2026-05-02 12:06:52 -07:00
Owner

Summary

  • Switch the bacon run job to wait for in-flight cargo invocations instead of killing them mid-save.
  • Add a 500ms grace period to coalesce multi-file or atomic editor saves before restarting.
  • Document the rationale in bacon.toml and add an Unreleased changelog entry.

Verification

  • bacon --list-jobs
  • python -c 'import tomllib; run=tomllib.load(open("bacon.toml","rb"))["jobs"]["run"]; assert run["background"] is False; assert run["grace_period"] == "500ms"; assert run["on_change_strategy"] == "wait_then_restart"; print("bacon run waits with 500ms grace")'

Closes #31

## Summary - Switch the bacon run job to wait for in-flight cargo invocations instead of killing them mid-save. - Add a 500ms grace period to coalesce multi-file or atomic editor saves before restarting. - Document the rationale in bacon.toml and add an Unreleased changelog entry. ## Verification - bacon --list-jobs - python -c 'import tomllib; run=tomllib.load(open("bacon.toml","rb"))["jobs"]["run"]; assert run["background"] is False; assert run["grace_period"] == "500ms"; assert run["on_change_strategy"] == "wait_then_restart"; print("bacon run waits with 500ms grace")' Closes #31
fix(dev): recover bacon run after transient errors
All checks were successful
auto_review auto_review: no findings
CI / Nix flake check (pull_request) Successful in 1m45s
0ef2b32bd3
auto-review left a comment

This PR updates the bacon run job to wait for in-flight cargo invocations and introduces a 500ms grace period to handle transient errors more gracefully. The changes are documented in bacon.toml and the changelog, improving the development workflow by reducing manual intervention.

Walkthrough

  • CHANGELOG.md:

    • Added an entry describing the new behavior of the bacon run job, which now waits for in-flight cargo runs and applies a 500ms grace period.
    • The changelog entry should clearly communicate the benefits and context of these changes.
  • bacon.toml:

    • Updated the configuration to set background to false, grace_period to 500ms, and on_change_strategy to wait_then_restart.
    • Added comments explaining the rationale behind these changes, which help in understanding the new behavior and its advantages.

Pre-merge checks

  • [~] CHANGELOG updated — diff is docs/config only — no CHANGELOG entry expected
  • [~] Tests touched — no source files in the diff
  • No new TODO/FIXME comments — no new TODO/FIXME markers
This PR updates the `bacon` run job to wait for in-flight cargo invocations and introduces a 500ms grace period to handle transient errors more gracefully. The changes are documented in `bacon.toml` and the changelog, improving the development workflow by reducing manual intervention. ## Walkthrough - **CHANGELOG.md**: - Added an entry describing the new behavior of the `bacon` run job, which now waits for in-flight cargo runs and applies a 500ms grace period. - The changelog entry should clearly communicate the benefits and context of these changes. - **bacon.toml**: - Updated the configuration to set `background` to `false`, `grace_period` to `500ms`, and `on_change_strategy` to `wait_then_restart`. - Added comments explaining the rationale behind these changes, which help in understanding the new behavior and its advantages. ## Pre-merge checks - [~] CHANGELOG updated — diff is docs/config only — no CHANGELOG entry expected - [~] Tests touched — no source files in the diff - [x] No new TODO/FIXME comments — no new TODO/FIXME markers
jwilger deleted branch fix/issue-31-bacon-rebuild-recovery 2026-05-02 12:06:53 -07:00
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
2 participants
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
jwilger/auto_review!34
No description provided.