Skip to content

Latest commit

 

History

History
626 lines (354 loc) · 24.4 KB

File metadata and controls

626 lines (354 loc) · 24.4 KB

API Reference

Packages

operator.tinysystems.io/v1alpha1

Package v1alpha1 contains API Schema definitions for the operator v1alpha1 API group

Resource Types

EdgeRetryPolicy

EdgeRetryPolicy controls how the scheduler re-dispatches a single edge on handler failure. Matches Temporal-style ActivityOptions in spirit, scoped to one edge in a TinyFlow.

On error, the scheduler:

  1. checks if the error's code is in NonRetryableErrorCodes — if so, surface immediately, no retry.
  2. otherwise increments the attempt counter and re-dispatches after the policy's backoff, up to MaxAttempts total tries.

Appears in:

Field Description
maxAttempts integer Max total dispatch attempts (1 = no retry, the default).
initialDelayMs integer Initial backoff between attempts. Default 1s.
backoffCoefficient string Multiplier applied to the delay each attempt. Default 2.0

(exponential backoff).
maxDelayMs integer Cap on a single attempt's delay. Default 30s.
nonRetryableErrorCodes string array Error codes that skip retry. Components signal these via

module.NonRetryable(code, err) — typically "quota_exceeded",

"unauthorized", "content_filter", "validation". The transport

stamps x-error-code on the reply; the scheduler reads it and

short-circuits the retry loop when matched.
timeoutMs integer Per-attempt handler timeout in milliseconds. Caps how long a

single dispatch attempt can run before the scheduler cancels

its context and (if MaxAttempts permits) retries the next one.

0 = use the transport's default (currently 5 minutes for the

NATS transports). Bump this on edges that legitimately need

long-running handlers — agent planning loops, batch LLM calls,

or HTTP probes against slow upstreams.

Position

Underlying type: integer

Appears in:

ScenarioPortData

ScenarioPortData stores the sample data for a single port

Appears in:

Field Description
port string Port is the full port name (e.g., "flowid.module.component-suffix:portname")
data byte array Data is the JSON-encoded sample payload for this port

TinyFlow

TinyFlow is the Schema for the tinyflows API

Appears in:

Field Description
apiVersion string operator.tinysystems.io/v1alpha1
kind string TinyFlow
kind string Kind is a string value representing the REST resource this object represents.

Servers may infer this from the endpoint the client submits requests to.

Cannot be updated.

In CamelCase.

More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
apiVersion string APIVersion defines the versioned schema of this representation of an object.

Servers should convert recognized schemas to the latest internal value, and

may reject unrecognized values.

More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
metadata ObjectMeta Refer to Kubernetes API documentation for fields of metadata.
spec TinyFlowSpec
status TinyFlowStatus

TinyFlowList

TinyFlowList contains a list of TinyFlow

Field Description
apiVersion string operator.tinysystems.io/v1alpha1
kind string TinyFlowList
kind string Kind is a string value representing the REST resource this object represents.

Servers may infer this from the endpoint the client submits requests to.

Cannot be updated.

In CamelCase.

More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
apiVersion string APIVersion defines the versioned schema of this representation of an object.

Servers should convert recognized schemas to the latest internal value, and

may reject unrecognized values.

More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
metadata ListMeta Refer to Kubernetes API documentation for fields of metadata.
items TinyFlow array

TinyFlowSpec

TinyFlowSpec defines the desired state of TinyFlow

Appears in:

TinyFlowStatus

TinyFlowStatus defines the observed state of TinyFlow

Appears in:

TinyModule

TinyModule is the Schema for the tinymodules API

Appears in:

Field Description
apiVersion string operator.tinysystems.io/v1alpha1
kind string TinyModule
kind string Kind is a string value representing the REST resource this object represents.

Servers may infer this from the endpoint the client submits requests to.

Cannot be updated.

In CamelCase.

More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
apiVersion string APIVersion defines the versioned schema of this representation of an object.

Servers should convert recognized schemas to the latest internal value, and

may reject unrecognized values.

More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
metadata ObjectMeta Refer to Kubernetes API documentation for fields of metadata.
spec TinyModuleSpec
status TinyModuleStatus

TinyModuleComponentPort

TinyModuleComponentPort describes a single port on a component as published by the module operator in TinyModule status. This is the static, component-level view (independent of any placed TinyNode) that lets MCP/LLM tooling inspect port schemas before building flows.

Appears in:

Field Description
name string Name is the port identifier (e.g. "request", "response", "out").
label string Label is the human-readable port name.
source boolean Source is true for output ports, false for input ports.
position Position Position is the visual port placement hint (Top/Right/Bottom/Left).
schema byte array Schema is the JSON schema describing the port's data structure.

