// layout read the view of the turn before from the prompt cache in each of 10
// turns, and with the view in one message it missed once in 5.
//
-// The first message starts with "<chat>\n". The closing tag goes into the
-// state message after the view, so that no view message changes when lines
-// come. The layout keeps the line count and a hash of the text of each message
-// in layout.json, so it outlives a restart.
+// The first message starts with "<chat>\n". The closing tag goes into the state
+// message after the view, so that no view message changes when lines come. The
+// layout keeps the line count and a hash of the text of each message in
+// layout.json, so it outlives a restart.
type ViewLayout struct {
path string
Messages []ViewLayoutMessage `json:"messages"`
}
// Split returns the view messages for lines and saves the layout. It keeps the
-// earlier messages up to the first one whose text differs, and puts the rest
-// of the lines into one new message.
+// earlier messages up to the first one whose text differs, and puts the rest of
+// the lines into one new message.
func (l *ViewLayout) Split(lines []string) ([]string, error) {
var (
texts []string