From cad351ec00c3f78cfb6e203d87c7309a620e485c Mon Sep 17 00:00:00 2001 From: Craig Jennings Date: Sun, 24 May 2026 16:57:56 -0500 Subject: docs(load-graph): classify domain, integration, and optional modules MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Eighth classification batch: 17 domain/integration/optional modules — ai-config, ai-vterm, browser-config, calendar-sync, calibredb-epub-config, chrono-tools, dirvish-config, dwim-shell-config, erc-config, eshell-config, eww-config, flyspell-and-abbrev, games-config, gloss-config, httpd-config, jumper, latex-config. I annotated each header, added a Batch 8 table to the inventory, and extended the validation allowlist. 82 of 102 modules are now classified. Almost all are eager only by init order and become command/hook/mode-loaded. calendar-sync stays eager when its .local.el is present. One new hidden dependency: calendar-sync guards its C-; g registration with a boundp shim and doesn't require keybindings, so the binding drops standalone. I deferred elfeed-config rather than annotate it. Its header edit triggers byte-compilation, and the existing tests only pass when the module loads as interpreted source — the compiled cj/elfeed-process-entries inlines an elfeed struct accessor the stubs can't intercept, and the batch test environment has no elfeed package to build real structs. It needs its tests rewritten first, recorded in the inventory and a new todo task. Also made the header allowlist scoping test durable: it used games-config (now classified) as its unclassified example; switched to a sentinel name plus a duplicate-entry guard. --- modules/ai-config.el | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'modules/ai-config.el') diff --git a/modules/ai-config.el b/modules/ai-config.el index fad43584..e2a71fed 100644 --- a/modules/ai-config.el +++ b/modules/ai-config.el @@ -2,6 +2,16 @@ ;; author Craig Jennings ;; ;;; Commentary: +;; +;; Layer: 3 (Domain Workflow). +;; Category: D/P. +;; Load shape: eager. +;; Eager reason: registers the cj/ai-keymap (C-; a); GPTel itself should load on +;; command, a Phase 5 deferral candidate. +;; Top-level side effects: defines cj/ai-keymap, registers it under cj/custom-keymap. +;; Runtime requires: keybindings, system-lib. +;; Direct test load: yes (requires keybindings explicitly). +;; ;; Configuration for AI integrations in Emacs, focused on GPTel. ;; ;; Main Features: -- cgit v1.2.3