These instructions apply to distribution/ and supplement the repository instructions.
src/assembly/ as the sources of package layout. Edit the original configuration or script source, not staged files or archives under target/.all-bin, library-udf-bin, library-pipe-bin, and edge-bin assemblies. with-ainode and with-cpp add their own distributions; keep profile descriptors additive so enabling one does not replace the default descriptor list.edge-bin, and check final archive/base-directory names and SHA-512 checksum includes when adding or renaming an artifact. Preserve existing outputs for every affected profile.src/assembly/common-files.xml and the AINode-specific component where applicable.iotdb-common.sh and windows/iotdb-common.bat. Check includes/excludes against both Unix and Windows paths. Read scripts/AGENTS.md when changing script contents or availability, and AINode instructions for AINode packaging.apache-iotdb-<version>-edge-bin.zip for the combined ConfigNode/DataNode process.iotdb-core/node-commons/src/assembly/resources/conf/edge/; Edge logging configuration comes from distribution/src/assembly/resources/conf-edge/. Keep these separate from standard configuration. Standard node, all-in-one, and integration-test packages must not acquire Edge defaults; preserve edge/** exclusions wherever shared configuration directories are copied recursively.For changes to assembly descriptors, packaged resources, or artifact wiring:
target/ is not evidence of a successful new build.distribution/target/. Verify all expected artifacts for the active profiles, archive roots, configuration, dependency jars, licenses, Unix executable modes, and Windows entries. Confirm unwanted tools and Edge-only defaults are absent from the other packages.