Если в корне сайта создать файл resource0.html (с содержимым, например, OK), а в .htaccess прописать те же самые директивы, но без участия modx (т.е. без вызова index.php):
RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^test\.html$ resource0.html [QSA] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^(.*)$ resource0.html?q=$1 [L,QSA]
то никаких артефактов наблюдаться не будет — будет выполнен внутренний редирект на файл resource0.html (в браузере отобразится текст «OK», при этом в строке браузера останется исходный URL site.ru/test.html).
Отсюда делаем 2 вывода: 1. Внешний (301) редирект выполняет не Apache, а modx (судя по всему, анализирует содержимое полей глобальной переменной $_SERVER — иначе как modx узнает, что на уровне веб-сервера был изменён URI ресурса, который ему втюхали) 2. Данный вопрос здесь — очень в тему ))
P.S. На 50% проблема решена. Дело за малым — исходники modx…