Repository navigation
Conversation
Contributor
|
Thanks for the contribution!
中文感谢你的贡献!
|
functionstackx
added this pull request to stack #3808
October 7, 2026 23:24
This was referenced Oct 8, 2026
Draft
adibarra
force-pushed
the
refactor/srt-recipe-key
branch
from
October 8, 2026 16:03
8f3711f to
9a7eaac
Compare
adibarra
force-pushed
the
refactor/srt-recipe-key
branch
from
October 9, 2026 11:39
cfd3774 to
64531c2
Compare
adibarra
force-pushed
the
refactor/srt-recipe-key
branch
2 times, most recently
from
October 9, 2026 18:48
64e3ce2 to
f087de3
Compare
adibarra
force-pushed
the
refactor/srt-recipe-key
branch
from
October 9, 2026 23:43
f087de3 to
4bc066b
Compare
adibarra
force-pushed
the
refactor/srt-recipe-key
branch
from
October 10, 2026 07:51
4bc066b to
5b19744
Compare
…t-recipe Master configs name each row's recipe with srt-recipe (and eval-srt-recipe) relative to a per-entry srt-recipe-dir instead of CONFIG_FILE and EVAL_CONFIG_FILE additional-settings. Validation requires them on every srt-slurm row, checks the file and selected variant exist at load time, and rejects the old settings; llmd-vllm entries keep CONFIG_FILE. The generator emits project-relative paths, counts nodes from the row's recipe, and the launcher reads SRT_RECIPE/EVAL_SRT_RECIPE, staging the same recipes/<path>:<selector> argument for srtctl. Also drops the unread SYNTHETIC_ACCEPTANCE* and SLURM_PARTITION settings.
Master rows now select bundle variants with srt-recipe, so the recipe headers no longer describe how to pick one.
Recipe existence, selector checks and recipe node counts read files from the project that holds the loaded configs/ (or the root a caller passes) instead of the tooling checkout's repository_root(). The generator CLI and planner pass config_root(config files), Klaud live families pass the checkout root, and Klaud's canonical matrix fetches the candidate's recipes from the candidate head.
Master configs now name an srt-recipe resolved under the project that holds configs/, so the fixture places its master in configs/ beside a recipe.
…ipe-dir #3603 restored dsv41flash-fp4-mi355x-atom-agentic-dspark with project-relative srt-recipe paths, which validation rejects now that every srt-slurm entry needs srt-recipe-dir. The entry sets srt-recipe-dir and its rows select agentic.yaml; the generated rows are unchanged.
…GB300 AgentX recipes #3598 added the GB300 Dynamo+SGLang recipes with headers that say to select a variant with CONFIG_FILE. Master rows select them with srt-recipe now, so the headers stop at the variant layout like the other AgentX bundles.
Set an AgentX row's srt-recipe fields once after the topology branch, and fetch each recipe file a Klaud family references once rather than once per row.
The installed-package test no longer checks recipe node counts, which take an explicit root since srt-recipe and so no longer exercise caller-repository resolution. Drop unused monkeypatch fixtures and a history comment.
Show srt-recipe in the CONFIGS.md search-space example, shorten its selection note, name srt-slurm recipes in the revision snapshot description, and shorten the debug-runs recipe path.
The low-latency row named disagg-tp8-stp-variants.yaml without a selector, so one job submitted all three zip variants under a 4-node, 1-decode-worker label. Each variant now runs only the concurrencies it is tuned for, with its selector and its 7 TP8 decode workers on 16 nodes: zip_override_lowlat[0] (c8) at 4 and 8, zip_override_lowlat[1] (c16-32) at 16. zip_override_lowlat[2] is tuned for concurrency 64, which the entry never ran, so it has no row.
…h srt-recipe-dir #3816 and #3840 added qwen3.8next-fp4-gb300-sglang-agentic-mtp and the Qwen3.5 FP8 GB300 midcurve entries with a project-relative srt-recipe path and CONFIG_FILE settings, which validation rejects now that every srt-slurm entry needs srt-recipe-dir. The entries set srt-recipe-dir and their rows select the same recipes and DEP16 overrides; the generated rows are unchanged.
adibarra
force-pushed
the
refactor/srt-recipe-key
branch
from
October 10, 2026 13:38
5b19744 to
24ffea4
Compare
This branch has not been deployed
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.
Summary
Multi-node master rows named their recipe through
additional-settings: CONFIG_FILE=recipes/...yaml:override_xon the prefill or worker block. Recipe references are now first-class for every srt-slurm config, single- and multi-node:srt-recipe-dirper config key, relative to the single- or multi-node recipe root. Each row hassrt-recipe: <file>[:selector]and optionaleval-srt-recipe. Selectors arebase,override_<name>orzip_override_<name>[i].CONFIG_FILE/EVAL_CONFIG_FILEinadditional-settings, except onllmd-vllmconfigs, whose scripts still readCONFIG_FILE.benchmarks/<single|multi>_node/srt-slurm-recipes/<dir>/<file>[:selector]) and reads node counts from it. The old CONFIG_FILE scan and the silent fallback for missing recipe files are gone.benchmark-multinode-tmpl.ymlexportsSRT_RECIPE/EVAL_SRT_RECIPE. A newMultiNodeRequestreads them, and a single helper maps the canonical path to therecipes/...:selectorpath srtctl receives. Power-rule globs use the canonical form.CONFIG_FILEand 5EVAL_CONFIG_FILEitems became row fields, every config key gotsrt-recipe-dir, and single-node paths became relative. Also deleted dead settings:SYNTHETIC_ACCEPTANCE*(6 rows, unread) andSLURM_PARTITION(12 rows, overwritten from the cluster record).CONFIG_FILEheader comments in 30 bundles.RECIPES.md,CONFIGS.md,architecture.md,eval-agentx-procedures.md,nuke.md,add-model-hardware.mdand the debug-runs skill.Verification
full-sweepover both masters is identical to the base once oldCONFIG_FILE/EVAL_CONFIG_FILEvalues are mapped to the new fields and the removed dead settings are dropped. That holds for the default (1767 rows) and--all-evals(1797), includingnode-countandexp-name.recipes/...:selectorpath as before. A new fake-Slurm test covers a bundle variant.pytest infx/testspasses all 2065 tests, and ruff is clean.recipe-fingerprintchanges once for every point, because the row shape changed. This is expected.dsr1-fp8-gb200-dynamo-sglanglow-latency row: main pointed atdisagg-tp8-stp-variants.yamlwith no selector, so srtctl ran all threezip_override_lowlatvariants at conc [4, 8, 16]. The launcher now binds exactly one variant, so the row is split by the variants' concurrency ranges:zip_override_lowlat[0](c8) at conc [4, 8] andzip_override_lowlat[1](c16-32) at conc [16]. Variant [2] (tuned for c64) is dropped, since the row runs no conc in its range.