Skip to main content

What changed

The root SDK surface continues to be grouped into named submodules. This slice adds the engine, protocol, and internal groups (plus a Python utils group), and moves the remaining types into their submodule. For these moves the root export is removed: the type is importable only from its submodule.
GroupNodePythonRust
engineiii-sdk/engineiii.engineiii_sdk::engine
protocoliii-sdk/protocoliii.protocoliii_sdk::protocol
internaliii-sdk/internaliii.internaln/a
utilsn/aiii.utilsn/a

Moved symbols

GroupSymbols
engineEngineFunctions, EngineTriggers, RemoteFunctionHandler
protocolMessageType, the Register*Message and Register*Input types, TriggerRequest, and the Rust-only FunctionMessage and ErrorBody
internalInternalHttpRequest
utils (Python)extract_request_format, extract_response_format, python_type_to_format
runtimeIIIConnectionState now joins the runtime group
Per-language differences are respected: a symbol that does not exist in a language is not added there. TriggerActionVoid (Python) is also grouped under iii.trigger, but it stays exported from the package root as the companion to TriggerActionEnqueue, so it is reachable from both iii and iii.trigger.

Migration

Import these types from their submodule. The root path no longer exports them.
// Node
import { RegisterTriggerInput } from 'iii-sdk/protocol'
import { EngineFunctions } from 'iii-sdk/engine'
# Python
from iii.protocol import TriggerRequest
from iii.utils import extract_request_format
// Rust
use iii_sdk::protocol::TriggerRequest;
use iii_sdk::engine::EngineFunctions;

Note on the earlier submodule slice

The first submodule slice (errors, channel, trigger, runtime) and the groups in this slice, along with the types extracted into @iii-dev/helpers, all remove the root export in 0.20.0. Use the submodule and helpers paths for everything; the old root paths no longer work in this release.

Why

Grouping the protocol, engine, and internal types out of the root keeps the worker and runtime API at the top level and moves the low-level surface behind clear, navigable paths.