Repository navigation
feat: read Claude's task tools and Codex's proposed plan from live captures (#280) - #394
Conversation
…ptures (#280) Two live turns captured on 2026-10-23 and replayed as fixtures: - Claude Code 2.1.309 with CLAUDE_CODE_ENABLE_TODO_TOOLS=1 used TaskCreate and TaskUpdate. Modex now reads them as the turn's plan (from "claude-tasks"), counting each call once its result confirms it. Modex does not set the variable, as Val chose (option 1). - codex-cli 0.163.0 in plan collaboration mode asked through requestUserInput and completed a `plan` item. The task record keeps it as `proposedPlan`, so the turn does not say "no plan". It sent no turn/completed, so the quiet-end now also follows a proposed plan. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
Acceptance review — one cancellation defect remainsI reviewed #394 against #280, including the captured Claude task calls, the live Codex plan-mode replay, the saved-note representation, and the plan quiet-end logic. Finding — plan quiet-end can report a user-stopped turn as completed. After a completed Requested correction: preserve the existing stop/acknowledgment semantics when quiet-end races with cancellation; it must not record the cancelled turn as completed. Add a replay regression for completed plan item → user Stop → no terminal Codex event through the quiet timeout, and assert the turn is not reported as successfully completed. Other acceptance observations: Claude TaskCreate is only added after a matching task-created result; TaskUpdate is limited to task IDs created in the same turn; the capture leaves the failed check's task in progress; the Codex proposed plan is kept as an explicitly proposed, status-free plan in the saved note. The environment flag is not enabled by Modex. Tests and replay fixtures do not establish that a native The reported build/unit/E2E results are useful regression evidence, but the cancellation defect should be fixed and retested before #394 enters the merge queue. |
|
Thanks — confirmed and fixed in 28f14db.
🤖 Generated with Claude Code |
#280) After Codex's final answer or proposed plan, the quiet timer could fire after the user pressed Stop and record the stopped turn as completed. Stop now clears the timer, and the timer never ends a turn whose signal is aborted: a stopped turn waits for Codex to acknowledge the interrupt, as any stop does. Regression: live plan-mode replay, Stop after the plan item, no further Codex event past the quiet period. Red before the fix (the turn went idle). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Closes the last two open CF-7 (#280) items, both from live captures taken on 2026-10-23.
Claude's task tools (Val's option 1)
Claude Code 2.1.309, run with Modex's own arguments plus
CLAUDE_CODE_ENABLE_TODO_TOOLS=1, loadedTaskCreate/TaskUpdatethroughToolSearch. It created three tasks and updated them as it worked. The redacted capture istest/fixtures/claude-tasks-2.1.309.jsonl.claude-tasks("Claude's task list").tool_resultconfirms it. The task id is the number in "Task #N created".deletedremoves the task.node check.jsfailed because the throwaway repo sat under a"type": "module"package. Claude left that task in progress, and the plan shows it as In progress, not done.Codex plan mode
A live
gpt-6.1-solturn in plan collaboration mode, which Modex has used since #385, asked its question throughrequestUserInput, then completed aplanitem. The redacted capture istest/fixtures/codex-plan-mode-0.163.0.jsonl. The replay exposed two bugs:proposedPlan. The note and the read-only view show it under Plan as "Codex proposed this plan in plan mode", and the false line is gone.turn/completed. Modex's quiet-end only followed a final answer, so the turn would have stayed open forever. Fix: a completedplanitem now starts the same quiet-end timer, with its own notice. Red check: withcodex.tsreverted, the new replay test hangs. With the fix, it passes.A
turn/plan/updatedstep plan has still not been seen live; four default-mode turns never offered the tool.docs/task-context.mdsays so.Checks
pnpm build && pnpm test: pass.pnpm test:e2e: 392 passed, 7 skipped.e2e/codex-native-plan.spec.tsnow has its scripted plan-mode turn run a read command, as the live one did. It checks that the footer shows no "no plan" line, and that the saved note's view shows the proposed plan.🤖 Generated with Claude Code