Preserve inherited reference path origins

This commit is contained in:
2026-10-03 17:58:48 +00:00
parent 01c08ec8e4
commit f4779fede9
4 changed files with 117 additions and 8 deletions

View File

@@ -80,10 +80,12 @@ umask, setgid inheritance, and default ACLs; see [Operations](operations.md#cach
Every nonempty relative configured destination or reference path resolves from
the canonical directory of the file that supplies its surviving declaration.
This includes imported fragments and selected configuration overlays. Built-in
relative destinations use the selected main configuration file's directory;
explicit `--output-dir` and `--debug-dir` values use the invocation working
directory. Absolute values remain unchanged.
This includes imported fragments, selected configuration overlays, and values
copied through inheritance: the copied value keeps its original declaring
file. A child-supplied replacement resolves from the child's declaring file.
Built-in relative destinations use the selected main configuration file's
directory; explicit `--output-dir` and `--debug-dir` values use the invocation
working directory. Absolute values remain unchanged.
The root file can use ConfigKit imports to compose disjoint definitions. Imports
and selected overlays remain under the configuration root; they do not merge or