Commit Graph

1067 Commits

Author SHA1 Message Date
Trevin Chow 68815302eb docs(skill-design): capture validate-skill-prose-with-cross-host-evals learning
From this PR's own validation gap: 111 unit tests plus five code-review rounds
all passed, yet a cross-host behavioral eval immediately found agents emitting a
wrong CLI flag from the continuation prose. Documents the practice (eval skill
prose behavior cross-host, not just the script) and the authoring rule (name CLI
flags, not just recorded variables).

Claude-Session: https://claude.ai/code/session_01WpxSdCDogx9GM2wdypEpiy
2026-07-21 15:11:08 -07:00
Trevin Chow 190d4940fd fix(ce-babysit-pr): name the anchor flag in the continuation protocol prose
Behavioral eval (skill-creator-style, cross-host): given a managed-stack layer
transition, 3 of 4 fresh agents (both Codex, one Claude) emitted
--invocation-started-at, which pr-snapshot rejects as an unrecognized argument.
The continuation prose named the recorded variable (RUN_STARTED_AT) but never
the flag (--session-started-at), so agents guessed. Name the actual flags in
both SKILL.md and watch-loop.md continuation sections (and call out that the
anchor flag is --session-started-at, not --invocation-started-at). Re-eval after
the fix: agents now emit --session-started-at. Not catchable by bun test.

Claude-Session: https://claude.ai/code/session_01WpxSdCDogx9GM2wdypEpiy
2026-07-21 15:01:13 -07:00
Trevin Chow 037a34e583 fix(ce-babysit-pr): re-capture the clock after the watch fetch for activity accounting
PR review (Codex P2): _run_snapshot captured 'now' before the blocking
_fetch_snapshot, so a suspend during the fetch was not credited as dead time by
that poll's _advance_activity; the next top-of-loop budget check could then fire
max-runtime on a gap it had not yet excluded. Re-capture _now() after the fetch
(generalizing the prior start-only re-capture) so the just-elapsed fetch/suspend
is credited before the cap is evaluated. Conservative direction either way.

Claude-Session: https://claude.ai/code/session_01WpxSdCDogx9GM2wdypEpiy
2026-07-21 14:31:53 -07:00
Trevin Chow 8a2b94f356 fix(ce-babysit-pr): carry dead time in the watch-loop.md continuation mechanics too
PR review (Codex P2): the SKILL.md continuation protocol was updated to pass
--continue-dead-time-seconds, but the parallel Managed-stack continuation section
in references/watch-loop.md (which Step 1 sends the agent to read for the
mechanics) still said to init the next layer with only --continue-invocation +
id/start/budget. An agent following that reference would omit the carry and
reintroduce the excluded-suspend-counted-as-active bug. Reconcile both.

Claude-Session: https://claude.ai/code/session_01WpxSdCDogx9GM2wdypEpiy
2026-07-21 14:15:39 -07:00
Trevin Chow b52ead0697 fix(ce-babysit-pr): honor dead-time carry on a same-id re-continue
PR review (Cursor Bugbot): --continue-dead-time-seconds was applied only on the
adopt branch, so a carry passed on a later same-id re-continue (early-return
path) was ignored. Honor it there too as a monotonic floor: raise dead_time to
the carried value without clobbering time the dir already accumulated. Test
covers the raise and the no-clobber-on-lower-carry cases.

Claude-Session: https://claude.ai/code/session_01WpxSdCDogx9GM2wdypEpiy
2026-07-21 14:05:30 -07:00
Trevin Chow 60aa314fcc fix(ce-babysit-pr): carry active-time dead time across managed-stack continuations
PR review (Codex P2): active-time dead_time is per-state-dir, but a managed
stack shares one non-rolling active-time budget across layers. A layer
continuation via --continue-invocation gave the next layer a fresh state dir
with dead_time reset to 0, so the prior layer's excluded-suspend time was
re-counted as active and the stack could hit max-runtime early. Add
--continue-dead-time-seconds so the continuation threads the prior layer's
accumulated dead time through; an ordinary adopt (no arg) still resets to 0,
keeping the unrelated-invocation reset Bugbot flagged. SKILL.md continuation
protocol updated to pass it; test covers both carry and reset.

Claude-Session: https://claude.ai/code/session_01WpxSdCDogx9GM2wdypEpiy
2026-07-21 13:58:37 -07:00
Trevin Chow a203a1de52 fix(ce-babysit-pr): seed activity heartbeat to load time, not the old anchor
PR review (Cursor Bugbot High + Codex P2): on legacy-state migration and
invocation adoption, last_activity_at was seeded to the old started_at, so the
first watch poll charged the whole historical span as one supra-threshold gap
and refunded it as dead time — a 9h-old 8h invocation read as ~15 min active and
never hit max-runtime. Seed the heartbeat to now (load time) instead, so the
first poll sees a ~0 gap and elapsed stays on real wall-clock. Adds a regression
test asserting an expired legacy invocation still max-runtimes with dead_time 0.

Claude-Session: https://claude.ai/code/session_01WpxSdCDogx9GM2wdypEpiy
2026-07-21 13:26:13 -07:00
Trevin Chow 88e082705a fix(ce-babysit-pr): reset active-time clock on invocation adoption; harden coverage
Code review follow-up. The --continue-invocation branch that adopts a new
invocation id into an existing state dir now resets last_activity_at and
dead_time_seconds (like --start), so it never inherits a prior invocation's
accumulated dead time. Adds tests for checkpoint-mode wall-clock retention, the
mark heartbeat bump, clock-backward safety, and the adoption reset; softens an
over-strong docstring claim to match the deferred coarse-discriminator limit.

Claude-Session: https://claude.ai/code/session_01WpxSdCDogx9GM2wdypEpiy
2026-07-21 11:47:21 -07:00
Trevin Chow dcf016f6aa fix(ce-babysit-pr): spend the invocation budget in active watch time
The 8h invocation budget was pure wall-clock (now - started_at), so time the
machine spent suspended (laptop asleep) drained the cap even though the watch
was doing nothing. Measure active watch-capability time instead: a coarse
activity heartbeat accumulates any span where neither the detector polled nor
the agent worked, and elapsed excludes it. A separate 3-calendar-day wall-clock
backstop bounds the zombie-watch risk. Human-blocked waits and active agent
work keep counting; checkpoint/durable modes retain wall-clock.

