aboutsummaryrefslogtreecommitdiff
path: root/modules/user-constants.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
commit4959e879a434df37f3cb7ab18b2410300ddc5745 (patch)
tree6e2f888cad1aa243fa256640feb99f7f4a78494f /modules/user-constants.el
parent6a2f70be456adab6852260576bff323cd6b32d13 (diff)
downloaddotemacs-4959e879a434df37f3cb7ab18b2410300ddc5745.tar.gz
dotemacs-4959e879a434df37f3cb7ab18b2410300ddc5745.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/user-constants.el')
-rw-r--r--modules/user-constants.el12
1 files changed, 11 insertions, 1 deletions
diff --git a/modules/user-constants.el b/modules/user-constants.el
index 2cc4a50cf..293bc8061 100644
--- a/modules/user-constants.el
+++ b/modules/user-constants.el
@@ -1,7 +1,17 @@
;;; user-constants.el --- User Constants -*- lexical-binding: t; coding: utf-8; -*-
;; author: Craig Jennings <c@cjennings.net>
;;; Commentary:
-
+;;
+;; Layer: 1 (Foundation).
+;; Category: F.
+;; Load shape: eager.
+;; Eager reason: defines the path constants referenced across the config and
+;; creates the required directories/files before other modules load.
+;; Top-level side effects: file writes — creates configured directories and
+;; stub files via `cj/initialize-user-directories-and-files' at load.
+;; Runtime requires: none.
+;; Direct test load: conditional (touches the filesystem on load).
+;;
;; This module defines important file and directory paths used throughout the
;; Emacs configuration, and ensures they exist during startup.
;;