Skip to content

Commit ec76b9f

Browse files
docs: clarify artifact sourcePath provenance
Assisted-by: GitHub Copilot (model: GPT-5.6, autonomous) Co-authored-by: nicolehaugen <10600161+nicolehaugen@users.noreply.github.com>
1 parent 0ba4800 commit ec76b9f

2 files changed

Lines changed: 9 additions & 2 deletions

File tree

CHANGELOG.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44

55
## Unreleased
66

7-
### Changed
7+
### Added
88

99
- feat(artifacts): include `sourcePath` on artifact stack layers for installed preset and extension contributions.
1010

src/specify_cli/artifacts/__init__.py

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -425,7 +425,14 @@ def _derive_source_path(
425425
kind: ArtifactKind,
426426
name: str,
427427
) -> str | None:
428-
"""Return the repo-relative concrete file backing a preset/extension layer."""
428+
"""Return the repo-relative concrete file backing a preset/extension layer.
429+
430+
``layer`` is one raw ``PresetResolver.collect_all_layers()`` row. Preset
431+
and extension rows carry explicit on-disk provenance keys
432+
(``preset_id``/``pack_dir`` or ``extension_id``/``extension_dir``)
433+
alongside ``lookupId``; core and project rows intentionally do not produce
434+
a source path here.
435+
"""
429436
lookup_id = layer.get("lookupId", "")
430437
layer_kind = layer_kind_from_lookup_id(lookup_id)
431438
if layer_kind == "preset":

0 commit comments

Comments
 (0)