feat: consolidated and automate changelog management

- Added `rewrite-changelog.ts` and `fix-changelogs.ts` utilities to automate the consolidation of release notes using LLM-assisted processing.
- Updated multiple internal changelog files by consolidating redundant entries and improving phrasing for readability.
- Implemented `previewLine` utility in `coding-agent` to prevent visual spillover in status rows by managing text truncation and whitespace.
- Updated `package.json` with new workflow scripts for managing package-level change histories and documentation indexes.
This commit is contained in:
can1357
2026-06-27 03:08:52 +02:00
parent 3345085290
commit 5a044dc0da
49 changed files with 2219 additions and 1823 deletions
@@ -99,6 +99,17 @@ export function getPreviewLines(text: string, maxLines: number, maxLineLen: numb
return lines.slice(0, maxLines).map(l => truncateToWidth(l.trim(), maxLineLen, ellipsis));
}
/**
* Collapse a possibly multi-line string into a single line, then truncate it to
* `maxWidth` display cells. {@link truncateToWidth} alone caps width but
* newlines are zero-width, so multi-line content (markdown briefs, tool args,
* provider errors) would otherwise spill a single status row across several
* visual lines. Whitespace runs collapse to one space, so tabs are handled too.
*/
export function previewLine(text: string, maxWidth: number, ellipsis?: Ellipsis): string {
return truncateToWidth(text.replace(/\s+/g, " ").trim(), maxWidth, ellipsis);
}
// =============================================================================
// URL Utilities
// =============================================================================