Repository navigation
fix(cli): stop telling a new project its rules are out of date - #613
Conversation
Only init recorded rules.reconciledTo, so a wizard install left no marker. That reads as a project predating the ledger, and agent ok asked for update --rules on a repo with no rules. Both install paths now stamp any project with no rules, which also clears it for wizard installs already in the wild the next time init runs.
|
@claude /review |
|
Claude finished @theCodeDrift's task in 1m 47s —— View job Review mode: incremental — read 0 prior review thread(s) before reviewing.No prior review threads, reviews, or top-level comments exist on this PR (the only comment is the
SummaryThe fix is well-targeted: Verified against the code:
Two minor points, neither blocking:
No security, correctness, or test-adequacy issues found beyond the above. The changeset text and PR description accurately describe the behavior implemented. |
A wizard install on an empty repo never recorded
rules.reconciledTo; onlyinitdid. No marker reads as "this project predates the ledger", so the firstagent okduring onboarding reported entries "from 0.0.0 to 0.13.5" and asked forupdate --ruleson a project with no rules. The wizard gap is old.agent okstarted surfacing it with the environment check added on 2026-11-03.checkandverifynever refused, since no engines were recorded. The cost was an agent stalling on the first step of onboarding over a false alarm.Both install paths now call
stampRulelessProject, which stamps any project with no rules in sg, vale or runtime. This replaces thewasNewProjectcheck, which had to be sampled beforemkdirand could not help projects the wizard had already installed. Those clear the next timeinitruns, provided they still have no rules.initnow moves the marker forward on a project with no rules. Previously it never overwrote one.Verified by driving the real wizard in a pty on a fresh repo (
reconciledTo: 0.13.5,agent okup to date), and by runninginiton a project the old wizard left unstamped. Typecheck, lint and the full suite pass.