Skip to content

Conversation

@hyaffe839
Copy link
Contributor

Contributing to Cortex XSOAR Content

Make sure to register your contribution by filling the contribution registration form

The Pull Request will be reviewed only after the contribution registration form is filled.

Status

  • In Progress
  • Ready
  • In Hold - (Reason for hold)

Related Issues

CRTX-199359

Description

Must have

  • Tests
  • Documentation

@hyaffe839 hyaffe839 requested a review from dantavori as a code owner January 1, 2026 14:19
@github-actions
Copy link

github-actions bot commented Jan 1, 2026

Coverage

Coverage Report
FileStmtsMissCoverMissing
Packs/Slack/Integrations/SlackV3
   SlackV3.py174937778%137–138, 145–156, 158–161, 163, 166–167, 173–174, 184–185, 187, 259, 285, 421–422, 424–426, 428–431, 433, 449, 457–458, 516, 571–572, 605, 615, 619–630, 651, 718–723, 734–741, 749, 767, 773, 806–807, 842, 875, 878, 898–899, 905–924, 926–929, 963–964, 989–998, 1022, 1034, 1105–1106, 1109–1110, 1113–1114, 1117–1118, 1121–1122, 1125–1126, 1128, 1135–1140, 1147, 1150–1154, 1156–1161, 1163–1168, 1178–1179, 1186–1193, 1226–1227, 1299, 1320, 1326, 1378, 1388–1389, 1483, 1537, 1541–1542, 1560–1562, 1564, 1571–1575, 1582, 1595, 1607, 1615–1616, 1625–1626, 1629–1633, 1636–1637, 1640–1644, 1648–1654, 1657–1663, 1676–1677, 1727, 1734–1736, 1810–1811, 1835, 1870, 1873, 1898–1899, 1903, 1914, 1928, 1933–1934, 1966–1967, 1978–1979, 2002, 2019, 2097, 2145–2146, 2149, 2153, 2163, 2166–2168, 2173, 2176, 2206, 2232, 2235–2236, 2311, 2443, 2468–2471, 2473, 2475–2476, 2478, 2482–2484, 2488–2490, 2492–2493, 2495–2496, 2498, 2500, 2502–2503, 2513, 2529, 2553, 2563, 2565, 2570–2571, 2605–2606, 2612, 2614, 2618, 2627, 2630–2632, 2639–2640, 2663–2664, 2670, 2694, 2699–2702, 2704, 2784–2786, 2788–2789, 2793, 2844, 2848, 2857, 2867, 2869, 2889–2893, 2945–2946, 2948, 2950, 2992–2995, 2997–3002, 3071, 3094, 3096–3099, 3101–3102, 3104–3105, 3108–3109, 3132–3135, 3139–3145, 3182–3184, 3197–3198, 3207, 3246–3250, 3259
TOTAL174937778% 

Tests Skipped Failures Errors Time
169 3 💤 0 ❌ 0 🔥 12.452s ⏱️

@hyaffe839 hyaffe839 self-assigned this Jan 4, 2026
@hyaffe839 hyaffe839 added docs-approved ready-for-pipeline-running Whether the pr is ready for running the whole pipeline, including testing on SAAS machines ready-for-ai-review The PR is ready for reviewing the PR with the AI Reviewer. labels Jan 4, 2026
@hyaffe839
Copy link
Contributor Author

@content-bot start review

@content-bot content-bot removed the ready-for-ai-review The PR is ready for reviewing the PR with the AI Reviewer. label Jan 4, 2026
@hyaffe839 hyaffe839 added the ready-for-ai-review The PR is ready for reviewing the PR with the AI Reviewer. label Jan 4, 2026
@hyaffe839
Copy link
Contributor Author

@content-bot start review

@hyaffe839 hyaffe839 requested a review from omerKarkKatz January 4, 2026 09:53
@content-bot content-bot removed the ready-for-ai-review The PR is ready for reviewing the PR with the AI Reviewer. label Jan 4, 2026
@hyaffe839
Copy link
Contributor Author

@content-bot start review

@content-bot
Copy link
Collaborator

