Skip to content

Express compute-node intent independently of backend virtualization mechanism #1076

Description

@Brad-Edwards

Requirements

  • SEM-218 — Explicitness And Realization Semantics

Finding

The SDL requires every node to declare type: vm or type: switch. Node.type is also a registered SEM-218 realization concern, so an explicitly authored vm is binding and wins over an inherited open realization posture.

This leaves no portable way for an author to describe a compute node while deliberately leaving its realization as a virtual machine, container, cloud instance, constructed root filesystem, or another compatible substrate to the selected backend. APTL currently realizes SDL vm nodes as containers, demonstrating that the authored vocabulary and the backend mechanism are already being treated as different concepts without a contract that states that distinction.

Impact

Authors who do not care about the virtualization mechanism must nevertheless assert one. Backends must then either contradict the authored vm value, reinterpret it non-literally, or reject an otherwise satisfiable scenario. This obscures the boundary between scenario intent, backend realization, and realization attestation.

Required investigation before solutioning

Before proposing a contract or implementation change, investigate and document the existing architectural and design patterns in this repository, including:

  • Node, NodeType, and their historical semantics;
  • SEM-218 exact/constrained/open classification and leaf precedence;
  • realization-envelope and backend-capability contracts;
  • the reference and libvirt backend treatment of node type;
  • existing ADRs and issues governing abstract scenario resources versus concrete realization mechanisms; and
  • downstream usage in APTL and other conformant backends.

The investigation must determine whether vm is intended as scenario semantics, a realization mechanism, or an overloaded combination. Do not select a syntax or implementation approach until that analysis is complete.

Acceptance criteria

  • The repository records an evidence-based architectural analysis of the current Node.type authority and downstream interpretations.
  • The portable contract can represent an authored compute node whose backend mechanism is intentionally unconstrained, or the analysis identifies an existing representation and closes every processor/backend conformance gap preventing its use.
  • Authors can still constrain a mechanism when mechanism identity is part of the scenario requirement.
  • Planning distinguishes authored system constraints from backend realization choices.
  • Realization evidence discloses the mechanism actually selected without rewriting it as authored intent.
  • Conformance tests cover at least two materially different valid realization mechanisms for mechanism-neutral compute intent and reject mechanisms that violate explicit author constraints.
  • Existing strict switch/network semantics are not weakened accidentally.

Ecosystem context

This was found while auditing TechVault realization boundaries in OpenRAE/env-packs#288 and APTL realization behavior in Brad-Edwards/aptl#869.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions