ErrLookup › wavetermdev/waveterm
wavetermdev/waveterm
An open-source, AI-integrated, cross-platform terminal for seamless workflows · Go · 605 source files
Analyzed at a4447c1563 on 2026-09-01. 971 documented errors.
| Code / Message | Type | Severity | Tags |
|---|---|---|---|
| No tab view found for the given webContents id | exception | error | wsl, distro-not-found, configuration |
| User redirected to docsite to learn more about ARM64 transla | exception | error | wsl, remote-command, uname, wsh-install |
| results.error | exception | error | wsl, uname, output-parsing, wsh-install |
| tabid and blockid are required | exception | error | wsl, parsing, uname, wsh-install |
| no window found with workspace ${data.workspaceid} | exception | error | wsl, file-io, wsh-install, copy |
| no webcontents found with blockid ${data.blockid} | exception | warning | wsl, timeout, connection-lifecycle, concurrency |
| window ${windowId} not found | exception | error | wsl, connection-state, domain-socket, race-condition |
| encryption is not available | exception | error | wsl, connection-state, connserver, race-condition |
| error getting wave file: + resp.statusText | http | error | wsl, timeout, wsh-version, handshake |
| missing zone file info for ${zoneId}:${fileName} | exception | error | http, headers, file-io, wave |
| Layout model not found | exception | error | lifecycle, frontend, screenshot |
| Block not found: ${blockId} | exception | error | frontend, screenshot, invalid-argument |
| Display container not found | exception | error | dom, lifecycle, screenshot |
| Block not found in tab: ${blockId} | exception | error | focus, invalid-argument, frontend |
| cannot call ${methodName}: no web endpoint | exception | critical | network, configuration, backend, wave |
| call ${methodName} failed: ${resp.status} ${resp.statusText} | http | error | network, http, backend, wave |
| call ${methodName} error: ${respData.error} | exception | error | backend, rpc, application-error, wave |
| rpc command "${msg.command}" not supported by [${this.routeI | exception | error | rpc, frontend, protocol-mismatch |
| msg.error | exception | error | rpc, streaming, remote-error |
| Image too large (>5MB) | validation | error | file-size, image, validation |
| Unsupported or invalid image type: ${blob.type} | validation | error | image, mime-type, validation |
| Invalid node | exception | error | layout, tree-validation, frontend |
| Invalid direction: ${direction} | exception | error | layout, invalid-argument, switch-default |
| Invalid InsertOperation | exception | error | layout, invalid-operation, state-race |
| Invalid CSS color: ${String(color)} | validation | error | css, type-error, validation |
| Invalid CSS color: ${color} | validation | error | css, validation, config |
| Invalid path part: ${pathPart} | exception | error | ijson, path-traversal, type-mismatch |
| Invalid command path: ${formatPath(path)} | exception | error | ijson, path-validation, invalid-argument |
| Invalid command type: ${commandType} | exception | error | ijson, command-type, invalid-argument |
| Invalid data URL | exception | error | data-url, parsing, invalid-argument |
| Invalid data URL: missing data | exception | error | data-url, parsing, malformed-input |
| source cannot be blank | exception | error | rpc, wsh, missing-source |
| Cannot get last command data without shell integration | exception | error | terminal, shell-integration, precondition-failed |
| Failed to fetch config: ${configResponse.statusText} | http | error | network, http, fetch, builder |
| Failed to fetch data: ${dataResponse.statusText} | http | error | network, http, fetch, builder |
| HTTP ${response.status}: ${response.statusText} | http | error | network, http, fetch, tsunami, render-server |
| terminal input request failed: ${response.status} ${response | http | error | network, http, fetch, tsunami, terminal-input |
| sse handler is nil | error_code | error | streaming, nil-pointer, api-contract |
| ai:model is required | validation | error | configuration, validation, anthropic |
| chatOpts.ClientId is required | validation | error | configuration, validation, api-contract |
| ai:endpoint is required | validation | error | configuration, network, validation |
| file part missing url | validation | error | validation, message-conversion, attachments |
| file part missing mediaType | validation | error | validation, message-conversion, attachments |
| invalid data URL format | validation | error | validation, data-url, message-conversion |
| no data available for base64 extraction | validation | error | anthropic, base64, file-upload, message-conversion |
| toolResults cannot be empty | validation | error | anthropic, tool-results, validation, message-conversion |
| ai:model is required | validation | error | gemini, configuration, missing-model |
| ai:apitoken is required | validation | error | gemini, configuration, api-key, authentication |
| ai:endpoint is required | validation | error | gemini, configuration, endpoint |
| sse handler is nil | exception | error | gemini, sse, streaming, nil-pointer, programmer-error |
| sse handler is nil | exception | error | openai, sse, streaming, nil-pointer, programmer-error |
| ai:model is required | validation | error | openai, configuration, missing-model |
| chatOpts.ClientId is required | validation | error | openai, validation, client-id, programmer-error |
| ai:endpoint is required | validation | error | openai, configuration, endpoint |
| beginning of file | error_code | info | go, file-io, sentinel-error, log-parsing |
| procinfo: process not found | error_code | warning | go, linux, procfs, process, sentinel-error |
| integer overflow | error_code | error | go, arithmetic, integer-overflow, input-validation |
| bind tags must be self closing | validation | error | go, html, template, vdom, parse-error |
| doctype not supported | validation | error | go, html, doctype, vdom, parse-error |
| wcloud endpoint not set | validation | warning | go, network, telemetry, configuration, http |
| wcloud ping endpoint not set | validation | warning | go, network, configuration, diagnostics, http |
| nil wshrpc passed to wshclient | exception | error | go, nil-pointer, rpc, initialization-order, wsh |
| no default route | exception | error | go, rpc, routing |
| response channel closed | exception | error | go, rpc, channel |
| <resp.Error> | exception | error | go, rpc, remote-error |
| server is no longer running, cannot send new requests | exception | error | go, rpc, shutdown |
| static files not available before app initialization; use Ap | exception | error | go, static-files, initialization |
| setting auth key: %v | exception | critical | go, auth, environment, startup |
| error getting client: %v | exception | error | go, database, startup, cleanup |
| no files or message provided | validation | warning | cli, wsh, user-input |
| too many files (maximum %d files allowed) | validation | error | cli, argument-limit, wsh |
| stdin (-) can only be used once | validation | error | cli, stdin, argument-validation, wsh |
| reading from stdin: %w | exception | error | stdin, io, cli, broken-pipe |
| accessing file %s: %w | exception | error | filesystem, file-not-found, permissions, wsh |
| getting absolute path for %s: %w | exception | error | filesystem, working-directory, path, wsh |
| reading directory %s: %w | exception | error | filesystem, directory, permissions, wsh |
| marshaling directory listing for %s: %w | exception | error | json, serialization, directory, wsh |
| reading file %s: %w | exception | error | filesystem, permissions, io, wsh |
| file %s contains binary data and cannot be uploaded as text | exception | error | binary-data, file-format, validation, wsh |
| file %s exceeds maximum size of %s for %s files | exception | error | file-size, limit, validation, wsh |
| WAVETERM_TABID environment variable not set | exception | error | cli, environment-variable, wsh |
| creating new chat: %w | exception | error | rpc, wsh, ai |
| adding file %s: %w | exception | error | rpc, wsh, file-attachment |
| adding context: %w | exception | error | rpc, wsh, ai |
| --pid flag is not supported on Windows | exception | error | cli, windows, unsupported-platform |
| resolving block: %v | exception | error | cli, wsh, block-resolution |
| badge oref must be a block or tab (got %q) | exception | error | cli, validation, oref |
| generating badge id: %v | exception | error | uuid, entropy, cli |
| publishing badge event: %v | exception | error | rpc, events, wsh |
| playing system bell: %v | exception | warning | rpc, electron, cli |
| watching pid: %v | exception | error | rpc, wsh, cli, badge, connection |
| unknown --view %q; try one of: term, web, preview, edit, sys | validation | error | cli, validation, argument-parsing, wsh |
| failed to list workspaces: %v | exception | error | rpc, network, wsh, timeout |
| no workspaces found | exception | error | wsh, empty-result, state |
| --workspace and --window are mutually exclusive; specify onl | validation | error | cli, validation, flags, wsh |
| window %s not found | exception | error | cli, wsh, lookup-failed, identifiers |
| failed to list blocks from all %d workspace(s) | exception | error | rpc, wsh, timeout, network |
| failed to marshal JSON: %v | exception | error | json, serialization, wsh, cli |
| cannot parse connection name: %w | exception | error | cli, validation, ssh, connection |
| getting ssh connection status: %w | exception | error | rpc, ssh, wsh, connection |
| getting wsl connection status: %w | exception | error | cli, rpc, wsl, connection-status |
| no connection specified | exception | error | cli, argument-validation, connection |
| reinstalling connection: %w | exception | error | cli, rpc, timeout, wsh-install |
| disconnecting %q error: %w | exception | error | cli, rpc, disconnect, timeout |
| connecting connection: %w | exception | error | cli, rpc, ssh, connection |
| ensuring connection: %w | exception | error | cli, rpc, wsh-install, timeout |
| error creating listener at %v: %v | exception | error | unix-socket, network, filesystem, permissions |
| error setting up connserver rpc client: %v | exception | error | rpc, unix-socket, startup, connection |
| error getting jwt public key: %v | exception | error | rpc, jwt, startup, authentication |
| error decoding jwt public key: %v | exception | error | jwt, base64, encoding, startup |
| error setting jwt public key: %v | exception | error | jwt, crypto, public-key, remote-connection |
| cannot create unix listener: %v | exception | critical | unix-socket, network, filesystem, ipc |
| error extracting socket name from JWT: %v | exception | error | jwt, validation, unix-socket, wsh |
| error connecting to domain socket %s: %v | exception | critical | unix-socket, connection-refused, network, ipc |
| error authenticating with upstream: %v | exception | critical | jwt, authentication, rpc, security |
| failed to read JWT token from stdin: %w | exception | error | stdin, jwt, cli, io |
| --conn parameter is required | exception | error | cli, validation, configuration, ssh |
| no WAVETERM_TABID env var set | exception | error | environment-variable, cli, wave-terminal |
| create block failed: %v | exception | error | rpc, cli, wave-terminal, ipc |
| reading stdin: %w | exception | error | stdin, io, cli, debug |
| reading input file: %w | exception | error | file-io, cli, debug |
| size must be greater than 0 | exception | error | validation, cli, arguments |
| reading terminal output: %w | exception | error | rpc, timeout, cli, debug |
| decoding terminal output: %w | exception | error | base64, decoding, rpc, version-mismatch |
| invalid mode %q (expected %q or %q) | exception | error | cli, validation, argument-error |
| object reference is not a block | exception | error | cli, validation, block |
| delete block failed: %v | exception | error | rpc, network, block |
| no WAVETERM_TABID env var set | exception | error | cli, environment, missing-env-var |
| opening config file: %w | exception | error | rpc, network, block |
| no arguments. wsh editor requires a file or URL as an argum | exception | error | cli, argument-error, validation |
| too many arguments. wsh editor requires exactly one argumen | exception | error | cli, argument-error, validation |
| getting absolute path: %w | exception | error | filesystem, path-resolution, cli |
| file does not exist: %q | exception | error | filesystem, file-not-found, cli |
| getting file info: %w | exception | error | filesystem, permissions, cli |
| no WAVETERM_TABID env var set | exception | error | cli, environment, wave-terminal |
| running view command: %w | exception | error | rpc, network, timeout, wave-terminal |
| creating file: %w | exception | error | filesystem, rpc, permissions |
| getting file info: %w | exception | error | filesystem, rpc, timeout |
| initializing file with empty write: %w | exception | error | filesystem, rpc, permissions |
| reading input: %w | exception | error | io, streaming, pipe |
| input exceeds maximum file size of %d bytes | exception | error | streaming, limit, validation |
| appending chunk to file: %w | exception | error | streaming, rpc, network |
| stream broker not available | exception | error | streaming, rpc, version-mismatch |
| file info is required | exception | error | go, wsh, file-stream, nil-pointer |
| no route id available | exception | error | go, wsh, rpc, route-id, connection |
| parsing file path: %w | exception | error | go, wsh, uri, path-parsing |
| starting file stream: %w | exception | error | go, wsh, rpc, file-stream, remote |
| reading file: %w | exception | error | go, wsh, file-cat, streaming |
| getting file info: %w | exception | error | go, wsh, rpc, file-info, timeout |
| %s: no such file | exception | error | go, wsh, file-info, not-found |
| removing file: %w | exception | error | go, wsh, file-delete, rpc |
| reading input: %w | exception | error | go, wsh, file-write, stdin, io |
| input exceeds maximum file size of %d bytes | validation | error | go, wsh, file-write, size-limit |
| writing file: %w | exception | error | rpc, file-write, network, timeout |
| file already at maximum size (%d bytes) | validation | error | file-size, limit, append |
| append would exceed maximum file size of %d bytes | validation | error | file-size, limit, append, validation |
| appending to file: %w | exception | error | rpc, append, network, partial-write |
| %s: is a directory | exception | error | directory, cp, mv, validation |
| file size (%d bytes) exceeds maximum of %d bytes | validation | error | file-size, limit, cp, mv |
| cannot specify key with --all | validation | error | cli, usage, wsh |
| requires a key argument | validation | error | cli, usage, wsh |
| getting variable: %w | exception | error | rpc, network, wsh |
| getting variables: %w | exception | error | rpc, network, wsh |
| getting job debug list: %w | exception | error | rpc, jobs, debugging, wsh |
| getting connected job ids: %w | exception | error | rpc, jobs, network, wsh |
| marshaling json: %w | exception | error | json, serialization, jobs, wsh |
| deleting job: %w | exception | error | rpc, jobs, wsh |
| invalid secret name: must start with a letter and contain on | validation | error | validation, cli, naming |
| getting secret: %w | exception | error | rpc, network, timeout |
| secret not found: %s | exception | error | not-found, cli, secrets |
| invalid format: expected [name]=[value] | validation | error | cli, validation, argument-parsing |
| secret name cannot be empty | validation | error | cli, validation, shell-scripting |
| checking secret storage backend: %w | exception | error | rpc, linux, keyring, timeout |
| No appropriate secret manager found, cannot set secrets | exception | error | linux, keyring, environment, secrets |
| setting secret: %w | exception | error | rpc, secrets, keyring, timeout |
| listing secrets: %w | exception | error | rpc, network, timeout, secrets |
| deleting secret: %w | exception | error | cli, rpc, secrets, timeout |
| no WAVETERM_TABID env var set | validation | error | cli, environment, wave-terminal, missing-env-var |
| opening secrets UI: %w | exception | error | cli, rpc, wave-terminal, timeout |
| color must start with # | validation | error | cli, validation, color, argument |
| color must be in #RRGGBB or #RRGGBBAA format | validation | error | cli, validation, color, argument |
| invalid hex color: %v | validation | error | cli, validation, color, hex |
| invalid color %q: must be a hex color (#RRGGBB or #RRGGBBAA) | validation | error | cli, validation, color, argument |
| --border-color: %v | validation | error | cli, validation, color, flags |
| --active-border-color: %v | validation | error | cli, validation, color, flags |
| setbg requires an image path or color value | validation | error | cli, validation, usage, argument |
| opacity must be between 0.0 and 1.0 | validation | error | cli, validation, waveterm |
| too many arguments | validation | error | cli, arguments, shell-quoting |
| resolving image path: %v | exception | error | cli, filesystem, path-resolution |
| cannot access image file: %v | exception | error | cli, filesystem, file-not-found |
| path is a directory, not an image file | validation | error | cli, filesystem, validation |
| file does not appear to be a valid image (detected type: %s) | validation | error | cli, filetype, validation |
| error formatting metadata: %v | exception | error | cli, json, internal |
| setting background: %v | exception | error | cli, rpc, network, waveterm |
| setting config: %w | exception | error | cli, rpc, config, network |
| creating new terminal block: %w | exception | error | rpc, cli, terminal |
| error getting block metadata: %w | exception | error | rpc, cli, metadata |
| block %s is not a terminal block (view type: %s) | validation | error | validation, cli, terminal |
| error getting terminal scrollback: %w | exception | error | rpc, timeout, terminal |
| error writing to file %s: %w | exception | error | filesystem, io, cli |
| wsh token requires exactly 2 arguments, got %d | validation | error | cli, argument-validation, cobra |
| wsh token requires non-empty arguments | validation | error | cli, argument-validation |
| error setting up rpc client: %w | exception | error | rpc, auth, token |
| error encoding env vars: %w | exception | error | cli, shell, encoding |
| formatting version info: %v | exception | error | json, serialization, cli |
| no arguments. wsh %s requires a file or URL as an argument | validation | error | cli, argument-validation, wsh |
| too many arguments. wsh %s requires exactly one argument | validation | error | cli, argument-validation, wsh |
| no WAVETERM_TABID env var set | validation | error | cli, environment-variable, wsh |
| getting absolute path: %w | exception | error | cli, filesystem, path-resolution |
| getting absolute path of parent dir: %w | exception | error | cli, filesystem, path-resolution |
| parent directory does not exist: %q | validation | error | cli, filesystem, missing-file |
| getting file info: %w | exception | error | cli, filesystem, permissions |
| running view command: %w | exception | error | cli, rpc, network, timeout |
| no arguments. wsh wavepath requires a type argument (config, | validation | error | cli, argument-validation, wsh |
| too many arguments. wsh wavepath requires exactly one argume | validation | error | cli, argument-validation, wsh |
| invalid path type %q. must be one of: config, data, log | validation | error | cli, argument-validation, wsh |
| --tail can only be used with the log path type | validation | error | cli, flag-validation, wsh |
| no WAVETERM_TABID env var set | validation | error | cli, environment, env-var, wsh |
| getting path: %w | exception | error | rpc, network, wsh, error-wrapping |
| tailing log file: %w | exception | error | filesystem, file-io, wsh |
| opening log file: %w | exception | error | filesystem, file-io, permissions |
| getting file stats: %w | exception | error | filesystem, file-io |
| seeking file: %w | exception | error | filesystem, file-io, seek |
| reading file: %w | exception | error | filesystem, file-io, read |
| resolving blockid: %w | exception | error | cli, argument-resolution, wsh, blockid |
| getting block info: %w | exception | error | cli, rpc, wave-terminal |
| block %s is not a web block | validation | error | cli, validation, wave-terminal |
| json encoding: %w | exception | error | json, serialization, cli |
| resolving -r blockid: %w | exception | error | cli, argument-parsing, wave-terminal |
| cannot use --replace and --magnified together | validation | error | cli, flag-conflict, usage |
| no WAVETERM_TABID env var set | validation | error | cli, environment, wave-terminal |
| creating block: %w | exception | error | cli, rpc, wave-terminal |
| cannot determine blockid (not in JWT) | validation | error | cli, jwt, wave-terminal |
| setting connection in block: %w | exception | error | cli, rpc, wsl |
| unsupported URL protocol in file part: %s | validation | error | validation, url, ai |
| file part missing both url and data | validation | error | multimodal, file-attachment, input-validation |
| failed to decode data URL for text/plain file: %w | exception | error | data-url, base64, text-attachment |
| dropping text/plain file with URL (must be fetched and conve | validation | warning | text-attachment, remote-url, unsupported-operation |
| text/plain file part missing data | validation | error | text-attachment, missing-content, input-validation |
| invalid proxy URL: %w | validation | error | proxy, configuration, url-parsing |
| invalid accumulated tool input JSON: %w | exception | error | streaming, json, tool-use, anthropic |
| tool input is not an object | validation | error | tool-use, json-schema, anthropic, streaming |
| %s | exception | info | error-sanitization, hostname-redaction, anthropic |
| anthropic %s: %s | http | error | http, anthropic, api-error, rate-limit |
| convertFileUIMessagePart expects 'file' type, got '%s' | validation | error | go, type-mismatch, message-conversion, anthropic |
| unsupported URL protocol in file part: %s | validation | error | go, url-validation, unsupported-protocol, anthropic |
| failed to decode base64 data: %w | exception | error | go, base64, encoding, data-url, anthropic |
| dropping text/plain file with URL (must be fetched and conve | validation | error | go, anthropic, unsupported-media, text-plain, url |
| dropping file with unsupported media type '%s' (must be uplo | validation | error | go, anthropic, unsupported-media-type, files-api |
| invalid AIMessage: %w | validation | error | go, validation, anthropic, message-conversion |
| part %d: text type requires non-empty text field | validation | error | go, validation, empty-field, anthropic |
| part %d: %w | exception | error | go, error-wrapping, anthropic, file-part |
| part %d: unsupported part type '%s' | validation | error | go, unsupported-type, anthropic, message-conversion |
| convertFileAIMessagePart expects 'file' type, got '%s' | validation | error | go, type-mismatch, anthropic, message-conversion |
| text/plain file with URL not supported (must be fetched and | validation | error | go, anthropic, unsupported-input, url-fetch |
| unsupported media type '%s' (must be uploaded to Files API a | validation | error | go, anthropic, unsupported-media-type |
| tool result missing ToolUseID | validation | error | go, anthropic, tool-use, missing-field |
| APIType must be '%s', got '%s' | validation | error | go, anthropic, api-type, mismatch |
| message %d: expected *anthropicChatMessage, got %T | exception | error | go, anthropic, type-assertion |
| chat not found: %s | exception | error | go, anthropic, chat-store, not-found |
| tool call with ID %s not found in chat %s | exception | error | go, anthropic, tool-use, not-found |
| %s | exception | warning | go, error-sanitization, openai, network |
| chat not found: %s | exception | error | go, chatstore, state, openai |
| function call with callId %s not found in chat %s | exception | error | go, tool-use, openai, state |
| API type mismatch: chat has %s, chatOpts has %s | validation | error | go, configuration, openai, api-type |
| model mismatch: chat has %s, chatOpts has %s | validation | error | go, model, configuration, openai |
| API version mismatch: chat has %s, chatOpts has %s | validation | error | go, api-version, azure, configuration |
| cannot continue with a different model, model:%q, cont-model | validation | error | go, continuation, model, openai |
| expected OpenAIChatMessage, got %T | exception | error | go, type-assertion, chatstore, openai |
| openai %s: failed to read error response: %v | http | error | openai, network, http-error-parsing |
| openai %s: %s | http | error | openai, api-error, http-4xx |
| convertFileAIMessagePart expects 'file' type, got '%s' | validation | error | openai, message-conversion, validation |
| file part missing mimetype | validation | error | openai, message-conversion, mimetype, validation |
| dropping PDF with URL (must be fetched and converted to base | validation | error | openai, pdf, message-conversion |
| PDF file part missing data | validation | error | openai, pdf, message-conversion, missing-data |
| directory listing part missing data | validation | error | openai, directory-listing, message-conversion, missing-data |
| dropping file with unsupported mimetype '%s' (OpenAI support | validation | error | openai, message-conversion, unsupported-mimetype |
| invalid AIMessage: %w | validation | error | validation, openai, message-conversion |
| part %d: text type requires non-empty text field | validation | error | validation, openai, empty-text |
| all %d image conversions failed | exception | error | openai, image-processing, validation |
| tool result missing ToolUseID | validation | error | openai, tool-use, validation |
| failed to marshal error output: %w | exception | error | json, openai, marshaling |
| APIType must be '%s', got '%s' | validation | error | openai, api-type, validation |
| message %d: expected *OpenAIChatMessage, got %T | exception | error | type-assertion, openai, message-conversion |
| chat not found: %s | validation | error | not-found, chatstore, state |
| expected StoredChatMessage, got %T | exception | error | type-assertion, chatstore, openai |
| request failed: %w | http | error | network, http, openai |
| invalid input format | validation | error | tool-input, type-mismatch, ai-tools |
| missing values parameter | validation | error | tool-input, missing-parameter, ai-tools |
| values must be an array | validation | error | tool-input, type-mismatch, array-validation |
| value at index %d is not a number | validation | error | tool-input, type-mismatch, array-validation |
| input is required | validation | error | tool-input, nil-input, builder-tools |
| invalid input format: %w | validation | error | tool-input, unmarshal, type-mismatch, builder-tools |
| missing contents parameter | validation | error | tool-input, missing-parameter, builder-tools |
| missing edits parameter | validation | error | tool-input, missing-parameter, builder-tools |
| input is required | validation | error | input-validation, tooling, json |
| invalid input format: %w | validation | error | input-validation, json, unmarshal |
| missing filename parameter | validation | error | input-validation, missing-parameter, tooling |
| invalid origin value '%s': must be 'start' or 'end' | validation | error | input-validation, enum, tooling |
| offset must be non-negative, got %d | validation | error | input-validation, numeric-range, tooling |
| count must be at least 1, got %d | validation | error | input-validation, numeric-range, tooling |
| failed to expand path: %w | exception | error | filesystem, path-resolution, validation |
| path must be absolute, got relative path: %s | validation | error | filesystem, path-validation, tooling |
| access denied: potentially sensitive file: %s | exception | error | security, access-control, tooling |
| failed to capture screenshot: %w | exception | error | rpc, screenshot, wave, timeout |
| failed to marshal input: %w | validation | error | json, marshal, input-validation, wave |
| failed to unmarshal input: %w | validation | error | json, unmarshal, type-error, tool-input, wave |
| count must be positive | validation | error | validation, tool-input, terminal, wave |
| failed to get terminal scrollback: %w | exception | error | rpc, terminal, scrollback, wave, timeout |
| failed to decode tsunami response: %w | exception | error | json, http, decoding, tsunami |
| failed to marshal input: %w | validation | error | json, serialization, tsunami |
| input is required | validation | error | validation, input, tool-call, web |
| failed to marshal input: %w | validation | error | json, serialization, input, web |
| failed to unmarshal input: %w | validation | error | json, type-mismatch, validation, web |
| widget_id is required | validation | error | validation, required-field, web, tool-call |
| failed to delete file: %w | exception | error | filesystem, permissions, os-remove |
| messageid must be set | validation | error | validation, message-protocol, missing-field |
| parts must not be empty | validation | error | validation, message-protocol, empty-payload |
| part %d: %w | validation | error | validation, message-protocol, nested-error |
| text type requires non-empty text field | validation | error | validation, ai-messages |
| text type cannot have file fields set | validation | error | validation, ai-messages |
| file type cannot have text field set | validation | error | validation, ai-messages |
| file type requires mimetype | validation | error | validation, ai-messages, file-upload |
| file type requires either data or url | validation | error | validation, ai-messages, file-upload |
| file type cannot have both data and url set | validation | error | validation, ai-messages, file-upload |
| invalid url: %w | validation | error | validation, url, ai-messages |
| url must be https or data URL, got %q | validation | error | validation, url, security, ai-messages |
| type must be %q or %q, got %q | validation | error | validation, ai-messages |
| unsupported API type: %s | exception | error | configuration, backend-selection, ai-providers |
| x-authkey header is invalid | http | error | auth, http, security |
| no auth key found in environment variables | exception | critical | auth, environment, config |
| invalid tabId or blockId passed to ResyncController | exception | error | validation, ids, blockcontroller |
| error getting block: %w | exception | error | database, blockcontroller, stale-reference |
| unknown controller type %q | exception | error | configuration, meta, blockcontroller |
| cannot start shellproc: %w | exception | error | connection, ssh, shell |
| error starting controller: %w | exception | error | process, startup, blockcontroller |
| no controller found for block %s | exception | error | state, blockcontroller, input |
| error appending to blockfile: %w | exception | error | filestore, io, terminal |
| error truncating blockfile: %w | exception | error | filestore, io, truncate |
| not connected: %s | exception | error | wsl, connection, network, status |
| no connection found | exception | error | ssh, connection, profile-missing, wave-terminal |
| error getting block: %w | error_code | error | database, block, not-found, durable-shell |
| durable shell controller requires a remote connection | error_code | error | configuration, durable-shell, local-connection, wave-terminal |
| error getting job manager status: %w | error_code | error | job, durable-shell, remote, status |
| error creating block term file: %w | error_code | error | filesystem, filestore, durable-shell, disk |
| failed to start new job: %w | error_code | error | job, durable-shell, remote, connection |
| failed to reconnect to job: %w | error_code | error | ssh, remote, durable-shell, reconnect |
| no job attached to controller | error_code | error | state, durable-shell, input, lifecycle |
| invalid ssh remote name (%s): %w | error_code | error | ssh, config, remote, validation |
| connection %q not found | error_code | error | ssh, connection, remote, not-found |
| unable to obtain remote info from connserver: %w | error_code | error | network, rpc, wsh, remote, timeout |
| error making jwt token: %w | error_code | error | jwt, auth, token, configuration |
| failed to start durable shell: %w | error_code | error | ssh, remote, shell, process, spawn |
| error getting block: %w | error_code | error | database, state, block, lifecycle |
| no shell input chan | error_code | error | state, input, lifecycle, channel |
| wsl connection not found: %s | error_code | error | wsl, connection, not-found, config |
| wsl connection %s not connected, cannot start shellproc | error_code | error | wsl, connection-state, shell-process |
| invalid ssh remote name (%s): %w | error_code | error | ssh, parsing, configuration |
| ssh connection not found: %s | error_code | error | ssh, connection-state, session-restore |
| ssh connection %s not connected, cannot start shellproc | error_code | error | ssh, connection-state, network |
| error creating blockfile: %w | error_code | error | filestore, filesystem, storage |
| unknown controller type %q | error_code | error | internal, state-corruption, versioning |
| error making jwt token: %w | error_code | error | jwt, auth, wsh |
| unknown connection type for conn %q: %s | error_code | error | internal, dispatch, connection-type |
| failed to run tsunami app: %w | exception | error | process, subprocess, tsunami |
| failed to create stdout pipe: %w | exception | error | pipe, process, file-descriptors |
| failed to create stderr pipe: %w | exception | error | pipe, process, stderr |
| tsunami process died before emitting listening message | exception | error | process-exit, startup, port |
| failed to create app bin directory: %w | exception | error | filesystem, mkdir, permissions |
| failed to parse app id: %w | exception | error | validation, app-id, builder |
| failed to get app directory: %w | exception | error | go, filesystem, builder |
| failed to get builder executable path: %w | exception | error | go, filesystem, builder |
| electron executable path not set | exception | error | go, electron, environment |
| build failed: %w | exception | error | go, build, toolchain |
| build output not found: %w | exception | error | go, filesystem, build |
| build output is not executable | exception | error | go, permissions, build |
| failed to run app: %w | exception | error | go, process, builder |
| failed to read app manifest: %w | exception | error | go, manifest, filesystem |
| failed to read secret bindings (ERR-SECRET): %w | exception | error | go, secrets, security |
| failed to build secret environment (ERR-SECRET): %w | exception | error | go, secrets, environment |
| failed to create stdout pipe: %w | exception | error | go, os-exec, subprocess, pipe |
| failed to create stderr pipe: %w | exception | error | go, os-exec, subprocess, pipe |
| failed to create stdin pipe: %w | exception | error | go, os-exec, subprocess, pipe |
| failed to start process: %w | exception | error | go, os-exec, subprocess, spawn-failure |
| process died before emitting port | exception | error | subprocess, process-exit, port-discovery, go |
| timeout waiting for port | exception | error | timeout, subprocess, port-discovery, go |
| cancelled while waiting for app port: %w | exception | warning | context, cancellation, subprocess, go |
| failed to stat file for backup: %w | exception | error | filesystem, backup, go, file-missing |
| failed to read file for backup: %w | exception | error | filesystem, backup, go, io-error |
| failed to generate UUID: %w | exception | error | uuid, randomness, entropy, go |
| failed to create backup directory: %w | exception | error | filesystem, permissions, backup, go |
| failed to write backup file: %w | exception | error | filesystem, disk-full, backup, go |
| failed to marshal backup metadata: %w | exception | warning | json, serialization, backup, go |
| failed to write backup metadata: %w | exception | error | filesystem, disk-full, backup, go |
| failed to read backup metadata: %w | exception | error | filesystem, file-not-found, metadata, restore |
| failed to unmarshal backup metadata: %w | exception | error | json, corruption, metadata, restore |
| backup metadata mismatch: expected %s, got %s | exception | error | validation, path, restore, mismatch |
| failed to parse file permissions: %w | exception | warning | permissions, parsing, metadata, restore |
| failed to restore file: %w | exception | error | filesystem, permissions, restore, write |
| failed to read backup directory: %w | exception | error | filesystem, backup, io |
| max size must be non-negative | validation | error | validation, filestore, input-validation |
| circular file must have a max size | validation | error | validation, filestore, circular-buffer |
| circular file cannot be ijson | validation | error | validation, filestore, incompatible-options |
| ijson budget requires ijson | validation | error | validation, filestore, incompatible-options |
| ijson budget must be non-negative | validation | error | validation, filestore, input-validation |
| error deleting file: %v | exception | error | database, filestore, delete |
| error getting zone files: %v | exception | error | database, filestore, delete |
| error getting file: %v | exception | error | database, filestore, io |
| offset must be non-negative | validation | error | filestore, validation, arguments |
| offset is past the end of the file | validation | error | filestore, bounds, offset |
| file %s:%s is not an ijson file | exception | error | filestore, ijson, type-mismatch |
| size must be non-negative and less than MaxInt | validation | error | filestore, validation, arguments |
| flush already in progress | exception | warning | filestore, concurrency, flush |
| error flushing cache entry[%v]: %v | exception | error | filestore, flush, database |
| error getting file: %w | exception | error | filestore, database, cache |
| offset cannot be negative | validation | error | filestore, validation, offset |
| error getting data parts: %w | exception | error | filestore, database, parts |
| too many flush errors (clearing entry): %w | exception | critical | sqlite, flush, data-loss, cache, disk |
| opening db: %w | exception | critical | sqlite, startup, driver, database |
| failed to create process controller: %w | exception | error | process, ssh, wsl, connection |
| failed to get stdout pipe: %w | exception | error | process, pipe, ssh, stdout |
| failed to get stderr pipe: %w | exception | error | process, pipe, ssh, stderr |
| failed to start process: %w | exception | error | process, exec, ssh, spawn |
| invalid environment variable name: %q | validation | error | shell, environment-variables, validation, command-building |
| failed to create SSH session: %w | exception | error | ssh, network, session |
| failed to build shell command: %w | exception | error | ssh, command-spec, validation |
| failed to start command: %w | exception | error | ssh, exec, network |
| failed to build shell command: %w | exception | error | wsl, command-spec, validation |
| failed to create WSL command | exception | error | wsl, windows, environment |
| failed to start command: %w | exception | error | wsl, windows, process-start |
| unmatched bracket at position %d | validation | error | parsing, path, validation |
| invalid index at position %d: %v | validation | error | parsing, path, validation |
| invalid key at position %d: %s | validation | error | parsing, path, validation |
| SetPath: Remove and CombineFn are mutually exclusive | validation | error | api-misuse, options, validation |
| failed to get job: %w | exception | error | database, wstore, job-controller |
| failed to get jobs: %w | exception | error | database, wstore, job-controller |
| failed to get block: %w | exception | error | database, wstore, block |
| block not found: %s | exception | error | not-found, block, job-controller |
| error checking connection status: %w | exception | error | network, connection, job-controller |
| connection %q is not connected | exception | error | network, ssh, disconnected |
| job is not connected (status: %s) | exception | error | job-controller, connection-state, race-condition |
| connection name is required | validation | error | validation, job-controller, parameter-missing |
| jobkind must be %q or %q | validation | error | validation, argument-error, jobcontroller |
| command is required | validation | error | validation, argument-error, jobcontroller |
| failed to generate job auth token: %w | exception | error | crypto, random, environment |
| failed to generate job access token: %w | exception | error | jwt, crypto, configuration |
| failed to create job in database: %w | exception | error | database, sqlite, storage |
| failed to attach job to block: %w | exception | error | blocks, wstore, jobcontroller |
| failed to create WaveFS file: %w | exception | error | filesystem, wavefs, storage |
| failed to start remote job: %w | exception | error | remote-execution, rpc, jobcontroller |
| failed to reconnect to job manager: %w | exception | error | go, rpc, network |
| job manager has exited: %s | exception | error | go, remote-jobs, process-lifecycle |
| failed to reconnect to job manager: %s | exception | error | go, rpc, remote-jobs |
| route did not establish after successful reconnection: %w | exception | error | go, routing, timeout |
| failed to send input to job: %w | exception | error | rpc, terminal, pty, input |
| invalid term size: %v | exception | error | validation, terminal, pty |
| failed to start command: %w | exception | error | pty, process, exec |
| no active process | exception | error | process, lifecycle, pgid |
| process already exited | exception | warning | process, lifecycle, exit |
| failed to get pgid: %w | exception | error | process, unix, pgid, race |
| invalid pgid returned: %d | exception | error | pgid, unix, platform |
| no active pty | exception | error | pty, terminal, resize, lifecycle |
| error setting terminal size: %w | exception | error | pty, terminal, ioctl, resize |
| error decoding input data: %w | exception | error | base64, decoding, input-validation |
| error writing to pty: %w | exception | error | pty, io, process-lifecycle |
| error sending signal: %w | exception | warning | signal, process, race-condition |
| job manager only supported on unix systems, not %s | exception | error | platform, unsupported-os, jobmanager |
| failed to set public key: %w | exception | critical | jwt, public-key, auth |
| failed to daemonize: %w | exception | critical | daemonize, process, unix |
| invalid rwnd size: %d | exception | error | streaming, validation, flow-control |
| failed to connect client: %w | exception | error | streaming, connection, jobmanager |
| job already started | exception | error | jobmanager, state-conflict, idempotency |
| failed to start job: %w | exception | error | process-start, exec, validation |
| no pending stream (call PrepareConnect first) | exception | error | go, jobmanager, streaming, api-misuse, state-error |
| failed to set rwnd size: %w | exception | error | go, streaming, flow-control, wrapped-error |
| failed to create socket directory: %w | exception | error | go, filesystem, unix-socket, permissions, tmpdir |
| failed to listen on domain socket: %w | exception | error | go, unix-socket, network, permissions, eaddrinuse |
| failed to setsid: %w | exception | error | go, unix, daemonize, process, eperm |
| failed to open /dev/null: %w | exception | error | go, unix, daemonize, devnull, filesystem |
| failed to dup2 stdin: %w | exception | warning | go, unix, daemonize, dup2, file-descriptor |
| failed to create log directory: %w | exception | error | go, filesystem, permissions, logging, daemonize |
| failed to open log file: %w | exception | error | go, filesystem, logging, permissions, daemonize |
| failed to dup2 stdout: %w | exception | error | unix, file-descriptor, daemonization, syscall |
| failed to dup2 stderr: %w | exception | error | unix, file-descriptor, daemonization, syscall |
| daemonize not supported on windows | exception | error | windows, platform-support, daemonization |
| failed to authenticate to server: %w | exception | error | authentication, rpc, jobmanager, security |
| failed to validate token: %w | exception | error | jwt, authentication, token-expired, security |
| MainServer claim not set | exception | error | jwt, authentication, claims, security |
| JobId mismatch | exception | error | jwt, authentication, jobmanager, security |
| not authenticated | exception | error | authentication, rpc, jobmanager, authorization |
| peer not authenticated | exception | error | authentication, rpc, jobmanager, authorization |
| not authenticated to server | exception | error | authentication, rpc, jobmanager, handshake |
| job not started | exception | error | jobmanager, rpc, state |
| cannot open domain socket for %q when status is %q | exception | error | ssh, connection-state, wsh |
| error generating random string: %w | exception | error | crypto, random, environment |
| unable to request connection domain socket: %v | exception | critical | ssh, unix-socket, network, wsh |
| unexpected version format: %s | exception | warning | versioning, wsh, parsing, ssh |
| ssh client is not connected | exception | error | ssh, connection-state, diagnostics |
| error getting environment without PTY: %w | exception | error | ssh, environment, pty |
| error getting environment with PTY: %w | exception | error | ssh, environment, pty |
| error getting connection name from context: %v | exception | error | go, context, rpc, connection-parsing |
| error getting rpc response handler from context | exception | error | go, context, rpc |
| invalid format of user@host argument | validation | error | go, validation, ssh, parsing |
| error running uname -sm: %w, stderr: %s | error_code | error | go, ssh, remote-execution, platform-detection |
| unexpected output from uname: %s | error_code | error | go, ssh, parsing, platform-detection |
| cannot open local file %s: %w | error_code | error | go, filesystem, wsh, installation |
| failed to prepare install command: %w | error_code | error | go, template, wsh, installation |
| failed to create remote command: %w | error_code | error | go, ssh, remote-execution, wsh |
| failed to get stdin pipe: %w | error_code | error | go, ssh, io-pipe, wsh |
| failed to get stderr pipe: %w | error_code | error | go, ssh, remote |
| failed to start remote command: %w | error_code | error | go, ssh, process |
| failed to copy data: %w | error_code | error | go, io, stream |
| remote command failed: %w (stderr: %s) | error_code | error | go, ssh, process |
| failed to copy data: %w (stderr: %s) | error_code | error | go, io, ssh |
| path cannot start with ~, ., or .. | validation | error | go, path, security |
| context cancelled: %v | error_code | warning | go, context, timeout |
| stream file protocol error, first pk fileinfo is empty | error_code | error | go, protocol, stream |
| stream file protocol error, directory entry has data | error_code | error | go, protocol, stream |
| stream file protocol error, no file info | error_code | error | go, protocol, stream |
| error parsing connection %s: %w | error_code | error | go, uri-parsing, connection |
| file info is required | validation | error | go, validation, missing-argument |
| stream broker not available | error_code | error | go, initialization, streaming |
| no route id available | error_code | error | go, initialization, routing |
| starting remote file stream: %w | error_code | error | go, rpc, network, streaming |
| reading file stream: %w | error_code | error | go, io, network, streaming |
| file data size %d exceeds transfer limit of %d bytes | validation | error | go, file-transfer, limit |
| error parsing source connection: %w | error_code | error | go, uri-parsing, connection |
| error parsing destination connection: %w | error_code | error | file-transfer, uri-parsing, go |
| cannot copy %q to %q: %w | error_code | error | file-transfer, copy, go |
| move internal, src and dest hosts do not match | error_code | error | file-transfer, invariant, go |
| no identity files remaining | error_code | error | ssh, authentication, publickey |
| bad response from server: questions has len %d, echos has le | error_code | error | ssh, keyboard-interactive, protocol |
| canceled by the user | error_code | info | ssh, known-hosts, user-cancelled |
| user selected no | error_code | info | ssh, known-hosts, user-cancelled |
| error getting tab: %w | exception | error | go, database, wstore, tab |
| error getting client data: %w | exception | error | go, database, wstore, tos |
| error updating client data: %w | exception | error | go, database, write-failure, tos |
| error setting telemetry value: %w | exception | error | go, config, telemetry, settings |
| invalid object reference: %q | validation | error | go, validation, oref, parsing |
| error getting object: %w | exception | error | go, database, wstore, oref |
| no active tab | validation | error | go, blocks, uicontext, precondition |
| error deleting block: %w | exception | error | go, blocks, delete, wcore |
| error parsing object reference: %w | validation | error | go, validation, oref, meta |
| error updating %q meta: %w | exception | error | go, database, meta, wstore |
| update wavobj is nil | validation | error | nil-pointer, validation, wstore, rpc |
| object not found: %s | exception | error | object-not-found, wstore, stale-reference, rpc |
| error updating object: %w | exception | error | database, write-failure, wstore, wrapped-error |
| invalid number type %s | exception | error | reflection, type-conversion, rpc, go |
| cannot convert %T to %s | exception | error | type-conversion, rpc, wscommand, go |
| error parsing command map: %w | exception | error | wscommand, validation, rpc, wrapped-error |
| invalid oref string: %v | exception | error | oref, parsing, validation, rpc |
| cannot convert %T to %s (idx %d is not a map, is %T) | exception | error | rpc, type-conversion, array, waveobj |
| cannot convert %T to %s (idx %d) error: %v | validation | error | rpc, deserialization, waveobj, validation |
| cannot convert %T to %s (key %s is not a map, is %T) | validation | error | rpc, type-conversion, map, waveobj |
| cannot convert %T to %s (key %s) error: %v | validation | error | rpc, deserialization, waveobj, validation |
| invalid special wave argument type %s | validation | error | rpc, reflection, unsupported-type, internal |
| invalid map key type %s | validation | error | rpc, map-key, reflection, unsupported-type |
| invalid pointer type %s | validation | error | rpc, pointer, unsupported-type, reflection |
| invalid argument type %s | validation | error | rpc, unsupported-type, reflection, signature |
| cannot convert special return value: %v | exception | error | rpc, serialization, waveobj, return-value |
| invalid service: %q | validation | error | rpc, unknown-service, dispatch, registry |
| invalid method: %s.%s | validation | error | rpc, reflection, service |
| missing UIContext for %s.%s | validation | error | rpc, uicontext, arguments |
| not enough arguments passed %s.%s idx:%d (type %T) | validation | error | rpc, arguments, arity |
| cannot convert argument %s.%s type:%T idx:%d error:%v | validation | error | rpc, type-conversion, json |
| error getting window: %w | exception | error | window, database, not-found |
| error creating window: %w | exception | error | window, workspace, creation |
| error creating workspace: %w | exception | error | workspace, creation, validation |
| error updating workspace: %w | exception | error | workspace, update, not-found |
| error getting workspace: %w | exception | error | workspace, database, not-found |
| error deleting workspace: %w | exception | error | workspace, delete, not-found |
| error creating tab: %w | exception | error | go, workspace, tab, rpc |
| error setting active tab: %w | exception | error | go, workspace, tab, rpc |
| error getting tab: %w | exception | error | go, workspace, tab, database |
| error getting tab blocks: %w | exception | error | go, workspace, blocks, database |
| error closing tab: %w | exception | error | go, workspace, tab, close |
| cwd is empty | validation | error | go, shell, cwd, validation |
| error statting cwd %q: %w | exception | error | go, shell, cwd, filesystem |
| invalid term size: %v | validation | error | go, wsl, pty, term-size, validation |
| SwapToken is required in CommandOptsType | validation | error | go, wsl, wsh, swap-token, validation |
| unable to obtain client info: %w | exception | error | go, wsl, wsh, rpc, timeout |
| %s is not a directory | validation | error | go, filesystem, suggestions |
| error expanding home dir: %w | exception | error | go, environment, path-expansion |
| error expanding query home dir: %w | exception | error | go, environment, path-expansion |
| error resolving base dir: %w | exception | error | go, path-resolution, suggestions |
| env string too large (max %d bytes) | validation | error | go, environment, size-limit |
| failed to write temp file %q: %w (also failed to remove temp | exception | error | go, filesystem, atomic-write |
| failed to rename temp file %q to %q: %w (also failed to remo | exception | error | go, filesystem, atomic-write, rename |
| edit %d (%s): %s | validation | error | go, text-editing, validation |
| failed to stat file: %w | exception | error | go, filesystem, stat |
| not a regular file: %s | validation | error | go, filesystem, validation |
| file too large for editing: %d bytes (max: %d) | validation | error | go, filesystem, size-limit |
| failed to read file: %w | exception | error | go, filesystem, io |
| failed to write file: %w | exception | error | go, filesystem, write |
| failed to expand path: %w | exception | error | filesystem, go, path, home-directory |
| failed to stat path: %w | exception | error | filesystem, go, path, not-found |
| path is not a directory | validation | error | filesystem, go, path, validation |
| failed to read directory: %w | exception | error | filesystem, go, permissions, io |
| WriterChan: checksum mismatch | exception | error | checksum, data-corruption, streaming, go |
| WriterChan: write error: %v | exception | error | io, write-error, streaming, go |
| linePtr is nil | exception | error | nil-pointer, validation, logview, go |
| opening fs: %w | exception | error | migrations, embed, iofs, go, database |
| dlopen %s: %w | exception | error | macos, dlopen, purego, process-info |
| mach_timebase_info failed: %d | exception | error | macos, mach, timebase, process-info |
| mach_timebase_info returned denom=0 | exception | error | macos, mach, timebase, division-by-zero |
| procinfo: read %s: %w | exception | error | linux, procfs, permissions, io-error |
| procinfo: malformed stat for pid %d | exception | error | linux, procfs, parsing, process-info |
| procinfo: too few fields in stat for pid %d | exception | error | linux, procfs, parsing, stat-format |
| procinfo: parse pid: %w | exception | error | linux, procfs, parsing, strconv |
| procinfo: Uid line not found in %s | exception | error | linux, procfs, process-introspection |
| procinfo: CreateToolhelp32Snapshot: %w | exception | error | windows, syscall, process-enumeration |
| procinfo: Process32First: %w | exception | error | windows, syscall, process-enumeration |
| procinfo: Process32Next: %w | exception | error | windows, syscall, process-enumeration |
| procinfo: GetProcInfo requires a snapshot on windows | exception | error | windows, api-misuse, nil-argument |
| procinfo: invalid snapshot type | exception | error | windows, type-assertion, api-misuse |
| ReadTailLines readLimit must be positive, got %d | exception | error | validation, argument-contract, file-io |
| unsupported wsh platform: %s-%s | exception | error | platform-support, wsh, configuration |
| error writing zsh-integration .zprofile: %v | exception | error | zsh, file-write, shell-integration |
| error writing zsh-integration .zshrc: %v | exception | error | zsh, file-write, shell-integration |
| error writing zsh-integration .zlogin: %v | exception | error | filesystem, shell-integration, zsh, file-write |
| error writing zsh-integration .zshenv: %v | exception | error | filesystem, shell-integration, zsh, file-write |
| error writing bash-integration .bashrc: %v | exception | error | filesystem, shell-integration, bash, file-write |
| error writing bash-integration bash_preexec.sh: %v | exception | error | filesystem, shell-integration, bash, file-write |
| error writing fish-integration wave.fish: %v | exception | error | filesystem, shell-integration, fish, file-write |
| error writing pwsh-integration wavepwsh.ps1: %v | exception | error | filesystem, shell-integration, powershell, file-write |
| error copying wsh binary to bin: %v | exception | error | filesystem, wsh, binary-copy, atomic-rename |
| unknown shell type: %s | exception | error | shell-detection, configuration, unsupported-shell |
| unsupported shell type: %s | exception | warning | shell-detection, version-probe, unimplemented-case |
| failed to get version for %s: %w | exception | error | shell-detection, version-probe, process-execution |
| unsupported or invalid signal %q | exception | error | signals, process, validation, go |
| process %d not found: %w | exception | error | signals, process, pid, go |
| process group id not supported on windows | exception | error | windows, process, platform-support, go |
| sending signals is not supported on Windows | exception | error | windows, signals, process, platform-support, go |
| out parameter must be a pointer, got %v | exception | error | reflection, go, marshaling, validation |
| out parameter must be a pointer to struct, got pointer to %v | exception | error | reflection, go, marshaling, types |
| error setting field %s: %w | exception | error | reflection, go, type-mismatch, marshaling |
| input must be a struct or pointer to struct, got %v | exception | error | reflection, go, marshaling, types |
| cannot set value of type %v to field of type %v | exception | error | reflection, go, type-mismatch, marshaling |
| invalid data URL: must start with 'data:' | validation | error | data-url, parsing, validation, go |
| error extracting socket name from %s: %v | exception | error | jwt, ipc, domain-socket, startup |
| error setting up domain socket rpc client: %v | exception | error | ipc, domain-socket, network, connection |
| error authenticating rpc connection: %v | exception | error | authentication, jwt, rpc, timeout |
| authentication returned empty routeid | exception | error | authentication, rpc, version-compatibility |
| error waiting for vdom context route: %v | exception | error | rpc, timeout, vdom, frontend |
| vdom context route could not be established | exception | error | vdom, timeout, frontend, route |
| no vdom context block id | exception | error | vdom, initialization-order, state, lifecycle |
| client is done | exception | warning | lifecycle, shutdown, vdom, state |
| failed to write data: %v | http | warning | http, io, response-write |
| failed to write buffered data: %v | http | warning | http, io, streaming, response-write |
| failed to copy from file: %v | http | error | go, http, file-io, io-copy |
| failed to copy from reader: %v | exception | error | go, http, streaming, io-copy |
| no content available | validation | error | go, http, validation, misconfiguration |
| invalid appId format: must be namespace/name | validation | error | go, validation, identifier-format, waveapp |
| invalid appId: namespace and name cannot be empty | validation | error | go, validation, identifier-format, waveapp |
| namespace too long: max %d characters | validation | error | go, validation, length-limit, waveapp |
| app name too long: max %d characters | validation | error | go, validation, length-limit, waveapp |
| invalid namespace: must match pattern @?[a-z0-9-]+ | validation | error | go, validation, regex, naming-convention |
| invalid app name: must match pattern [a-zA-Z0-9_-]+ | validation | error | go, validation, regex, naming-convention |
| failed to write file: %w | exception | error | filesystem, go, file-write, permissions |
| failed to stat file: %w | exception | error | filesystem, go, file-not-found |
| failed to read file: %w | exception | error | filesystem, go, file-read, permissions |
| failed to delete file: %w | exception | error | filesystem, go, file-delete, file-not-found |
| invalid source path: %w | validation | error | validation, go, path-traversal, security, rename |
| invalid destination path: %w | validation | error | path-validation, go, input-validation |
| failed to create destination directory: %w | error_code | error | filesystem, permissions, go |
| failed to rename file: %w | error_code | error | filesystem, rename, go |
| file is not a Go file: %s | validation | error | validation, gofmt, file-type |
| failed to resolve gofmt path: %w | error_code | error | environment, gofmt, toolchain |
| gofmt failed: %w Output: %s | error_code | error | gofmt, syntax-error, go |
| app directory does not exist: %s | error_code | error | filesystem, go, missing-resource |
| failed to read waveapps directory: %w | error_code | error | filesystem, permissions, go |
| invalid app name: %w | validation | error | go, validation, rename, waveappstore |
| invalid new app name: %w | validation | error | go, validation, rename, waveappstore |
| failed to check local app: %w | error_code | error | go, filesystem, permissions, os-stat |
| failed to check draft app: %w | error_code | error | go, filesystem, permissions, os-stat |
| app '%s' does not exist in local or draft namespace | error_code | error | go, rename, not-found, waveappstore |
| local app '%s' already exists | validation | error | go, rename, conflict, waveappstore |
| failed to check if new local app exists: %w | error_code | error | go, filesystem, permissions, os-stat |
| draft app '%s' already exists | validation | error | go, rename, conflict, draft, waveappstore |
| failed to marshal bindings: %w | error_code | error | go, json, serialization |
| failed to write %s: %w | error_code | error | go, filesystem, io |
| required secret %q is not bound | validation | error | go, configuration, secrets |
| failed to get secret %q: %w | error_code | error | go, secrets, keychain |
| required secret %q is bound to %q which does not exist in se | validation | error | go, secrets, configuration |
| gofmt not found at %s: %w | error_code | error | go, toolchain, filesystem |
| gofmt path is a directory: %s | error_code | error | go, toolchain, configuration |
| gofmt is not executable: %s | error_code | error | go, permissions, toolchain |
| filemutex new error: %w | error_code | critical | go, windows, file-locking, startup |
| filemutex trylock error: %w | error_code | error | file-lock, single-instance, startup, go, windows |
| json syntax error at line %d, col %d: probably an extra trai | validation | error | json, syntax-error, trailing-comma, config, go |
| json syntax error at line %d, col %d: %v | validation | error | json, syntax-error, config, parsing, go |
| invalid number for int64: %s | validation | error | config, json-number, type-conversion, int64, go |
| invalid number for float64: %s | validation | error | config, json-number, float64, type-conversion, go |
| cannot convert number to %s | validation | error | config, type-conversion, reflection, json-number, go |
| error reading config file: %v | exception | error | config, json, file-read, settings, go |
| invalid config key: %s | validation | error | config, invalid-key, validation, settings, go |
| cannot convert %s: %v | validation | error | config, type-conversion, json-number, settings, go |
| invalid value type for %s: %T | validation | error | config, type-mismatch, validation, settings, go |
| blockDef is nil | exception | error | nil-argument, blocks, wave-terminal |
| no view provided for new block | validation | error | validation, blocks, metadata |
| error creating sub block: %w | exception | error | database, blocks, wrapped-error |
| parent block not found: %q | exception | error | database, blocks, stale-reference |
| error creating block: %w | exception | error | database, blocks, wrapped-error |
| error making blockfile %q: %w | exception | error | filestore, blocks, filesystem |
| error writing blockfile %q: %w | exception | error | filestore, blocks, io |
| tab not found: %q | exception | error | wave-terminal, block-creation, missing-tab, referential-integrity |
| error getting block: %w | exception | error | wave-terminal, block-deletion, database-read, wrapped-error |
| error deleting subblock %s: %w | exception | error | wave-terminal, block-deletion, subblocks, recursion, wrapped-error |
| error deleting block: %w | exception | error | wave-terminal, block-deletion, transaction, wrapped-error |
| error finding workspace for tab to delete %s: %w | exception | error | wave-terminal, tab-deletion, workspace-lookup, cascade-delete, wrapped-error |
| error deleting tab %s: %w | exception | error | wave-terminal, tab-deletion, cascade-delete, wrapped-error |
| block not found: %q | exception | warning | wave-terminal, block-deletion, missing-block, race-condition, idempotency |
| block has subblocks, must delete subblocks first | exception | error | wave-terminal, block-deletion, subblocks, invariant-violation |
| unable to get layout id for given tab id %s: %w | exception | error | wave-terminal, layout, tab-lookup, database-read, wrapped-error |
| unable to get layout state for given id %s: %w | exception | error | waveterm, wstore, layout, object-not-found |
| unable to update layout state with new actions: %w | exception | error | waveterm, wstore, layout, db-write |
| unable to create block to apply portable layout to tab %s: % | exception | error | waveterm, layout, blockdef, block-creation |
| unable to queue layout actions for portable layout: %w | exception | error | waveterm, layout, wstore, action-queue |
| unable to find client: %w | exception | error | waveterm, wstore, client, singleton, bootstrap |
| error bootstrapping layout, no windows exist | exception | warning | waveterm, window, bootstrap, precondition |
| error getting window: %w | exception | error | waveterm, wstore, window, dangling-reference |
| error getting workspace: %w | exception | error | waveterm, wstore, workspace, dangling-reference |
| error applying starter layout: %w | exception | error | waveterm, layout, bootstrap, starter-layout |
| error creating client: %w | exception | critical | waveterm, wstore, client, first-launch, initialization |
| error updating client: %w | exception | critical | database, startup, persistence |
| error creating starter workspace: %w | exception | error | database, workspace, first-launch |
| error creating window: %w | exception | error | database, window, first-launch |
| error inserting client: %w | exception | critical | database, client, persistence |
| error getting client data: %w | exception | error | database, client |
| widget_id must be 8 characters | validation | error | validation, input, block-id |
| error getting tab: %w | exception | error | database, tab, not-found |
| widget_id not found: %q | validation | error | not-found, block-id, validation |
| error inserting mainserver: %w | exception | critical | database, mainserver, persistence |
| error getting mainserver: %w | exception | critical | database, startup, sqlite, initialization |
| error generating jwt keypair: %w | exception | error | jwt, cryptography, keypair, startup |
| error updating mainserver: %w | exception | critical | database, persistence, jwt, write-failure |
| error decoding jwt private key: %w | exception | error | jwt, base64, corruption, key-decoding |
| error decoding jwt public key: %w | exception | error | jwt, base64, public-key, corruption |
| error setting jwt private key: %w | exception | error | jwt, ed25519, private-key, key-format |
| error setting jwt public key: %w | exception | error | jwt, ed25519, public-key, key-format |
| error getting new workspace: %w | exception | error | workspace, not-found, wcore, stale-reference |
| error getting window: %w | exception | error | window, not-found, wcore, stale-reference |
| error getting all windows: %w | exception | error | window, database, enumeration, wcore |
| error updating window: %w | exception | error | database, wave-terminal, workspace, persistence |
| error deleting workspace: %w | exception | error | database, wave-terminal, workspace, cleanup |
| error creating workspace: %w | exception | error | database, wave-terminal, workspace, window-creation |
| error getting workspace: %w | exception | error | wave-terminal, workspace, lookup, invalid-id |
| error inserting window: %w | exception | error | database, wave-terminal, window-creation, persistence |
| error getting client: %w | exception | error | wave-terminal, client-data, window-creation, initialization |
| error updating client: %w | exception | error | database, wave-terminal, client-data, consistency |
| error deleting window: %w | exception | error | database, wave-terminal, window-close, persistence |
| error inserting workspace: %w | exception | error | go, database, workspace |
| error creating tab: %w | exception | error | go, database, tab |
| workspace %s not found: %w | exception | error | go, workspace, not-found |
| workspace already deleted %w | exception | warning | go, workspace, not-found |
| error retrieving workspaceList: %w | exception | error | go, database, workspace |
| could not create symlink %s -> %s: %w | exception | error | go, filesystem, symlink, remote |
| cannot expand wsh path: %w | exception | error | go, remote, path, home-dir |
| invalid pid: %d | validation | error | go, validation, rpc |
| oref is required | validation | error | go, validation, rpc, oref |
| badgeid is required | validation | error | go, validation, rpc |
| cannot get info for source file %q: %w | exception | error | file-copy, rpc, remote-file-info, wave-terminal |
| cannot create destination file %q: %w | exception | error | file-copy, filesystem, permissions, wave-terminal |
| stream broker route id not available for file copy | exception | error | file-copy, rpc, stream-broker, initialization, wave-terminal |
| error starting file stream for %q: %w | exception | error | rpc, file-copy, stream, remote |
| error copying file %q to %q: %w | exception | error | io, file-copy, stream, network |
| recursive directory listings are not supported | exception | error | filesystem, directory-listing, configuration, unsupported-feature |
| cannot open dir %q: %w | exception | error | filesystem, directory-listing, permissions, not-found |
| file %q already exists | exception | error | filesystem, file-create, conflict, already-exists |
| cannot create directory %q: %w | exception | error | filesystem, mkdir, permissions, path |
| destination %q already exists | exception | error | filesystem, file-move, conflict, already-exists |
| cannot start remote job: no router available | exception | error | rpc, router, initialization, remote-job |
| cannot create ready pipe: %w | exception | error | os, file-descriptors, pipes, resource-limits |
| cannot create stdin pipe: %w | exception | error | os, file-descriptors, pipes, exec |
| cannot create stdout pipe: %w | exception | error | os, file-descriptors, pipes, exec |
| cannot create stderr pipe: %w | exception | error | os, file-descriptors, pipes, exec |
| cannot start job manager: %w | exception | error | exec, process, binary-not-found, permissions |
| cannot write job auth token: %w | exception | error | process, pipe, broken-pipe, auth-token |
| error reading ready pipe: %w | exception | error | pipes, process-protocol, read-error, ready-signal |
| job manager exited without start signal | exception | error | process, ready-signal, child-process-exit, protocol |
| timeout waiting for job manager to start | exception | error | timeout, process-startup, ready-signal, job-manager |
| failed to start job: %w | exception | error | rpc, remote-execution, job-manager |
| error checking job manager process: %w | exception | error | process, remote-execution, job-manager |
| invalid simple id format: %s | validation | error | validation, input, uuid |
| no blockid in request | validation | error | validation, rpc, resolver |
| error finding tab: %v | exception | error | resolver, store, block |
| connection %s not found | exception | error | connection, wsh, resolver |
| error getting block: %w | exception | error | store, block, rpc |
| error finding tab for block: %w | exception | error | store, tab, block |
| error finding window for tab: %w | exception | error | store, workspace, tab |
| error listing blockfiles: %w | exception | error | filestore, blockfiles, rpc |
| blockid is required | validation | error | validation, rpc, wsh, missing-parameter |
| size must be greater than 0 | validation | error | validation, rpc, wsh, invalid-argument |
| error statting term file: %w | exception | error | filestore, storage, rpc, wrapped-error |
| error reading term file: %w | exception | error | filestore, storage, rpc, io-error |
| no active window | exception | error | wsh, rpc, window-state, no-active-window |
| error listing workspaces: %w | exception | error | workspace, wstore, rpc, wrapped-error |
| error getting workspace: %w | exception | error | workspace, wstore, rpc, dangling-reference |
| must provide an appId to ListAllAppFilesCommand | validation | error | validation, rpc, appstore, missing-parameter |
| must provide an appId to ReadAppFileCommand | validation | error | validation, rpc, appstore, missing-parameter |
| failed to read app file: %w | exception | error | appstore, filesystem, io-error, wrapped-error |
| must provide an appId to RenameAppFileCommand | validation | error | rpc, validation, missing-argument |
| must provide an appId to WriteAppSecretBindingsCommand | validation | error | rpc, validation, missing-argument |
| must provide a builderId to DeleteBuilderCommand | validation | error | rpc, validation, missing-argument |
| must provide a builderId to StartBuilderCommand | validation | error | rpc, validation, missing-argument |
| builder rtinfo not found for builderid: %s | exception | error | rpc, state, missing-record |
| builder appid not set for builderid: %s | exception | error | rpc, configuration, missing-record |
| must provide a builderId to StopBuilderCommand | validation | error | rpc, validation, missing-argument |
| must provide a builderId to RestartBuilderAndWaitCommand | validation | error | rpc, validation, missing-argument |
| open and openExternal cannot both be true | validation | error | validation, rpc, waveterm |
| error opening path: %w | exception | error | rpc, blocks, waveterm |
| error getting tab: %w | exception | error | rpc, store, waveterm |
| error getting secret %q: %w | exception | error | secrets, keychain, rpc |
| error getting secret names: %w | exception | error | secrets, keychain, rpc |
| error deleting secret %q: %w | exception | error | secrets, keychain, rpc |
| error setting secret %q: %w | exception | error | secrets, keychain, rpc |
| error getting linux storage backend: %w | exception | error | secrets, linux, dbus |
| too many return values: %d | exception | error | rpc, reflection, protocol |
| command %q not implemented | exception | error | rpc, wsh, not-implemented, waveterm |
| command %q not found | exception | error | rpc, wsh, unknown-command, waveterm |
| error re-marshalling command data: %w | exception | error | rpc, wsh, json, payload, waveterm |
| command not implemented %q | exception | error | rpc, wsh, reflection, not-implemented, waveterm |
| command %q invalid multi arg payload | exception | error | rpc, wsh, payload, reflection, waveterm |
| command %q expected %d args, got %d | exception | error | rpc, wsh, payload, arity, waveterm |
| unsupported command type %q | exception | error | rpc, wsh, dispatch, waveterm |
| error reading input: %w | exception | error | pty, io, terminal, waveterm |
| no route for %q | exception | error | rpc, wsh, routing, waveterm |
| invalid routeid %q | validation | error | go, wshrouter, routing, invalid-argument |
| cannot unbind %q to NoLinkId | exception | error | go, wshrouter, routing, invalid-argument |
| cannot bindroute %q to NoLinkId | exception | error | go, wshrouter, routing, invalid-argument |
| router cannot register %q route (invalid routeid) | validation | error | go, wshrouter, routing, invalid-argument |
| cannot bind route %q, no link with id %d found | exception | error | go, wshrouter, routing, unknown-link |
| cannot bind route %q, link %d is not trusted | exception | error | go, wshrouter, routing, trust |
| cannot bind source route %q to link %d (link is not a leaf) | exception | error | go, wshrouter, routing, link-kind |
| cannot bind source route %q to link %d (link already has sou | exception | error | go, wshrouter, routing, conflict |
| cannot bind route %q to link %d (link is not a router) | exception | error | go, wshrouter, routing, link-kind |
| no source in routeannounce | exception | error | go, wshrouter, routing, control-protocol |
| setpeerinfo only valid for proxy connections | exception | error | |
| error validating token: %w | exception | error | auth, jwt, token-validation, rpc |
| no token entry found | exception | error | auth, token, single-use, rpc |
| cannot auth router via token | exception | error | auth, token, router, policy |
| no routeid | exception | error | auth, token, routeid, validation |
| authenticatetokenverify can only be called on root router | exception | error | auth, rpc, router, routing |
| no token in authenticatetoken message | validation | error | auth, validation, empty-input, rpc |
| no wshrpc in context | exception | error | rpc, context, proxy, auth |
| failed to verify token: %w | exception | error | rpc, authentication, network |
| failed to unmarshal response: %w | exception | error | rpc, json, unmarshal |
| no rpccontext in token response | exception | error | authentication, rpc, schema |
| no routeid in token response | exception | error | authentication, routing, rpc |
| authenticatejobmanagerverify can only be called on root rout | exception | error | rpc, routing, authentication |
| no jobid in authenticatejobmanager message | validation | error | validation, rpc, authentication |
| no jobauthtoken in authenticatejobmanager message | validation | error | validation, rpc, authentication |
| failed to get job: %w | exception | error | database, wstore, authentication |
| invalid jobauthtoken | validation | error | authentication, security, secret-mismatch |
| failed to verify job auth token: %w | exception | error | wsh, rpc, network, authentication |
| no context found in jwt token | validation | error | wsh, jwt, authentication |
| invalid context, router cannot have a routeid | validation | error | wsh, jwt, validation |
| invalid context, router cannot have a proc-route | validation | error | wsh, jwt, validation |
| invalid context, must have a routeid | validation | error | wsh, rpc, routing, validation |
| request packets may not have both reqid and resid set | validation | error | wsh, rpc, validation, protocol |
| cancel packets may not have command set | validation | error | wsh, rpc, validation, cancel |
| cancel packets must have reqid or resid set | validation | error | wsh, rpc, validation, cancel |
| cancel packets may not have data set | validation | error | wsh, rpc, validation, cancel |
| command packets may not have resid set | validation | error | wsh, rpc, validation, protocol |
| command packets may not have error set | validation | error | wsh, rpc, validation, error-handling |
| command packets may not have datatype set | validation | error | wsh, rpc, validation, serialization |
| request packets must have resid set | validation | error | wsh, rpc, validation, streaming |
| non-command request packets may not have timeout set | validation | error | wsh, rpc, validation, timeout |
| response packets may not have command set | validation | error | rpc, protocol-validation, packet-validation |
| response packets must have reqid set | validation | error | rpc, protocol-validation, request-correlation |
| response packets may not have timeout set | validation | error | rpc, protocol-validation, timeout |
| invalid packet: must have command, reqid, or resid set | validation | error | rpc, protocol-validation, invalid-packet |
| EC-TIME: timeout waiting for response | error_code | error | rpc, timeout, no-response |
| timeout sending cancel | exception | warning | rpc, timeout, cancellation |
| request already done, cannot send additional response | exception | error | rpc, double-response, lifecycle |
| timeout sending response | exception | warning | rpc, timeout, response-delivery |
| command cannot be empty | validation | error | rpc, invalid-argument, missing-command |
| timeout sending request | exception | error | rpc, timeout, request-send |
| error writing to output (AdaptOutputChToStream): %w | exception | error | go, io, broken-pipe |
| error writing trailing newline to output (AdaptOutputChToStr | exception | error | go, io, broken-pipe |
| error encoding osc message (AdaptMsgChToPty): %w | exception | error | go, encoding, osc, payload-size |
| error writing osc message (AdaptMsgChToPty): %w | exception | error | go, io, pty, broken-pipe |
| oscNum must be 5 characters | validation | error | go, validation, osc |
| input data too large | validation | error | go, limits, osc, payload-size |
| nil message | validation | error | go, nil-pointer, validation |
| error marshalling message to json: %w | exception | error | go, json, serialization |
| socket path must be absolute: %s | exception | error | go, config, unix-socket, validation |
| failed to connect to tcp or unix domain socket: tcp err:%w: | exception | error | go, network, unix-socket, connection |
| error parsing token: %w | exception | error | jwt, token-parse, wsh |
| error getting claims from token | exception | error | jwt, claims, type-assertion, wsh |
| sock claim is missing or invalid | exception | error | jwt, claims, socket, wsh |
| RegisteredDistros not implemented on this system | exception | error | wsl, platform, unsupported |
| DefaultDistro not implemented on this system | exception | error | wsl, platform, unsupported |
| GetDistroCmd not implemented on this system | exception | error | wsl, platform, unsupported |
| GetDistro not implemented on this system | exception | error | wsl, platform, unsupported, connection |
| wsl distro %s not found | exception | error | wsl, windows, distro-not-found, config |
| error checking wsh version: %w | exception | error | wsl, wsh, version-parsing, connserver |
| timeout waiting for connserver to register | exception | error | wsl, wsh, timeout, connserver, rpc |
| cannot update wsh: ssh client is not connected | exception | error | wsl, wsh, not-connected, update |
| error installing wsh to remote: %w | exception | error | wsl, wsh, install, copy-failed |
| ssh client is not connected, cannot install | exception | error | wsl, wsh, not-connected, install |
| error copying wsh binary to remote: %w | exception | error | wsl, wsh, install, copy-failed |
| context timeout | exception | warning | wsl, timeout, context, connection |
| disconnected | exception | error | wsl, connection, disconnected, lifecycle |
| error: %v | exception | error | wsl, connection, connection-error |
| unknown status: %q | exception | error | wsl, connection, status, invariant |
| cannot connect to %q when status is %q | exception | warning | go, connection-state, concurrency, wsl |
| error opening domain socket listener: %w | exception | error | go, domain-socket, wsl, wsh, filesystem |
| error starting conn server: %w | exception | error | go, wsl, wsh, connserver, rpc |
| error installing wsh: %w | exception | error | go, wsl, wsh, install, network |
| error starting conn server (after install): %w | exception | error | go, wsl, wsh, connserver, startup |
| conn server not installed correctly (after install) | exception | error | go, wsl, wsh, install-verification, connserver |
| connection not found: %s | exception | error | go, connection-lookup, configuration, wsl |
| connection error: %s | exception | error | go, connection-state, wsl, error-propagation |
| unknown connection status %q | exception | error | go, state-machine, switch-default, wsl |
| client %q not found | exception | warning | go, connection-lookup, disconnect, lifecycle |
| tab not found: %q | exception | error | sqlite, not-found, waveobj |
| empty object reference | exception | error | waveobj, validation, oref |
ErrNotFound not found | error_code | info | sentinel-error, sqlite, not-found |
| cannot update %T value with empty id | exception | error | validation, waveobj, primary-key |
| cannot insert %T value with empty id | exception | error | validation, waveobj, primary-key |
| too many iterations looking for tab in block parents | exception | error | sqlite, layout, traversal-limit |
| bad block parent oref: %v | exception | error | sqlite, oref, data-corruption |
| bad parent oref type: %v | exception | error | sqlite, oref, object-model |
| ReadStaticFile path must start with 'static/': %w | exception | error | filesystem, static-assets, validation |
| OpenStaticFile path must start with 'static/': %w | exception | error | filesystem, static-assets, validation |
| TermRef not current | exception | error | go, vdom, terminal, io-writer |
| %s environment variable must be set | exception | error | go, environment, cli, configuration |
| failed to resolve %s to absolute path: %w | exception | error | go, path, environment, cli |
| failed to adapt type from %T => %T, input type failed to mar | exception | error | go, json, serialization, generics |
| failed to adapt type from %T => %T: %w | exception | error | go, json, type-mismatch, generics |
| client id cannot be empty | validation | error | go, client, validation, identity |
| client id mismatch: expected %s, got %s | validation | error | go, client, concurrency, identity |
| failed to listen: %v | exception | critical | go, network, tcp, listen, port-in-use |
| client is done | exception | error | go, lifecycle, sse, client-shutdown |
| atom %q not found | validation | error | go, atoms, state, key-not-found |
| Component function cannot b nil | validation | error | go, nil-value, registration, components |
| Component function must be a function | validation | error | go, reflection, type-mismatch, registration |
| Component function must take exactly 1 argument | validation | error | go, reflection, signature, registration |
| Component function must return exactly 1 value | validation | error | go, reflection, signature, return-value |
| Map argument must be map[string]any | validation | error | go, reflection, map-types, signature |
| Component function argument must be map[string]any, struct, | validation | error | go, reflection, signature, parameter-types |
| out parameter must be a pointer, got %v | validation | error | go, reflection, pointer-required, marshaling |
| out parameter must be a pointer to struct, got pointer to %v | validation | error | go, reflection, struct-required, marshaling |
| error setting field %s: %w | exception | error | reflection, type-mismatch, marshaling, go |
| input must be a struct or pointer to struct, got %v | validation | error | reflection, invalid-input, go |
| cannot set value of type %v to field of type %v | exception | error | reflection, type-mismatch, go |
| panic in %s: %w | exception | error | panic, recovery, go |
| panic in %s: %v | exception | error | panic, recovery, go |
| potential path traversal detected for path %s | validation | warning | path, security, path-traversal, go |
| atom %s: in %s: %s | validation | error | validation, serialization, reflection, go |
| atom %s: %s | validation | error | validation, serialization, reflection, go |
| Method not allowed | http | warning | http, method-not-allowed, api |
| Invalid request body: %v | http | warning | http, json, bad-request, api |
| recErr.Error() | http | critical | go, http, panic, internal-server-error |
| Invalid VDOM URL format | http | warning | go, http, url, bad-request |
| Invalid UUID format | http | warning | go, http, uuid, validation |
| Error reading request body: %v | http | error | go, http, request-body, io |
| RPC error: %v | http | error | go, rpc, http, routing |
| err.Error() | http | error | go, websocket, handshake, internal-server-error |
| internal server error: %v | http | critical | go, http, panic, render |
| method not allowed | http | warning | go, http, method-not-allowed |
| failed to read request body: %v | http | error | go, http, request-body, io |
| failed to parse JSON: %v | http | error | go, http, json, validation |
| waveid is required | validation | error | http, validation, missing-field |
| terminput is required | validation | error | http, validation, missing-field |
| streaming not supported | http | critical | sse, streaming, flusher |
-3 suppressed (ERR_ABORTED) Failed to load ${e.validatedURL}: ${e.errorDescription} | console | error | webview, electron, network, load-failed |
| Rename failed: ${errorText} | console | error | rpc, filesystem, rename, preview |
| Delete failed: ${errorText} | console | error | rpc, filesystem, delete, preview |
| Copy failed: | console | error | rpc, filesystem, copy, drag-and-drop, preview |