Skip to content

Re-apply remaining medium-priority v2026.3.1/v2026.3.2 improvements #2208

@alexey-pelykh

Description

@alexey-pelykh

Context

PR #2191 wholesale-restored multiple files from pre-v2026.3.1. This captures the remaining medium-priority improvements that don't warrant individual issues.

Audit report: hq/engineering/notes/post-remediation-audit-b3b4.md

Findings

doctor.ts (2 lost checks)

  1. noteStartupOptimizationHints() — v2026.3.1 added startup optimization hints check. Module (doctor-performance.js) exists and already exports it. Just needs import + call.
  2. noteOpenAIOAuthTlsPrerequisites() — v2026.3.2 added OpenAI OAuth TLS prerequisites check. Module (oauth-tls-preflight.ts) exists. Needs import + call.

routes.ts (1 perf improvement)

  1. Conditional loadPlugins for health --json — change loadPlugins type from boolean to boolean | ((argv: string[]) => boolean). Set routeHealth.loadPlugins = (argv) => !hasFlag(argv, "--json"). Skips local plugin metadata loading for JSON health checks.

acp/client.ts (1 platform fix)

  1. Wire resolveAcpClientSpawnInvocation into startAcpServer — the function exists at HEAD but is unused. The spawn call still uses raw serverCommand/effectiveArgs instead of the resolved invocation. Needed for Windows .cmd shim handling and windowsHide.

sessions.ts (1 UI fix)

  1. CONTROL_UI session listing filter — prevents the gateway's control panel from appearing in session listings. Uses GATEWAY_CLIENT_IDS constant.

config/defaults.ts (1 feature)

  1. Anthropic cache retention default — set cacheRetention: "short" when primary model targets Anthropic. Useful even without model catalog.

doctor-legacy-config.ts (1 DRY refactor)

  1. Replace inline Slack migration message strings with formatSlackStreamModeMigrationMessage() and formatSlackStreamingBooleanMigrationMessage() from ../config/discord-preview-streaming.js. Module exists in fork.

Exit Criterion

All 7 improvements applied where dependency modules exist. No new suppressions.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions