Skip to content

Skip unanswered modalities instead of treating them as onboarding - #458

Merged
kenobijon merged 4 commits into
testnetfrom
feat/track-no-answer
Sep 16, 2026
Merged

kenobijon merged 4 commits into
testnetfrom
feat/track-no-answer

Conversation

@kenobijon

Copy link
Copy Markdown
Contributor

Summary

  • Record refused generator challenge POSTs as no_answer (accepted-then-silent stays challenge_timeout).
  • After 5 local no-answers in 24h with zero answers on a modality, skip that miner for that modality instead of parking them in onboarding.
  • Fixes video-only UIDs (e.g. 189/207) getting every image onboarding slot and never receiving /gen_video. Dual-modality and image-only miners keep the same onboarding path as long as they answer.

Test plan

  • pytest tests/test_challenge_allocation.py tests/test_challenge_outcomes.py
  • After merge, confirm a validator log line includes image_unresponsive / video_unresponsive
  • Video-only miner: after ~5 ignored image asks, they start getting video probe slots
  • New dual-modality miner still appears in onboarding and is not marked unresponsive

Made with Cursor

Video-only miners with no image samples were filling image onboarding slots every round and never receiving video. Record refused POSTs as no_answer and skip a modality after enough local no-answers.

Co-authored-by: Cursor <cursoragent@cursor.com>

@cursor cursor Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Stale Bugbot comment from a previous run.

Comment thread gas/cache/db/challenge_store.py
Comment thread gas/evaluation/generative_challenge_manager.py
@kenobijon
kenobijon requested a review from dylanuys September 16, 2026 17:50
dylanuys and others added 2 commits September 16, 2026 18:11
Replacement miners at a recycled UID no longer inherit the prior occupant's unanswered totals. Refused challenge POSTs stay a sampling signal and do not count as verification failures.

Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: Cursor <cursoragent@cursor.com>

@cursor cursor Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Cursor Bugbot has reviewed your changes using default effort and found 1 potential issue.

Fix All in Cursor

❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.

Reviewed by Cursor Bugbot for commit 6be1760. Configure here.

Comment thread gas/cache/db/challenge_store.py
Refused challenge POSTs were still filling the 1000-row window used for 24h generator rewards after we stopped counting them as verification misses.

Co-authored-by: Cursor <cursoragent@cursor.com>
@kenobijon
kenobijon merged commit 8c3d9d3 into testnet Sep 16, 2026
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants