100 Commits
Author SHA1 Message Date
fzyzcjy 23d41d711f Drop the empty-batch timeout only multi-LoRA v1 ever raised (#3723) 2026-09-26 20:50:59 +08:00
fzyzcjy 447438eefa Keep the live-rollout fault comparison bitwise up to the fault (#3357) 2026-09-26 20:50:30 +08:00
fzyzcjy 9fecf0ff24 Bind the sglang router on the ip a placed hostname resolves to (#3356) 2026-09-26 20:49:59 +08:00
fzyzcjy a85437d470 Move the wandb utils tests under tests/ (#3122) 2026-09-26 20:49:27 +08:00
fzyzcjy 207d892ca6 Build model script test arguments from the launcher environment (#3121) 2026-09-26 20:48:57 +08:00
fzyzcjy a0d2ac6242 Shut the worker manager down on every driver exit path (#3120) 2026-09-26 20:48:28 +08:00
fzyzcjy 5d8dda0b1a Extract the mooncake store config into one table (#3119) 2026-09-26 20:47:58 +08:00
fzyzcjy 47170b94dc Restore the event history before the first process writes events (#3118) 2026-09-26 20:47:28 +08:00
fzyzcjy f3f1717336 Let a CPU-only controller render the inference engine command (#3078) 2026-09-26 20:46:57 +08:00
fzyzcjy f580bef3bd Declare trainer concurrency groups once (#3077) 2026-09-26 20:46:26 +08:00
fzyzcjy fdb973993f Enable the long solver-verifier test on calibrated eval gates (#3076) 2026-09-26 20:45:55 +08:00
fzyzcjy b6c2692beb Pause generation with retract in the solver-verifier recipe (#3075) 2026-09-26 20:45:20 +08:00
fzyzcjy 126cbc0064 Save every sample of a multi-policy run, keyed by policy (#3074) 2026-09-26 20:44:51 +08:00
fzyzcjy fbb1450cab Report the raw reward of every generated group, filter or no filter (#3073) 2026-09-26 20:44:18 +08:00
fzyzcjy 6419b7258a Dispatch shared-engine eval from the multi-policy training loop (#3072) 2026-09-26 20:43:50 +08:00
fzyzcjy 2b42fdb24c Keep realistic hot restart WandB identity stable (#3070) 2026-09-26 20:43:22 +08:00
fzyzcjy 87cbb8ac80 Schedule hot restarts through virtual cells (#3069) 2026-09-26 20:42:51 +08:00
fzyzcjy e771de58ed Keep hot restart tests outside automatic FT recovery (#3068) 2026-09-26 20:42:22 +08:00
fzyzcjy f050555e05 Keep event analysis off the trainer event loop (#3067) 2026-09-26 20:41:51 +08:00
fzyzcjy 2098042990 Gate Ray fault injection between weight updates (#3066) 2026-09-26 20:41:21 +08:00
fzyzcjy 36ce06f8a3 Report multi-policy verifier reward outcomes (#3065) 2026-09-26 20:40:53 +08:00
fzyzcjy b96ab1262f Inject faults at quiescent points and witness recovery one-sidedly (#3064) 2026-09-26 20:40:24 +08:00
fzyzcjy f96336534c Start a run over with an empty log when a take-over finds no checkpoint (#3063) 2026-09-26 20:39:53 +08:00
fzyzcjy 12f7f8c648 Let disposing the rollout release a wedged producer (#3062) 2026-09-26 20:39:24 +08:00
fzyzcjy 8d15269131 Settle the hot restart comparison lifecycle (#3061) 2026-09-26 20:38:55 +08:00
fzyzcjy dfcb8e0597 Keep the first multi-policy failure and stop followers by flag (#3060) 2026-09-26 20:38:24 +08:00
fzyzcjy d1286304c8 Stamp the startup weight sync with the restored rollout id (#3059) 2026-09-26 20:37:56 +08:00
fzyzcjy f2e0a9ab59 Add a debug switch that computes the stored log probabilities under grad (#3058) 2026-09-26 20:37:25 +08:00
fzyzcjy 1860b1363a Reclaim the Ray worker manager and its gpus when a run ends (#3057) 2026-09-26 20:36:56 +08:00
fzyzcjy 3d3fb97bac Give every worker that watches pods the platform read access it needs (#3056) 2026-09-26 20:36:27 +08:00
fzyzcjy 4ce14ed227 Diagnose a failed run across every release it installed (#3055) 2026-09-26 20:35:58 +08:00
fzyzcjy 220bc2bb0d Refuse a multi-node command that a node pin cannot schedule (#3054) 2026-09-26 20:35:29 +08:00
fzyzcjy f4f49f1d17 Let the environment override the model and data directories (#3053) 2026-09-26 20:35:00 +08:00
fzyzcjy fb1d3861c8 Forbid a backend from overriding the exec methods (#3052) 2026-09-26 20:34:31 +08:00
fzyzcjy 4daa1026cc Print every stack when a test hangs (#3051) 2026-09-26 20:34:01 +08:00
fzyzcjy fd68758b2b Give the e2e harness its own command runner (#3050) 2026-09-26 20:33:30 +08:00
fzyzcjy adc558d10e Sort the CI pytest arguments by directory (#3049) 2026-09-26 20:33:01 +08:00
fzyzcjy cee2e4b143 Cover the ray x rpc worker comm path in CI (#3048) 2026-09-26 20:32:29 +08:00
fzyzcjy cbb19b2b0b Let a cluster say where the e2e dumps go, and name the run (#3047) 2026-09-26 20:31:59 +08:00
fzyzcjy 54f7bae7c2 Let an infra path name the namespace it is rendered for (#3046) 2026-09-26 20:31:30 +08:00
fzyzcjy 5c323d6338 Describe a cluster's storage as a list of volumes (#3045) 2026-09-26 20:30:58 +08:00
fzyzcjy a9b03f14e9 Let every strict model keep a non-finite number (#3044) 2026-09-26 20:30:29 +08:00
fzyzcjy ada3fa66df Skip the trace context ray injects into every remote method (#3043) 2026-09-26 20:30:00 +08:00
fzyzcjy 287723232c Say retrying where the retry loop is doing what it was asked (#3042) 2026-09-26 20:29:31 +08:00
fzyzcjy 9c99a652c1 Read this rank's card from the supervisor that started it (#3041) 2026-09-26 20:29:03 +08:00
fzyzcjy d3a177c8e3 Do not count a displaced command job pod against its one attempt (#3039) 2026-09-26 20:28:08 +08:00
fzyzcjy 3d7cb27583 Quote every string the launcher writes into its values (#3038) 2026-09-26 20:27:35 +08:00
fzyzcjy 26deee7e7f Turn a rejected rendering into an assertion instead of an exit (#3037) 2026-09-26 20:27:04 +08:00
fzyzcjy 7ed1bf04dd Let an abort survive an engine that cannot answer (#3036) 2026-09-26 20:26:09 +08:00
fzyzcjy 2deb8e40d2 Make a ray suspend take turns with the weight broadcast (#3035) 2026-09-26 20:25:32 +08:00
fzyzcjy 8fccaba2da Give a session server its own readiness budget (#3034) 2026-09-26 20:25:01 +08:00
fzyzcjy cd75183425 Wait for the routers and the session servers at once (#3033) 2026-09-26 20:24:25 +08:00
fzyzcjy 472998d579 Refuse a second init of a rollout cell (#3032) 2026-09-26 20:23:40 +08:00
fzyzcjy 48c10a28eb Ask sglang whether it serves a launch gate before opening one (#3031) 2026-09-26 20:23:07 +08:00
fzyzcjy 8defbefa65 Make preassigned WandB run IDs resumable (#3030) 2026-09-26 20:22:38 +08:00
fzyzcjy 0dd2bd57df Keep the v1 command_utils API available (#3029) 2026-09-26 20:22:09 +08:00
fzyzcjy 811e6c1c20 Give execute_train the launch it is running (#3028) 2026-09-26 20:21:41 +08:00
fzyzcjy 95cf1849ef Absorb the orchestration scripts' non-training machinery (#3027) 2026-09-26 20:21:13 +08:00
fzyzcjy 5d9b53fca2 Fetch a cell's ray actor handles in one round trip (#3025) 2026-09-26 20:20:43 +08:00
fzyzcjy 04e603ea54 Resolve the eval fleet's inference controller handle once (#3024) 2026-09-26 20:20:14 +08:00
fzyzcjy 6c5e42dc8a Zero-pad the indices in cell ids and worker names (#3023) 2026-09-26 20:19:41 +08:00
fzyzcjy b18b76e899 Gate inference engine weight checksums behind their own flag (#3022) 2026-09-26 20:19:10 +08:00
fzyzcjy a588ecd84e Document the deployment e2e tests as the specification they are tested against (#3021) 2026-09-26 20:18:38 +08:00
fzyzcjy b8fc084a8d Hot restart a realistic run at random moments while it converges (#3020) 2026-09-26 20:18:08 +08:00
fzyzcjy cbe9a1f902 Offer a take-over as a fault the injection plan can draw (#3019) 2026-09-26 20:17:39 +08:00
fzyzcjy adb1cad99e Hot restart a run before it has saved anything (#3018) 2026-09-26 20:17:11 +08:00
fzyzcjy ea8a85b3ea Assert a take-over replaced only the script and redid only what it had to (#3017) 2026-09-26 20:16:42 +08:00
fzyzcjy c166718d29 Compare a run whose script was replaced twice against one nobody touched (#3016) 2026-09-26 20:16:12 +08:00
fzyzcjy 363cf436c6 Record what a run's cluster looked like while it was taken over (#3015) 2026-09-26 20:15:43 +08:00
fzyzcjy 866dcc6494 Drive a hot restart into a run frozen at the scheduled step (#3014) 2026-09-26 20:15:14 +08:00
fzyzcjy 2daadf744e Deliver the injection plan through a file the relaunch can rewrite (#3013) 2026-09-26 20:14:40 +08:00
fzyzcjy e1d6c2049e Let an injection put a run to sleep at an exact step (#3012) 2026-09-26 20:14:12 +08:00
fzyzcjy e9bc6b85d1 Make hot restarting a run a runnable example (#3011) 2026-09-26 20:13:43 +08:00
fzyzcjy 61f6305390 Verify what the multi policy deployments actually trained (#3010) 2026-09-26 20:13:12 +08:00
fzyzcjy 0c53e1d974 Deploy a run that trains several policies as one release per policy (#3009) 2026-09-26 20:12:41 +08:00
fzyzcjy e44d1121aa Deploy the multi policy demo by hand as one release per policy (#3008) 2026-09-26 20:12:11 +08:00
fzyzcjy 9918e387c6 Assert a split run served every engine it was given (#3007) 2026-09-26 20:11:40 +08:00
fzyzcjy 1a2a72a3e2 Compare a run deployed in parts against the same run deployed as one (#3006) 2026-09-26 20:11:12 +08:00
fzyzcjy 6cfa8f0835 Teach the e2e harness to install a run as several deployments (#3005) 2026-09-26 20:10:43 +08:00
fzyzcjy e8b698859f Show a run installed by hand as one deployment per component (#3004) 2026-09-26 20:10:13 +08:00
fzyzcjy 88c258c89f Let the realistic soak be run with faults it does not own (#3003) 2026-09-26 20:09:43 +08:00
fzyzcjy bd9a859c3c Lift the bitwise deterministic comparison out of the scenario that performs it (#3002) 2026-09-26 20:09:15 +08:00
fzyzcjy 07e3888671 Take the launch of one side, and how a mode is resolved, as arguments (#3001) 2026-09-26 20:08:47 +08:00
fzyzcjy a196e681a6 Define once the names and flags every ft scenario spells out by hand (#3000) 2026-09-26 20:08:18 +08:00
fzyzcjy 3162674d73 Share the polling thread and the kubectl read the ft injector hand-rolled (#2999) 2026-09-26 20:07:49 +08:00
fzyzcjy 82c9dbf066 Make the multi policy demo a runnable example the tests import (#2998) 2026-09-26 20:07:18 +08:00
fzyzcjy 464d58b380 Reserve the env names the platform gives a pod about itself (#2997) 2026-09-26 20:06:49 +08:00
fzyzcjy 12a93876bf Run the pools that read the platform under an account that may (#2996) 2026-09-26 20:06:20 +08:00
fzyzcjy f30266552e Report the cards a colocated pod actually holds (#2995) 2026-09-26 20:05:52 +08:00
fzyzcjy 2125618499 Give every pool pod shared memory NCCL can use (#2994) 2026-09-26 20:05:22 +08:00
fzyzcjy 819083593f Open colocate to engines narrower than a node (#2993) 2026-09-26 20:04:53 +08:00
fzyzcjy 537ff67594 Write the card a colocated engine was given onto its pod (#2992) 2026-09-26 20:04:22 +08:00
fzyzcjy b6c4c87fa7 Wake every engine a trainer pod seats (#2991) 2026-09-26 20:03:53 +08:00
fzyzcjy 3284843953 Render a sub-node engine's base gpu id as a variable the kubelet expands (#2990) 2026-09-26 20:03:24 +08:00
fzyzcjy b20f76ee3f Extract the kubelet placeholder machinery out of pool_entry (#2989) 2026-09-26 20:02:54 +08:00
fzyzcjy 51c228b47c Pair a colocated engine at gpu granularity (#2988) 2026-09-26 20:02:25 +08:00
fzyzcjy 42e09de365 Take the inference side over where the script has finished with the trainers (#2987) 2026-09-26 19:57:18 +08:00
fzyzcjy 860b757a26 Take the surviving trainers over where the script connects to them (#2986) 2026-09-26 19:56:49 +08:00
fzyzcjy b02f71ce06 Build the trainer handles once, before anything drives them (#2985) 2026-09-26 19:56:20 +08:00
fzyzcjy 97057386f7 Let a script wait the inference fleet in on a budget of its own (#2984) 2026-09-26 19:55:52 +08:00