Skip to content

docs(aim-catalog): describe shipped catalog behaviour, not pending work - #833

Merged
Q-Dub merged 4 commits into
mainfrom
EAI-7657_docs_reflect_current_catalog_state
Sep 3, 2026
Merged

docs(aim-catalog): describe shipped catalog behaviour, not pending work#833
Q-Dub merged 4 commits into
mainfrom
EAI-7657_docs_reflect_current_catalog_state

Conversation

@Q-Dub

@Q-Dub Q-Dub commented Sep 2, 2026

Copy link
Copy Markdown
Contributor

Summary

Follow-up to #831. That PR aligned the AIM catalog docs with the in-tree chart
templates, but left in place several statements that describe behaviour from
work still in flight (EAI-8054,
EAI-8192) rather than what a
main install actually does today. This corrects them.

1. AIM_HARDWARE_FAMILY auto-detection is not shipped

docs/aim_model_management.md and the chart README claimed the family is
"auto-detected when omitted", and that "a typical new cluster-bloom install
injects a non-empty list, so it uses profiles".

On cluster-bloom main the setting has default: ""
(pkg/config/bloom.yaml.schema.yaml) and is injected only
when: AIM_HARDWARE_FAMILY | default('') | length > 0
(bootstrap_gitea.yaml). So an install that leaves it unset injects nothing,
the chart default [] applies, and the cluster gets the unfiltered
catalog — the opposite of what the docs said.

Auto-detection is silogen/cluster-bloom#298, still open. Documented the
current behaviour instead.

2. Source of truth described a publish pipeline that does not exist

The doc said the AIM team's lists "are published into the
aim-cluster-model-source Helm chart for clusters to consume" and linked
github.com/amd-enterprise-ai/aim-build as a public repo (it is not
reachable; the real repo is private).

Today the chart templates are a hand-copied point-in-time snapshot.
Generating them from .releases is
EAI-8192 (Backlog), and
silogen/aim-build#1487 states in its own description that "Catalog YAML is
still a hand-copied snapshot". Reworded to say so, and added the
helm template one-liner operators can use to read the catalog a release
will install.

3. Smaller corrections

  • aim-cluster-model-source-additional is not shipped in Cluster Forge at
    all; noted that it needs one-time operator setup before the
    cluster-managed path works.
  • Removed the speculative "when ROCm ships multi-hardware base images…"
    sentence and replaced it with the actual per-family base split, including
    the unfiltered exception.
  • root/values.yaml still said Empty = legacy after the
    legacy.yamlunfiltered.yaml rename in docs: align AIM catalog lifecycle with in-tree chart templates #831.

Verification

Rendered both branches against the chart in this tree:

$ helm template aim-cluster-model-source sources/aim-cluster-model-source \
    --set-json 'hardwareFamilies=["instinct"]' | grep -E '^  name:'
  name: aim-base-models
  name: amd-aim-release-0.8.5
  name: amd-aim-release-0.9.0
  name: amd-aim-release-0.10.0
  name: amd-aim-release-0.11.0
  name: amd-aim-instinct-0.11.1
  name: amd-aim-instinct-0.12.0
  name: amd-aim-instinct-0.13.0

$ helm template aim-cluster-model-source sources/aim-cluster-model-source \
    | grep -E '^  name:'
  name: aim-base-models
  name: amd-aim-instinct-0.11.1
  name: amd-aim-instinct-0.12.0
  name: amd-aim-instinct-0.13.0

The second invocation confirms the corrected claim: no families set means
unfiltered, not profiles.

Also confirmed apps.aim-cluster-model-source in root/values.yaml is still
path: aim-cluster-model-source (in-tree chart, not an OCI pointer), so the
docs correctly continue to describe in-tree packaging.

Test plan

Made with Cursor

The AIM catalog docs described behaviour that only exists in unmerged
work, so operators reading them would configure the wrong thing.

- Drop AIM_HARDWARE_FAMILY auto-detection claims from the lifecycle doc
  and chart README; auto-detection is not in cluster-bloom main, where
  the setting has no default and is injected only when set. Document
  that an install leaving it unset lands on the unfiltered catalog.
- Replace the "published into the chart" source-of-truth framing with
  the actual manual copy at release time, and drop the dead public
  aim-build link. Point operators at cluster-managed additions when
  they need an AIM version before the next release.
- Note that aim-cluster-model-source-additional is not shipped and
  needs one-time operator setup.
- Fix stale "legacy" naming in root/values.yaml after the
  legacy.yaml -> unfiltered.yaml rename.

Co-authored-by: Cursor <[email protected]>
@Q-Dub
Q-Dub requested a review from a team as a code owner September 2, 2026 19:35
Q-Dub and others added 2 commits September 2, 2026 23:41
AIM Engine discovery is append-only, so dropping an image from a source
filter leaves discovered models in place, while deleting the source CR
garbage-collects them and can break running deployments. Empty filters
are invalid (MinItems=1). Packaged source names are a stable API.

Co-authored-by: Cursor <[email protected]>
…ities

Operators see the packaged baseline as the Cluster Forge release they
installed. Who authored the internal lists is not needed to operate a
cluster.

Co-authored-by: Cursor <[email protected]>
@Q-Dub
Q-Dub force-pushed the EAI-7657_docs_reflect_current_catalog_state branch from 4041105 to 958d9af Compare September 2, 2026 21:23
@Q-Dub
Q-Dub enabled auto-merge September 3, 2026 04:39
@Q-Dub
Q-Dub merged commit 29f272a into main Sep 3, 2026
9 checks passed
@Q-Dub
Q-Dub deleted the EAI-7657_docs_reflect_current_catalog_state branch September 3, 2026 07:25
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.

2 participants