Advertise the L40S pool with real card capabilities

The staging relay pool formerly named mock-4090 is now L40S, matching
the Modal deployment. Add its 48 GiB capability entry and default the
Subrosa Configuration node to it. The mock-4090 map entry stays for
test fixtures.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
Ken Simpson
2026-08-31 09:28:32 -07:00
co-authored by Claude Opus 5
parent 0aa613d310
commit 45fb739b9f
3 changed files with 41 additions and 4 deletions
+6
View File
@@ -191,6 +191,12 @@ _SUBROSA_DEFAULT_POOL_CAPABILITY = SubrosaPoolCapability(
)
_SUBROSA_POOL_CAPABILITIES: Mapping[str, SubrosaPoolCapability] = {
"L40S": SubrosaPoolCapability(
gpu_name="NVIDIA L40S",
total_vram_bytes=48 * 1024**3,
cpu_count=16,
total_ram_bytes=64 * 1024**3,
),
"mock-4090": SubrosaPoolCapability(
gpu_name="NVIDIA GeForce RTX 4090",
total_vram_bytes=24 * 1024**3,
+4 -4
View File
@@ -340,7 +340,7 @@ class SubrosaConfiguration(io.ComfyNode):
inputs=[
io.String.Input(
"configuration_name",
default="subrosa-mock-4090",
default="subrosa-l40s",
tooltip="Unique workflow-local name for this relay pool.",
),
io.String.Input(
@@ -350,7 +350,7 @@ class SubrosaConfiguration(io.ComfyNode):
),
io.String.Input(
"pool",
default="mock-4090",
default="L40S",
tooltip="Relay pool that should claim these jobs.",
),
io.Int.Input(
@@ -491,12 +491,12 @@ def subrosa_configuration_from_inputs(
return SubrosaRemoteConfiguration(
configuration_id=normalized_id,
display_name=str(
inputs.get("configuration_name") or "subrosa-mock-4090"
inputs.get("configuration_name") or "subrosa-l40s"
).strip(),
relay_url=str(
inputs.get("relay_url") or "wss://staging.subrosa.red"
).strip().rstrip("/"),
pool=str(inputs.get("pool") or "mock-4090").strip(),
pool=str(inputs.get("pool") or "L40S").strip(),
credential_id=str(inputs.get("credential_id") or normalized_id).strip(),
maximum_workers=int(inputs.get("maximum_workers", 1)),
)
+31
View File
@@ -222,6 +222,37 @@ def test_subrosa_candidate_has_schedulable_mock_capabilities(
assert state.capabilities.maximum_vram_bytes == 24 * 1024**3
def test_subrosa_l40s_pool_advertises_48_gib(
execution_scheduling_module: Any,
execution_environments_module: Any,
remote_configurations_module: Any,
settings_module: Any,
) -> None:
"""The L40S pool should advertise the card's real 48 GiB VRAM."""
configuration = remote_configurations_module.SubrosaRemoteConfiguration(
configuration_id="44",
display_name="Subrosa L40S",
relay_url="wss://staging.subrosa.red",
pool="L40S",
credential_id="subrosa-default",
)
state, quote = execution_scheduling_module._configured_candidate_environment(
configuration=configuration,
requirements=execution_environments_module.ComponentResourceRequirements(),
settings=settings_module.get_settings(),
ssh_hosts_by_id={},
vast_service=None,
vast_unavailable_reason=None,
)
assert quote is None
assert state is not None
assert state.capabilities is not None
assert state.capabilities.maximum_vram_bytes == 48 * 1024**3
assert state.capabilities.gpus[0].name == "NVIDIA L40S"
def test_subrosa_b300_pool_admits_large_vram_component(
execution_scheduling_module: Any,
execution_environments_module: Any,