Skip to content

Store the UUID of the Nexus creator in Blueprints#10428

Open
piffio wants to merge 2 commits intooxidecomputer:mainfrom
piffio:fix/10396-blueprint-creator-nexus-uuid
Open

Store the UUID of the Nexus creator in Blueprints#10428
piffio wants to merge 2 commits intooxidecomputer:mainfrom
piffio:fix/10396-blueprint-creator-nexus-uuid

Conversation

@piffio
Copy link
Copy Markdown

@piffio piffio commented May 9, 2026

This is a very simple PR that replaces the hardcoded "blueprint_planner" hardcoded string with the UUID of the Nexus instance that created it as reported in #10396.

I picked it up as it's labelled as good first issue, so I assumed it was OK to work on it as it's indeed quite simple.
Please let me know if I should proceed differently in the future.

The PR contains a unit tests that ensures that the value stored is indeed the Nexus UUID.

I am not sure if it's best to call the new structure element creator or planner for consistency, so any feedback in this direction would be helpful.

@davepacheco, tagging you as you originally reported the issue.

Fixes #10396

piffio added 2 commits May 9, 2026 10:10
We want blueprint.creator to store the Nexus UUID, but currently it
stores a hardcoded string "blueprint_creator".

This test ensures that the desired behaviour is in place.
This commit ensures that the Nexus UUID is stored in BlueprintPlanner,
as reported in oxidecomputer#10396.

* Add a creator element to the BlueprintPlanner structure
* Store the UUID string for the Nexus creator
* Update tests to ensure they either use the available nexus_id or a
  mock one when relevant
Copy link
Copy Markdown
Contributor

@sunshowers sunshowers left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for picking this up!

rx_blueprint,
tx_planned,
blueprint_limit: DEFAULT_BLUEPRINT_LIMIT,
creator: nexus_id.to_string(),
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think we'll want something like "nexus <nexus_id>" here.

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Got it, I'lll work on an updated version shortly

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sorry, I started working on it before making sure I got this right.

You're suggesting that the string assigned to the creator struct member be the actual string "nexus <nexus_id>", right, e.g. "nexus 123e4567-e89b-12d3-a456-426614174000".

Asking, as I'm not sure to understand the value of prepending with the "nexus" string, but I might be missing something rather obvious, such as the possibility that non-nexus processes/instances could generate a blueprint.

Should we keep the member name creator as it is today, or is it better to call it planner or nexus (this one probably not a good idea if it's confirmed that it could be something other than a nexus creating it)?

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.

blueprint "creator" is supposed to contain Nexus uuid, but doesn't

2 participants