Skip to content

ref(dashboards): Remove organizations:dashboards-ai-generate-edit flag registration#120592

Draft
cvxluo wants to merge 1 commit into
masterfrom
claude-rm-dashboards-ai-generate-edit-backend
Draft

ref(dashboards): Remove organizations:dashboards-ai-generate-edit flag registration#120592
cvxluo wants to merge 1 commit into
masterfrom
claude-rm-dashboards-ai-generate-edit-backend

Conversation

@cvxluo

@cvxluo cvxluo commented Jul 24, 2026

Copy link
Copy Markdown
Contributor

Remove organizations:dashboards-ai-generate-edit. This flag was fully rolled out to GA in the automator in getsentry/sentry-options-automator#7292 on 4/16 and hasn't been touched since. The last code reference was removed in #120591.

Should land after #120591 (frontend/backend are not atomically deployed).

🤖 Generated with Claude Code

https://claude.ai/code/session_01JQtVPKdj6SugtGgkJNSLhk


Generated by Claude Code

The organizations:dashboards-ai-generate-edit flag was fully rolled out
to GA and all code references have been removed, so its registration is
no longer needed.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01JQtVPKdj6SugtGgkJNSLhk
@github-actions github-actions Bot added the Scope: Backend Automatically applied to PRs that change backend components label Jul 24, 2026
@github-actions

github-actions Bot commented Jul 24, 2026

Copy link
Copy Markdown
Contributor

Backend Test Failures

Failures on ba87178 in this run:

tests/sentry/api/endpoints/test_organization_ai_conversations.py::OrganizationAIConversationsEndpointTest::test_direct_hit_header_not_set_for_non_id_querylog
[gw1] linux -- Python 3.13.1 /home/runner/work/sentry/sentry/.venv/bin/python3
tests/sentry/api/endpoints/test_organization_ai_conversations.py:305: in test_direct_hit_header_not_set_for_non_id_query
    assert len(response.data) == 1
E   assert 0 == 1
E    +  where 0 = len([])
E    +    where [] = <Response status_code=200, "application/json">.data
tests/sentry/api/endpoints/test_organization_ai_conversations.py::OrganizationAIConversationsEndpointTest::test_new_format_with_multiple_text_partslog
[gw1] linux -- Python 3.13.1 /home/runner/work/sentry/sentry/.venv/bin/python3
tests/sentry/api/endpoints/test_organization_ai_conversations.py:1019: in test_new_format_with_multiple_text_parts
    assert len(response.data) == 1
E   assert 0 == 1
E    +  where 0 = len([])
E    +    where [] = <Response status_code=200, "application/json">.data
tests/sentry/api/endpoints/test_organization_ai_conversations.py::OrganizationAIConversationsEndpointTest::test_query_filter_by_tool_namelog
[gw1] linux -- Python 3.13.1 /home/runner/work/sentry/sentry/.venv/bin/python3
tests/sentry/api/endpoints/test_organization_ai_conversations.py:800: in test_query_filter_by_tool_name
    assert len(response.data) == 1
