pstack: honor inherit-parent / auto (omit Task model)#163
Merged
Conversation
Co-authored-by: lauren <poteto@users.noreply.github.com>
poteto
marked this pull request as ready for review
July 22, 2026 20:54
There was a problem hiding this comment.
Cursor Bugbot has reviewed your changes using high effort and found 2 potential issues.
Bugbot Autofix prepared fixes for both issues found in the latest run.
- ✅ Fixed: Cross-judge omits pool config
- Phase C now selects from the configured cross-judge pool, resolves aliases by omitting
model, and permits inherited judges when no different-family entry exists.
- Phase C now selects from the configured cross-judge pool, resolves aliases by omitting
- ✅ Fixed: Interrogate fallback breaks inherit
- The fallback now retries rejected
inherit-parentandautoaliases withoutmodelinstead of substituting an explicit slug.
- The fallback now retries rejected
Or push these changes by commenting:
@cursor push de47c8f430
Preview (de47c8f430)
diff --git a/pstack/skills/arena/SKILL.md b/pstack/skills/arena/SKILL.md
--- a/pstack/skills/arena/SKILL.md
+++ b/pstack/skills/arena/SKILL.md
@@ -38,8 +38,10 @@
## Phase C: Cross-judge
-After all Phase B candidates complete, spawn one readonly judge subagent on a different model family from the parent's. It sees the rubric and the candidates by path label, scores each criterion, and recommends a base with rationale. It runs in parallel with the parent's reading in Phase D, not with the candidates themselves. Spawning while candidates are still writing means the judge sees partial or empty outputs and reports them as dropouts.
+After all Phase B candidates complete, select one judge from your configured `arena cross-judge pool`, preferring an entry from a different model family than the parent's when possible. Resolve the selected entry per `~/.cursor/rules/pstack-models.mdc`. Pass a real slug as `model`; omit `model` for `inherit-parent`/`auto`. If the role line is absent, select from defaults `claude-opus-4-8-thinking-xhigh`, `gpt-5.5-high-fast`, `grok-4.5-fast-xhigh`. Do not require a different family when the pool cannot provide one; an all-alias pool still yields one inherited judge with `model` omitted.
+Spawn the judge as a readonly subagent. It sees the rubric and the candidates by path label, scores each criterion, and recommends a base with rationale. It runs in parallel with the parent's reading in Phase D, not with the candidates themselves. Spawning while candidates are still writing means the judge sees partial or empty outputs and reports them as dropouts.
+
## Phase D: Pick a base
Read every candidate end to end before picking. Skimming N candidates surfaces only the candidate whose surface looks most familiar.
diff --git a/pstack/skills/interrogate/SKILL.md b/pstack/skills/interrogate/SKILL.md
--- a/pstack/skills/interrogate/SKILL.md
+++ b/pstack/skills/interrogate/SKILL.md
@@ -40,7 +40,7 @@
- `model`: resolve that `interrogate reviewers` entry per `~/.cursor/rules/pstack-models.mdc`. Pass a real slug as `model`. Omit `model` for `inherit-parent`/`auto`.
- `readonly`: `true`
-If a configured model slug is rejected as unresolvable when you try to spawn the subagent, check the valid slugs in the Task tool's error message, pick the closest equivalent (prefer the highest-reasoning tier of the same family), spawn with the valid slug, and open a separate PR to update the configured defaults. Do not block the review on the slug issue.
+If `inherit-parent` or `auto` is rejected because it was passed as `model`, retry with `model` omitted; never substitute a slug for either alias. If any other configured model slug is rejected as unresolvable when you try to spawn the subagent, check the valid slugs in the Task tool's error message, pick the closest equivalent (prefer the highest-reasoning tier of the same family), spawn with the valid slug, and open a separate PR to update the configured defaults. Do not block the review on the slug issue.
Read `references/reviewer-prompt.md` and fill in the template with:
1. The stated intentYou can send follow-ups to the cloud agent here.
Reviewed by Cursor Bugbot for commit fdf8a27. Configure here.
Co-authored-by: lauren <poteto@users.noreply.github.com>
Co-authored-by: lauren <poteto@users.noreply.github.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.


Summary
inherit-parentandautovalid/setup-pstackvalues that omit the TaskmodelfieldTesting
node scripts/validate-plugins.mjsgit diff HEAD^ --check