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
contentTrust
projected
quarantined0
signals[]
blockedBy[]
blocking[]
closedAtFeb 12, 2026, 9:57 PM

DevIndex: Refine Updater Metrics (Success vs Failure)

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
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