Repository navigation
Arm launch step timeout from the arms' readiness deadline; NVFP4 skips the rank-asymmetric fused_moe autotune - #13319
Conversation
…opulations The authority projection asked every node a question of a whole population: the accepted set filtered every receipt per declared node, the live-receipt join filtered every declared node per receipt, the ghost count compared every rendered node against every sanctioned node, and the markdown tree filtered every edge per node for its parents and every node per parent for its children. Each is now one index built where the population is in scope (receipts_by_node, roadmap_nodes_by_id, roadmap_parent_index moved to the model as the one parent index, roadmap_primary_children_index), and the closing-contract minting skips the lineage walk and dependency read for nodes whose node-local gaps already rule them out (readiness_may_be_only_contract_missing: a necessary condition; node_readiness still decides). frontier_sets_projection 58,033 -> 30,777 eval steps; closing-contract candidates 82,686 -> 42,382; roadmap_authority_projection 141,565 -> 59,666. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
…old stylesheet seams Every page row asked its prerequisites, which of them are closed and (on the tree) its children of the raw node and edge lists, and every band asked the whole membership relation per hierarchy question. A page now indexes its graph once (gunbc.roadmap_presentation RowGraph: lineage, parents, closed ids; roadmap_page PageTree adds primary children) and the banding reads one RoadmapMembershipIndex built by the page (daily_workspace_view_in). The sandbox's fixture frame reads an empty membership relation instead of the authority's, which named none of its rows and was reached only through a parameter default. The served folds gain supplied-stylesheet seams that production delegates through (roadmap_page_for_projection_launch_with_stylesheet, roadmap_daily_workspace_page_for_projection_observed_stale_with_stylesheet, sandbox_page_with_stylesheet); the altitude, serve daily-plan and sandbox gallery claims render through them with the stylesheet they never read supplied empty. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
…de half as a census The page, row and frontier claims rendered the whole projected authority (~1.5M eval steps each) to inspect a handful of rows. They now render the served folds over a projection holding exactly the declared rows they name (test.claim.roadmap.roadmap_authority_subtree_fixture), and witness_authority_document_carries_every_active_declared_row proves, without rendering, that the projection carries every active declared row and every row a subtree claim names. witness_authority_daily_workspace_serializes found both its bands in the stylesheet's [data-band=...] selectors, and the live authority has no done row; it now pins a real ready row's band, and witness_page_places_done_node_in_done_bucket pins the done band on a fixture. witness_projection_is_active_only reads the projected rows through the emitter's own per-row predicates instead of serializing every row to markdown. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
- gunbc.spark.native_experiment_apply: main (#12952) split unreached legs out of SparkPairHostApplyFailed into SparkPairHostUnreached. Every match here now handles Unreached exactly as Failed, which preserves the pre-split behavior (an unreached leg refuses/halts with its cause). - shell_dag_codex_app_server_trip_script witness: main (#12973) deleted codex_press_account_trip_script. Re-pointed trip_surface at the typed invocation under the file's own sanctioned exception, using the projection codex_app_server_press_witness_test already uses. Claims are unchanged. The control-word and sentinel arms now pass and leave the expected-red chunk; the adversarial codex_home arm still fails and stays enrolled. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
…t exercise the promoted ceiling ServingSubjectKey (length-prefixed preimage + content digest, exact-preimage equality) keys quality, calibration, cache fit and incumbent. Quality compares only on the same acceptance-manifest digest; calibration must sustain the promoted max_num_seqs, read realized transport, and record zero stalls. Policy states the operator-approved thresholds. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
…apabilitySubject Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Review findings (73856/73709): five tools/tests/*.py had no .dag authority and no consumer (DESIGN §6 unmodeled realization); 26 committed .log/.json receipts transcribed instrument output (§6 name the instrument). The plan docs now name the .dag entries that re-derive the results. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
The two clauses read independent facts of the projected rows; held in one claim they cost 77,539 eval steps against the 72,300 budget. Apart they are 69,622 (witness_projection_is_active_only) and 67,264 (witness_projection_carries_no_operator_todo), which now also reads the preamble paragraphs the former markdown form covered. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
sandbox_page_with(stylesheet, sections) is the page fold sandbox_page delegates to with sandbox_sections(); the gallery-and-live claim renders it over the two sections it asserts on, so it still reads the page's client asset and header without building the other six sections (102,684 -> 31,976 eval steps). The real page stays rendered whole by witness_sandbox_renders_register_depths and witness_sandbox_carries_auditioner_control. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
The live and refused renders share no assertion; one claim paid for both tables. witness_shell_live_task_refusal_marks_its_row now carries the refused arm. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Ledger-Repair-Judged: docs/design-rung-drops.md Ledger-Rows-Repaired: docs/design-rung-drops.md edited_bin_witness_wet_rows_not_executed_by_ci Heal-Candidate-Run: 37023043211
…; mints read it from the profile ModelLaunchPolicy is sole-constructor with no public mint and carries its checkpoint; the derived ServingLaunchProfile inherits it, and serving_subject_for_launch / arm_memory_fit_subject_for_launch / memory_proof_subject_for_launch take no second checkpoint. plan_arm_launch_for and arm_memory_fit_experiment_plan refuse a profile derived from another checkpoint's row. The four inline GLM policy copies are glm53_native_launch_policy; the unconsumed checkpoint_launch_policy is deleted. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
…and the config reading consume it Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
…file Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
…her's gate The page indexed its graph for scheduling while the launch admission's readiness gate walked lineage and scanned every edge and node per row over the same rows. gunbc.roadmap_spawner now owns the indexed graph (ReadinessGraph: lineage by id, parents by child, closed ids) and node_readiness_in_graph, the one readiness over it; the presentation's row graph is that graph, and LaunchGraphProjected carries it, so the admission's node find is a lookup and its readiness gate reads the same value the page reads. node_unmet_parent_ids keeps its list form for single-node callers. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
# Conflicts: # dag/gunbc/spark/serving_arm.dag
… binding comment states who passes the wall v41_group_a_intent is one row read by the plan and by the unit render, so every V4.1 rank renders Restart=no, StartLimitBurst=1, RuntimeMaxSec at the derived bound, and no [Install]. A witness goes red under a normal-serving render (verified). The WHO IT BINDS block on plan_arm_launch_under_memory_fit now says every arm passes the wall and V4.1 is admitted only as a bounded experiment because its terms are open. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
…art (apply and restore), so the rollback's own restart is not refused by StartLimitBurst; witness and transport-wait follow Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
… wait (engine ready deadline, no second number) shared by the front door and a per-rank NCCL announcement wait before every readback, fresh and recovery Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
…ement repairs Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
…ed refused on an unloaded head unit (run 37254736596) and stopped both apply and rollback on srv6 Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
…art site, one absolute readiness deadline per incarnation, the probed incarnation checked before and after every probe and bound into the readback, the deployment env (autotune skip-ops) in successor and performance identity - gunbc.spark.deliberate_unit_start: load-state, reset-failed if loaded, restart -- typed legs for the incumbent restore (restore_spark_serving_units), the same HostOperation rows rendered into the apply and rollback scripts; HostOperation gains SystemctlRestart and SystemctlResetFailed over the existing extdeps operations - spark_native_incarnation_wait: deadline = the incarnation's StartedAt + VLLM_ENGINE_READY_TIMEOUT_S on its own host, shared by the announcement and the front door; identity/running/restarts checked before and after every probe including a successful one; probes name the captured id; one log capture per transport probe; the observed id is printed and the readback refuses a verified rank whose incarnation differs - SparkPairHostApplied carries wire and stdout as fields; consumers read stdout as data - serving_deployment_env_key enters group_arm_row_successor and a new AxisDeploymentEnv on ServingPerformanceSubject; the GLM load receipt states the autotune policy and its lower-bound reading Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
…; minutes appear only at the workflow Step (review 76345) Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
…s (annotations are module-item grain only; emit-build refused it inside the body) Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
…rite/prepare script, typed deliberate_unit_start_leg, wait/finish script; the shell rendering of the start is removed (review 76352, ruled by valiant-crab-775) Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
|
Review 76352, string-assembled shell. Two parts, ruled by valiant-crab-775:
— sent from cool-carp-342 |
…ts its moved-axis claim Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
…es the launch-step derivation (no zero), and the readiness bound is a std.measure Second through the incarnation wait, unwrapped only where the shell text renders (review 76374) Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
…akes its unit (a zero-arg field call is not a call), the readiness fold is Nat throughout, a witness binding no longer shadows 'with' Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
…he arm converge: the converge's apply runs write-unit script, typed deliberate start, wait script; the converge's readback binds every verified rank to its awaited incarnation and waits under one deadline anchored to the incarnation's start; the retired rollback/preserve paths stay deleted Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
…it captures (id, absolute deadline) and the front door is rendered from that carried value, never resolving or deriving again; the wait loop only observes and gunbc.spark.awaited_incarnation decides (a success after the deadline refuses); executed-path reds for replacement after readback, success after the deadline, and a transport near the deadline with the front door down (side-chat ruling at 43cc61a) Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
… carry the clock's refinement, the parse refuses a negative instant, and a red pins it (review 76436) Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
… converge's readback decides each rank's transport wait from its trace, binds the readback to the awaited incarnation, and hands the head's awaited value to the front door, which never recaptures or re-derives Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
…oted is a pipe into yes(1), an endless writer that held the front-door leg's ssh channel open after a successful probe until the step timeout (run 37304585650); a red pins the quoting Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
…refusing typed (WaitLegOutlivedBound -> AwaitedLegOutlivedBound) instead of an open session the step timeout ends; one privileged-session route shared by the plain and bounded legs; a red sweeps every rendered stage script for echoed words the shell reads as a pipe, redirect or command Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
…against 72300 in floor run 37322697664): an exact cheap path for plain-word arguments, and the sweep cut by stage into three bounded claims Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
…apped only where the refusal is rendered (review 76631) Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
…-way against readiness's tip b7914eb so the squash adds no spurious conflicts; the mode description keeps this branch's converge sentence; fleet-converge.yml regenerated next Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Follow-up to #13040 (GLM Group A staircase), for the NVFP4 diagnostic launch.
Launch-step timeout tied to the arms' readiness deadline
timeout-minuteswas a literal 60, below the 3600 s front-door wait it encloses. Run 37190290418 was killed between apply and verdict, leaving neither a commit nor a rollback.arm_launch_step_needed_minutes()computes the needed time: the longest armVLLM_ENGINE_READY_TIMEOUT_S, read by the front door's ownengine_ready_timeout_for, plus 30 minutes for apply and 20 for rollback.Durationliteralarm_launch_step_timeout_minutes = 110. Witnessw_the_launch_step_timeout_covers_every_arms_readinesschecks it is at least the derivation.Int-to-Durationcast. The named trigger is a declared conversion.NVFP4 arm:
VLLM_FLASHINFER_AUTOTUNE_SKIP_OPS=trtllm::fused_moe::gemm1,trtllm::fused_moe::gemm2extdeps.vllm.environmentrow, citing the pinned image's sources.MoERunner.get_cache_key_extraskeys tactics by tp/ep/cluster rank, and the sparse-MLA pre-tune runs on the leader only.a_leader_only_pre_tune_seeds_a_rank_keyed_cache.Witnesses:
group_arm_launch20/20,workflow_dispatch_input42/42, run remotely at an exact SHA.🤖 Generated with Claude Code