hunk.code_window:   const cjh = experimental.jobs.createJobHandler;
     const handler = cjh<json.JsonObject, BuilderInput, OutT>((options, context) => {
       const scheduler = context.scheduler;
       const progressChannel = context.createChannel('progress');
       const logChannel = context.createChannel('log');
       let currentState: BuilderProgressState = BuilderProgressState.Stopped;
       const teardownLogics: Array<() => (PromiseLike<void> | void)> = [];
       let tearingDown = false;
  
hunk.labels: keep keep keep keep add keep keep keep
hunk.after_edit:     const analyticsChannel = context.createChannel('analytics');
  
hunk.file_path: packages/angular_devkit/architect/src/create-builder.ts
hunk.type: add
file: /**
   * @license
   * Copyright Google Inc. All Rights Reserved.
   *
   * Use of this source code is governed by an MIT-style license that can be
   * found in the LICENSE file at https://angular.io/license
   */
  import { async, ComponentFixture, TestBed } from '@angular/core/testing';
  
  import { LibComponent } from './lib.component';
  
  describe('LibComponent', () => {
    let component: LibComponent;
    let fixture: ComponentFixture<LibComponent>;
  
    beforeEach(async(() => {
      TestBed.configureTestingModule({
        declarations: [ LibComponent ]
      })
      .compileComponents();
    }));
  
    beforeEach(() => {
      fixture = TestBed.createComponent(LibComponent);
      component = fixture.componentInstance;
      fixture.detectChanges();
    });
  
    it('should create', () => {
      expect(component).toBeTruthy();
    });
  });
  