Skip to content

feat: allow resolving keys in task context

6be4256
Select commit
Loading
Failed to load commit list.
Merged

feat: allow resolving keys in task context #968

feat: allow resolving keys in task context
6be4256
Select commit
Loading
Failed to load commit list.
firefoxci-taskcluster / test-integration-py39-deps-lowest-direct succeeded Jun 2, 2026 in 1m 0s

FirefoxCI (pull_request)

Run unit tests with py39 on Linux with resolution lowest-direct (Treeherder push)

Details

View task in Taskcluster | View logs in Taskcluster | View task group in Taskcluster

Task Status

Started: 2026-06-02T20:31:51.814Z
Resolved: 2026-06-02T20:32:50.542Z
Task Execution Time: 58 seconds, 728 milliseconds
Task Status: completed
Reason Resolved: completed
TaskId: XE_lcSWMSkm2aDMEseAaRQ
RunId: 0

Artifacts

- public/logs/live_backing.log
- public/logs/live.log


[taskcluster 2026-06-02T20:31:51.874Z] Worker Type (taskgraph-t/linux-docker) settings:
[taskcluster 2026-06-02T20:31:51.874Z]   {
[taskcluster 2026-06-02T20:31:51.874Z]     "generic-worker": {
[taskcluster 2026-06-02T20:31:51.874Z]       "config": {
[taskcluster 2026-06-02T20:31:51.874Z]         "headlessTasks": true
[taskcluster 2026-06-02T20:31:51.874Z]       },
[taskcluster 2026-06-02T20:31:51.874Z]       "engine": "multiuser",
[taskcluster 2026-06-02T20:31:51.874Z]       "go-arch": "amd64",
[taskcluster 2026-06-02T20:31:51.874Z]       "go-os": "linux",
[taskcluster 2026-06-02T20:31:51.874Z]       "go-version": "go1.26.2",
[taskcluster 2026-06-02T20:31:51.874Z]       "release": "https://github.com/taskcluster/taskcluster/releases/tag/v99.2.1",
[taskcluster 2026-06-02T20:31:51.874Z]       "revision": "ddb9ce7efdb98ae2d0917b69778e9f3cd125e07f",
[taskcluster 2026-06-02T20:31:51.874Z]       "source": "https://github.com/taskcluster/taskcluster/commits/ddb9ce7efdb98ae2d0917b69778e9f3cd125e07f",
[taskcluster 2026-06-02T20:31:51.874Z]       "version": "99.2.1"
[taskcluster 2026-06-02T20:31:51.874Z]     },
[taskcluster 2026-06-02T20:31:51.874Z]     "image": "projects/taskcluster-imaging/global/images/gw-fxci-gcp-l1-2404-amd64-headless-googlecompute-2026-05-04",
[taskcluster 2026-06-02T20:31:51.874Z]     "instance-id": "2610204413682418668",
[taskcluster 2026-06-02T20:31:51.874Z]     "instance-type": "projects/887720501152/machineTypes/c2-standard-4",
[taskcluster 2026-06-02T20:31:51.874Z]     "local-ipv4": "10.128.0.31",
[taskcluster 2026-06-02T20:31:51.874Z]     "project-id": "fxci-production-level1-workers",

...(553 lines hidden)...

[task 2026-06-02T20:32:19.515+00:00] test/test_util_schema.py::TestResolveKeyedBy::test_list PASSED           [ 73%]
[task 2026-06-02T20:32:19.516+00:00] test/test_util_schema.py::TestResolveKeyedBy::test_match_default PASSED  [ 73%]
[task 2026-06-02T20:32:19.517+00:00] test/test_util_schema.py::TestResolveKeyedBy::test_match_extra_value PASSED [ 73%]
[task 2026-06-02T20:32:19.518+00:00] test/test_util_schema.py::TestResolveKeyedBy::test_match_nested_exact PASSED [ 74%]
[task 2026-06-02T20:32:19.519+00:00] test/test_util_schema.py::TestResolveKeyedBy::test_match_partial_regexp PASSED [ 74%]
[task 2026-06-02T20:32:19.520+00:00] test/test_util_schema.py::TestResolveKeyedBy::test_match_regexp PASSED   [ 74%]
[task 2026-06-02T20:32:19.521+00:00] test/test_util_schema.py::TestResolveKeyedBy::test_multiple_matches PASSED [ 74%]
[task 2026-06-02T20:32:19.522+00:00] test/test_util_schema.py::TestResolveKeyedBy::test_nested PASSED         [ 74%]
[task 2026-06-02T20:32:19.523+00:00] test/test_util_schema.py::TestResolveKeyedBy::test_no_by PASSED          [ 74%]
[task 2026-06-02T20:32:19.524+00:00] test/test_util_schema.py::TestResolveKeyedBy::test_no_by_dotted PASSED   [ 75%]
[task 2026-06-02T20:32:19.525+00:00] test/test_util_schema.py::TestResolveKeyedBy::test_no_by_empty_dict PASSED [ 75%]
[task 2026-06-02T20:32:19.526+00:00] test/test_util_schema.py::TestResolveKeyedBy::test_no_by_not_by PASSED   [ 75%]
[task 2026-06-02T20:32:19.527+00:00] test/test_util_schema.py::TestResolveKeyedBy::test_no_by_not_dict PASSED [ 75%]
[task 2026-06-02T20:32:19.528+00:00] test/test_util_schema.py::TestResolveKeyedBy::test_no_by_not_only_by PASSED [ 75%]
[task 2026-06-02T20:32:19.529+00:00] test/test_util_schema.py::TestResolveKeyedBy::test_no_key PASSED         [ 75%]
[task 2026-06-02T20:32:19.530+00:00] test/test_util_schema.py::TestResolveKeyedBy::test_no_key_no_default PASSED [ 75%]
[task 2026-06-02T20:32:19.531+00:00] test/test_util_schema.py::TestResolveKeyedBy::test_no_match PASSED       [ 76%]
[task 2026-06-02T20:32:19.532+00:00] test/test_util_schema.py::TestNestedStructFieldsOptional::test_index_schema_accepts_all_fields PASSED [ 76%]
[task 2026-06-02T20:32:19.533+00:00] test/test_util_schema.py::TestNestedStructFieldsOptional::test_index_schema_accepts_partial_fields PASSED [ 76%]
[task 2026-06-02T20:32:19.534+00:00] test/test_util_schema.py::TestValidateSchemaDictHandler::test_dict_schema_invalid PASSED [ 76%]
[task 2026-06-02T20:32:19.535+00:00] test/test_util_schema.py::TestValidateSchemaDictHandler::test_dict_schema_valid PASSED [ 76%]
[task 2026-06-02T20:32:19.536+00:00] test/test_util_schema.py::test_optionally_keyed_by PASSED                [ 76%]
[task 2026-06-02T20:32:19.538+00:00] test/test_util_schema.py::test_optionally_keyed_by_multiple_keys PASSED  [ 77%]
[task 2026-06-02T20:32:19.538+00:00] test/test_util_schema.py::test_optionally_keyed_by_object_passthrough PASSED [ 77%]
[task 2026-06-02T20:32:19.540+00:00] test/test_util_schema.py::test_optionally_keyed_by_dict PASSED           [ 77%]
[task 2026-06-02T20:32:19.542+00:00] test/test_util_schema.py::test_from_dict_valid[fields_dict0-data0-name-foo] PASSED [ 77%]
[task 2026-06-02T20:32:19.544+00:00] test/test_util_schema.py::test_from_dict_valid[fields_dict1-data1-count-None] PASSED [ 77%]
[task 2026-06-02T20:32:19.546+00:00] test/test_util_schema.py::test_from_dict_valid[fields_dict2-data2-tags-expected2] PASSED [ 77%]
[task 2026-06-02T20:32:19.548+00:00] test/test_util_schema.py::test_from_dict_valid[fields_dict3-data3-my_field-bar] PASSED [ 78%]
[task 2026-06-02T20:32:19.551+00:00] test/test_util_schema.py::test_from_dict_invalid[fields_dict0-data0] PASSED [ 78%]
[task 2026-06-02T20:32:19.553+00:00] test/test_util_schema.py::test_from_dict_invalid[fields_dict1-data1] PASSED [ 78%]
[task 2026-06-02T20:32:19.555+00:00] test/test_util_schema.py::test_exclusive[data0-True] PASSED              [ 78%]
[task 2026-06-02T20:32:19.557+00:00] test/test_util_schema.py::test_exclusive[data1-False] PASSED             [ 78%]
[task 2026-06-02T20:32:19.559+00:00] test/test_util_schema.py::test_exclusive[data2-False] PASSED             [ 78%]
[task 2026-06-02T20:32:19.560+00:00] test/test_util_taskcluster.py::test_get_root_url PASSED                  [ 78%]
[task 2026-06-02T20:32:19.562+00:00] test/test_util_taskcluster.py::test_get_artifact_url PASSED              [ 79%]
[task 2026-06-02T20:32:19.573+00:00] test/test_util_taskcluster.py::test_get_artifact PASSED                  [ 79%]
[task 2026-06-02T20:32:19.575+00:00] test/test_util_taskcluster.py::test_list_artifact PASSED                 [ 79%]
[task 2026-06-02T20:32:19.576+00:00] test/test_util_taskcluster.py::test_get_artifact_path PASSED             [ 79%]
[task 2026-06-02T20:32:19.577+00:00] test/test_util_taskcluster.py::test_get_index_url PASSED                 [ 79%]
[task 2026-06-02T20:32:19.579+00:00] test/test_util_taskcluster.py::test_find_task_id PASSED                  [ 79%]
[task 2026-06-02T20:32:19.583+00:00] test/test_util_taskcluster.py::test_find_task_id_batched PASSED          [ 80%]
[task 2026-06-02T20:32:19.586+00:00] test/test_util_taskcluster.py::test_get_artifact_from_index PASSED       [ 80%]
[task 2026-06-02T20:32:19.589+00:00] test/test_util_taskcluster.py::test_get_artifact_from_index_uses_artifact_path_for_parsing PASSED [ 80%]
[task 2026-06-02T20:32:19.592+00:00] test/test_util_taskcluster.py::test_list_tasks PASSED                    [ 80%]
[task 2026-06-02T20:32:19.594+00:00] test/test_util_taskcluster.py::test_parse_time PASSED                    [ 80%]
[task 2026-06-02T20:32:19.595+00:00] test/test_util_taskcluster.py::test_get_task_url PASSED                  [ 80%]
[task 2026-06-02T20:32:19.597+00:00] test/test_util_taskcluster.py::test_get_task_definition PASSED           [ 81%]
[task 2026-06-02T20:32:19.599+00:00] test/test_util_taskcluster.py::test_get_task_definitions PASSED          [ 81%]
[task 2026-06-02T20:32:19.601+00:00] test/test_util_taskcluster.py::test_cancel_task PASSED                   [ 81%]
[task 2026-06-02T20:32:19.603+00:00] test/test_util_taskcluster.py::test_status_task PASSED                   [ 81%]
[task 2026-06-02T20:32:19.606+00:00] test/test_util_taskcluster.py::test_status_task_batched PASSED           [ 81%]
[task 2026-06-02T20:32:19.609+00:00] test/test_util_taskcluster.py::test_state_task PASSED                    [ 81%]
[task 2026-06-02T20:32:19.611+00:00] test/test_util_taskcluster.py::test_rerun_task PASSED                    [ 82%]
[task 2026-06-02T20:32:19.613+00:00] test/test_util_taskcluster.py::test_get_current_scopes PASSED            [ 82%]
[task 2026-06-02T20:32:19.615+00:00] test/test_util_taskcluster.py::test_purge_cache PASSED                   [ 82%]
[task 2026-06-02T20:32:19.618+00:00] test/test_util_taskcluster.py::test_send_email PASSED                    [ 82%]
[task 2026-06-02T20:32:19.621+00:00] test/test_util_taskcluster.py::test_list_task_group_incomplete_tasks PASSED [ 82%]
[task 2026-06-02T20:32:19.625+00:00] test/test_util_taskcluster.py::test_get_ancestors PASSED                 [ 82%]
[task 2026-06-02T20:32:19.629+00:00] test/test_util_taskcluster.py::test_get_ancestors_string PASSED          [ 82%]
[task 2026-06-02T20:32:19.631+00:00] test/test_util_taskcluster.py::test_get_taskcluster_client PASSED        [ 83%]
[task 2026-06-02T20:32:19.632+00:00] test/test_util_templates.py::MergeTest::test_merge PASSED                [ 83%]
[task 2026-06-02T20:32:19.633+00:00] test/test_util_templates.py::MergeTest::test_merge_by PASSED             [ 83%]
[task 2026-06-02T20:32:19.634+00:00] test/test_util_templates.py::MergeTest::test_merge_diff_types PASSED     [ 83%]
[task 2026-06-02T20:32:19.635+00:00] test/test_util_templates.py::MergeTest::test_merge_multiple_by PASSED    [ 83%]
[task 2026-06-02T20:32:19.636+00:00] test/test_util_templates.py::MergeTest::test_merge_to_dicts PASSED       [ 83%]
[task 2026-06-02T20:32:19.637+00:00] test/test_util_templates.py::MergeTest::test_merge_to_lists PASSED       [ 84%]
[task 2026-06-02T20:32:19.639+00:00] test/test_util_time.py::FromNowTest::test_current_json_time PASSED       [ 84%]
[task 2026-06-02T20:32:19.640+00:00] test/test_util_time.py::FromNowTest::test_invalid_str PASSED             [ 84%]
[task 2026-06-02T20:32:19.641+00:00] test/test_util_time.py::FromNowTest::test_json_from_now PASSED           [ 84%]
[task 2026-06-02T20:32:19.642+00:00] test/test_util_time.py::FromNowTest::test_json_from_now_tzinfo PASSED    [ 84%]
[task 2026-06-02T20:32:19.643+00:00] test/test_util_time.py::FromNowTest::test_json_from_now_utc_now PASSED   [ 84%]
[task 2026-06-02T20:32:19.644+00:00] test/test_util_time.py::FromNowTest::test_missing_unit PASSED            [ 85%]
[task 2026-06-02T20:32:19.644+00:00] test/test_util_time.py::FromNowTest::test_missing_unknown_unit PASSED    [ 85%]
[task 2026-06-02T20:32:19.646+00:00] test/test_util_time.py::FromNowTest::test_value_of PASSED                [ 85%]
[task 2026-06-02T20:32:19.647+00:00] test/test_util_treeherder.py::TestSymbols::test_add_suffix_no_group PASSED [ 85%]
[task 2026-06-02T20:32:19.647+00:00] test/test_util_treeherder.py::TestSymbols::test_add_suffix_with_group PASSED [ 85%]
[task 2026-06-02T20:32:19.648+00:00] test/test_util_treeherder.py::TestSymbols::test_join_no_group PASSED     [ 85%]
[task 2026-06-02T20:32:19.649+00:00] test/test_util_treeherder.py::TestSymbols::test_join_with_group PASSED   [ 85%]
[task 2026-06-02T20:32:19.650+00:00] test/test_util_treeherder.py::TestSymbols::test_split_no_group PASSED    [ 86%]
[task 2026-06-02T20:32:19.651+00:00] test/test_util_treeherder.py::TestSymbols::test_split_with_group PASSED  [ 86%]
[task 2026-06-02T20:32:19.657+00:00] test/test_util_vcs.py::test_get_repository[git] PASSED                   [ 86%]
[task 2026-06-02T20:32:19.662+00:00] test/test_util_vcs.py::test_get_repository[hg] PASSED                    [ 86%]
[task 2026-06-02T20:32:19.667+00:00] test/test_util_vcs.py::test_get_repository_type[git] PASSED              [ 86%]
[task 2026-06-02T20:32:19.672+00:00] test/test_util_vcs.py::test_get_repository_type[hg] PASSED               [ 86%]
[task 2026-06-02T20:32:19.674+00:00] test/test_util_vcs.py::test_get_repository_type_failure PASSED           [ 87%]
[task 2026-06-02T20:32:19.675+00:00] test/test_util_vcs.py::test_hgplain PASSED                               [ 87%]
[task 2026-06-02T20:32:19.697+00:00] test/test_util_vcs.py::test_get_commit_message[git-commit message in\u2026 pure utf8] PASSED [ 87%]
[task 2026-06-02T20:32:19.720+00:00] test/test_util_vcs.py::test_get_commit_message[git-commit message in... ascii] PASSED [ 87%]
[task 2026-06-02T20:32:20.290+00:00] test/test_util_vcs.py::test_get_commit_message[hg-commit message in\u2026 pure utf8] PASSED [ 87%]
[task 2026-06-02T20:32:20.862+00:00] test/test_util_vcs.py::test_get_commit_message[hg-commit message in... ascii] PASSED [ 87%]
[task 2026-06-02T20:32:20.874+00:00] test/test_util_vcs.py::test_calculate_head_rev[git] PASSED               [ 88%]
[task 2026-06-02T20:32:21.064+00:00] test/test_util_vcs.py::test_calculate_head_rev[hg] PASSED                [ 88%]
[task 2026-06-02T20:32:21.085+00:00] test/test_util_vcs.py::test_get_repo_path[git] PASSED                    [ 88%]
[task 2026-06-02T20:32:21.431+00:00] test/test_util_vcs.py::test_get_repo_path[hg] PASSED                     [ 88%]
[task 2026-06-02T20:32:21.472+00:00] test/test_util_vcs.py::test_update[git] PASSED                           [ 88%]
[task 2026-06-02T20:32:23.019+00:00] test/test_util_vcs.py::test_update[hg] PASSED                            [ 88%]
[task 2026-06-02T20:32:23.070+00:00] test/test_util_vcs.py::test_branch[git] PASSED                           [ 89%]
[task 2026-06-02T20:32:24.239+00:00] test/test_util_vcs.py::test_branch[hg] PASSED                            [ 89%]
[task 2026-06-02T20:32:24.254+00:00] test/test_util_vcs.py::test_remote_name_no_remote[git] PASSED            [ 89%]
[task 2026-06-02T20:32:24.423+00:00] test/test_util_vcs.py::test_remote_name_no_remote[hg] PASSED             [ 89%]
[task 2026-06-02T20:32:24.467+00:00] test/test_util_vcs.py::test_remote_name[git] PASSED                      [ 89%]
[task 2026-06-02T20:32:24.818+00:00] test/test_util_vcs.py::test_remote_name[hg] PASSED                       [ 89%]
[task 2026-06-02T20:32:24.878+00:00] test/test_util_vcs.py::test_all_remote_names[git] PASSED                 [ 89%]
[task 2026-06-02T20:32:25.571+00:00] test/test_util_vcs.py::test_all_remote_names[hg] PASSED                  [ 90%]
[task 2026-06-02T20:32:25.637+00:00] test/test_util_vcs.py::test_remote_name_many_remotes[git] PASSED         [ 90%]
[task 2026-06-02T20:32:26.169+00:00] test/test_util_vcs.py::test_remote_name_many_remotes[hg] PASSED          [ 90%]
[task 2026-06-02T20:32:26.231+00:00] test/test_util_vcs.py::test_remote_name_default_and_origin[git] PASSED   [ 90%]
[task 2026-06-02T20:32:26.764+00:00] test/test_util_vcs.py::test_remote_name_default_and_origin[hg] PASSED    [ 90%]
[task 2026-06-02T20:32:26.787+00:00] test/test_util_vcs.py::test_default_branch_guess[git] PASSED             [ 90%]
[task 2026-06-02T20:32:26.793+00:00] test/test_util_vcs.py::test_default_branch_guess[hg] PASSED              [ 91%]
[task 2026-06-02T20:32:26.836+00:00] test/test_util_vcs.py::test_default_branch_remote_query[git] PASSED      [ 91%]
[task 2026-06-02T20:32:27.022+00:00] test/test_util_vcs.py::test_default_branch_remote_query[hg] PASSED       [ 91%]
[task 2026-06-02T20:32:27.049+00:00] test/test_util_vcs.py::test_default_branch_cloned_metadata[git] PASSED   [ 91%]
[task 2026-06-02T20:32:27.054+00:00] test/test_util_vcs.py::test_default_branch_cloned_metadata[hg] PASSED    [ 91%]
[task 2026-06-02T20:32:27.095+00:00] test/test_util_vcs.py::test_get_tracked_files[git] PASSED                [ 91%]
[task 2026-06-02T20:32:28.814+00:00] test/test_util_vcs.py::test_get_tracked_files[hg] PASSED                 [ 92%]
[task 2026-06-02T20:32:28.836+00:00] test/test_util_vcs.py::test_get_changed_files_no_changes[git] PASSED     [ 92%]
[task 2026-06-02T20:32:29.560+00:00] test/test_util_vcs.py::test_get_changed_files_no_changes[hg] PASSED      [ 92%]
[task 2026-06-02T20:32:29.613+00:00] test/test_util_vcs.py::test_get_changed_files_one_modified_file[git] PASSED [ 92%]
[task 2026-06-02T20:32:30.923+00:00] test/test_util_vcs.py::test_get_changed_files_one_modified_file[hg] PASSED [ 92%]
[task 2026-06-02T20:32:30.963+00:00] test/test_util_vcs.py::test_get_changed_files_one_deleted_file[git] PASSED [ 92%]
[task 2026-06-02T20:32:32.284+00:00] test/test_util_vcs.py::test_get_changed_files_one_deleted_file[hg] PASSED [ 92%]
[task 2026-06-02T20:32:32.328+00:00] test/test_util_vcs.py::test_get_changed_files_one_added_file[git] PASSED [ 93%]
[task 2026-06-02T20:32:33.811+00:00] test/test_util_vcs.py::test_get_changed_files_one_added_file[hg] PASSED  [ 93%]
[task 2026-06-02T20:32:33.919+00:00] test/test_util_vcs.py::test_get_changed_files_two_revisions[git] PASSED  [ 93%]
[task 2026-06-02T20:32:37.335+00:00] test/test_util_vcs.py::test_get_changed_files_two_revisions[hg] PASSED   [ 93%]
[task 2026-06-02T20:32:37.458+00:00] test/test_util_vcs.py::test_workdir_outgoing[git] PASSED                 [ 93%]
[task 2026-06-02T20:32:42.352+00:00] test/test_util_vcs.py::test_workdir_outgoing[hg] PASSED                  [ 93%]
[task 2026-06-02T20:32:42.407+00:00] test/test_util_vcs.py::test_working_directory_clean[git] PASSED          [ 94%]
[task 2026-06-02T20:32:44.595+00:00] test/test_util_vcs.py::test_working_directory_clean[hg] PASSED           [ 94%]
[task 2026-06-02T20:32:44.673+00:00] test/test_util_vcs.py::test_find_latest_common_revision[git] PASSED      [ 94%]
[task 2026-06-02T20:32:46.952+00:00] test/test_util_vcs.py::test_find_latest_common_revision[hg] PASSED       [ 94%]
[task 2026-06-02T20:32:46.987+00:00] test/test_util_vcs.py::test_does_revision_exist_locally[git] PASSED      [ 94%]
[task 2026-06-02T20:32:48.341+00:00] test/test_util_vcs.py::test_does_revision_exist_locally[hg] PASSED       [ 94%]
[task 2026-06-02T20:32:48.466+00:00] test/test_util_vcs.py::test_get_changed_files_shallow_clone PASSED       [ 95%]
[task 2026-06-02T20:32:48.492+00:00] test/test_util_vcs.py::test_get_changed_files_with_null_base_revision[git] PASSED [ 95%]
[task 2026-06-02T20:32:49.248+00:00] test/test_util_vcs.py::test_get_changed_files_with_null_base_revision[hg] PASSED [ 95%]
[task 2026-06-02T20:32:49.290+00:00] test/test_util_vcs.py::test_get_changed_files_with_null_base_revision_shallow_clone PASSED [ 95%]
[task 2026-06-02T20:32:49.370+00:00] test/test_util_vcs.py::test_get_note_git PASSED                          [ 95%]
[task 2026-06-02T20:32:49.371+00:00] test/test_util_verify.py::test_verification_types[GraphVerification] PASSED [ 95%]
[task 2026-06-02T20:32:49.372+00:00] test/test_util_verify.py::test_verification_types[InitialVerification] PASSED [ 96%]
[task 2026-06-02T20:32:49.374+00:00] test/test_util_verify.py::test_verification_types[KindsVerification] PASSED [ 96%]
[task 2026-06-02T20:32:49.375+00:00] test/test_util_verify.py::test_verification_types[ParametersVerification] PASSED [ 96%]
[task 2026-06-02T20:32:49.376+00:00] test/test_util_verify.py::test_verification_types[GraphConfigVerification] PASSED [ 96%]
[task 2026-06-02T20:32:49.377+00:00] test/test_util_verify.py::test_verification[task_graph_symbol: valid] PASSED [ 96%]
[task 2026-06-02T20:32:49.379+00:00] test/test_util_verify.py::test_verification[task_graph_symbol: conflicting symbol] PASSED [ 96%]
[task 2026-06-02T20:32:49.380+00:00] test/test_util_verify.py::test_verification[task_graph_symbol: too many collections] PASSED [ 96%]
[task 2026-06-02T20:32:49.382+00:00] test/test_util_verify.py::test_verification[routes_notfication_filter: valid] PASSED [ 97%]
[task 2026-06-02T20:32:49.383+00:00] test/test_util_verify.py::test_verification[routes_notfication_filter: invalid] PASSED [ 97%]
[task 2026-06-02T20:32:49.384+00:00] test/test_util_verify.py::test_verification[routes_notfication_filter: deprecated] PASSED [ 97%]
[task 2026-06-02T20:32:49.386+00:00] test/test_util_verify.py::test_verification[verify_index_route: valid route] PASSED [ 97%]
[task 2026-06-02T20:32:49.387+00:00] test/test_util_verify.py::test_verification[verify_index_route: invalid slash in route] PASSED [ 97%]
[task 2026-06-02T20:32:49.388+00:00] test/test_util_verify.py::test_verification[verify_index_route: invalid plus in route] PASSED [ 97%]
[task 2026-06-02T20:32:49.390+00:00] test/test_util_verify.py::test_verification[verify_index_route: invalid space in route] PASSED [ 98%]
[task 2026-06-02T20:32:49.391+00:00] test/test_util_verify.py::test_verification[dependencies under limit] PASSED [ 98%]
[task 2026-06-02T20:32:49.392+00:00] test/test_util_verify.py::test_verification[dependencies at limit] PASSED [ 98%]
[task 2026-06-02T20:32:49.394+00:00] test/test_util_verify.py::test_verification[dependencies over limit] PASSED [ 98%]
[task 2026-06-02T20:32:49.395+00:00] test/test_util_verify.py::test_verification[using cache with wrong trust-domain] PASSED [ 98%]
[task 2026-06-02T20:32:49.397+00:00] test/test_util_verify.py::test_verification[using reserved cache] PASSED [ 98%]
[task 2026-06-02T20:32:49.398+00:00] test/test_util_verify.py::test_verification[using run-task without cache suffix] PASSED [ 99%]
[task 2026-06-02T20:32:49.399+00:00] test/test_util_verify.py::test_verification[using run-task-hg without cache suffix] PASSED [ 99%]
[task 2026-06-02T20:32:49.401+00:00] test/test_util_workertypes.py::test_get_worker_type[linux-1-Exception] PASSED [ 99%]
[task 2026-06-02T20:32:49.402+00:00] test/test_util_workertypes.py::test_get_worker_type[b-linux-3-test-domain-3/b-linux-gcp] PASSED [ 99%]
[task 2026-06-02T20:32:49.403+00:00] test/test_util_workertypes.py::test_get_worker_type[t-linux-1-test-domain-1/t-linux-gcp] PASSED [ 99%]
[task 2026-06-02T20:32:49.405+00:00] test/test_util_yaml.py::test_load PASSED                                 [ 99%]
[task 2026-06-02T20:32:49.579+00:00] test/test_util_yaml.py::test_key_order PASSED                            [100%]
[task 2026-06-02T20:32:49.579+00:00] 
[task 2026-06-02T20:32:49.579+00:00] =============================== warnings summary ===============================
[task 2026-06-02T20:32:49.579+00:00] ../../.task-cache/uv/builds-v0/.tmpE9Mbfo/lib/python3.9/site-packages/appdirs.py:101
[task 2026-06-02T20:32:49.579+00:00]   /builds/worker/.task-cache/uv/builds-v0/.tmpE9Mbfo/lib/python3.9/site-packages/appdirs.py:101: DeprecationWarning: invalid escape sequence \D
[task 2026-06-02T20:32:49.579+00:00]     """Return full path to the user-shared data dir for this application.
[task 2026-06-02T20:32:49.579+00:00] 
[task 2026-06-02T20:32:49.579+00:00] ../../.task-cache/uv/builds-v0/.tmpE9Mbfo/lib/python3.9/site-packages/appdirs.py:207
[task 2026-06-02T20:32:49.579+00:00]   /builds/worker/.task-cache/uv/builds-v0/.tmpE9Mbfo/lib/python3.9/site-packages/appdirs.py:207: DeprecationWarning: invalid escape sequence \P
[task 2026-06-02T20:32:49.579+00:00]     """Return full path to the user-shared data dir for this application.
[task 2026-06-02T20:32:49.579+00:00] 
[task 2026-06-02T20:32:49.579+00:00] test/test_config.py::test_vcs_root_fallback
[task 2026-06-02T20:32:49.579+00:00]   /builds/worker/checkouts/vcs/test/test_config.py:60: PytestMockWarning: Mocks returned by pytest-mock do not need to be used as context managers. The mocker fixture automatically undoes mocking at the end of a test. This warning can be ignored if it was triggered by mocking a context manager. https://pytest-mock.readthedocs.io/en/latest/usage.html#usage-as-context-manager
[task 2026-06-02T20:32:49.579+00:00]     with mocker.patch("taskgraph.config.get_repository", side_effect=RuntimeError):
[task 2026-06-02T20:32:49.579+00:00] 
[task 2026-06-02T20:32:49.579+00:00] test/test_config.py::test_vcs_root_fallback
[task 2026-06-02T20:32:49.579+00:00]   /builds/worker/checkouts/vcs/test/test_config.py:63: PytestMockWarning: Mocks returned by pytest-mock do not need to be used as context managers. The mocker fixture automatically undoes mocking at the end of a test. This warning can be ignored if it was triggered by mocking a context manager. https://pytest-mock.readthedocs.io/en/latest/usage.html#usage-as-context-manager
[task 2026-06-02T20:32:49.579+00:00]     with mocker.patch("taskgraph.config.get_repository", side_effect=RuntimeError):
[task 2026-06-02T20:32:49.579+00:00] 
[task 2026-06-02T20:32:49.579+00:00] -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html
[task 2026-06-02T20:32:49.579+00:00] ============ 619 passed, 7 skipped, 2 xfailed, 4 warnings in 45.74s ============
[taskcluster 2026-06-02T20:32:50.027Z]                        Exit Code: 0
[taskcluster 2026-06-02T20:32:50.027Z]                        User Time: 33.375ms
[taskcluster 2026-06-02T20:32:50.027Z]                      Kernel Time: 31.289ms
[taskcluster 2026-06-02T20:32:50.027Z]                        Wall Time: 56.32787199s
[taskcluster 2026-06-02T20:32:50.027Z]  Average Available System Memory: 14.69 GiB
[taskcluster 2026-06-02T20:32:50.027Z]       Average System Memory Used: 941.39 MiB
[taskcluster 2026-06-02T20:32:50.027Z]          Peak System Memory Used: 998.79 MiB
[taskcluster 2026-06-02T20:32:50.027Z]              Total System Memory: 15.61 GiB
[taskcluster 2026-06-02T20:32:50.027Z]                           Result: SUCCEEDED
[taskcluster 2026-06-02T20:32:50.027Z] === Task Finished ===
[taskcluster 2026-06-02T20:32:50.027Z] Task Duration: 56.328375002s
[taskcluster 2026-06-02T20:32:50.116Z] [mounts] Preserving cache: Moving "/home/task_178043231135403/cache0" to "/home/generic-worker/caches/L4v8PNAMQFGPBBVUPDY20g"
[taskcluster 2026-06-02T20:32:50.116Z] [mounts] Preserving cache: Moving "/home/task_178043231135403/cache1" to "/home/generic-worker/caches/WT2ROuy2Q96-3BTPbmYePQ"