Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
15 changes: 15 additions & 0 deletions mlpstorage_py/system_description/schema.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -57,6 +57,21 @@ system_under_test:

deployment: enum( 'onprem', 'cloud' )
product_nodes: list( include( 'node_description' ), required=False )
# product_switches is for switches that are part of the storage solution
# ONLY: switches that talk exclusively to storage-solution nodes (e.g. a
# backend interconnect fabric with no clients attached). A switch the
# benchmark clients attach to is test infrastructure and must NOT be
# listed here, because entries here feed total_rack_units (rule 11) and
# the derived "Provisioned Power (W)" results column (review-chairs
# ruling, v3.0 review, 2026-08-14).
#
# v4.0 ENHANCEMENT IDEA (not implemented): submitters currently have no
# structured place to document test-infrastructure switches (the v3.0
# Everpure submission wanted to report a dedicated-but-client-attached
# 8-switch fabric honestly and had nowhere to put it). Add either a
# sibling `test_infrastructure_switches:` list (documented, excluded
# from rule 11 and from power derivation) or a per-switch
# `scope: solution|test_infrastructure` field on switch_description.
product_switches: list( include( 'switch_description' ), required=False )
total_rack_units: int( min=0, required=False ) # Sum of all RU's, not including clients
rack_power_supplies: list( include( 'power_device' ), required=False)
Expand Down
19 changes: 18 additions & 1 deletion mlpstorage_py/system_description/schema_validator.py
Original file line number Diff line number Diff line change
Expand Up @@ -244,7 +244,24 @@ class NodeDescription(StrictModel):


class SwitchDescription(StrictModel):
"""Describes a homogeneous group of network switches included in the storage solution."""
"""Describes a homogeneous group of network switches included in the storage solution.

Scope (review-chairs ruling, v3.0 review, 2026-08-14): a switch belongs
in ``product_switches`` only if it talks exclusively to storage-solution
nodes. A switch the benchmark clients attach to is test infrastructure
and must be omitted, because entries here feed the rule-11
``total_rack_units`` sum and reportgen's derived "Provisioned Power (W)"
column.

v4.0 ENHANCEMENT IDEA (not implemented): there is no structured slot for
documenting test-infrastructure switches — the v3.0 Everpure submission
wanted to honestly report a dedicated-but-client-attached 8-switch
fabric and could only do so in PDF prose / YAML comments. Options: a
sibling ``test_infrastructure_switches`` list excluded from rule 11 and
power derivation, or a ``scope: solution|test_infrastructure`` field
here whose ``test_infrastructure`` value excludes the entry from both
sums. Revisit when gearing up for the v4.0 submission round.
"""
unit_count: int = Field(ge=1)
vendor_name: str = Field(min_length=1)
model_name: str = Field(min_length=1)
Expand Down
Loading