* 1. Core Prescriptive Invariants
The separation is based on **Provenance (Origin)** and **Transience (State)**.
-** Provenance: Authored vs. Derived
+** Provenance: Authored vs. Made
- **Authored** (The Artist): Trees holding human-written intent. Tools must treat as *read-only*.
-- **Derived** (The Factory): Trees holding machine-generated content. All writes happen here.
+- **Made** (The Factory): Trees holding machine-generated content (output of a process).
** Property Schema (The Semantic Path)
Directory names are properties bestowed upon their contents. The path is a descriptive sentence:
- **Invariant:** Primary Logic Source.
- **Contents:** All human-written source code (C, Python, etc.).
-** =developer/loadable/=
-- **Invariant:** Architecture-Agnostic Entry Points (Shared Capability).
-- **Contents:** Shared scripts, wrappers, and symlinks to authored code (e.g., Python entry points).
+** =developer/made/=
+- **Invariant:** Architecture-Agnostic Output.
+- **Contents:** Shared scripts, wrappers, and symlinks to authored code (e.g., Python entry points) that are the **result of a setup process**.
** =developer/scratchpad/=
- **Invariant:** Transient Workspace.
-- **Contents:** Intermediate files, object files, dependency files. The entire contents are permanently Git-ignored.
+- **Contents:** Intermediate files, object files, dependency files.
+
+** =developer/scratchpad/made/=
+- **Invariant:** Machine-Made Binaries (Intermediate).
+- **Contents:** Compiled binaries and libraries derived by the build system. The contents of =scratchpad/= are permanently Git-ignored.
* 3. Release Structure (The Central Working Point)
The =$REPO_HOME/release= directory holds candidates for testing and promotion.
-** =release/loadable/=
-- **Invariant:** Shared, Agnostic Entry Points.
+** =release/made_tracked/=
+- **Invariant:** Shared, Agnostic Output.
- **Contents:** Architecture-agnostic final release candidates (TRACKED).
-** =release/local_build/=
-- **Invariant:** Local Action Required.
+** =release/made_untracked/=
+- **Invariant:** Local Action Required / Machine-Specific Output.
- **Rule:** This directory is empty but **TRACKED** (by a committed =.gitignore=) to signal that a **local build must be performed** post-clone to populate it with executables.
- **Contents:** Architecture-specific binaries (IGNORED).
-
-