219 lines
4.8 KiB
Python
219 lines
4.8 KiB
Python
"""SciMesh Workload SDK v1.
|
|
|
|
The implemented profile is ``core-batch-v1``: strict manifests, typed artifact
|
|
ports, static map/reduce DAGs, resource eligibility/local reservation, exact
|
|
verification, and an adapter for existing distributed workloads. Advanced
|
|
dynamic, stream, accelerator, gang, and side-effect declarations are modeled
|
|
but fail compatibility negotiation unless an enforcing runtime advertises the
|
|
corresponding versioned features.
|
|
"""
|
|
|
|
from .artifacts import (
|
|
ArtifactCollection,
|
|
ArtifactItem,
|
|
ArtifactRef,
|
|
ArtifactSchema,
|
|
Cardinality,
|
|
CollectionKind,
|
|
OutputManifest,
|
|
PortSpec,
|
|
Provenance,
|
|
)
|
|
from .batch import MapReduceWorkload
|
|
from .conformance import (
|
|
CancellationFlag,
|
|
LocalArtifactStore,
|
|
LocalCoreBatchExecutor,
|
|
LocalPlanningContext,
|
|
LocalTaskContext,
|
|
assert_manifest_round_trip,
|
|
)
|
|
from .execution import (
|
|
CheckpointPolicy,
|
|
ExecutionProfile,
|
|
FailureCategory,
|
|
FailureReport,
|
|
NetworkPolicy,
|
|
ProcessModel,
|
|
RetryPolicy,
|
|
)
|
|
from .identity import (
|
|
MANIFEST_SCHEMA_VERSION,
|
|
OUTPUT_SCHEMA_VERSION,
|
|
SDK_API_VERSION,
|
|
TASK_SCHEMA_VERSION,
|
|
WORKFLOW_SCHEMA_VERSION,
|
|
ComponentRef,
|
|
FeatureRequirement,
|
|
SchemaRef,
|
|
VersionRange,
|
|
WorkloadId,
|
|
)
|
|
from .integrity import installed_distribution_digest
|
|
from .manifest import (
|
|
DeterminismProfile,
|
|
EnvironmentSpec,
|
|
PackageSpec,
|
|
TrustMode,
|
|
VerifierSpec,
|
|
WorkloadLimits,
|
|
WorkloadManifest,
|
|
)
|
|
from .ui import UIElement
|
|
from .plans import ExpansionManifest, JobRequest, TaskSpec, ValidatedJob, WorkflowPlan
|
|
from .protocols import (
|
|
ArtifactCatalog,
|
|
ArtifactSink,
|
|
CancellationToken,
|
|
Planner,
|
|
PlanningContext,
|
|
PlanningResources,
|
|
ReduceContext,
|
|
Reducer,
|
|
Runner,
|
|
TaskContext,
|
|
Verifier,
|
|
)
|
|
from .registry import (
|
|
AllowedPackage,
|
|
WorkloadDefinition,
|
|
WorkloadDescription,
|
|
WorkloadRegistry,
|
|
workload_allowlist_from_json,
|
|
)
|
|
from .resources import (
|
|
AcceleratorDevice,
|
|
AcceleratorMode,
|
|
ResourceAllocation,
|
|
ResourceInventory,
|
|
ResourcePool,
|
|
ResourceRequirements,
|
|
ResourceUnavailableError,
|
|
)
|
|
from .runtime import (
|
|
CompatibilityError,
|
|
NegotiatedWorkload,
|
|
RuntimeCapabilities,
|
|
negotiate_manifest,
|
|
)
|
|
from .verification import (
|
|
CandidateOutput,
|
|
CandidateOutputs,
|
|
CanonicalRecordVerifier,
|
|
ExactArtifactVerifier,
|
|
NumericTolerance,
|
|
NumericToleranceVerifier,
|
|
VerificationDecision,
|
|
VerificationBinding,
|
|
VerificationStatus,
|
|
VerifyContext,
|
|
)
|
|
from .workflow import (
|
|
ArtifactEdge,
|
|
GangSpec,
|
|
LoopSpec,
|
|
PortRef,
|
|
SideEffectSpec,
|
|
StageKind,
|
|
StageSpec,
|
|
StreamSpec,
|
|
WorkflowFailurePolicy,
|
|
WorkflowSpec,
|
|
)
|
|
|
|
__all__ = [
|
|
"AcceleratorDevice",
|
|
"AcceleratorMode",
|
|
"AllowedPackage",
|
|
"ArtifactCatalog",
|
|
"ArtifactCollection",
|
|
"ArtifactEdge",
|
|
"ArtifactItem",
|
|
"ArtifactRef",
|
|
"ArtifactSchema",
|
|
"ArtifactSink",
|
|
"CancellationFlag",
|
|
"CancellationToken",
|
|
"CandidateOutput",
|
|
"CandidateOutputs",
|
|
"CanonicalRecordVerifier",
|
|
"Cardinality",
|
|
"CheckpointPolicy",
|
|
"CollectionKind",
|
|
"CompatibilityError",
|
|
"ComponentRef",
|
|
"DeterminismProfile",
|
|
"EnvironmentSpec",
|
|
"ExactArtifactVerifier",
|
|
"ExecutionProfile",
|
|
"ExpansionManifest",
|
|
"FailureCategory",
|
|
"FailureReport",
|
|
"FeatureRequirement",
|
|
"GangSpec",
|
|
"JobRequest",
|
|
"LocalArtifactStore",
|
|
"LocalCoreBatchExecutor",
|
|
"LocalPlanningContext",
|
|
"LocalTaskContext",
|
|
"LoopSpec",
|
|
"MANIFEST_SCHEMA_VERSION",
|
|
"MapReduceWorkload",
|
|
"NegotiatedWorkload",
|
|
"NetworkPolicy",
|
|
"NumericTolerance",
|
|
"NumericToleranceVerifier",
|
|
"OUTPUT_SCHEMA_VERSION",
|
|
"OutputManifest",
|
|
"PackageSpec",
|
|
"Planner",
|
|
"PlanningContext",
|
|
"PlanningResources",
|
|
"PortRef",
|
|
"PortSpec",
|
|
"ProcessModel",
|
|
"Provenance",
|
|
"ReduceContext",
|
|
"Reducer",
|
|
"ResourceAllocation",
|
|
"ResourceInventory",
|
|
"ResourcePool",
|
|
"ResourceRequirements",
|
|
"ResourceUnavailableError",
|
|
"RetryPolicy",
|
|
"Runner",
|
|
"RuntimeCapabilities",
|
|
"SDK_API_VERSION",
|
|
"SchemaRef",
|
|
"SideEffectSpec",
|
|
"StageKind",
|
|
"StageSpec",
|
|
"StreamSpec",
|
|
"TASK_SCHEMA_VERSION",
|
|
"TaskContext",
|
|
"TaskSpec",
|
|
"TrustMode",
|
|
"ValidatedJob",
|
|
"VerificationDecision",
|
|
"VerificationBinding",
|
|
"VerificationStatus",
|
|
"Verifier",
|
|
"VerifierSpec",
|
|
"VersionRange",
|
|
"VerifyContext",
|
|
"WORKFLOW_SCHEMA_VERSION",
|
|
"WorkflowFailurePolicy",
|
|
"WorkflowPlan",
|
|
"WorkflowSpec",
|
|
"WorkloadDefinition",
|
|
"WorkloadDescription",
|
|
"WorkloadId",
|
|
"WorkloadLimits",
|
|
"WorkloadManifest",
|
|
"WorkloadRegistry",
|
|
"workload_allowlist_from_json",
|
|
"assert_manifest_round_trip",
|
|
"installed_distribution_digest",
|
|
"negotiate_manifest",
|
|
]
|