Package-level declarations

Types

Link copied to clipboard

Fixed callback site and optional JVM binary exception class name, with no free-form error details.

Link copied to clipboard
Link copied to clipboard
interface CallerContext

Opaque integration-owned caller snapshot. Prefer immutable, lightweight snapshots.

Link copied to clipboard

The current actual execution identity, independently of any reservation it produced.

Link copied to clipboard

First accepted caller plus at most 63 additional callers, in acceptance order, without deduplication. Empty/failed captures retain their positions. Counts include all accepted nonempty reservation groups; truncation affects observation metadata only. The lists are immutable snapshots.

Link copied to clipboard

No exception messages, causes, stacks, suppressed exceptions, or raw Throwable cross this boundary.

Link copied to clipboard
fun interface ExecutionContext

Installs only integration-owned ambient state. Each invocation returns its own restoration token. Close restores the preceding state on that installation's thread. Installations can nest and run concurrently, including overlapping coroutine update/restore calls; never share a latest-token slot. If install partially mutates state and throws, the provider must restore its partial mutation itself. Mosaic cannot reconstruct unknown state. Neither install nor close may block on Mosaic progress.

Link copied to clipboard

Opaque identity of an actual observed execution, retained by cached producer references.

Link copied to clipboard
Link copied to clipboard

Execution-local callbacks, subject to the same contract as ExecutionObserver.

Link copied to clipboard

Supported integration boundary for actual Tile executions, not compose calls or individual batch keys. All callbacks are synchronous, exception-guarded, and must return promptly. They must not block on Mosaic progress. The integration owns asynchronous export, finalization, and provider shutdown. Callbacks can run concurrently across executions and child coroutines; integrations coordinate their own mutable state.

Link copied to clipboard
Link copied to clipboard

Fixed execution metadata, with no Tile object, application keys, or values.

Link copied to clipboard

Core-owned origin of a cached reservation. Transitions once from unresolved to a terminal resolution. Several references may resolve to the same MultiTile execution identity. Completed cache reuse keeps the same reference; it does not manufacture another execution.

Link copied to clipboard
sealed interface ProducerResolution
Link copied to clipboard
class StartedObservation(val callbacks: ExecutionObservation, val identity: ExecutionIdentity? = null, val context: ExecutionContext? = null)

Immutable start result; accessing its fields invokes no provider code.

Link copied to clipboard

Inherited functions

Link copied to clipboard

Integration-author installation hook, separate from the ordinary Canvas dependency DSL. Installs one supported observer for this Canvas and all descendants. Local, inherited, and reentrant duplicates fail before another factory executes. Failed factories leave configuration unchanged. Canvas never owns provider shutdown. Import this extension from the observation package explicitly.