Skip to content

Skip redundant init queries by reading the config blob#22

Open
arakashic wants to merge 12 commits into
qmk:mainfrom
arakashic:feature/config-blob-derivation
Open

Skip redundant init queries by reading the config blob#22
arakashic wants to merge 12 commits into
qmk:mainfrom
arakashic:feature/config-blob-derivation

Conversation

@arakashic

@arakashic arakashic commented May 28, 2026

Copy link
Copy Markdown
Contributor

Summary

  • Extend Config with manufacturer, keyboard_name, usb, dynamic_keymap, features (parsed from the QMK config blob the app already fetches).
  • Drop 5 redundant init queries: QmkBoardIdentifiers, QmkBoardManufacturer, QmkProductName, KeymapGetLayerCount, RemappingGetLayerCount — same values come from the blob.
  • Skip the LightingCapabilities query when features.{backlight,rgblight,rgb_matrix,led_matrix} are all false (observed: some boards advertise the Lighting subsystem bit while the build has no lighting features).
  • Gate the Encoder tab on features.encoder_map (the dynamic-remap framework) instead of just encoder hardware presence.

Dependencies

Depends on #21 (Encoder Map), which depends on #19 (Keycode pipeline). Merge order: #19#21 → this.
The PR diff will shrink to its 5 own commits once both bases land.

Test plan

  • cargo build / cargo test / yarn ts-check clean
  • On a board with ENCODER_MAP_ENABLE=yes: Encoder tab shows
  • On a board with encoders but no encoder_map feature: Encoder tab hidden
  • On a board without lighting features: no LightingCapabilities query in logs
  • Board ID / manufacturer / product name still display in Info section

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