test(planning): split interview session-config eval into engineering + general session cases - #1092
Conversation
…+ general cases The recommends-session-config eval only covered the downstream-execution-session framing. Split it so eval 9 explicitly asserts the engineering/downstream case and new eval 10 asserts the general/terminal case — recommending config for the current/next session, applied now, since a general session has no downstream consumer. Closes the coverage gap where a general-session case could still pass on stale downstream-only framing. Closes #1083
|
Claude encountered an error after 0s —— View job I'll analyze this and get back to you. |
|
Claude encountered an error after 1s —— View job I'll analyze this and get back to you. |
|
Warning Automated security review did not complete — this is an infrastructure failure, not a review verdict. Treat any Claude comment on this PR (including a placeholder like "I'll analyze this and get back to you") as incomplete, not "no findings."
Re-running the job, or pushing a new commit, will retry the review. |
|
Warning Automated review did not complete — this is an infrastructure failure, not a review verdict. Treat any Claude comment on this PR (including a placeholder like "I'll analyze this and get back to you") as incomplete, not "no findings."
Re-running the job, or pushing a new commit, will retry the review. |
|
🔒 babysit-prs lane claiming this PR for on-branch fix work this cycle (amendment-round: 16, safe tier). Will fix clear branch-owned findings and push; will not resolve threads or merge (safe tier). |
Merge-order escalation — held in draft, needs a human decisionRe-verified the ordering constraint stated in this PR's body against current 1. The semantic dependency is real and still live
This branch's eval 10 ( Nothing in CI catches this: the repo ships no model-graded eval runner, so the eval set is inert 2. The version chain is now stale on both PRs — and this PR has gone DIRTY
This branch is consequently The conflict is deliberately left unresolved, because the correct version is not determined
Under Option A the merge must be redone against a 3. #848 cannot currently merge — verified-signature trap
For contrast, both commits on this branch ( 4. Labels corrected
Rationale: draft status alone is not a machine-enforced brake. This PR was The decisionOption A — unblock #848 first, then merge this (preserves the authored plan). #848 has already re-synced itself to Option B — merge this ahead of #848. Option C — fold the reframe into this PR and supersede #848. |
Compose the eval-split version bump over main's 0.26.1 (from #848): plugin version 0.26.2, CHANGELOG entry [0.26.2] above [0.26.1].
|
Claude encountered an error after 2s —— View job I'll analyze this and get back to you. |
|
Claude encountered an error after 2s —— View job I'll analyze this and get back to you. |
|
Claude encountered an error after 2s —— View job I'll analyze this and get back to you. |
|
Claude encountered an error after 2s —— View job I'll analyze this and get back to you. |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 5b69a1ee41
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
…ry refresh timing Codex P2 on eval 10: the merged skill contract (SKILL.md session-config section) requires a general/terminal session's first config read right after the Step 1 survey classifies the domain as general, with the stop-boundary recommendation as a refresh and a re-evaluate offer when config was raised only at the end. The eval asserted only the stop-boundary framing, so a regression that emits the recommendation only after the rounds would still pass. Eval 10's expected_output and expectations now require the early surfacing, the refresh framing, and the re-evaluate offer.
|
Claude encountered an error after 2s —— View job I'll analyze this and get back to you. |
|
Claude encountered an error after 2s —— View job I'll analyze this and get back to you. |
Summary
The
interviewskill'srecommends-session-configeval only checked the "downstream execution session" framing, so a general/terminal-session case could still pass on that stale framing after the skill contract moved general sessions to recommend config for the current/next session. This splits the eval into an engineering/downstream case and a general/current-session case so both framings are actually covered.Dependency on #848 — satisfied
This depended on #848 (
docs(planning): reframe interview session-config framing), which merged 2026-07-25 (bc86410). Main'sSKILL.md/context/session-config.mdnow carry the current/next-session framing eval 10 asserts, including the stop-boundary refresh framed as current/next-session config, so the skill and the eval are consistent.mainwas merged into this branch after #848 landed; the version bump was recomposed over #848's landed0.26.1as0.26.2(the original0.25.2plan predated intervening planning releases).Fix
plugins/planning/skills/interview/evals/evals.json:recommends-session-config-from-live-docs→recommends-session-config-engineering-downstream. Its prompt is already an engineering task (a code re-architecture), for which the downstream-execution-session framing remains correct; theexpected_outputand expectations now make that engineering/handoff scope explicit so it is unambiguously the engineering half of the split.recommends-session-config-general-current-session: a clearly non-build general decision (org-structure strategy across ~200 people, with an explicit "not a code change" override to lock the general classification). It asserts the skill recommends config for the current/next session, applied now — not a downstream execution session that will never exist — while keeping the same capability-vs-thoroughness distinction, advisor pairing, live-doc sourcing, and graceful-degrade expectations.This closes the coverage gap: the eval set can no longer accept downstream-only framing for a general-session case.
Version bump
0.26.1 → 0.26.2and a[0.26.2]CHANGELOG entry composed above #848's[0.26.1].Verification
This repo ships no model-graded eval runner —
skill-quality:check's ownSKILL.mdstates "Not for: running model-graded evals." So this cannot assert a behavioral pass of the skill against the evals; the available evidence is schema conformance + the static skill gate:check-jsonschema --schemafile plugins/skill-quality/reference/evals.schema.json plugins/planning/skills/interview/evals/evals.json→ok -- validation donepython -m jsonschemavalidate against the same schema → SCHEMA VALID, 10 evals, allid/nameunique. Re-validated post-merge against the schema now onmain.CHECK_SKILL_SKILLS_ROOT=…/plugins/planning/skills check-skill.sh interview→ PASS — 0 errors, 2 warning(s). Both warnings are pre-existing and unrelated (soft line-count target; description trigger phrasing) — the same two docs(planning): reframe interview session-config framing #848's own verification reported; this change introduces none. The run's INFO lines confirm it validatedinterview(not a no-op).main(early post-survey surface for general sessions + stop-boundary refresh framed as current/next-session config).Related
docs(planning): reframe interview session-config framing, now merged).PRRT_kwDOTCGFQM6TBhu6), classified VALID and deferred out of docs(planning): reframe interview session-config framing #848's docs-reframe scope — filed as planning/interview: recommends-session-config-from-live-docs eval still asserts old downstream-only framing #1083.Closes #1083
Work-class: C3 (bug-fix-shaped) — attended triage 2026-07-23, operator-ratified. 🤖