Skip to content

fix(automated-curation): ISSUE-83 skipClassifiedElements empty-string bug - #336

Merged
dwolfson merged 1 commit into
odpi:mainfrom
dwolfson:fix/issue-83-tech-type-templates-empty-list
Sep 2, 2026
Merged

fix(automated-curation): ISSUE-83 skipClassifiedElements empty-string bug#336
dwolfson merged 1 commit into
odpi:mainfrom
dwolfson:fix/issue-83-tech-type-templates-empty-list

Conversation

@dwolfson

@dwolfson dwolfson commented Sep 2, 2026

Copy link
Copy Markdown
Member

Summary

get_technology_type_elements(get_templates=True) built skipClassifiedElements as [skip_templates] where skip_templates was "" when get_templates=True — sending a one-element list containing an empty string, not an empty list. Egeria correctly rejects the empty classification name (OMAG-COMMON-400-018 "The type name ... is not recognized"), so every call with get_templates=True fails outright.

Found via a user report: a known live RelationalDatabase asset didn't appear browsing Technology Types → Postgres Relational Databases in egeria-workspaces' Tech Catalog, even though it was directly retrievable by GUID and correctly tagged (deployedImplementationType: "PostgreSQL Relational Database"). The failure is masked downstream — egeria-workspaces' tech_catalog_handler.py calls this with get_templates=True unconditionally and treats any "400" in the error message as "no elements found," so the whole listing silently renders empty instead of erroring.

Fix: skip_classified_elements = [] if get_templates else ["Template"]. Also corrected the method's docstring sample body, which showed the same [""] value as if it were correct usage.

Tracked as egeria-python ISSUE-83 in PYEGERIA_ISSUES.md.

Testing

Live-verified end-to-end, not just unit-tested: live-patched into quickstart-pyegeria-web's installed pyegeria (docker cp + restart, diff-confirmed), then curled the actual production route — it now returns the previously-missing asset correctly (15 items with templates included vs. 14 without, consistent).

🤖 Generated with Claude Code

… bug

get_technology_type_elements(get_templates=True) built
skipClassifiedElements as [skip_templates] where skip_templates was ""
when get_templates=True -- sending a one-element list containing an
empty string, not an empty list. Egeria correctly rejects the empty
classification name (OMAG-COMMON-400-018 "The type name  ... is not
recognized"), so every call with get_templates=True fails outright.

Found via a user report: a known live RelationalDatabase asset didn't
appear browsing Technology Types -> Postgres Relational Databases in
egeria-workspaces' Tech Catalog, even though it was directly
retrievable by GUID and correctly tagged
(deployedImplementationType: "PostgreSQL Relational Database"). The
failure is masked downstream -- egeria-workspaces' tech_catalog_handler.py
calls this with get_templates=True unconditionally and treats any "400"
in the error message as "no elements found," so the whole listing
silently renders empty instead of erroring.

Fix: skip_classified_elements = [] if get_templates else ["Template"].
Also corrected the method's docstring sample body, which showed the
same [""] value as if it were correct usage.

Live-verified end-to-end, not just unit-tested: live-patched into
quickstart-pyegeria-web's installed pyegeria (docker cp + restart,
diff-confirmed), then curled the actual production route -- it now
returns the previously-missing asset correctly (15 items with
templates included vs. 14 without, consistent).

Signed-off-by: Dan Wolfson <dan.wolfson@pdr-associates.com>
@dwolfson

dwolfson commented Sep 2, 2026

Copy link
Copy Markdown
Member Author

Superseded — cherry-picked this fix directly onto odpi/egeria-python@main (validated against the .http ground truth for skipClassifiedElements, confirmed no other file has the same [""] bug pattern) along with the pending 6.1.8 version bump: dwolfson/egeria-python@b923123c. Thanks for catching and fixing this!

@dwolfson dwolfson closed this Sep 2, 2026
dwolfson added a commit to dwolfson/egeria-python that referenced this pull request Sep 2, 2026
…#336 superseded

Signed-off-by: Dan Wolfson <dan.wolfson@pdr-associates.com>
@dwolfson

dwolfson commented Sep 2, 2026

Copy link
Copy Markdown
Member Author

Correction — I closed this in error saying it was superseded by a merge to odpi/egeria-python@main. That was wrong: I had actually only pushed the cherry-picked fix to dwolfson/egeria-python@main (a personal fork), not upstream — confirmed via git merge-base --is-ancestor d52f394e upstream/main (not an ancestor). Reopening this PR as the real path to land ISSUE-83 on the canonical repo. Apologies for the noise.

@dwolfson dwolfson reopened this Sep 2, 2026
@dwolfson
dwolfson merged commit 87bd63b into odpi:main Sep 2, 2026
4 checks passed
@dwolfson
dwolfson deleted the fix/issue-83-tech-type-templates-empty-list branch September 2, 2026 20:32
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant