Skip to content

test: lock shared-PID routing for Noir devices reporting 0x2255 - #774

Merged
snekxs merged 1 commit into
mainfrom
feat/noir-2255-shared-pid-regression
Oct 12, 2026
Merged

snekxs merged 1 commit into
mainfrom
feat/noir-2255-shared-pid-regression

Conversation

@snekxs

@snekxs snekxs commented Oct 12, 2026 •

Copy link
Copy Markdown
Member

Follow-up to #769 review: the null-PID tests only exercise the name fallback, leaving the real shared-PID path uncovered now that 0x2255 is pinned solely on K-snake X11. These two tests lock the actual behavior (both Noir devices route to the X11 row by PID) so any future matcher or table change shows up here first.

Deliberately not redesigning the matcher: filtering PID candidates by brand would break legitimate cross-brand sharing (Delux M800 Mini shares X11 PIDs; Incott rows share 0x522c) and contradict the existing brand-preference ranking. The X11 row is the protocol-correct match for the shared OEM PID per the table note.

Summary by CodeRabbit

  • Tests
    • Added coverage for identifying Noir Gear M2-NEX and NOIR E1 devices, including cases where product ID takes precedence over product name.

@github-actions github-actions Bot added type: tests PR title category: tests area: devices Device integration and HID support labels Oct 12, 2026
@coderabbitai

coderabbitai Bot commented Oct 12, 2026

Copy link
Copy Markdown
Contributor

Review in Change Stack →

Note

Currently processing new changes in this PR. This may take a few minutes, please wait...

⚙️ Run configuration
  • Configuration used: Repository: OpenMouse-Project/openmouse/.coderabbit.yaml
  • Review profile: CHILL
  • Plan: Advanced
  • Run ID: a250af8a-4201-4c3b-9551-2bf8362eacf2

📥 Commits

Reviewing files that changed from the base of the PR and between 79ba92e and 4ff045f.


📒 Files selected for processing (1)
  • src/supported-devices-crosscheck.test.ts

 ________________________________________________________________
< Paging Dr. CodeRabbit. Dr. CodeRabbit to the code review room. >
 ----------------------------------------------------------------
  \
   \   \
        \ /\
        ( )
      .( o ).
✨ Finishing Touches
📝 Generate docstrings
  • Commit to this branch
  • Create a new PR

🧪 Generate unit tests (beta)
  • Commit to this branch
  • Create a new PR

  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

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

@snekxs

snekxs commented Oct 12, 2026

Copy link
Copy Markdown
Member Author

Context: this answers the CodeRabbit thread on #769 (src/supported-devices-crosscheck.test.ts:106), which could not be replied to directly since that PR already merged.

Verified the claim against current code: with 0x2255 pinned solely on K-snake X11, both Noir devices reporting that PID resolve to the X11 row by PID — these two tests lock that behavior.

The brand-filter redesign is deliberately declined: filtering PID candidates by brand would break legitimate cross-brand sharing (Delux M800 Mini shares X11 PIDs; Incott rows share 0x522c) and contradict the existing brand-preference ranking. The X11 row is the protocol-correct match for the shared OEM PID per the table note.

@cloudflare-workers-and-pages

Copy link
Copy Markdown

Deploying openmouse with  Cloudflare Pages  Cloudflare Pages

Latest commit: 4ff045f
Status: ✅  Deploy successful!
Preview URL: https://0965a667.openmouse.pages.dev
Branch Preview URL: https://feat-noir-2255-shared-pid-re.openmouse.pages.dev

View logs

@snekxs
snekxs merged commit ec5adb4 into main Oct 12, 2026
8 of 9 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area: devices Device integration and HID support type: tests PR title category: tests

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant