Skip to content

feat: 03 event system and plugin architecture#468

Merged
thalesraymond merged 6 commits into
mainfrom
feat/03-event-system-and-plugin-architecture
Jun 15, 2026
Merged

feat: 03 event system and plugin architecture#468
thalesraymond merged 6 commits into
mainfrom
feat/03-event-system-and-plugin-architecture

Conversation

@github-actions

Copy link
Copy Markdown
Contributor

Automated PR created from branch feat/03-event-system-and-plugin-architecture.

@codecov

codecov Bot commented Jun 14, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.

📢 Thoughts on this report? Let us know!

@github-actions github-actions Bot left a comment

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

🤖 Jules Review

This PR successfully introduces an asynchronous event dispatcher and plugin architecture. However, there are a few important concurrency issues to address: a potential data race if plugins are registered dynamically, a risk of panics on shutdown if late events are dispatched, and a redundant select statement in the Dispatch method.


Session: 8523969336520584104

Comment thread go/internal/runner/dispatcher.go
Comment thread go/internal/runner/dispatcher.go Outdated
Comment thread go/internal/runner/dispatcher.go Outdated

@github-actions github-actions Bot left a comment

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

🤖 Jules Review

This diff adds go/coverage.html to .gitignore and adds minor test coverage for double shutdown and dispatch after shutdown in dispatcher_test.go.


Session: 12880350892298517893

@github-actions github-actions Bot left a comment

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

🤖 Jules Review

This PR safely coordinates the closing of eventCh during shutdown by introducing an activeSends WaitGroup, preventing 'send on closed channel' panics from concurrent dispatches.


Session: 7279296310250051576

@thalesraymond thalesraymond self-assigned this Jun 14, 2026
@sonarqubecloud

Copy link
Copy Markdown

@github-actions github-actions Bot left a comment

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

🤖 Jules Review

This PR adds a single newline at the end of the README.md file. No significant code changes were found.


Session: 15998588305470389761

@thalesraymond thalesraymond merged commit 44ac0aa into main Jun 15, 2026
10 checks passed
@thalesraymond thalesraymond deleted the feat/03-event-system-and-plugin-architecture branch June 15, 2026 00:24
@github-actions github-actions Bot mentioned this pull request Jun 14, 2026
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.

1 participant