You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: .agents/codebase-insights.txt
+1Lines changed: 1 addition & 0 deletions
Original file line number
Diff line number
Diff line change
@@ -22,5 +22,6 @@
22
22
is always terminated when the app exits.
23
23
- `ct record` now prefers `CODETRACER_PYTHON_INTERPRETER`, `PYTHON_EXECUTABLE`, `PYTHONEXECUTABLE`, or PATH resolution to locate the Python runtime before delegating to the db backend, and `db-backend-record` expects the resolved interpreter via `--python-interpreter` when launching the recorder.
24
24
- `ct record` resolves Python via env vars (`CODETRACER_PYTHON_INTERPRETER`, `PYTHON_EXECUTABLE`, `PYTHONEXECUTABLE`, `PYTHON`) before checking PATH. When falling back to PATH we now call `findExe(..., followSymlinks=false)` so virtualenv launchers keep their original location and `pyvenv.cfg` remains discoverable.
25
+
- Interpreter overrides (e.g. `CODETRACER_PYTHON_INTERPRETER`) are now treated as authoritative; if the configured path cannot be resolved we error instead of silently falling back to PATH.
25
26
- `ct record` verifies that `codetracer_python_recorder` is importable before launching the db backend and prints actionable guidance if the module is missing or broken.
26
27
- Sudoku test-program datasets include intentionally invalid boards (e.g., examples #3 and #6) with duplicate digits inside a sub-grid; solvers should detect and report these gracefully.
let presentedValue =if trimmedValue.len >0: trimmedValue else: value
68
+
return ("", fmt"{envName} is set to '{presentedValue}' but it does not resolve to a Python interpreter. Update the variable or unset it to fall back to PATH detection.")
64
69
65
70
for binary in ["python3", "python", "py"]:
66
71
let resolved =resolveInterpreterCandidate(binary)
67
72
if resolved.len >0:
68
-
return resolved
73
+
return(resolved, "")
69
74
70
-
""
75
+
("", "")
71
76
72
77
typePythonRecorderCheckStatus=enum
73
78
recorderPresent,
@@ -227,7 +232,10 @@ proc record*(lang: string,
227
232
pargs.add(socketPath)
228
233
229
234
if detectedLang ==LangPythonDb:
230
-
let pythonInterpreter =resolvePythonInterpreter()
235
+
let (pythonInterpreter, resolverError) =resolvePythonInterpreter()
236
+
if resolverError.len >0:
237
+
echo"error: "& resolverError
238
+
quit(1)
231
239
if pythonInterpreter.len ==0:
232
240
echo"error: Python interpreter not found. Set CODETRACER_PYTHON_INTERPRETER or ensure `python` is on PATH."
0 commit comments