Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .github/instructions/logging.instructions.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,7 @@ Binary logger, console loggers, terminal logger, and event forwarding infrastruc
* Must handle terminal width changes, very narrow terminals, and non-TTY output (piped to file).
* Concurrent project builds must render without corruption.
* ANSI escape sequences must be cross-platform compatible.
* Use `RenderImmediateMessage` (not direct terminal writes) for any message that must appear immediately outside the normal node-status rendering cycle — for example, messages with a null `BuildEventContext` or `IsAuthProviderMessage` events. Direct terminal writes bypass the node-display logic and corrupt the rendered output.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
* Use `RenderImmediateMessage` (not direct terminal writes) for any message that must appear immediately outside the normal node-status rendering cycle — for example, messages with a null `BuildEventContext` or `IsAuthProviderMessage` events. Direct terminal writes bypass the node-display logic and corrupt the rendered output.
* Use `RenderImmediateMessage` (not direct terminal writes) for any message that must appear immediately outside the normal node-status rendering cycle, like messages that require user intervention or explain long delays. Direct terminal writes bypass the node-display logic and corrupt the rendered output.

(null BEC is not an interesting part of the problem IMO).


## Console Logger

Expand Down
Loading