message: Consolidated protol for all versions.
diff: @@ -77,6 +77,16 @@ export interface INack {
  sequenceNumber: number;
  }
  +/**
  + * System level metadata
  + */
  +export interface ISystemData {
  +
  + split: boolean;
  +
  + content: any;
  +}
  +
  /**
  * Document specific message
  */
  @@ -94,16 +104,19 @@ export interface IDocumentMessage {
  // back-compat: This should be string.
  contents: any;
  + // back-compat: Remove this optional field once clients are up to date.
  + metadata?: ISystemData;
  +
  // Traces related to the packet.
  traces: ITrace[];
  }
  /**
  - * Document client Join message.
  + * Document Message with optional system level data field.
  */
  -export interface IOutboundDocumentMessage extends IDocumentMessage {
  +export interface IDocumentSystemMessage extends IDocumentMessage {
  - detail?: string;
  + data: string;
  }
  export interface IContentMessage {
  @@ -165,6 +178,9 @@ export interface ISequencedDocumentMessage {
  // message is also the origin.
  origin: IBranchOrigin;
  + // back-compat: Remove this optional field once clients are up to date.
  + metadata?: ISystemData;
  +
  // Traces related to the packet.
  traces: ITrace[];
  @@ -172,6 +188,11 @@ export interface ISequencedDocumentMessage {
  timestamp: number;
  }
  +export interface ISequencedDocumentSystemMessage extends ISequencedDocumentMessage {
  +
  + data: string;
  +}
  +
  /**
  * Message related to a distributed data type
  */
  