Skip to content

fix(attachments): address PR #2285 feedback — ordering, fast-deny, run scoping#2306

Merged
siddseethepalli merged 1 commit into
mainfrom
fix/pr-2285-feedback
Feb 15, 2026
Merged

fix(attachments): address PR #2285 feedback — ordering, fast-deny, run scoping#2306
siddseethepalli merged 1 commit into
mainfrom
fix/pr-2285-feedback

Conversation

@siddseethepalli
Copy link
Copy Markdown
Contributor

@siddseethepalli siddseethepalli commented Feb 15, 2026

Summary

Addresses three review comments from PR #2285:

  • Race condition (Devin): Move setAssistantId() after isProcessing() check in persistAndProcessMessage and processMessage so a rejected concurrent request doesn't mutate the assistantId visible to an in-flight request.
  • Timeout blocking (Codex P1): Add hasNoClient flag to Session so approveHostAttachmentRead can deny immediately for HTTP-created sessions instead of blocking for the full permission timeout (300s) with no client to respond.
  • Run attachment scoping (Codex P2): Call session.setAssistantId(assistantId) in RunOrchestrator.startRun so run-generated attachments are stored under the correct assistant ID instead of falling back to 'local-assistant'.

Test plan

  • Verify type-check passes (pre-existing errors only)
  • Confirm attachments created via /runs endpoint are scoped to the correct assistant
  • Verify concurrent HTTP requests to the same session don't corrupt assistantId
  • Verify host attachment reads deny immediately in HTTP sessions without IPC client

Open with Devin

…n scoping

1. Move setAssistantId() after isProcessing() check in both
   persistAndProcessMessage and processMessage to prevent mid-flight
   assistantId mutation when a concurrent request is rejected.

2. Add hasNoClient flag to Session so approveHostAttachmentRead can
   fail fast for HTTP-created sessions instead of blocking for the
   full permission timeout with no client to respond.

3. Call session.setAssistantId(assistantId) in RunOrchestrator.startRun
   so run-generated attachments are scoped to the correct assistant
   instead of falling back to 'local-assistant'.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@siddseethepalli siddseethepalli self-assigned this Feb 15, 2026
@siddseethepalli siddseethepalli merged commit f0a5f48 into main Feb 15, 2026
1 check failed
@siddseethepalli siddseethepalli deleted the fix/pr-2285-feedback branch February 15, 2026 06:00
Copy link
Copy Markdown

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 5948341b87

ℹ️ 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".

Comment thread assistant/src/runtime/run-orchestrator.ts
Copy link
Copy Markdown
Contributor

@devin-ai-integration devin-ai-integration Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

✅ Devin Review: No Issues Found

Devin Review analyzed this PR and found no potential bugs to report.

View in Devin Review to see 5 additional findings.

Open in Devin Review

@siddseethepalli
Copy link
Copy Markdown
Contributor Author

Addressed in #2330

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant