ErrLookup › Tencent/WeKnora
Tencent/WeKnora
Open-source LLM knowledge platform: turn raw documents into a queryable RAG, an autonomous reasoning agent, and a self-maintaining Wiki. · Go · 1,365 source files
Analyzed at 988cbb0330 on 2026-09-02. 1152 documented errors.
| Code / Message | Type | Severity | Tags |
|---|---|---|---|
| invite code has expired | error_code | error | sql, validation, query-structure |
| join request not found | error_code | error | sql, security, schema-access, validation |
| failed to retrieve: %s | exception | error | sql, security, subquery, validation |
| opensearch: index not found | error_code | error | sql, security, function-call, validation |
2201 opensearch: embedding dimension mismatch | error_code | error | sql, security, subquery, validation |
| opensearch: authentication failed | error_code | error | sql, security, type-cast, validation |
| opensearch: transport error | error_code | error | sql, security, ast, default-deny |
| opensearch: cluster version unsupported | error_code | error | sql, security, ast, default-deny |
| opensearch: invalid index config | error_code | error | sql, security, ast, default-deny, validation |
| opensearch: feature not enabled in this build | error_code | error | sql, security, function-call, schema-access |
| opensearch: batch size exceeds driver cap | error_code | error | |
| opensearch: knn circuit breaker open | error_code | error | |
| invalid retriever type | validation | error | |
| tenant not found | error_code | error | |
| tenant has associated knowledge bases | error_code | error | |
| tenant api key not found | error_code | error | |
| repository: pending invitation already exists | error_code | error | |
| repository: last active owner | error_code | error | |
| sandbox config is being modified by another request | error_code | error | |
| user not found | error_code | error | |
| user already exists | error_code | error | |
| token not found | error_code | error | |
| cannot revoke your own system admin privileges | error_code | error | |
| cannot revoke the last remaining system administrator | error_code | error | |
| user is not a system administrator | error_code | error | |
| wiki page not found | error_code | error | |
| wiki page version conflict | error_code | error | |
| wiki folder not found | error_code | error | |
| model returned invalid suggestion JSON | http | error | |
| model not found | http | error | |
| model ID cannot be empty | validation | error | go, validation, empty-argument, model-service |
| model is currently downloading | http | warning | go, transient-state, model-download, retry |
| model download failed | http | error | go, model-download, provisioning, persistent-failure |
| abnormal model status | http | error | go, data-integrity, enum, state-machine |
| unknown credential field: | validation | error | go, validation, allow-list, credential-management |
| model is not active | http | error | go, model-status, cross-tenant, not-ready |
| organization not found | http | error | |
| permission denied for this organization | http | error | |
| cannot remove organization owner tenant | http | error | |
| cannot change organization owner tenant role | http | error | |
| tenant is not a member of this organization | http | error | |
| invalid role | validation | error | |
| invite code has expired | http | error | |
| invite_code_validity_days must be 0, 1, 7, or 30 | validation | error | |
| organization member limit reached | http | error | |
| member limit cannot be lower than current member count | validation | error | |
| member_limit must be >= 0 | validation | error | validation, organization, go, input-validation |
| pending request already exists | http | warning | duplicate-request, idempotency, organization, go |
| join request not found | http | error | not-found, organization, go, gorm |
| cannot request upgrade to same or lower role | validation | warning | role-permissions, validation, organization, go |
| tenant is already an admin | http | info | role-permissions, organization, go, idempotency |
| request has already been reviewed | http | warning | state-conflict, idempotency, organization, go |
| custom agent configuration is required for agent QA | validation | error | configuration, agent, qa, go |
| summary model (model_id) is not configured in custom agent s | validation | error | configuration, model, agent, go |
| rerank model is not configured: please set rerank_model_id o | validation | error | configuration, rerank, agent, go |
| concurrency must be at least 1 | validation | error | |
| invalid user ID in token | validation | error | |
| refresh token is revoked | validation | error | |
| not a refresh token | validation | error | |
| user not found in context | validation | error | |
| OIDC login is disabled | validation | error | |
| OIDC discovery_url or explicit endpoints are required | validation | error | |
| OIDC discovery document missing required endpoints | validation | error | |
| OIDC token response missing access_token and id_token | exception | error | |
| cannot verify OIDC id_token: no jwks_uri configured | validation | error | |
| OIDC provider returned no user claims | exception | error | oidc, authentication, empty-claims |
| empty JWK modulus or exponent | exception | error | jwks, rsa, oidc, malformed-key |
| invalid JWK exponent value | exception | error | jwks, rsa, exponent, oidc |
| no matching JWKS key for id_token | exception | error | jwks, kid, jwt-verification, oidc |
| id_token missing kid and JWKS contains multiple RSA signing | exception | error | jwks, kid, jwt-verification, ambiguous-key |
| JWKS document contains no keys | exception | error | jwks, oidc, empty-keys, configuration |
| cannot verify OIDC id_token: issuer is not configured | validation | error | oidc, configuration, issuer, missing-config |
| cannot verify OIDC id_token: client_id is not configured | validation | error | oidc, configuration, client-id, audience |
| id_token missing sub claim | exception | error | oidc, jwt, authentication, missing-claim |
| invalid favorite resource type | validation | warning | validation, favorites, sentinel-error |
| favorite resource id is required | validation | warning | validation, favorites, missing-argument, sentinel-error |
| concurrent wiki task active | exception | info | concurrency, async-tasks, locking, wiki |
| enqueue wiki ingest trigger: task enqueuer is nil | exception | error | dependency-injection, async-tasks, nil-check, wiki |
| LLM returned nil response | exception | error | llm, nil-response, retry, wiki |
| wiki page slug is required | validation | warning | validation, wiki, missing-field |
| knowledge_base_id is required | validation | warning | validation, wiki, missing-field |
| cannot revert to the current version | validation | warning | validation, wiki, revert, client-error |
| wiki graph request is required | validation | warning | validation, nil-check, wiki, missing-argument |
| ego graph requires a center slug | validation | error | |
| folder name is required | validation | error | |
| cannot move a folder into itself | validation | error | |
| cannot move a folder into its own descendant | validation | error | |
| redis lock ownership lost | exception | error | |
| redis client is required | validation | error | |
| redis lock key and token are required | validation | error | |
| redis lock callback is required | validation | error | |
| redis lock renewal interval must be positive and shorter tha | validation | error | |
| channel is disabled | error_code | error | |
| anydoc: binding not built into this binary | error_code | error | |
| unsupported transport type | error_code | error | |
| client not connected | error_code | error | |
| client already connected | error_code | error | |
| MCP initialize handshake failed | error_code | error | |
| tool not found | error_code | error | |
| resource not found | error_code | error | |
| invalid response from server | error_code | error | |
| operation timed out | error_code | error | |
| connection closed | error_code | error | |
| authorization server returned an empty access token | exception | error | |
| missing external user id header | validation | error | |
| invalid external user id | validation | error | |
| invalid external user token | validation | error | |
| missing external user token | validation | error | |
| external user token secret is not configured | validation | error | |
| missing expiration | validation | error | |
| token not yet valid | validation | error | auth, jwt, clock-skew |
| missing subject | validation | error | auth, jwt, validation |
| empty external user id | validation | error | auth, validation, user-id |
| external user id contains invalid characters | validation | error | auth, validation, input-sanitization |
| rbac: resource not found | error_code | warning | rbac, not-found, authorization |
| rbac: ownership or role insufficient | error_code | warning | rbac, authorization, forbidden, ownership |
| sandbox: config is missing required fields | validation | error | sandbox, config, validation |
| cube remote client config is required | validation | error | sandbox, nil-config, constructor |
| cube api: create sandbox: empty sandboxID | exception | error | sandbox, api-response, invariant-violation |
| sandbox: docker backend is disabled; enable it in System Set | error_code | error | sandbox, docker, feature-flag, config |
| sandbox: docker client requires a config | validation | error | go, sandbox, docker, config, nil-pointer |
| sandbox: docker backend requires an image | validation | error | go, sandbox, docker, config, missing-image |
| daemon returned no container state | exception | error | go, sandbox, docker, daemon, inspect |
| e2b remote client config is required | validation | error | go, sandbox, e2b, config, nil-pointer |
| E2BAPIKey is required for the E2B backend | validation | error | go, sandbox, e2b, config, api-key, credentials |
| E2B timeout must be at least one second | validation | error | go, sandbox, e2b, timeout, validation |
| E2B backend does not support NeverTimeout | validation | error | go, sandbox, e2b, timeout, unsupported-feature |
| sandbox: remote sandbox has no template configured | validation | error | go, sandbox, e2b, template, config |
| sandbox is disabled | error_code | error | |
| execution timed out | error_code | error | |
| script not found | error_code | error | |
| invalid script | error_code | error | go, sandbox, docker, daemon, polling |
| script execution failed | error_code | error | |
| security validation failed | error_code | error | |
| script contains dangerous command | error_code | error | |
| argument injection detected | error_code | error | |
| stdin injection detected | error_code | error | |
| config is nil | validation | error | |
| invalid sandbox type | validation | error | go, sandbox, configuration, validation |
| timeout cannot be negative | validation | error | go, sandbox, configuration, validation, timeout |
| memory limit cannot be negative | validation | error | go, sandbox, configuration, validation, memory |
| CPU limit cannot be negative | validation | error | go, sandbox, configuration, validation, cpu |
| sandbox binding requires tenant and session | validation | error | go, sandbox, multi-tenancy, validation |
| sandbox binding session must not contain braces | validation | error | go, sandbox, validation, session-id |
| sandbox binding session must not contain control characters | validation | error | go, sandbox, validation, session-id |
| sandbox session no longer exists | error_code | warning | go, sandbox, lifecycle, sentinel-error, session-deleted |
| WEKNORA_REDIS_NAMESPACE must not contain braces | validation | error | go, sandbox, redis, configuration, env-var |
| WEKNORA_REDIS_NAMESPACE must not contain control characters | validation | error | go, sandbox, redis, configuration, env-var |
| failed to read skill directory %s: %w | error_code | error | |
| skill not found: %s | error_code | error | |
| skill not found in %s: %s | error_code | error | |
| failed to read skill file: %w | error_code | error | |
| invalid file path: %s | validation | error | |
| file path outside skill directory: %s | validation | error | |
| failed to read file: %w | error_code | error | |
| failed to list skill files: %w | error_code | error | |
| failed to discover skills: %w | error_code | error | |
| skills are not enabled | error_code | error | |
| skill not allowed: %s | error_code | error | |
| sandbox is not configured | error_code | error | go, sandbox, configuration, dependency-injection |
| failed to load script: %w | error_code | error | go, filesystem, path, skill-script |
| file is not an executable script: %s | validation | error | go, script, validation, file-type |
| script_path %q is a session workspace file; this skill is no | error_code | error | go, workspace, image, skill-install |
| cannot run workspace script %q for skill %q: no installed sk | error_code | error | go, image, skill-dir, validation |
| skill name is %d characters; maximum is %d | validation | error | go, validation, skill-metadata, frontmatter |
| skill name cannot contain reserved word: %s | validation | error | |
| skill description is %d characters; maximum is %d | validation | error | |
| error reading SKILL.md: %w | error_code | error | |
| failed to parse YAML frontmatter: %w | error_code | error | |
| skill validation failed: %w | validation | error | |
| file not found in skill %s: %s | error_code | error | |
| skill not found: %s | error_code | error | |
| skill file path is required | validation | error | |
| invalid skill file path: %s | validation | error | |
| error iterating schema rows: %w | exception | error | |
| failed to get row count: %w | exception | error | |
| knowledge service returned an empty result | exception | error | |
| no schema info found | exception | error | |
| missing sql parameter | validation | error | |
| no effective Agent knowledge scope is available | exception | error | |
| validation failed: %s | validation | error | |
| missing ids | validation | error | |
| FAQ entry is not accessible: %v | exception | error | |
| failed to get document info: %v | exception | error | |
| all document retrievals failed | exception | error | go, agent-tools, document-retrieval, multi-error |
| missing query parameter | validation | error | go, agent-tools, input-validation, missing-parameter |
| no search targets available | exception | error | go, agent-tools, knowledge-search, configuration |
| no queries provided | validation | error | go, agent-tools, knowledge-search, input-validation |
| rerank call failed: %w | exception | error | go, knowledge-search, rerank, network, api-call |
| missing id parameter | validation | error | go, agent-tools, input-validation, missing-parameter |
| chunk query returned no data | exception | error | go, agent-tools, knowledge-chunks, empty-result, data-layer |
| knowledge_base_ids is required | validation | error | go, agent-tools, knowledge-graph, input-validation |
| too many KB IDs | validation | error | go, agent-tools, knowledge-graph, input-validation, limit-exceeded |
| invalid query | validation | error | go, agent-tools, knowledge-graph, input-validation |
| failed to get knowledge base: %v | exception | error | |
| graph extraction not configured | exception | error | |
| query failed: %v | exception | error | |
| tool not found: %s | exception | error | |
| old_string is required; copy the exact text to change, inclu | validation | error | |
| old_string and new_string are identical; no change would be | validation | error | edit-tool, no-op, validation, go |
| old_string was not found in the file. Copy the exact text (i | validation | error | edit-tool, string-match, whitespace, go |
| old_string matched %d times. Include more surrounding contex | validation | error | edit-tool, ambiguity, string-match, go |
| knowledge_id is required | validation | error | knowledge-base, missing-parameter, validation, go |
| knowledge service is unavailable | exception | error | knowledge-base, dependency-injection, nil-dependency, go |
| empty result | exception | error | |
| document %s not found: %w | exception | error | |
| knowledge base %s is not within the current Agent scope | exception | error | |
| failed to validate document scope: %w | exception | error | |
| document %s is not within the current @mention scope | exception | error | |
| chunk_id is required | validation | error | |
| chunk service is unavailable | exception | error | |
| chunk %s not found: %w | exception | error | |
| chunk %s is disabled | exception | error | |
| failed to validate chunk scope: %w | exception | error | |
| chunk %s is not within the current @mention scope | exception | error | |
| graph result document %s belongs to knowledge base %s, expec | exception | error | |
| knowledge service is unavailable for tag-scoped graph filter | exception | error | |
| failed to validate graph result scope: %w | exception | error | |
| missing query | validation | error | |
| no message service | exception | error | |
| missing query | validation | error | validation, memory, tool-input |
| no memory service | exception | error | dependency-injection, memory, configuration |
| invalid thought: must be a non-empty string | validation | error | validation, sequential-thinking, tool-input |
| invalid thoughtNumber: must be >= 1 | validation | error | validation, sequential-thinking, tool-input |
| invalid totalThoughts: must be >= 1 | validation | error | validation, sequential-thinking, tool-input |
| args must be a string or an array of strings: %w | validation | error | json, unmarshal, tool-input |
| this tool is not bound to a skill directory | exception | error | configuration, path-safety, skill |
| path is required; write a file inside %s | validation | error | validation, path-safety, skill |
| path %q is not a valid file path | validation | warning | path-safety, security, validation |
| path %q is outside this install's skill directory (%s); an i | exception | error | path-traversal, security, sandbox |
| file_path belongs to skill %q; call read_skill(skill_name=%q | exception | error | |
| file_path must be relative inside the skill (e.g. scripts/ge | validation | error | |
| chat model not available for web_fetch summary | exception | error | |
| query parameter is required | validation | error | |
| workspace ID not found in context | exception | error | |
| web search failed: %w | exception | error | |
| empty result | exception | error | |
| load incoming page %s: %w | exception | error | |
| update incoming page %s: %w | exception | error | |
| failed to roll back incoming pages: %s | exception | error | |
| knowledge service returned an empty result | exception | error | go, knowledge-service, not-found, agent-tools |
| slug is required | validation | error | go, validation, wiki, argument-error |
| failed to resolve wiki page %s in knowledge base %s: %w | exception | error | go, wiki, error-wrapping, repository |
| wiki page %s returned knowledge base %s while resolving allo | exception | error | go, wiki, data-consistency, authorization |
| %w: %s | exception | error | go, wiki, not-found, sentinel-error |
| %w: slug %s belongs to %s | exception | error | go, wiki, ambiguity, slug-conflict |
| cannot choose a knowledge base for new wiki page %s: server | exception | error | go, wiki, ambiguity, create, provenance |
| cannot choose a knowledge base for new wiki page %s from %d | exception | error | go, wiki, ambiguity, create, validation |
| invalid search result format | exception | error | go, elasticsearch, migration, response-parsing |
| invalid hit object format | exception | error | go, elasticsearch, migration, response-parsing |
| hit missing _source field | exception | error | |
| source index data missing chunk_id field | exception | error | |
| source chunk ID %s not found in mapping | exception | error | |
| source index data missing knowledge_id field | exception | error | |
| source knowledge ID %s not found in mapping | exception | error | |
| elasticsearch update_by_query failed with status: %d | exception | error | |
| empty embedding vector for chunk ID: %s | exception | error | |
| failed to create op: %w | exception | error | |
| failed to do bulk: %w | exception | error | elasticsearch, go, bulk-index, network |
| failed to delete by query: %w | exception | error | elasticsearch, go, delete-by-query, network |
| invalid retriever type: %v | validation | error | elasticsearch, go, invalid-argument, retriever |
| failed to marshal query embedding: %w | exception | error | elasticsearch, go, json-marshal, vector-search |
| milvus filter condition is nil | validation | error | milvus, go, filter, validation |
| unsupported comparison operator: %s | validation | error | milvus, go, filter, unsupported-operator |
| invalid logical condition value type | validation | error | milvus, go, filter, type-assertion |
| empty logical condition | validation | error | milvus, filter, validation |
| unsupported operator: %v | validation | error | milvus, filter, unsupported-operator |
| in operator value must be a slice with at least one value: % | validation | error | milvus, filter, type-error |
| between operator value must be a slice with two elements: %v | validation | error | milvus, filter, type-error |
| logical operator %s requires an array of conditions | validation | error | milvus, json, unmarshal |
| failed to marshal condition at index %d: %w | exception | error | milvus, json, marshal |
| failed to unmarshal condition at index %d: %w | exception | error | milvus, json, unmarshal |
| failed to check collection existence: %w | exception | error | |
| failed to create collection: %w | exception | error | |
| failed to load collection: %w | exception | error | |
| failed to await load collection: %w | exception | error | |
| empty embedding vector for chunk ID: %s | exception | error | |
| failed to batch save (dimension %d): %w | exception | error | |
| failed to delete by chunk IDs: %w | exception | error | |
| failed to delete by knowledge IDs: %w | exception | error | |
| invalid source path: %w | validation | error | |
| failed to copy file in KS3: %w | exception | error | |
| invalid file path: %w | validation | error | ks3, object-storage, path-traversal, input-validation, go |
| failed to get file from KS3: %w | exception | error | ks3, object-storage, network, aws-sdk, go |
| failed to delete file from KS3: %w | exception | error | ks3, object-storage, permissions, network, go |
| failed to generate KS3 presigned URL: %w | exception | error | ks3, presigned-url, credentials, aws-sdk, go |
| storage directory not accessible: %w | exception | error | filesystem, local-storage, configuration, deployment, go |
| storage path is not a directory: %s | exception | error | filesystem, local-storage, configuration, deployment, go |
| invalid path: %w | validation | warning | path-traversal, security, local-storage, input-validation, go |
| failed to create directory: %w | exception | error | filesystem, permissions, local-storage, deployment, go |
| failed to open file: %w | exception | error | go, file-io, upload, filesystem |
| failed to create file: %w | exception | error | go, file-io, filesystem, permissions |
| failed to save file: %w | exception | error | go, file-io, io, disk |
| invalid file path: %w | validation | error | go, path-traversal, security, validation |
| failed to delete file: %w | exception | error | go, file-io, filesystem, deletion |
| local file service cannot copy %q: %w | validation | error | go, copy, storage-backend, unsupported-operation |
| invalid source path: %w | validation | error | go, path-traversal, security, copy |
| failed to open source file: %w | exception | error | filesystem, file-not-found, io, permissions |
| failed to create destination file: %w | exception | error | filesystem, disk-full, permissions, io |
| failed to copy file content: %w | exception | error | filesystem, io, partial-write, disk-full |
| invalid file name: %w | validation | error | validation, filename, path-traversal, security |
| failed to write file: %w | exception | error | filesystem, io, storage, disk-full |
| unsafe MinIO endpoint: %w | validation | error | security, ssrf, configuration, minio |
| failed to initialize MinIO client: %w | exception | error | minio, configuration, sdk-initialization, env-var |
| failed to check bucket: %w | exception | error | minio, network, tls, authentication, bucket |
| failed to create bucket: %w | exception | error | |
| bucket %q does not exist | exception | error | |
| invalid MinIO file path: %s | validation | error | |
| bucket mismatch in path: got %s, want %s | validation | error | |
| invalid file path: %w | validation | error | |
| failed to open file: %w | exception | error | |
| failed to upload file to MinIO: %w | exception | error | |
| failed to get file from MinIO: %w | exception | error | |
| failed to delete file: %w | exception | error | |
| minio copy rejected source %q: %w | validation | error | |
| failed to copy file in MinIO: %w | exception | error | |
| invalid file name: %w | validation | error | |
| failed to upload bytes to MinIO: %w | exception | error | |
| failed to generate presigned URL: %w | exception | error | |
| unsafe OBS endpoint: %w | validation | error | |
| OBS connectivity check failed: %w | exception | error | |
| invalid OBS file path: %s | validation | error | |
| failed to open file: %w | exception | error | multipart, file-upload, io |
| failed to upload file to OBS: %w | exception | error | obs, s3, upload, network |
| failed to get file from OBS: %w | exception | error | obs, s3, download, network |
| failed to delete file from OBS: %w | exception | error | obs, s3, delete, permissions |
| obs copy rejected source %q: %w | validation | error | obs, copy, cross-backend, validation |
| failed to copy file in OBS: %w | exception | error | obs, s3, copy, network |
| failed to upload bytes to OBS: %w | exception | error | obs, s3, upload, acl |
| unsafe OSS endpoint: %w | validation | error | oss, aliyun, ssrf, security, config |
| failed to check OSS bucket: %w | exception | error | |
| failed to create OSS bucket: %w | exception | error | |
| failed to initialize OSS temp client: %w | exception | error | |
| bucket %q does not exist or is not accessible | validation | error | |
| invalid OSS file path: %s | validation | error | oss, path-validation, input-validation |
| bucket %q does not exist | validation | critical | oss, configuration, missing-resource, bucket |
| failed to open file: %w | exception | error | oss, file-upload, multipart, io |
| failed to upload file to OSS (multipart): %w | exception | error | oss, upload, multipart, alibaba-cloud, network |
| failed to upload file to OSS: %w | exception | error | oss, upload, putobject, alibaba-cloud, network |
| invalid file name: %w | validation | error | oss, validation, filename, sanitization |
| failed to upload bytes to OSS: %w | exception | error | oss, upload, putobject, bytes, alibaba-cloud |
| oss copy rejected source %q: %w | validation | error | oss, copy, validation, path-parsing |
| invalid source path: %w | validation | error | oss, copy, validation, path-traversal, security |
| failed to copy file in OSS: %w | exception | error | oss, copy, copyobject, alibaba-cloud, permissions |
| invalid file path: %w | validation | error | oss, download, validation, path-traversal, security |
| failed to get file from OSS: %w | exception | error | oss, download, getobject, alibaba-cloud, permissions |
| failed to delete file from OSS: %w | exception | error | oss, storage, delete, wrap |
| failed to generate OSS presigned URL: %w | exception | error | oss, presigned-url, signing, network |
| register stored resource: %w | exception | error | storage, catalog, transaction, compensation |
| bind stored resource: %w | exception | error | catalog, bind, transaction, rollback |
| bind copied resource: %w | exception | error | catalog, bind, copy, rollback |
| unsafe S3 endpoint: %w | validation | error | security, ssrf, s3, config |
| S3 access key and secret key must be provided together | validation | error | s3, config, credentials, validation |
| failed to load AWS config: %w | exception | error | aws, config, credentials, s3 |
| failed to check bucket: %w | exception | error | s3, bucket, network, startup |
| failed to create bucket: %w | exception | error | |
| bucket %q does not exist | exception | error | |
| invalid S3 file path: %s | validation | error | |
| bucket mismatch in path: got %s, want %s | validation | error | |
| invalid file path: %w | validation | error | |
| failed to open file: %w | exception | error | |
| failed to upload file to S3: %w | exception | error | |
| failed to get file from S3: %w | exception | error | aws, s3, network, storage |
| failed to delete file: %w | exception | error | aws, s3, permissions, storage |
| s3 copy rejected source %q: %w | validation | error | aws, s3, validation, cross-backend |
| failed to copy file in S3: %w | exception | error | aws, s3, permissions, copy |
| invalid file name: %w | validation | warning | validation, filename, s3, input |
| failed to upload bytes to S3: %w | exception | error | aws, s3, upload, network |
| failed to generate presigned URL: %w | exception | error | aws, s3, presign, credentials |
| unsafe TOS endpoint: %w | validation | error | security, ssrf, tos, configuration |
| failed to initialize TOS client: %w | exception | error | tos, sdk, configuration, initialization |
| failed to initialize TOS temp client: %w | exception | error | tos, sdk, configuration, temp-bucket |
| failed to create TOS bucket: %w | exception | error | |
| failed to check TOS bucket: %w | exception | error | |
| invalid TOS file path: %s | validation | error | |
| failed to open file: %w | exception | error | |
| failed to upload file to TOS: %w | exception | error | |
| failed to marshal manual process payload: %w | exception | error | |
| failed to enqueue manual process task: %w | exception | error | |
| failed to ensure FAQ knowledge: %w | exception | error | database, faq, go, wrapped-error |
| failed to get embedding model: %w | exception | error | embedding, model-config, faq, go |
| failed to set FAQ metadata: %w | exception | error | json, serialization, faq, go |
| failed to create chunk: %w | exception | error | database, persistence, faq, go |
| failed to index chunk: %w | exception | error | embedding, timeout, indexing, faq, go |
| failed to update chunk status: %w | exception | error | database, state-inconsistency, faq, go |
| failed to list FAQ chunks: %w | exception | error | database, export, faq, query-timeout |
| failed to build tag map: %w | exception | error | database, tags, export, faq |
| failed to check FAQ question duplicate: %w | exception | error | |
| failed to find tag by seq_id %d: %w | exception | error | |
| failed to resolve tag by name '%s': %w | exception | error | |
| failed to get or create default untagged tag: %w | exception | error | |
| failed to ensure FAQ knowledge: %w | exception | error | |
| failed to initialize task: %w | exception | error | |
| failed to marshal entries: %w | exception | error | |
| failed to upload entries: %w | exception | error | |
| failed to marshal task payload: %w | exception | error | |
| failed to enqueue task: %w | exception | error | |
| failed to save CSV file: %w | exception | error | |
| failed to get file URL: %w | exception | error | |
| failed to get FAQ knowledge: %w | exception | error | |
| failed to set FAQ import result: %w | exception | error | |
| failed to update knowledge with import result: %w | exception | error | |
| 条目不能为空 | validation | error | |
| 标准问不能为空 | validation | error | |
| 答案不能为空 | validation | error | |
| 答案不能全为空 | validation | error | |
| failed to list existing FAQ chunks: %w | exception | error | database, faq-import, repository |
| failed to get knowledge: %w | exception | error | database, faq-import, replace-mode |
| failed to list existing chunks: %w | exception | error | database, faq-import, replace-mode |
| panic during FAQ import: %v | exception | critical | panic, faq-import, bug |
| failed to get embedding model: %w | exception | error | configuration, embedding-model, faq-import |
| failed to calculate replace operations: %w | exception | error | faq-import, replace-mode, error-wrapping |
| failed to delete chunks: %w | exception | error | database, faq-import, delete |
| failed to delete chunk vectors: %w | exception | error | vector-store, faq-import, indexing |
| failed to get FAQ import progress from Redis: %w | exception | error | redis, faq-import, progress |
| failed to unmarshal FAQ import progress: %w | exception | warning | redis, json, faq-import, schema-migration |
| failed to list knowledge: %w | exception | error | |
| failed to parse FAQ import result: %w | exception | error | |
| failed to update knowledge: %w | exception | error | |
| verify summary fallback freshness: %w | exception | error | |
| save terminal summary fallback: %w | exception | error | |
| summary generation exhausted retries: %w | exception | error | |
| get chat model: %w | exception | error | |
| failed to update knowledge: %w | exception | error | |
| verify summary freshness: %w | exception | error | |
| failed to create summary chunk: %w | exception | error | |
| failed to get tenant info: %w | exception | error | |
| failed to init retrieve engine: %w | exception | error | |
| failed to get embedding model: %w | exception | error | |
| failed to index summary chunk: %w | exception | error | |
| generate questions prompt not configured | exception | error | |
| failed to get chat model: %w | exception | error | |
| failed to index questions: %w | exception | error | embedding, vector-store, indexing, batch-write |
| failed to generate questions: %w | exception | error | llm, api-error, network, retry |
| questions can only be generated for text chunks | validation | error | |
| summary model is required for question generation | validation | error | |
| summary model is not configured | validation | error | |
| failed to download file from URL: %w | exception | error | |
| failed to save downloaded file: %w | exception | error | |
| audio transcription failed: %w | exception | error | |
| docreader call timeout after %s: %w | exception | error | |
| fmt.Errorf(format, args...) (dynamic message) | exception | error | |
| knowledge %s: %w | exception | error | |
| %w: batch reparse submitted %d item(s) and failed %d: %w | exception | error | |
| tenant repository is unavailable | exception | error | |
| MCP service not found | exception | error | |
| builtin MCP services cannot have credentials modified | validation | error | |
| unknown credential field: %s | validation | error | |
| failed to update MCP service: %w | exception | error | |
| failed to get MCP service: %w | exception | error | |
| failed to get MCP client: %w | exception | error | mcp, client-connection, network |
| failed to list resources: %w | exception | error | mcp, resources, rpc |
| mcp service not found | exception | error | mcp, not-found, validation |
| tool_name is required | validation | error | validation, mcp, missing-parameter |
| no chat model available for memory extraction; configure one | exception | error | memory, configuration, model |
| extraction model returned no usable output within %d tokens; | exception | error | memory, model, token-budget |
| check forgotten memory: %w | exception | error | memory, database, tombstone |
| check forgotten source: %w | exception | error | memory, database, tombstone |
| ensure memory subject: %w | exception | error | memory, database, write |
| find conflicting memory: %w | exception | error | database, memory, repository |
| create memory item: %w | exception | error | database, memory, insert |
| scan for duplicate memory: %w | exception | error | database, memory, deduplication |
| failed to get tenant: %w | exception | error | tenant, database, context |
| KB hybrid search failed: %w | exception | error | knowledge-base, vector-search, search |
| failed to get messages by knowledge IDs: %w | exception | error | database, search, knowledge-base |
| decode suggestion JSON: %w | exception | warning | llm, json, parsing |
| %s failed SSRF validation: %w | validation | error | ssrf, security, validation, url |
| resource registration requires tenant and physical path | validation | error | validation, resource, tenant |
| resource physical path has unsupported provider scheme | validation | error | validation, resource, storage, scheme |
| failed to allocate unique resource handle | exception | error | resource-catalog, uniqueness, collision |
| invalid resource reference | validation | error | input-validation, resource-reference |
| resource not found | exception | error | not-found, resource-catalog |
| resource binding requires owner type and id | validation | error | input-validation, binding |
| resource release requires owner type and id | validation | error | input-validation, release |
| failed to allocate unique resource access token | exception | error | access-token, uniqueness, entropy |
| schedule attachment parsing: %w | exception | error | asynq, task-queue, redis |
| attachment not found | exception | error | not-found, temporary-document, scoping |
| open source file: %w | exception | error | file-storage, parsing, async-worker |
| read source file: %w | exception | error | io-error, file-storage, parsing |
| audio transcription model is not configured | exception | error | audio, asr, missing-config, validation |
| load ASR model: %w | exception | error | audio, asr, model-not-found, wrap |
| transcribe audio: %w | exception | error | audio, asr, transcription-failure, upstream |
| parse document: %w | exception | error | parsing, document, unsupported-format, reader |
| a message can use at most %d attachments | validation | error | validation, limit, attachments |
| attachment %s was not found in this session | exception | error | not-found, session-scope, attachment |
| attachment %s failed to parse: %s | exception | error | parsing, document, attachment-failed, status |
| attachment %s is still being processed | exception | warning | async, race-condition, attachment-processing |
ErrNamedSandboxBackendUnsupported %w | exception | error | sandbox, validation, unsupported-value, config |
| sandbox: provider %q does not expose templates | exception | error | |
| sandbox: provider %q returned no standard template | exception | error | |
| list configs: %w | exception | error | |
ErrSandboxInventoryUnverifiable %w: %v | exception | error | |
ErrSkillSnapshotReleaseFailed %w: list snapshots: %v | exception | error | |
| snapshot delete is unavailable | exception | error | |
| sandbox: resolve config %q: missing workspace context | exception | error | |
| sandbox: resolve config %q: per-tenant resolver unavailable | exception | error | |
ErrSkillBundleInvalid %w: archive is too large | validation | error | |
| failed to decode JWKS document: %w | exception | error | |
| unexpected id_token signing method: %v | exception | error | |
| id_token verification failed: %w | exception | error | |
| web search config is required | exception | error | |
| web search failed: %w | exception | error | |
| workspace ID not found in context | exception | error | |
| failed to load web search provider %s: %w | exception | error | |
| web search provider not found: %s | exception | error | |
| failed to create provider %s (%s): %w | exception | error | |
| web search provider %s is not available: %w | exception | error | |
| no web search provider configured | exception | error | |
| web search config is required for RAG compression | exception | error | |
| embedding_model_id is required for RAG compression | exception | error | |
| failed to create temporary knowledge base: %w | exception | error | |
| tenant ID is required | exception | error | |
| invalid provider type: %s | exception | error | |
| web search provider not found | exception | error | |
| unknown credential field: %s | exception | error | |
| API key is required for Bing provider | exception | error | |
| API key is required for Google provider | exception | error | |
| engine ID is required for Google provider | exception | error | |
| API key is required for Tavily provider | exception | error | |
| API key is required for Ollama provider | exception | error | validation, web-search, api-key, config |
| API key is required for Baidu provider | exception | error | validation, web-search, api-key, baidu |
| API key is required for Exa provider | exception | error | validation, web-search, api-key, exa |
| failed to delete Redis key: %w | exception | error | redis, cleanup, network, state |
| app_id is required | exception | error | validation, weknora-cloud, credentials, input-validation |
| app_secret is required | exception | error | validation, weknora-cloud, credentials, input-validation |
| credential verification failed: %w | exception | error | weknora-cloud, credentials, http, verification |
| create verification request failed: %w | exception | error | weknora-cloud, http, url, config |
| service unreachable: %w | exception | error | network, weknora-cloud, http, timeout, ssrf |
| invalid APPID or APPSECRET (HTTP %d) | exception | error | weknora-cloud, authentication, credentials, http-401, http-403 |
| invalid response status code: %d | exception | error | |
| tenant repository is required | exception | error | |
| enqueue wiki ingest pending op: %w | exception | error | |
| marshal wiki ingest pending op: %w | exception | error | |
| marshal wiki ingest trigger: %w | exception | error | |
| update wiki page meta: %w | exception | error | |
| get existing page: %w | exception | error | |
| update auto-linked content: %w | exception | error | |
| list wiki page revisions: %w | exception | error | |
| load index page: %w | exception | error | |
| invalid cursor %q | validation | warning | pagination, validation, cursor |
| list %s pages: %w | exception | error | database, persistence, wrapped-error |
| ego center slug %q not found | validation | error | graph, slug-not-found, validation |
| get knowledge base: %w | exception | error | knowledge-base, not-found, wrapped-error |
| create default %s page: %w | exception | error | database, persistence, race-condition |
| create wiki page issue: %w | exception | error | database, persistence, wrapped-error |
| wiki page references unknown folder %q | validation | error | referential-integrity, folder, validation |
| resolve page folder: %w | exception | error | database, wrapped-error, folder |
| folder name %q must not contain a path separator | validation | warning | validation, folder, input-sanitization |
| create wiki folder: %w | exception | error | database, folder, wrapped-error |
| create wiki folder %q: %w | exception | error | |
| move wiki page: %w | exception | error | |
| unsupported engine type: %s | validation | error | |
| %s failed SSRF validation: %w | validation | error | |
| vector store engine %q has no SSRF address policy | validation | error | |
| create opensearch client: %w | exception | error | |
| create opensearch repository: %w | exception | error | |
| custom postgres connections not yet supported; use use_defau | validation | error | |
| elasticsearch address failed SSRF validation: %w | validation | error | |
| create elasticsearch v8 client: %w | exception | error | |
| create elasticsearch v7 client: %w | exception | error | elasticsearch, client-init, url-parse, network |
| create qdrant client: %w | exception | error | qdrant, grpc, client-init, config |
| create milvus client: %w | exception | error | milvus, client-init, grpc, network |
| create weaviate client: %w | exception | error | weaviate, client-init, config |
| doris connection requires addr (host:port) | validation | error | doris, config-validation, missing-config |
| doris connection requires database | validation | error | doris, config-validation, missing-config |
| create doris client: %w | exception | error | doris, mysql, dsn, sql-open, config |
| create tencent vectordb client: %w | exception | error | tencent-vectordb, client-init, credentials, config |
| %w: config is nil | validation | error | config-validation, nil-pointer, sentinel-error, datasource |
| marshal credentials: %w | exception | error | |
| parse ima credentials: %w | validation | error | |
| %w: client_id is required | validation | error | |
| %w: api_key is required | validation | error | |
| rate limiter: %w | exception | error | |
| marshal request body: %w | exception | error | |
| create request: %w | exception | error | |
| read response: %w | exception | error | |
| %w: %s | http | error | |
| rate limited: %s | http | warning | notion, rate-limit, http-429, retry, api |
| server error %d: %s | http | error | notion, http-5xx, server-error, retry, network |
| unexpected status %d: %s | http | error | notion, http-status, api-error, validation |
| %w: %v | http | error | notion, fetch-failed, sentinel-error, network, retry-exhausted |
| unmarshal page: %w | exception | error | notion, json, unmarshal, schema, api |
| unmarshal database: %w | exception | error | notion, json, unmarshal, database, schema |
| unmarshal data_sources: %w | exception | error | notion, json, unmarshal, data-source, api-version |
| unmarshal data_source: %w | exception | error | notion, json, unmarshal, data-source, schema |
| get block children for %s: %w | exception | error | notion, block-children, api-error, permissions, wrapped-error |
| unmarshal block children response: %w | exception | error | notion, json, unmarshal, pagination, schema |
| unmarshal blocks: %w | exception | error | notion, json-unmarshal, schema-mismatch, api-response |
| query database %s: not a data_source (%v) and not a database | exception | error | notion, api-request, id-resolution, permissions |
| database %s has no data sources | exception | error | notion, database, api-versioning, data-source |
| unmarshal block: %w | exception | error | notion, json, unmarshal, http |
| attachment URL rejected: %w | validation | error | security, ssrf, download, notion |
| create download request: %w | exception | error | http, url, download, notion |
| download failed with status %d | http | error | http, download, s3, notion, retry |
| file exceeds maximum download size (%d MB) | exception | warning | notion, file-size-limit, attachment-download |
| download file: %w | exception | error | notion, http, network, download |
| paginate %s: %w | exception | error | notion, pagination, api-error |
| unmarshal paginated response: %w | exception | error | notion, json, unmarshal, pagination |
| unmarshal page results: %w | exception | error | notion, json, schema, unmarshal |
| search notion pages: %w | exception | error | notion, search, resource-discovery |
| no resource IDs configured | validation | error | notion, configuration, incremental-sync |
| %w: missing api_key | validation | error | notion, credentials, configuration, validation |
| %w: api_key must be a non-empty string | validation | error | notion, credentials, configuration, validation |
| URL rejected: %w | exception | error | rss, ssrf, security, url-validation |
| invalid URL: %w | exception | error | go, url-parsing, rss, config |
| fetch failed: %w | exception | error | network, http, go, timeout, dns |
| HTTP %d %s | http | error | http, network, rss, status-code |
| read body failed: %w | exception | error | network, http, io, timeout |
| readability parse: %w | exception | warning | html, parsing, rss, readability |
| no readable content extracted | exception | warning | readability, html, rss, content-extraction |
| render article html: %w | exception | error | html, rendering, readability, rss |
| fetch feed %s: %w | exception | error | network, http, validation, rss, config |
| parse feed %s: %w | exception | error | xml, parsing, rss, validation |
| all feeds failed: %s | exception | critical | network, sync, rss, availability |
ErrInvalidConfig %w: config is nil | validation | error | go, config, rss, nil-config |
| marshal credentials: %w | exception | error | go, json, serialization, rss |
| parse rss credentials: %w | validation | error | go, json, credentials, rss |
ErrInvalidCredentials %w: feed_urls is required | validation | error | go, validation, rss, missing-config |
| create request: %w | exception | error | go, http, url, yuque |
| execute request: %w | exception | error | go, network, http, yuque, retry |
| read response body: %w | exception | error | go, network, http, io, yuque |
| yuque api error: status=%d msg=%s | http | error | api-error, http-4xx, yuque, resource-not-found |
| yuque api error: status=%d body=%s | http | error | api-error, http-4xx, yuque, non-json-response |
| decode response: %w | exception | error | json-decode, type-mismatch, yuque, schema-drift |
| yuque connection failed: %w | exception | error | connection-validation, yuque, credentials, config |
| get current user: %w | exception | error | yuque, current-user, credentials, resource-listing |
| list team repos: %w | exception | error | yuque, api-error, authentication, connector |
| list personal repos: %w | exception | error | yuque, api-error, authentication, connector |
| invalid book id %q: %w | validation | error | yuque, config, validation, strconv, connector |
| list docs for book %d: %w | exception | error | yuque, api-error, permissions, connector |
| no resource IDs (book IDs) configured | validation | error | yuque, config, validation, connector |
ErrInvalidConfig %w: config is nil | validation | error | config, nil, yuque |
| marshal credentials: %w | exception | error | json, serialization, credentials |
| parse yuque credentials: %w | validation | error | json, unmarshal, credentials |
ErrInvalidCredentials %w: api_token is required | validation | error | credentials, auth, yuque |
| flexibleStatus: expected string or integer, got %s: %w | exception | error | json, unmarshal, type-mismatch |
| base_url SSRF validation failed: %w | validation | error | security, ssrf, url-validation |
| parse dingtalk credentials: %w | validation | error | credentials, json, dingtalk |
| unsupported dingtalk mode: %s | validation | error | config, dingtalk, unsupported-value |
| invalid api_base_url: %w | validation | error | url, config, feishu |
| api_base_url must use http(s):// scheme, got %s:// | validation | error | url, scheme, feishu |
| %w (for private deployments on internal networks, add the ho | validation | error | ssrf, configuration, security, feishu |
| invalid verification token | validation | error | webhook, authentication, feishu, verification-token |
| invalid qqbot api_base_url: %w (for private deployments, add | validation | error | ssrf, security, configuration, qqbot |
| gateway_url must be a valid wss URL | validation | error | configuration, websocket, qqbot, url-parsing |
| gateway_url must use wss | validation | error | configuration, websocket, qqbot, scheme |
| gateway_url failed SSRF validation: %w (for private deployme | validation | error | ssrf, security, websocket, qqbot |
| qqbot api %s %s failed: %s | http | error | http, api, qqbot, network |
| decode qqbot response: %w | exception | error | json, decoding, qqbot, api |
| empty qqbot access token: code=%d message=%s | http | error | authentication, qqbot, credentials, access-token |
| parse qqbot credentials: %w | validation | error | configuration, credentials, qqbot, json |
| unsupported qqbot mode: %s (only websocket is supported) | validation | error | qqbot, configuration, unsupported-mode |
| attachment exceeds the %d MiB limit | validation | error | attachments, size-limit, validation |
| platform %s does not support attachment download | validation | error | attachments, adapter, capability-missing |
| attachment has no file extension | validation | error | attachments, file-extension, validation |
| invalid image content type: %s | validation | error | image, content-type, validation |
| no adapter factory for platform: %s | validation | error | adapter, platform, registration |
| channel not found: %s | exception | error | channel, not-found, lookup |
| QA pipeline error: %s | exception | error | qa, pipeline, streaming, llm |
| parse telegram credentials: %w | exception | error | telegram, credentials, parse-error |
| unsupported telegram mode: %s | validation | error | configuration, telegram, im-adapter |
| invalid session_mode: %s | validation | error | validation, gorm-hook, enum |
| WeChat adapter does not support webhook callbacks | exception | warning | wechat, webhook, unsupported-operation |
| parse wechat credentials: %w | exception | error | wechat, credentials, json-parsing |
| wechat credentials require bot_token and ilink_bot_id | validation | error | wechat, credentials, missing-config |
| decrypt message: %w | exception | error | wecom, decryption, webhook, crypto |
| appchat api error: code=%d msg=%s | http | error | wecom, api-error, network |
| wecom api error: code=%d msg=%s | http | error | wecom, api-error, network |
| get token error: code=%d msg=%s | http | error | wecom, auth, access-token, api-error |
| ciphertext too short | exception | error | aes, decryption, validation, wecom |
| ciphertext length is not a multiple of AES block size | exception | error | aes, decryption, block-size, wecom |
| invalid padding | exception | error | aes, pkcs7-padding, decryption, wrong-key, wecom |
| plaintext too short | exception | error | aes, decryption, payload-format, wecom |
| message length mismatch | exception | error | aes, decryption, payload-format, wecom |
| corp_id mismatch: expected %s, got %s | exception | error | multi-tenancy, corp-id-mismatch, validation, wecom |
| no file key (URL or media_id) in message | validation | error | download, missing-field, wecom |
| URL rejected for security reasons: %v | exception | warning | ssrf, security, download, url-validation, wecom |
| download failed: status=%d | http | error | http, download, retry, wecom |
| WeCom bot adapter does not support webhook callbacks | exception | error | wecom, websocket, unsupported-operation, im-adapter |
| no file URL in message | validation | error | wecom, file-download, missing-field, validation |
| decrypt file: %w | exception | error | wecom, encryption, aes, file-download |
| aes key too short: %d bytes | exception | error | wecom, encryption, aes, invalid-key |
| anydoc scanned-PDF fallback returned no result for %q | exception | error | pdf, ocr, docparser, nil-result |
| csv conversion failed: %w | validation | error | csv, docparser, conversion, format |
| json conversion failed: %w | validation | error | json, docparser, conversion, format |
| unsupported simple format: %s | validation | error | docparser, unsupported-format, file-type, routing |
| parser engine %q is unavailable: %s | exception | error | docparser, engine-registry, configuration, unavailable |
| failed to build docreader dial options: %w | exception | error | |
| failed to connect to docreader: %w | exception | error | |
| docreader service not connected | exception | error | |
| gRPC ReadStream failed: %w | exception | error | |
| gRPC ReadStream recv failed: %w | exception | error | |
| gRPC ReadStream returned no metadata frame | exception | error | grpc, streaming, protocol-violation, docparser |
| gRPC Read failed: %w | exception | error | grpc, rpc-failure, fallback, version-skew |
| gRPC ListEngines failed: %w | exception | error | grpc, rpc-failure, service-discovery, docparser |
| docreader address failed SSRF validation: %w | validation | error | ssrf, security, http, url-validation |
| http marshal list-engines request: %w | exception | error | |
| http new request: %w | exception | error | |
| http list-engines failed: %w | exception | error | |
| http list-engines status %d: %s | http | error | |
| http decode list-engines response: %w | exception | error | |
| http marshal read request: %w | exception | error | |
| http read failed: %w | exception | error | |
| http read status %d: %s | http | error | http, network, docparser |
| http decode read response: %w | exception | error | http, json, decoding, docparser |
| blocked by SSRF policy: %w | validation | error | ssrf, security, url-validation, image |
| download: %w | exception | error | http, download, network, image |
| save: %w | exception | error | storage, persistence, image, io |
| create request: %w | exception | error | http, url, request, validation |
| HTTP GET: %w | exception | error | http, network, timeout, dns, image |
| unexpected status %d | http | error | http, status-code, image, cdn |
| non-image content type: %s | validation | error | http, content-type, validation, image |
| read body: %w | exception | error | io, http, network, image, truncation |
| image exceeds %d bytes limit | validation | error | image-download, size-limit, network |
| downloaded data is not an image (sniffed: %s) | validation | error | image-download, content-type, network |
| empty JSON content | validation | error | json, validation, empty-input |
| invalid JSON content | validation | error | json, validation, syntax |
| failed to parse JSON: %w | validation | error | json, unmarshal, encoding |
| MinerU Cloud apply upload URLs: %w | exception | error | http, cloud-api, network, auth |
| MinerU Cloud file upload: %w | exception | error | http, upload, cloud-storage, network |
| MinerU Cloud poll: %w | exception | error | polling, cloud-api, timeout, async-job |
| marshal payload: %w | exception | warning | json, marshal, configuration |
| create request: %w | exception | error | http, configuration, url-validation |
| HTTP request: %w | exception | error | |
| API status %d: %s | http | error | |
| decode response: %w | exception | error | |
| API error: %s | exception | error | |
| API returned no file_urls | exception | error | |
| create PUT request: %w | exception | error | |
| PUT upload: %w | exception | error | |
| PUT upload status %d | http | error | |
| MinerU Cloud task failed: %s | exception | error | |
| MinerU Cloud task timed out after %d polls | exception | error | |
| read poll response body: %w | exception | error | network, http, go, io, polling |
| decode poll response: %w | exception | error | json, decoding, http, go, api-contract |
| poll error code=%d msg=%s | exception | error | api-error, http, polling, go, cloud-service |
| decode extract_result array: %w | exception | error | json, decoding, schema, go, api-contract |
| decode extract_result object: %w | exception | error | json, decoding, schema, go, api-contract |
| MinerU Cloud state=done but no markdown/content or full_zip_ | exception | error | cloud-service, api-contract, empty-response, go |
| extract zip: %w | exception | error | zip, download, network, go, file-processing |
| zip URL blocked by SSRF check: %v | validation | error | ssrf, security, url-validation, go, network |
| download zip: %w | exception | error | network, http, download, timeout, go |
| download zip status %d | http | error | http, download, expired-url, go, cloud-storage |
| read zip body: %w | exception | error | network, http, io, zip-download |
| open zip: %w | exception | error | zip, corrupt-data, http, parsing |
| no .md file found in zip | exception | error | zip, missing-file, mineru, contract-mismatch |
| read md file: %w | exception | error | zip, corrupt-data, io, mineru |
| MinerU file_parse: %w | exception | error | http, mineru, wrapper, document-parsing |
| decode response: %w | exception | error | json, response-parsing, mineru, schema-mismatch |
| create form file: %w | exception | error | multipart, request-building, mineru, input-validation |
| write file content: %w | exception | error | multipart, io, memory, mineru |
| create request: %w | exception | error | http, url, configuration, mineru |
| HTTP request: %w | exception | error | network, http, timeout, dns, mineru |
| MinerU API status %d: %s | http | error | http, upstream-api, mineru, docparser |
| read response body: %w | exception | error | network, http, io, mineru, docparser |
| MinerU URL blocked by SSRF check: %v | validation | error | security, ssrf, validation, mineru, configuration |
| PaddleOCR-VL Cloud submit: %w | exception | error | http, cloud-api, paddleocr, docparser |
| PaddleOCR-VL Cloud poll: %w | exception | error | async, polling, cloud-api, paddleocr, timeout |
| PaddleOCR-VL Cloud fetch results: %w | exception | error | http, cloud-api, paddleocr, docparser, json |
| marshal optionalPayload: %w | exception | error | json, marshal, paddleocr, docparser |
| create form file: %w | exception | error | multipart, upload, paddleocr, docparser |
| write file content: %w | exception | error | io, multipart, upload, paddleocr, memory |
| create request: %w | exception | error | http, network, paddleocr, configuration, docparser |
| HTTP request: %w | exception | error | |
| API status %d: %s | exception | error | |
| decode response: %w | exception | error | |
| API returned no jobId: %s | exception | error | |
| create poll request: %w | exception | error | |
| state=done but no jsonUrl | exception | error | http-api, ocr, cloud, empty-result |
| task failed: %s | exception | error | ocr, cloud, remote-task, http-api |
| task timed out after %d polls | exception | error | timeout, polling, ocr, cloud |
| jsonl URL blocked by SSRF check: %v | exception | error | ssrf, security, http-api, ocr |
| download jsonl: %w | exception | error | network, http, download, ocr |
| download jsonl status %d | exception | error | |
| read jsonl body: %w | exception | error | |
| PaddleOCR-VL layout-parsing: %w | exception | error | |
| marshal payload: %w | exception | error | |
| create request: %w | exception | error | |
| HTTP request: %w | exception | error | |
| read response body: %w | exception | error | |
| PaddleOCR-VL API status %d: %s | exception | error | |
| decode response: %w | exception | error | |
| PaddleOCR-VL error %d: %s | exception | error | |
| WeKnoraCloud appID is required | validation | error | |
| WeKnoraCloud apiKey is required | validation | error | |
| http marshal read request: %w | exception | error | |
| http read failed: %w | exception | error | |
| http read status %d: %s | exception | error | |
| http decode read submit response: %w | exception | error | |
| weknoracloud docreader submit response missing task_id | exception | error | |
| http poll task failed: %w | exception | error | |
| http poll task status %d: %s | exception | error | |
| http decode task response: %w | exception | error | |
| weknoracloud docreader task failed: %s | exception | error | |
| weknoracloud docreader task cancelled: %s | exception | error | |
| weknoracloud docreader task cancelled | exception | error | |
| http new request: %w | exception | error | |
| invalid address %s: %w | exception | error | |
| DNS resolution failed for %s: %w | exception | error | |
| DNS resolution failed: no addresses for %s | exception | error | |
| connection blocked: %s resolves to restricted IP %s | exception | error | |
| chromium render failed: %w | exception | error | |
| API key is required for Baidu provider | validation | error | |
| create Baidu HTTP client: %w | exception | error | |
| query is empty | validation | error | |
| failed to marshal request body: %w | exception | error | |
| failed to create request: %w | exception | error | |
| baidu API returned status %d: %s | http | error | |
| failed to unmarshal response: %w | exception | error | |
| baidu API error (code %d): %s | exception | error | |
| unable to parse date: %s | exception | error | |
| API key is required for Bing provider | validation | error | |
| query is empty | validation | error | validation, input, web-search, go |
| bing API returned status %d: %s | http | error | http, api, web-search, azure, go |
| failed to unmarshal response: %w | exception | error | json, parsing, web-search, go |
| failed to create request: %w | exception | error | http, url, configuration, web-search, go |
| duckduckgo HTML search failed: %w | exception | error | web-search, scraping, network, go |
| duckduckgo API search failed: %w | exception | error | web-search, network, api, go |
| failed to create request: %w | exception | error | http, url, web-search, go |
| failed to perform request: %w | exception | error | network, http-client, web-search, go |
| duckduckgo HTML returned status %d | http | error | http, scraping, rate-limit, web-search, go |
| failed to parse HTML: %w | exception | error | html, parsing, scraping, web-search, go |
| duckduckgo API returned status %d: %s | http | error | http, api, status-code, rate-limit, go |
| failed to decode API response: %w | exception | error | json, decoding, api, schema, go |
| API key is required for Exa provider | validation | error | config, api-key, validation, go |
| query is empty | validation | error | validation, input, go |
| failed to marshal Exa request: %w | exception | error | json, marshaling, go, internal |
| failed to create Exa request: %w | exception | error | http, request-construction, url, config, go |
| failed to execute Exa request: %w | exception | error | network, http, timeout, proxy, go |
| failed to read Exa response: %w | exception | error | network, io, http-body, go |
| exa API returned status %d: %s | http | error | http, api, web-search, exa, upstream-error |
| failed to unmarshal Exa response: %w | exception | error | json, unmarshal, web-search, exa, api |
| exa API error: %s | exception | error | api, web-search, exa, quota, application-error |
| API key is required for Google provider | validation | error | configuration, google, web-search, missing-credentials |
| engine ID is required for Google provider | validation | error | configuration, google, web-search, missing-config |
| query is empty | validation | warning | validation, google, web-search, input-validation |
| query is empty | validation | warning | validation, keenable, web-search, input-validation |
| failed to marshal request: %w | exception | error | json, marshal, keenable, web-search |
| failed to create request: %w | exception | error | http, url, keenable, web-search, request-construction |
| failed to execute request: %w | exception | error | network, http, keenable, web-search, timeout, dns |
| keenable API returned status %d: %s | http | error | http, api, web-search, network |
| failed to read response: %w | exception | error | network, io, http, web-search |
| failed to unmarshal response: %w | exception | error | json, unmarshal, web-search, schema |
| API key is required for Metaso provider | validation | error | config, api-key, validation, web-search |
| invalid Metaso search scope: %s | validation | error | config, validation, enum, web-search |
| query is empty | validation | warning | validation, input, web-search |
| failed to marshal Metaso request: %w | exception | error | json, marshal, serialization, web-search |
| failed to create Metaso request: %w | exception | error | http, url, config, web-search |
| failed to execute Metaso request: %w | exception | error | network, http, timeout, dns, web-search |
| failed to unmarshal Metaso response: %w | exception | error | json, unmarshal, schema, web-search |
| failed to read Metaso response: %w | exception | error | |
| Metaso response exceeds %d bytes | exception | error | |
| Metaso API returned status %d: %s | http | error | |
| Metaso API returned status %d | http | error | |
| API key is required for Ollama provider | validation | error | |
| create Ollama HTTP client: %w | exception | error | |
| query is empty | validation | error | |
| failed to marshal request body: %w | exception | error | |
| failed to create request: %w | exception | error | |
| ollama API returned status %d: %s | http | error | http, network, ollama, api-error |
| failed to unmarshal response: %w | exception | error | json, unmarshal, ollama, http |
| default HTTP transport is not *http.Transport | exception | error | http, transport, configuration, initialization |
| invalid proxy_url: %w | validation | error | url, proxy, configuration, parse-error |
| invalid proxy_url: scheme and host are required | validation | error | url, proxy, configuration, validation |
| web search provider type %s not registered | exception | error | registry, configuration, provider, lookup-failed |
| base_url is required for SearXNG provider | validation | error | validation, configuration, searxng, missing-field |
| invalid SearXNG base_url: must be an absolute http(s) URL | validation | error | url, validation, searxng, configuration |
| invalid SearXNG base_url scheme: %s | validation | error | url, validation, searxng, scheme |
| invalid SearXNG base_url: must not contain query or fragment | validation | error | url, validation, searxng, configuration |
| invalid SearXNG base_url: %w | validation | error | ssrf, config-validation, security, searxng |
| query is empty | validation | error | validation, input-validation, searxng, empty-input |
| failed to create request: %w | exception | error | http, url-malformed, searxng, request-construction |
| failed to execute request: %w | exception | error | network, http, connection, searxng, timeout |
| searxng returned status %d: %s | http | error | http, http-status, searxng, config, rate-limit |
| failed to decode SearXNG response (ensure JSON format is ena | exception | error | json, decode-error, searxng, config, content-type |
| API key is required for Tavily provider | validation | error | api-key, authentication, config, tavily, missing-credential |
| query is empty | validation | error | validation, input-validation, tavily, empty-input |
| failed to marshal request: %w | exception | error | json, serialization, tavily, programming-error |
| failed to create request: %w | exception | error | http, url-malformed, tavily, request-construction, config |
| failed to execute request: %w | exception | error | network, http-client, web-search, tavily |
| tavily API returned status %d: %s | http | error | http, api-error, web-search, tavily |
| failed to read response: %w | exception | error | network, io, web-search, tavily |
| failed to unmarshal response: %w | exception | error | json, parsing, web-search, tavily |
| API key is required for Zhipu provider | validation | error | configuration, validation, api-key, zhipu |
| invalid Zhipu search engine: %s | validation | error | configuration, validation, zhipu, web-search |
| invalid Zhipu content size: %s | validation | error | configuration, validation, zhipu, web-search |
| query is empty | validation | error | validation, input, zhipu, web-search |
| failed to marshal Zhipu request: %w | exception | error | json, serialization, zhipu, web-search |
| failed to create Zhipu request: %w | exception | error | http, configuration, url, zhipu |
| failed to execute Zhipu request: %w | exception | error | network, http, web-search, zhipu |
| failed to unmarshal Zhipu response: %w | exception | error | json, unmarshal, zhipu, web-search |
| Zhipu API error (%s): %s | http | error | api-error, auth, zhipu, web-search |
| failed to read Zhipu response: %w | exception | error | io, network, zhipu, web-search |
| Zhipu response exceeds %d bytes | exception | error | limits, memory-safety, zhipu, web-search |
| Zhipu API returned status %d (%s): %s | http | error | http-status, api-error, auth, zhipu |
| Zhipu API returned status %d | http | error | http-status, empty-response, zhipu, web-search |
| Zhipu API returned status %d: %s | http | error | http-status, error-detail, zhipu, web-search |
| MCP client config and service are required | validation | error | configuration, validation, mcp, nil-pointer |
| URL is required for SSE transport | validation | error | configuration, sse, mcp, validation |
| failed to create SSE client: %w | exception | error | go, mcp, sse, url-parsing |
| URL is required for HTTP Streamable transport | validation | error | go, mcp, configuration, validation |
| failed to create HTTP streamable client: %w | exception | error | go, mcp, http, url-parsing |
| stdio transport is disabled for security reasons; please use | validation | error | go, mcp, security, configuration |
| OAuth repository is required for OAuth MCP services | validation | error | go, mcp, oauth, configuration |
| principal context is required to connect to an OAuth MCP ser | validation | error | go, mcp, oauth, principal, configuration |
| failed to start client: %w | exception | error | go, mcp, network, connection, sse |
| failed to initialize: %w | exception | error | go, mcp, protocol, handshake |
| failed to list tools: %w | exception | error | go, mcp, rpc, tools, connection-lost |
| failed to list resources: %w | exception | error | go, mcp, rpc, resources, capability |
| failed to call tool: %w | exception | error | mcp, rpc, tool-invocation, wrapping |
| failed to read resource: %w | exception | error | mcp, rpc, resource-read, wrapping |
| MCP service %s is not enabled | validation | error | mcp, configuration, service-disabled |
| stdio transport is disabled for security reasons; please use | validation | error | mcp, transport, security, configuration |
| principal context is required to connect to OAuth MCP servic | exception | error | mcp, oauth, context, principal |
| failed to create MCP client: %w | exception | error | mcp, configuration, client-creation |
| failed to connect to MCP service: %w | exception | error | mcp, network, connection, sse |
| %s: %w | exception | error | mcp, handshake, initialize, protocol |
| load MCP OAuth token: %w | exception | error | oauth, database, token-storage, mcp |
| claim MCP OAuth token refresh: %w | exception | error | oauth, token-refresh, lease, database, concurrency |
| reload MCP OAuth token after concurrent refresh: %w | exception | error | oauth, database, persistence, concurrency |
| reload MCP OAuth token before refresh: %w | exception | error | oauth, database, persistence, concurrency |
| delete invalid MCP OAuth token: %w | exception | error | oauth, database, persistence, token-invalidation |
| delete invalid MCP OAuth client registration: %w | exception | error | oauth, database, persistence, client-registration |
| MCP service URL is required for OAuth | validation | error | oauth, configuration, validation |
| MCP service %s does not use OAuth | validation | error | oauth, configuration, validation |
| principal context is required to authorize OAuth MCP service | validation | error | oauth, authentication, principal, validation |
| dynamic client registration failed: %w | exception | error | oauth, http, client-registration, network |
| dynamic client registration returned an empty client_id | exception | error | oauth, client-registration, protocol, parsing |
| failed to generate PKCE verifier: %w | exception | error | oauth, pkce, crypto, randomness |
| failed to generate state: %w | exception | error | |
| failed to build authorization URL: %w | exception | error | |
| failed to persist authorization state: %w | exception | error | |
| failed to load MCP service: %w | exception | error | |
| MCP service not found | exception | error | |
| principal context is missing from OAuth state | exception | error | |
| token exchange failed: %w | exception | error | |
| failed to record authorization completion: %w | exception | error | |
| oauth authorization attempt does not match the current princ | exception | error | oauth, authorization, principal-mismatch, security |
| oauth attempt not found or expired | exception | error | oauth, state-expired, redis, ttl |
| oauth state not found or expired | exception | error | oauth, csrf-state, single-use, redis |
| OAuth token response did not contain an access_token | exception | error | oauth, token, validation, token-exchange |
| MCP service is required | validation | error | validation, ssrf, mcp, nil-pointer |
| MCP service URL failed SSRF validation: %w | validation | error | ssrf, security, validation, mcp |
| MCP OAuth metadata URL failed SSRF validation: %w | validation | error | ssrf, security, oauth, mcp |
| %w: %v | validation | error | authentication, api-key, validation |
| %w: %w | validation | error | authentication, jwt, hmac |
| invalid external user id: %v | validation | error | authentication, jwt, validation |
| unexpected signing method: %v | validation | error | jwt, security, algorithm-confusion |
| token lifetime exceeds %s | validation | error | jwt, security, expiration |
| workspace mismatch: got %d want %d | validation | error | jwt, multi-tenancy, authorization |
| invalid external user id: external user id too long (max %d) | validation | error | validation, authentication, input-length |
| unsupported runtime task state %q | validation | error | validation, api, task-inspector |
| task %s in queue %s cannot run now | validation | error | asynq, task-queue, permissions, task-state |
| task %s in queue %s cannot be deleted | validation | error | asynq, task-queue, permissions, task-state |
| sandbox: config is missing required fields: %s backend requi | validation | error | sandbox, configuration, validation, docker |
| sandbox: docker host %q must include a scheme (unix:// or tc | validation | error | sandbox, docker, configuration, url-validation |
| sandbox: docker unix socket path %q must be absolute | validation | error | sandbox, docker, configuration, url-validation |
| sandbox: unsupported docker host scheme %q | validation | error | sandbox, docker, configuration, url-validation |
| sandbox: remote docker host %q requires a TLS certificate di | validation | error | sandbox, docker, tls, security, configuration |
| sandbox: docker network mode %q is not allowed; use "bridge" | validation | error | sandbox, docker, network, security, configuration |
| sandbox: invalid cube DNS server %q (need an IP address) | validation | error | sandbox, dns, configuration, validation |
| unsupported timeout mode %q | validation | error | sandbox, timeout, configuration, enum |
| unsupported timeout mode %q | validation | error | e2b, timeout, configuration |
| build e2b client: %w | validation | error | e2b, client-construction, configuration |
| invalid sandbox config: %w | validation | error | configuration, validation, sandbox |
| sandbox: %s backend must be constructed via NewSessionBoundM | exception | error | sandbox, architecture, session |
| unknown sandbox type: %s | validation | error | sandbox, configuration, unknown-type |
| failed to read script for validation: %w | exception | error | filesystem, validation, io |
| sandbox: build Cube client: %w | exception | error | cube, client-construction, configuration |
| sandbox: build E2B client: %w | exception | error | e2b, client-construction, configuration |
| sandbox: build Docker client: %w | exception | error | docker, client-construction, daemon |
| sandbox: orphan reaper requires a client | exception | error | go, sandbox, misconfiguration, nil-dependency |
| sandbox: list workspace %d config %q sandboxes: %w | exception | error | go, sandbox, storage, error-wrapping |
| remote sandbox: create: %w | exception | error | go, sandbox, remote, creation-failure |
| remote sandbox: upload script %s: %w | exception | error | go, sandbox, upload, network |
| remote sandbox: read script: %w | exception | error | go, filesystem, io, script-loading |
| sandbox binding version must be %d, got %d | validation | error | go, schema, versioning, binding-validation |
| unsupported sandbox binding provider %q | validation | error | go, sandbox, provider, binding-validation |
| mark session %s stale: %w | exception | warning | go, sandbox, locking, partial-failure |
| get sandbox binding: %w | exception | error | go, redis, network, storage |
| decode sandbox binding: %w | exception | error | redis, json-decode, data-corruption, go |
| validate sandbox binding: %w | exception | error | redis, validation, schema-mismatch, go |
| encode sandbox binding: %w | exception | error | json-encode, go, serialization, redis |
| create sandbox binding: %w | exception | critical | redis, network, availability, go |
| delete sandbox binding: %w | exception | error | redis, lua-script, network, go |
| scan sandbox bindings: %w | exception | error | redis, scan, network, go |
| encode stale sandbox binding: %w | exception | error | json-encode, serialization, go, redis |
| mark sandbox binding stale: %w | exception | error | redis, lua-script, write-failure, go |
| begin sandbox turn lease: %w | exception | error | redis, lua-script, lease, go |
| end sandbox turn lease: %w | exception | warning | redis, lua-script, lease-cleanup, go |
| read sandbox turn lease: %w | exception | error | redis, sandbox, turn-lease |
| consume sandbox turn rebuild: %w | exception | error | redis, lua-script, sandbox, turn-lease |
| unsupported remote sandbox provider %q | validation | error | configuration, sandbox, provider-validation |
| remote sandbox provider %q does not support reconnect | validation | error | configuration, sandbox, capabilities, reconnect |
| resolve remote sandbox for session: %w | exception | error | sandbox, lifecycle, session |
| destroy remote sandbox for session: %w | exception | error | sandbox, cleanup, lifecycle |
| check owning session: %w | exception | error | session-store, database, sandbox |
| delete mismatched provider binding: %w | exception | error | redis, provider-migration, compare-and-delete |
| release stale sandbox binding: %w | exception | error | sandbox, stale-binding, rebuild, provider-api |
| delete terminal sandbox binding: %w | exception | error | redis, sandbox, terminal-state, compare-and-delete |
| get bound remote sandbox: %w | exception | error | network, remote-sandbox, binding-resolution, wrapped-error |
| remote sandbox Get returned ID %q for binding %q | exception | error | provider-invariant, binding-resolution, data-integrity |
| connect bound remote sandbox: %w | exception | error | network, connection, remote-sandbox, connect-failure |
| list owned remote sandboxes: %w | exception | error | network, provider-api, sandbox-recovery, list-filter |
| remote provider returned sandbox %q outside metadata filter | exception | error | provider-invariant, metadata-filter, sandbox-recovery, data-integrity |
| connect owned remote sandbox: %w | exception | error | network, connection, sandbox-recovery, orphaned-sandbox |
| bind owned remote sandbox: %w | exception | error | storage, binding-store, persistence, sandbox-recovery |
| create remote sandbox: %w | exception | error | provisioning, remote-sandbox, provider-api, create-failure |
| recheck owning session: %w | exception | error | storage, session-store, race-condition, cleanup |
| create sandbox binding: %w | exception | error | storage, binding-store, race-condition, cleanup, persistence |
| read winning sandbox binding: %w | exception | error | go, distributed-race, binding-store, transient |
| cleanup losing remote sandbox: %w | exception | error | go, remote-provider, cleanup, sandbox-leak, concurrency |
| delete remote sandbox: %w | exception | error | go, remote-provider, delete, teardown, stale-binding |
| delete sandbox binding: %w | exception | error | go, binding-store, delete, teardown |
| get sandbox binding: %w | exception | error | go, binding-store, read, transient |
| validate sandbox binding: %w | exception | error | go, data-corruption, binding-store, validation |
| invalid sandbox config: %w | validation | error | go, configuration, validation |
| sandbox: unsupported remote provider %q | validation | error | go, configuration, provider, validation |
| session bound manager: %w | exception | error | go, configuration, request-build, validation |
| sandbox: %s template ID is required but not configured | validation | error | go, configuration, template, missing-env-var |
| remote sandbox provider unavailable: %w | exception | critical | go, sandbox, health-check, network, timeout |
| sandbox: ensure session dir %s: %w | exception | error | go, sandbox, filesystem, remote |
| sandbox: create input directory: %w | exception | error | go, sandbox, filesystem, path |
| sandbox: write session input %s: %w | exception | error | go, sandbox, file-upload, network |
| sandbox: create workspace directory: %w | exception | error | go, sandbox, filesystem, path |
| sandbox: write session file %s: %w | exception | error | go, sandbox, file-upload, network |
| sandbox: remove session input %s: %w | exception | error | go, sandbox, filesystem, delete |
| sandbox: no live sandbox for session %s | exception | error | go, sandbox, session, lifecycle |
| sandbox: install file path %q is outside %s | validation | error | |
| sandbox: create install directory: %w | exception | error | |
| sandbox: write install file %s: %w | exception | error | |
| sandbox: shell_exec requires the remote sandbox provider (cu | validation | error | |
| sandbox: read session binding: %w | exception | error | |
| sandbox: connect session sandbox: %w | exception | error | |
| sandbox: stat %s: %w | exception | error | |
| sandbox: session input path %q is outside %s | validation | error | |
| sandbox: workspace write path %q must be an absolute file pa | validation | error | |
| sandbox: workspace write path %q is a directory, not a file | validation | error | |
| sandbox: workspace write path %q is outside %s | validation | error | sandbox, path-validation, security |
| sandbox: session input %s is read-only | validation | error | sandbox, read-only-path, security |
| sandbox: work dir %q is outside allowed roots (%s) | error_code | error | sandbox, path-validation, shell-exec |
ErrInvalidSkillName %w %q | validation | error | validation, path-traversal, skills |
ErrUnsupportedSandboxType %w %q | validation | error | configuration, validation, sandbox |
ErrSandboxConfigNotFound %w: %s | error_code | error | configuration, not-found, multi-tenant |
ErrSandboxConfigCordoned %w: %s | error_code | error | configuration, multi-tenant, policy |
ErrUnsafeOutboundURL %w: empty URL | validation | error | validation, url, security |
| invalid %s value %q: expected %q or %q | validation | error | |
| invalid %s: %w | validation | error | |
| starter suggestion count must be between 1 and 8 | validation | error | |
| follow-up suggestion count must be between 1 and 5 | validation | error | |
| follow-up max_context_turns must be between 1 and 5 | validation | error | |
| invalid starter suggestion mode %q | validation | error | |
| invalid follow-up suggestion mode %q | validation | error | |
| starter suggestion %d cannot be empty | validation | error | |
| starter suggestion %d exceeds 200 characters | validation | error | |
| follow-up additional_instruction exceeds 2000 characters | validation | error | |
| invalid follow-up suggestion category %q | validation | error | validation, config, go |
| empty embed visitor id | validation | error | validation, embed, session, go |
| embed visitor id too long (max 128) | validation | error | validation, embed, session, go |
| embed visitor id contains invalid characters | validation | error | validation, embed, security, go |
| %s exceeds %d characters | validation | error | validation, prompt, limits, go |
| unsupported URL scheme: %s | http | error | http, url, validation, go |
| URL rejected by SSRF policy: %w | http | error | security, ssrf, http, go |
| HTTP GET: %w | http | error | network, http, timeout, go |
| HTTP %d for %s | http | error | http, status-code, network, go |
| read body: %w | http | warning | network, http, io, go |
| %s | validation | error | sql, validation, security |
| failed to parse SQL: %v | validation | error | sql, postgres, parsing |
| failed to normalize SQL: %v | validation | error | sql, postgres, deparse |
| invalid character in SQL query | validation | error | sql, security, input-validation |
| SQL query too short (min %d characters) | validation | error | sql, validation, input-validation |
| SQL query too long (max %d characters) | validation | error | sql, input-validation, length-limit, configuration |
| compound queries (UNION/INTERSECT/EXCEPT) are not allowed | validation | error | sql, validation, postgres, set-operations |
| WITH clause (CTEs) is not allowed | validation | error | sql, validation, cte, postgres |
| SELECT INTO is not allowed | validation | error | sql, validation, postgres, ddl |
| locking clauses (FOR UPDATE, etc.) are not allowed | validation | error | sql, validation, locking, transactions, postgres |
| no valid table found in query | validation | error | |
| access to schema '%s' is not allowed | validation | error | |
| subqueries in FROM clause are not allowed | validation | error | |
| functions in FROM clause are not allowed | validation | error | |
| subqueries are not allowed | validation | error | |
| casting to system type '%s' is not allowed | validation | error | |
| SubPlan nodes are not allowed | validation | error | |
| AlternativeSubPlan nodes are not allowed | validation | error | |
| unsupported SQL expression type %T is not allowed | validation | error | |
| schema-qualified function calls are not allowed: %s | validation | error | |
| function '%s' is not allowed (dangerous prefix) | validation | critical | sql-injection, security, validation, rce-prevention |
| function '%s' is not allowed | validation | critical | sql-injection, security, blocklist, duckdb |
| function not allowed: %s | validation | error | sql-injection, whitelist, validation, security |
| access to system column '%s' is not allowed | validation | error | sql-injection, postgres, system-columns, security |
| access to '%s' is not allowed | validation | error | sql-injection, postgres, reserved-prefix, security |
| decode oidc state payload: %w | validation | error | oidc, base64, state-token, encoding |
| decode oidc state signature: %w | validation | error | oidc, hmac, base64, state-token |
| unmarshal oidc state: %w | validation | error | oidc, json, state-token, schema-mismatch |
| storage path has no tenant segment | validation | error | authorization, multitenancy, storage-path, presigned-url |
| storage path workspace mismatch | validation | warning | authorization, multitenancy, idor, presigned-url |
| storage path is outside KB-scoped exports namespace | validation | error | |
| baseDir and filePath cannot be empty | validation | error | |
| invalid base dir: %w | validation | error | |
| invalid file path: %w | validation | error | |
| path traversal denied: path is outside base directory | validation | error | |
| fileName cannot be empty | validation | error | |
| invalid fileName: path traversal or empty name | validation | error | |
| invalid fileName: contains path traversal | validation | error | |
| fileName too long | validation | error | |
| object key cannot be empty | validation | error | |
| object key contains path traversal | validation | error | security, object-storage, path-traversal, validation |
| command cannot be empty | validation | error | validation, mcp, stdio, config |
| command '%s' is not in the allowed list. Allowed commands: u | validation | error | security, whitelist, mcp, stdio, config |
| command path contains invalid characters | validation | error | security, path-traversal, mcp, stdio |
| argument %d exceeds maximum length (1024 characters) | validation | error | validation, mcp, stdio, args, limits |
| argument %d contains potentially dangerous pattern: %s | validation | error | security, injection, mcp, stdio, args |
| argument %d contains null bytes | validation | error | security, validation, mcp, stdio, null-bytes |
| environment variable '%s' is not allowed for security reason | validation | error | security, env-vars, mcp, stdio |
| environment variable name '%s' exceeds maximum length | validation | error | validation, env-vars, mcp, stdio, limits |
| environment variable '%s' value exceeds maximum length | validation | error | validation, env-vars, mcp, stdio, limits |
| environment variable '%s' value contains null bytes | validation | error | security, validation, stdio, environment-variables |
| environment variable '%s' value contains potentially dangero | validation | error | security, shell-injection, validation, stdio |
| invalid command: %w | validation | error | security, validation, stdio, command-execution |
| invalid arguments: %w | validation | error | security, validation, stdio, arguments |
| invalid environment variables: %w | validation | error | security, validation, stdio, environment-variables |
| redirect blocked: target URL failed SSRF validation | http | error | security, ssrf, http, redirect |
| stopped after %d redirects | http | error | http, redirect, network |
| %w: invalid scheme %s | http | error | security, ssrf, http, redirect, scheme |
| %w: %w | http | error | security, ssrf, http, redirect |
| outbound request blocked: request URL is required | http | error | http, ssrf, transport, validation |
| outbound request blocked: base transport is required | exception | error | ssrf, http-roundtripper, nil-pointer, initialization |
| outbound request blocked by SSRF policy: %w | http | error | ssrf, security-policy, http-request, url-validation |
| invalid address %s: %w | exception | error | network, dial, address-format, ssrf |
| connection blocked: port %s is restricted | http | error | ssrf, restricted-port, dial, security-policy |
| connection blocked: hostname %s is restricted | http | error | ssrf, restricted-hostname, dial, security-policy |
| connection blocked: hostname suffix %s is restricted | http | error | ssrf, restricted-hostname, dns-suffix, dial |
| DNS resolution failed for %s: %w | exception | error | dns, resolution-failed, network, dial |
| DNS resolution returned no addresses for %s | exception | error | dns, empty-answer, network, dial |
| connection blocked: %s resolves to restricted IP %s (%s) | http | error | ssrf, dns-rebinding, restricted-ip, security |
| failed to connect to validated addresses for %s: %w | exception | error | network, connection-refused, dial, timeout |
| invalid CIDR %q: %w | validation | error | ssrf, cidr, configuration, validation |
| wildcard entry %q is missing a domain (use *.example.com) | validation | error | ssrf, wildcard, configuration, validation |
| wildcard pattern %q is not supported (only the "*." prefix i | validation | error | ssrf, wildcard, configuration, validation |
| empty url | validation | warning | ssrf, url-parsing, error-hint |
| invalid URL: %w | validation | error | ssrf, url-parsing, configuration, object-storage |
| URL has no hostname | validation | error | ssrf, url-parsing, configuration, object-storage |
| invalid scheme: %s (only http/https allowed) | validation | error | ssrf, scheme, security, url-validation |
| SSRF validation failed: %s | validation | error | ssrf, security, internal-network, url-validation |
| invalid task ID format: %s | validation | error | task-id, parsing, validation |
| failed to generate JWT secret: %v | panic | critical | go, panic, crypto, jwt, entropy |
| im: duplicate command registration: %s | panic | error | go, panic, startup, duplicate-registration, im |
| api-key policy declared for non-existent route(s): %s | panic | error | go, panic, routing, rbac, startup-validation, api-key |
| types.TenantIDContextKey not set in context | panic | error | go, panic, context, multi-tenancy, middleware |
| failed to generate schema: %v | panic | error | go, panic, json-schema, tools, reflection |
| failed to marshal schema: %v | panic | error | go, panic, json, marshaling, json-schema, tools |
| failed to generate OIDC state signing key: %v | panic | critical | go, panic, oidc, crypto, entropy, security |