[docs] Consolidate developer specifications into instructions file#35928
Merged
pelikhan merged 2 commits intoMay 30, 2026
Merged
Conversation
* fix: safe output handlers now respect target-repo config Several safe output JS handlers were hardcoding context.repo.owner/repo instead of reading from the target-repo config field. This caused cross-repository routing to be silently ignored when operators configured a target-repo constraint. Fixed handlers: - close_pull_request.cjs - mark_pull_request_as_ready_for_review.cjs - close_discussion.cjs - link_sub_issue.cjs - assign_milestone.cjs Each handler now calls resolveTargetRepoConfig(config) to read the target-repo and allowed_repos config fields, and resolveAndValidateRepo to validate individual message targets against them. Also updated tool_description_enhancer.go to emit TargetRepoSlug constraints in tool descriptions shown to AI agents for all five handlers, ensuring agents are aware of the configured repository restriction. Added JS tests for all fixed handlers and Go tests for the tool description enhancer changes. * Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> * Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> * fix: address PR review comments - Set API usage and per-item resolveAndValidateRepo - Use allowedRepos.size (not .length) and Array.from(allowedRepos).join(...) in mark_pull_request_as_ready_for_review.cjs and assign_milestone.cjs (allowedRepos is a Set<string> returned by resolveTargetRepoConfig) - Add per-item resolveAndValidateRepo call to close_discussion.cjs so that item.repo overrides and allowed_repos validation apply per message - Add per-item resolveAndValidateRepo call to link_sub_issue.cjs and pass the resolved owner/repo to resolveRepoIssueTarget for both parent and sub-issue; ignored allowed_repos now validated - Add JS tests covering allowed_repos rejection and item.repo override for close_discussion and link_sub_issue * fix: resolve CGO CI failures - mutex defer, init skill dir, test mock * fix: add missing mocks in TestUpdateManifestWorkflowGroup to prevent real network calls * fix: add missing skip condition for 'failed to list workflow runs' in logs order tests TestLogsJSONOutputBeforeStderr and TestLogsJSONAndStderrRedirected were failing when gh CLI is available but the test workflow name doesn't exist, returning 'failed to list workflow runs (exit code 1)' which wasn't in the skip condition list. Added this error string to both skip checks. --------- Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Maintenance pass over scratchpad/ specifications: - token-budget-guidelines.md: drop subjective "comprehensively" - engine-review-summary.md: fix H1 "Deep"->"Detailed" (v9.13 leftover) - dev.md: document cross-repository handler consistency (target-repo/allowed-repos honored by all handlers; config.json single source of truth from handler registry) and bump to v9.15 Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
pelikhan
approved these changes
May 30, 2026
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.
PR Description
Summary
Fixes safe-output handlers to honour
target-repoandallowed-reposfrom a singleconfig.jsonsource of truth, and applies a weekly tone scan to scratchpad documentation (dev.md v9.15).Changes
Bug Fix — Safe-Output Handler Config Respect (
#35901)target-repoandallowed-reposconfiguration values are now consistently honoured by all safe-output handlers.config.jsonis established as the authoritative source of truth for cross-repository configuration, eliminating any handlers that previously ignored these fields.Documentation —
dev.mdbumped to v9.15allowed-reposfield to the cross-repository YAML example.target-repoandallowed-reposare respected across all safe-output handlers, referencing theconfig.jsonsource-of-truth model.Documentation — Weekly Tone Scan
scratchpad/engine-review-summary.md: Renamed heading from "Deep Review Summary" → "Detailed Review Summary" for consistent, neutral tone.scratchpad/token-budget-guidelines.md: Removed subjective adverb "comprehensively" from the lock-file scanning description.Impact Assessment
target-repo/allowed-reposdev.mdcross-repo YAML exampleTesting Notes
target-repoandallowed-reposfromconfig.jsonand apply them uniformly across all handler paths.config.jsonis present.Commits
85c9fded1docs: weekly tone scan and cross-repo safe-output note (dev.md v9.15)60e79a267fix: safe output handlers now respect target-repo config (#35901)