LMRuntime.com / Experimental roadmap

Experimental Runtime Control Roadmap

A bounded research roadmap for host-controlled budgets, backend policy, session recovery, and evidence around existing UAIX.LmRuntime packages.

Research proposal

This roadmap explores an evidence-gated host controller around existing UAIX.LmRuntime packages. It is not a package capability claim, release schedule, API commitment, or statement that autonomous goal systems exist.

Roadmap status

Proposed host-layer experiment

Evidence-Gated Adaptive Runtime Control

The controller would observe a local run, evaluate explicit limits, choose only a pre-authorized host action, and append evidence. Model output would never authorize a change, acquire credentials, alter package source, or override operator termination.

  • Current stateEditorial roadmap and reproducible experiment design.
  • Implementation locationConsuming application or separate host controller.
  • Runtime sourceNo UAIX.LmRuntime source modification is proposed.
  • ScheduleNo delivery date or package commitment is implied.

Research question

Can a local .NET host improve reliability and resource use by observing runtime evidence and selecting only pre-authorized recovery actions around a verified GGUF generation path?

Foundation available now

  • Public UAIX.LmRuntime NuGet packages and package-specific documentation.
  • Verified local GGUF intake and isolated application sessions.
  • Managed CPU execution and explicit backend registration/probe surfaces.
  • Bounded generation, cancellation, deterministic sampling, and session state APIs.
  • Generated API reference and deterministic fixture evidence.

Roadmap work, not current behavior

  • A host controller that evaluates evidence after each bounded step.
  • Policy-driven recovery selection and explicit no-op decisions.
  • Cross-run evidence manifests and controlled replay comparisons.
  • Published trials measuring controller benefit, cost, and failure modes.
  • Promotion of any experimental contract into a package API.

Control boundary

The proposed controller remains ordinary deterministic application code. It operates outside model weights and outside UAIX.LmRuntime package internals.

01Observe

Read typed run state: artifact identity, selected backend, token progress, elapsed time, cancellation state, session position, and diagnostics.

02Evaluate

Compare observations with host-owned token, time, retry, recovery, backend, and evidence limits.

03Propose

Select one action from a closed allowlist. The model does not expand the action set.

04Validate

Check policy, preconditions, compatibility fingerprints, remaining budget, and required approval.

05Apply

Execute the allowed host action through existing package APIs or terminate without mutation.

06Record

Append the observation, decision, reason, action result, hashes, timestamps, and unresolved uncertainty.

07Re-evaluate

Continue only while the run remains inside its declared authority and resource envelope.

Phased roadmap

AFixed verified baseline

Run the same trusted model bytes, prompt bytes, deterministic settings, fresh session, token ceiling, and managed CPU path. Retain output and evidence hashes.

BEvidence envelope

Define a host-owned record for model SHA-256 and byte count, resolved package graph, runtime identifier, backend diagnostics, prompt hash, token counts, elapsed time, stop reason, and output hash.

CBudget controller

Add maximum elapsed time, generated tokens, retries, and recovery cycles. Test continue, reduce-next-budget, cancel, no-op, and terminate decisions.

DBackend policy trials

Exercise managed CPU, prefer-accelerator with visible CPU fallback, required-accelerator fail-closed behavior, and direct probe reporting. Selection evidence remains separate from inference proof.

ESession recovery

Save compatible state, interrupt a run, restore with model/configuration fingerprints, continue generation, and compare session position, generated tokens, output hashes, and diagnostics.

FReproducibility publication

Run repeated deterministic fixtures and failure injection, publish negative or null results, calculate controller overhead, and retain the full benchmark manifest.

Package ownership

PackageRoadmap ownership boundaryPublic package
UAIX.LmRuntime.LocalEndpointVerified GGUF admission, isolated sessions, bounded greedy generation, cancellation, and deterministic disposal.NuGet ↗
UAIX.LmRuntime.AccelerationBackend registration, probing, selection policy, device identity, diagnostics, and explicit CPU fallback state.NuGet ↗
UAIX.LmRuntime.Backends.CpuManagedThe package-visible managed CPU backend used as the known local execution baseline.NuGet ↗
UAIX.LmRuntime.Models.LlamaLower-level LLaMA session state, KV cache, reset, persistence, restoration, fingerprints, and reference execution.NuGet ↗
UAIX.LmRuntime.SamplingDeterministic token selection, explicit generation limits, stop handling, and controlled probability state.NuGet ↗
UAIX.LmRuntime.GgufModel artifact inspection, strict validation, metadata, tensor cataloging, hashing, and mapped access.NuGet ↗
UAIX.LmRuntime.AbstractionsRuntime-neutral request, response, diagnostics, budget, review, and evidence contracts for host integrations.NuGet ↗

