Repository navigation
fix(vscode): send schema-valid permission responses - #1401
Merged
kevincodex1 merged 1 commit intoJun 3, 2026
Merged
Conversation
jatmn
approved these changes
Jun 2, 2026
jatmn
left a comment
Collaborator
There was a problem hiding this comment.
Thanks for the contribution. I do not see any actionable issues from my review.
hotmanxp
added a commit
to hotmanxp/openclaude
that referenced
this pull request
Jun 7, 2026
Upstream tier 2 KEEPs, applied 2 of 7 candidates (5 already applied under prior syncs but missed by subject-match dedup): f1013df fix(api): honor OpenAI-compatible retry classification (Twigpine#1547) 8065f8d fix(vscode): send schema-valid permission responses (Twigpine#1401) Already-applied (real DIFFERS = local fork divergence only): 1fc5116 fix(api): tighten reasoning_content heuristic (Twigpine#1201) -- byte-equal 2bed184 perf(attachments): skip skill listings for utility forks (Twigpine#1545) -- diff is feature('TRANSCRIPT_CLASSIFIER')→true + CLAUDE.md→AGENTS.md 8416faa fix(BashTool): include captured output in non-zero-exit error (Twigpine#1249) -- diff is feature('MONITOR_TOOL')→drop + local @ts-ignore f7d42c2 fix(cron): enforce MAX_CRON_PROMPT_CHARS cap (Twigpine#1224) -- diff is 'Claude'→'Open CC' brand string in description Notes: - f1013df: openaiErrorClassification.ts adds RETRYABLE_OPENAI_COMPATIBILITY_ FAILURE_CATEGORIES set + isRetryableOpenAICompatibilityFailureCategory(); withRetry.ts integrates the new classifier. withRetry.test.ts had a merge conflict in the 'retry configuration' describe block (upstream added OPENCLAUDE_MAX_RETRIES/OPENCLAUDE_RETRY_DELAY_MS env var tests that fork doesn't support -- AGENTS.md keeps CLAUDE_CODE_* env vars). Resolved by KEEPING THEIRS for the new 'OpenAI-compatible retry classification' block, then DELETED the 'retry configuration' block (9 unsupported tests) per fork policy. - 8065f8d: 2 new files (permissionResponse.js + .test.js) pulled; 2 existing files patched cleanly. Fork has 2 separate vscode extensions (opencc-vscode v0.1.1 simplified + openclaude-vscode v0.2.0 full); the upstream sync only touches the openclaude-vscode chat/ subdir. permissionResponse.test.js uses jest-style globals; bun test passes 3/3 (bun:test is jest-compatible for describe/it/expect). Verification: typecheck: 0 errors bun test: 2532 pass / 0 fail / 34 skip (full suite) build: Built v0.16.1 → dist/cli.mjs vscode: permissionResponse.test.js 3/3 pass naming: no new openclaude/gitlawb leaks (pre-existing openclaude-vscode dir name is intentional)
hotmanxp
added a commit
to hotmanxp/openclaude
that referenced
this pull request
Jun 11, 2026
Upstream tier 2 KEEPs, applied 2 of 7 candidates (5 already applied under prior syncs but missed by subject-match dedup): f1013df fix(api): honor OpenAI-compatible retry classification (Twigpine#1547) 8065f8d fix(vscode): send schema-valid permission responses (Twigpine#1401) Already-applied (real DIFFERS = local fork divergence only): 1fc5116 fix(api): tighten reasoning_content heuristic (Twigpine#1201) -- byte-equal 2bed184 perf(attachments): skip skill listings for utility forks (Twigpine#1545) -- diff is feature('TRANSCRIPT_CLASSIFIER')→true + CLAUDE.md→AGENTS.md 8416faa fix(BashTool): include captured output in non-zero-exit error (Twigpine#1249) -- diff is feature('MONITOR_TOOL')→drop + local @ts-ignore f7d42c2 fix(cron): enforce MAX_CRON_PROMPT_CHARS cap (Twigpine#1224) -- diff is 'Claude'→'Open CC' brand string in description Notes: - f1013df: openaiErrorClassification.ts adds RETRYABLE_OPENAI_COMPATIBILITY_ FAILURE_CATEGORIES set + isRetryableOpenAICompatibilityFailureCategory(); withRetry.ts integrates the new classifier. withRetry.test.ts had a merge conflict in the 'retry configuration' describe block (upstream added OPENCLAUDE_MAX_RETRIES/OPENCLAUDE_RETRY_DELAY_MS env var tests that fork doesn't support -- AGENTS.md keeps CLAUDE_CODE_* env vars). Resolved by KEEPING THEIRS for the new 'OpenAI-compatible retry classification' block, then DELETED the 'retry configuration' block (9 unsupported tests) per fork policy. - 8065f8d: 2 new files (permissionResponse.js + .test.js) pulled; 2 existing files patched cleanly. Fork has 2 separate vscode extensions (opencc-vscode v0.1.1 simplified + openclaude-vscode v0.2.0 full); the upstream sync only touches the openclaude-vscode chat/ subdir. permissionResponse.test.js uses jest-style globals; bun test passes 3/3 (bun:test is jest-compatible for describe/it/expect). Verification: typecheck: 0 errors bun test: 2532 pass / 0 fail / 34 skip (full suite) build: Built v0.16.1 → dist/cli.mjs vscode: permissionResponse.test.js 3/3 pass naming: no new openclaude/gitlawb leaks (pre-existing openclaude-vscode dir name is intentional)
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
can_use_toolcontrol responses withbehavior,updatedInput, and sessionupdatedPermissionswhen applicable.srcdiscovery.Issue
Fixes #1034
What Changed
permissionResponse.jshelper to build SDK permission results.request_idinChatController.sendPermissionResponseto emit correct allow/deny payloads.Validation
cd vscode-extension/openclaude-vscode && bun test src/chat/permissionResponse.test.js— 3 pass, 0 failcd vscode-extension/openclaude-vscode && bun run test— 42 pass, 0 failcd vscode-extension/openclaude-vscode && bun run lintgit diff --checkRisk
behavior: 'deny'instead of control error subtype.