The legacy application - its src, tests, landing site, promo assets, docs, release tooling, CI workflows, and root configs - leaves the tree; it stays reachable in history. Everything under AgentCompany-New moves up unchanged: same package name, so the production userData/database path is untouched, and e2e/build scripts already resolved paths relative to the project. The developer cred.txt stays gitignored at its new location. Full verify:ci passes from the new root.
17 lines
524 B
TypeScript
17 lines
524 B
TypeScript
/**
|
|
* Wraps a notification callback so bursts collapse into one trailing call.
|
|
* Agent run loops emit change events per tool turn; without coalescing every
|
|
* emission forces the renderer through a full snapshot reload, which starves
|
|
* the UI thread once the database grows.
|
|
*/
|
|
export function coalesce(fn: () => void, delayMs: number): () => void {
|
|
let timer: NodeJS.Timeout | null = null;
|
|
return () => {
|
|
if (timer) return;
|
|
timer = setTimeout(() => {
|
|
timer = null;
|
|
fn();
|
|
}, delayMs);
|
|
};
|
|
}
|