Skip to content

improvement(chat): let Chat review organization access requests - #9610

Merged
waleedlatif1 merged 2 commits into
stagingfrom
improvement/chat-access-requests
Nov 3, 2026
Merged

waleedlatif1 merged 2 commits into
stagingfrom
improvement/chat-access-requests

Conversation

@waleedlatif1

Copy link
Copy Markdown
Collaborator

Summary

  • Org admins can now have Chat list, preview, approve and deny access requests through the settings tool's new organization/requests section (get, list, preview, approve, deny). No confirmation card
  • The admin list, preview and resolve operations admit Chat acting for an org admin (organization_delegated, sim:settings, copilot), matching the other org settings sections. Minimum role stays admin; fingerprint checks, decided-notice events, audit and locking are unchanged because the same use cases run
  • Request settings (who may request) stay direct-caller only; v2 routes and the CLI are unchanged (refused-routes snapshot unchanged)
  • requireAccessRequestPrincipal replaces two private copies of the principal check; requireAllowedOrganizationPrincipal is extracted from authorizeOrganizationOperation with identical behavior

Type of Change

  • Improvement

Testing

  • New copilot-review.integration.ts (real Postgres, real settings tool and chat context): a member's Chat is refused every op and nothing changes; an admin's Chat approves (grant applied, decided notice, audit shows Chat acting for the admin) and denies (reason stored, policy unchanged). Red before the change; red again when review's minimum role is lowered or the Chat policy is dropped
  • All ee/access-requests integration files 40/40; settings, settings-management-boundary, copilot-route-inventory, ee/access-requests and lib/core/application unit tests (334)
  • bun run lint, check:api-validation:strict, check:boundaries, check:principal-kind-parity, check:application-graph, check:permission-group-enforcement, check:source-conventions, check:comment-hygiene, pre-push type-check

Checklist

  • Code follows project style guidelines
  • Self-reviewed my changes
  • Tests added/updated and passing (new tests pass the test-audit authoring gate)
  • No new warnings introduced
  • I confirm that I have read and agree to the terms outlined in the Contributor License Agreement (CLA)

🤖 Generated with Claude Code

Organization admins can list, preview, approve and deny access requests from an
organization conversation through the settings tool's new requests section.
The admin list, preview and resolve operations now admit organization-delegated
Copilot principals under the sim:settings audience; role, audit, outbox notice
and fingerprint checks are unchanged. Request settings stay session-only.
@vercel

vercel Bot commented Nov 3, 2026 •

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

1 Skipped Deployment
Project Deployment Actions Updated
docs Skipped Skipped Nov 3, 2026 4:39am UTC

Request Review

@greptile-apps

greptile-apps Bot commented Nov 3, 2026 •

Copy link
Copy Markdown
Contributor

RetriggerView in GreptileConfidence Score: 5/5

[Critical impact] The PR appears safe to merge.

Summary

Lets organization admins review access requests through Chat’s settings tool.

  • Organization admins can review access requests in Chat.
  • The access-request page-size constant stays inside its contract file.

No actionable new issues were found in the changes since the previous review.

Diagram

%%{init: {'theme': 'neutral'}}%%
flowchart LR
  Chat[Organization Chat] --> Settings[settings tool]
  Settings --> Query[List pending or selected status]
  Settings --> Review[Preview, approve, or deny]
  Query --> Auth[Check delegation and admin role]
  Review --> Auth
  Auth --> Cases[Existing access-request use cases]
  Cases --> Result[Result, audit, and decided notice]
Loading

Reviews (2) · Last reviewed commit: "fix(chat): default access request list t..." · Reviewed by Greptile

@cubic-dev-ai cubic-dev-ai Bot left a comment •

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

All reported issues were addressed across 11 files

Turn on auto-fix | Re-trigger cubic

The settings tool parses list input before calling the reader, so an omitted
status reached it as undefined and listed every status. The list schema now
defaults status to pending, matching get; explicit statuses still apply.
@waleedlatif1

Copy link
Copy Markdown
Collaborator Author

@greptile

@waleedlatif1

Copy link
Copy Markdown
Collaborator Author

@cubic-dev-ai review this PR

@cubic-dev-ai

cubic-dev-ai Bot commented Nov 3, 2026

Copy link
Copy Markdown
Contributor

@cubic-dev-ai review this PR

@waleedlatif1 I have started the AI code review. It will take a few minutes to complete.

@cubic-dev-ai cubic-dev-ai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

No issues found across 12 files

Confidence score: 5/5

  • Automated review surfaced no issues in the provided summaries.
  • No files require special attention.

Turn on auto-fix | Re-trigger cubic

@waleedlatif1
waleedlatif1 merged commit eede06c into staging Nov 3, 2026
81 checks passed
@waleedlatif1
waleedlatif1 deleted the improvement/chat-access-requests branch November 3, 2026 04:56

This branch was previously deployed

1 inactive deployment
Preview — 7f6a139a Deployed Nov 3, 2026 by vercel[bot]
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