Skip to content

'Почему-то запущено много сесий с контейнером браузера'#387

Open
konard wants to merge 2 commits into
ProverCoderAI:mainfrom
konard:issue-383-173b143467d9
Open

'Почему-то запущено много сесий с контейнером браузера'#387
konard wants to merge 2 commits into
ProverCoderAI:mainfrom
konard:issue-383-173b143467d9

Conversation

@konard

@konard konard commented Jun 8, 2026

Copy link
Copy Markdown
Contributor

Summary

Fixes #383 — the container task manager was flooded with many identical sessions for the browser container.

Root cause

The Rust browser MCP helpers (browser-connection / docker-git-browser-connection) run on an allocated pty (pts/N). In classifyProcess, any non-baseline process with an interactive tty falls through to the ssh kind, so every helper showed up as a separate visible ssh terminal:

PID 11502  ssh  pts/1  browser-connection --project dg-docker-git-issue-376 --network container:dg-docker-git-issue-376
PID 14388  ssh  pts/1  browser-connection --project dg-docker-git-issue-376 --network container:dg-docker-git-issue-376
...

Fix

packages/api/src/services/container-tasks-core.ts now classifies these helper processes as internal system tasks. Since buildContainerTasks(..., includeDefault=false) filters out system tasks, they no longer clutter the task manager and are only surfaced when system processes are explicitly requested.

Reproduction & test

packages/api/tests/container-tasks-core.test.ts adds a regression test mirroring the command shape from the issue screenshot:

  • A browser-connection ... --network container:... process on pts/1 and a /usr/local/bin/docker-git-browser-connection start process are now excluded from the default task list.
  • With includeDefault=true the helper is reported with kind system (not ssh).

Verified the test fails against the old classifier (helper classified as ssh) and passes with the fix.

Checks

  • vitest run for container-tasks-core + project-browser: passing.
  • tsc --noEmit (api typecheck): passing.
  • eslint on changed files: passing.

Changes

  • packages/api/src/services/container-tasks-core.ts: classify browser-connection / docker-git-browser-connection helpers as system.
  • packages/api/tests/container-tasks-core.test.ts: regression test.
  • Removed the placeholder .gitkeep.

Fixes #383

Adding .gitkeep for PR creation (default mode).
This file will be removed when the task is complete.

Issue: ProverCoderAI#383
@coderabbitai

coderabbitai Bot commented Jun 8, 2026

Copy link
Copy Markdown

Warning

Review limit reached

@konard, we couldn't start this review because you've reached your PR review rate limit.

More reviews will be available in 54 minutes and 10 seconds. Learn how PR review limits work.

Your organization has run out of usage credits. Purchase more in the billing tab.

⌛ How to resolve this issue?

After more reviews become available, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

We recommend that you space out your commits to avoid hitting the rate limit.

🚦 How do rate limits work?

CodeRabbit enforces hourly rate limits for each developer per organization.

Our paid plans include higher PR review limits than trial, open-source, and free plans. In all cases, reviews become available again over time. During sustained high-volume PR review activity, CodeRabbit may temporarily slow when the next review becomes available.

Please see our Fair Usage Limits Policy for further information.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: ASSERTIVE

Plan: Pro Plus

Run ID: 36e544cc-869e-4aba-b164-bf280572c129

📥 Commits

Reviewing files that changed from the base of the PR and between 8889c5c and 31bcdc6.

📒 Files selected for processing (2)
  • packages/api/src/services/container-tasks-core.ts
  • packages/api/tests/container-tasks-core.test.ts
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@konard

konard commented Jun 8, 2026

Copy link
Copy Markdown
Contributor Author

Working session summary

Implemented the fix locally, but I could not commit/push/update PR #387 because command execution stopped working after an ENOSPC filesystem error.

Changed:

  • container-tasks-core.ts: classifies browser-connection / docker-git-browser-connection helper processes as internal system tasks instead of visible ssh tasks.
  • container-tasks-core.test.ts: added a regression test matching the issue screenshot command shape.

Verified:

  • Reproducing test failed before the fix: browser-connection was classified as ssh.
  • Targeted test passed after fix: 3 passed.
  • bun run --cwd packages/api typecheck passed.
  • bun run --cwd packages/api test passed after building packages/docker-git-session-sync.
  • bun run --cwd packages/api lint passed.
  • bun run typecheck passed.

Blocked:


This summary was automatically extracted from the AI working session output.

@konard konard changed the title [WIP] Почему-то запущено много сесий с контейнером браузера 'Почему-то запущено много сесий с контейнером браузера' Jun 8, 2026
@konard konard marked this pull request as ready for review June 8, 2026 08:07
@konard

konard commented Jun 8, 2026

Copy link
Copy Markdown
Contributor Author

🤖 Solution Draft Log

This log file contains the complete execution trace of the AI solution draft process.

💰 Cost estimation:

  • Model: GPT-5.5
  • Provider: OpenAI
  • Public pricing estimate: $9.323500

📊 Context and tokens usage:

  • 340.6K / 1.1M (32%) input tokens, 17.2K / 128K (13%) output tokens

Total: (340.6K + 5.1M cached) input tokens, 17.2K output tokens, $9.323500 cost

🤖 Models used:

  • Tool: OpenAI Codex
  • Requested: gpt-5.5
  • Model: GPT-5.5 (gpt-5.5)

📎 Log file uploaded as Gist (20878KB)


Now working session is ended, feel free to review and add any feedback on the solution draft.

@konard

konard commented Jun 8, 2026

Copy link
Copy Markdown
Contributor Author

🚨 Solution Draft Failed

The automated solution draft encountered an error:

Session interrupted by user (CTRL+C)

🤖 Models used:

  • Tool: OpenAI Codex
  • Requested: gpt-5.5
  • Model: GPT-5.5 (gpt-5.5)

📎 Failure log uploaded as Gist (21400KB)


Now working session is ended, feel free to review and add any feedback on the solution draft.

@skulidropek

Copy link
Copy Markdown
Member

Исправь весь код

@konard konard marked this pull request as draft June 10, 2026 10:18
@konard

konard commented Jun 10, 2026

Copy link
Copy Markdown
Contributor Author

🤖 AI Work Session Started

Starting automated work session at 2026-06-10T10:18:23.471Z

The PR has been converted to draft mode while work is in progress.

This comment marks the beginning of an AI work session. Please wait for the session to finish, and provide your feedback.

The Rust browser MCP helpers (`browser-connection` /
`docker-git-browser-connection`) run on an allocated pty, so
`hasInteractiveTty` classified each one as a visible `ssh` terminal.
That flooded the container task manager with many identical
`browser-connection --project ... --network container:...` rows
(issue ProverCoderAI#383).

Classify these helper processes as internal `system` tasks so they are
hidden by default (includeDefault=false) and only shown when system
processes are explicitly requested.

Fixes ProverCoderAI#383
@konard konard marked this pull request as ready for review June 10, 2026 10:23
@konard

konard commented Jun 10, 2026

Copy link
Copy Markdown
Contributor Author

Working session summary

The background CI-wait task has completed, confirming all runs on commit 31bcdc61 finished successfully. The work is complete:

  • Fix implemented in packages/api/src/services/container-tasks-core.ts — browser MCP helpers (browser-connection / docker-git-browser-connection) are now classified as internal system tasks instead of visible ssh terminals, so they no longer flood the container task manager.
  • Regression test added and verified (fails without the fix, passes with it).
  • All CI green (Check, Final Build, Snapshot, Checking Dependencies); the only non-passing check is CodeRabbit due to "Insufficient review credits," unrelated to the code.
  • PR #387 description updated and marked ready for review.

This summary was automatically extracted from the AI working session output.

@konard

konard commented Jun 10, 2026

Copy link
Copy Markdown
Contributor Author

🤖 Solution Draft Log

This log file contains the complete execution trace of the AI solution draft process.

💰 Cost: $2.213011

📊 Context and tokens usage:

  • 73.7K / 1M (7%) input tokens, 18.9K / 128K (15%) output tokens

Total: (3.3K new + 60.9K cache writes + 2.7M cache reads) input tokens, 18.9K output tokens, $2.213012 cost

🤖 Models used:

  • Tool: Anthropic Claude Code
  • Requested: opus
  • Model: Claude Opus 4.8 (claude-opus-4-8)

📎 Log file uploaded as Gist (1586KB)


Now working session is ended, feel free to review and add any feedback on the solution draft.

@konard

konard commented Jun 10, 2026

Copy link
Copy Markdown
Contributor Author

🟡 Ready for review

Hive Mind stopped automatic restart because the remaining failed check is an external review quota/credit limit, not a code failure it can fix.

Checks not executed:

  • CodeRabbit — Insufficient review credits

Checks completed successfully:

Action required:

  • Restore the external review credits/rate limit and rerun the review, or decide manually whether this PR can proceed.
  • No new AI session was started for this blocker.

Monitored by hive-mind with --auto-restart-until-mergeable flag.

@konard

konard commented Jun 10, 2026

Copy link
Copy Markdown
Contributor Author

🤖 AI Work Session Completed

Work session ended at 2026-06-10T10:44:06.219Z

The PR will be converted back to ready for review.

This comment marks the end of an AI work session. New comments after this time will be considered as feedback.

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Почему-то запущено много сесий с контейнером браузера

2 participants