feat(shuma): ghosting predictivo en el prompt

shuma-line: ghost_suggestion(line, corpus) — el resto de la línea que
el shell predice, a partir de un corpus priorizado.
shuma-infer: predict_next(recent, patterns) — si los últimos comandos
coinciden con el prefijo de un patrón, devuelve los pasos que faltan.

shuma-shell: mientras se escribe, el prompt pinta en gris tenue la
continuación predicha — historial reciente o, con prioridad, la
secuencia que el motor de inferencia anticipa (cd a un proyecto →
fantasma «git pull && cargo build»). La flecha → al final de la
línea, o Ctrl+Space, aceptan el fantasma.

13 tests shuma-infer, 37 shuma-line.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
sergio
2026-05-20 19:30:57 +00:00
parent 37ea535cb7
commit be99ac3bbb
4 changed files with 206 additions and 13 deletions
@@ -23,6 +23,7 @@
pub mod complete;
pub mod dialect;
pub mod editor;
pub mod ghost;
pub mod lexer;
pub mod pipeline;
pub mod token;
@@ -30,6 +31,7 @@ pub mod token;
pub use complete::{complete, Completion, CompletionKind, CompletionSource, StaticSource};
pub use dialect::Dialect;
pub use editor::LineState;
pub use ghost::ghost_suggestion;
pub use lexer::tokenize;
pub use pipeline::{split_pipeline, Pipeline, Stage};
pub use token::{Token, TokenKind};