Skip to content

fix(helm): bundle swiss 0.7.0 for catalog schema v2 and writable catalogs - #91

Merged
imneov merged 1 commit into
mainfrom
fix/helm-swiss-0.7.0
Oct 26, 2026
Merged

imneov merged 1 commit into
mainfrom
fix/helm-swiss-0.7.0

Conversation

@imneov

@imneov imneov commented Oct 22, 2026

Copy link
Copy Markdown
Contributor

What type of PR is this?

  • bug fix
  • documentation
  • install / chart

What this PR does and why

The chart pins the swiss subchart at 0.6.3, but the 0.2.x Model Serving pages already offer catalog schema v2 and writable catalogs (#68, #73). swiss 0.6.3 has neither: no index-v2.json reader, and its site profile parser rejects the schemaVersion and writable fields a catalog now has. So with swiss.enabled=true, the Model Library could not list a v2 catalog, and saving the site profile with either field failed. Bumping the subchart to 0.7.0 makes the bundled install match the pages.

0.7.0 also vendors catalog-server in the swiss chart. That closes the gap #86 was opened for: an installation whose own catalog is a read-only static index can now add a writable v2 catalog and use #73's New model, instead of Console growing a second catalog store and publishing deprecated schema v1. The chart README documents enabling it (swiss.catalogServer.*), its write token, and the site profile entry; docs/console-design.md records that Console owns no catalog storage.

Deliberately not in this PR: enabling catalog-server by default (it costs a pod and a PVC, and needs a token) and any Console Go/web change.

Which issue(s) this PR fixes

Fixes #90
Refs #64, #86

How it was tested

  • helm dependency build helm/console and helm lint --strict helm/console with Helm 4.3.0 (the version CI uses) and Helm 3.15.4.
  • helm template in three shapes: defaults, swiss.enabled=true, and swiss.enabled=true with swiss.catalogServer.enabled=true + tokens.existingSecret. The catalog-server Deployment/PVC/Service render as console-catalog-server in the release namespace, and swissd 0.7.0 renders with them.
  • Checked the documented flow against swiss 0.7.0's code: a writable catalog needs schemaVersion: v2 + writable: true, its token is verified by a dry-run POST api/v2/models (swiss/internal/server/catalogwrite.go), which an uninitialized catalog-server answers 400 before the init check, and POST api/v2/init from Set up this catalog initializes it.
  • go test ./... still passes; no Go or web files changed.

Checks

  • go test ./... and gofmt -l . is empty
  • npm run typecheck && npm test && npm run build in web/ (if web/ changed) — not changed
  • helm lint --strict helm/console (if the chart changed)
  • Docs updated where behaviour, a config key or a chart value moved
  • No internal hostnames, IPs, registries or credentials

Notes for reviewers

  • Start with helm/console/Chart.yaml / Chart.lock (the fix), then helm/console/README.md → "Adding models from the Model Library" (the setup this unlocks), then the one-paragraph decision in docs/console-design.md.
  • The prerequisite for an existing Swiss moves to chart 0.7.0 because the pages already write schemaVersion; an older swissd refuses the profile save rather than degrading.
  • The token in the README example is generated per install and lives in two Secrets (catalog-server's tokens file and swissd's <profile>-secrets), never in a values file.

Release note

action required: the bundled swiss subchart is 0.7.0 (was 0.6.3); installs using an existing Swiss need chart 0.7.0 or later for catalog schema v2, writable catalogs and adding models from the Model Library.

…logs

The chart pinned the swiss subchart at 0.6.3, which predates catalog schema v2 and the site profile's schemaVersion/writable fields. The 0.2.x Model Serving pages offer both, so with a bundled swiss the Model Library could not list a v2 catalog or save a writable one.

0.7.0 also vendors catalog-server, so a site whose own catalog is a read-only static index can add a writable catalog and use the Model Library to add models. The chart README documents enabling it and naming it in the site profile.

Fixes #90
@imneov
imneov merged commit 24f58c3 into main Oct 26, 2026
4 checks passed
@imneov
imneov deleted the fix/helm-swiss-0.7.0 branch October 26, 2026 12:54
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.

helm: bundled swiss 0.6.3 rejects catalog schema v2 and writable catalogs

2 participants