E   assert 0 == 1
E    +  where 0 = len([])
E    +    where [] = <Response status_code=200, "application/json">.data
tests/sentry/api/endpoints/test_organization_ai_conversations.py::OrganizationAIConversationsEndpointTest::test_structured_user_part_populates_first_inputlog
[gw1] linux -- Python 3.13.1 /home/runner/work/sentry/sentry/.venv/bin/python3
tests/sentry/api/endpoints/test_organization_ai_conversations.py:1161: in test_structured_user_part_populates_first_input
    assert response.data[0]["firstInput"] == (
           ^^^^^^^^^^^^^^^^
E   IndexError: list index out of range
tests/sentry/api/endpoints/test_organization_ai_conversations.py::OrganizationAIConversationsEndpointTest::test_conversation_with_partial_user_datalog
[gw1] linux -- Python 3.13.1 /home/runner/work/sentry/sentry/.venv/bin/python3
tests/sentry/api/endpoints/test_organization_ai_conversations.py:919: in test_conversation_with_partial_user_data
    assert len(response.data) == 1
E   assert 0 == 1
E    +  where 0 = len([])
E    +    where [] = <Response status_code=200, "application/json">.data
tests/sentry/api/endpoints/test_organization_ai_conversation_details.py::OrganizationAIConversationDetailsEndpointTest::test_links_errors_across_multiple_traceslog
[gw0] linux -- Python 3.13.1 /home/runner/work/sentry/sentry/.venv/bin/python3
tests/sentry/api/endpoints/test_organization_ai_conversation_details.py:632: in test_links_errors_across_multiple_traces
    assert len(response.data) == 2
E   assert 0 == 2
E    +  where 0 = len([])
E    +    where [] = <Response status_code=200, "application/json">.data
tests/sentry/api/endpoints/test_organization_ai_conversation_details.py::OrganizationAIConversationDetailsEndpointTest::test_no_time_params_falls_back_to_30dlog
[gw0] linux -- Python 3.13.1 /home/runner/work/sentry/sentry/.venv/bin/python3
tests/sentry/api/endpoints/test_organization_ai_conversation_details.py:424: in test_no_time_params_falls_back_to_30d
    assert len(response.data) == 1
E   assert 0 == 1
E    +  where 0 = len([])
E    +    where [] = <Response status_code=200, "application/json">.data
tests/sentry/api/endpoints/test_organization_ai_conversation_details.py::OrganizationAIConversationDetailsEndpointTest::test_returns_conversation_attributeslog
[gw0] linux -- Python 3.13.1 /home/runner/work/sentry/sentry/.venv/bin/python3
tests/sentry/api/endpoints/test_organization_ai_conversation_details.py:195: in test_returns_conversation_attributes
    assert len(response.data) == 1
E   assert 0 == 1
E    +  where 0 = len([])
E    +    where [] = <Response status_code=200, "application/json">.data
tests/sentry/api/endpoints/test_organization_ai_conversation_details.py::OrganizationAIConversationDetailsEndpointTest::test_span_orderinglog
[gw0] linux -- Python 3.13.1 /home/runner/work/sentry/sentry/.venv/bin/python3
tests/sentry/api/endpoints/test_organization_ai_conversation_details.py:285: in test_span_ordering
    assert len(response.data) == 3
E   assert 0 == 3
E    +  where 0 = len([])
E    +    where [] = <Response status_code=200, "application/json">.data
tests/sentry/api/endpoints/test_organization_ai_conversations.py::OrganizationAIConversationsEndpointTest::test_query_filterlog
[gw0] linux -- Python 3.13.1 /home/runner/work/sentry/sentry/.venv/bin/python3
tests/sentry/api/endpoints/test_organization_ai_conversations.py:838: in test_query_filter
    assert len(response.data) == 1
E   assert 0 == 1
E    +  where 0 = len([])
E    +    where [] = <Response status_code=200, "application/json">.data
tests/sentry/api/endpoints/test_organization_ai_conversation_details.py::OrganizationAIConversationDetailsEndpointTest::test_only_returns_matching_conversationlog
[gw1] linux -- Python 3.13.1 /home/runner/work/sentry/sentry/.venv/bin/python3
tests/sentry/api/endpoints/test_organization_ai_conversation_details.py:323: in test_only_returns_matching_conversation
    assert len(response.data) == 2
E   assert 0 == 2
E    +  where 0 = len([])
E    +    where [] = <Response status_code=200, "application/json">.data
tests/sentry/api/endpoints/test_organization_ai_conversation_details.py::OrganizationAIConversationDetailsEndpointTest::test_multi_trace_conversationlog
[gw0] linux -- Python 3.13.1 /home/runner/work/sentry/sentry/.venv/bin/python3
tests/sentry/api/endpoints/test_organization_ai_conversation_details.py:163: in test_multi_trace_conversation
    assert len(response.data) == 4
E   assert 0 == 4
E    +  where 0 = len([])
E    +    where [] = <Response status_code=200, "application/json">.data
tests/sentry/api/endpoints/test_organization_ai_conversations.py::OrganizationAIConversationsEndpointTest::test_paginationlog
[gw0] linux -- Python 3.13.1 /home/runner/work/sentry/sentry/.venv/bin/python3
tests/sentry/api/endpoints/test_organization_ai_conversations.py:463: in test_pagination
    assert len(response.data) == 2
E   assert 0 == 2
E    +  where 0 = len([])
E    +    where [] = <Response status_code=200, "application/json">.data
tests/sentry/api/endpoints/test_organization_ai_conversations.py::OrganizationAIConversationsEndpointTest::test_direct_hit_header_set_for_single_id_lookuplog
[gw0] linux -- Python 3.13.1 /home/runner/work/sentry/sentry/.venv/bin/python3
tests/sentry/api/endpoints/test_organization_ai_conversations.py:287: in test_direct_hit_header_set_for_single_id_lookup
    assert len(response.data) == 1
E   assert 0 == 1
E    +  where 0 = len([])
E    +    where [] = <Response status_code=200, "application/json">.data
tests/sentry/api/endpoints/test_organization_ai_conversation_details.py::OrganizationAIConversationDetailsEndpointTest::test_links_error_issue_to_spanlog
[gw1] linux -- Python 3.13.1 /home/runner/work/sentry/sentry/.venv/bin/python3
tests/sentry/api/endpoints/test_organization_ai_conversation_details.py:548: in test_links_error_issue_to_span
    assert len(response.data) == 1
E   assert 0 == 1
E    +  where 0 = len([])
E    +    where [] = <Response status_code=200, "application/json">.data
tests/sentry/api/endpoints/test_organization_ai_conversations.py::OrganizationAIConversationsEndpointTest::test_new_format_input_output_messageslog
[gw0] linux -- Python 3.13.1 /home/runner/work/sentry/sentry/.venv/bin/python3
tests/sentry/api/endpoints/test_organization_ai_conversations.py:969: in test_new_format_input_output_messages
    assert len(response.data) == 1
E   assert 0 == 1
E    +  where 0 = len([])
E    +    where [] = <Response status_code=200, "application/json">.data
tests/sentry/api/endpoints/test_organization_ai_conversation_details.py::OrganizationAIConversationDetailsEndpointTest::test_links_occurrence_issue_to_spanlog
[gw1] linux -- Python 3.13.1 /home/runner/work/sentry/sentry/.venv/bin/python3
tests/sentry/api/endpoints/test_organization_ai_conversation_details.py:684: in test_links_occurrence_issue_to_span
    assert len(response.data) == 1
E   assert 0 == 1
E    +  where 0 = len([])
E    +    where [] = <Response status_code=200, "application/json">.data
tests/sentry/api/endpoints/test_organization_ai_conversations.py::OrganizationAIConversationsEndpointTest::test_empty_tool_names_when_no_tool_callslog
[gw1] linux -- Python 3.13.1 /home/runner/work/sentry/sentry/.venv/bin/python3
tests/sentry/api/endpoints/test_organization_ai_conversations.py:1356: in test_empty_tool_names_when_no_tool_calls
    assert len(response.data) == 1
E   assert 0 == 1
E    +  where 0 = len([])
E    +    where [] = <Response status_code=200, "application/json">.data
tests/sentry/api/endpoints/test_organization_ai_conversations.py::OrganizationAIConversationsEndpointTest::test_flow_orderinglog
[gw1] linux -- Python 3.13.1 /home/runner/work/sentry/sentry/.venv/bin/python3
tests/sentry/api/endpoints/test_organization_ai_conversations.py:598: in test_flow_ordering
    assert len(response.data) == 1
E   assert 0 == 1
E    +  where 0 = len([])
E    +    where [] = <Response status_code=200, "application/json">.data
tests/sentry/api/endpoints/test_organization_ai_conversations.py::OrganizationAIConversationsEndpointTest::test_tokens_only_counted_from_ai_client_spanslog
[gw1] linux -- Python 3.13.1 /home/runner/work/sentry/sentry/.venv/bin/python3
tests/sentry/api/endpoints/test_organization_ai_conversations.py:1411: in test_tokens_only_counted_from_ai_client_spans
    assert len(response.data) == 1
E   assert 0 == 1
E    +  where 0 = len([])
E    +    where [] = <Response status_code=200, "application/json">.data
tests/sentry/api/endpoints/test_organization_ai_conversation_details.py::OrganizationAIConversationDetailsEndpointTest::test_paginationlog
[gw1] linux -- Python 3.13.1 /home/runner/work/sentry/sentry/.venv/bin/python3
tests/sentry/api/endpoints/test_organization_ai_conversation_details.py:239: in test_pagination
    assert len(response.data) == 2
E   assert 0 == 2
E    +  where 0 = len([])
E    +    where [] = <Response status_code=200, "application/json">.data
tests/sentry/api/endpoints/test_organization_ai_conversations.py::OrganizationAIConversationsEndpointTest::test_first_input_last_outputlog
[gw0] linux -- Python 3.13.1 /home/runner/work/sentry/sentry/.venv/bin/python3
tests/sentry/api/endpoints/test_organization_ai_conversations.py:710: in test_first_input_last_output
    assert len(response.data) == 1
E   assert 0 == 1
E    +  where 0 = len([])
E    +    where [] = <Response status_code=200, "application/json">.data
tests/sentry/api/endpoints/test_organization_ai_conversation_details.py::OrganizationAIConversationDetailsEndpointTest::test_stats_period_is_tried_first_then_widenedlog
[gw1] linux -- Python 3.13.1 /home/runner/work/sentry/sentry/.venv/bin/python3
tests/sentry/api/endpoints/test_organization_ai_conversation_details.py:384: in test_stats_period_is_tried_first_then_widened
    assert len(response.data) == 1
E   assert 0 == 1
E    +  where 0 = len([])
E    +    where [] = <Response status_code=200, "application/json">.data
tests/sentry/api/endpoints/test_organization_ai_conversation_details.py::OrganizationAIConversationDetailsEndpointTest::test_stats_period_recent_conversation_returned_without_wideninglog
[gw1] linux -- Python 3.13.1 /home/runner/work/sentry/sentry/.venv/bin/python3
tests/sentry/api/endpoints/test_organization_ai_conversation_details.py:406: in test_stats_period_recent_conversation_returned_without_widening
    assert len(response.data) == 1
E   assert 0 == 1
E    +  where 0 = len([])
E    +    where [] = <Response status_code=200, "application/json">.data
tests/sentry/api/endpoints/test_organization_ai_conversations.py::OrganizationAIConversationsEndpointTest::test_conversation_without_ai_client_spans_includedlog
[gw1] linux -- Python 3.13.1 /home/runner/work/sentry/sentry/.venv/bin/python3
tests/sentry/api/endpoints/test_organization_ai_conversations.py:751: in test_conversation_without_ai_client_spans_included
    assert len(response.data) == 1
E   assert 0 == 1
E    +  where 0 = len([])
E    +    where [] = <Response status_code=200, "application/json">.data
tests/sentry/api/endpoints/test_organization_ai_conversations.py::OrganizationAIConversationsEndpointTest::test_mixed_error_statuseslog
[gw1] linux -- Python 3.13.1 /home/runner/work/sentry/sentry/.venv/bin/python3
tests/sentry/api/endpoints/test_organization_ai_conversations.py:552: in test_mixed_error_statuses
    assert len(response.data) == 1
E   assert 0 == 1
E    +  where 0 = len([])
E    +    where [] = <Response status_code=200, "application/json">.data
tests/sentry/api/endpoints/test_organization_ai_conversations.py::OrganizationAIConversationsEndpointTest::test_new_format_parts_structurelog
[gw0] linux -- Python 3.13.1 /home/runner/work/sentry/sentry/.venv/bin/python3
tests/sentry/api/endpoints/test_organization_ai_conversations.py:1121: in test_new_format_parts_structure
    assert len(response.data) == 1
E   assert 0 == 1
E    +  where 0 = len([])
E    +    where [] = <Response status_code=200, "application/json">.data
tests/sentry/api/endpoints/test_organization_ai_conversation_details.py::OrganizationAIConversationDetailsEndpointTest::test_returns_tool_attributeslog
[gw0] linux -- Python 3.13.1 /home/runner/work/sentry/sentry/.venv/bin/python3
tests/sentry/api/endpoints/test_organization_ai_conversation_details.py:356: in test_returns_tool_attributes
    assert len(response.data) == 1
E   assert 0 == 1
E    +  where 0 = len([])
E    +    where [] = <Response status_code=200, "application/json">.data
tests/sentry/api/endpoints/test_organization_ai_conversations.py::OrganizationAIConversationsEndpointTest::test_new_format_priority_over_old_formatlog
[gw0] linux -- Python 3.13.1 /home/runner/work/sentry/sentry/.venv/bin/python3
tests/sentry/api/endpoints/test_organization_ai_conversations.py:1074: in test_new_format_priority_over_old_format
    assert len(response.data) == 1
E   assert 0 == 1
E    +  where 0 = len([])
E    +    where [] = <Response status_code=200, "application/json">.data
tests/sentry/api/endpoints/test_organization_ai_conversations.py::OrganizationAIConversationsEndpointTest::test_conversation_with_user_datalog
[gw1] linux -- Python 3.13.1 /home/runner/work/sentry/sentry/.venv/bin/python3
tests/sentry/api/endpoints/test_organization_ai_conversations.py:883: in test_conversation_with_user_data
    assert len(response.data) == 1
E   assert 0 == 1
E    +  where 0 = len([])
E    +    where [] = <Response status_code=200, "application/json">.data
tests/sentry/api/endpoints/test_organization_ai_conversations.py::OrganizationAIConversationsEndpointTest::test_tool_names_populatedlog
[gw1] linux -- Python 3.13.1 /home/runner/work/sentry/sentry/.venv/bin/python3
tests/sentry/api/endpoints/test_organization_ai_conversations.py:1230: in test_tool_names_populated
    assert len(response.data) == 1
E   assert 0 == 1
E    +  where 0 = len([])
E    +    where [] = <Response status_code=200, "application/json">.data
tests/sentry/api/endpoints/test_organization_ai_conversation_details.py::OrganizationAIConversationDetailsEndpointTest::test_single_trace_conversationlog
[gw1] linux -- Python 3.13.1 /home/runner/work/sentry/sentry/.venv/bin/python3
tests/sentry/api/endpoints/test_organization_ai_conversation_details.py:111: in test_single_trace_conversation
    assert len(response.data) == 3
E   assert 0 == 3
E    +  where 0 = len([])
E    +    where [] = <Response status_code=200, "application/json">.data
tests/sentry/api/endpoints/test_organization_ai_conversation_details.py::OrganizationAIConversationDetailsEndpointTest::test_tokens_on_multiple_span_typeslog
[gw1] linux -- Python 3.13.1 /home/runner/work/sentry/sentry/.venv/bin/python3
tests/sentry/api/endpoints/test_organization_ai_conversation_details.py:461: in test_tokens_on_multiple_span_types
    assert len(response.data) == 2
E   assert 0 == 2
E    +  where 0 = len([])
E    +    where [] = <Response status_code=200, "application/json">.data
tests/sentry/api/endpoints/test_organization_ai_conversations.py::OrganizationAIConversationsEndpointTest::test_single_conversation_single_tracelog
[gw0] linux -- Python 3.13.1 /home/runner/work/sentry/sentry/.venv/bin/python3
tests/sentry/api/endpoints/test_organization_ai_conversations.py:235: in test_single_conversation_single_trace
    assert len(response.data) == 1
E   assert 0 == 1
E    +  where 0 = len([])
E    +    where [] = <Response status_code=200, "application/json">.data
tests/sentry/api/endpoints/test_organization_ai_conversations.py::OrganizationAIConversationsEndpointTest::test_complete_conversation_data_across_time_rangelog
[gw0] linux -- Python 3.13.1 /home/runner/work/sentry/sentry/.venv/bin/python3
tests/sentry/api/endpoints/test_organization_ai_conversations.py:646: in test_complete_conversation_data_across_time_range
    assert len(response.data) == 1
E   assert 0 == 1
E    +  where 0 = len([])
E    +    where [] = <Response status_code=200, "application/json">.data
tests/sentry/api/endpoints/test_organization_ai_conversation_details.py::OrganizationAIConversationDetailsEndpointTest::test_spans_without_issues_have_empty_arrayslog
[gw0] linux -- Python 3.13.1 /home/runner/work/sentry/sentry/.venv/bin/python3
tests/sentry/api/endpoints/test_organization_ai_conversation_details.py:519: in test_spans_without_issues_have_empty_arrays
    assert len(response.data) == 1
E   assert 0 == 1
E    +  where 0 = len([])
E    +    where [] = <Response status_code=200, "application/json">.data
tests/sentry/api/endpoints/test_organization_ai_conversations.py::OrganizationAIConversationsEndpointTest::test_multiple_conversationslog
[gw0] linux -- Python 3.13.1 /home/runner/work/sentry/sentry/.venv/bin/python3
tests/sentry/api/endpoints/test_organization_ai_conversations.py:434: in test_multiple_conversations
    assert len(response.data) == 2
E   assert 0 == 2
E    +  where 0 = len([])
E    +    where [] = <Response status_code=200, "application/json">.data
tests/sentry/api/endpoints/test_organization_ai_conversations.py::OrganizationAIConversationsEndpointTest::test_tool_errors_countedlog
[gw0] linux -- Python 3.13.1 /home/runner/work/sentry/sentry/.venv/bin/python3
tests/sentry/api/endpoints/test_organization_ai_conversations.py:1310: in test_tool_errors_counted
    assert len(response.data) == 1
E   assert 0 == 1
E    +  where 0 = len([])
E    +    where [] = <Response status_code=200, "application/json">.data
tests/sentry/api/endpoints/test_organization_ai_conversations.py::OrganizationAIConversationsEndpointTest::test_zero_valueslog
[gw0] linux -- Python 3.13.1 /home/runner/work/sentry/sentry/.venv/bin/python3
tests/sentry/api/endpoints/test_organization_ai_conversations.py:497: in test_zero_values
    assert len(response.data) == 1
E   assert 0 == 1
E    +  where 0 = len([])
E    +    where [] = <Response status_code=200, "application/json">.data
tests/sentry/api/endpoints/test_organization_ai_conversation_details.py::OrganizationAIConversationDetailsEndpointTest::test_error_only_attached_to_matching_spanlog
[gw0] linux -- Python 3.13.1 /home/runner/work/sentry/sentry/.venv/bin/python3
tests/sentry/api/endpoints/test_organization_ai_conversation_details.py:592: in test_error_only_attached_to_matching_span
    assert len(response.data) == 2
E   assert 0 == 2
E    +  where 0 = len([])
E    +    where [] = <Response status_code=200, "application/json">.data

cvxluo commented Jul 24, 2026

Copy link
Copy Markdown
Contributor Author

The backend test failures here are unrelated to this change and look like a flaky EAP/snuba span-storage issue in this CI run, not a regression from this PR.

  • This PR's entire diff is removing one manager.add("organizations:dashboards-ai-generate-edit", ...) line from temporary.py (2 lines).
  • Every failure is in the gen-ai-conversations suite (test_organization_ai_conversations.py / test_organization_ai_conversation_details.py), which gates on a different flag (organizations:gen-ai-conversations) and never references dashboards-ai-generate-edit.
  • All failures are response.data == [] (stored spans not queryable), spread across nearly every backend test (N) shard — the signature of an EAP ingestion/query flake. A broken import from this diff would fail at collection instead.

No code fix is warranted on this PR. Leaving it in draft; it needs a clean backend test re-run before it's ready for review.


Generated by Claude Code

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

Labels

Scope: Backend Automatically applied to PRs that change backend components

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants