AalekhSnapshotTask
Records the current architecture as a committable snapshot.
Run: ./gradlew aalekhSnapshot Output: <projectRoot>/aalekh-snapshot.json - commit it.
The snapshot is what aalekhDiff compares against, which is how an architectural change becomes visible in a pull request. Adding one line to a dependencies { } block can wire two subsystems together, and a normal review shows one line; a snapshot diff shows what it did.
The file is deliberately small and sorted so it diffs line by line, and it holds module paths, dependency pairs, cycle membership, layer assignments, and the structural metrics worth watching - not the whole graph, which would rewrite itself on every unrelated change.
Properties
Serialized layers { } declarations, so the snapshot remembers which layer claimed a module.