phase-2-3-inventory-operations #9

Merged
Luxxy merged 2 commits from phase-2-3-inventory-operations into main 2026-08-02 23:18:40 +00:00
Owner
No description provided.
Images no longer need an operator opt-in step before a customer can pick
them: whatever a connected node currently reports having cached is
immediately selectable. Adds services::live_inventory, an in-memory
registry keyed by node holding each node's most recent image list and
capabilities, updated on every InventoryReport and cleared the instant a
node disconnects so an offline node's images stop being offered instead
of sitting in a table looking selectable.

CreateInstanceRequest.image_id and CatalogueImage.id become
image_fingerprint/fingerprint — there is no catalogue row to reference
any more, so the fingerprint the customer saw is what the platform
resolves against.

Image resolution in plan_provisioning now happens after scheduler
placement rather than before, and is checked against the specific node
that was chosen: the fingerprint must actually be cached there, and its
architecture must be one the node's runtime supports. This closes a real
gap the old design had (a customer could pick an image only node A had
and land on node B) and is also what enforces "don't offer an
architecture the node can't run."

The admin Images page is unaffected and keeps reading from the database
— that sync/pull tooling is a different concern from customer selection.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Refactor code formatting for improved readability in console and scheduler services
Some checks failed
Backend CI / Format, lint and test (pull_request) Failing after 2s
Backend CI / Migrations apply to an empty database (pull_request) Failing after 1s
Security / Advisories, licences and sources (pull_request) Failing after 3s
Security / Frontend dependency audit (pull_request) Failing after 35s
Security / No secrets or placeholder credentials committed (pull_request) Failing after 2s
Frontend CI / Typecheck, lint, test and build (pull_request) Failing after 1m40s
b7fe6670bf
Luxxy merged commit d01b8efd94 into main 2026-08-02 23:18:40 +00:00
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
Luxxy/beegoon!9
No description provided.