           src: ['freedom-module.json']
           dest: chromeAppDevPath + 'scripts/'
         }, {  # Copy compiled typescript (no .spec) to build/dev/chrome/app/scripts
-          expand: true, cwd: 'build/typescript-src/', flatten: true
+          expand: true, cwd: 'build/compile-src/', flatten: true
           src: [
             'uproxy.js'
             'chrome/app/scripts/*.js'

        }, {
          # generic_ui compiled source.
          # (Assumes the typescript task has executed)
          expand: true, cwd: 'build/typescript-src/generic_ui'
          src: ['scripts/**', 'index.html', 'polymer/popup.js', 'polymer/vulcanized.*', '!**/*.ts']
          dest: chromeExtDevPath
        }, {

    ts: {

      # uProxy UI without any platform dependencies
      generic_ui: Rule.typescriptSrcLenient 'compile-src/generic_ui'
      generic_ui_specs: Rule.typescriptSpecDeclLenient 'compile-src/generic_ui'

      # Core uProxy without any platform dependencies
      generic_core: Rule.typescriptSrcLenient 'compile-src/generic_core'
      generic_core_specs: Rule.typescriptSpecDeclLenient 'compile-src/generic_core'

      # TODO: Remove uistatic / make it the same as uipolymer once polymer is
      # fully integrated.
      uistatic: Rule.typescriptSrcLenient 'compile-src/uistatic'
      uipolymer: Rule.typescriptSrcLenient 'compile-src/generic_ui/polymer'

      # Mocks to help jasmine along. These typescript files must be compiled
      # independently from the rest of the code, because otherwise there will
      # be many 'duplicate identifiers' and similar typescript conflicts.
      mocks: Rule.typescriptSrcLenient 'compile-src/mocks'

      # Compile typescript for all chrome components. This will do both the app
      # and extension in one go, along with their specs, because they all share