Claude-Session: https://claude.ai/code/session_01WpxSdCDogx9GM2wdypEpiy
2026-07-21 11:37:34 -07:00
Luke Johnson 11e3d462db fix(kiro): don't rewrite absolute paths as slash command skill refs (#1171) 2026-07-20 23:47:11 -07:00
Trevin Chow f0e188cca4 fix(cross-model): scope peer auth failures to execution context (#1211) 2026-07-20 23:45:40 -07:00
EthycalOne 6493b8d880 fix(ce-code-review): tool-adaptive evidence ladder for callsite recall (#1191)
Co-authored-by: DA <drew@totalqsr.com>
Co-authored-by: Trevin Chow <trevin@trevinchow.com>
2026-07-20 23:04:06 -07:00
dev_Hakaze 880231ffab fix(ce-code-review): make codex stdout-recovery JSON extractor string-aware (#1207)
Co-authored-by: arimu1 <19286898+arimu1@users.noreply.github.com>
Co-authored-by: Trevin Chow <trevin@trevinchow.com>
2026-07-20 22:17:25 -07:00
dev_Hakaze e5ed7e6776 fix(ce-code-review): skip cross-model adversarial peer when the diff is empty (#1205)
Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: arimu1 <arimu1@users.noreply.github.com>
Co-authored-by: Trevin Chow <trevin@trevinchow.com>
2026-07-20 22:12:44 -07:00
Trevin Chow 7d61a8af74 fix(ce-brainstorm): preserve multi-area project continuity (#1210) 2026-07-20 22:02:43 -07:00
Trevin Chow 5f48fb5397 feat(ce-plan,ce-brainstorm): elevate reasoning to a chosen model on any harness (#1206) 2026-07-20 21:36:26 -07:00
Trevin Chow 80550a8a7d feat(ce-ideate): generalize issue-tracker ideation to any tracker (#1209) 2026-07-20 21:35:50 -07:00
Trevin Chow 10bdacd294 fix(ce-code-review): move codex adversarial peer to gpt-5.6-luna at xhigh (#1208) 2026-07-20 21:34:33 -07:00
Trevin Chow b3c38a21a4 fix(ce-code-review): recover oversized adversarial reviews (#1200) 2026-07-20 18:05:48 -07:00
Trevin Chow d4b34013b2 fix(ce-doc-review): withdraw findings the user's earlier answers resolved (#1202) 2026-07-20 17:23:24 -07:00
Trevin Chow 30df24a65f feat(ce-work): add cross-model implementation engine (#1154) 2026-07-20 16:01:09 -07:00
Trevin Chow a0d11c4314 fix(ce-doc-review): make findings decidable without close doc knowledge (#1201) 2026-07-20 16:00:24 -07:00
Trevin Chow 3e2f372f96 fix(ce-explain): harden portable explainer delivery (#1195) 2026-07-20 15:58:21 -07:00
Trevin Chow 5dbce6938b fix(ce-resolve-pr-feedback): post replies as real multiline Markdown (#1199) 2026-07-20 15:44:25 -07:00
Trevin Chow 74ba763608 fix: name what document identifiers refer to in rendered findings and POVs (#1198) 2026-07-20 14:57:27 -07:00
Trevin Chow a5edad407e fix(ce-resolve-pr-feedback): stop replying into an unsubmitted review (#1196) 2026-07-20 14:08:55 -07:00
Trevin Chow 49e7d280f4 docs(ce-pov): explain the rationale behind the debate round cap (#1194) 2026-07-20 09:57:08 -07:00
Trevin Chow 4927d7a12a fix(ce-babysit-pr): gate checkout handback on push access, not fork status (#1190) 2026-07-19 15:33:52 -07:00
Michael Li c30fe1d65b fix(opencode): register CE skills as /commands in opencode plugin (#1185) 2026-07-19 15:02:49 -07:00
Trevin Chow 7d83515ee1 fix(ce-pov): identify supplied approaches in approach-set verdicts (#1189) 2026-07-19 13:51:07 -07:00
Luke Johnson a60bd82863 fix(droid): match tool names on word boundaries when inferring agent tools (#1176) 2026-07-19 13:47:12 -07:00
Trevin Chow 1f2ea66b2c docs(skills): add practical invocation examples (#1188) 2026-07-19 11:42:14 -07:00
dev_Hakaze 615131c90b fix(peer-job-runner): clear error when os.fork is unavailable (#1186) 2026-07-19 09:04:12 -07:00
Trevin Chow ddd82d2913 fix(review): recover from dispatch-script crashes before degrading cross-model checks (#1187) 2026-07-19 09:01:34 -07:00
Trevin Chow 8163a96e86 fix(ce-babysit-pr): handle moving base during watch (#1181) 2026-07-18 17:14:29 -07:00
Trevin Chow 4aeaf68530 perf(review): run codex adversarial peer at medium reasoning (#1183) 2026-07-18 10:49:46 -07:00
Trevin Chow d1bff96629 fix(ce-babysit-pr): bound stalled review signals (#1180) 2026-07-18 00:02:59 -07:00
Trevin Chow 424acdbd03 fix(ce-babysit-pr): enforce fixed invocation budgets (#1178) 2026-07-17 22:59:51 -07:00
Trevin Chow cd2bdd3c6f fix(ce-commit-push-pr): reconcile complete branch scope (#1179) 2026-07-17 21:42:54 -07:00
Trevin Chow 03603fa800 fix(scratch): isolate reusable temp state by user (#1177) 2026-07-17 17:15:34 -07:00
Trevin Chow 54d871ebee fix(ce-pov): preserve independent reviews and Claude auth (#1175) 2026-07-17 16:20:34 -07:00
Yaniv Ben-Ami 874555f263 feat(ce-compound): add lightweight headless depth (#1143)
Co-authored-by: Zara Chen <agent-zara@seethegalaxy.com>
Co-authored-by: Trevin Chow <trevin@trevinchow.com>
2026-07-17 14:58:55 -07:00
Trevin Chow 6ec2c90506 fix(ce-commit-push-pr): respect repository PR templates (#1174) 2026-07-17 14:57:01 -07:00
Trevin Chow c184234b1c fix(grounding): remove shared repo profile cache (#1172) 2026-07-17 14:42:29 -07:00
Trevin Chow f969a4d2f2 fix(ce-babysit-pr): accept UTC Z timestamps on Python 3.9 (#1173) 2026-07-17 14:17:25 -07:00
Trevin Chow 8197ca5c41 fix(workflow): preserve task visibility across CE stages (#1170) 2026-07-17 13:37:29 -07:00
Trevin Chow 80ec750ee3 fix(ce-code-review): right-size review orchestration (#1159) 2026-07-17 11:23:05 -07:00
Trevin Chow 32fae6c546 fix(ce-pov): document peer wait arguments (#1168) 2026-07-17 02:02:00 -07:00
Trevin Chow 37e030ade8 fix(ce-pov): clarify panel privacy and consent (#1167) 2026-07-17 01:41:38 -07:00
Trevin Chow 15a11d517f fix(ce-brainstorm): stop prompts overstating what the run will do (#1166) 2026-07-16 21:38:13 -07:00