feat: add webapi response changes as of 2026-05-19#1592
Draft
slackapi[bot] wants to merge 100 commits into
Draft
feat: add webapi response changes as of 2026-05-19#1592slackapi[bot] wants to merge 100 commits into
slackapi[bot] wants to merge 100 commits into
Conversation
Co-Authored-By: Claude <svc-devxp-claude@slack-corp.com>
❌ 1 Tests Failed:
View the top 1 failed test(s) by shortest run time
To view more test analytics, go to the Test Analytics Dashboard |
The workspace admin token no longer has access to the target workspace (T06M2FAFCF3). Switch helper/setup calls in admin API tests to use the org admin token with explicit team_id, which is required for org-level tokens calling workspace-scoped methods. Co-Authored-By: Claude <svc-devxp-claude@slack-corp.com>
This reverts commit c68228b.
This reverts commit 0dafb70.
- Add ~100 missing audit action constants (LegalHold, SlackFirstCrm, MCP, AI actions) - Fix cant_kick_self by excluding userToken's own user from kick target selection Co-Authored-By: Claude <svc-devxp-claude@slack-corp.com>
…lation failure Duplicate field in WorkspaceOrOrg class prevented Lombok annotation processing, breaking all Builder class generation in slack-api-client. Co-Authored-By: Claude <svc-devxp-claude@slack-corp.com>
WilliamBergamin
approved these changes
May 25, 2026
- Add thread_ts, permissions (Object), privateChannelAccess fields - Add audit actions: slack_ai_mcp_resource_read, pref_allow_native_giphy_gif_picker - Fix dnd_Test: limit to 50 active users - Fix emoji_Test: create emoji before listing - Fix functions_Test: add teamId parameter - Fix users_Test: filter deleted users from lookupByEmail, use teamId for Grid - Update SCIM2 json-logs from test runs Co-Authored-By: Claude <svc-devxp-claude@slack-corp.com>
Co-Authored-By: Claude <svc-devxp-claude@slack-corp.com>
Co-Authored-By: Claude <svc-devxp-claude@slack-corp.com>
Co-Authored-By: Claude <svc-devxp-claude@slack-corp.com>
Properties surfaced by test_with_remote_apis.audit.ApiTest: - ActionsResponse.Actions.salesforceMcpServer (List<String>) - LogsResponse.Context.actingAgent (String) - LogsResponse.Context.agentMessage + AgentMessage nested type (team, channelId, messageTs, threadTs) - LogsResponse.Details.clonedFileId (String) - LogsResponse.Details.toolName (String) New action constants: - User: slack_ai_skill_share_link_created, slack_ai_skill_external_copy_added - Channel: channel_properties_updated All additive and properly typed (no Object fields, no breaking changes). Types confirmed against webapp audit log assembly source. Co-Authored-By: Claude <svc-devxp-claude@slack-corp.com>
Properties surfaced by test_with_remote_apis.audit.ApiTest:
- LogsResponse.Details.serviceType (String) — MCP service type
- LogsResponse.Entity.function: Object -> typed Function{id, appId, callbackId}
New action constants (WorkspaceOrOrg):
- slackbot_analytics_export_started
- enterprise_managed_auth_enabled
- enterprise_managed_auth_disabled
The Entity.externalAuthOauth2Token field is intentionally left as Object:
the live API returns it polymorphically (provider.id overflows int and
provider.app.scopes is sometimes a String, sometimes an array). Typing it
needs captured JSON and belongs in its own PR. Documented inline.
All additive, no breaking changes. Types confirmed against live test JSON
and webapp audit assembly source.
Co-Authored-By: Claude <svc-devxp-claude@slack-corp.com>
- LogsResponse.Details.serverName (String) — MCP server name - WorkspaceOrOrg action: enterprise_managed_auth_rebound Additive, confirmed against webapp MCP shapes. No breaking changes. Co-Authored-By: Claude <svc-devxp-claude@slack-corp.com>
- LogsResponse.Details.success (Boolean) — MCP tool-call result - WorkspaceOrOrg action: mcp_slack_create_list_tool_called Also drop the use_pypi codecov-action workaround: now that the action is pinned to v7.0.0 (merged from main), the issue #1955 mitigation is no longer needed. Co-Authored-By: Claude <svc-devxp-claude@slack-corp.com>
…ctions - LogsResponse.Details.argumentKeys (List<String>) — sorted MCP tool-call argument key names (values omitted for PII safety), confirmed from src/ai/mcp/McpClientAuditLog.hack - Add the complete mcp_slack_*_tool_called WorkspaceOrOrg action family (29 constants) from the authoritative enum in include/compliance/audit_logs/lib_audit_logs_ext.hack. The test org actively exercises the Slack MCP server, so these surface one-per-run; adding the full enumerated set avoids many slow audit iterations. Action-name constants carry no deserialization risk. Co-Authored-By: Claude <svc-devxp-claude@slack-corp.com>
The mcp_slack_*_tool_called action family already existed in Actions.WorkspaceOrOrg; a prior commit re-added all 27, producing duplicate field declarations that broke compilation (surfacing as spurious "cannot find symbol ...Builder" errors in AsyncMethodsClient once Actions.java failed to compile). Keep the original block plus the two genuinely new constants (mcp_slack_create_list_tool_called, mcp_slack_read_list_tool_called). Verified with a clean mvn build. Co-Authored-By: Claude <svc-devxp-claude@slack-corp.com>
- LogsResponse.Details.readOnly (Boolean) — MCP tool read-only flag, confirmed from slackbot_mcp_listTools_output.hack Co-Authored-By: Claude <svc-devxp-claude@slack-corp.com>
- LogsResponse.Details.mcpClientInferredBehavior (String) — 'read_tool' or 'write_tool', confirmed from src/ai/mcp/McpClientAuditLog.hack Co-Authored-By: Claude <svc-devxp-claude@slack-corp.com>
- LogsResponse.Details.destructive (Boolean) — MCP tool destructiveHint, confirmed from src/ai/mcp/McpClientAuditLog.hack Co-Authored-By: Claude <svc-devxp-claude@slack-corp.com>
- LogsResponse.Details.source (String) — audit entry source identifier (e.g. backfill/event-log origins); string across all webapp usages. Co-Authored-By: Claude <svc-devxp-claude@slack-corp.com>
- LogsResponse.Details.decision (String) — MCP tool permission decision, confirmed from src/ai/mcp/McpToolPermissionHandler.hack ((string)$decision). Co-Authored-By: Claude <svc-devxp-claude@slack-corp.com>
- LogsResponse.Details.permissionKey (String) — MCP permission key (e.g. "github:search_code"), confirmed from McpToolPermissionHandler.hack. Co-Authored-By: Claude <svc-devxp-claude@slack-corp.com>
- LogsResponse.Details.addedToAllow (List<String>) — MCP permission keys added to the allow list. It is a vec of keys, not a boolean, confirmed from api_handlers/users_prefs_set.hack (Vec\diff -> foreach key). Co-Authored-By: Claude <svc-devxp-claude@slack-corp.com>
- LogsResponse.Details.connectorsEnabled (List<String>) — MCP connector keys enabled; a vec (Vec\diff), not a boolean, confirmed from api_handlers/users_prefs_set.hack. Co-Authored-By: Claude <svc-devxp-claude@slack-corp.com>
- LogsResponse.Details.connectorsDisabled (List<String>) — MCP connector keys disabled; the Vec\diff pair to connectorsEnabled, confirmed from api_handlers/users_prefs_set.hack. Co-Authored-By: Claude <svc-devxp-claude@slack-corp.com>
- LogsResponse.Details.uri (String) — MCP resource URI; string across all webapp MCP shapes (e.g. slackbot_mcp_readResource). Co-Authored-By: Claude <svc-devxp-claude@slack-corp.com>
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.
This PR updates the web API client and model based on the production E2E test results.
Category
Requirements
Please read the Contributing guidelines and Code of Conduct before creating this issue or pull request. By submitting, you agree to those rules.