Story: Clean up application menus

Table of Contents

This page documents a story in Sprint 23. It captures the goal, current status, acceptance criteria, and the tasks that compose it.

Goal

Redesign the application's menu structure from first principles so each top-level menu has a coherent, single purpose instead of today's organic grab-bags:

  • System — app chrome only (Testing/QA runner, Reset System).
  • Operations — everything operational: Jobs (Scheduler), Workflows, Data Transfer (renamed from Data Management; Data Librarian moves here from Data Transfer's current misleading role), Data Catalogue (Data Domains/Subject Areas/Catalogues), Telemetry, Message Queue, Administration (Accounts/Roles/Tenants).
  • Reference Data — cleaned up (current contents audited as part of this story).
  • Data &Quality (new) — DQ metadata entities (Change Reasons, Change Reason Categories, Code Domains, Badge Definitions, Badge Severities now; Data Domains/Subject Areas/Catalogues migrate in once Commission ores.qt.dq — full-stack codegen for the DQ component gets them onto codegen).

Note: Data &Quality's own menu items (and the ores.qt.dq library they live in) are being stood up incrementally by the badge migration work in Migrate badge_definition/badge_severity/code_domain to standard codegen + DQ publishing and the sibling Commission ores.qt.dq story — this story owns the menu structure decision and the non-DQ menu cleanup (System/Operations/Reference Data), not the DQ entity migration itself.

Status

Field Value
State DONE
Parent sprint Sprint 23
Now Nothing.
Waiting on Nothing.
Next Nothing.
Last touched 2026-07-18

Acceptance

Decisions

  • Task breakdown: one task per top-level menu (System, Operations, Reference Data; Data &Quality is owned by the sibling Commission ores.qt.dq story instead, since standing up that menu is inseparable from the DQ entities landing in ores.qt.dq). Each task audits that menu's current contents, decides what moves in/out per this story's target structure, and does the actual =QMenu=/plugin rewiring for everything that ends up there.
  • Final structure (four top-level menus, down from the original seven): File (Connectivity, Current User, System — app chrome and personal actions); Reference Data (cleaned up, done in the first task); Operations (Scheduler, Workflows, Data Transfer, Telemetry, Message Queue, User Accounts — renamed from Administration to avoid colliding with File's Current User); Data &Quality (Badges, Coding Schemes — renamed from Classifications to avoid colliding with Reference Data's own Classifications submenu, Audit Trail, Data Catalogue — moved here rather than Operations since every entity is ores.dq-backed). Data Management and the single-item Trading Codes submenu are both retired.
  • purpose_type (ex-Trading Codes) turned out to classify Portfolios, not Books, despite the similarly-named book_purpose_type — landed in its own new Portfolio Codes submenu rather than Book Codes; a backlog capture tracks the proper backend rename (purpose_typeportfolio_purpose_type) as separate follow-up work.

Tasks

Task State Start End Description
Scaffold story: Clean up application menus DONE 2026-07-16 2026-07-16 Story scaffolding rides this task: documents, sprint wiring, and the scaffold PR. Close it before merging that PR.
Reference Data menu — inventory and taxonomy DONE 2026-07-18 2026-07-18 Audit current Reference Data menu entries, propose a target taxonomy with rationale, sign-off, then implement.
System/Operations/Account menu taxonomy DONE 2026-07-18 2026-07-18 Audit System, Account, and Operations menus (plus Data Management, since Operations' target absorbs Data Transfer/Data Catalogue from it), propose a target taxonomy with rationale for sign-off before implementing.

Out of scope

Emacs 29.3 (Org mode 9.6.15)