Skip to content

finding: test-suite console chatter measured at 61k lines per full repo run — dogfood 41k and objectql 5k dominate, and the loudness is a logger-default question #13517

Description

@claude

Recorded while measuring the disarm shape for the late-console teardown card (measurement methodology and per-suite table live there, in the os-dev-report comment). Filing the volume itself as its own observation, because the disarm makes it VISIBLE where it used to be silently discarded.

The measurement (origin/main 240aad5, all 72 vitest-running packages, one full run each)

  • 8,066 intercepted console RPCs per full-repo test run, carrying 61,086 lines. Before the repo-wide disableConsoleIntercept sweep these were serialized to the vitest main thread and then DISCARDED by the non-TTY default reporter (silent: 'passed-only'); after it they write to worker stdout and land in CI shard logs.
  • Distribution, not a mean: packages/qa/dogfood alone carries 41,115 lines (67%); packages/objectql 5,077; packages/rest 2,902; packages/verify 2,544; packages/runtime 1,987; packages/cli 1,563 — top 6 = 90%. 33 of 72 suites emit zero.
  • The bulk of the heavy suites' output is [Registry] Registered object/namespace ... registration chatter and engine lifecycle INFO lines emitted at default log level while apps boot in tests.

Why this is a logger-default question, not an interception question

The showcase disarm docblock (examples/app-showcase/vitest.config.ts) already records this boundary: quieting the chatter is a question about @objectstack/objectql's (and the registry's) default log level under test, separate from the teardown-race mechanism. Re-arming interception would not remove the cost — it would only hide it again while paying an RPC round-trip per write and re-exposing suites to the teardown race.

What a fix could look like (for triage, not prescribed here)

  • A quieter default level for the registry/engine loggers when running under vitest (process.env.VITEST), or
  • a documented OS_LOG_LEVEL default in test harnesses, or
  • deliberate demotion of per-object registration lines to debug.

No urgency claimed: the cost today is CI log volume (one shard log grows by ~41k lines), not correctness.


Generated by Claude Code

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions