Skip to content

run-manager automatic run selection#514

Open
dsocolobsky wants to merge 21 commits intomainfrom
dy/run-manager-automatic-run-selection
Open

run-manager automatic run selection#514
dsocolobsky wants to merge 21 commits intomainfrom
dy/run-manager-automatic-run-selection

Conversation

@dsocolobsky
Copy link
Contributor

@dsocolobsky dsocolobsky commented Jan 22, 2026

  • If RUN_ID is not provided the run-manager will scan the solana RPC for those contracts owned by the Coordinator Program, list the runs and attempt to join one at random (which is not halted) (prioritizing waiting for compute runs).
  • If RUN_ID is provided then the behavior is the same as usual and it attempts to join the specified run.
  • Modified the user-facing docs to reflect these changes.
  • Avoids joining runs which the user is not authorized to
  • Optional --authorizer param to only show runs where the given pubkey is the authorizer

@dsocolobsky dsocolobsky force-pushed the dy/run-manager-automatic-run-selection branch 3 times, most recently from 163bc83 to 50fd4f6 Compare January 23, 2026 15:23
@dsocolobsky dsocolobsky force-pushed the dy/run-manager-automatic-run-selection branch from 50fd4f6 to 308a0fa Compare January 23, 2026 19:35
@dsocolobsky dsocolobsky changed the title WIP run-manager automatic run selection run-manager automatic run selection Jan 23, 2026
@dsocolobsky dsocolobsky force-pushed the dy/run-manager-automatic-run-selection branch from b1723b0 to 9be6a25 Compare January 23, 2026 19:55
@dsocolobsky dsocolobsky marked this pull request as ready for review January 23, 2026 19:58
@dsocolobsky dsocolobsky force-pushed the dy/run-manager-automatic-run-selection branch from 913b598 to 85f35e4 Compare January 27, 2026 22:01
@dsocolobsky dsocolobsky force-pushed the dy/run-manager-automatic-run-selection branch from 55e170e to b126687 Compare January 28, 2026 19:45
@dsocolobsky dsocolobsky force-pushed the dy/run-manager-automatic-run-selection branch from b126687 to 7e3d852 Compare January 28, 2026 20:09
.map_err(|e| anyhow!("Failed to parse wallet key: {}", e))?
} else {
// Assume base58 encoded private key
Keypair::from_base58_string(wallet_key)
Copy link
Contributor

Choose a reason for hiding this comment

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

isn't this fallible? what happens if the string is not really a base58 encoded private key?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Yeah from_base58_string has an internal unwrap() apparently

But I found an alternative approach calling two functions and we can validate first with a nicer error message, just pushed the changes.

}

// Filter by join_authority if --authorizer was specified
if let Some(auth) = authorizer {
Copy link
Contributor

Choose a reason for hiding this comment

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

what is the behavior when --authorizer is not set?

Copy link
Contributor Author

@dsocolobsky dsocolobsky Jan 30, 2026

Choose a reason for hiding this comment

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

It just shows all the runs you are allowed to join. --authorizer is a filter by runs with a certain authorizer (e.g. if we want to filter only by Nous runs).

@dsocolobsky dsocolobsky force-pushed the dy/run-manager-automatic-run-selection branch from 323d78b to 951fdb8 Compare January 30, 2026 19:34
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