Reproduction #
Set RIPGREP_CONFIG_PATH to a ripgrep configuration file containing --pretty. In an Albedo workspace, create src/deep/stream_test.go, then run:
print(await files.paths('src/*/*_test.go'))
Expected: the result includes src/deep/stream_test.go. Observed: an empty result.
Evidence #
The full E2E suite failed in python_test.PythonToolsTests.test_paths_globs_a_path_from_the_workspace_root, returning [] for both path patterns. In an isolated directory, rg --files . under this configuration produced raw bytes \x1b[0m\x1b[35m./src/deep/stream_test.go\x1b[0m\n. priv/python/albedo_plugins/files.py matches the raw output lines against the glob, so the ANSI sequences prevent a match. This was observed with ripgrep 15.2.0.
files.paths should handle a user's ripgrep configuration without corrupting its machine-readable results. A regression test can set RIPGREP_CONFIG_PATH to a temporary configuration with --pretty and check the path through the real kernel.
oof i wonder what else we’re relying upon that can bite like this. i should double check direnv too