Repository navigation
feat(agent): prepare-then-cancel config file reloads - #106
Merged
gusfcarvalho merged 1 commit intoOct 6, 2026
Merged
gusfcarvalho merged 1 commit into
gusfcarvalho merged 1 commit into
Conversation
|
Important Review skippedBot user detected. To trigger a single review, invoke the ⚙️ Run configuration
You can disable this status message by setting the Use the checkbox below for a quick retry:
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
This was referenced Oct 5, 2026
ccf-lisa
Bot
force-pushed
the
lisa/agent-config-06-reconciler
branch
from
October 6, 2026 10:27
ef9c10e to
f6c2aba
Compare
Contributor
Author
|
PR approved. Marking ready for e2e. |
Replace the reload loop (cancel on every file event, reload, panic on an invalid file) with a reconciler goroutine that is the single writer of the configuration state (R32): - A trigger loads the file on a fresh viper and prepares a complete candidate (runtime conversion + Prefetch) BEFORE cancelling the running configuration. An invalid file or a download failure keeps the running configuration; only an unusable file at startup exits 1, and a startup download failure still sends the startup-failure agent evidence. - File events are debounced; a candidate equal to the running one (a comment-only edit) is recorded without a restart. - A candidate that prepares but fails to run falls back to the previous configuration once and enters a failed backoff (1m doubling to 10m), so it is not re-applied on every tick. - The file watcher only signals; loading always happens in the reconciler. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
ccf-lisa
Bot
force-pushed
the
lisa/agent-config-06-reconciler
branch
from
October 6, 2026 15:59
f6c2aba to
720daa8
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Part 6/11 of the split of #95 (agent remote configuration) into a stack. Review it as the diff against its base branch.
Replace the reload loop (cancel on every file event, reload, panic on an
invalid file) with a reconciler goroutine that is the single writer of the
configuration state (R32):
candidate (runtime conversion + Prefetch) BEFORE cancelling the running
configuration. An invalid file or a download failure keeps the running
configuration; only an unusable file at startup exits 1, and a startup
download failure still sends the startup-failure agent evidence.
comment-only edit) is recorded without a restart.
configuration once and enters a failed backoff (1m doubling to 10m), so
it is not re-applied on every tick.
remote_config.poll_interval(default 60s) paces the retry tick here; the reports and overlays that also use it land in #108 and #110.Size: 867 lines changed (go.mod/go.sum excluded). Builds, vets, is gofmt-clean and passes
go test -race ./...on its own; the top of the stack is byte-identical to #95 merged withmain.Stack
🤖 Generated with Claude Code