ADR 019: Namespaces operations y admin¶
Estado¶
Aceptado — 2026-07 (reescrito)
Contexto¶
La operación diaria (agenda, reservas, clientes, recursos) debe convivir con la parametrización (ventas, facturación, pagos, tarifas) sin mezclar perfiles en un mismo menú operativo.
Decisión¶
operationsyadminson namespaces de composición, no productos pip fijos.- Plugins de dominio eligen
panel_idal registrar recursos, widgets y settings: - Operación diaria →
panel_id="operations"(booking,clients,resources, …) - Parametrización →
panel_id="admin"(sales,billing,payments,pricing, …) - El namespace aparece en
/api/v1/panelssolo cuando hay al menos un plugin habilitado que contribuye a esepanel_id. - Metadata de shell (marca, tema, dashboard home de
operations/admin) la aportan módulos integrados del framework cuando el namespace está activo. merge_panel_infrastructurefusiona widgets de plugins en el dashboard home sin reemplazarlo.- El módulo
configurationen sidebar existe solo si hay settings contribuidos (ADR 029).
flowchart LR
subgraph operations [namespace operations]
booking[booking]
clients[clients]
resources[resources]
end
subgraph adminNs [namespace admin]
sales[sales]
billing[billing]
payments[payments]
pricing[pricing]
end
plugins[Plugins habilitados]
plugins -->|panel_id operations| operations
plugins -->|panel_id admin| adminNs Consecuencias¶
- Activar
bookingen/control/pluginsmaterializaoperationssi es el primer contribuyente a ese namespace. - El menú operativo no lista módulos CRUD de finanzas; puede mostrar widgets KPI de otros dominios en su dashboard.
default_routede cada namespace apunta al dashboard home (/operations,/admin).