fix(ui): PR #131 review round 2 — manifest cleanup, system index helper, stderr help

Addresses 6 mechanical issues from PR review:

- ImplantAppManifest: drop dead display_name and icon_path fields.
  default_key carries a TODO noting its future migration to a keybinds
  manifest (input concern in app manifest is a layering violation,
  tracked explicitly).
- default_mode wire format is now a String ("fullscreen" / "insert") for
  mod-author discovery. ImplantRegistry parses via _MODE_MAP, caches the
  resolved int in _resolved_modes, and exposes get_resolved_mode(app_path).
  main.gd reads the resolved int directly instead of re-parsing.
- Extract client/ui/implant/widgets/system_index.gd (class_name SystemIndex,
  static get_sorted_systems). Removes duplicated star_map_data.json loader +
  sort lambda from atlas_app and economics overview_screen.
- ImplantApp.on_insert_deactivated() default auto-closes only when the app
  is active in INSERT mode. FULLSCREEN apps no longer spuriously close on
  insert state changes.
- tooling/db/sqlite-query and sqlite-exec: --help output goes to stderr
  (exit 0). Keeps stdout reserved for JSON payloads so JSON-parsing
  callers can't get silently corrupted.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-04-19 14:21:03 +02:00
co-authored by Claude Opus 4.6
parent cbcfeccd67
commit 48c8fb7dea
11 changed files with 77 additions and 77 deletions
+2 -1
View File
@@ -181,7 +181,8 @@ func _unhandled_key_input(event: InputEvent) -> void:
for manifest: Variant in ImplantRegistry.get_manifests():
if manifest.get("default_key") == key_event.keycode:
HudGroups.toggle_app(
manifest.get("app_path"), manifest.get("default_mode", HudGroups.Mode.FULLSCREEN)
manifest.get("app_path"),
ImplantRegistry.get_resolved_mode(manifest.get("app_path", ""))
)
return
# [ / ] — cycle economics system selector (app-specific, not generic enough for manifest).