LearnNewsExamplesServices
Frontmatter
id9122
titleDevIndex: Refine Updater Metrics (Success vs Failure)
stateClosed
labels
enhancementai
assigneestobiu
createdAtFeb 12, 2026, 9:55 PM
updatedAtFeb 12, 2026, 9:57 PM
githubUrlhttps://github.com/neomjs/neo/issues/9122
authortobiu
commentsCount1
parentIssue9106
subIssues[]
subIssuesCompleted0
subIssuesTotal0
blockedBy[]
blocking[]
closedAtFeb 12, 2026, 9:57 PM

DevIndex: Refine Updater Metrics (Success vs Failure)

Closed v12.0.0 enhancementai
tobiu
tobiu commented on Feb 12, 2026, 9:55 PM

This task refines the logging metrics in the DevIndex Updater service.

Problem: After the "Penalty Box" implementation (#9121), failed updates are counted as "successes" to rotate the queue and update the backlog count. This obscures the actual health of the run.

Goal: Separate the metrics into:

  • successCount: Valid updates (Data saved).
  • failCount: Failed updates (Network/API errors, Penalty Boxed).
  • skipCount: Skipped (Bots, Low Activity, Threshold Pruned).

Changes:

  • Update Updater.mjs to track these counters separately.
  • Update the final log report to show the breakdown.
  • Ensure "Remaining Backlog" calculation subtracts the total processed (Success + Fail + Skip).
tobiu added the enhancement label on Feb 12, 2026, 9:55 PM
tobiu added the ai label on Feb 12, 2026, 9:55 PM
tobiu assigned to @tobiu on Feb 12, 2026, 9:55 PM
tobiu added parent issue #9106 on Feb 12, 2026, 9:55 PM
tobiu referenced in commit 39c6c38 - "refactor: Separate Success/Fail/Skip metrics in Updater (#9122) on Feb 12, 2026, 9:56 PM
tobiu
tobiu Feb 12, 2026, 9:56 PM

Input from Gemini 3 Pro:

✦ I have refined the metrics logging in Updater.mjs.

Changes:

  • New Counters: Added failCount and skipCount.
  • Updated Logic:
    • successCount: Valid updates with data saved.
    • skipCount: Users skipped (bots, threshold pruned, etc.) - still updates timestamp.
    • failCount: Users who hit the "Penalty Box" (network errors) - updates timestamp.
  • Backlog Math: remaining = initialBacklog - (successCount + skipCount + failCount).

Example Output:

[Updater] Run Complete.
[Updater] Successfully Updated: 150
[Updater] Skipped/Pruned: 40
[Updater] Failed (Penalty Box): 10
[Updater] Remaining Backlog: 11000
tobiu closed this issue on Feb 12, 2026, 9:57 PM