summaryrefslogtreecommitdiff
path: root/modules/system-defaults.el
diff options
context:
space:
mode:
authorCraig Jennings <c@cjennings.net>2026-05-24 16:13:01 -0500
committerCraig Jennings <c@cjennings.net>2026-05-24 16:13:01 -0500
commit2d83f8f55977dbf69f4f80e490ed0b96aeea4eee (patch)
tree32c5ad0e360e0e15fed1ec83cd967991149b5cc3 /modules/system-defaults.el
parent9a0560e87867dc2a23767f66940ba4fb4d5a5c20 (diff)
downloaddotemacs-2d83f8f55977dbf69f4f80e490ed0b96aeea4eee.tar.gz
dotemacs-2d83f8f55977dbf69f4f80e490ed0b96aeea4eee.zip
docs(load-graph): seed module inventory and annotate foundation headers
I started the init.el load-graph classification with the foundation batch. I added docs/design/module-inventory.org as the living per-module inventory and annotated the seven foundation modules (system-lib, user-constants, host-environment, system-defaults, keyboard-compat, keybindings, config-utilities) with the load-graph header contract: layer, category, load shape, eager reason, top-level side effects, runtime requires, and direct-test-load safety. I changed no load order, so init.el keeps its current eager order. The inventory records one hidden dependency for Phase 2: system-defaults uses host-environment and user-constants symbols at load while declaring them eval-when-compile, so the compiled module cannot load standalone.
Diffstat (limited to 'modules/system-defaults.el')
-rw-r--r--modules/system-defaults.el15
1 files changed, 15 insertions, 0 deletions
diff --git a/modules/system-defaults.el b/modules/system-defaults.el
index d0b9f835..33d93bbc 100644
--- a/modules/system-defaults.el
+++ b/modules/system-defaults.el
@@ -2,6 +2,21 @@
;; author: Craig Jennings <c@cjennings.net>
;;
;;; Commentary:
+;;
+;; Layer: 1 (Foundation).
+;; Category: F/S.
+;; Load shape: eager.
+;; Eager reason: establishes core Emacs behavior (encoding, clipboard,
+;; scrolling, kill/quit defaults) the first interactive session relies on.
+;; Top-level side effects: mutates global defaults (many `setq'), advises
+;; `display-warning', adds a `display-buffer-alist' entry, remaps one global
+;; key.
+;; Runtime requires: autorevert, server, bookmark; host-environment
+;; (`env-bsd-p') and user-constants (`user-home-dir') are read at load but
+;; currently only required via eval-when-compile — Phase 2 to make explicit.
+;; Direct test load: conditional (host-environment and user-constants must load
+;; first; the compiled module cannot resolve them standalone yet).
+;;
;; Loads during init to set sane defaults: UTF-8 everywhere, quiet prompts, synced clipboards,
;; and hands-off async shell buffers. Nothing to call—just launch Emacs and the environment is ready.
;; Native compilation is tuned for performance and its warnings get logged to comp-warnings.log.