diff --git a/client/pifr_client.admin.inc b/client/pifr_client.admin.inc
index adf857f..d531374 100644
--- a/client/pifr_client.admin.inc
+++ b/client/pifr_client.admin.inc
@@ -7,7 +7,7 @@
  */
 
 /**
- * Dispaly report value on general dashboard.
+ * Display report value on general dashboard.
  */
 function pifr_client_admin_dashboard_form(&$form, $form_state) {
   module_load_include('cron.inc', 'pifr_client');
@@ -22,7 +22,7 @@ function pifr_client_admin_dashboard_form(&$form, $form_state) {
   );
   $form['status']['toggle_reset'] = array(
     '#type' => 'submit',
-    '#value' => t('Toggle reset'),
+    '#value' => t('Reset tests'),
     '#submit' => array('pifr_client_admin_dashboard_form_toggle_submit'),
     '#weight' => 1001
   );
diff --git a/client/pifr_client.cron.inc b/client/pifr_client.cron.inc
index 5959c27..1dcbe5a 100644
--- a/client/pifr_client.cron.inc
+++ b/client/pifr_client.cron.inc
@@ -81,7 +81,7 @@ function pifr_client_cron_test_processes_kill($pids) {
 /**
  * Execute a system command in the background.
  *
- * @return interger Proccess ID.
+ * @return integer proccess ID.
  */
 function pifr_client_cron_exec_background($command) {
   return shell_exec("nohup $command > /dev/null 2> /dev/null & echo $!");
diff --git a/client/pifr_client.module b/client/pifr_client.module
index 16e8240..ec49647 100644
--- a/client/pifr_client.module
+++ b/client/pifr_client.module
@@ -70,7 +70,7 @@ function pifr_client_xmlrpc() {
   module_load_include('xmlrpc.inc', 'pifr_client');
   return array(
     array('pifr.version', 'pifr_client_xmlrpc_version', array('string'),
-           t('Retreive the PIFR version string.')),
+           t('Retrieve the PIFR version string.')),
   );
 }
 
diff --git a/client/pifr_client.xmlrpc.inc b/client/pifr_client.xmlrpc.inc
index 0e3e7ff..af5a174 100644
--- a/client/pifr_client.xmlrpc.inc
+++ b/client/pifr_client.xmlrpc.inc
@@ -8,7 +8,7 @@
  */
 
 /**
- * Retreive the PIFR version string.
+ * Retrieve the PIFR version string.
  *
  * @return string PIFR version string.
  */
@@ -38,10 +38,7 @@ function pifr_client_xmlrpc_request_next() {
     // Empty array, no tests.
     return FALSE;
   }
-
-  watchdog('pifr_client', 'Test request successfull, received: (t: @test_id).', array('@test_id' => $response['test_id']));
-  pifr_debug('XML-RPC pifr.next() response=%response ', array('%response' => var_export($response, TRUE)));
-
+  pifr_debug('Requested and received test from server: XML-RPC pifr.next() response=<pre>%response</pre>', array('%response' => var_export($response, TRUE)));
   return $response;
 }
 
@@ -64,8 +61,8 @@ function pifr_client_xmlrpc_send_result(array $result) {
     return FALSE;
   }
 
-  watchdog('pifr_client', 'Test results successfull sent: (t: @test_id).', array('@test_id' => $result['test_id']));
-  pifr_debug('XML-RPC pifr.result() response=%response ', array('%response' => var_export($response, TRUE)));
+  watchdog('pifr_client', 'Test results successfully sent: (t: @test_id).', array('@test_id' => $result['test_id']));
+  pifr_debug('Sent result to PIFR server; result=<pre>%result</pre>', array('%result' => var_export($result, TRUE)));
 
   return TRUE;
 }
