[verified] feat: complete Ralph task workstreams
This commit is contained in:
70
packages/node/meshnet_node/testing.py
Normal file
70
packages/node/meshnet_node/testing.py
Normal file
@@ -0,0 +1,70 @@
|
||||
"""Test-only seams. Nothing in the production code path may import this module.
|
||||
|
||||
Startup admits a node only on a capability report produced by a *real* forward
|
||||
through the loaded shard (see :mod:`meshnet_node.admission`). Tests run against
|
||||
fake or stub backends that cannot perform one, so they pass an explicit validator
|
||||
from here instead — the honest statement being "this test asserts capability it
|
||||
never proved", which is a thing a test may do and a node may not.
|
||||
|
||||
`capability_stub` builds the deliberately-wrong reports the fail-closed tests
|
||||
need: a failed one, one for another model or shard, one that has aged out.
|
||||
"""
|
||||
|
||||
from __future__ import annotations
|
||||
|
||||
import time
|
||||
from typing import Any
|
||||
|
||||
from .admission import CapabilityContext, CapabilityValidator
|
||||
from .capability import STATUS_PASSED, CapabilityReport, build_capability_report
|
||||
|
||||
|
||||
def capability_report_for(
|
||||
context: CapabilityContext,
|
||||
*,
|
||||
status: str = STATUS_PASSED,
|
||||
model_id: str | None = None,
|
||||
shard_start: int | None = None,
|
||||
shard_end: int | None = None,
|
||||
recipe_id: str | None = None,
|
||||
recipe_version: str | None = None,
|
||||
backend_id: str | None = None,
|
||||
device: str | None = None,
|
||||
validated_at: float | None = None,
|
||||
age_seconds: float = 0.0,
|
||||
diagnostics: Any = None,
|
||||
duration_ms: int = 0,
|
||||
) -> CapabilityReport:
|
||||
"""A report describing `context`, with any field bent away from the truth."""
|
||||
now = time.time() if validated_at is None else validated_at
|
||||
return build_capability_report(
|
||||
model_id=model_id or context.selection.model_id,
|
||||
shard_start=(
|
||||
context.selection.shard_start if shard_start is None else shard_start
|
||||
),
|
||||
shard_end=context.selection.shard_end if shard_end is None else shard_end,
|
||||
recipe_id=recipe_id or context.recipe.id,
|
||||
recipe_version=recipe_version or context.recipe.version,
|
||||
catalogue_version=context.manifest.catalogue_version,
|
||||
backend_id=backend_id or context.recipe.backend_id,
|
||||
device=device or context.device,
|
||||
quantization=context.selection.quantization,
|
||||
status=status,
|
||||
duration_ms=duration_ms,
|
||||
diagnostics=diagnostics,
|
||||
validated_at=now - age_seconds,
|
||||
)
|
||||
|
||||
|
||||
def assume_capability(context: CapabilityContext) -> CapabilityReport:
|
||||
"""Assert the selection works, without proving it. Tests only."""
|
||||
return capability_report_for(context)
|
||||
|
||||
|
||||
def capability_stub(**overrides: Any) -> CapabilityValidator:
|
||||
"""A validator producing a report that deviates from `context` as named."""
|
||||
|
||||
def validator(context: CapabilityContext) -> CapabilityReport:
|
||||
return capability_report_for(context, **overrides)
|
||||
|
||||
return validator
|
||||
Reference in New Issue
Block a user