Skip to content

Reason codes

When Opslane stops and hands an issue to a person, it records a reason_code, a reason_message, and a remediation. The catalog lives in packages/worker/src/reason-codes.ts as an exhaustive Record<ReasonCode, string>. Adding a code to shared/src/types.ts without a remediation entry is a compile error, so this table cannot silently fall behind the type.

CodeRemediation
missing_github_tokenConnect the GitHub App to this repository (Settings > GitHub) so Opslane can read and open PRs.
repo_access_deniedConfirm the GitHub App is installed on this repository and has read + pull-request permissions.
token_decrypt_failedReconnect the GitHub integration; the stored credential could not be decrypted.
auth_invalidRe-authenticate the GitHub connection; the existing token was rejected as invalid.
policy_blockedA repository or org policy blocked the change. Review branch-protection / app permissions, then retry.
missing_llm_keySet the ANTHROPIC_API_KEY environment variable on the worker with a valid Anthropic API key.
CodeRemediation
empty_repositoryPush at least one commit to this repository, then retry; there is no branch for Opslane to work from yet.
invalid_default_branchThis repository’s default branch points at a branch that no longer exists. Set a valid default branch in GitHub (Settings > Branches), then retry.
unresolvable_headOpslane could not determine this repository’s default branch. Check the repository is not in an unusual state, then retry.
CodeRemediation
malformed_diffReview the error manually; the agent could not produce a valid, applicable diff.
verification_failedReview the candidate fix manually; Opslane could not verify it satisfied the failing behavior.
tests_failedReview the candidate diff manually; the test suite still fails, so the fix may be partial or cause regressions.
low_confidence_fixReview the candidate diff and evidence manually; the candidate did not pass independent fix review or the checks required before Opslane opens a pull request. This code does not gate error diagnosis by confidence.
repro_not_achievableReview the candidate diff and evidence manually; Opslane could not construct a reliable reproduction test, so it checked the fix against the existing suite but did not call it verified.
draft_cap_reachedReview or close an existing Opslane draft PR, then retry this fix. The candidate diff remains available on the incident.
budget_exhaustedReview the error manually; the agent could not complete within its step or budget limits. Consider guiding it with more context.
insufficient_contextAdd a replay, breadcrumbs, or a reproduction so Opslane has enough context to investigate.
CodeRemediation
sourcemap_unresolvedUpload source maps for this release (see the SDK build plugin) so the stack trace shows original source locations.
artifact_fetch_failedRetry later; Opslane could not fetch a stored artifact needed to analyze this error.
CodeRemediation
triage_unfixableReview the error manually; Opslane determined it cannot be fixed with application code changes.
unfixable_no_app_framesAdd the crossorigin attribute to your <script> tags (with CORS headers) and throw Error objects (not strings) so the SDK captures real stack frames.
unfixable_test_errorNo action needed; this looks like a deliberate test error thrown to exercise Opslane.
unfixable_third_partyReview manually; the error originates entirely in third-party code, so the fix is not in your application source.
unfixable_infraInvestigate infrastructure or network behavior such as CORS, DNS, timeouts, and server errors; this is not an application code bug.
unfixable_no_sourcemapUpload source maps for this release so the minified stack trace shows original source locations, then retry.
CodeRemediation
worker_runtime_errorReview the error manually; the Opslane worker hit an unexpected internal error while processing this issue.
lease_lostNo action needed; the worker lost temporary ownership of the job while it was running, and Opslane will retry the issue automatically.
verification_infra_errorNo immediate action needed; verification infrastructure failed, so the fix could not be proven either way. It will be retried on recurrence; if it persists, check worker logs.

The drift check fails the repository test gate (pnpm test, which CI runs) if this page and shared/src/types.ts disagree.