This project is a Java thread-local extension and context transmitter designed to preserve execution context across asynchronous boundaries. It provides the mechanisms necessary to pass thread-local variables from parent threads to child threads, ensuring data persists when using thread pool executors.
The library enables automatic context transmission through a Java agent that uses bytecode instrumentation to modify thread pool implementations without requiring source code changes. It also supports transparent instrumentation via executor service wrapping and task decoration for Runnable and Callable objects.
The system manages the capturing and restoration of thread-local state to prevent memory leaks and context pollution in reused pools. It includes support for custom value transmission logic to define how objects are copied between different thread contexts.