mirror of
https://github.com/NousResearch/hermes-agent.git
synced 2026-05-21 05:11:26 +00:00
Multi-turn transcripts ran together visually because every user message got the same vertical rhythm regardless of position. Adds a short ─── in the border colour above every user message after the first, so each turn reads as its own block. Height estimator gains a `withSeparator` flag so virtual scrolling pre-allocates the extra two rows (rule + top margin) and avoids a jump on first measurement. While in the area: the busy-indicator duration was padded with `padStart(7)`, leaving five visible spaces between `·` and the digits (`⠋ · 2s`) — especially loud under the verb-less `unicode` style. Drop the padding entirely (`⠋ · 2s`); the model label now shifts a few columns as the duration grows, which is the right trade-off for the minimal indicator styles. The verb-padding test stays; the duration-padding test is removed alongside the function it covered.
18 lines
511 B
TypeScript
18 lines
511 B
TypeScript
import { describe, expect, it } from 'vitest'
|
|
|
|
import { padVerb, VERB_PAD_LEN } from '../components/appChrome.js'
|
|
import { VERBS } from '../content/verbs.js'
|
|
|
|
describe('FaceTicker verb padding', () => {
|
|
it('pads every verb to the same width', () => {
|
|
for (const verb of VERBS) {
|
|
expect(padVerb(verb)).toHaveLength(VERB_PAD_LEN)
|
|
}
|
|
})
|
|
|
|
it('keeps trailing ellipsis attached', () => {
|
|
for (const verb of VERBS) {
|
|
expect(padVerb(verb).startsWith(`${verb}…`)).toBe(true)
|
|
}
|
|
})
|
|
})
|