Context and shared services
Preserve actual execution relationships across service and asynchronous boundaries.
#Transaction roots
A new transaction begins at a matching portal entry definition. Application identity is not inferred from a service name or its first consumer. Shared services obtain application scope from the valid incoming signed context.
#HTTP and custom transports
Supplied wrappers propagate x-sigillum-context without changing the institution’s traceparent or tracestate. Conflicting context is not silently overwritten. If an uninstrumented intermediary does not preserve the carrier, continuity cannot be assumed.
For custom messaging, use export/import/bind interfaces. Transfer the producing execution’s context to its actual consumer; do not reuse a carrier from another request.
#Lookup references are not causal links
Person, session and external business references support search. Two requests by the same customer have different execution identities. Using a customer reference as a transaction identity can incorrectly merge traces.
#Parallel execution
Parallel steps retain their actual parent/span or explicit link relationships. Wall-clock order alone does not establish causality. Bind the appropriate context for callbacks and restore the previous context when the scope closes.
