Marc Guillemot pointed me to Canoo WebTest's reports, which capture the HTML source after every page load, and compiles it into nice reports.
http://webtest.canoo.com/webtest/reports/selftest/WebTestReport.html
We can probably do the same (plus capture screenshots, if we like). A Selenium Core results handler might allow Core to call back to signify that a page has loaded, submitting the HTML of the page. If Selenium RC's server implemented this callback, we could also take that opportunity to capture a PNG screenshot.
We'd clearly want to make sure this was only optional; saving screenshots and HTML source on every page load could get very slow and/or expensive on the disk space.
As a follow-on task, we'd presumably also need some way to compile all of the data into a nice HTML report. (It's not clear how we'd integrate that with the tests from other language test runners; it might even be impossible...?)
Here is a way to take a screenshot on every test failure: https://dev.youdevise.com/YDBlog/index.php?title=capture_screenshots_of_selenium_browser_&more=1&c=1&tb=1&pb=1
. However, the limitation is that it requires the test to be a JUnit test and Selenium RC to be used.