Skip to content

Added retrieval of pod configuration from miners' projects for specifying platform and GPU#62

Open
dl2gomi wants to merge 4 commits into
404-Repo:feat/fixesfrom
dl2gomi:feat/fixes
Open

Added retrieval of pod configuration from miners' projects for specifying platform and GPU#62
dl2gomi wants to merge 4 commits into
404-Repo:feat/fixesfrom
dl2gomi:feat/fixes

Conversation

@dl2gomi

@dl2gomi dl2gomi commented May 15, 2026

Copy link
Copy Markdown

pod_config.yaml (orchestrator placement)

The generation-orchestrator reads an optional pod_config.yaml from miner repository at the pinned submission commit (same commit as the Docker build). HTTP service does not need to read this file; it is metadata for the orchestrator.

  • Path: repository root, pod_config.yaml.
  • If missing: the orchestrator uses its environment defaults (GPU_PROVIDERS, no Runpod host CUDA filter).
  • If unreadable (e.g. private miner repo and the orchestrator token cannot read that repo) or the GitHub API fails transiently (timeouts, connection errors, HTTP 5xx): same as missing — defaults apply; generation is not blocked solely for lack of pod_config.yaml.
  • Schema (YAML):
platforms:
  - runpod   # ordered preference: runpod, targon, verda
  - targon
filters:
  cuda: 13   # optional; or YAML number 13.0 — same as 13 for Runpod allowedCudaVersions
  • platforms: optional ordered list. Only runpod is honored for placement hints today (allowedCudaVersions, etc.); targon and verda entries are removed when the file is loaded (orchestrator GPU_PROVIDERS still controls whether those providers are used at all). Unknown names are ignored later during provider resolution. If every listed platform was targon or verda (so the list is empty after removal), filters are cleared as well: the orchestrator applies the same defaults as when pod_config.yaml is missing for Runpod hints (no filters.cuda for Runpod). This does not apply when platforms is omitted or explicitly empty without those names — in that case filters.cuda is still honored.
  • filters.cuda: optional. Integer major (13) or YAML float (13.0, unquoted) are equivalent; dotted strings such as 12.4 are also accepted. When deploying on Runpod, this is mapped to the REST allowedCudaVersions allowlist so the pod is scheduled only on hosts whose driver reports a compatible CUDA version. Targon and Verda do not support this filter in the current orchestrator; deploy proceeds without a host-level CUDA allowlist there.

Note

Medium Risk
Changes pod deployment/provider-selection behavior and adds new Runpod scheduling filters, which can affect pod acquisition and generation reliability if misconfigured or parsing/ordering is wrong.

Overview
Adds support for an optional miner pod_config.yaml (loaded from the miner repo at the pinned submission commit) to influence pod placement.

The orchestrator now passes miner-derived provider preferences into pod acquisition (custom round-robin sequence) and can apply a Runpod-only host CUDA allowlist via Runpod’s allowedCudaVersions deploy payload; other providers ignore this filter. GitHub access is extended with get_file_from_repo (treating 401/403/404 as missing), the deploy script gains flags to load/fetch pod_config.yaml, shared deps add pyyaml, and new tests cover config parsing, provider resolution, GitHub failure handling, and Runpod payload generation.

Reviewed by Cursor Bugbot for commit 8b71b40. Bugbot is set up for automated code reviews on this repo. Configure here.

@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 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 a50a2aa. Configure here.

Comment thread shared/subnet_common/competition/pod_config.py
@dl2gomi dl2gomi changed the title Added pod configuration from miners' projects for specifying platform and GPU Added retrieval of pod configuration from miners' projects for specifying platform and GPU May 15, 2026
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.

1 participant