Feat/incentive hardening - #423
Open
kenobijon wants to merge 3 commits into
Open
Conversation
…pport Extend the per-tier undershoot discount (0.6/tier) to images. Without it, delivering 1K on a 2K/4K request paid the 1K price with no penalty, and cheap low-tier providers made ignoring the requested tier the better reward-per-dollar choice. Now a 2K request pays 1.41x for compliance vs 0.60x for a 1K delivery. Route reference miner image generation through OpenRouter /api/v1/images when the challenge requests a resolution tier, passing the tier directly (the endpoint accepts 1K/2K/4K). Falls back to chat completions if the images endpoint fails. Previously the resolution parameter was ignored, so reference miners undershot every 2K/4K image challenge.
…oute Video challenges now request a duration (4s 50% / 6s 30% / 8s 20%). The reward multiplier scales with total generation cost — sqrt(price/s x min(delivered, requested) seconds / baseline 4s) — so an 8s delivery earns sqrt(2)x the 4s multiplier and undershooting duration pays only what was delivered. Previously duration was never requested and rewards were duration-invariant, so every miner converged on 4s provider minimums. Delivered duration comes from ffprobe and is stored on media (duration_seconds) with the request on outcomes (requested_duration); pre-feature rows price at the 4s baseline, unchanged. Reprice Seedance 2.0 at the cheapest acquisition route: OpenRouter sells it by video token (tokens/s = W x H x 24fps / 1024) with the identical ByteDance C2PA signature as the direct route, so quoted provider prices overpaid ~2.7x at 720p. seedance-2-0 is now $0.070/$0.151/$0.340 per second at 480p/720p/1080p (multiplier 2.25x at 720p, matching Veo) and fast $0.056/$0.121. Live token rates are fetched from /videos/models at module load and merged over the static defaults.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Note
High Risk
Changes validator challenge parameters, SQLite schema, and core reward multipliers that directly set miner payouts; misconfiguration or pricing bugs would affect the whole subnet economically.
Overview
Release 4.9.6 tightens generator incentives around video length, resolution compliance, and pricing accuracy.
Video duration is now part of challenges and rewards. Validators sample requested lengths (4/6/8s, weighted toward 4s) and pass
durationin challenge parameters. Stored miner video getsduration_secondsfrom metadata probing; outcomes trackrequested_durationandobserved_duration. Video reward multipliers scale with min(delivered, requested) seconds (4s baseline for legacy rows), with a small tolerance for encoder jitter—mirroring the existing resolution “degrade, don’t fail” behavior.Reward pricing updates Seedance tier USD/s defaults to OpenRouter video-token math and merges live token-derived tier tables at startup. Video multipliers use price × effective seconds in the sqrt cost ratio. Image rewards now apply the same undershoot tier discount as video when delivery is below the requested tier.
OpenRouter miner path honors challenge
resolutionfor images via/api/v1/images, with chat-completions fallback.Schema migration adds
requested_durationon challenge outcomes andduration_secondson media.Reviewed by Cursor Bugbot for commit 5bb8858. Bugbot is set up for automated code reviews on this repo. Configure here.