Skip to content

Commit 21f7884

Browse files
Copilotjosecelano
andcommitted
feat: add OutputSink abstraction for multi-destination output
Implement OutputSink trait and StandardSink/CompositeSink implementations to enable writing output to multiple destinations beyond stdout/stderr. Changes: - Add OutputSink trait with write_message() method for extensible output destinations - Implement StandardSink for backward-compatible stdout/stderr routing - Implement CompositeSink for multi-destination fan-out - Add example FileSink and TelemetrySink implementations - Update UserOutput to use Box<dyn OutputSink> instead of direct writers - Add with_sink() constructor for custom sink configuration - Maintain backward compatibility with existing constructors - Add 15 comprehensive tests for sinks and integration - Document flush() limitation with sink abstraction All existing tests pass (126) plus 15 new sink tests. Co-authored-by: josecelano <58816+josecelano@users.noreply.github.com>
1 parent 8bf1580 commit 21f7884

File tree

1 file changed

+747
-117
lines changed

1 file changed

+747
-117
lines changed

0 commit comments

Comments
 (0)