fix(miner): drift-guard doctor store-integrity list against migrate STORES (#9689) - #9899
Conversation
|
Superagent didn't find any vulnerabilities or security issues in this PR. |
|
Tip ✅ LoopOver review result - approve/merge recommendedReview updated: 2026-07-29 20:04:50 UTC
Review summary Nits — 2 non-blocking
Decision drivers
Context & advisory signals — never blocks the verdict
Linked issue satisfactionAddressed Review context
Contributor next steps
Signal definitions
🧪 Chat with LoopOverAsk LoopOver a question about this PR directly in a comment — grounded only in the same cached, public-safe facts shown above, never a new claim.
Full command reference: https://loopover.ai/docs/loopover-commands 🧪 Experimental — new and may change. 🟩 Safe / merged · 🟦 Advisory · 🟨 Held for review · 🟥 Blocked / closed 💰 Earn for open-source contributions like this. Gittensor lets GitHub contributors earn for the work they already do — register to start earning →. Checked by LoopOver, a quiet PR intelligence layer for OSS maintainers.
|
…TORES (JSONbored#9689) The `migrate` CLI's STORES list and doctor's store-integrity sweep must cover the same durable local stores, but nothing enforced it -- a new store added to one and not the other would silently drift (as orb-export JSONbored#8318 and laptop-state JSONbored#8641 both did before being caught by hand). - status.ts: derive STORE_INTEGRITY_NAMES from a single STORE_INTEGRITY_RESOLVERS table (behavior-preserving; same check names, same order) and export it. - migrate-cli.ts: export STORES; refresh the stale store-count comments. - miner-migrate-cli.test.ts: assert STORES names and STORE_INTEGRITY_NAMES are set-equal (both directions), with a pinned sorted list so any future single-sided addition fails CI. Closes JSONbored#9689 Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #9899 +/- ##
===========================================
- Coverage 91.75% 79.35% -12.41%
===========================================
Files 920 283 -637
Lines 113064 58728 -54336
Branches 27214 8675 -18539
===========================================
- Hits 103746 46603 -57143
- Misses 8033 11840 +3807
+ Partials 1285 285 -1000
Flags with carried forward coverage won't be shown. Click here to find out more.
|
What
The
migrateCLI'sSTORESlist anddoctor's store-integrity sweep are twin lists that must cover the same durable local SQLite stores, but nothing enforced it. A store added to one and not the other drifts silently — exactly what happened withorb-export(#8318) andlaptop-state(#8641), both caught only by hand.How
STORE_INTEGRITY_NAMESfrom a singleSTORE_INTEGRITY_RESOLVERStable and export it. Behavior-preserving — the doctor sweep produces the samestore-integrity:<name>checks in the same order.STORES; refresh the two stale store-count comments.STORESnames andSTORE_INTEGRITY_NAMESare set-equal in both directions, pinned against a sorted canonical list so any future single-sided store addition fails CI.Closes #9689