Skip to content

perf(server): avoid full patches for checkpoint summaries - #9694

Merged
t3dotgg merged 2 commits into
mainfrom
t3code/perf-checkpoint-numstat
Sep 4, 2026
Merged

t3dotgg merged 2 commits into
mainfrom
t3code/perf-checkpoint-numstat

fix(server): preserve measured checkpoint output limit errors

c2e999d
Select commit
Loading
Failed to load commit list.
MacroscopeApp / Macroscope - Effect Service Conventions succeeded Sep 4, 2026 in 3m 19s

Effect Service Conventions: All clear

All clear

Details

Note

Your check run agent prompt is: .macroscope/check-run-agents/effect-service-conventions.md
More information about how Check Run Agents work can be found in our Help Center.

Reviewed changed non-test TypeScript in scope: apps/server/src/checkpointing/Diffs.ts, apps/server/src/checkpointing/CheckpointStore.ts, apps/server/src/orchestration/Layers/CheckpointReactor.ts, apps/server/src/vcs/GitVcsDriver.ts, apps/server/src/vcs/VcsDriver.ts, apps/server/src/vcs/VcsProcess.ts.

The previously flagged synthetic-cause error construction in GitVcsDriver.diffCheckpoints was replaced by selecting the process runner's outputMode: "error" for numstat requests, so the failure now surfaces as VcsProcessOutputLimitError with real stream/maxBytes/observedBytes from the runner — no free-text defect in the error chain. Remaining changed lines are additive input-shape plumbing (format, outputMode), a bounded span annotation, numstat argument selection, and a pure parsing helper; no new named imports from bare effect, no runtime execution inside services, no new lint suppressions, and no error-class convention violations were introduced.


🔍 Agent activity — 5 tool calls

💭 I'm reviewing the changed non-test TS files—Diffs.ts, CheckpointStore.ts, CheckpointReactor.ts, and the VCS driver files—since the prior finding was resolved, and now checking the current state of GitVcsDriver.ts's numstat handling and VcsProcess.ts.

1. browse_code — apps/server/src/vcs/VcsProcess.ts

2. browse_code — apps/server/src/checkpointing/Diffs.ts

💭 I'm now examining GitVcsDriver.ts to look at how diff checkpoints are handled.

3. browse_code — apps/server/src/vcs/GitVcsDriver.ts

4. browse_code — apps/server/src/vcs/GitVcsDriver.ts

💭 With that fix confirmed, I'm scanning the remaining changed lines in GitVcsDriver.ts for other convention issues, and the outputMode plumbing and numstat argument selection all look consistent with existing patterns. Now checking csProcess.ts's outputMode passthrough, which also looks fine. Next I want to examine CheckpointReactor.ts around lines 260-300, where the "numstat" format setting and parsing logic were changed.

5. browse_code — apps/server/src/orchestration/Layers/CheckpointReactor.ts

💭 The error.message usages are pre-existing and unchanged, only lines 273 and 277 differ. I'm checking whether streamEventsForTest already exists in RuntimeReceiptBus.ts since the diff doesn't show changes there, but I want to confirm since the test file now imports RuntimeReceiptBusTest. Diffs.ts remains a pure helper with no Effect service concerns, and CheckpointStore.ts just adds an optional format field with doc comments—nothing problematic. I don't see any new lint suppressions, ts-expect-error additions, or bare "effect" imports outside test files, so everything checks out clean with no findings to report.


Agent Credits: 37 credits

Token usage: 8 uncached input · 97,726 cache-read input · 38,273 cache-write input · 2,424 output
Agent Credits may also include non-token charges from external tools such as web research.