Skip to content

test: add pool concurrency coverage - #92

Closed
YuminosukeSato wants to merge 1 commit into
pr/2-core-dispatchfrom
pr/3-concurrency-tests
Closed

YuminosukeSato wants to merge 1 commit into
pr/2-core-dispatchfrom
pr/3-concurrency-tests

Conversation

@YuminosukeSato

Copy link
Copy Markdown
Owner

Summary

  • Add concurrency tests to lock in serialized dispatch, oversubscription backpressure, and shutdown safety.
  • Adjust cancellation test pool config to match new per-worker cap behavior.

Changes

  • New pool_concurrency_test.go for dispatch/oversubscribe/shutdown scenarios.
  • Update cancellation tests for multi-worker concurrency.
  • Add default test coverage for MaxInFlightPerWorker.

Test plan

  • go test -v -race ./...

@github-actions github-actions Bot added lang/go Go code changes area/pool Worker pool management labels Feb 6, 2026

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: b0fc73768c

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

"github.com/YuminosukeSato/pyproc/internal/protocol"
)

func TestPoolCall_SerializesPerWorker(t *testing.T) {

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

P2 Badge Guard Unix socket concurrency tests with requireUnixSocket

These new tests call startUnixServer directly, which hard-fails on net.Listen("unix", ...) when Unix domain sockets are unavailable (the exact environment that requireUnixSocket is meant to skip in main_test.go). Because none of the new test functions invoke that guard, they can make CI fail in restricted or non-UDS environments instead of being skipped.

Useful? React with 👍 / 👎.

YuminosukeSato added a commit that referenced this pull request Feb 6, 2026
PR #92 used 21 turns and hit the limit. Increasing to 30 to allow
more comprehensive reviews without artificial cutoffs.

Observed usage:
- PR #90: 18 turns (/bin/zsh.51)
- PR #92: 21 turns (/bin/zsh.36)

Expected cost: ~/bin/zsh.40-0.60 per PR
YuminosukeSato added a commit that referenced this pull request Feb 6, 2026
* ci: increase max-turns from 20 to 30

PR #92 used 21 turns and hit the limit. Increasing to 30 to allow
more comprehensive reviews without artificial cutoffs.

Observed usage:
- PR #90: 18 turns (/bin/zsh.51)
- PR #92: 21 turns (/bin/zsh.36)

Expected cost: ~/bin/zsh.40-0.60 per PR

* ci: remove Claude Code workflow

Remove automated Claude Code reviews.
Manual code reviews will be used instead.
@YuminosukeSato

Copy link
Copy Markdown
Owner Author

Will be included in combined stack PR targeting main

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

Labels

area/pool Worker pool management lang/go Go code changes

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant