Skip to content

Bundle rename alignment: dotted names, generic/ tier, proxmox decom#113

Open
pparage wants to merge 5 commits into
devfrom
feature/bundle-rename-alignment
Open

Bundle rename alignment: dotted names, generic/ tier, proxmox decom#113
pparage wants to merge 5 commits into
devfrom
feature/bundle-rename-alignment

Conversation

@pparage

@pparage pparage commented Jul 16, 2026

Copy link
Copy Markdown
Member

Aligns backend-api with Ben's bundle naming grammar rename (range42-playbooks #133 dotted <tier>/<subject>.<verb>.<object>, drops core/; #136 per-bundle bundle_parameters.json).

Commits

  • c881612 allow dotted bundle names in playbook validation (unified regex, permits .) — non-breaking, mergeable standalone
  • 001fc54 repoint ubuntu install/configure routes at generic/ tier bundles (+ fix docker-compose→docker copy-paste bug)
  • e4dd555 remove 24 retired proxmox default-VM bundle routes + Pattern C helpers/validators (golden 80→56)
  • e335626 remove v0 mass VM lifecycle routes reusing decom'd bundles (golden 56→50; v1 does per-VM lifecycle directly)
  • 511feae remove dead proxmox default-VM bundle schemas + backward-compat aliases + their tests

Tests

393 passed, 1 failed (test_expand_replication_vectors — pre-existing on this branch, unrelated).

⚠️ MERGE GATE

Do not merge until range42-playbooks #133 is deployed to the playbooks dir. Commit 001fc54 resolves ubuntu bundle endpoints to generic/* paths that do not exist until #133 lands — merging early makes those endpoints 500. As of 2026-07-16, #133 is not yet on the playbooks remote and bundles/decom/ does not exist.

No UI caller for the ubuntu bundles today, so blast radius is direct API calls only — but still a latent break until #133.

pparage added 5 commits July 16, 2026 16:59
… playbook validation

Centralize the four duplicated name-validation regexes into a single
_PLAYBOOK_NAME_REGEX and widen the character class to permit dots inside a
segment, so the new bundle naming grammar (range42-playbooks#133), e.g.
generic/software.install.docker, passes format validation. A '.'/'..' segment
is rejected explicitly; real traversal stays closed by the existing
is_relative_to guard in _resolve_file.

Non-breaking: existing hyphen/slash names still match.
…tier bundles

Align the resolver bundle paths with the range42-playbooks#133 rename:

  core/linux/ubuntu/install/docker         -> generic/software.install.docker
  core/linux/ubuntu/install/docker-compose -> generic/software.install.docker_compose
  core/linux/ubuntu/install/basic-packages -> generic/software.install.basic_packages
  core/linux/ubuntu/install/dot-files      -> generic/software.install.dotfiles
  core/linux/ubuntu/configure/add-user     -> generic/credentials.create.user

Also fixes a copy-paste bug where the docker-compose route resolved to the
docker bundle. HTTP route paths are left unchanged (API surface).

Gated: these resolve at runtime only once range42-playbooks#133 is deployed to
the playbooks dir.
Delete the 24 create/start/stop/pause/resume/delete/snapshot routes for the
fixed admin/vuln/student VM sets, plus their Pattern C helpers and _check_*
validators. The underlying bundles are retired to decom/ in
range42-playbooks#133 and had no live caller (the deployer-UI composables that
imported them were never wired to a trigger; the v1 deployments pipeline
supersedes the fixed-topology model).

Prunes the 24 entries from the routes golden manifest and drops the now-empty
validator test module.
The /v0/admin/proxmox/vms/vm_ids/{stop,stop_force,start,pause,resume,delete}
routes drove mass start/stop/delete through the decom'd
start-stop-pause-resume-vms-vuln / delete-vms-vuln bundles (range42-playbooks#133).
They have no UI caller and v1 already exposes per-VM lifecycle directly
(POST /v1/proxmox/hosts/{host}/vms/{vmid}/status/{action}, DELETE .../vms/{vmid}),
so no live backend code depends on decom/ anymore.

Removes the vm_ids_router (helper + 6 routes), unwires it in routes/__init__,
drops the now-unused mass schema imports, and prunes the 6 routes from the
golden manifest. Confirmed with Ben.

Tests green (pre-existing test_expand_replication failure unrelated).
The 24 proxmox DefaultVms bundle routes were removed in e4dd555/e335626;
their request/reply schemas and BundlesCoreProxmoxConfigureDefaultVms
backward-compat aliases had no remaining callers. Drop them plus the two
test references. Ubuntu (generic/) bundle schemas retained.
@chatgpt-codex-connector

Copy link
Copy Markdown

You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard.

@pparage
pparage requested a review from hyde-repo July 16, 2026 18:35
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