TinyModuleComponentStatus

Appears in:

Field Description
name string
description string
info string
tags string array
ports TinyModuleComponentPort array Ports carries component-level port metadata (name, direction,

JSON schema) so tooling can discover what a component looks like

without placing a TinyNode first.

TinyModuleList

TinyModuleList contains a list of TinyModule

Field Description
apiVersion string operator.tinysystems.io/v1alpha1
kind string TinyModuleList
kind string Kind is a string value representing the REST resource this object represents.

Servers may infer this from the endpoint the client submits requests to.

Cannot be updated.

In CamelCase.

More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
apiVersion string APIVersion defines the versioned schema of this representation of an object.

Servers should convert recognized schemas to the latest internal value, and

may reject unrecognized values.

More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
metadata ListMeta Refer to Kubernetes API documentation for fields of metadata.
items TinyModule array

TinyModuleSpec

TinyModuleSpec defines the desired state of TinyModule

Appears in:

Field Description
image string Foo is an example field of TinyModule. Edit tinymodule_types.go to remove/update

TinyModuleStatus

TinyModuleStatus defines the observed state of TinyModule

Appears in:

Field Description
addr string INSERT ADDITIONAL STATUS FIELD - define observed state of cluster

Important: Run "make" to regenerate code after modifying this file
name string
version string
sdkVersion string
components TinyModuleComponentStatus array

TinyNode

TinyNode is the Schema for the tinynodes API

Appears in:

Field Description
apiVersion string operator.tinysystems.io/v1alpha1
kind string TinyNode
kind string Kind is a string value representing the REST resource this object represents.

Servers may infer this from the endpoint the client submits requests to.

Cannot be updated.

In CamelCase.

More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
apiVersion string APIVersion defines the versioned schema of this representation of an object.

Servers should convert recognized schemas to the latest internal value, and

may reject unrecognized values.

More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
metadata ObjectMeta Refer to Kubernetes API documentation for fields of metadata.
spec TinyNodeSpec
status TinyNodeStatus

TinyNodeComponentStatus

Appears in:

Field Description
description string
info string
tags string array

TinyNodeEdge

Appears in:

Field Description
id string Edge id
port string Current node's port name

Source port
to string Other node's full port name
flowID string
retryPolicy EdgeRetryPolicy Retry policy for this edge. Default (MaxAttempts == 0 or 1) =

single-shot: the scheduler dispatches once, surface the error.

Authors opt into retry per-edge for transient-failure-safe

targets (webhooks, idempotent writes). The runtime never silently

retries against paid LLM APIs by default — see

feedback_no_implicit_retries.md.

TinyNodeList

TinyNodeList contains a list of TinyNode

Field Description
apiVersion string operator.tinysystems.io/v1alpha1
kind string TinyNodeList
kind string Kind is a string value representing the REST resource this object represents.

Servers may infer this from the endpoint the client submits requests to.

Cannot be updated.

In CamelCase.

More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
apiVersion string APIVersion defines the versioned schema of this representation of an object.

Servers should convert recognized schemas to the latest internal value, and

may reject unrecognized values.

More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
metadata ListMeta Refer to Kubernetes API documentation for fields of metadata.
items TinyNode array

TinyNodeModuleStatus

Appears in:

Field Description
name string
version string
sdkVersion string

TinyNodePortConfig

Appears in:

Field Description
from string Settings depend on a sender
port string
schema byte array Schema JSON schema of the port
configuration byte array Configuration JSON data of the port's configuration
flowID string

TinyNodePortStatus

Appears in:

Field Description
name string
label string
position Position
source boolean
schema byte array
configuration byte array

TinyNodeSpec

TinyNodeSpec defines the desired state of TinyNode

Appears in:

Field Description
module string Module name - container image repo + tag
component string Component name within a module
ports TinyNodePortConfig array Port configurations
edges TinyNodeEdge array Edges to send message next

TinyNodeStatus

TinyNodeStatus defines the observed state of TinyNode

Appears in:

Field Description
observedGeneration integer ObservedGeneration is the most recent generation observed by the controller.

It corresponds to metadata.generation, which is updated on mutation by the API Server.
module TinyNodeModuleStatus
component TinyNodeComponentStatus
ports TinyNodePortStatus array
status string
metadata object (keys:string, values:string) Refer to Kubernetes API documentation for fields of metadata.
error boolean
lastUpdateTime Time

TinyProject

TinyProject is the Schema for the tinyprojects API

Appears in:

Field Description
apiVersion string operator.tinysystems.io/v1alpha1
kind string TinyProject
kind string Kind is a string value representing the REST resource this object represents.

Servers may infer this from the endpoint the client submits requests to.

Cannot be updated.

In CamelCase.

More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
apiVersion string APIVersion defines the versioned schema of this representation of an object.

Servers should convert recognized schemas to the latest internal value, and

may reject unrecognized values.

More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
metadata ObjectMeta Refer to Kubernetes API documentation for fields of metadata.
spec TinyProjectSpec
status TinyProjectStatus

TinyProjectList

TinyProjectList contains a list of TinyProject

Field Description
apiVersion string operator.tinysystems.io/v1alpha1
kind string TinyProjectList
kind string Kind is a string value representing the REST resource this object represents.

Servers may infer this from the endpoint the client submits requests to.

Cannot be updated.

In CamelCase.

More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
apiVersion string APIVersion defines the versioned schema of this representation of an object.

Servers should convert recognized schemas to the latest internal value, and

may reject unrecognized values.

More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
metadata ListMeta Refer to Kubernetes API documentation for fields of metadata.
items TinyProject array

TinyProjectSpec

TinyProjectSpec defines the desired state of TinyProject

Appears in:

Field Description
description string Description is a markdown description of the project

TinyProjectStatus

TinyProjectStatus defines the observed state of TinyProject

Appears in:

TinyScenario

TinyScenario is the Schema for the tinyscenarios API

Appears in:

Field Description
apiVersion string operator.tinysystems.io/v1alpha1
kind string TinyScenario
kind string Kind is a string value representing the REST resource this object represents.

Servers may infer this from the endpoint the client submits requests to.

Cannot be updated.

In CamelCase.

More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
apiVersion string APIVersion defines the versioned schema of this representation of an object.

Servers should convert recognized schemas to the latest internal value, and

may reject unrecognized values.

More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
metadata ObjectMeta Refer to Kubernetes API documentation for fields of metadata.
spec TinyScenarioSpec
status TinyScenarioStatus

TinyScenarioList

TinyScenarioList contains a list of TinyScenario

Field Description
apiVersion string operator.tinysystems.io/v1alpha1
kind string TinyScenarioList
kind string Kind is a string value representing the REST resource this object represents.

Servers may infer this from the endpoint the client submits requests to.

Cannot be updated.

In CamelCase.

More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
apiVersion string APIVersion defines the versioned schema of this representation of an object.

Servers should convert recognized schemas to the latest internal value, and

may reject unrecognized values.

More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
metadata ListMeta Refer to Kubernetes API documentation for fields of metadata.
items TinyScenario array

TinyScenarioSpec

TinyScenarioSpec defines the desired state of TinyScenario

Appears in:

Field Description
ports ScenarioPortData array Ports contains per-port sample data entries

TinyScenarioStatus

TinyScenarioStatus defines the observed state of TinyScenario

Appears in:

TinyWidget

Appears in:

Field Description
port string
name string
schemaPatch byte array
gridX integer
gridY integer
gridW integer
gridH integer

TinyWidgetPage

TinyWidgetPage is the Schema for the tinywidgetpages API

Appears in:

Field Description
apiVersion string operator.tinysystems.io/v1alpha1
kind string TinyWidgetPage
kind string Kind is a string value representing the REST resource this object represents.

Servers may infer this from the endpoint the client submits requests to.

Cannot be updated.

In CamelCase.

More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
apiVersion string APIVersion defines the versioned schema of this representation of an object.

Servers should convert recognized schemas to the latest internal value, and

may reject unrecognized values.

More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
metadata ObjectMeta Refer to Kubernetes API documentation for fields of metadata.
spec TinyWidgetPageSpec
status TinyWidgetPageStatus

TinyWidgetPageList

TinyWidgetPageList contains a list of TinyWidgetPage

Field Description
apiVersion string operator.tinysystems.io/v1alpha1
kind string TinyWidgetPageList
kind string Kind is a string value representing the REST resource this object represents.

Servers may infer this from the endpoint the client submits requests to.

Cannot be updated.

In CamelCase.

More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
apiVersion string APIVersion defines the versioned schema of this representation of an object.

Servers should convert recognized schemas to the latest internal value, and

may reject unrecognized values.

More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
metadata ListMeta Refer to Kubernetes API documentation for fields of metadata.
items TinyWidgetPage array

TinyWidgetPageSpec

TinyWidgetPageSpec defines the desired state of TinyWidgetPage

Appears in:

Field Description
widgets TinyWidget array Foo is an example field of TinyWidgetPage. Edit tinywidgetpage_types.go to remove/update

TinyWidgetPageStatus

TinyWidgetPageStatus defines the observed state of TinyWidgetPage

Appears in: