Repository navigation
Reject placeholder issue titles before consuming create_issue quota - #69994
Conversation
Co-authored-by: pelikhan <4175913+pelikhan@users.noreply.github.com>
|
/matt |
|
🧠 Matt Pocock Skills Reviewer has completed the skills-based review. ✅
|
There was a problem hiding this comment.
🟡 Changes recommended
Configured title prefixes still allow placeholder submissions to bypass validation and consume quota.
1 open issue
What changed in this PR
Strengthens create_issue validation to reject placeholder titles before recording intent, offloading content, or consuming quota.
Changes:
- Validate resolved titles independently of body content.
- Add regression coverage for normalization, fallbacks, large bodies, and quota preservation.
- Add a patch changeset.
| File | Description |
|---|---|
| actions/setup/js/safe_outputs_handlers.test.cjs | Adds placeholder rejection and quota regression tests. |
| actions/setup/js/intent_probe.cjs | Rejects known placeholder titles regardless of body content. |
| .changeset/reject-placeholder-issue-titles.md | Documents the patch release. |
Review effort: Max
There was a problem hiding this comment.
Skills-Based Review 🧠
Applied /tdd — the fix direction (reject placeholder titles before recording intent/offloading/quota) is correct and well tested, but the new whitelist check doesn't fully cover the existing placeholder vocabulary.
📋 Key Themes & Highlights
Key Themes
- Incomplete generalization:
intent_probe.cjsline 105 hardcodes only 4"<word> title"combinations (test title,placeholder title,dummy title,example title) instead of deriving from the fullTRIVIAL_PROBE_VALUESset, so titles like"wip title","todo title", or"probe title"still bypass validation with a substantive body. - Side-effect ordering fix is correctly implemented: the handler now rejects before
appendSafeOutput/writeFileSync/quota increment, matching the PR description and verified by the newsafe_outputs_handlers.test.cjstest for both normal and oversized bodies.
Positive Highlights
- ✅ Strong regression coverage for the title-only/body-derived/preserved-descriptive-title cases.
- ✅ Corrective error message now explicitly tells the agent to replace the placeholder title, which is clearer UX than the prior generic wording.
@copilot please address the review comments above.
🧠 Reviewed using Matt Pocock's skills by Matt Pocock Skills Reviewer · copilot · sonnet50 · 24.2 AIC · ⌖ 16.1 AIC · ⊞ 10.1K
Comment /matt to run again
|
@copilot address the following outstanding work in one pass:
Push the necessary fixes, reply to each listed review thread and resolve it when addressed. Ignore feedback already answered or resolved. Use the pr-finisher skill and stop when only human review or CI remains; do not trigger CI. Sous-chef head: 51a7b35
|
Strip configured issue title prefixes before placeholder validation and derive placeholder-title variants from the shared probe vocabulary. Cover prefixed explicit and body-derived titles while preserving offload and quota ordering. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
…eject-placeholder-titles Co-authored-by: gh-aw-bot <259018956+gh-aw-bot@users.noreply.github.com>
|
🎉 This pull request is included in a new release. Release: |

A substantive body allowed placeholder titles such as
Test Titleto be published and consume the issue allowance, blocking a corrected retry withE002.test title,placeholder title,dummy title, andexample title; preserve descriptive titles containing those words.Agent Outputfallback, and PR/comment validation.max: 1: rejected placeholders leave no append or offload, the corrected issue succeeds, and the next real issue receivesE002.