Story: DQ/Refdata service boundary cleanup
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
ores.dq bundle publication currently writes directly to
ores_refdata_* tables, crossing the service boundary. Route it via
refdata.v1.* NATS endpoints instead, so ores.refdata remains the
sole owner of its schema and RLS enforcement stays correct. See "Open
Questions" in
the
three-level provisioning plan.
Status
| Field | Value |
|---|---|
| State | BACKLOG |
| Carried from | Sprint 24 (unfinished at close) |
| Now | Not yet started. |
| Waiting on | Nothing. |
| Next | Break the story into tasks. |
| Last touched | 2026-07-11 |
Acceptance
- No code path in
ores.dq's bundle publication pipeline writes directly toores_refdata_*tables; all such writes go throughrefdata.v1.*NATS endpoints. - Any
refdata.v1.*endpoint DQ needs but doesn't yet have is added toores.refdata. - Bundle publish works end-to-end after the refactor (manual or scripted verification).
ores.dq's CMake no longer depends onores_refdata_*table includes/headers.
Tasks
| Task | State | Start | End | Description |
|---|---|---|---|---|
Planned tasks (not yet scaffolded as task docs):
- Identify all direct
ores_refdata_*writes insideores.dqpublication pipeline. - Add any missing
refdata.v1.*NATS endpoints needed by DQ. - Rewrite DQ publication to use NATS calls instead of direct DB writes.
- Verify bundle publish end-to-end after the refactor.
- Remove cross-schema table includes from
ores.dqCMake deps.
Decisions
Out of scope
- Any refdata boundary violations outside
ores.dq(see IAM/Refdata service boundary cleanup for the IAM side).