diff --git a/client/review/db/mysql.inc b/client/review/db/mysql.inc
index a054c10..9cc0bb1 100644
--- a/client/review/db/mysql.inc
+++ b/client/review/db/mysql.inc
@@ -38,6 +38,11 @@ class pifr_client_db_interface_mysql implements pifr_client_db_interface {
   public function query($sql) {
     if (db_set_active('pifr_checkout')) {
       $result = @db_query($sql);
+      if (!$result) {
+      	db_set_active();
+        watchdog('pifr', 'Failed query %query', array('%query' => $sql));
+      	return FALSE;
+      }
       $rows = array();
       while ($row = db_fetch_array($result)) {
         $rows[] = $row;
diff --git a/client/review/vcs/git.inc b/client/review/vcs/git.inc
index 253666a..5dc538d 100644
--- a/client/review/vcs/git.inc
+++ b/client/review/vcs/git.inc
@@ -10,7 +10,7 @@
 /**
  * Git implementation of VCS interface.
  */
-class PIFRClientReviewVCS_git implements PIFRClientReviewVCS {
+class pifr_client_vcs_git extends pifr_client_vcs {
 
   /**
    * Array of patch levels to try when patching.
@@ -52,6 +52,30 @@ class PIFRClientReviewVCS_git implements PIFRClientReviewVCS {
     return pifr_client_review::exec($cmd);
   }
 
+  public function annotate($file) {
+    $lines = pifr_client_review::exec_output("git annotate $file");
+
+    $map = array();
+    $number = 1;
+    foreach ($lines as $line) {
+      if (preg_match('/.*?\s+\(\s+(.*?)\s+.*?\)/', $line, $match)) {
+        $map[$number++] = $match[1];
+      }
+    }
+    return $map;
+  }
+
+  public function commit_id() {
+    $lines = pifr_client_review::exec_output('git log -n 1');
+
+    foreach ($lines as $line) {
+      if (preg_match('/^commit (.*?)$/m', $line, $match)) {
+        return $match[1];
+      }
+    }
+    return FALSE;
+  }
+
   /**
    * Apply a patch.
    *
@@ -83,7 +107,7 @@ class PIFRClientReviewVCS_git implements PIFRClientReviewVCS {
    *   The patch which was applied. (It has to have already been applied to
    *   initialize $this->patch_level.
    */
-  public function get_changed_files($patch) {
+  public function changed_files($patch) {
     $contents = file_get_contents($patch);
     // This regex looks through the patch file for lines of the format
     // +++ b/install.php
diff --git a/review/client.inc b/review/client.inc
index 4d5c87e..cbf9bdf 100644
--- a/review/client.inc
+++ b/review/client.inc
@@ -26,7 +26,7 @@ abstract class pifr_client_review {
   private $log_file;
 
   /**
-   * Directory in which code should be placed.
+   * Directory in which project code (code under test)should be placed.
    *
    * @var string
    */
@@ -43,6 +43,7 @@ abstract class pifr_client_review {
    * Original environment information.
    *
    * Keys: 'directory', 'db_prefix', 'base_url', 'base_path'.
+   * $original['directory'] is the cwd when object was created.
    *
    * @var array
    */
@@ -125,20 +126,33 @@ abstract class pifr_client_review {
     variable_set('pifr_client_operation', 'init');
 
     // Initialize the log file.
-    touch(file_directory_path() . '/review.log');
-    $this->log_file = realpath(file_directory_path() . '/review.log');
-    $this->log('Log initialized.');
+    $this->log_file = file_directory_path() . "/review.test_" . $test['test_id'] . "." . basename($test['files'][0] . "." . time() . ".log");
+    touch($this->log_file);
+    // Replace with the full path now that the file is created.
+    $this->log_file = realpath($this->log_file);
+
+    // Create a symlink to the logfile at review.log
+    $log_file_link = file_directory_path() . "/review.log";
+    unlink($log_file_link);
+    symlink(realpath($this->log_file), $log_file_link);
+
+    $this->log("Log initialized ({$this->log_file})");
 
     // Get list of operations from server implementation and remove the last
     // two operations since they should be 'fail', and 'pass'.
     require_once drupal_get_path('module', 'pifr_server') . '/pifr_server.review.inc';
     $plugin = pifr_server_review_plugin_load($test['review']['plugin']);
     $plugin->init();
+
     $this->operations = array_splice($plugin->operation_get_all(), 0, -2);
     $this->result_codes = array(
       'fail' => count($this->operations) + 1,
       'pass' => count($this->operations) + 2,
     );
+    if (PIFR_DEBUG) {
+    	$this->log('Operations:' . print_r($this->operations, TRUE));
+    	$this->log('Result Codes: ' . print_r($this->result_codes, TRUE));
+    }
 
     // Initialize environment variables and review information.
     $this->checkout_directory = file_directory_path() . '/checkout';
@@ -171,15 +185,11 @@ abstract class pifr_client_review {
    * @param string $string String to log.
    */
   protected function log($string) {
-    static $started = FALSE;
     $string = '[' . format_date(time(),'custom', 'H:i:s') . '] ' . $string . "\n";
-    if (!$started) {
-      $started = TRUE;
-      file_put_contents($this->log_file, $string);
-    }
-    else {
-      file_put_contents($this->log_file, $string, FILE_APPEND);
+    if (!file_exists($this->log_file)) {
+    	touch($this->log_file);
     }
+    file_put_contents($this->log_file, $string, FILE_APPEND);
   }
 
   /**
@@ -276,6 +286,10 @@ abstract class pifr_client_review {
    */
   public function run() {
     $this->log('Review started.');
+    if (PIFR_DEBUG) {
+      $this->log('Test: ' . print_r($this->test, TRUE));
+      $this->log('Operations: ' . print_r($this->operations, TRUE));
+    }
 
     // Cycle through all operations until an error is encountered, or all the
     // operations have been completed.
@@ -298,7 +312,8 @@ abstract class pifr_client_review {
       $code++;
     }
 
-    $this->log('Review complete.');
+    $result = $this->get_result();
+    $this->log("Review complete. test_id=" . $result['test_id'] . ' result code=' . $result['code'] . ' details=' . print_r($result['details'], TRUE));
 
     // In case any operation failed reset data members.
     global $db_prefix, $base_url, $base_path;
@@ -309,6 +324,7 @@ abstract class pifr_client_review {
     $base_path = $this->original['base_path'];
 
     $this->log('Static variables reset.');
+
   }
 
   /**
@@ -320,7 +336,7 @@ abstract class pifr_client_review {
       if (file_exists($this->checkout_directory . '/sites/default')) {
         // Change permissions on settings.php which is read-only after installation.
         if (!chmod($this->checkout_directory . '/sites/default', 0777)) {
-          $this->set_error(array('@reason' => 'unable to change permission on site/default.'));
+          $this->set_error(array('@reason' => 'unable to change permission on sites/default.'));
           return;
         }
       }
diff --git a/review/drupal/pifr_drupal.client.inc b/review/drupal/pifr_drupal.client.inc
index 754aab7..91f220b 100644
--- a/review/drupal/pifr_drupal.client.inc
+++ b/review/drupal/pifr_drupal.client.inc
@@ -38,14 +38,15 @@ class pifr_client_review_pifr_drupal extends pifr_client_review {
     parent::__construct($test);
 
     $this->core_url = variable_get('pifr_drupal_repository', 'git://git.drupal.org/project/drupal.git');
-
+    $this->admin_username = $test['review']['argument']['drupal.user'];
+    $this->admin_password = !empty($test['review']['argument']['drupal.pass']) ? $test['review']['argument']['drupal.pass'] : 'drupal';
     // Allow the Drupal core URL to be overridden via an argument.
-    if (!empty($this->test['review']['argument']['core-url'])) {
-      $this->core_url = $this->test['review']['argument']['core-url'];
+    if (!empty($this->test['review']['argument']['drupal.core.url'])) {
+      $this->core_url = $this->test['review']['argument']['drupal.core.url'];
     }
 
-    watchdog('pifr_client', 'Test: <pre>%test</pre>', array('%test' => print_r($test, TRUE)));
-    $this->log('core_url = [' . $this->core_url . '];\n  Test repository = [' . $this->test['vcs']['main']['repository']['url'] . ']');
+    pifr_debug('Test(%test_id) request received: <pre>%test</pre>', array('%test_id' => $this->test['test_id'], '%test' => print_r($test, TRUE)));
+    $this->log('core_url = [' . $this->core_url . '];  Test repository = [' . $this->test['vcs']['main']['repository']['url'] . ']');
     if ($this->test['vcs']['main']['repository']['url'] != $this->core_url) {
       // Main repository is not core, so this must be a module test. Move the
       // module repository (main) to the dependencies and find the core
@@ -68,7 +69,7 @@ class pifr_client_review_pifr_drupal extends pifr_client_review {
     }
 
     // Add SimpleTest as dependencies, unless it has already been added.
-    if ($this->test['review']['argument']['core'] == 6) {
+    if ($this->test['review']['argument']['drupal.core.version'] == 6) {
       $simpletest_url = variable_get('pifr_simpletest_repository', 'git://git.drupal.org/project/simpletest.git');
       $found = FALSE;
       foreach ($this->test['vcs']['dependencies'] as $key => $dependency) {
@@ -90,6 +91,16 @@ class pifr_client_review_pifr_drupal extends pifr_client_review {
         );
       }
     }
+    // If the main project is not Drupal core then all patches should be
+    // applied from the root of the primary dependency or project directory.
+    if (!empty($this->project_directory)) {
+      $this->arguments['test.directory.dependency'] = $this->module_directory;
+      $this->arguments['test.directory.apply'] = $this->module_directory . '/' . $this->project_directory;
+    }
+    if (PIFR_DEBUG) {
+      $this->log(t('Dependencies and directories after pifr_drupal construct: project_directory=%project_directory, vcs=<pre>%vcs</pre>, arguments=<pre>%arguments</pre>', array('%project_directory' => $this->project_directory, '%vcs' => print_r($this->test['vcs'], TRUE), '%arguments' => print_r($this->arguments, TRUE))));
+    }
+  }
 
   /**
    * Checkout dependencies into the modules directory.
@@ -121,6 +132,7 @@ class pifr_client_review_pifr_drupal extends pifr_client_review {
    */
   protected function checkout_dependencies(array $dependencies) {
     $directory = $this->checkout_directory . '/' . $this->module_directory;
+    $this->log('checkout_dependencies(): directory=' . $directory . ' dependencies=' . print_r($dependencies));
     foreach ($dependencies as $dependency) {
       $this->checkout_branch($dependency, $directory);
 
@@ -233,7 +245,7 @@ class pifr_client_review_pifr_drupal extends pifr_client_review {
 
     // Step: Select an installation profile.
     // Step: Choose language.
-    $pofile = $this->test['review']['argument']['core'] == 6 ? 'default' : 'standard';
+    $pofile = $this->test['review']['argument']['drupal.core.version'] == 6 ? 'default' : 'standard';
     $html = $b->drupalGet('install.php', array('query' => 'profile=' . $pofile . '&locale=en'));
     if (empty($html)) {
       $this->set_error(array('@reason' => 'failed to run install.php with profile ' . $pofile));
@@ -261,19 +273,18 @@ class pifr_client_review_pifr_drupal extends pifr_client_review {
       $edit['mysql[username]'] = $db_info['username'];
       $edit['mysql[password]'] = $db_info['password'];
       $edit['mysql[host]'] = $db_info['host'];
-      $edit['mysql[db_prefix]'] = '';
     }
 
     $b->drupalPost(NULL, $edit, t('Save and continue'));
 
     if (($b->results['#exception'] + $b->results['#fail']) != 0) {
-      $this->set_error(array('@reason' => 'failed to set database information (database name, user, password were wrong)'));
+      $this->set_error(array('@reason' => 'Installing: failed to set database information (database name, user, password were wrong)'));
       return;
     }
 
     // Step: Site configuration.
     if (empty($this->arguments['drupal.pass'])) {
-      $this->arguments['drupal.pass'] = $b->randomName(16);
+      $this->arguments['drupal.pass'] = 'drupal';
     }
 
     $edit = array();
@@ -281,7 +292,7 @@ class pifr_client_review_pifr_drupal extends pifr_client_review {
     $edit['site_mail'] = 'admin@example.com';
     $edit['account[name]'] = $this->admin_username;
     $edit['account[mail]'] = 'admin@example.com';
-    $edit['account[pass][pass1]'] = $this->admin_password = 'drupal';
+    $edit['account[pass][pass1]'] = $this->admin_password;
     $edit['account[pass][pass2]'] = $this->admin_password;
     $edit['update_status_module[1]'] = FALSE;
     $b->drupalPost(NULL, $edit, t('Save and continue'));
@@ -294,7 +305,7 @@ class pifr_client_review_pifr_drupal extends pifr_client_review {
 
     // Make sure that site installed correctly.
     if (($b->results['#exception'] + $b->results['#fail']) != 0) {
-      $this->set_error(array('@reason' => 'failed to complete installation'));
+      $this->set_error(array('@reason' => 'Installing: failed to complete installation by setting admin username/password/etc.'));
     }
 
     // Set Drupal variables if specified.
diff --git a/review/drupal/pifr_drupal.server.inc b/review/drupal/pifr_drupal.server.inc
index 5af8f89..5ad4bf3 100644
--- a/review/drupal/pifr_drupal.server.inc
+++ b/review/drupal/pifr_drupal.server.inc
@@ -23,7 +23,7 @@ abstract class pifr_server_review_pifr_drupal extends pifr_server_review_pifr_as
     $this->argument_default['test.extensions'] = array('php', 'inc', 'install', 'module', 'test');
     $this->argument_default += array(
       'drupal.core.version' => 7,
-      'drupal.core.url' => ':pserver:anonymous:anonymous@cvs.drupal.org:/cvs/drupal/drupal',
+      'drupal.core.url' => 'git://git.drupal.org/project/drupal.git',
       'drupal.modules' => array(),
       'drupal.user' => 'admin',
       'drupal.pass' => NULL,
diff --git a/review/server.inc b/review/server.inc
index 6ccb828..3ce8985 100644
--- a/review/server.inc
+++ b/review/server.inc
@@ -64,17 +64,17 @@ abstract class pifr_server_review {
     'setup' => array(
       'title' => 'setup environment',
       'active title' => 'setup environment',
-      'description' => 'The client is most likely malfunctioning.',
-      'help' => 'The client failed to setup the testing environment. Check the pifr_client the !install.',
+      'description' => 'The testbot client is probably malfunctioning.',
+      'help' => 'The testbot client failed to setup the testing environment. Check the pifr_client the !install.',
       'summary' => 'Setup environment: @reason',
       'confirmation' => FALSE,
     ),
     'fetch' => array(
       'title' => 'invalid file URL',
-      'active title' => 'detect an invalid file URL',
-      'description' => 'Ensure the file server is functioning properly.',
-      'help' => 'The client failed to detect an invalid file URL that pointed to example.com.',
-      'summary' => 'Fetch test file: @reason',
+      'active title' => 'detect an invalid patch URL',
+      'description' => 'Ensure the patch to be tested can be accessed and downloaded.',
+      'help' => 'The testbot client failed to detect an invalid patch URL that pointed to example.com.',
+      'summary' => 'Fetch test patch: @reason',
       'confirmation' => 'no-patch',
     ),
     'checkout' => array(
@@ -96,15 +96,15 @@ abstract class pifr_server_review {
     'apply' => array(
       'title' => 'non-applicable patch',
       'active title' => 'detect a non-applicable patch',
-      'description' => 'Ensure the patch applies to the lastest checkout of the code-base.',
-      'help' => 'The client failed to @type which is induced using the !patch.',
+      'description' => 'Ensure the patch applies to the tip of the chosen the code-base.',
+      'help' => 'The testbot client failed to @type which is induced using the !patch.',
       'summary' => 'Unable to apply patch @filename',
       'confirmation' => 'pifr_server',
     ),
     'syntax' => array(
       'title' => 'invalid syntax',
       'active title' => 'detect invalid syntax',
-      'description' => 'Check the syntax of the files.',
+      'description' => 'Check the syntax of the patched files.',
       'help' => 'The client failed to @type which is induced using the !patch.',
       'summary' => 'Invalid syntax in @filename',
       'confirmation' => FALSE,
@@ -129,7 +129,7 @@ abstract class pifr_server_review {
       'title' => 'review failed',
       'active title' => 'detect a failing review',
       'description' => 'Look over the review failures below.',
-      'help' => 'The client failed to @type which is induced using the !patch.',
+      'help' => 'The testbot client failed to @type which is induced using the !patch.',
       'summary' => 'Failed review',
       'confirmation' => FALSE,
     ),
@@ -137,7 +137,7 @@ abstract class pifr_server_review {
       'title' => 'review passed',
       'active title' => 'complete test suite with all tests passing',
       'description' => 'Congratulation everything looks good!',
-      'help' => 'Client failed to run the test suite with all tests passing.',
+      'help' => 'Testbot client ran the test suite with all tests passing.',
       'summary' => 'Passed review',
       'confirmation' => FALSE,
     ),
diff --git a/review/simpletest/pifr_simpletest.client.inc b/review/simpletest/pifr_simpletest.client.inc
index 6405b30..cd37dec 100644
--- a/review/simpletest/pifr_simpletest.client.inc
+++ b/review/simpletest/pifr_simpletest.client.inc
@@ -89,11 +89,11 @@ class pifr_client_review_pifr_simpletest extends pifr_client_review_pifr_drupal
 
     $b = new PIFRBrowser();
 
-    watchdog('pifr_client', 'Test in execution: %test', array('%test' => print_r($test, TRUE)));
+    pifr_debug('Simpletest test in execution: <pre>%test</pre>', array('%test' => print_r($test, TRUE)));
     // Login as admin.
     $user = new stdClass();
-    $user->name = $this->arguments['drupal.user'];
-    $user->pass_raw = $this->arguments['drupal.pass'];
+    $user->name = $this->admin_username;
+    $user->pass_raw = $this->admin_password;
     $b->drupalLogin($user);
 
     // Enable SimpleTest.
@@ -113,7 +113,7 @@ class pifr_client_review_pifr_simpletest extends pifr_client_review_pifr_drupal
     $base_path = $this->original['base_path'];
 
     if (($b->results['#exception'] + $b->results['#fail']) != 0) {
-      $this->set_error(array('@reason' => 'failed to enable SimpleTest'));
+      $this->set_error(array('@reason' => 'failed to enable simpletest module'));
       return;
     }
 
diff --git a/server/pifr_server.file.inc b/server/pifr_server.file.inc
index 5904b80..e2eb80c 100644
--- a/server/pifr_server.file.inc
+++ b/server/pifr_server.file.inc
@@ -164,7 +164,7 @@ class PIFRTestFile extends PIFRTest {
     $rows['branch'] = array(t('Branch'), l($branch_test['title'], 'pifr/test/' . $branch_test['test_id']));
 
     $link = $this->file['link'];
-    $rows['link'] = array(t('Link'), $link ? l(t('Project information'), $link) : '<em>' . t('none') . '</em>');
+    $rows['link'] = array(t('Link'), $link ? l(t('Issue Link'), $link) : '<em>' . t('none') . '</em>');
 
     return $this->formatTable($rows);
   }
diff --git a/server/pifr_server.test b/server/pifr_server.test
index cd4f8cd..2a5ed9c 100644
--- a/server/pifr_server.test
+++ b/server/pifr_server.test
@@ -452,22 +452,18 @@ class PIFRServerXMLRPCTestCase extends PIFRServerTestCase {
       array(
         'client_identifier' => '3',
         'name' => 'Foo',
-        'repository_type' => 'cvs',
-        'repository_url' => ':pserver:anonymous:anonymous@cvs.drupal.org:/cvs/drupal-contrib/contributions/modules/foo',
+        'repository_type' => 'git',
+        'repository_url' => 'git://git.drupal.org/project/foo.git',
         'link' => 'http://example.com/node/3',
       ),
       array(
         'client_identifier' => '1',
         'name' => 'Drupal',
-        'repository_type' => 'cvs',
-        'repository_url' => ':pserver:anonymous:anonymous@cvs.drupal.org:/cvs/drupal/drupal',
-        'link' => 'http://example.com/node/1',
-      ),
-      array(
-        'client_identifier' => '5',
+        'repository_type' => 'git',
+        'repository_url' => 'git://git.drupal.org/project/drupal.git',
         'name' => 'Bar',
-        'repository_type' => 'cvs',
-        'repository_url' => ':pserver:anonymous:anonymous@cvs.drupal.org:/cvs/drupal-contrib/contributions/modules/bar',
+        'repository_type' => 'git',
+        'repository_url' => 'git://git.drupal.org/project/bar.git',
         'link' => 'http://example.com/node/5',
       ),
     ),
diff --git a/server/pifr_server.test.inc b/server/pifr_server.test.inc
index 1fc2239..3f8017a 100644
--- a/server/pifr_server.test.inc
+++ b/server/pifr_server.test.inc
@@ -128,16 +128,17 @@ function pifr_server_test_get_next(array $client) {
 
     // Return the next eligible branch or file test.
     if ($next = pifr_server_test_get_next_eligible($client)) {
+      pifr_debug('Next eligible=%next', array('%next' => print_r($next, TRUE)));
       $test = $next[0];
       $environment = $next[1];
       pifr_server_test_sent($test, $client, $environment['environment_id']);
 
-      // Prepare test XML-RPC reponse.
+      // Prepare test XML-RPC response.
       return pifr_server_test_xmlrpc($test, $environment);
     }
   }
 
-  // No eligibile tests for the client at this time.
+  // No eligible tests for the client at this time.
   return array();
 }
 
@@ -882,9 +883,8 @@ abstract class PIFRTest {
   public function getTestTable() {
     $rows = array();
 
-    $rows['status'] = array(
-      'data' => array(t('Status'), pifr_server_test_status($this->test['status'])),
-      'class' => $this->test['status'] == PIFR_SERVER_TEST_STATUS_POSTPONED ? 'pifr-fail' : '',
+    $rows['status'] = array(t('Status'), pifr_server_test_status($this->test['status']),
+      $this->test['status'] == PIFR_SERVER_TEST_STATUS_POSTPONED ? 'pifr-fail' : '',
     );
     $rows['last_received'] = array(t('Last received'), pifr_server_format_date($this->test['last_received']));
     $rows['last_requested'] = array(t('Last requested'), pifr_server_format_date($this->test['last_requested']));
diff --git a/server/pifr_server.xmlrpc.inc b/server/pifr_server.xmlrpc.inc
index d3324a3..5c7dd17 100644
--- a/server/pifr_server.xmlrpc.inc
+++ b/server/pifr_server.xmlrpc.inc
@@ -45,7 +45,7 @@ define('PIFR_SERVER_BATCH_MAX_COUNT', 100);
  *     'client_identifier', // Identifier that will be used to reference the project.
  *     'name', // Name of project.
  *     'repository_type', // Repository type.
- *     'repository_url', // Repository URL, pserver:anonymous:anonymous@cvs.drupal.org:/cvs/drupal.
+ *     'repository_url', // Repository URL, git://git.drupal.org/project/drupal.git.
  *     'link', // (Optional) Web accessible link representing project.
  *   );
  * </code>
@@ -83,6 +83,7 @@ function pifr_server_xmlrpc_queue($client_key, $batch) {
 
     // Validate and clean the incoming batch.
     if (!($batch = pifr_server_xmlrpc_validate('queue', $batch))) {
+      watchdog('pifr_client', 'Failed validation of incoming batch');
       return array(
         'response' => PIFR_RESPONSE_DENIED,
         'errors' => pifr_server_xmlrpc_error(),
@@ -347,6 +348,7 @@ function pifr_server_xmlrpc_next($client_key) {
  * @return Response code: PIFR_RESPONSE_*.
  */
 function pifr_server_xmlrpc_result($client_key, array $result) {
+  pifr_debug('Received result from testbot client: <pre>%result</pre>', array('%result' => print_r($result, TRUE)));
   // Check if valid test client.
   $client = pifr_server_client_check_key($client_key, PIFR_SERVER_CLIENT_TYPE_TEST);
 
diff --git a/util/shell/pifr_shell.module b/util/shell/pifr_shell.module
index b1969be..93a1f47 100644
--- a/util/shell/pifr_shell.module
+++ b/util/shell/pifr_shell.module
@@ -177,8 +177,8 @@ function pifr_shell_input_example_get($method) {
   array(
     'client_identifier' => 3060,
     'name' => 'Drupal',
-    'repository_type' => 'cvs',
-    'repository_url' => ':pserver:anonymous:anonymous@cvs.drupal.org:/cvs/drupal/drupal',
+    'repository_type' => 'git',
+    'repository_url' => 'git://git.drupal.org/project/drupal.git',
     'link' => 'http://drupal.org/project/drupal',
   ),
 ),
