fix(console): send console.trace to stderr with a "Trace:" prefix

0X
2mo ago
+77-5

What does this PR do?

Fixes #19952. console.trace() wrote its output to stdout with no prefix; Node writes to stderr prefixed with Trace:.

$ bun  -e 'console.trace("hi")'   # before
hi                                # ← stdout, no prefix
      at [eval]:1:9

$ node -e 'console.trace("hi")'
Trace: hi                         # ← stderr, "Trace:" prefix
    at [eval]:1:9

The native console handler (src/jsc/ConsoleObject.rs) only routed Warning/Error/Assert messages to the stderr writer, and never emitted a label for the Trace message type. This change routes Trace to the stderr writer (stream selection + color mode) and prints Trace: before the formatted arguments, or a bare Trace when called with no arguments — matching Node:

console.trace("hi")      -> Trace: hi
console.trace("x=%d", 5) -> Trace: x=5
console.trace({a:1})     -> Trace: { a: 1 }
console.trace()          -> Trace

The .zig reference sibling has the same gap; left untouched since it is not compiled.

How did you verify your code works?

Added console.trace tests in test/js/node/console/console.test.ts that spawn a subprocess and assert stdout is empty, stderr starts with Trace: hi\n / bare Trace\n (no-args) and contains the stack frames, plus format-specifier handling. Tests pass on the debug build and fail on the released bun (USE_SYSTEM_BUN=1). Existing console suites (console.test.ts, console-log.test.ts) still pass: 14 / 14.