Story: Commission remaining DQ entities
Table of Contents
This page documents a story in Product backlog — inbox, carried unfinished from Sprint 24 at close. It captures the goal, current status, acceptance criteria, and the tasks that compose it.
Goal
Split from Sprint 23's Commission ores.qt.dq — full-stack codegen for the DQ component at close: that story shipped catalog/change_reason/ change_reason_category/data_domain fully commissioned onto standard codegen, plus the lookup_entity→domain_entity architecture unification that unblocked them. This story finishes the remaining DQ-entity-specific scope:
- Commission subject_area (the fifth entity, deliberately deferred because its compound natural key doesn't fit the current templates).
- Migrate ores.qt.data_management's 14 DQ-owned entities' history dialogs onto the generic HistoryDialog, standing up ores.qt.dq as a real plugin.
- Fix the change_reason_code-not-assigned bug still present in ~8 Qt detail dialogs (already fixed in the 4 entities migrated so far).
- Fix the Data Librarian navigation tree regression (no longer shows datasets), which surfaced during last sprint's DQ commissioning work.
General codegen-infrastructure gaps surfaced along the way but not specific to DQ (entity lint, NATS facet consolidation, the remaining 10 non-DQ lookup_entity migrations, and the compound natural-key SQL support this story's subject_area task depends on) are tracked separately in Codegen infrastructure follow-ups from DQ commissioning.
Status
| Field | Value |
|---|---|
| State | BACKLOG |
| Carried from | Sprint 24 (unfinished at close) |
| Now | Plugin-ownership half of task 2 done: all 13 remaining ores.qt.data_management DQ entities (catalog, change_reason, change_reason_category, coding_scheme, coding_scheme_authority_type, data_domain, dataset, dataset_bundle, methodology, nature/origin/treatment_dimension, subject_area) plus the Data Librarian infra moved into ores.qt.dq verbatim; ores.qt.data_management deleted entirely (empty plugin decommissioned, not left as a shell). Their per-entity HistoryDialog classes moved as-is, unchanged – the generic HistoryDialog migration task 2 also names is still open. |
| Waiting on | subject_area's codegen commissioning still blocked on 52FE40FA; its Qt UI already moved with the rest and needs no further plugin work. |
| Next | Generic-HistoryDialog migration (7E714F07), the change_reason_code-not-assigned bug (5DF07DAD), or subject_area's codegen commissioning once unblocked. |
| Last touched | 2026-08-06 |
Acceptance
- subject_area commissioned onto standard codegen, same as the other four DQ entities from the parent story.
- All 14 ores.qt.data_management DQ-owned entities' history dialogs migrated onto the generic HistoryDialog; ores.qt.dq stood up as a real, built Qt library/plugin.
- The change_reason_code-not-assigned bug fixed in every remaining affected dialog.
- Data Librarian's navigation tree shows datasets again.
Tasks
| Task | State | Start | End | Description |
|---|---|---|---|---|
| Commission subject_area onto standard codegen | BLOCKED | Finish the fifth entity split out of 819B050A: author subject_area's codegen .org model with its compound natural key (name, domain_name) properly expressed, regenerate core/repository/service/handler/protocol, retire hand-written equivalents. Blocked on compound natural-key support in lookup_entity/table SQL templates (52FE40FA). | ||
| Migrate ores.qt.data_management's history dialogs to the generic HistoryDialog | BACKLOG | 14 DQ-owned entities live in ores.qt.data_management with hand-written backend glue and legacy per-entity HistoryDialog classes. Author codegen models for the 12 that have none, then migrate all 14 onto the generic HistoryDialog. | ||
| Fix change_reason_code never assigned before save in ~9 Qt detail dialogs | BACKLOG | ~8 remaining dialogs (CodingSchemeAuthorityTypeDetailDialog, CodingSchemeDetailDialog, DataDomainDetailDialog, MethodologyDetailDialog, NatureDimensionDetailDialog, OriginDimensionDetailDialog, SubjectAreaDetailDialog, TreatmentDimensionDetailDialog) still have the promptChangeReason()/change_reason_code-not-assigned bug already fixed in catalog/change_reason/change_reason_category. |
Decisions
- "Fix Data Librarian tree: no longer shows datasets" moved to Make party-scoped bundle provisioning data-driven, not one hand-written phase per bundle — grouped with the other provisioning/bundle-surfacing work rather than the entity commissioning backlog.
Out of scope
- The general codegen-infrastructure gaps (entity lint, NATS facet consolidation, remaining non-DQ lookup_entity migrations) — see Codegen infrastructure follow-ups from DQ commissioning.