Skip to content

PNE-9647: Read ingredient names from process specs - #1066

Open
wjohnald wants to merge 5 commits into
mainfrom
feature/PNE-9647-dynamic-ingredient-names
Open

wjohnald wants to merge 5 commits into
mainfrom
feature/PNE-9647-dynamic-ingredient-names

Conversation

@wjohnald

@wjohnald wjohnald commented Oct 28, 2026 •

Copy link
Copy Markdown
Contributor

Citrine Python PR

Description

Ticket: https://citrine.atlassian.net/browse/PNE-9647

Build ingredient columns from names in the data. Before this change, the table helpers read ProcessTemplate.allowed_names and raised an error if the list was empty. This change is part of the work to remove that field in PNE-9643.

Changes

  • TableConfig.add_all_ingredients finds ingredient names in the specs that use a process template.
  • TableConfig.add_all_ingredients_in_output finds names across all templates in process_templates.
  • Both helpers read the ingredient specs that the team can access. They sort the names and add one group of columns for each name.
  • Each group has columns for the ingredient ID, labels, and amount. For absolute amounts, there is also a column for units.
  • If the list of names is empty, they return a copy with the same variables and columns.
  • Update the docs and examples to show how the helpers find names. Bump the SDK version to 5.1.0.

Release notes

Improvements:

  • Build ingredient columns from the names in your process specs. The helpers find names in your data. You can use them without setting ProcessTemplate.allowed_names.
  • If the list of names is empty, they return a copy of your Table Config with the same variables and columns.

PR Type

  • Breaking change
  • Bug fix
  • New feature
  • Maintenance

Adherence to team decisions

  • I have added tests for 100% coverage.
  • I have written NumPy-style docstrings for every method and class.
  • I have communicated the downstream consequences of the PR to others.
  • I have bumped the version in __version__.py.

wjohnald and others added 4 commits October 28, 2026 08:22
The table helpers build columns from the ingredient names the server
reports in a process template's allowed_names field. Empty discovery
adds no columns instead of raising. Docs explain the ignored legacy
input and data-dependent column discovery.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
The helpers list the process specs under each template and the
ingredient specs of each, then build columns from the distinct names.
They no longer read the template's allowed_names field, which is slated
for removal.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
The docs describe only what exists. The field is slated for removal, so
the pages no longer explain that the platform accepts and ignores it.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
@wjohnald wjohnald changed the title PNE-9647: Take ingredient names from the server PNE-9647: Read ingredient names from process specs Oct 28, 2026
@wjohnald
wjohnald marked this pull request as ready for review October 28, 2026 16:22
@wjohnald
wjohnald requested a review from a team as a code owner October 28, 2026 16:22

This branch has not been deployed

No deployments
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