@irisrun/sdk
v0.4.0
Published
Iris adapter SDK — one dependency to build a store, channel, or provider adapter. Curated re-exports of the three port type-sets, the three importable conformance suites, and the forkless-loader contracts (openStore / openModelProvider / openChannel). Pai
Readme
@irisrun/sdk
One dependency to author an Iris adapter — a store, a channel, or a provider. It re-exports, from a single import:
- the port types for all three families (
StateStore/Scheduler, the channel port +makeChannelSession,Performer+ModelCall*); - the three importable conformance suites (
runStoreConformance,runChannelPortConformance,runModelProviderConformance) + a singleregister; - the forkless-loader contracts an adapter package exports so the CLI can load it
without a fork —
OpenStore(openStore),OpenProvider(openModelProvider),OpenChannel(openChannel).
It has no runtime logic of its own — it is a curated surface, and it does not depend on the CLI.
// a third-party store, certified and forkless-loadable:
import { type OpenStore, runStoreConformance, runSchedulerConformance, register } from "@irisrun/sdk";
import { test } from "node:test";
export const openStore: OpenStore = ({ url }) => ({ store: /* … */, scheduler: /* … */ });
register(runStoreConformance(() => new MyStore()), test);Scaffold a ready-to-fill package with iris adapter init <store|channel|provider> <name>.
See the contributor recipes: store ·
channel ·
provider.
