agent-ecosystem/test/main
777genius c8d40be460 perf: cache negative team-affinity verdicts from a full head window
fileBelongsToTeam only cached POSITIVE affinity durably; a negative verdict was
re-decided on any change, so during a launch every non-matching transcript in the
project dir that grew (mtime+size change from an active session) was re-streamed
(createReadStream+readline) and re-parsed (up to 40 head lines) on every bootstrap
poll. A live atlas-hq-5 launch profile put this whole subsystem (readline streaming
+ fileBelongsToTeam + line/team matching) at ~31% of main-thread JS, the single
largest launch cost.

A team's first 40 head lines are immutable for an append-only transcript, so a
`false` decided from a FULL inspected window (>= TEAM_AFFINITY_SCAN_LINES) stays
valid while the file only grows. Track headWindowFull on the cache entry and short-
circuit such negatives the same way positives are short-circuited (size >= cached).
Short files (partial window) are still re-scanned on growth, so a team mention that
later lands inside the head window is still detected. A shrink/rewrite (size <
cached) forces a re-scan, identical to the positive path.

Behavior-preserving for affinity correctness (no new false negatives); only removes
redundant re-streams. Adds regression tests for both the durable-negative and the
short-file-flips-to-true cases.
2026-05-30 13:17:49 +03:00
..
build chore: checkpoint existing workspace changes 2026-05-23 13:48:35 +03:00
features perf: include process table usage metrics 2026-05-29 12:34:13 +03:00
http feat(team): improve runtime provider workflows 2026-05-17 19:11:26 +03:00
ipc fix(startup): serialize provider runtime checks 2026-05-26 09:12:05 +03:00
services perf: cache negative team-affinity verdicts from a full head window 2026-05-30 13:17:49 +03:00
utils fix(provenance): classify synthetic user turns 2026-05-26 23:51:17 +03:00
sentry.test.ts chore: checkpoint frontend workspace updates 2026-05-18 01:57:16 +03:00