hashgraph / hashgraph/solo-weaver

diagnose state / diagnose info: local state + environment report

Open
#1,113 0 comments 0 reactions 0 assignees View on GitHub
New Feature
Dominant language
Go
Stars
3
Forks
0
Avg merge
3d 5h
Merged PRs (30d)
47

Description

Part of the diagnostics epic (#1110). Depends on the diagnostics framework sub-issue.

Two local, offline-first introspection commands.

## `solo-provisioner diagnose state`

```
solo-provisioner diagnose state [--validate] [-o json|yaml]
```
- Dump the parsed `state.yaml` (cluster/software/component state) plus the list of applied migrations.
- `--validate`: check schema validity and flag drift, exit non-zero on problems.
- `-o` accepts `json|yaml` (default `json`). This **extends** the global `-o` values for this command (text is meaningless for a state dump). Reuses `internal/state`.

## `solo-provisioner diagnose info`

- One-shot environment/self-report for bug reports: build (version/commit/go/OS/arch), resolved config paths, log path, effective profile, installed components (from state), kube context.

## Acceptance

- `diagnose state -o yaml` and `-o json` both render the current state; default is json.
- `diagnose state --validate` exits non-zero on a corrupt/incompatible state file with actionable hints.
- `diagnose info` prints a complete, paste-ready environment summary and works on an uninstalled host.

Contributor guide

Open the contributing guide

Research direction

Start with the diagnostics framework sub-issue and the internal/state package, then trace the diagnose state and diagnose info command entry points. Verify both output formats, validation failure behavior, and the uninstalled-host path against the acceptance criteria; done means state output is accurate and the info command produces a complete paste-ready report.

Written by the indexing model from the issue text.

Assessment

Tech stack
go, kubernetes
Domain
cli, devtools
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
52/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.