Add agent rehearsal harness, findings, and per-run evidence for split-loop-with-lambda
Six scripted pi sub-agent runs (3 tool regimes × 2 models) rehearsed the exercise; deterministic gate = solution test + approved file. Key results: mandated CLI triples cost on the strong model (4:06 vs 0:39, PASS both); weak model fails only under the mandate (A+Q), passes when free or optional. Drift documented with code: scorer.updateSelection left inside the extracted method (A+Q, C+Q). Harness in tools/rehearse; summary in rehearsal-findings.md; per-run evidence in rehearsal-runs/; cheat sheet in rehearse-with-agent.md corrected (lambda-typed parameters unsupported).
This commit is contained in:
@@ -0,0 +1,35 @@
|
||||
--- Run A+Q ---
|
||||
session file: /tmp/rehearsal/runs/A+Q/session/2026-09-27T14-54-11-453Z_01a0e35b-fbfd-71d3-8ae9-9dcefb682f49.jsonl
|
||||
model: Qwen/Qwen3.6-35B-A3B
|
||||
session span: 127.1 s
|
||||
assistant messages: 27
|
||||
tool calls: 28 total
|
||||
bash 17
|
||||
read 8
|
||||
edit 3
|
||||
tokens input: 338864
|
||||
tokens output: 10563
|
||||
tokens cacheRead: 0
|
||||
tokens cacheWrite: 0
|
||||
tokens reasoning: 3385
|
||||
tokens TOTAL (sum): 352812
|
||||
--- /usr/bin/time -v (wall clock + max RSS) ---
|
||||
Elapsed (wall clock) time (h:mm:ss or m:ss): 2:07.25
|
||||
Maximum resident set size (kbytes): 272272
|
||||
Exit status: 0
|
||||
--- pi stdout (last 15 lines) ---
|
||||
+ private List<Boolean> collectExpectedWeather(List<Instant> interestingDates,
|
||||
+ LongFunction<Boolean> dayOffsetToWeather) {
|
||||
+ List<Boolean> result = new ArrayList<>();
|
||||
+ for (Instant interestingDate : interestingDates) {
|
||||
+ scorer.updateSelection();
|
||||
+ var forecastDate = Instant.parse("2023-04-26T14:00:00.000-07:00");
|
||||
+ long daysForward = ChronoUnit.DAYS.between(forecastDate, interestingDate);
|
||||
+ result.add(dayOffsetToWeather.apply(daysForward));
|
||||
+ }
|
||||
+ return result;
|
||||
+ }
|
||||
}
|
||||
```
|
||||
|
||||
The code **compiles cleanly**. The test fails because the old `longRangeForecast(String)` signature no longer exists — which is expected per the task instructions.
|
||||
Reference in New Issue
Block a user