The experiment should install only the packages required for the selected layer. The roadmap does not collapse ownership into a new monolithic runtime.

Permitted host decisions

No-op / continueKeep the current configuration when the run is valid and a change cannot be justified.
Reduce the next budgetLower a future token allowance or recovery allowance within host policy.
CancelSignal cooperative cancellation when elapsed time or an operator request reaches the declared boundary.
Reset sessionDiscard state when reuse is invalid, explicitly requested, or incompatible with the next trial.
Restore stateLoad a checkpoint only after model and configuration fingerprints match.
Record CPU fallbackContinue through managed CPU only when fallback is allowed and visible in evidence.
Fail closedStop when a required backend, model identity, evidence field, or compatibility condition is unavailable.
TerminateEnd the run when another attempt cannot be justified inside the remaining budget.

Host policy example

This conceptual policy is application-owned code. It evaluates typed observations and returns one action from a closed allowlist. Adapters in the consuming application would translate an approved decision into the applicable cancellation, reset, restore, or backend-selection call exposed by the installed UAIX.LmRuntime packages.

EvidenceGatedRuntimePolicy.cs
using System;
using System.ComponentModel.DataAnnotations;

namespace LmRuntime.RoadmapSample;

/// <summary>Defines host-owned limits for one bounded runtime trial.</summary>
public sealed class AdaptiveRuntimeBudget
{
    /// <summary>Gets the maximum number of generated tokens.</summary>
    [Display(Name = "Maximum Generated Tokens")]
    public int MaximumGeneratedTokens { get; init; } = 256;

    /// <summary>Gets the maximum elapsed time for the trial.</summary>
    [Display(Name = "Maximum Elapsed")]
    public TimeSpan MaximumElapsed { get; init; } = TimeSpan.FromSeconds(30);

    /// <summary>Gets the maximum number of recovery cycles.</summary>
    [Display(Name = "Maximum Recovery Cycles")]
    public int MaximumRecoveryCycles { get; init; } = 1;
}

/// <summary>Describes evidence observed by the host after a bounded step.</summary>
public sealed class AdaptiveRuntimeObservation
{
    /// <summary>Gets the UTC time at which the observation was captured.</summary>
    [Display(Name = "Observed At UTC")]
    public required DateTimeOffset ObservedAtUtc { get; init; }

    /// <summary>Gets the elapsed duration of the current trial.</summary>
    [Display(Name = "Elapsed")]
    public required TimeSpan Elapsed { get; init; }

    /// <summary>Gets the number of tokens generated by the current trial.</summary>
    [Display(Name = "Generated Tokens")]
    public int GeneratedTokens { get; init; }

    /// <summary>Gets the number of recovery cycles already consumed.</summary>
    [Display(Name = "Recovery Cycles")]
    public int RecoveryCycles { get; init; }

    /// <summary>Gets a value indicating whether operator cancellation was requested.</summary>
    [Display(Name = "Cancellation Requested")]
    public bool CancellationRequested { get; init; }

    /// <summary>Gets a value indicating whether all required evidence fields are present.</summary>
    [Display(Name = "Evidence Complete")]
    public bool EvidenceComplete { get; init; }

    /// <summary>Gets a value indicating whether the required backend is available.</summary>
    [Display(Name = "Required Backend Available")]
    public bool RequiredBackendAvailable { get; init; }

    /// <summary>Gets a value indicating whether recovery was requested.</summary>
    [Display(Name = "Recovery Requested")]
    public bool RecoveryRequested { get; init; }

    /// <summary>Gets a value indicating whether the saved state matches the model and configuration fingerprints.</summary>
    [Display(Name = "Checkpoint Compatible")]
    public bool CheckpointCompatible { get; init; }
}

/// <summary>Lists the only actions the experimental host policy may select.</summary>
public enum AdaptiveRuntimeAction
{
    /// <summary>Continues without changing runtime configuration.</summary>
    NoOpContinue,

    /// <summary>Signals cooperative cancellation.</summary>
    Cancel,

    /// <summary>Restores a previously validated compatible state.</summary>
    RestoreCompatibleState,

    /// <summary>Stops because a required condition is unavailable.</summary>
    FailClosed,

    /// <summary>Ends the trial at a declared resource boundary.</summary>
    Terminate
}

/// <summary>Represents a typed policy decision and its reviewable reason.</summary>
public sealed class AdaptiveRuntimeDecision
{
    /// <summary>Gets the selected host action.</summary>
    [Display(Name = "Action")]
    public required AdaptiveRuntimeAction Action { get; init; }