Validate summary
The following errors were thrown as a part of this pr: .
If the AG100 validation in the pre-commit GitHub Action fails, the pull request cannot be force-merged.

Verdict: PR can be force merged from validate perspective? ✅

@hyaffe839 hyaffe839 added the ready-for-ai-review The PR is ready for reviewing the PR with the AI Reviewer. label Jan 4, 2026
@content-bot
Copy link
Collaborator

🤖 Content-bot Review Disclaimer

This review was generated by an AI-powered tool and may contain inaccuracies. Please be advised, and we extend our sincere apologies for any inconvenience this may cause.

Copy link
Collaborator

@content-bot content-bot left a comment

Choose a reason for hiding this comment

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

Hi there, thanks for your contribution to the Slack pack. I've reviewed the changes and have a few points to discuss regarding the configuration and logic.

Please double-check the YAML file for indentation errors and ensure the HasReplies output type matches the implementation. Additionally, review the logging approach to avoid exposing sensitive raw data and verify that the version bump strategy aligns with the scope of these changes.

Great start, looking forward to the updates

@dantavori, @omerKarkKatz please review and approve the results generated by the AI Reviewer by responding 👍 on this comment.

conversation_name = args.get("conversation_name")
limit = arg_to_number(args.get("limit"))
from_time = args.get("from_time")
page_token = args.get("page_token")
Copy link
Collaborator

Choose a reason for hiding this comment

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

Missing argument definition in YAML.


raw_response = send_slack_request_sync(CLIENT, "conversations.history", http_verb="GET", body=body)
messages = raw_response.get("messages", "")
demisto.debug(f"Raw response from Slack conversations.history: {raw_response}")
Copy link
Collaborator

Choose a reason for hiding this comment

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

Security Warning: Avoid logging full raw response bodies containing message content.

messages = [messages]
if not isinstance(messages, list):
raise DemistoException(
f'An error occurred while listing conversation history: {raw_response.get("error")}', res=raw_response
Copy link
Collaborator

Choose a reason for hiding this comment

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

Error message will be unhelpful because ok is True.

if cursor:
results.append(
CommandResults(
outputs_prefix="SlackPageToken",
Copy link
Collaborator

Choose a reason for hiding this comment

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

Ensure integration YAML is updated.

- description: |
Lower bound for conversation history (sent to Slack 'oldest' query parameter). Returns messages with time stamp ≥ this value. Accepts Unix timestamp or ISO strings (e.g., "1727448000.000200", "2025-10-12T09:00:00+03:00"). Results are returned in descending order.
name: from_time
- description: Token to retrieve the next page of results.
Copy link
Collaborator

Choose a reason for hiding this comment

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

Indentation Error: The page_token argument is indented with 4 spaces, but it should be indented with 6 spaces to align with the other arguments in the list (e.g., from_time at line 498).

type: string
- contextPath: Slack.Messages.HasReplies
description: Whether the message has replies.
type: boolean
Copy link
Collaborator

Choose a reason for hiding this comment

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

Type Mismatch: The HasReplies output is defined as boolean, but the implementation returns a string ("Yes" or "No").

- contextPath: Slack.Messages.ThreadTimeStamp
description: The thread timestamp of the message.
type: string
- contextPath: SlackPageToken.NextPageToken
Copy link
Collaborator

Choose a reason for hiding this comment

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

Suggestion: Consider nesting the pagination token under the Slack context root (e.g., Slack.PageToken.NextPageToken) instead of creating a new root key SlackPageToken.

"description": "Interact with Slack API - collect logs, send messages and notifications to your Slack team.",
"support": "xsoar",
"currentVersion": "3.5.37",
"currentVersion": "3.5.38",
Copy link
Collaborator

Choose a reason for hiding this comment

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

The version is bumped to 3.5.38, but no other files are changed in this PR. Please ensure the code changes for 'slackPagination' are included. Additionally, if the intended changes add new functionality (e.g. new pagination support), consider if a minor version bump (3.6.0) is more appropriate than a patch bump.

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

Labels

docs-approved ready-for-ai-review The PR is ready for reviewing the PR with the AI Reviewer. ready-for-pipeline-running Whether the pr is ready for running the whole pipeline, including testing on SAAS machines

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants