Pilot docs

Troubleshooting

Common failure modes and how to fix them.

Common errors and how to resolve them. If your issue is not listed here, run with LOGOMESH_DEBUG=1 and include the output when asking for help.

SENTRY_AUTH_TOKEN is not set

Export the token in your shell before running:

export SENTRY_AUTH_TOKEN=sntrys_...

Get a token at Sentry → Settings → Account → API Tokens. The only scope required is event:read. Org-level tokens work too.

no usable in-app frame

The Sentry event has no app frames. This happens when the crash occurred in middleware, a WSGI wrapper, or a third-party library before execution reached your code. Try a different Sentry issue that shows your package name in the stack trace.

If you consistently see this on your own errors, configure the Sentry SDK with in_app_include pointing to your package:

sentry_sdk.init(
    dsn="...",
    in_app_include=["mypackage"],
)

Test generates but always passes (no repro)

The LLM synthesizer wrote a test that does not reproduce the crash. Run with --no-llm to force the deterministic frame-locals replayer:

logomesh repro <url> --no-llm

If that also passes, the bug is likely fixed on the current branch. Check out the commit that was live when the Sentry event fired and run again to confirm.

source code did not parse cleanly

The file being analyzed has a syntax error. The error message includes the file path. Open that file, fix the syntax error, and re-run. logomesh does not attempt to generate tests for files that do not parse.

Sandbox exits with collection error (total: 0)

The generated test file has a syntax error, so pytest collected zero tests and exited. Set LOGOMESH_DEBUG=1 to print the generated test to stdout before the sandbox runs it:

LOGOMESH_DEBUG=1 logomesh repro <url>

Inspect the printed test, identify the malformed line, and file an issue with the output attached.

Docker not found → subprocess fallback

Without Docker, logomesh falls back to a subprocess runner automatically. The subprocess runner is less isolated — it runs in your local Python environment without memory or PID limits.

To use the subprocess runner explicitly:

export LOGOMESH_SANDBOX_MODE=subprocess

For compliance artifact generation, Docker isolation is strongly preferred.

Sentry path does not match local repo

Production containers often use paths like /app/src/billing/checkout.py that do not exist in your local checkout. Pass --repo to set the repo root:

logomesh repro <url> --repo /path/to/your/repo

logomesh strips common leading path components automatically (/app, /app/src, etc.). If your layout is unusual, confirm the file exists relative to the repo root you passed.

Token has wrong scope (403)

The token exists but lacks event:read. Go to Sentry → Settings → Account → API Tokens, delete the current token, and create a new one with event:read checked.