Skip to content

Promote overflow tasks and add side conversation - #2

Merged
Mattie merged 3 commits into
mainfrom
feat/overflow-side-conversation
Jul 29, 2026
Merged

Promote overflow tasks and add side conversation#2
Mattie merged 3 commits into
mainfrom
feat/overflow-side-conversation

Conversation

@Mattie

@Mattie Mattie commented Jul 29, 2026

Copy link
Copy Markdown
Owner

Summary

  • keep newly empty primary task buttons dark for five seconds, then promote the earliest M1 overflow task and compact the remaining overflow queue
  • reserve the primary opening during the pause so a newer task cannot jump the queue
  • fill primary holes and compact overflow assignments when saved state is restored
  • add a side-conversation Joydex action mapped to Codex's validated openSideChat command
  • update the documented Codex compatibility versions used to verify that command

Why

The overflow promotion and Side Conversation support were working-tree changes that were intentionally kept out of the wireless touchscreen PR. This PR preserves them as focused host changes after that PR was merged.

Validation

  • Release tests: 390/390 passed (361 Joydex tests and 29 wireless-panel tests)
  • focused task-pool tests: 20/20 passed
  • git diff --check: passed
  • NuGet vulnerability audit: no known vulnerable packages
  • credential, private-network, personal-path, COM-port, and MAC-address scan: clean
  • independent code review: no material blockers

Manual validation still pending

  • publish the branch as the normal local Joydex runtime
  • acknowledge a completed primary task with an occupied overflow slot
  • confirm the primary button stays dark for roughly five seconds, then receives the earliest overflow task
  • confirm Side Conversation still opens from the configured controls

Notes

Backfill reservations are intentionally transient: after a restart, restored state fills primary holes immediately and compacts the remaining overflow queue. openSideChat has no built-in fallback keystroke and therefore relies on the validated local Codex binding; unresolved bindings continue to fail closed through existing diagnostics.

The separate tools/Joydex.AgentActivity.Prototype work is excluded from this branch and PR.

@Mattie
Mattie marked this pull request as ready for review July 29, 2026 22:11
@Mattie
Mattie requested a review from Copilot July 29, 2026 22:11

@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: e512070c86

ℹ️ 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".

Comment thread src/Joydex.Core/TaskAlerts/TaskAlertPool.cs

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 enhances Joydex’s task-alert slot management by introducing delayed backfill promotion from overflow into newly vacated primary slots (with queue compaction), and adds a new “side conversation” action wired to Codex’s openSideChat command, along with updated Codex compatibility documentation.

Changes:

  • Added a 5-second backfill delay that reserves vacated primary slots, then promotes the earliest overflow task and compacts the overflow queue.
  • Ensured restored task-alert state fills primary holes immediately and compacts remaining overflow assignments.
  • Added side-conversation / CodexAction.SideConversation mapped to the openSideChat Codex command, and updated compatibility versions/documentation.

Reviewed changes

Copilot reviewed 10 out of 10 changed files in this pull request and generated no comments.

Show a summary per file
File Description
tests/Joydex.Tests/TaskAlertPoolTests.cs Adds coverage for delayed overflow promotion, reservation behavior, and restore compaction.
tests/Joydex.Tests/CodexActionExecutorTests.cs Extends action-to-command mapping expectations to include SideConversation.
src/Joydex.Windows/TaskAlerts/TaskAlertCoordinator.cs Passes an explicit acknowledgement timestamp into the pool for backfill scheduling.
src/Joydex.Windows/Actions/CodexCommandCatalog.cs Adds openSideChat command descriptor for the new SideConversation action.
src/Joydex.Core/TaskAlerts/TaskAlertPool.cs Implements backfill reservations, delayed promotion, and overflow compaction logic.
src/Joydex.Core/Mapping/CodexAction.cs Adds SideConversation enum value and parses side-conversation binding ID.
src/Joydex.App/ButtonMapForm.cs Adds UI label for the side-conversation action.
docs/LED_STATUS.md Updates user-facing behavior documentation to reflect primary/overflow behavior and delayed promotion.
CHANGELOG.md Records the new overflow promotion behavior.
AGENTS.md Updates the documented Codex compatibility validation date and version/build identifiers.

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

@Mattie
Mattie merged commit 50ae37f into main Jul 29, 2026
2 checks passed
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