Skip to content

Fix hotfixed Asana tasks reappearing on Android Release Board after merge-back - #9794

Open
CDRussell wants to merge 1 commit into
developfrom
feature/craig/ensure_hotfixed_tasks_don't_reappear_in_release_board
Open

CDRussell wants to merge 1 commit into
developfrom
feature/craig/ensure_hotfixed_tasks_don't_reappear_in_release_board

Conversation

@CDRussell

@CDRussell CDRussell commented Sep 15, 2026

Copy link
Copy Markdown
Member

Task/Issue URL: https://app.asana.com/1/137249556945/project/608920331025315/task/1218465484864245?focus=true
Tech Design URL (if applicable):
API Proposals URL(s) (if applicable):

Description

Hotfixed Asana tasks were reappearing on the Android Release Board. The nightly "Contained in LGC" job only excluded already-shipped tasks when the hotfix branch hadn't yet merged back to develop; once merged, the cherry-picked commit's different SHA made it look like new work and it got re-added to the Release Board erroneously.

i.e., our two automations (one to remove from release board and the other to add to release board) were fighting each other

This change matches on Asana task ID instead of commit SHA.

Steps to test this PR

Setup

cd scripts/release
python3 -m venv .venv && source .venv/bin/activate
pip install pytest -r requirements.txt

Unit tests should pass

python3 -m pytest test_asana_release_utils.py -q

Expect to see: 66 passed

Confirm the fix excludes shipped tasks which were in a hotfix

This is a pure git-history check; it doesn't read Asana, so the result is the same whether or not the board has been cleaned up yet. Checks that none of the 3 tasks that shipped in hotfixes 5.295.1/5.295.2 show up as "new".

python3 collect-lgc-asana-tasks.py --android-repo-path ../.. --end-commit HEAD --trigger-phrase "Task/Issue URL:" --start-tag 5.295.0 2>/dev/null \
  | python3 -c "import json,sys; ids=json.load(sys.stdin); print([t for t in ['1218354970503019','1218444895832821','1218462728719752'] if t in ids] or 'PASS: none of the 3 shipped tasks present')"

Expect to see: PASS: none of the 3 shipped tasks present.

[Optional] Confirm the existing bug

git checkout develop -- collect-lgc-asana-tasks.py asana_release_utils.py
python3 collect-lgc-asana-tasks.py --android-repo-path ../.. --end-commit HEAD --trigger-phrase "Task/Issue URL:" --start-tag 5.295.0 2>/dev/null | python3 -c "import json,sys; ids=json.load(sys.stdin); print([t for t in ['1218354970503019','1218444895832821','1218462728719752'] if t in ids] or 'unexpected: none present')"

It will spit out the 3 Asana tasks that were included in previous hotfixes (and were re-added to the relase board)

Tear-down

deactivate

And remove anything added from testing the above (it leaves some residual python artefacts on my machine)


Stack created with GitHub Stacks CLIGive Feedback 💬


Note

Low Risk
Changes only release helper scripts and tests; incorrect filtering could mis-tag release board tasks but does not affect app runtime or user data.

Overview
Fixes hotfixed Asana tasks showing up again on the Android Release Board after the hotfix is cherry-picked back to develop.

collect-lgc-asana-tasks.py no longer uses is_ancestor and a one-off prior_tag..start_tag commit scan (only when the start tag wasn’t an ancestor of the end commit). It always drops task IDs returned by new collect_shipped_task_ids in asana_release_utils.py, which walks public release tag ranges from the tag before start_tag through later tags (including hotfix tags like 5.295.1) and collects Asana IDs from commit messages.

Exclusion is by task ID, not commit SHA, so the same fix merged to develop under a new hash still counts as already shipped once it appeared in a release tag.

Tests add coverage for collect_shipped_task_ids and update the LGC collector integration tests for the new filtering behavior (including the hotfix merge-back regression).

Reviewed by Cursor Bugbot for commit 92f1444. Configure here.

@claude claude Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Claude Code Review

This repository is configured for manual code reviews. Comment @claude review for a one-time review, or @claude review always to subscribe this PR to a review on every future push.

Tip: disable this comment in your organization's Code Review settings.

@CDRussell
CDRussell force-pushed the feature/craig/ensure_hotfixed_tasks_don't_reappear_in_release_board branch from 92f1444 to 81e9458 Compare September 15, 2026 08:57
@CrisBarreiro

Copy link
Copy Markdown
Collaborator

@claude review

@claude claude Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Code review found no issues

No high-confidence issues detected in this change.

This branch has not been deployed

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

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants