Skip to content

chore: improve docs, tooling, tests, and dev environment#9

Merged
min0625 merged 1 commit into
mainfrom
chore/improve-docs-and-tooling
Apr 21, 2026
Merged

chore: improve docs, tooling, tests, and dev environment#9
min0625 merged 1 commit into
mainfrom
chore/improve-docs-and-tooling

Conversation

@min0625

@min0625 min0625 commented Apr 21, 2026

Copy link
Copy Markdown
Owner

Summary

This PR improves documentation, developer tooling, tests, and dev environment setup across the repository.

Changes

Documentation

  • Add GoDoc comments to all exported methods (Go, TryGo, Wait, SetLimit) explaining panic recovery behaviour
  • Add inline comments in Wait() explaining the panicValue channel logic
  • Update README.md with usage examples
  • Add x/errgroup/README.md
  • Add AGENTS.md with development conventions for AI coding agents

Tooling

  • Add mise.toml for pinned tool versions (Go 1.24.x, golangci-lint 2.x)
  • Simplify Makefile by removing asdf/install dependencies
  • Remove deprecated .tool-versions

Dev Environment

  • Add .devcontainer/ for reproducible dev container setup
  • Add .vscode/ editor settings

CI

  • Add .github/workflows/pr-check.yml CI workflow
  • Remove deprecated .github/workflows/go.yml

Tests

  • Expand errgroup_test.go with additional test cases (Test_Group_TryGo, Test_Group_TryGo_Panic)
  • Expand x/errgroup/errgroup_test.go with more test cases (Test_WithContext_ZeroValue, Test_Group_TryGo_ContextPropagation, Test_Group_TryGo_Panic)

Verification

All tests pass with the race detector enabled and no lint issues:

make check  # lint + test -race -failfast ./...

Copilot AI review requested due to automatic review settings April 21, 2026 08:43

Copilot AI 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.

Pull request overview

This PR updates the repository’s developer experience and documentation around the panic-recovering errgroup implementations (root and x/errgroup), while also modernizing tooling (mise), CI, and expanding test coverage for TryGo and panic behavior.

Changes:

  • Document panic recovery and zero-value behavior across packages (GoDoc + READMEs + AGENTS.md).
  • Introduce mise-pinned tooling/devcontainer/VSCode setup and update CI workflow to run make check.
  • Expand tests for TryGo (limit behavior, context propagation in x/errgroup, panic paths).

Reviewed changes

Copilot reviewed 18 out of 19 changed files in this pull request and generated 6 comments.

Show a summary per file
File Description
errgroup.go Adds/clarifies exported doc comments for panic propagation and Wait implementation notes.
panic.go Documents Recovered and Stack fields for panic wrapper types.
errgroup_test.go Fixes an assertion signature and adds TryGo + panic tests.
README.md Adds package table + panic behavior docs + improves example error handling.
go.mod Bumps Go directive and updates golang.org/x/sync.
go.sum Updates checksums for the x/sync bump.
mise.toml Pins tool versions (Go, golangci-lint).
Makefile Simplifies targets and removes asdf/install dependencies from common targets.
AGENTS.md Adds repo conventions for AI agents (tooling/testing/panic behavior).
x/errgroup/errgroup.go Enhances package/type/method docs to clarify context + panic behavior.
x/errgroup/errgroup_test.go Fixes assertion signatures and adds TryGo tests (including context propagation + panic).
x/errgroup/README.md Adds README for the context-aware variant with examples and behavioral notes.
.github/workflows/pr-check.yml Adds PR workflow to run make check.
.github/workflows/go.yml Removes deprecated workflow.
.tool-versions Removes deprecated asdf tool version pinning.
.devcontainer/devcontainer.json Adds devcontainer configuration using mise feature.
.devcontainer/post_create.sh Installs tools and configures shell initialization for mise.
.vscode/settings.json Adds Go + golangci-lint formatting/lint settings.
.vscode/launch.json Adds debug configurations for tests and workspace debugging.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread .devcontainer/post_create.sh Outdated
Comment thread .devcontainer/post_create.sh
Comment thread go.mod
Comment thread errgroup_test.go
Comment thread x/errgroup/errgroup_test.go
Comment thread .devcontainer/post_create.sh
@min0625 min0625 force-pushed the chore/improve-docs-and-tooling branch from a6e9d54 to 31f9d8b Compare April 21, 2026 08:54
- Add GoDoc comments to all exported methods explaining panic behaviour
- Add AGENTS.md with development conventions for AI coding agents
- Add mise.toml for pinned tool versions (Go 1.24, golangci-lint 2.x)
- Add .devcontainer/ for reproducible dev container setup
- Add .github/workflows/pr-check.yml CI workflow
- Simplify Makefile by removing asdf/install dependencies
- Add x/errgroup/README.md documentation
- Expand errgroup_test.go and x/errgroup/errgroup_test.go with more test cases
- Improve inline comments in Wait() and related methods
- Update README.md with usage examples
- Remove deprecated .tool-versions and .github/workflows/go.yml
@min0625 min0625 force-pushed the chore/improve-docs-and-tooling branch from 31f9d8b to 2338d87 Compare April 21, 2026 09:00
@min0625 min0625 merged commit 3f0b7b4 into main Apr 21, 2026
1 check passed
@min0625 min0625 deleted the chore/improve-docs-and-tooling branch April 21, 2026 09:05
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