Hermes Agent
|
29f99a576d
|
literate: restructure all 19 org files with per-function blocks and prose
Every function, defclass, defstruct, defgeneric, defmethod, defmacro,
defvar, and defparameter in every org file now has its own #+BEGIN_SRC
block with literate prose above it explaining the design reasoning.
Block counts before → after:
package.org: 1 → 7
container-package.org: 1 → 1 (prose expanded)
dirty.org: 4 → 6
render.org: 10 → 25
theme.org: 6 → 19
box-renderable.org: 9 → 29
scrollbox.org: 8 → 26
tabbar.org: 5 → 10
backend-protocol.org: 8 → 66
modern-backend.org: 17 → 53
detection.org: 4 → 6
layout-engine.org: 9 → 36
framebuffer.org: 8 → 37
markdown-renderer.org:13 → 38
dialog.org: 17 → 23 (merged dual structure)
mouse.org: 4 → 25
select.org: 12 → 30
slot.org: 4 → 12
text-input.org: 11 → 53
Total: ~153 blocks → ~502 blocks
Bugs fixed during restructuring:
- render.org: stray π character typo (backenπd → backend)
- modern-backend.org: sgr-attr missing closing paren + #+END_SRC
- detection.org: invalid #\Esc character reference
- select.org: extra closing paren in select-visible-options
All 13 test suites pass at 100%.
|
2026-05-12 18:55:07 +00:00 |
|
Hermes Agent
|
47094c48e5
|
restructure: move backend/ and layout/ into src/; convert README to org syntax; fix demo package conflict and alien-sap ioctl; update ROADMAP with v0.15.0; remove stale files
- Move backend/ and layout/ directories into src/
- Update all path references in ASD, scripts, docs
- Convert README.org from Markdown syntax to proper Org-mode
- Fix demo.lisp use-package conflict (both backend and input export #:read-event)
- Fix modern-backend TIOCGWINSZ ioctl alien type (alien-sap wrapper)
- Add v0.15.0 section to ROADMAP, update line count to 5760
- Add known gaps (suspend/resume-backend, slot modes) to v1.0.0 checklist
- Remove docs/plans/, debug-layout.lisp, system-index.txt, ci-watchdog.sh
- Move tangle.py to Hermes skill (org-babel-tangle)
- Add .gitignore for fasl files
|
2026-05-12 16:57:19 +00:00 |
|
Hermes Agent
|
5f07c1fd76
|
fix: tangle.py write-once-then-append logic (was always-appending, triplicating files); confirm-dialog option plist comparison; mouse-event button type (or keyword null)
|
2026-05-12 15:51:44 +00:00 |
|
Hermes Agent
|
ca90d6b945
|
chore: org tangle sync — regenerate .lisp from .org sources (zero functional changes, file sizes identical)
|
2026-05-12 15:42:40 +00:00 |
|
Hermes Agent
|
5930e17b57
|
fix: org tangle — fix END_SRC boundaries in mouse.org/slot.org (prose inside code blocks), replace emacs tangle with Python script that handles all blocks
|
2026-05-12 15:22:29 +00:00 |
|
Hermes Agent
|
00db3c61a5
|
fix: dialog draw-border arg, markdown/slot nil guards, +integration test suite
|
2026-05-12 14:30:31 +00:00 |
|
Hermes Agent
|
b38436038b
|
fix: scrollbar position offset, dialog size clamp to terminal dimensions
|
2026-05-12 14:03:12 +00:00 |
|
Hermes
|
448127c696
|
critical fixes: schedule-event, :fiveam deps, syntax-highlighters, draw-rect frame sig
|
2026-05-11 23:03:52 +00:00 |
|
Hermes
|
d63ba69fb7
|
v1.0.0 review fixes: dialog, textarea, scrollbox, demo, ASDF, layout
Fixes from subagent code review (15 findings):
CRITICAL runtime bugs:
- dialog.lisp: backend-write calls -> draw-rect/draw-text (wrong arg count)
- dialog.lisp: removed undefined render-component call
- dialog.lisp: toast render backend-write -> draw-text
MAJOR data loss / silent failures:
- textarea.lisp: undo overflow now drops oldest entry instead of wiping stack
- scrollbox.lisp: :background-element -> :bright-black (theme keyword never resolved)
ASDF completeness:
- modern-tests.lisp wired as component and test-op suite
- layout tests added to test-op suite list
- markdown suite lookup now uses keyword (was looking up wrong string)
- test runner updated to match
API cleanup:
- container-package: removed duplicate render export
- select-package: removed duplicate render export
- markdown.lisp: #\Escape -> #\Esc for consistency
- textarea.lisp: removed duplicate %split-string defn
Demo robustness:
- Added unwind-protect for guaranteed terminal cleanup
- Uses make-modern-backend constructor
- Uses set-raw-mode/restore-terminal-state
Layout:
- normalize-box handles partial padding specs (was returning all zeros)
|
2026-05-11 21:50:53 +00:00 |
|
Hermes
|
811d51a4f2
|
Rename cl-tui -> cl-tty, v0.9.0: Dialog System + Toast
Rename: cl-tty avoids naming collision with Quicklisp's cl-tui (naryl/cl-tui,
a cl-charms-based ncurses library). Our project is pure escape-sequence CL.
v0.9.0 adds:
- Dialog base class: modal overlay with backdrop, centered panel, size
variants (:small/:medium/:large), stack-based management
- Dialog subclasses: alert, confirm, select-dialog, prompt-dialog
- Toast notifications: transient, top-right corner, auto-dismiss,
colored variants (info/success/warning/error)
- 78 tests total, 100% passing
ASDF: read-time package references (+fiveam:+) replaced with
find-symbol so .asd loads without FiveAM pre-loaded
|
2026-05-11 19:55:37 +00:00 |
|