Skip to content

AntSeed: make local success-based peer scoring configurable #12

Description

@kc-zero-lab

Why

Unhardcoded already folds local call outcomes into route-level success_rate for AntSeed offers, keyed by provider/model/peer. That is the right direction: local observed success is often the most useful signal for choosing between marketplace peers serving the same model family.

This should be made explicit, configurable, and usable in policies without requiring operators to hand-edit scoring logic.

Proposed behavior

Add configurable local-success scoring for AntSeed peer offers.

Suggested implementation shape:

  • Continue measuring success locally per AntSeed route, ideally keyed by peer_id + model_family or peer_id + wire_model_id.
  • Make the score contribution configurable.
  • Allow operators to choose how aggressively failed local routes are demoted.
  • Keep cold-start behavior safe: peers with no local history should not be permanently excluded by default.

Configuration requirements

Please make all behavior configurable. For example:

  • ANTSEED_LOCAL_SUCCESS_WEIGHT / equivalent setting for score contribution.
  • Optional minimum observation count before applying strong demotion.
  • Optional decay/window/EMA parameters if practical.
  • Optional minimum local success threshold for production profiles.
  • Defaults should preserve current behavior or be very conservative.

Acceptance criteria

  • Local success can be used as an explicit configurable score/gate for AntSeed offers.
  • Cold-start peers remain routable by default.
  • Repeated local failures demote affected peer/model routes.
  • Recovery is possible via decay/EMA, restart, or configurable reset behavior.
  • Tests cover no-history, successful history, failing history, and configured weighting/gating.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions