0xMiden / 0xMiden/miden-debug

Track call frames using VM debug metadata

Abierto
#109 1 comentario 0 reacciones 1 asignado Reclamado por @djolertrk Ver en GitHub
Lenguaje dominante
Rust
Estrellas
1
Forks
8
Merge medio
2 d 13 h
PR fusionados (30 d)
16

Descripción

The debugger currently relies on runtime events to detect function entry and exit. This is fragile because events may be missing or delayed, and they add unnecessary work to normal execution.

We should extend Miden VM package debug information with compact source call-frame ranges. The debugger can inspect the current execution context and reconstruct the active physical call stack directly from those ranges. Expired ranges naturally remove frames, while newly active ranges add them.

This should work for nested calls, recursion, linked packages, and instruction padding without adding overhead to the Processor’s normal execution path. Inline frames remain separate and continue using inline-call metadata.

The result should be consistent backtraces in both the REPL/TUI and DAP without requiring compiler-emitted frame start/end events.

Guía de contribución

Abrir la guía de contribución

Línea de trabajo

El issue describe la extensión de la información de depuración del paquete Miden VM. Comience examinando las estructuras de metadatos de depuración existentes en la base de código, probablemente en el crate `miden-debug`. Busque cómo se manejan actualmente los eventos en tiempo de ejecución y dónde se rastrean los marcos de llamada. El objetivo es agregar rangos de marcos de llamada de origen a los metadatos y modificar el depurador para reconstruir la pila a partir de estos rangos. Las pruebas involucrarán llamadas anidadas, recursión y paquetes vinculados para garantizar que los seguimientos inversos sean consistentes en el REPL/TUI y DAP sin eventos de marco.

Escrito por el modelo de indexación a partir del texto del issue.

Evaluación

Stack tecnológico
rust
Área
devtools
Tipo de issue
Nueva funcionalidad
Dificultad
4/5
Tiempo estimado
3-5 días
Estado de actividad
Tranquilo
Claridad
Bastante claro
Aptitud para principiantes
45/100

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.