From 962fd8ae92eb7befeff918d7e8c688417349bb68 Mon Sep 17 00:00:00 2001 From: Nan Date: Thu, 14 May 2026 15:25:40 -0700 Subject: [PATCH 1/3] chore: remove unused Asana and Claude workflows no longer used --- .github/workflows/asana-add-comment.yml | 47 ------- .github/workflows/asana-create-task.yml | 119 ---------------- .github/workflows/asana-update-issue.yml | 172 ----------------------- .github/workflows/claude-code-review.yml | 44 ------ .github/workflows/claude.yml | 50 ------- 5 files changed, 432 deletions(-) delete mode 100644 .github/workflows/asana-add-comment.yml delete mode 100644 .github/workflows/asana-create-task.yml delete mode 100644 .github/workflows/asana-update-issue.yml delete mode 100644 .github/workflows/claude-code-review.yml delete mode 100644 .github/workflows/claude.yml diff --git a/.github/workflows/asana-add-comment.yml b/.github/workflows/asana-add-comment.yml deleted file mode 100644 index 1235c8f14..000000000 --- a/.github/workflows/asana-add-comment.yml +++ /dev/null @@ -1,47 +0,0 @@ -name: Github --> Asana Add Comment Workflow - -on: - issue_comment: - types: [created] - workflow_dispatch: - -jobs: - build: - runs-on: ubuntu-latest - permissions: - issues: read - steps: - - name: Get Asana Task Corresponding to Issue - env: - ISSUE_ID: ${{ github.event.issue.id }} - REPO_FULL_NAME: ${{ github.event.repository.full_name }} - WORKSPACE_ID: "780103692902078" - run: | - REPO_SCOPED_ISSUE_ID="$REPO_FULL_NAME#$ISSUE_ID" - - curl --request GET \ - --url "https://app.asana.com/api/1.0/workspaces/$WORKSPACE_ID/tasks/search?opt_fields=notes&text=$REPO_SCOPED_ISSUE_ID&sort_by=modified_at&sort_ascending=false" \ - --header 'accept: application/json' \ - --header 'authorization: Bearer ${{ secrets.ASANA_PAT }}' \ - --output response.json - TASK_GID=$(jq -r '.data[0].gid' response.json) - echo "TASK_GID=$TASK_GID" >> $GITHUB_ENV - - name: Comment on Asana Task - env: - ISSUE_COMMENT: ${{ github.event.comment.body }} - COMMENTER_NAME: ${{ github.event.comment.user.login }} - run: | - BODY_DATA=$(jq -n \ - --arg text "$ISSUE_COMMENT" \ - --arg commenter_name "$COMMENTER_NAME" \ - '{ - "data": { - "text": "\($commenter_name) left a comment:\n\n\($text)", - } - }') - curl --request POST \ - --url https://app.asana.com/api/1.0/tasks/$TASK_GID/stories \ - --header 'accept: application/json' \ - --header 'authorization: Bearer ${{ secrets.ASANA_PAT }}' \ - --header 'content-type: application/json' \ - --data "$BODY_DATA" \ No newline at end of file diff --git a/.github/workflows/asana-create-task.yml b/.github/workflows/asana-create-task.yml deleted file mode 100644 index 1bcaf2c76..000000000 --- a/.github/workflows/asana-create-task.yml +++ /dev/null @@ -1,119 +0,0 @@ -name: Github --> Asana Create Task Workflow - -on: - issues: - types: [opened] - workflow_dispatch: - -jobs: - build: - runs-on: ubuntu-latest - permissions: - issues: read - steps: - - name: Create Asana task - env: - ISSUE_TITLE: ${{ github.event.issue.title }} - ISSUE_BODY: ${{ github.event.issue.body }} - ISSUE_HTML_URL: ${{ github.event.issue.html_url }} - ISSUE_ID: ${{ github.event.issue.id }} - ISSUE_NUMBER: ${{ github.event.issue.number }} - REPO_FULL_NAME: ${{ github.event.repository.full_name }} - SDK_PLATFORM_GROUP: "1208961704779581" - SDK_PLATFORM_GROUP_MOBILE: "1208961704779582" - SDK_PLATFORM: "1208961704779592" - SDK_PLATFORM_IOS: "1208961704779596" - DSA_PRIORITY: "1208779519954980" - DSA_PRIORITY_NO_PRIORITY: "1208779521616959" - DSA_STATUS: "1210103546117753" - DSA_STATUS_TRIAGE: "1210103546117756" - DSA_REPO_TICKET_URL: "1210347857768758" - WORKSPACE_ID: "780103692902078" - PROJECT_ID_GITHUB_AND_IMPORTANT_SDK_ISSUES: "1208970714650308" - PROJECT_ID_SDK_BACKLOG: "1208777198342772" - run: | - DATA_BODY=$(jq -n \ - --arg title "$ISSUE_TITLE" \ - --arg body "$ISSUE_BODY" \ - --arg url "$ISSUE_HTML_URL" \ - --arg id "$ISSUE_ID" \ - --arg number "$ISSUE_NUMBER" \ - --arg repo_full_name "$REPO_FULL_NAME" \ - --arg sdk_platform_group "$SDK_PLATFORM_GROUP" \ - --arg sdk_platform_group_mobile "$SDK_PLATFORM_GROUP_MOBILE" \ - --arg sdk_platform "$SDK_PLATFORM" \ - --arg sdk_platform_ios "$SDK_PLATFORM_IOS" \ - --arg dsa_priority "$DSA_PRIORITY" \ - --arg dsa_priority_no_priority "$DSA_PRIORITY_NO_PRIORITY" \ - --arg dsa_status "$DSA_STATUS" \ - --arg dsa_status_triage "$DSA_STATUS_TRIAGE" \ - --arg dsa_repo_ticket_url "$DSA_REPO_TICKET_URL" \ - --arg workspace_id "$WORKSPACE_ID" \ - --arg project_id_github_and_important_sdk_issues "$PROJECT_ID_GITHUB_AND_IMPORTANT_SDK_ISSUES" \ - --arg project_id_sdk_backlog "$PROJECT_ID_SDK_BACKLOG" \ - '{ - "data": { - "custom_fields": { - $sdk_platform_group: $sdk_platform_group_mobile, - $sdk_platform: $sdk_platform_ios, - $dsa_priority: $dsa_priority_no_priority, - $dsa_status: $dsa_status_triage, - $dsa_repo_ticket_url: $url - }, - "name": $title, - "workspace": $workspace_id, - "projects": [$project_id_github_and_important_sdk_issues, $project_id_sdk_backlog], - "notes": "Issue ID: \($repo_full_name)#\($id)\nIssue number: \($number)\nCreated via GitHub Actions\n----\n\n\($body)" - } - }') - - curl --request POST \ - --url https://app.asana.com/api/1.0/tasks?opt_pretty=true \ - --header 'accept: application/json' \ - --header 'authorization: Bearer ${{ secrets.ASANA_PAT }}' \ - --header 'content-type: application/json' \ - --data "$DATA_BODY" \ - --output response.json - - TASK_GID=$(jq -r '.data.gid' response.json) - echo "TASK_GID=$TASK_GID" >> $GITHUB_ENV - - name: Move to "0 Unclassified" section in "Github & Important SDK Issues" project - env: - SECTION_ID_GITHUB_AND_IMPORTANT_SDK_ISSUES: "1208970755434051" - run: | - DATA_BODY=$(jq -n \ - --arg task_gid "$TASK_GID" \ - --arg section_id "$SECTION_ID_GITHUB_AND_IMPORTANT_SDK_ISSUES" \ - '{ - "data": { - "task": $task_gid, - "insert_after": "null" - } - }') - - curl --request POST \ - --url https://app.asana.com/api/1.0/sections/$section_id/addTask \ - --header 'accept: application/json' \ - --header 'authorization: Bearer ${{ secrets.ASANA_PAT }}' \ - --header 'content-type: application/json' \ - --data "$DATA_BODY" - - name: Move to "Untriaged" section in "SDK / Backlog" project - env: - SECTION_ID_SDK_BACKLOG: "1208899729378982" - run: | - DATA_BODY=$(jq -n \ - --arg task_gid "$TASK_GID" \ - --arg section_id "$SECTION_ID_SDK_BACKLOG" \ - '{ - "data": { - "task": $task_gid, - "insert_after": "null" - } - }') - - curl --request POST \ - --url https://app.asana.com/api/1.0/sections/$section_id/addTask \ - --header 'accept: application/json' \ - --header 'authorization: Bearer ${{ secrets.ASANA_PAT }}' \ - --header 'content-type: application/json' \ - --data "$DATA_BODY" \ No newline at end of file diff --git a/.github/workflows/asana-update-issue.yml b/.github/workflows/asana-update-issue.yml deleted file mode 100644 index d09d73556..000000000 --- a/.github/workflows/asana-update-issue.yml +++ /dev/null @@ -1,172 +0,0 @@ -name: Github --> Asana Issue Updates Workflow - -on: - issues: - types: [edited, deleted, closed, reopened, assigned, unassigned, labeled, unlabeled, milestoned, demilestoned, pinned, unpinned, locked, unlocked, transferred] - workflow_dispatch: - -jobs: - build: - runs-on: ubuntu-latest - permissions: - issues: read - steps: - - name: Get Asana Task Corresponding to Issue - env: - ISSUE_ID: ${{ github.event.issue.id }} - REPO_FULL_NAME: ${{ github.event.repository.full_name }} - WORKSPACE_ID: "780103692902078" - run: | - REPO_SCOPED_ISSUE_ID="$REPO_FULL_NAME#$ISSUE_ID" - - curl --request GET \ - --url "https://app.asana.com/api/1.0/workspaces/$WORKSPACE_ID/tasks/search?opt_fields=notes&text=$REPO_SCOPED_ISSUE_ID&sort_by=modified_at&sort_ascending=false" \ - --header 'accept: application/json' \ - --header 'authorization: Bearer ${{ secrets.ASANA_PAT }}' \ - --output response.json - TASK_GID=$(jq -r '.data[0].gid' response.json) - echo "TASK_GID=$TASK_GID" >> $GITHUB_ENV - - name: Determine Action and Post to Asana - env: - ACTION_TYPE: ${{ github.event.action }} - ACTOR_NAME: ${{ github.event.sender.login }} - ISSUE_TITLE: ${{ github.event.issue.title }} - ISSUE_NUMBER: ${{ github.event.issue.number }} - ISSUE_STATE: ${{ github.event.issue.state }} - run: | - # Map GitHub action types to human-readable descriptions - case "$ACTION_TYPE" in - "edited") - ACTION_DESC="edited the issue" - ;; - "deleted") - ACTION_DESC="deleted the issue" - ;; - "closed") - ACTION_DESC="closed the issue" - ;; - "reopened") - ACTION_DESC="reopened the issue" - ;; - "assigned") - ACTION_DESC="assigned the issue" - ;; - "unassigned") - ACTION_DESC="unassigned the issue" - ;; - "labeled") - ACTION_DESC="added labels to the issue" - ;; - "unlabeled") - ACTION_DESC="removed labels from the issue" - ;; - "milestoned") - ACTION_DESC="added the issue to a milestone" - ;; - "demilestoned") - ACTION_DESC="removed the issue from a milestone" - ;; - "pinned") - ACTION_DESC="pinned the issue" - ;; - "unpinned") - ACTION_DESC="unpinned the issue" - ;; - "locked") - ACTION_DESC="locked the issue" - ;; - "unlocked") - ACTION_DESC="unlocked the issue" - ;; - "transferred") - ACTION_DESC="transferred the issue" - ;; - *) - ACTION_DESC="performed an action on the issue" - ;; - esac - - # Add additional context for specific actions based on webhook payload - if [ "$ACTION_TYPE" = "assigned" ] && [ -n "${{ github.event.assignee.login }}" ]; then - ACTION_DESC="assigned the issue to ${{ github.event.assignee.login }}" - fi - - if [ "$ACTION_TYPE" = "unassigned" ] && [ -n "${{ github.event.assignee.login }}" ]; then - ACTION_DESC="unassigned the issue from ${{ github.event.assignee.login }}" - fi - - if [ "$ACTION_TYPE" = "labeled" ] && [ -n "${{ github.event.label.name }}" ]; then - LABEL_COLOR="${{ github.event.label.color }}" - ACTION_DESC="added label '${{ github.event.label.name }}' to the issue" - if [ -n "$LABEL_COLOR" ]; then - ACTION_DESC="$ACTION_DESC (color: #$LABEL_COLOR)" - fi - fi - - if [ "$ACTION_TYPE" = "unlabeled" ] && [ -n "${{ github.event.label.name }}" ]; then - LABEL_COLOR="${{ github.event.label.color }}" - ACTION_DESC="removed label '${{ github.event.label.name }}' from the issue" - if [ -n "$LABEL_COLOR" ]; then - ACTION_DESC="$ACTION_DESC (color: #$LABEL_COLOR)" - fi - fi - - if [ "$ACTION_TYPE" = "milestoned" ] && [ -n "${{ github.event.milestone.title }}" ]; then - MILESTONE_DUE_DATE="${{ github.event.milestone.due_on }}" - ACTION_DESC="added the issue to milestone '${{ github.event.milestone.title }}'" - if [ -n "$MILESTONE_DUE_DATE" ] && [ "$MILESTONE_DUE_DATE" != "null" ]; then - ACTION_DESC="$ACTION_DESC (due: $MILESTONE_DUE_DATE)" - fi - fi - - if [ "$ACTION_TYPE" = "demilestoned" ] && [ -n "${{ github.event.milestone.title }}" ]; then - ACTION_DESC="removed the issue from milestone '${{ github.event.milestone.title }}'" - fi - - if [ "$ACTION_TYPE" = "transferred" ] && [ -n "${{ github.event.changes.new_repository.full_name }}" ]; then - ACTION_DESC="transferred the issue to repository ${{ github.event.changes.new_repository.full_name }}" - fi - - if [ "$ACTION_TYPE" = "edited" ] && [ -n "${{ github.event.changes.title.from }}" ]; then - OLD_TITLE="${{ github.event.changes.title.from }}" - NEW_TITLE="${{ github.event.issue.title }}" - ACTION_DESC="edited the issue title from '$OLD_TITLE' to '$NEW_TITLE'" - fi - - echo "ACTION_DESC=$ACTION_DESC" >> $GITHUB_ENV - - # Only proceed if we found a task - if [ "$TASK_GID" != "null" ] && [ -n "$TASK_GID" ]; then - # Create a more detailed message with additional context - MESSAGE_TEXT="$ACTOR_NAME performed an action: $ACTION_DESC" - - # Add issue state information for state changes - if [ "$ACTION_TYPE" = "closed" ] || [ "$ACTION_TYPE" = "reopened" ]; then - MESSAGE_TEXT=$(printf "%s\nIssue state: %s" "$MESSAGE_TEXT" "$ISSUE_STATE") - fi - - # Add repository information for transferred issues - if [ "$ACTION_TYPE" = "transferred" ]; then - REPO_NAME="${{ github.event.repository.full_name }}" - MESSAGE_TEXT=$(printf "%s\nFrom repository: %s" "$MESSAGE_TEXT" "$REPO_NAME") - fi - - MESSAGE_TEXT=$(printf "%s\n\nIssue: #%s - %s" "$MESSAGE_TEXT" "$ISSUE_NUMBER" "$ISSUE_TITLE") - - BODY_DATA=$(jq -n \ - --arg text "$MESSAGE_TEXT" \ - '{ - "data": { - "text": $text - } - }') - - curl --request POST \ - --url https://app.asana.com/api/1.0/tasks/$TASK_GID/stories \ - --header 'accept: application/json' \ - --header 'authorization: Bearer ${{ secrets.ASANA_PAT }}' \ - --header 'content-type: application/json' \ - --data "$BODY_DATA" - else - echo "No corresponding Asana task found for issue ID: $ISSUE_ID" - fi \ No newline at end of file diff --git a/.github/workflows/claude-code-review.yml b/.github/workflows/claude-code-review.yml deleted file mode 100644 index 4f6145beb..000000000 --- a/.github/workflows/claude-code-review.yml +++ /dev/null @@ -1,44 +0,0 @@ -name: Claude Code Review - -on: - pull_request: - types: [opened, synchronize, ready_for_review, reopened] - # Optional: Only run on specific file changes - # paths: - # - "src/**/*.ts" - # - "src/**/*.tsx" - # - "src/**/*.js" - # - "src/**/*.jsx" - -jobs: - claude-review: - # Optional: Filter by PR author - # if: | - # github.event.pull_request.user.login == 'external-contributor' || - # github.event.pull_request.user.login == 'new-developer' || - # github.event.pull_request.author_association == 'FIRST_TIME_CONTRIBUTOR' - - runs-on: ubuntu-latest - permissions: - contents: read - pull-requests: read - issues: read - id-token: write - - steps: - - name: Checkout repository - uses: actions/checkout@v4 - with: - fetch-depth: 1 - - - name: Run Claude Code Review - id: claude-review - uses: anthropics/claude-code-action@v1 - with: - anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }} - plugin_marketplaces: 'https://github.com/anthropics/claude-code.git' - plugins: 'code-review@claude-code-plugins' - prompt: '/code-review:code-review ${{ github.repository }}/pull/${{ github.event.pull_request.number }}' - # See https://github.com/anthropics/claude-code-action/blob/main/docs/usage.md - # or https://code.claude.com/docs/en/cli-reference for available options - diff --git a/.github/workflows/claude.yml b/.github/workflows/claude.yml deleted file mode 100644 index 79fe05647..000000000 --- a/.github/workflows/claude.yml +++ /dev/null @@ -1,50 +0,0 @@ -name: Claude Code - -on: - issue_comment: - types: [created] - pull_request_review_comment: - types: [created] - issues: - types: [opened, assigned] - pull_request_review: - types: [submitted] - -jobs: - claude: - if: | - (github.event_name == 'issue_comment' && contains(github.event.comment.body, '@claude')) || - (github.event_name == 'pull_request_review_comment' && contains(github.event.comment.body, '@claude')) || - (github.event_name == 'pull_request_review' && contains(github.event.review.body, '@claude')) || - (github.event_name == 'issues' && (contains(github.event.issue.body, '@claude') || contains(github.event.issue.title, '@claude'))) - runs-on: ubuntu-latest - permissions: - contents: read - pull-requests: read - issues: read - id-token: write - actions: read # Required for Claude to read CI results on PRs - steps: - - name: Checkout repository - uses: actions/checkout@v4 - with: - fetch-depth: 1 - - - name: Run Claude Code - id: claude - uses: anthropics/claude-code-action@v1 - with: - anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }} - - # This is an optional setting that allows Claude to read CI results on PRs - additional_permissions: | - actions: read - - # Optional: Give a custom prompt to Claude. If this is not specified, Claude will perform the instructions specified in the comment that tagged it. - # prompt: 'Update the pull request description to include a summary of changes.' - - # Optional: Add claude_args to customize behavior and configuration - # See https://github.com/anthropics/claude-code-action/blob/main/docs/usage.md - # or https://code.claude.com/docs/en/cli-reference for available options - # claude_args: '--allowed-tools Bash(gh pr:*)' - From c76f860d32d20fcc6a295bfa0ead05edb888cee3 Mon Sep 17 00:00:00 2001 From: Nan Date: Thu, 14 May 2026 15:30:40 -0700 Subject: [PATCH 2/3] chore: remove unused issue response-time workflow The workflow stamped response_time_in_business_days into a hidden probot metadata block on each issue. No consumer reads the value. --- .github/os_probot_metadata.js | 58 ------------------------- .github/set_response_times.js | 47 -------------------- .github/workflows/set_response_time.yml | 32 -------------- 3 files changed, 137 deletions(-) delete mode 100644 .github/os_probot_metadata.js delete mode 100644 .github/set_response_times.js delete mode 100644 .github/workflows/set_response_time.yml diff --git a/.github/os_probot_metadata.js b/.github/os_probot_metadata.js deleted file mode 100644 index 9708a5922..000000000 --- a/.github/os_probot_metadata.js +++ /dev/null @@ -1,58 +0,0 @@ -/** - * Based on probot-metadata - https://github.com/probot/metadata - */ -const regex = /\n\n/ - -const { Octokit } = require("@octokit/action") - -const octokit = new Octokit() - -module.exports = (context, issue = null) => { - console.log(context) - const prefix = "onesignal-probot" - - if (!issue) issue = context.payload.issue - - return { - async get (key = null) { - let body = issue.body - - if (!body) { - body = (await octokit.issues.get(issue)).data.body || '' - } - - const match = body.match(regex) - - if (match) { - const data = JSON.parse(match[1])[prefix] - return key ? data && data[key] : data - } - }, - - async set (key, value) { - let body = issue.body - let data = {} - - if (!body) body = (await octokit.issues.get(issue)).data.body || '' - - body = body.replace(regex, (_, json) => { - data = JSON.parse(json) - return '' - }) - - if (!data[prefix]) data[prefix] = {} - - if (typeof key === 'object') { - Object.assign(data[prefix], key) - } else { - data[prefix][key] = value - } - - body = `${body}\n\n` - - const [owner, repo] = process.env.GITHUB_REPOSITORY.split("/") - const issue_number = context.payload.issue.number - return octokit.issues.update({ owner, repo, issue_number, body }) - } - } -} diff --git a/.github/set_response_times.js b/.github/set_response_times.js deleted file mode 100644 index 5bcac4492..000000000 --- a/.github/set_response_times.js +++ /dev/null @@ -1,47 +0,0 @@ -function calcResponseTimeForIssueCreatedAt(createdAt) { - const issueOpenedDate = new Date(createdAt); - const issueTriagedDate = new Date(); - const businessDaysResponseTime = calcBusinessDaysBetweenDates(issueOpenedDate, issueTriagedDate); - return businessDaysResponseTime; -} - -function calcBusinessDaysBetweenDates(openedDate, triagedDate) { - let differenceInWeeks, responseTime; - if (triagedDate < openedDate) - return -1; // error code if dates transposed - let openedDay = openedDate.getDay(); // day of week - let triagedDay = triagedDate.getDay(); - openedDay = (openedDay == 0) ? 7 : openedDay; // change Sunday from 0 to 7 - triagedDay = (triagedDay == 0) ? 7 : triagedDay; - openedDay = (openedDay > 5) ? 5 : openedDay; // only count weekdays - triagedDay = (triagedDay > 5) ? 5 : triagedDay; - // calculate differnece in weeks (1000mS * 60sec * 60min * 24hrs * 7 days = 604800000) - differenceInWeeks = Math.floor((triagedDate.getTime() - openedDate.getTime()) / 604800000); - if (openedDay < triagedDay) { //Equal to makes it reduce 5 days - responseTime = (differenceInWeeks * 5) + (triagedDay - openedDay); - } - else if (openedDay == triagedDay) { - responseTime = differenceInWeeks * 5; - } - else { - responseTime = ((differenceInWeeks + 1) * 5) - (openedDay - triagedDay); - } - return (responseTime); -} - -module.exports = async(context, osmetadata) => { - const foundResponseTime = await osmetadata(context).get('response_time_in_business_days'); - if (foundResponseTime) { - const foundString = "already found response time in business days: " + foundResponseTime - console.log(foundString); - return foundString; - } - if (context.payload.comment && context.payload.comment.author_association != "MEMBER" && context.payload.comment.author_association != "OWNER" && context.payload.comment.author_association != "CONTRIBUTOR") { - return; - } - const businessDaysResponseTime = calcResponseTimeForIssueCreatedAt(context.payload.issue.created_at); - console.log("response time in business days: " + businessDaysResponseTime); - const result = osmetadata(context, context.payload.issue).set('response_time_in_business_days', businessDaysResponseTime) - console.log("osmetadata update result: " + result); - return "set response time in business days: " + businessDaysResponseTime; -} diff --git a/.github/workflows/set_response_time.yml b/.github/workflows/set_response_time.yml deleted file mode 100644 index 4b711ee71..000000000 --- a/.github/workflows/set_response_time.yml +++ /dev/null @@ -1,32 +0,0 @@ -name: Set Response Time -on: - issue_comment: - types: - - created - issues: - types: - - closed -jobs: - calculate: - name: set reponse time for the issue - if: github.event.issue.pull_request == null - runs-on: ubuntu-latest - permissions: - issues: write - steps: - - uses: actions/checkout@v3 - with: - token: ${{ secrets.GITHUB_TOKEN }} - - run: npm install @octokit/action@6.0.6 - - uses: actions/github-script@v6 - id: set-time - with: - result-encoding: string - script: | - const os_probot_metadata = require('./.github/os_probot_metadata.js') - const set_response_time = require('./.github/set_response_times.js') - return await set_response_time(context, os_probot_metadata) - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - - name: Get result - run: echo "${{steps.set-time.outputs.result}}" >> $GITHUB_STEP_SUMMARY From 85d710371484d50d04650c99e9458c23f1383fa9 Mon Sep 17 00:00:00 2001 From: Nan Date: Thu, 14 May 2026 15:36:16 -0700 Subject: [PATCH 3/3] chore: remove stale Travis config and superseded root files - .travis.yml: pins Xcode 11.1 / iOS 13.1 from 2019; CI runs on .github/workflows/ci.yml (Xcode 16.4). - issue_template.md: shadowed by .github/ISSUE_TEMPLATE/*.yml form templates, which GitHub prefers. - default: ci.yml writes this file every run, so the committed copy is not load-bearing. --- .travis.yml | 6 ------ default | 1 - issue_template.md | 42 ------------------------------------------ 3 files changed, 49 deletions(-) delete mode 100644 .travis.yml delete mode 100644 default delete mode 100644 issue_template.md diff --git a/.travis.yml b/.travis.yml deleted file mode 100644 index 202f9299c..000000000 --- a/.travis.yml +++ /dev/null @@ -1,6 +0,0 @@ -language: objective-c -osx_image: xcode11.1 -before_install: - - cd iOS_SDK/OneSignalSDK -script: - - xcodebuild -scheme UnitTests -sdk iphonesimulator -destination 'platform=iOS Simulator,name=iPhone 8 Plus,OS=13.1' test diff --git a/default b/default deleted file mode 100644 index 47a2b865b..000000000 --- a/default +++ /dev/null @@ -1 +0,0 @@ -UnitTestApp diff --git a/issue_template.md b/issue_template.md deleted file mode 100644 index 3d5054b5f..000000000 --- a/issue_template.md +++ /dev/null @@ -1,42 +0,0 @@ - - -**Description:** - - -(your description here) - -**Environment** - - - - -**Steps to Reproduce Issue:** - - -1. (your steps here) -2. -3. - -**Anything else:** - -(crash stacktraces, as well as any other information here) - - -