[NFR]: Decouple collectors from framework event names (bridge + canonical signals)
Los mantenedores suelen responder en 3 días
@niden ya está trabajando en esto.
Desde el 22/7/2026.
Evaluación
Este issue todavía no se ha evaluado.
Descripción
Summary
Collectors gather data by subscribing to MVC-specific event names, so nothing collects under ADR or any non-MVC stack. Introduce a neutral seam - a canonical debug-bar signal set, a per-framework bridge, and a direct push API - so collectors receive data regardless of the host application's event vocabulary, or the absence of one.
Current coupling
Collectors call subscribe(ManagerInterface $eventsManager) and attach to framework event names:
DatabaseCollector→db:beforeQuery,db:afterQueryViewCollector→view:beforeRenderView,view:afterRenderViewRouteCollector→router:matchedRouteExceptionsCollector→dispatch:beforeExceptionCacheCollector→ cache events
These names are emitted by the MVC stack. ADR fires a different vocabulary (APPLICATION_*, ADR_*, PIPELINE_*), and some hosts have no events manager at all.
Proposed direction (three layers)
- Canonical signal set owned by the bar - a small, stable vocabulary (
query,view.rendered,route.matched,request.received,response.sending). Collectors subscribe only to these. - Per-framework bridge that maps native signals to canonical ones. The MVC bridge listens to
db:afterQuery/view:*/router:matchedRouteand re-emits canonical signals (current behavior, refactored behind the bridge). The ADR bridge listens toPIPELINE_*/APPLICATION_*, or instruments directly where no matching event exists. - Direct push API on collectors (e.g.
record(...)) for hosts with no events manager - the bridge pushes directly.
The events manager becomes an implementation detail of the active bridge, not a hard dependency of the collectors.
Acceptance
- A collector receives data through the canonical signals with no reference to a framework-specific event name.
- The MVC bridge preserves current behavior (as used by
phalcon/vokuro), verified by the existing tests. - A collector can be fed with no events manager present (push API).
- Lenguaje dominante
- PHP
- Estrellas
- 6
- Forks
- 3
- Merge medio
- 1 d 17 h
- PR fusionados (30 d)
- 3
Preparar el entorno
- Incluye un Dockerfile o un archivo de Docker Compose
- Tiene una plantilla de pull request
- Leer la guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de phalcon/debugbar
-
[NFR]: History Panel enhancementsPosiblemente ocupada @niden la tomó hace 11 días. Abiertoenhancement
phalcon/debugbar#32 · 1 asignado ·
Los mantenedores suelen responder en 3 días
-
[NFR]: Collector source adapters for ADR data sources (DB / View / Route)Quizá libre de nuevo @niden la tomó hace 77 días y no hay ningún pull request abierto. Abiertoenhancement
phalcon/debugbar#16 · 1 asignado ·
Los mantenedores suelen responder en 3 días
-
[NFR]: Framework-neutral integration seam: boot and response injection without Mvc\ApplicationQuizá libre de nuevo @niden la tomó hace 77 días y no hay ningún pull request abierto. Abiertoenhancement
phalcon/debugbar#14 · 1 asignado ·
Los mantenedores suelen responder en 3 días
-
[NFR]: Debug bar support for ADR / non-MVC appsQuizá libre de nuevo @niden la tomó hace 77 días y no hay ningún pull request abierto. Abiertoenhancement
phalcon/debugbar#13 · 1 asignado ·
Los mantenedores suelen responder en 3 días
-
[NFR]: Services panel for DebugBarQuizá libre de nuevo @niden la tomó hace 87 días y no hay ningún pull request abierto. Abiertoenhancement
phalcon/debugbar#5 · 1 asignado ·
Los mantenedores suelen responder en 3 días
Todos los issues de phalcon/debugbar
Issues similares
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 69/100
PrestaShop/PrestaShop#43140 ·
Los mantenedores suelen responder en 1 día
-
sync-en
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
Los mantenedores suelen responder en 1 día
-
sync-en
Dificultad 2/5 1-3 horas Aptitud para principiantes 83/100
Los mantenedores suelen responder en 3 días
-
[Bug] Report tables drop a metric's trailing zeros and cap it at two decimalsPosiblemente ocupada @lansow la tomó hoy. AbiertoPotential Bug triaged
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
matomo-org/matomo#25474 ·
Los mantenedores suelen responder en 2 días
-
Dificultad 1/5 Menos de una hora Aptitud para principiantes 90/100
coollabsio/shoutrrr#190 ·