@invinite-org/chartlang-runtime
v1.2.0
Published
Execution engine, Series ring buffers, ta.* math primitives
Downloads
665
Readme
@invinite-org/chartlang-runtime
experimental
Execution engine, Series ring buffers, primitive implementations, state slots, views, inputs, request fallback, and emission buffering.
Install
pnpm add @invinite-org/chartlang-runtimePublic surface
createScriptRunner({ compiled, capabilities, stateStore?, symInfo?, inputOverrides? })->ScriptRunnerwithonHistory,onBarClose,onBarTick,drain, anddispose.- Data structures:
RingBuffer<T>,Float64RingBuffer,makeSeriesView(buf),createStreamState(...). - State:
inMemoryStateStore()plus runtimestate.*slots with committed/tentative semantics;state.tick.*commits immediately during ticks. - Views: per-step
barstate,timeframe, and per-mountsyminfosnapshots are wired intoComputeContext. - Inputs: manifest input descriptors resolve through adapter/host overrides
before
compute({ inputs })runs. - Request:
request.security({ interval })returns a cached all-NaNSecurityBarwhen multi-timeframe support is unavailable and emits deduped capability diagnostics. - Emissions:
plot,hline,alert,draw, drawing handles, budget checks, and validation-backed diagnostic drops. - Context:
ACTIVE_RUNTIME_CONTEXTis set only around script steps. - Composition (Phase 7):
createScriptRunneraccepts aCompiledScriptBundlein addition to a singleCompiledScriptObject. Mounts oneDepRunnerper private dep and oneSiblingRunnerper drawn export; runs deps then siblings then primary each bar; filters emissions per export-status (private dep visuals dropped, sibling visuals forwarded withexport:<name>/slot-id prefix). Dep halts drop the primary's bar. - Internal subpath
@invinite-org/chartlang-runtime/internal: exports__chartlang_depOutputfor compiler-emitted bundles. Not a script-author surface.
Minimum-viable API call
import { createScriptRunner, inMemoryStateStore } from "@invinite-org/chartlang-runtime";
const runner = createScriptRunner({
compiled,
capabilities,
stateStore: inMemoryStateStore(),
});
await runner.onHistory(bars);
const emissions = runner.drain();Docs
License
MIT
