Skip to content

Change default auto-update mode from Enabled to Notify#35

Merged
fullstackjam merged 1 commit intomainfrom
claude/remote-data-control-state-Tp4LO
Apr 19, 2026
Merged

Change default auto-update mode from Enabled to Notify#35
fullstackjam merged 1 commit intomainfrom
claude/remote-data-control-state-Tp4LO

Conversation

@fullstackjam
Copy link
Copy Markdown
Collaborator

What does this PR do?

Changes the default auto-update behavior from AutoUpdateEnabled (silent self-upgrades) to AutoUpdateNotify (notification-only), making opt-in the requirement for automatic binary upgrades.

Why?

This is a safer default that respects user expectations. By default, the tool will now only notify users of available updates with a one-line message rather than silently upgrading the binary during normal command execution. Users who want automatic upgrades can explicitly opt in via ~/.openboot/config.json by setting "autoupdate": "true".

The change affects:

  • Default configuration when no config file exists
  • Fallback behavior when config file has an empty autoupdate field
  • Documentation/comments clarifying the three modes: disabled (exit), notify (default, show message), and enabled (auto-upgrade)

Testing

  • go vet ./... passes
  • All existing tests updated to reflect new default (4 test files, 5 test cases)
  • No new functionality added, only default value changed

Notes for reviewer

This is a breaking change in default behavior, but improves safety by making automatic upgrades opt-in rather than opt-out. The three-mode system (disabled/notify/enabled) is now clearly documented in the AutoUpgrade function comments.

https://claude.ai/code/session_015VgeJBTC58UsLNE1gpwUYe

Auto-upgrades are a piece of remote-driven control state: they can silently
change what `openboot <same command>` does from one run to the next. For a
tool that people run occasionally rather than daily, that tradeoff isn't
worth it — a visible "new version available" notice is enough.

LoadUserConfig now defaults to AutoUpdateNotify. Users who want the
previous silent self-upgrade behavior can still opt in by setting
"autoupdate": "true" in ~/.openboot/config.json; "false" still fully
silences the check. Tests updated to match the new default.
@github-actions
Copy link
Copy Markdown

👋 Thanks for opening this pull request!

Before merging:

  • Code follows existing patterns in the codebase
  • go build ./... and go vet ./... pass
  • Commit message is clear and descriptive

@fullstackjam will review this soon. Thanks for contributing! 🚀

@github-actions github-actions bot added the tests Tests only label Apr 19, 2026
@codecov
Copy link
Copy Markdown

codecov bot commented Apr 19, 2026

Codecov Report

✅ All modified and coverable lines are covered by tests.

📢 Thoughts on this report? Let us know!

@fullstackjam fullstackjam merged commit ade01eb into main Apr 19, 2026
10 checks passed
@fullstackjam fullstackjam deleted the claude/remote-data-control-state-Tp4LO branch April 19, 2026 13:49
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

tests Tests only

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants