fix(engine): push progress on maxIterations and percentComplete changes - #9400
Conversation
|
Superagent didn't find any vulnerabilities or security issues in this PR. |
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #9400 +/- ##
===========================================
+ Coverage 75.46% 89.51% +14.04%
===========================================
Files 275 838 +563
Lines 58030 109689 +51659
Branches 6199 26125 +19926
===========================================
+ Hits 43790 98183 +54393
+ Misses 13970 10239 -3731
- Partials 270 1267 +997
Flags with carried forward coverage won't be shown. Click here to find out more.
|
|
Tip ✅ LoopOver review result - approve/merge recommendedReview updated: 2026-07-27 16:47:25 UTC
Review summary Nits — 5 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.
|
progressChanged only diffed phase, status, iteration, and the activity tail, but ProgressSnapshot also displays maxIterations and the derived percentComplete. When an operator raised the iteration budget mid-run those two moved while the other axes held, so no push was emitted and the customer-facing progress bar went stale on a real, displayed change. Compare both fields before the existing axis chain and cover the true and false path of each. loop-progress.ts is graded by two Codecov flags — the root vitest suite (backend) and the package's own node:test suite under c8 (engine, JSONbored#9064) — so both get a matching case, otherwise the flags disagree on the new lines and the merged patch report undercounts them.
0cf8617 to
4418f63
Compare
fix(engine): push progress on maxIterations and percentComplete changes
progressChanged only diffed phase, status, iteration, and the activity
tail, but ProgressSnapshot also displays maxIterations and the derived
percentComplete. When an operator raised the iteration budget mid-run
those two moved while the other axes held, so no push was emitted and the
customer-facing progress bar went stale on a real, displayed change.
Compare both fields before the existing axis chain and cover the true and
false path of each with new push / no-push tests.
Closes #9323
Validation
Verified locally on this branch before opening:
npm run typechecknpx turbo run build:tsc build:verifynpm run test:coverage— newiflines fully covered (line + both branch arms)