    /// <summary>Gets the deterministic reason for the decision.</summary>
    [Display(Name = "Reason")]
    public required string Reason { get; init; }
}

/// <summary>Evaluates observations without granting authority to model output.</summary>
public static class EvidenceGatedRuntimePolicy
{
    /// <summary>Chooses one host action from the closed experimental allowlist.</summary>
    /// <param name="observation">The typed evidence captured after a bounded runtime step.</param>
    /// <param name="budget">The immutable host-owned limits for the current trial.</param>
    /// <returns>A deterministic action and reason for the evidence ledger.</returns>
    public static AdaptiveRuntimeDecision Evaluate(
        AdaptiveRuntimeObservation observation,
        AdaptiveRuntimeBudget budget)
    {
        ArgumentNullException.ThrowIfNull(observation);
        ArgumentNullException.ThrowIfNull(budget);

        if (observation.CancellationRequested)
        {
            return Decide(AdaptiveRuntimeAction.Cancel, "Operator cancellation requested.");
        }

        if (!observation.EvidenceComplete || !observation.RequiredBackendAvailable)
        {
            return Decide(AdaptiveRuntimeAction.FailClosed, "A required evidence or backend condition is unavailable.");
        }

        if (observation.Elapsed >= budget.MaximumElapsed)
        {
            return Decide(AdaptiveRuntimeAction.Cancel, "The elapsed-time budget was reached.");
        }

        if (observation.GeneratedTokens >= budget.MaximumGeneratedTokens)
        {
            return Decide(AdaptiveRuntimeAction.Terminate, "The generated-token budget was reached.");
        }

        if (observation.RecoveryRequested)
        {
            if (!observation.CheckpointCompatible || observation.RecoveryCycles >= budget.MaximumRecoveryCycles)
            {
                return Decide(AdaptiveRuntimeAction.FailClosed, "Recovery is incompatible or its budget is exhausted.");
            }

            return Decide(AdaptiveRuntimeAction.RestoreCompatibleState, "A compatible checkpoint was approved for bounded recovery.");
        }

        return Decide(AdaptiveRuntimeAction.NoOpContinue, "The run remains valid; no change is justified.");
    }

    /// <summary>Creates a typed decision record.</summary>
    /// <param name="action">The selected allowlisted host action.</param>
    /// <param name="reason">The deterministic reason retained as evidence.</param>
    /// <returns>A new decision record.</returns>
    private static AdaptiveRuntimeDecision Decide(AdaptiveRuntimeAction action, string reason) =>
        new() { Action = action, Reason = reason };
}

The example deliberately has no model-generated action parser. Model text can be evidence or application output, but it cannot add actions, change limits, approve recovery, or suppress cancellation.

Minimum evidence record

  • Experiment identifier and UTC start/completion times.
  • Model SHA-256, byte count, path-policy result, and relevant GGUF metadata.
  • Resolved package graph and application build identity.
  • Backend registrations, probe results, selection policy, selected backend/device, and fallback state.
  • Prompt hash, requested token ceiling, generated token count, elapsed generation time, and stop/cancellation reason.
  • Session reset, save, restore, or continuation action with compatibility fingerprints.
  • Controller observation, selected decision, typed reason, approval state, and action result.
  • Output hash, evidence completeness status, known limitations, and unresolved uncertainty.

Evaluation gates

GateMeasurePromotion requirement
Deterministic baselineRepeated output/evidence agreementMismatch is investigated before adaptive trials.
Budget correctnessCorrect cancellation, stop, no-op, and fail-closed ratesNo silent limit bypass or hidden fallback.
RecoveryCompatible restore success and incompatible restore rejectionState continuity is attributable to matching fingerprints.
EvidenceRequired-field completeness and hash integrityEvery decision is reconstructable from retained records.
BenefitWithin-budget completion rate versus fixed baselineImprovement is reported with failures and controller overhead.
StabilityNo-op rate under already-valid conditionsThe controller does not change configuration merely because it can.
Operator controlCancellation and termination effectivenessHost authority remains effective in every tested state.

Not claimed

Engineering language used here

  • Runtime health and operating condition.
  • Resource, token, time, retry, and recovery budgets.
  • Host policy, typed evidence, compatibility fingerprints, and bounded decisions.
  • Recovery proposal, checkpoint, no-op, fallback, and termination.

This roadmap does not establish

  • Machine consciousness, emotion, desire, or subjective experience.
  • Intrinsic goals, autonomous self-preservation, or authority over operators.
  • Self-modifying model weights or package source.
  • Validation of teleodynamic theory, quantum cognition, or cosmological claims.
  • GPU inference from registration packages alone.
  • Broad model compatibility, benchmark leadership, or production/safety certification.