feat: gate the committed config reference against drift - #52
Conversation
rune skill install writes the agent skill into every enabled provider tree and keeps user-modified files. rune update --check compares the binary against the latest release and prints the package-manager command. The update command never replaces its own binary. Co-Authored-By: Martin Zeman <N4M3Z@users.noreply.github.com>
The release check times out after ten seconds and its repair hint diagnoses the feed. Skill installs treat only version-line differences as rune-owned (council review). Co-Authored-By: Martin Zeman <N4M3Z@users.noreply.github.com>
rune setup builds one frozen plan, prints every write, applies after one approval or --yes, verifies config, providers, completion, and the skill across every enabled harness, and writes the versioned setup record only after every check passes. --plan --json performs no writes. Task 3.4 of herdr-setup-ux is complete. Co-Authored-By: Codex Gpt 5.6 Sol (gpt-5.6-sol) <gpt-5.6-sol@codex.noreply.nexus.local> Co-Authored-By: Martin Zeman <N4M3Z@users.noreply.github.com>
docs/config-reference.json carries the compiler-backed reference and a test compares it against the binary output, so a config-struct change without a regenerated reference fails the suite. Task 2.5 of herdr-setup-ux is complete. Co-Authored-By: Martin Zeman <N4M3Z@users.noreply.github.com>
|
Important Review skippedAuto reviews are limited based on label configuration. 🏷️ Required labels (at least one) (1)
Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Team Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
Comment |
|
@cursor review |
Bugbot is paused — on-demand spend limit reachedBugbot uses usage-based billing for this team and has hit its on-demand spend limit. A team admin can raise the spend limit in the Cursor dashboard, or wait for the next billing cycle to continue. |
ApprovabilityVerdict: Not approved Macroscope's review found this PR not approvable — The PR combines a substantial setup workflow with provider gating, multiple filesystem writes and removals, changed skill-install behavior, and a new network-backed update command. The committed config reference and tests are low-risk, but the overall runtime and side-effect surface is broad. Notes:
You can add or adjust custom eligibility rules. Learn more. |
Runeseer review — cleanLooks good. The extracted
No open findings · Reviewed |
|
Awaiting the owner's review: this pull request cleared every lane 34h ago. The merge waits only on @N4M3Z. |
|
Awaiting the owner's review: this pull request cleared every lane 26h ago. The merge waits only on @N4M3Z. |
feat: add the setup wizard
|
Awaiting the owner's review: this pull request cleared every lane 22h ago. The merge waits only on @N4M3Z. |
Carry the setup-ux rename and the graph export from main down the stack. No source change beyond the merge. Co-Authored-By: Martin Zeman <N4M3Z@users.noreply.github.com> Claude-Session: https://claude.ai/code/session_01Fds3tf5rS1Ep47q5DGhsr3
Carry the setup-ux rename and the graph export from main down the stack. No source change beyond the merge. Co-Authored-By: Martin Zeman <N4M3Z@users.noreply.github.com> Claude-Session: https://claude.ai/code/session_01Fds3tf5rS1Ep47q5DGhsr3
Dismissing prior approval to re-evaluate 584678d
Setup wrote the provider toggles to the source config but planned the agent skill from the home config, so a provider enabled in the same run got no skill and a disabled one still did. Pass the planned selection into the skill plan as an override. Co-Authored-By: Martin Zeman <N4M3Z@users.noreply.github.com> Claude-Session: https://claude.ai/code/session_01Fds3tf5rS1Ep47q5DGhsr3
The base branch was changed.
Main now carries the theme system and the switchboard. The user config keeps both the setup record and the theme fields, and the CLI declares both the theme and update_check modules. Co-Authored-By: Martin Zeman <N4M3Z@users.noreply.github.com> Claude-Session: https://claude.ai/code/session_01Fds3tf5rS1Ep47q5DGhsr3
Carry the main merge (theme fields beside the setup record) down the stack, and regenerate docs/config-reference.json so the committed reference matches the binary again. Co-Authored-By: Martin Zeman <N4M3Z@users.noreply.github.com> Claude-Session: https://claude.ai/code/session_01Fds3tf5rS1Ep47q5DGhsr3
Add the committed config reference and its drift gate. Task 2.5 of herdr-setup-ux.
docs/config-reference.json: the compiler-backed reference, generated by the binary.tests/config_reference.rs: compares the committed copy againstrune config referenceoutput, so a config-struct change without a regenerated reference fails the suite.
No workflow edits: the gate rides the existing test job.
rune config referenceprints through the sharedreference_document().-D warnings, and the full suite (25 suites) pass.Release Notes
Note
Add committed
docs/config-reference.jsonand drift guard testrune config referenceoutput matches the committed file exactly.rune setupinto a plan/apply/verify flow supporting--plan(print plan only),--yes(apply detected defaults), and interactive confirmation. Setup now installs shell completions and agent skills per detected providers and writes a versionedSetupRecordto user config on success.rune update --checksubcommand that queries the GitHub releases API and signals update availability via exit code.rune skill installto target all enabled providers' skill directories, preserving user-modified files by comparing against a version-stripped rune-owned shape.rune setuprequires explicit--planor--yesfor non-interactive use;rune config geton unknown keys no longer lists alternatives;Configschema gains asetupsection that denies unknown fields in ontology.rs.Macroscope summarized ed51f9c.