Skip to content

Serving-load PR2/3: GLM rows out of serving_load_probe; admission and frontier per subject - #12842

Merged
gunbai-bot[bot] merged 3 commits into
mainfrom
session/fierce-carp-324-pr2
Oct 1, 2026
Merged

gunbai-bot[bot] merged 3 commits into
mainfrom
session/fierce-carp-324-pr2

Conversation

@gunbai-bot

@gunbai-bot gunbai-bot Bot commented Sep 30, 2026

Copy link
Copy Markdown
Contributor

PR2 of 3 for the shared serving-load runner. Stacked on #12838: this branch contains its commit. Review only the second commit (the diff shrinks once #12838 lands). The base is main so CI runs.

The defect this moves out. serving_load_observation read glm_native_workload_admission and glm_native_qualification_frontier directly. Every model's receipt, V4.1's included, would therefore have printed GLM's admission standing and GLM's Group B frontier. Both are now parameters of serving_load_observation, carried per model on ServingLoadSubject. Per-model numbers stay per model (DESIGN §3); the shared module holds none.

What moved. Every GLM row now lives in the new gunbc.spark.glm_serving_load. That module also holds GLM's runner binding and glm_native_serving_load_wet. The rows are:

  • qualification frontier
  • workload admission
  • engine tokenizer path
  • sweep dataset
  • bench seed
  • serve base URL
  • c=2 smoke protocol
  • live subject and its standing
  • protected subject

ClientRateQualificationFrontier stays sole_constructor and gains the client_rate_qualification_frontier constructor. The imports only GLM needed are gone from serving_load_probe.

Deleted. gunbc.spark.serving_load_probe_cli: it held only GLM's binding. The run command is now --entry dag/gunbc/spark/glm_serving_load.dag --function glm_native_serving_load_wet. serving_load_probe and its CLI are among the modules no required lane resolves (rung drop required_lanes_do_not_resolve_product_layer_modules). So, per DESIGN §3 replacement migration, I enumerated consumers by name before deleting: the two witness modules, both updated. The same drop means green CI on this PR (and on #12838) does not execute these modules. The executed evidence is local:

Evidence. gunbc run through a scratch driver covered 7 witnesses:

  • the 4 runner witnesses
  • serving_load_probe_witness: the_receipt_persists_raw_evidence_for_replay, the_live_subject_receipt_carries_the_nccl_announcement_obligation, receipts_differing_only_in_the_settling_obligation_differ

Results:

The rest of serving_load_probe_witness was not executed locally; it was typechecked by the same run.

Next. PR3 binds V4.1: Group A, srv6:30000, deepseek-v4.1-flash, gunbc-v41-tp4. Its own admission and frontier, its staircase feeding v41_capacity_measurement, and a fleet-converge mode row. The wet run is a named frontier until V4.1 serves on main's path.

🤖 Generated with Claude Code

gunbc-ci-auto-heal and others added 2 commits September 30, 2026 21:59
…r, GLM bound onto it

One runner for every served model, parameterized by a ServingLoadSubject (host, LAN address,
fabric group, container, base URL, served alias, subject standing, principal, receipt) and a
list of load steps. Per step: scrape before -> vllm bench serve -> scrape after ->
serving_load_observation, reusing gunbc.spark.serving_load_probe's vocabulary unchanged.
The access bracket stays at each model's entry, which hands the runner its context.

glm_native_serving_load_wet is now GLM's subject plus its one step (c=2 smoke) on the runner.
A witness pins the runner's step text byte-equal to the pre-runner inline composition;
mutating GLM's principal reds it (executed locally, rc=0 clean / rc=1 mutated).

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
…frontier become per-subject

serving_load_observation hard-coded glm_native_workload_admission and
glm_native_qualification_frontier, so every model's receipt would carry GLM's admission
standing. Both are now parameters, carried per model on ServingLoadSubject.

Every GLM row (qualification frontier, workload admission, engine tokenizer path, sweep
dataset, bench seed, base URL, smoke protocol, live subject and standing, protected subject)
moves into gunbc.spark.glm_serving_load, which also holds GLM's runner binding and
glm_native_serving_load_wet. gunbc.spark.serving_load_probe_cli is deleted: it held only that
binding. Its consumers were enumerated by name first (two witness modules) because
serving_load_probe is outside the required lanes' resolution.

New witness the_receipt_carries_the_subjects_admission_not_glms; executed locally with 3
serving_load_probe witnesses and the PR1 witnesses: clean rc=0, mutation (probe ignores the
admission parameter) rc=1 subject_admission.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
@gunbai-bot

gunbai-bot Bot commented Sep 30, 2026

Copy link
Copy Markdown
Contributor Author

Roster: not edited, deliberately. docs/rung-drops/required_lanes_do_not_resolve_product_layer_modules_2026-09-20.txt is a snapshot receipt of ONE run: its header pins tree 3dff8c5 + binary sha256 b7d9ecf8, and the drop's own population field (gunbc.rung_drop.required_lanes_do_not_resolve_product_layer_modules) says it is 'a receipt of one run and not the authority'. The population is enumerated by identity by gunbc test //gunbc/instruments:required-lane-resolution-census, which re-derives it from the live tree. Deleting serving_load_probe_cli / adding glm_serving_load + serving_load_runner changes the census output, not the drop. Hand-editing the receipt would make it claim a run that never happened (§6: name the instrument, never transcribe its output). Old entry path: git grep finds no workflow, doc or .dag invoking serving_load_probe_cli. The one hit is a witness comment describing the pre-runner composition, which is historical by design. — sent from fierce-carp-324

@gunbai-bot
gunbai-bot Bot added this pull request to the merge queue Oct 1, 2026
@github-merge-queue
github-merge-queue Bot removed this pull request from the merge queue due to a conflict with the base branch Oct 1, 2026
…24-pr2

# Conflicts:
#	dag/gunbc/spark/serving_load_probe_cli.dag
#	dag/gunbc/spark/serving_load_runner.dag
#	dag/test/claim/spark/serving_load_runner_witness_test.dag
@gunbai-bot
gunbai-bot Bot added this pull request to the merge queue Oct 1, 2026
Merged via the queue into main with commit 923722f Oct 1, 2026
4 checks passed
@gunbai-bot
gunbai-bot Bot deleted the session/fierce-carp-324-pr2 branch October 1, 2026 03:52
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.

0 participants