[lisp] Port Common Lisp REPL, structural editing, debugging, and templates #10

Open
opened 2026-09-16 04:13:23 +00:00 by nsaspy · 0 comments
Owner

Parent: #1

RAGE contract

Consume only this issue on rage/<issue>-<slug>. Initialize the run log with the canonical RAGE helper and preserve the immutable full start SHA. Load the canonical rage and adadr skills from lost-rob0t/skills before architecture or implementation. Blocked by the control-plane decision in #2.

Queue blockers: #6

Analyze

  • Cover Common Lisp mode, live SBCL interaction, SLY/SLIME-equivalent workflows, debugger, eval overlays, lispy/lispyville, parinfer, smartparens behavior, package navigation, and the user's Common Lisp/StarIntel templates.
  • Use Lem's Common Lisp-native runtime as the primary capability, not an imitation layer.

Gate

  • Define process/image ownership and failure recovery before wiring live evaluation.
  • Never evaluate project code merely by opening a file.

Execute

  • Implement REPL/image selection, evaluation, compilation, debugger navigation, cross-reference, structural editing, and template commands.
  • Port behavior to Common Lisp with tests; do not transliterate Emacs Lisp mechanically.

Evaluate

  • Run isolated SBCL fixture projects through compile/load/eval/error/restart/reconnect flows.
  • Test structural edits against balanced and malformed forms.

Recurse

  • Runtime or debugger protocol contradictions restart ADADR with preserved failing fixtures.

Acceptance

  • The primary Common Lisp workflow is at least as capable as the current daily path.
  • Failures do not poison the editor session.
  • Templates and structural edits are covered by tests.

Durable evidence

  • Update the relevant facts in .prolog/kb/lem_migration.pl and .prolog/kb/issues.pl in the same change.
  • Record focused red/green evidence, the full local gate, packaging checks, and exact-head CI status.
  • Keep failed iterations and architecture contradictions visible.

Stop conditions

  • Opening a buffer evaluates code.
  • Lisp image ownership is ambiguous.
  • A crash loses unsaved editor state.
Parent: #1 ## RAGE contract Consume only this issue on `rage/<issue>-<slug>`. Initialize the run log with the canonical RAGE helper and preserve the immutable full start SHA. Load the canonical `rage` and `adadr` skills from `lost-rob0t/skills` before architecture or implementation. Blocked by the control-plane decision in #2. Queue blockers: #6 ## Analyze - Cover Common Lisp mode, live SBCL interaction, SLY/SLIME-equivalent workflows, debugger, eval overlays, lispy/lispyville, parinfer, smartparens behavior, package navigation, and the user's Common Lisp/StarIntel templates. - Use Lem's Common Lisp-native runtime as the primary capability, not an imitation layer. ## Gate - Define process/image ownership and failure recovery before wiring live evaluation. - Never evaluate project code merely by opening a file. ## Execute - Implement REPL/image selection, evaluation, compilation, debugger navigation, cross-reference, structural editing, and template commands. - Port behavior to Common Lisp with tests; do not transliterate Emacs Lisp mechanically. ## Evaluate - Run isolated SBCL fixture projects through compile/load/eval/error/restart/reconnect flows. - Test structural edits against balanced and malformed forms. ## Recurse - Runtime or debugger protocol contradictions restart ADADR with preserved failing fixtures. ## Acceptance - [ ] The primary Common Lisp workflow is at least as capable as the current daily path. - [ ] Failures do not poison the editor session. - [ ] Templates and structural edits are covered by tests. ## Durable evidence - Update the relevant facts in `.prolog/kb/lem_migration.pl` and `.prolog/kb/issues.pl` in the same change. - Record focused red/green evidence, the full local gate, packaging checks, and exact-head CI status. - Keep failed iterations and architecture contradictions visible. ## Stop conditions - Opening a buffer evaluates code. - Lisp image ownership is ambiguous. - A crash loses unsaved editor state.
Sign in to join this conversation.
No description provided.