This is the multi-page printable view of this section. Click here to print.
Internal
1 - SOLO-9002
UnsupportedOperationError
| Code | SOLO-9002 |
| Category | Internal |
| Ownership | Solo |
| Retryable | No |
Description
Thrown when execution reaches a branch that is intentionally not implemented or not supported — for example an abstract operation a subclass was expected to override, a not-yet-built feature path, or an input variant the code does not handle; the message states the reason. Because solo should never route a real command into such a path, this is classified as a defect in solo itself rather than a user or infrastructure problem, and reaching it should be reported with the full error output and the command that triggered it.
Troubleshooting Steps
- This is an internal Solo error. File a bug report: https://github.com/hiero-ledger/solo/issues
2 - SOLO-9003
ReadRemoteConfigBeforeLoadError
| Code | SOLO-9003 |
| Category | Internal |
| Ownership | Solo |
| Retryable | No |
Description
Thrown when code reads the remote-configuration runtime state before it has been loaded from the cluster. solo fetches the remote config (a ConfigMap) into memory in an explicit load step that must run before any read, so this is a lifecycle guard: reaching it means a command path accessed the remote config without first loading it, or ran the steps out of order. It indicates a defect in solo rather than a user or infrastructure problem.
Troubleshooting Steps
- This is an internal Solo error. File a bug report: https://github.com/hiero-ledger/solo/issues
3 - SOLO-9004
WriteRemoteConfigBeforeLoadError
| Code | SOLO-9004 |
| Category | Internal |
| Ownership | Solo |
| Retryable | No |
Description
Thrown when code modifies or persists the remote configuration before it has been loaded from the cluster. solo must load the remote config (a ConfigMap) into memory before mutating it, so that writes are applied on top of the current cluster state rather than an empty one; this guard fires when a command path attempts a write without that load having run, or runs the steps out of order. It indicates a defect in solo itself.
Troubleshooting Steps
- This is an internal Solo error. File a bug report: https://github.com/hiero-ledger/solo/issues
4 - SOLO-9005
DataValidationError
| Code | SOLO-9005 |
| Category | Internal |
| Ownership | Solo |
| Retryable | No |
Description
Thrown when an internal consistency check finds a value that differs from what solo required at that point; the message reports the context together with the expected and actual values. solo uses these assertions to verify invariants as data moves between steps — for example confirming that a downloaded artifact’s checksum matches the expected hash before it is used. A mismatch points to a logic error or a broken assumption inside solo rather than to bad user input or an infrastructure fault, so it is treated as an internal defect and should be reported with the full error output.
Troubleshooting Steps
- This is an internal Solo error. File a bug report: https://github.com/hiero-ledger/solo/issues
5 - SOLO-9006
LoggerMessageGroupNotFoundError
| Code | SOLO-9006 |
| Category | Internal |
| Ownership | Solo |
| Retryable | No |
Description
Thrown when the logging subsystem is asked for a message group by a key that was never registered. solo groups related log messages under named keys, and this is raised when code references a group that does not exist — typically a typo in the key or a group that was renamed or never added. It points to a defect in solo rather than to user input.
Troubleshooting Steps
- This is an internal Solo error. File a bug report: https://github.com/hiero-ledger/solo/issues
6 - SOLO-9007
CommandReturnedFalseError
| Code | SOLO-9007 |
| Category | Internal |
| Ownership | Solo |
| Retryable | No |
Description
Thrown when a command handler returns false from a path that requires it to return true to signal success; the message names the command namespace and command that did so. solo treats the boolean return of these handlers as a success flag, so a false here means the handler completed without throwing yet reported failure — an unexpected internal outcome that indicates a defect in solo rather than invalid user input.
Troubleshooting Steps
- This is an internal Solo error. File a bug report: https://github.com/hiero-ledger/solo/issues
7 - SOLO-9008
RemoteConfigUnsupportedComponentError
| Code | SOLO-9008 |
| Category | Internal |
| Ownership | Solo |
| Retryable | No |
Description
Thrown when the remote configuration contains a component whose type solo does not recognise; the message reports the offending componentType. solo dispatches on the component type when reading the remote config’s component inventory, and raises this for any value outside the known set. It usually means the remote config was written by an incompatible solo version or was hand-edited into an invalid state, and is treated as an internal defect.
Troubleshooting Steps
- This is an internal Solo error. File a bug report: https://github.com/hiero-ledger/solo/issues
8 - SOLO-9009
RemoteConfigDeploymentNotSetError
| Code | SOLO-9009 |
| Category | Internal |
| Ownership | Solo |
| Retryable | No |
Description
Thrown while loading the remote configuration when the selected deployment is not present in the local configuration; the message names the deployment that was expected. solo uses the deployment entry in local config to locate the namespace and clusters whose remote config it should read, so this fires when that entry is missing at a point where it should already have been established. It reflects a broken internal precondition (a missing or out-of-order setup step) rather than direct user input.
Troubleshooting Steps
- This is an internal Solo error. File a bug report: https://github.com/hiero-ledger/solo/issues
9 - SOLO-9010
RemoteConfigContextUnavailableError
| Code | SOLO-9010 |
| Category | Internal |
| Ownership | Solo |
| Retryable | No |
Description
Thrown when remote-configuration access needs a Kubernetes context to reach the cluster but none is available: no context was passed to the call and solo could not fall back to a default one (for example because the current kubeconfig has no current-context to resolve). Because callers are expected to supply or have already resolved a context by this point, reaching it indicates a broken internal assumption in solo rather than a user error.
Troubleshooting Steps
- This is an internal Solo error. File a bug report: https://github.com/hiero-ledger/solo/issues
10 - SOLO-9011
CacheImageTemplateUndeclaredError
| Code | SOLO-9011 |
| Category | Internal |
| Ownership | Solo |
| Retryable | No |
Description
Thrown while rendering cache image targets when a version field holds a value that looks like a template key (all uppercase letters, digits, and underscores) but is not among the declared templates; the message names the offending key. The renderer treats such a value as a reference to a named template and refuses to emit it verbatim, so the key must first be declared in the template set. Reaching it points to a missing template declaration in solo’s configuration rather than to user input.
Troubleshooting Steps
- This is an internal Solo error. File a bug report: https://github.com/hiero-ledger/solo/issues
11 - SOLO-9012
InjectedFailureSoloError
| Code | SOLO-9012 |
| Category | Internal |
| Ownership | Solo |
| Retryable | No |
Description
Deliberately thrown by solo’s fault-injection hook to exercise failure and recovery paths during testing — it does not represent a genuine problem with your network or environment. When the SOLO_FAIL_AFTER_STEP environment variable is set, the orchestrator compares it against each step title and raises this error immediately after the matching step completes; the message names that step. If you encounter it without intending to test fault handling, it means SOLO_FAIL_AFTER_STEP is set in your environment — unset it to stop the injected failure.
Troubleshooting Steps
- This error is intended for testing purposes.
- If you did not expect to see this error unset your environment variable: SOLO_FAIL_AFTER_STEP