4th bug fixed ! Preserve node annotations from cache

PR : #7609
Fixes #7580

When storing a node from cache, preserve label and description values already set on the new node instead of overwriting them with the cache source’s annotations. Empty labels/descriptions still inherit the cache source values.

Tested with:

  • uv run --no-dev --with pytest --with pytest-benchmark --with pytest-cov --with pytest-instafail --with pytest-timeout --with sphinx pytest tests/orm/nodes/test_node.py -k store_from_cache
  • uv tool run ruff format --check src/aiida/orm/nodes/node.py tests/orm/nodes/test_node.py
  • uv tool run ruff check --ignore PLC0415 src/aiida/orm/nodes/node.py tests/orm/nodes/test_node.py
  • git diff --check