devantler-tech / devantler-tech/ksail
docs(cluster): 'list' help text overstates what the Unmanaged marker proves (default discovery excludes AWS/nested)
- Dominant language
- Go
- Stars
- 165
- Forks
- 12
- Avg merge
- 5h 41m
- Merged PRs (30d)
- 337
Description
> 🤖 Generated by the Daily AI Engineer
## Problem
`ksail cluster list` help text claims `Unmanaged` means "Kubeconfig contexts KSail did not provision" and that "KSail-only operations (delete/stop/update) do not act on them". That is **stronger than the actual behaviour**.
`cluster list` decides "unmanaged" as *"not found among the providers it discovered"*, and by default it discovers only `clusterdiscovery.DefaultProviders()`:
```go
func DefaultProviders() []v1alpha1.Provider {
return []v1alpha1.Provider{ProviderDocker, ProviderHetzner, ProviderOmni}
}
```
AWS-EKS and nested-Kubernetes are **not** in that set (they live in `AllProviders()`, which the web-UI backend uses). So a cluster **KSail itself created** via the AWS or nested-Kubernetes provider, present only in kubeconfig, is absent from the discovered set and is emitted as `Unmanaged` with blank PROVIDER/DISTRIBUTION — contradicting the help text.
## Proposed direction
Pick one:
1. **Correct the help text** (cheapest, no behaviour change): say the marker means "not discovered among the queried providers (default: Docker, Hetzner, Omni)" and point at `--provider` to widen discovery. This is what the new unmanaged-clusters guide now documents.
2. **Widen the default discovery set** to include AWS/nested — but this costs credential-gated provider calls on every `list`, which is presumably why the default is narrow.
Recommend (1), optionally plus a hint in the `Unmanaged` status when a narrower-than-`All` provider set was queried.
## Rough size
XS for (1).
Found while documenting unmanaged clusters (#6112 / PR #6113).
Contributor guide
Research direction
Start at the help text for `ksail cluster list` and compare it with the unmanaged-clusters guide and the `DefaultProviders()` versus `AllProviders()` behavior described here. Done means the help text accurately explains that unmanaged status depends on the queried providers and points users to `--provider` for broader discovery.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- go, kubernetes
- Domain
- cli, documentation
- Issue type
- Documentation
- Difficulty
- 2/5
- Estimated time
- 1-3 hours
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 74/100