Skip to content

fix(enterprise): return the advisor console pool from cluster-info - #113

Merged
github-actions[bot] merged 1 commit into
developfrom
travis.wu/expose-advisor-pool
Sep 15, 2026
Merged

github-actions[bot] merged 1 commit into
developfrom
travis.wu/expose-advisor-pool

Conversation

@traviswu-bigstack

Copy link
Copy Markdown
Contributor

What type of PR is this?

/kind bug

What this PR does / why we need it

cluster-info serialises an inline anonymous struct. SuggestedAdvisorPool was added to ClusterQuery when the pool probe landed (#112) but never to that struct, so Introspect probed the cluster for free addresses on every call and the result was dropped on the floor:

{"projects":[],"suggestedLBIP":"10.32.1.110","suggestedStorage":"CubeStorage","version":"3.1.20", }

No suggestedAdvisorPool key at all. The install form could never offer a pool, and no caller could learn one without running the probe itself — which is exactly what the probe exists to spare them. #112's description claimed the form was offered the whole pool; it was not.

Which issue(s) this PR fixes

Follow-up to #105 / #112.

Special notes for your reviewer

How it was caught: by asking the 1cc r630 for its pool through the API after deploying the new driver, and getting a response with no such key. Unit tests did not catch it because nothing asserted on the response shape — the field existed on the struct the manager returns, and every test that touched the pool went through Introspect or BuildPlan directly. The new test asserts the key is present in the JSON, which is the only place the bug could live.

Still missing, deliberately out of scope: the web UI does not yet read suggestedAdvisorPool or send AdvisorPool in the install request. An API caller can now do both; the form cannot. That wiring is UI work and wants its own change.

Additional documentation

GET/POST /api/v1/clusters/{id}/enterprise/cluster-info
  suggestedAdvisorPool — free addresses for the advisor's web-console origins

cluster-info serialises an inline struct, so SuggestedAdvisorPool -- added
to ClusterQuery when the pool probe landed -- was computed by Introspect
on every call and then dropped on the floor. The install form could never
offer a pool, and no caller could learn one without running the probe
itself, which is the whole thing the probe exists to spare them.

Caught by asking a real cluster for its pool and getting a response with
no such key.

Fixes #105 follow-up

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01PZ5umjjCedZwWtbAbiMjfj
Signed-off-by: Travis Wu <travis.wu@bigstack.co>
@traviswu-bigstack
traviswu-bigstack marked this pull request as ready for review September 15, 2026 03:35
@traviswu-bigstack traviswu-bigstack added the done Merge the pull request label Sep 15, 2026
@github-actions
github-actions Bot merged commit 10b902e into develop Sep 15, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

done Merge the pull request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant