Repository navigation
feat(session-flow): workflow probes git for missing files before asking - #12680
Conversation
Lane-Activity: work-resolve-issue/resolve-issue
…1563008213-1' into fix/12630-replacement
Add wf-explore-probes-git-before-asking: a scaffolded repository whose src/report.py imports three exporters that are off disk, one removed by a commit, one staged for removal and one removed only from the working tree. Graders check that the run probes git status and git log --diff-filter=D, cites the commit and the staged removal, investigates the working-tree-only removal, and asks no question about the three. Co-Authored-By: Claude Opus 5.5 <[email protected]> Claude-Session: https://claude.ai/code/session_01Vcupom3BKF6QuC5U3sRJPj
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
|
claude-review reviewed Code review: PR #12680 (incremental since
|
|
claude-security-review reviewed Security review (incremental since
|
…robe eval report.py now also imports exporters.yaml_out, which git never tracked, so neither probe names it. Two graders cover the "Not settled" branch: a question naming yaml_out, and no git show/diff/cat-file or log -p on it before that question. Co-Authored-By: Claude Opus 5.5 <[email protected]> Claude-Session: https://claude.ai/code/session_01Vcupom3BKF6QuC5U3sRJPj
…on line A line asking about the never-tracked yaml_out may also name the three probed exporters; no-question-on-missing-files now skips lines naming yaml_out, with both one-line summaries as pass samples. Co-Authored-By: Claude Opus 5.5 <[email protected]> Claude-Session: https://claude.ai/code/session_01Vcupom3BKF6QuC5U3sRJPj
Closes #12594
Summary
Replaces #12630, opened by the work-resolve-issue lane. Its pr-unblock run stopped with
feedback-unadjudicated: claude-review's thread asked for an eval case covering the explore stage's missing-file gate, and the lane could not add one because the case needs ascaffold.sh, which is outside the lane's write scope. This branch carries #12630's change unchanged (merged in from its heada4d96230) plus that eval case.The
/session-flow:workflowexplore stage now probesgit statusandgit log --diff-filter=Dfor a referenced file that is not on disk before asking: a staged or committed delete is skipped and cited, a working-tree-only delete is investigated, and it asks only when neither probe settles the path.The review's other finding (the wording must match the explore skill's slice for the same gate) is met on main: #12607 merged, and
plugins/discovery/skills/explore/reference/workflow.md:41gives the same two commands and the same three outcomes.Fix
plugins/session-flow/skills/workflow/context/steps.md: the explore stage's missing-file rule (from feat(session-flow): workflow probes git for missing files before asking #12630)..changes/session-flow/…-93e14bf0.md: feat(session-flow): workflow probes git for missing files before asking #12630's changelog fragment, kept as is.plugins/session-flow/evals/wf-explore-probes-git-before-asking/: new case. The scaffold builds a repository whosesrc/report.pyimports three exporters that are off disk: one removed by a commit, one staged for removal (git rm), one removed only from the working tree (rm). Graders check that the run callsgit statusandgit log --diff-filter=D, investigates the working-tree-only removal withgit show/diff, cites the staged removal and the deleting commit, and asks no question about investigating any of the three.Verification
python3 plugins/evals/skills/validate/scripts/validate-cases.py plugins/session-flow/evals: no FAIL; the new case's only WARN is the Bash-needs---allow-toolsnote every sibling Bash case carries. All six graders sort their samples correctly under Python and JavaScript.D src/exporters/csv_out.py,D src/exporters/xml_out.py, andgit log --diff-filter=Dnamed the json commit.shfmt -dandshellcheckonscaffold.sh: clean.markdownlint-cli2onsteps.mdand the fragment: 0 issues.Not verified: the case was checked statically only; no paid
claude plugin evalrun.Related
do-not-merge)🤖 Generated with Claude Code
https://claude.ai/code/session_01Vcupom3BKF6QuC5U3sRJPj