Source: gittuf
Version: 0.9.0-5
Severity: important
Justification: FTBFS
Tags: trixie sid ftbfs
User: lu...@debian.org
Usertags: ftbfs-20250428 ftbfs-trixie ftbfs-randomly

Hi,

Your package fails to build randomly on amd64: In the exact same
environment, sometimes it builds fine, and sometimes it fails.

Relevant part (hopefully):
> make[1]: Entering directory '/build/reproducible-path/gittuf-0.9.0'
> mkdir -pv /build/reproducible-path/gittuf-0.9.0/debian/gotmp
> mkdir: created directory '/build/reproducible-path/gittuf-0.9.0/debian/gotmp'
> env GOTMPDIR=/build/reproducible-path/gittuf-0.9.0/debian/gotmp 
> TMPDIR=/build/reproducible-path/gittuf-0.9.0/debian/gotmp \
>       dh_auto_test
>       cd _build && go test -vet=off -v -p 8 github.com/gittuf/gittuf 
> github.com/gittuf/gittuf/experimental/gittuf 
> github.com/gittuf/gittuf/experimental/gittuf/options/github 
> github.com/gittuf/gittuf/experimental/gittuf/options/root 
> github.com/gittuf/gittuf/experimental/gittuf/options/rsl 
> github.com/gittuf/gittuf/experimental/gittuf/options/verify 
> github.com/gittuf/gittuf/experimental/gittuf/options/verifymergeable 
> github.com/gittuf/gittuf/internal/attestations 
> github.com/gittuf/gittuf/internal/attestations/authorizations 
> github.com/gittuf/gittuf/internal/attestations/authorizations/v01 
> github.com/gittuf/gittuf/internal/attestations/authorizations/v02 
> github.com/gittuf/gittuf/internal/attestations/common 
> github.com/gittuf/gittuf/internal/attestations/github 
> github.com/gittuf/gittuf/internal/attestations/github/v01 
> github.com/gittuf/gittuf/internal/cache 
> github.com/gittuf/gittuf/internal/cmd/addhooks 
> github.com/gittuf/gittuf/internal/cmd/attest 
> github.com/gittuf/gittuf/internal/cmd/attest/authorize 
> github.com/gittuf/gittuf/internal/cmd/clone 
> github.com/gittuf/gittuf/internal/cmd/common 
> github.com/gittuf/gittuf/internal/cmd/dev 
> github.com/gittuf/gittuf/internal/cmd/dev/addgithubapproval 
> github.com/gittuf/gittuf/internal/cmd/dev/attestgithub 
> github.com/gittuf/gittuf/internal/cmd/dev/authorize 
> github.com/gittuf/gittuf/internal/cmd/dev/dismissgithubapproval 
> github.com/gittuf/gittuf/internal/cmd/dev/populatecache 
> github.com/gittuf/gittuf/internal/cmd/dev/rslrecordat 
> github.com/gittuf/gittuf/internal/cmd/policy 
> github.com/gittuf/gittuf/internal/cmd/policy/addkey 
> github.com/gittuf/gittuf/internal/cmd/policy/addperson 
> github.com/gittuf/gittuf/internal/cmd/policy/addrule 
> github.com/gittuf/gittuf/internal/cmd/policy/init 
> github.com/gittuf/gittuf/internal/cmd/policy/listprincipals 
> github.com/gittuf/gittuf/internal/cmd/policy/listrules 
> github.com/gittuf/gittuf/internal/cmd/policy/persistent 
> github.com/gittuf/gittuf/internal/cmd/policy/removekey 
> github.com/gittuf/gittuf/internal/cmd/policy/removeperson 
> github.com/gittuf/gittuf/internal/cmd/policy/removerule 
> github.com/gittuf/gittuf/internal/cmd/policy/reorderrules 
> github.com/gittuf/gittuf/internal/cmd/policy/sign 
> github.com/gittuf/gittuf/internal/cmd/policy/tui 
> github.com/gittuf/gittuf/internal/cmd/policy/updaterule 
> github.com/gittuf/gittuf/internal/cmd/profile 
> github.com/gittuf/gittuf/internal/cmd/root 
> github.com/gittuf/gittuf/internal/cmd/rsl 
> github.com/gittuf/gittuf/internal/cmd/rsl/annotate 
> github.com/gittuf/gittuf/internal/cmd/rsl/log 
> github.com/gittuf/gittuf/internal/cmd/rsl/propagate 
> github.com/gittuf/gittuf/internal/cmd/rsl/record 
> github.com/gittuf/gittuf/internal/cmd/rsl/remote 
> github.com/gittuf/gittuf/internal/cmd/rsl/remote/check 
> github.com/gittuf/gittuf/internal/cmd/rsl/remote/pull 
> github.com/gittuf/gittuf/internal/cmd/rsl/remote/push 
> github.com/gittuf/gittuf/internal/cmd/rsl/remote/reconcile 
> github.com/gittuf/gittuf/internal/cmd/rsl/skiprewritten 
> github.com/gittuf/gittuf/internal/cmd/trust 
> github.com/gittuf/gittuf/internal/cmd/trust/addgithubapp 
> github.com/gittuf/gittuf/internal/cmd/trust/addglobalrule 
> github.com/gittuf/gittuf/internal/cmd/trust/addpolicykey 
> github.com/gittuf/gittuf/internal/cmd/trust/addpropagationdirective 
> github.com/gittuf/gittuf/internal/cmd/trust/addrootkey 
> github.com/gittuf/gittuf/internal/cmd/trust/disablegithubappapprovals 
> github.com/gittuf/gittuf/internal/cmd/trust/enablegithubappapprovals 
> github.com/gittuf/gittuf/internal/cmd/trust/init 
> github.com/gittuf/gittuf/internal/cmd/trust/persistent 
> github.com/gittuf/gittuf/internal/cmd/trust/removegithubapp 
> github.com/gittuf/gittuf/internal/cmd/trust/removeglobalrule 
> github.com/gittuf/gittuf/internal/cmd/trust/removepolicykey 
> github.com/gittuf/gittuf/internal/cmd/trust/removepropagationdirective 
> github.com/gittuf/gittuf/internal/cmd/trust/removerootkey 
> github.com/gittuf/gittuf/internal/cmd/trust/setrepositorylocation 
> github.com/gittuf/gittuf/internal/cmd/trust/sign 
> github.com/gittuf/gittuf/internal/cmd/trust/updatepolicythreshold 
> github.com/gittuf/gittuf/internal/cmd/trust/updaterootthreshold 
> github.com/gittuf/gittuf/internal/cmd/trustpolicy/apply 
> github.com/gittuf/gittuf/internal/cmd/trustpolicy/discard 
> github.com/gittuf/gittuf/internal/cmd/trustpolicy/remote 
> github.com/gittuf/gittuf/internal/cmd/trustpolicy/remote/pull 
> github.com/gittuf/gittuf/internal/cmd/trustpolicy/remote/push 
> github.com/gittuf/gittuf/internal/cmd/verifymergeable 
> github.com/gittuf/gittuf/internal/cmd/verifyref 
> github.com/gittuf/gittuf/internal/cmd/version 
> github.com/gittuf/gittuf/internal/common 
> github.com/gittuf/gittuf/internal/common/set 
> github.com/gittuf/gittuf/internal/dev 
> github.com/gittuf/gittuf/internal/display 
> github.com/gittuf/gittuf/internal/git-remote-gittuf 
> github.com/gittuf/gittuf/internal/gitinterface 
> github.com/gittuf/gittuf/internal/policy 
> github.com/gittuf/gittuf/internal/rsl 
> github.com/gittuf/gittuf/internal/signerverifier/common 
> github.com/gittuf/gittuf/internal/signerverifier/dsse 
> github.com/gittuf/gittuf/internal/signerverifier/gpg 
> github.com/gittuf/gittuf/internal/signerverifier/sigstore 
> github.com/gittuf/gittuf/internal/signerverifier/sigstore/options/signer 
> github.com/gittuf/gittuf/internal/signerverifier/sigstore/options/verifier 
> github.com/gittuf/gittuf/internal/signerverifier/ssh 
> github.com/gittuf/gittuf/internal/testartifacts 
> github.com/gittuf/gittuf/internal/third_party/go-securesystemslib/dsse 
> github.com/gittuf/gittuf/internal/tuf 
> github.com/gittuf/gittuf/internal/tuf/migrations 
> github.com/gittuf/gittuf/internal/tuf/v01 
> github.com/gittuf/gittuf/internal/tuf/v02 
> github.com/gittuf/gittuf/internal/version
> ?     github.com/gittuf/gittuf        [no test files]
> === RUN   TestAddAndRemoveReferenceAuthorization
> === RUN   TestAddAndRemoveReferenceAuthorization/for_commit
> === RUN   TestAddAndRemoveReferenceAuthorization/for_tag
> --- PASS: TestAddAndRemoveReferenceAuthorization (0.64s)
>     --- PASS: TestAddAndRemoveReferenceAuthorization/for_commit (0.44s)
>     --- PASS: TestAddAndRemoveReferenceAuthorization/for_tag (0.20s)
> === RUN   TestGetGitHubPullRequestApprovalPredicateFromEnvelope
> --- PASS: TestGetGitHubPullRequestApprovalPredicateFromEnvelope (0.00s)
> === RUN   TestIndexPathToComponents
> --- PASS: TestIndexPathToComponents (0.00s)
> === RUN   TestPopulateCache
> === RUN   TestPopulateCache/successful_cache_population
> === RUN   TestPopulateCache/successful_repeated_cache_population
> --- PASS: TestPopulateCache (1.25s)
>     --- PASS: TestPopulateCache/successful_cache_population (0.64s)
>     --- PASS: TestPopulateCache/successful_repeated_cache_population (0.61s)
> === RUN   TestUpdatePrePushHook
> === RUN   TestUpdatePrePushHook/write_hook
> === RUN   TestUpdatePrePushHook/hook_exists
> === RUN   TestUpdatePrePushHook/force_overwrite_hook
> --- PASS: TestUpdatePrePushHook (0.04s)
>     --- PASS: TestUpdatePrePushHook/write_hook (0.01s)
>     --- PASS: TestUpdatePrePushHook/hook_exists (0.01s)
>     --- PASS: TestUpdatePrePushHook/force_overwrite_hook (0.01s)
> === RUN   TestLoadSigner
> --- PASS: TestLoadSigner (0.04s)
> === RUN   TestPushPolicy
> === RUN   TestPushPolicy/successful_push
> === RUN   TestPushPolicy/divergent_policies,_unsuccessful_push
> --- PASS: TestPushPolicy (1.28s)
>     --- PASS: TestPushPolicy/successful_push (0.68s)
>     --- PASS: TestPushPolicy/divergent_policies,_unsuccessful_push (0.60s)
> === RUN   TestPullPolicy
> === RUN   TestPullPolicy/successful_pull
> === RUN   TestPullPolicy/divergent_policies,_unsuccessful_pull
> --- PASS: TestPullPolicy (1.66s)
>     --- PASS: TestPullPolicy/successful_pull (0.67s)
>     --- PASS: TestPullPolicy/divergent_policies,_unsuccessful_pull (0.99s)
> === RUN   TestDiscardPolicy
> === RUN   TestDiscardPolicy/successful_discard_with_existing_policy
> === RUN   TestDiscardPolicy/discard_with_no_policy_references
> === RUN   TestDiscardPolicy/discard_after_policy_changes
> --- PASS: TestDiscardPolicy (1.48s)
>     --- PASS: TestDiscardPolicy/successful_discard_with_existing_policy 
> (0.71s)
>     --- PASS: TestDiscardPolicy/discard_with_no_policy_references (0.02s)
>     --- PASS: TestDiscardPolicy/discard_after_policy_changes (0.74s)
> === RUN   TestLoadRepository
> === RUN   TestLoadRepository/load_with_no_repo,_unsuccessful
> === RUN   TestLoadRepository/successful_load
> --- PASS: TestLoadRepository (0.04s)
>     --- PASS: TestLoadRepository/load_with_no_repo,_unsuccessful (0.00s)
>     --- PASS: TestLoadRepository/successful_load (0.03s)
> === RUN   TestUnauthorizedKey
> === RUN   TestUnauthorizedKey/test_add_targets_key
> === RUN   TestUnauthorizedKey/test_remove_targets_key
> --- PASS: TestUnauthorizedKey (0.15s)
>     --- PASS: TestUnauthorizedKey/test_add_targets_key (0.04s)
>     --- PASS: TestUnauthorizedKey/test_remove_targets_key (0.03s)
> === RUN   TestGetGitRepository
> --- PASS: TestGetGitRepository (0.02s)
> === RUN   TestInitializeRoot
> === RUN   TestInitializeRoot/no_repository_location
> === RUN   TestInitializeRoot/with_repository_location
> --- PASS: TestInitializeRoot (0.40s)
>     --- PASS: TestInitializeRoot/no_repository_location (0.18s)
>     --- PASS: TestInitializeRoot/with_repository_location (0.21s)
> === RUN   TestSetRepositoryLocation
> --- PASS: TestSetRepositoryLocation (0.26s)
> === RUN   TestAddRootKey
> --- PASS: TestAddRootKey (0.31s)
> === RUN   TestRemoveRootKey
> --- PASS: TestRemoveRootKey (0.61s)
> === RUN   TestAddTopLevelTargetsKey
> --- PASS: TestAddTopLevelTargetsKey (0.25s)
> === RUN   TestRemoveTopLevelTargetsKey
> --- PASS: TestRemoveTopLevelTargetsKey (0.44s)
> === RUN   TestAddGitHubApp
> --- PASS: TestAddGitHubApp (0.20s)
> === RUN   TestRemoveGitHubApp
> --- PASS: TestRemoveGitHubApp (0.50s)
> === RUN   TestTrustGitHubApp
> === RUN   TestTrustGitHubApp/GitHub_app_role_not_defined
> === RUN   TestTrustGitHubApp/GitHub_app_role_defined
> --- PASS: TestTrustGitHubApp (0.68s)
>     --- PASS: TestTrustGitHubApp/GitHub_app_role_not_defined (0.27s)
>     --- PASS: TestTrustGitHubApp/GitHub_app_role_defined (0.40s)
> === RUN   TestUntrustGitHubApp
> --- PASS: TestUntrustGitHubApp (0.61s)
> === RUN   TestUpdateRootThreshold
> --- PASS: TestUpdateRootThreshold (0.41s)
> === RUN   TestUpdateTopLevelTargetsThreshold
> --- PASS: TestUpdateTopLevelTargetsThreshold (0.50s)
> === RUN   TestSignRoot
> --- PASS: TestSignRoot (0.32s)
> === RUN   TestAddGlobalRuleThreshold
> --- PASS: TestAddGlobalRuleThreshold (0.31s)
> === RUN   TestAddGlobalRuleBlockForcePushes
> --- PASS: TestAddGlobalRuleBlockForcePushes (0.36s)
> === RUN   TestRemoveGlobalRule
> === RUN   TestRemoveGlobalRule/remove_threshold_global_rule
> === RUN   TestRemoveGlobalRule/remove_force_push_global_rule
> === RUN   TestRemoveGlobalRule/remove_global_rule_when_none_exist
> --- PASS: TestRemoveGlobalRule (0.95s)
>     --- PASS: TestRemoveGlobalRule/remove_threshold_global_rule (0.45s)
>     --- PASS: TestRemoveGlobalRule/remove_force_push_global_rule (0.36s)
>     --- PASS: TestRemoveGlobalRule/remove_global_rule_when_none_exist (0.15s)
> === RUN   TestAddPropagationDirective
> === RUN   TestAddPropagationDirective/with_tuf_v01_metadata
> === RUN   TestAddPropagationDirective/with_tuf_v02_metadata
> --- PASS: TestAddPropagationDirective (0.42s)
>     --- PASS: TestAddPropagationDirective/with_tuf_v01_metadata (0.20s)
>     --- PASS: TestAddPropagationDirective/with_tuf_v02_metadata (0.21s)
> === RUN   TestRemovePropagationDirective
> === RUN   TestRemovePropagationDirective/with_tuf_v01_metadata
> === RUN   TestRemovePropagationDirective/with_tuf_v02_metadata
> --- PASS: TestRemovePropagationDirective (0.77s)
>     --- PASS: TestRemovePropagationDirective/with_tuf_v01_metadata (0.36s)
>     --- PASS: TestRemovePropagationDirective/with_tuf_v02_metadata (0.41s)
> === RUN   TestRecordRSLEntryForReference
> --- PASS: TestRecordRSLEntryForReference (0.12s)
> === RUN   TestRecordRSLEntryForReferenceAtTarget
> === RUN   TestRecordRSLEntryForReferenceAtTarget/using_GPG_key
> === RUN   TestRecordRSLEntryForReferenceAtTarget/using_RSA_SSH_key
> === RUN   TestRecordRSLEntryForReferenceAtTarget/using_ECDSA_ssh_key
> --- PASS: TestRecordRSLEntryForReferenceAtTarget (0.47s)
>     --- PASS: TestRecordRSLEntryForReferenceAtTarget/using_GPG_key (0.19s)
>     --- PASS: TestRecordRSLEntryForReferenceAtTarget/using_RSA_SSH_key (0.15s)
>     --- PASS: TestRecordRSLEntryForReferenceAtTarget/using_ECDSA_ssh_key 
> (0.13s)
> === RUN   TestRecordRSLAnnotation
> --- PASS: TestRecordRSLAnnotation (0.07s)
> === RUN   TestReconcileLocalRSLWithRemote
> === RUN   TestReconcileLocalRSLWithRemote/remote_has_updates_for_local
> === RUN   TestReconcileLocalRSLWithRemote/remote_has_no_updates_for_local
> === RUN   TestReconcileLocalRSLWithRemote/local_is_ahead_of_remote
> === RUN   TestReconcileLocalRSLWithRemote/remote_and_local_have_diverged
> === RUN   
> TestReconcileLocalRSLWithRemote/remote_and_local_have_diverged_but_modify_same_ref
> --- PASS: TestReconcileLocalRSLWithRemote (0.77s)
>     --- PASS: TestReconcileLocalRSLWithRemote/remote_has_updates_for_local 
> (0.13s)
>     --- PASS: TestReconcileLocalRSLWithRemote/remote_has_no_updates_for_local 
> (0.08s)
>     --- PASS: TestReconcileLocalRSLWithRemote/local_is_ahead_of_remote (0.10s)
>     --- PASS: TestReconcileLocalRSLWithRemote/remote_and_local_have_diverged 
> (0.24s)
>     --- PASS: 
> TestReconcileLocalRSLWithRemote/remote_and_local_have_diverged_but_modify_same_ref
>  (0.22s)
> === RUN   TestCheckRemoteRSLForUpdates
> === RUN   TestCheckRemoteRSLForUpdates/remote_has_updates_for_local
> === RUN   TestCheckRemoteRSLForUpdates/remote_has_no_updates_for_local
> === RUN   TestCheckRemoteRSLForUpdates/local_is_ahead_of_remote
> === RUN   TestCheckRemoteRSLForUpdates/remote_and_local_have_diverged
> --- PASS: TestCheckRemoteRSLForUpdates (0.49s)
>     --- PASS: TestCheckRemoteRSLForUpdates/remote_has_updates_for_local 
> (0.12s)
>     --- PASS: TestCheckRemoteRSLForUpdates/remote_has_no_updates_for_local 
> (0.08s)
>     --- PASS: TestCheckRemoteRSLForUpdates/local_is_ahead_of_remote (0.11s)
>     --- PASS: TestCheckRemoteRSLForUpdates/remote_and_local_have_diverged 
> (0.17s)
> === RUN   TestPushRSL
> === RUN   TestPushRSL/successful_push
> === RUN   TestPushRSL/divergent_RSLs,_unsuccessful_push
> --- PASS: TestPushRSL (1.29s)
>     --- PASS: TestPushRSL/successful_push (0.65s)
>     --- PASS: TestPushRSL/divergent_RSLs,_unsuccessful_push (0.64s)
> === RUN   TestPullRSL
> === RUN   TestPullRSL/successful_pull
> === RUN   TestPullRSL/divergent_RSLs,_unsuccessful_pull
> --- PASS: TestPullRSL (1.09s)
>     --- PASS: TestPullRSL/successful_pull (0.55s)
>     --- PASS: TestPullRSL/divergent_RSLs,_unsuccessful_pull (0.54s)
> === RUN   TestPropagateChangesFromUpstreamRepositories
> === RUN   TestPropagateChangesFromUpstreamRepositories/single_upstream_repo
> === RUN   
> TestPropagateChangesFromUpstreamRepositories/single_upstream_repo,_multiple_upstream_refs_into_same_downstream_ref
> === RUN   
> TestPropagateChangesFromUpstreamRepositories/single_upstream_repo,_multiple_upstream_refs_into_different_downstream_refs
> === RUN   TestPropagateChangesFromUpstreamRepositories/multiple_upstream_repos
> --- PASS: TestPropagateChangesFromUpstreamRepositories (4.81s)
>     --- PASS: 
> TestPropagateChangesFromUpstreamRepositories/single_upstream_repo (1.03s)
>     --- PASS: 
> TestPropagateChangesFromUpstreamRepositories/single_upstream_repo,_multiple_upstream_refs_into_same_downstream_ref
>  (1.23s)
>     --- PASS: 
> TestPropagateChangesFromUpstreamRepositories/single_upstream_repo,_multiple_upstream_refs_into_different_downstream_refs
>  (1.21s)
>     --- PASS: 
> TestPropagateChangesFromUpstreamRepositories/multiple_upstream_repos (1.35s)
> === RUN   TestClone
> === RUN   TestClone/successful_clone_without_specifying_dir,_bare
> === RUN   TestClone/successful_clone_with_dir,_bare
> === RUN   
> TestClone/successful_clone_without_specifying_dir,_with_non-HEAD_initial_branch,_bare
> === RUN   
> TestClone/unsuccessful_clone_when_unspecified_dir_already_exists,_bare
> === RUN   TestClone/unsuccessful_clone_when_specified_dir_already_exists,_bare
> === RUN   
> TestClone/successful_clone_without_specifying_dir,_with_trailing_slashes_in_repository_path,_bare
> === RUN   
> TestClone/successful_clone_without_specifying_dir,_with_multiple_expected_root_keys,_bare
> === RUN   
> TestClone/unsuccessful_clone_without_specifying_dir,_with_expected_root_keys_not_equaling_root_keys,_bare
> === RUN   TestClone/successful_clone_without_specifying_dir,_not_bare
> === RUN   TestClone/successful_clone_with_dir,_not_bare
> === RUN   
> TestClone/successful_clone_without_specifying_dir,_with_non-HEAD_initial_branch,_not_bare
> === RUN   
> TestClone/unsuccessful_clone_when_unspecified_dir_already_exists,_not_bare
> === RUN   
> TestClone/unsuccessful_clone_when_specified_dir_already_exists,_not_bare
> === RUN   
> TestClone/successful_clone_without_specifying_dir,_with_trailing_slashes_in_repository_path,_not_bare
> === RUN   
> TestClone/successful_clone_without_specifying_dir,_with_multiple_expected_root_keys,_not_bare
> === RUN   
> TestClone/unsuccessful_clone_without_specifying_dir,_with_expected_root_keys_not_equaling_root_keys,_not_bare
> --- PASS: TestClone (1.97s)
>     --- PASS: TestClone/successful_clone_without_specifying_dir,_bare (0.08s)
>     --- PASS: TestClone/successful_clone_with_dir,_bare (0.08s)
>     --- PASS: 
> TestClone/successful_clone_without_specifying_dir,_with_non-HEAD_initial_branch,_bare
>  (0.08s)
>     --- PASS: 
> TestClone/unsuccessful_clone_when_unspecified_dir_already_exists,_bare (0.07s)
>     --- PASS: 
> TestClone/unsuccessful_clone_when_specified_dir_already_exists,_bare (0.00s)
>     --- PASS: 
> TestClone/successful_clone_without_specifying_dir,_with_trailing_slashes_in_repository_path,_bare
>  (0.12s)
>     --- PASS: 
> TestClone/successful_clone_without_specifying_dir,_with_multiple_expected_root_keys,_bare
>  (0.14s)
>     --- PASS: 
> TestClone/unsuccessful_clone_without_specifying_dir,_with_expected_root_keys_not_equaling_root_keys,_bare
>  (0.07s)
>     --- PASS: TestClone/successful_clone_without_specifying_dir,_not_bare 
> (0.09s)
>     --- PASS: TestClone/successful_clone_with_dir,_not_bare (0.11s)
>     --- PASS: 
> TestClone/successful_clone_without_specifying_dir,_with_non-HEAD_initial_branch,_not_bare
>  (0.15s)
>     --- PASS: 
> TestClone/unsuccessful_clone_when_unspecified_dir_already_exists,_not_bare 
> (0.10s)
>     --- PASS: 
> TestClone/unsuccessful_clone_when_specified_dir_already_exists,_not_bare 
> (0.00s)
>     --- PASS: 
> TestClone/successful_clone_without_specifying_dir,_with_trailing_slashes_in_repository_path,_not_bare
>  (0.14s)
>     --- PASS: 
> TestClone/successful_clone_without_specifying_dir,_with_multiple_expected_root_keys,_not_bare
>  (0.15s)
>     --- PASS: 
> TestClone/unsuccessful_clone_without_specifying_dir,_with_expected_root_keys_not_equaling_root_keys,_not_bare
>  (0.09s)
> === RUN   TestInitializeTargets
> === RUN   TestInitializeTargets/successful_initialization
> === RUN   TestInitializeTargets/invalid_role_name
> --- PASS: TestInitializeTargets (0.70s)
>     --- PASS: TestInitializeTargets/successful_initialization (0.50s)
>     --- PASS: TestInitializeTargets/invalid_role_name (0.19s)
> === RUN   TestAddDelegation
> === RUN   TestAddDelegation/valid_rule_/_delegation_name
> === RUN   TestAddDelegation/invalid_rule_name
> --- PASS: TestAddDelegation (1.36s)
>     --- PASS: TestAddDelegation/valid_rule_/_delegation_name (0.81s)
>     --- PASS: TestAddDelegation/invalid_rule_name (0.55s)
> === RUN   TestUpdateDelegation
> --- PASS: TestUpdateDelegation (0.83s)
> === RUN   TestReorderDelegations
> --- PASS: TestReorderDelegations (1.17s)
> === RUN   TestRemoveDelegation
> --- PASS: TestRemoveDelegation (0.87s)
> === RUN   TestAddPrincipalToTargets
> --- PASS: TestAddPrincipalToTargets (0.71s)
> === RUN   TestRemovePrincicpalFromTargets
> --- PASS: TestRemovePrincicpalFromTargets (0.83s)
> === RUN   TestSignTargets
> --- PASS: TestSignTargets (0.82s)
> === RUN   TestVerifyRef
> --- PASS: TestVerifyRef (1.17s)
> === RUN   TestVerifyRefFromEntry
> --- PASS: TestVerifyRefFromEntry (1.40s)
> PASS
> ok    github.com/gittuf/gittuf/experimental/gittuf    35.851s
> ?     github.com/gittuf/gittuf/experimental/gittuf/options/github     [no 
> test files]
> ?     github.com/gittuf/gittuf/experimental/gittuf/options/root       [no 
> test files]
> ?     github.com/gittuf/gittuf/experimental/gittuf/options/rsl        [no 
> test files]
> ?     github.com/gittuf/gittuf/experimental/gittuf/options/verify     [no 
> test files]
> ?     github.com/gittuf/gittuf/experimental/gittuf/options/verifymergeable    
> [no test files]
> === RUN   TestLoadCurrentAttestations
> === RUN   TestLoadCurrentAttestations/no_RSL_entry
> === RUN   TestLoadCurrentAttestations/with_RSL_entry_and_with_an_attestation
> --- PASS: TestLoadCurrentAttestations (0.09s)
>     --- PASS: TestLoadCurrentAttestations/no_RSL_entry (0.01s)
>     --- PASS: 
> TestLoadCurrentAttestations/with_RSL_entry_and_with_an_attestation (0.07s)
> === RUN   TestLoadAttestationsForEntry
> === RUN   TestLoadAttestationsForEntry/with_RSL_entry_and_no_an_attestation
> === RUN   TestLoadAttestationsForEntry/with_RSL_entry_and_with_an_attestation
> --- PASS: TestLoadAttestationsForEntry (0.10s)
>     --- PASS: 
> TestLoadAttestationsForEntry/with_RSL_entry_and_no_an_attestation (0.04s)
>     --- PASS: 
> TestLoadAttestationsForEntry/with_RSL_entry_and_with_an_attestation (0.05s)
> === RUN   TestAttestationsCommit
> --- PASS: TestAttestationsCommit (0.08s)
> === RUN   TestSetReferenceAuthorization
> === RUN   TestSetReferenceAuthorization/for_commit
> === RUN   TestSetReferenceAuthorization/for_tag
> --- PASS: TestSetReferenceAuthorization (0.04s)
>     --- PASS: TestSetReferenceAuthorization/for_commit (0.02s)
>     --- PASS: TestSetReferenceAuthorization/for_tag (0.02s)
> === RUN   TestRemoveReferenceAuthorization
> === RUN   TestRemoveReferenceAuthorization/for_commit
> === RUN   TestRemoveReferenceAuthorization/for_tag
> --- PASS: TestRemoveReferenceAuthorization (0.04s)
>     --- PASS: TestRemoveReferenceAuthorization/for_commit (0.02s)
>     --- PASS: TestRemoveReferenceAuthorization/for_tag (0.02s)
> === RUN   TestGetReferenceAuthorizationFor
> === RUN   TestGetReferenceAuthorizationFor/for_commit
> === RUN   TestGetReferenceAuthorizationFor/for_tag
> --- PASS: TestGetReferenceAuthorizationFor (0.05s)
>     --- PASS: TestGetReferenceAuthorizationFor/for_commit (0.03s)
>     --- PASS: TestGetReferenceAuthorizationFor/for_tag (0.02s)
> === RUN   TestSetGitHubPullRequestApprovalAttestation
> --- PASS: TestSetGitHubPullRequestApprovalAttestation (0.02s)
> === RUN   TestGetGitHubPullRequestApprovalAttestation
> --- PASS: TestGetGitHubPullRequestApprovalAttestation (0.03s)
> PASS
> ok    github.com/gittuf/gittuf/internal/attestations  0.463s
> ?     github.com/gittuf/gittuf/internal/attestations/authorizations   [no 
> test files]
> === RUN   TestNewReferenceAuthorization
> --- PASS: TestNewReferenceAuthorization (0.00s)
> === RUN   TestValidate
> --- PASS: TestValidate (0.00s)
> PASS
> ok    github.com/gittuf/gittuf/internal/attestations/authorizations/v01       
> 0.023s
> === RUN   TestNewReferenceAuthorization
> === RUN   TestNewReferenceAuthorization/for_commit
> === RUN   TestNewReferenceAuthorization/for_tag
> --- PASS: TestNewReferenceAuthorization (0.00s)
>     --- PASS: TestNewReferenceAuthorization/for_commit (0.00s)
>     --- PASS: TestNewReferenceAuthorization/for_tag (0.00s)
> === RUN   TestValidate
> === RUN   TestValidate/for_commit
> === RUN   TestValidate/for_tag
> === RUN   TestValidate/invalid_subject
> === RUN   TestValidate/mismatch_ref_(non_tag)_and_subject_digest_key_(commit)
> --- PASS: TestValidate (0.00s)
>     --- PASS: TestValidate/for_commit (0.00s)
>     --- PASS: TestValidate/for_tag (0.00s)
>     --- PASS: TestValidate/invalid_subject (0.00s)
>     --- PASS: 
> TestValidate/mismatch_ref_(non_tag)_and_subject_digest_key_(commit) (0.00s)
> PASS
> ok    github.com/gittuf/gittuf/internal/attestations/authorizations/v02       
> 0.030s
> ?     github.com/gittuf/gittuf/internal/attestations/common   [no test files]
> ?     github.com/gittuf/gittuf/internal/attestations/github   [no test files]
> === RUN   TestNewGitHubPullRequestApprovalAttestation
> --- PASS: TestNewGitHubPullRequestApprovalAttestation (0.00s)
> === RUN   TestValidatePullRequestApproval
> --- PASS: TestValidatePullRequestApproval (0.00s)
> PASS
> ok    github.com/gittuf/gittuf/internal/attestations/github/v01       0.026s
> ?     github.com/gittuf/gittuf/internal/cache [no test files]
> ?     github.com/gittuf/gittuf/internal/cmd/addhooks  [no test files]
> ?     github.com/gittuf/gittuf/internal/cmd/attest    [no test files]
> ?     github.com/gittuf/gittuf/internal/cmd/attest/authorize  [no test files]
> ?     github.com/gittuf/gittuf/internal/cmd/clone     [no test files]
> ?     github.com/gittuf/gittuf/internal/cmd/common    [no test files]
> ?     github.com/gittuf/gittuf/internal/cmd/dev       [no test files]
> ?     github.com/gittuf/gittuf/internal/cmd/dev/addgithubapproval     [no 
> test files]
> ?     github.com/gittuf/gittuf/internal/cmd/dev/attestgithub  [no test files]
> ?     github.com/gittuf/gittuf/internal/cmd/dev/authorize     [no test files]
> ?     github.com/gittuf/gittuf/internal/cmd/dev/dismissgithubapproval [no 
> test files]
> ?     github.com/gittuf/gittuf/internal/cmd/dev/populatecache [no test files]
> ?     github.com/gittuf/gittuf/internal/cmd/dev/rslrecordat   [no test files]
> ?     github.com/gittuf/gittuf/internal/cmd/policy    [no test files]
> ?     github.com/gittuf/gittuf/internal/cmd/policy/addkey     [no test files]
> ?     github.com/gittuf/gittuf/internal/cmd/policy/addperson  [no test files]
> ?     github.com/gittuf/gittuf/internal/cmd/policy/addrule    [no test files]
> ?     github.com/gittuf/gittuf/internal/cmd/policy/init       [no test files]
> ?     github.com/gittuf/gittuf/internal/cmd/policy/listprincipals     [no 
> test files]
> ?     github.com/gittuf/gittuf/internal/cmd/policy/listrules  [no test files]
> ?     github.com/gittuf/gittuf/internal/cmd/policy/persistent [no test files]
> ?     github.com/gittuf/gittuf/internal/cmd/policy/removekey  [no test files]
> ?     github.com/gittuf/gittuf/internal/cmd/policy/removeperson       [no 
> test files]
> ?     github.com/gittuf/gittuf/internal/cmd/policy/removerule [no test files]
> ?     github.com/gittuf/gittuf/internal/cmd/policy/reorderrules       [no 
> test files]
> ?     github.com/gittuf/gittuf/internal/cmd/policy/sign       [no test files]
> ?     github.com/gittuf/gittuf/internal/cmd/policy/tui        [no test files]
> ?     github.com/gittuf/gittuf/internal/cmd/policy/updaterule [no test files]
> ?     github.com/gittuf/gittuf/internal/cmd/profile   [no test files]
> ?     github.com/gittuf/gittuf/internal/cmd/root      [no test files]
> ?     github.com/gittuf/gittuf/internal/cmd/rsl       [no test files]
> ?     github.com/gittuf/gittuf/internal/cmd/rsl/annotate      [no test files]
> ?     github.com/gittuf/gittuf/internal/cmd/rsl/log   [no test files]
> ?     github.com/gittuf/gittuf/internal/cmd/rsl/propagate     [no test files]
> ?     github.com/gittuf/gittuf/internal/cmd/rsl/record        [no test files]
> ?     github.com/gittuf/gittuf/internal/cmd/rsl/remote        [no test files]
> ?     github.com/gittuf/gittuf/internal/cmd/rsl/remote/check  [no test files]
> ?     github.com/gittuf/gittuf/internal/cmd/rsl/remote/pull   [no test files]
> ?     github.com/gittuf/gittuf/internal/cmd/rsl/remote/push   [no test files]
> ?     github.com/gittuf/gittuf/internal/cmd/rsl/remote/reconcile      [no 
> test files]
> ?     github.com/gittuf/gittuf/internal/cmd/rsl/skiprewritten [no test files]
> ?     github.com/gittuf/gittuf/internal/cmd/trust     [no test files]
> ?     github.com/gittuf/gittuf/internal/cmd/trust/addgithubapp        [no 
> test files]
> ?     github.com/gittuf/gittuf/internal/cmd/trust/addglobalrule       [no 
> test files]
> ?     github.com/gittuf/gittuf/internal/cmd/trust/addpolicykey        [no 
> test files]
> ?     github.com/gittuf/gittuf/internal/cmd/trust/addpropagationdirective     
> [no test files]
> ?     github.com/gittuf/gittuf/internal/cmd/trust/addrootkey  [no test files]
> ?     github.com/gittuf/gittuf/internal/cmd/trust/disablegithubappapprovals   
> [no test files]
> ?     github.com/gittuf/gittuf/internal/cmd/trust/enablegithubappapprovals    
> [no test files]
> ?     github.com/gittuf/gittuf/internal/cmd/trust/init        [no test files]
> ?     github.com/gittuf/gittuf/internal/cmd/trust/persistent  [no test files]
> ?     github.com/gittuf/gittuf/internal/cmd/trust/removegithubapp     [no 
> test files]
> ?     github.com/gittuf/gittuf/internal/cmd/trust/removeglobalrule    [no 
> test files]
> ?     github.com/gittuf/gittuf/internal/cmd/trust/removepolicykey     [no 
> test files]
> ?     github.com/gittuf/gittuf/internal/cmd/trust/removepropagationdirective  
> [no test files]
> ?     github.com/gittuf/gittuf/internal/cmd/trust/removerootkey       [no 
> test files]
> ?     github.com/gittuf/gittuf/internal/cmd/trust/setrepositorylocation       
> [no test files]
> ?     github.com/gittuf/gittuf/internal/cmd/trust/sign        [no test files]
> ?     github.com/gittuf/gittuf/internal/cmd/trust/updatepolicythreshold       
> [no test files]
> ?     github.com/gittuf/gittuf/internal/cmd/trust/updaterootthreshold [no 
> test files]
> ?     github.com/gittuf/gittuf/internal/cmd/trustpolicy/apply [no test files]
> ?     github.com/gittuf/gittuf/internal/cmd/trustpolicy/discard       [no 
> test files]
> ?     github.com/gittuf/gittuf/internal/cmd/trustpolicy/remote        [no 
> test files]
> ?     github.com/gittuf/gittuf/internal/cmd/trustpolicy/remote/pull   [no 
> test files]
> ?     github.com/gittuf/gittuf/internal/cmd/trustpolicy/remote/push   [no 
> test files]
> ?     github.com/gittuf/gittuf/internal/cmd/verifymergeable   [no test files]
> ?     github.com/gittuf/gittuf/internal/cmd/verifyref [no test files]
> ?     github.com/gittuf/gittuf/internal/cmd/version   [no test files]
> ?     github.com/gittuf/gittuf/internal/common        [no test files]
> ?     github.com/gittuf/gittuf/internal/common/set    [no test files]
> ?     github.com/gittuf/gittuf/internal/dev   [no test files]
> === RUN   TestColorer
> === RUN   TestColorer/colorer_on
> === RUN   TestColorer/colorer_off
> --- PASS: TestColorer (0.00s)
>     --- PASS: TestColorer/colorer_on (0.00s)
>     --- PASS: TestColorer/colorer_off (0.00s)
> === RUN   TestNewDisplayWriter
> === RUN   TestNewDisplayWriter/without_paging
> === RUN   TestNewDisplayWriter/with_paging
> --- PASS: TestNewDisplayWriter (0.00s)
>     --- PASS: TestNewDisplayWriter/without_paging (0.00s)
>     --- PASS: TestNewDisplayWriter/with_paging (0.00s)
> === RUN   TestRSLLog
> --- PASS: TestRSLLog (0.21s)
> === RUN   TestWriteRSLReferenceEntry
> === RUN   TestWriteRSLReferenceEntry/simple_without_number,_no_parent
> === RUN   TestWriteRSLReferenceEntry/simple_without_number,_has_parent
> === RUN   TestWriteRSLReferenceEntry/simple_with_number,_no_parent
> === RUN   TestWriteRSLReferenceEntry/simple_with_number,_has_parent
> === RUN   TestWriteRSLReferenceEntry/with_skip_annotation,_no_parent
> === RUN   TestWriteRSLReferenceEntry/with_skip_annotation,_has_parent
> === RUN   TestWriteRSLReferenceEntry/with_non-skip_annotation,_no_parent
> === RUN   TestWriteRSLReferenceEntry/with_non-skip_annotation,_has_parent
> === RUN   
> TestWriteRSLReferenceEntry/with_non-skip_annotation,_no_parent,_annotation_message_has_trailing_newline
> === RUN   
> TestWriteRSLReferenceEntry/with_non-skip_annotation,_has_parent,_annotation_message_has_trailing_newline
> --- PASS: TestWriteRSLReferenceEntry (0.35s)
>     --- PASS: TestWriteRSLReferenceEntry/simple_without_number,_no_parent 
> (0.00s)
>     --- PASS: TestWriteRSLReferenceEntry/simple_without_number,_has_parent 
> (0.00s)
>     --- PASS: TestWriteRSLReferenceEntry/simple_with_number,_no_parent (0.00s)
>     --- PASS: TestWriteRSLReferenceEntry/simple_with_number,_has_parent 
> (0.00s)
>     --- PASS: TestWriteRSLReferenceEntry/with_skip_annotation,_no_parent 
> (0.06s)
>     --- PASS: TestWriteRSLReferenceEntry/with_skip_annotation,_has_parent 
> (0.05s)
>     --- PASS: TestWriteRSLReferenceEntry/with_non-skip_annotation,_no_parent 
> (0.06s)
>     --- PASS: TestWriteRSLReferenceEntry/with_non-skip_annotation,_has_parent 
> (0.05s)
>     --- PASS: 
> TestWriteRSLReferenceEntry/with_non-skip_annotation,_no_parent,_annotation_message_has_trailing_newline
>  (0.05s)
>     --- PASS: 
> TestWriteRSLReferenceEntry/with_non-skip_annotation,_has_parent,_annotation_message_has_trailing_newline
>  (0.07s)
> === RUN   TestWriteRSLPropagationEntry
> === RUN   TestWriteRSLPropagationEntry/simple,_without_number,_without_parent
> === RUN   TestWriteRSLPropagationEntry/simple,_with_number,_without_parent
> === RUN   TestWriteRSLPropagationEntry/simple,_without_number,_with_parent
> === RUN   TestWriteRSLPropagationEntry/simple,_with_number,_with_parent
> --- PASS: TestWriteRSLPropagationEntry (0.00s)
>     --- PASS: 
> TestWriteRSLPropagationEntry/simple,_without_number,_without_parent (0.00s)
>     --- PASS: 
> TestWriteRSLPropagationEntry/simple,_with_number,_without_parent (0.00s)
>     --- PASS: 
> TestWriteRSLPropagationEntry/simple,_without_number,_with_parent (0.00s)
>     --- PASS: TestWriteRSLPropagationEntry/simple,_with_number,_with_parent 
> (0.00s)
> PASS
> ok    github.com/gittuf/gittuf/internal/display       0.592s
> ?     github.com/gittuf/gittuf/internal/git-remote-gittuf     [no test files]
> === RUN   TestRepositoryReadBlob
> === RUN   TestRepositoryReadBlob/read_existing_blob
> === RUN   TestRepositoryReadBlob/read_non-existing_blob
> --- PASS: TestRepositoryReadBlob (0.02s)
>     --- PASS: TestRepositoryReadBlob/read_existing_blob (0.00s)
>     --- PASS: TestRepositoryReadBlob/read_non-existing_blob (0.00s)
> === RUN   TestRepositoryWriteBlob
> --- PASS: TestRepositoryWriteBlob (0.02s)
> === RUN   TestGetFilePathsChangedByCommitRepository
> === RUN   TestGetFilePathsChangedByCommitRepository/modify_single_file
> === RUN   TestGetFilePathsChangedByCommitRepository/rename_single_file
> === RUN   TestGetFilePathsChangedByCommitRepository/swap_two_files_around
> === RUN   TestGetFilePathsChangedByCommitRepository/create_new_file
> === RUN   TestGetFilePathsChangedByCommitRepository/delete_file
> === RUN   
> TestGetFilePathsChangedByCommitRepository/modify_file_and_create_new_file
> === RUN   TestGetFilePathsChangedByCommitRepository/no_parent
> === RUN   
> TestGetFilePathsChangedByCommitRepository/merge_commit_with_commit_matching_parent
> === RUN   
> TestGetFilePathsChangedByCommitRepository/merge_commit_with_no_matching_parent
> === RUN   
> TestGetFilePathsChangedByCommitRepository/merge_commit_with_overlapping_parent_trees
> --- PASS: TestGetFilePathsChangedByCommitRepository (0.50s)
>     --- PASS: TestGetFilePathsChangedByCommitRepository/modify_single_file 
> (0.03s)
>     --- PASS: TestGetFilePathsChangedByCommitRepository/rename_single_file 
> (0.04s)
>     --- PASS: TestGetFilePathsChangedByCommitRepository/swap_two_files_around 
> (0.04s)
>     --- PASS: TestGetFilePathsChangedByCommitRepository/create_new_file 
> (0.03s)
>     --- PASS: TestGetFilePathsChangedByCommitRepository/delete_file (0.05s)
>     --- PASS: 
> TestGetFilePathsChangedByCommitRepository/modify_file_and_create_new_file 
> (0.05s)
>     --- PASS: TestGetFilePathsChangedByCommitRepository/no_parent (0.02s)
>     --- PASS: 
> TestGetFilePathsChangedByCommitRepository/merge_commit_with_commit_matching_parent
>  (0.06s)
>     --- PASS: 
> TestGetFilePathsChangedByCommitRepository/merge_commit_with_no_matching_parent
>  (0.07s)
>     --- PASS: 
> TestGetFilePathsChangedByCommitRepository/merge_commit_with_overlapping_parent_trees
>  (0.10s)
> === RUN   TestRepositoryCommit
> --- PASS: TestRepositoryCommit (0.10s)
> === RUN   TestRepositoryCommitUsingSpecificKey
> --- PASS: TestRepositoryCommitUsingSpecificKey (0.10s)
> === RUN   TestCommitUsingSpecificKey
> --- PASS: TestCommitUsingSpecificKey (0.08s)
> === RUN   TestRepositoryVerifyCommit
> === RUN   TestRepositoryVerifyCommit/ssh_signed_commit,_verify_with_ssh_key
> === RUN   TestRepositoryVerifyCommit/ssh_signed_commit,_verify_with_gpg_key
> === RUN   TestRepositoryVerifyCommit/gpg_signed_commit,_verify_with_gpg_key
> === RUN   TestRepositoryVerifyCommit/gpg_signed_commit,_verify_with_ssh_key
> === RUN   
> TestRepositoryVerifyCommit/gitsign_signed_commit,_verify_with_ssh_key
> --- PASS: TestRepositoryVerifyCommit (0.08s)
>     --- PASS: 
> TestRepositoryVerifyCommit/ssh_signed_commit,_verify_with_ssh_key (0.00s)
>     --- PASS: 
> TestRepositoryVerifyCommit/ssh_signed_commit,_verify_with_gpg_key (0.00s)
>     --- PASS: 
> TestRepositoryVerifyCommit/gpg_signed_commit,_verify_with_gpg_key (0.00s)
>     --- PASS: 
> TestRepositoryVerifyCommit/gpg_signed_commit,_verify_with_ssh_key (0.00s)
>     --- PASS: 
> TestRepositoryVerifyCommit/gitsign_signed_commit,_verify_with_ssh_key (0.00s)
> === RUN   TestKnowsCommit
> === RUN   TestKnowsCommit/check_if_second_commit_knows_first
> === RUN   TestKnowsCommit/check_that_first_commit_does_not_know_second
> === RUN   TestKnowsCommit/check_that_both_commits_know_themselves
> === RUN   
> TestKnowsCommit/check_that_an_unknown_commit_can't_know_a_known_commit
> --- PASS: TestKnowsCommit (0.08s)
>     --- PASS: TestKnowsCommit/check_if_second_commit_knows_first (0.01s)
>     --- PASS: TestKnowsCommit/check_that_first_commit_does_not_know_second 
> (0.01s)
>     --- PASS: TestKnowsCommit/check_that_both_commits_know_themselves (0.01s)
>     --- PASS: 
> TestKnowsCommit/check_that_an_unknown_commit_can't_know_a_known_commit (0.01s)
> === RUN   TestRepositoryGetCommitMessage
> --- PASS: TestRepositoryGetCommitMessage (0.03s)
> === RUN   TestGetCommitTreeID
> --- PASS: TestGetCommitTreeID (0.04s)
> === RUN   TestGetCommitParentIDs
> --- PASS: TestGetCommitParentIDs (0.04s)
> === RUN   TestGetCommonAncestor
> --- PASS: TestGetCommonAncestor (0.05s)
> === RUN   TestGetGitConfig
> --- PASS: TestGetGitConfig (0.02s)
> === RUN   TestNewHash
> --- PASS: TestNewHash (0.00s)
> === RUN   TestGetCommitsBetweenRangeRepository
> === RUN   
> TestGetCommitsBetweenRangeRepository/Check_range_between_commits_1_and_5
> === RUN   TestGetCommitsBetweenRangeRepository/Pass_in_wrong_order
> === RUN   
> TestGetCommitsBetweenRangeRepository/Check_range_in_separate_branches
> === RUN   TestGetCommitsBetweenRangeRepository/Get_all_commits
> === RUN   TestGetCommitsBetweenRangeRepository/Get_commits_from_invalid_range
> === RUN   
> TestGetCommitsBetweenRangeRepository/Get_commits_from_non-existent_commit
> --- PASS: TestGetCommitsBetweenRangeRepository (0.23s)
>     --- PASS: 
> TestGetCommitsBetweenRangeRepository/Check_range_between_commits_1_and_5 
> (0.00s)
>     --- PASS: TestGetCommitsBetweenRangeRepository/Pass_in_wrong_order (0.00s)
>     --- PASS: 
> TestGetCommitsBetweenRangeRepository/Check_range_in_separate_branches (0.17s)
>     --- PASS: TestGetCommitsBetweenRangeRepository/Get_all_commits (0.00s)
>     --- PASS: 
> TestGetCommitsBetweenRangeRepository/Get_commits_from_invalid_range (0.00s)
>     --- PASS: 
> TestGetCommitsBetweenRangeRepository/Get_commits_from_non-existent_commit 
> (0.00s)
> === RUN   TestGetCommitsBetweenRangeForMergeCommits
> === RUN   TestGetCommitsBetweenRangeForMergeCommits/Test_commit_1
> === RUN   TestGetCommitsBetweenRangeForMergeCommits/Test_commit_2
> === RUN   TestGetCommitsBetweenRangeForMergeCommits/Test_commit_3
> === RUN   TestGetCommitsBetweenRangeForMergeCommits/Test_commit_4
> === RUN   
> TestGetCommitsBetweenRangeForMergeCommits/Test_commit_5,_the_merge_commit
> === RUN   TestGetCommitsBetweenRangeForMergeCommits/Test_commit_6
> --- PASS: TestGetCommitsBetweenRangeForMergeCommits (0.12s)
>     --- PASS: TestGetCommitsBetweenRangeForMergeCommits/Test_commit_1 (0.00s)
>     --- PASS: TestGetCommitsBetweenRangeForMergeCommits/Test_commit_2 (0.00s)
>     --- PASS: TestGetCommitsBetweenRangeForMergeCommits/Test_commit_3 (0.01s)
>     --- PASS: TestGetCommitsBetweenRangeForMergeCommits/Test_commit_4 (0.00s)
>     --- PASS: 
> TestGetCommitsBetweenRangeForMergeCommits/Test_commit_5,_the_merge_commit 
> (0.00s)
>     --- PASS: TestGetCommitsBetweenRangeForMergeCommits/Test_commit_6 (0.00s)
> === RUN   TestHasObject
> --- PASS: TestHasObject (0.07s)
> === RUN   TestGetReference
> --- PASS: TestGetReference (0.02s)
> === RUN   TestSetReference
> --- PASS: TestSetReference (0.04s)
> === RUN   TestCheckAndSetReference
> --- PASS: TestCheckAndSetReference (0.03s)
> === RUN   TestGetSymbolicReferenceTarget
> --- PASS: TestGetSymbolicReferenceTarget (0.02s)
> === RUN   TestSetSymbolicReference
> --- PASS: TestSetSymbolicReference (0.02s)
> === RUN   TestRepositoryRefSpec
> --- PASS: TestRepositoryRefSpec (0.04s)
> === RUN   TestBranchReferenceName
> --- PASS: TestBranchReferenceName (0.00s)
> === RUN   TestTagReferenceName
> --- PASS: TestTagReferenceName (0.00s)
> === RUN   TestDeleteReference
> --- PASS: TestDeleteReference (0.02s)
> === RUN   TestRemote
> --- PASS: TestRemote (0.03s)
> === RUN   TestRepository
> === RUN   TestRepository/repository.isBare
> === RUN   TestRepository/repository.isBare/bare=true
> === RUN   TestRepository/repository.isBare/bare=false
> --- PASS: TestRepository (0.02s)
>     --- PASS: TestRepository/repository.isBare (0.02s)
>         --- PASS: TestRepository/repository.isBare/bare=true (0.01s)
>         --- PASS: TestRepository/repository.isBare/bare=false (0.01s)
> === RUN   TestCanSign
> === RUN   TestCanSign/no_signing_method,_explicit_key
> === RUN   TestCanSign/explicit_ssh,_explicit_key
> === RUN   TestCanSign/explicit_x509,_no_key
> === RUN   TestCanSign/explicit_x509,_explicit_key
> === RUN   TestCanSign/explicit_gpg,_no_key
> === RUN   TestCanSign/explicit_gpg,_explicit_key
> --- PASS: TestCanSign (0.06s)
>     --- PASS: TestCanSign/no_signing_method,_explicit_key (0.01s)
>     --- PASS: TestCanSign/explicit_ssh,_explicit_key (0.01s)
>     --- PASS: TestCanSign/explicit_x509,_no_key (0.01s)
>     --- PASS: TestCanSign/explicit_x509,_explicit_key (0.01s)
>     --- PASS: TestCanSign/explicit_gpg,_no_key (0.01s)
>     --- PASS: TestCanSign/explicit_gpg,_explicit_key (0.01s)
> === RUN   TestStatus
> --- PASS: TestStatus (0.07s)
> === RUN   TestPushRefSpecRepository
> === RUN   
> TestPushRefSpecRepository/assert_remote_repo_does_not_have_object_until_it_is_pushed
> === RUN   
> TestPushRefSpecRepository/assert_after_push_that_src_and_dst_refs_match
> === RUN   
> TestPushRefSpecRepository/assert_no_error_when_there_are_no_updates_to_push
> --- PASS: TestPushRefSpecRepository (0.23s)
>     --- PASS: 
> TestPushRefSpecRepository/assert_remote_repo_does_not_have_object_until_it_is_pushed
>  (0.06s)
>     --- PASS: 
> TestPushRefSpecRepository/assert_after_push_that_src_and_dst_refs_match 
> (0.08s)
>     --- PASS: 
> TestPushRefSpecRepository/assert_no_error_when_there_are_no_updates_to_push 
> (0.09s)
> === RUN   TestPushRepository
> === RUN   
> TestPushRepository/assert_remote_repo_does_not_have_object_until_it_is_pushed
> === RUN   TestPushRepository/assert_after_push_that_src_and_dst_refs_match
> === RUN   TestPushRepository/assert_no_error_when_there_are_no_updates_to_push
> --- PASS: TestPushRepository (0.36s)
>     --- PASS: 
> TestPushRepository/assert_remote_repo_does_not_have_object_until_it_is_pushed 
> (0.19s)
>     --- PASS: 
> TestPushRepository/assert_after_push_that_src_and_dst_refs_match (0.08s)
>     --- PASS: 
> TestPushRepository/assert_no_error_when_there_are_no_updates_to_push (0.09s)
> === RUN   TestFetchRefSpecRepository
> === RUN   
> TestFetchRefSpecRepository/assert_local_repo_does_not_have_object_until_fetched
> === RUN   TestFetchRefSpecRepository/assert_after_fetch_that_both_refs_match
> === RUN   
> TestFetchRefSpecRepository/assert_no_error_when_there_are_no_updates_to_fetch
> --- PASS: TestFetchRefSpecRepository (0.26s)
>     --- PASS: 
> TestFetchRefSpecRepository/assert_local_repo_does_not_have_object_until_fetched
>  (0.08s)
>     --- PASS: 
> TestFetchRefSpecRepository/assert_after_fetch_that_both_refs_match (0.09s)
>     --- PASS: 
> TestFetchRefSpecRepository/assert_no_error_when_there_are_no_updates_to_fetch 
> (0.10s)
> === RUN   TestFetchRepository
> === RUN   
> TestFetchRepository/assert_local_repo_does_not_have_object_until_fetched
> === RUN   TestFetchRepository/assert_after_fetch_that_both_refs_match
> === RUN   
> TestFetchRepository/assert_no_error_when_there_are_no_updates_to_fetch
> --- PASS: TestFetchRepository (0.23s)
>     --- PASS: 
> TestFetchRepository/assert_local_repo_does_not_have_object_until_fetched 
> (0.07s)
>     --- PASS: TestFetchRepository/assert_after_fetch_that_both_refs_match 
> (0.07s)
>     --- PASS: 
> TestFetchRepository/assert_no_error_when_there_are_no_updates_to_fetch (0.10s)
> === RUN   TestCloneAndFetchRepository
> === RUN   
> TestCloneAndFetchRepository/clone_and_fetch_remote_repository,_verify_refs_match,_not_bare
> === RUN   
> TestCloneAndFetchRepository/clone_and_fetch_remote_repository_without_specifying_initial_branch,_verify_refs_match,_not_bare
> === RUN   
> TestCloneAndFetchRepository/clone_and_fetch_remote_repository_with_only_one_ref,_verify_refs_match,_not_bare
> === RUN   
> TestCloneAndFetchRepository/clone_and_fetch_remote_repository,_verify_refs_match,_bare
> === RUN   
> TestCloneAndFetchRepository/clone_and_fetch_remote_repository_without_specifying_initial_branch,_verify_refs_match,_bare
> === RUN   
> TestCloneAndFetchRepository/clone_and_fetch_remote_repository_with_only_one_ref,_verify_refs_match,_bare
> --- PASS: TestCloneAndFetchRepository (0.47s)
>     --- PASS: 
> TestCloneAndFetchRepository/clone_and_fetch_remote_repository,_verify_refs_match,_not_bare
>  (0.07s)
>     --- PASS: 
> TestCloneAndFetchRepository/clone_and_fetch_remote_repository_without_specifying_initial_branch,_verify_refs_match,_not_bare
>  (0.06s)
>     --- PASS: 
> TestCloneAndFetchRepository/clone_and_fetch_remote_repository_with_only_one_ref,_verify_refs_match,_not_bare
>  (0.09s)
>     --- PASS: 
> TestCloneAndFetchRepository/clone_and_fetch_remote_repository,_verify_refs_match,_bare
>  (0.11s)
>     --- PASS: 
> TestCloneAndFetchRepository/clone_and_fetch_remote_repository_without_specifying_initial_branch,_verify_refs_match,_bare
>  (0.08s)
>     --- PASS: 
> TestCloneAndFetchRepository/clone_and_fetch_remote_repository_with_only_one_ref,_verify_refs_match,_bare
>  (0.06s)
> === RUN   TestGetTagTarget
> --- PASS: TestGetTagTarget (0.05s)
> === RUN   TestRepositoryVerifyTag
> === RUN   TestRepositoryVerifyTag/ssh_signed_tag,_verify_with_ssh_key
> === RUN   TestRepositoryVerifyTag/gpg_signed_tag,_verify_with_gpg_key
> --- PASS: TestRepositoryVerifyTag (0.10s)
>     --- PASS: TestRepositoryVerifyTag/ssh_signed_tag,_verify_with_ssh_key 
> (0.00s)
>     --- PASS: TestRepositoryVerifyTag/gpg_signed_tag,_verify_with_gpg_key 
> (0.00s)
> === RUN   TestRepositoryEmptyTree
> --- PASS: TestRepositoryEmptyTree (0.02s)
> === RUN   TestGetPathIDInTree
> === RUN   TestGetPathIDInTree/no_items
> === RUN   TestGetPathIDInTree/no_subdirectories
> === RUN   TestGetPathIDInTree/one_file_in_root_tree,_one_file_in_subdirectory
> === RUN   TestGetPathIDInTree/multiple_levels
> --- PASS: TestGetPathIDInTree (0.10s)
>     --- PASS: TestGetPathIDInTree/no_items (0.00s)
>     --- PASS: TestGetPathIDInTree/no_subdirectories (0.01s)
>     --- PASS: 
> TestGetPathIDInTree/one_file_in_root_tree,_one_file_in_subdirectory (0.02s)
>     --- PASS: TestGetPathIDInTree/multiple_levels (0.06s)
> === RUN   TestGetTreeItems
> === RUN   TestGetTreeItems/no_items
> === RUN   TestGetTreeItems/no_subdirectories
> === RUN   TestGetTreeItems/one_file_in_root_tree,_one_file_in_subdirectory
> === RUN   TestGetTreeItems/one_file_in_foo_tree,_one_file_in_bar
> --- PASS: TestGetTreeItems (0.07s)
>     --- PASS: TestGetTreeItems/no_items (0.00s)
>     --- PASS: TestGetTreeItems/no_subdirectories (0.01s)
>     --- PASS: 
> TestGetTreeItems/one_file_in_root_tree,_one_file_in_subdirectory (0.02s)
>     --- PASS: TestGetTreeItems/one_file_in_foo_tree,_one_file_in_bar (0.02s)
> === RUN   TestGetMergeTree
> === RUN   TestGetMergeTree/no_conflict
> === RUN   TestGetMergeTree/merge_conflict
> === RUN   TestGetMergeTree/fast_forward_merge
> --- PASS: TestGetMergeTree (0.18s)
>     --- PASS: TestGetMergeTree/no_conflict (0.07s)
>     --- PASS: TestGetMergeTree/merge_conflict (0.07s)
>     --- PASS: TestGetMergeTree/fast_forward_merge (0.03s)
> === RUN   TestCreateSubtreeFromUpstreamRepository
> === RUN   TestCreateSubtreeFromUpstreamRepository/subtree_into_HEAD
> === RUN   
> TestCreateSubtreeFromUpstreamRepository/various_other_subtree_scenarios
> === RUN   
> TestCreateSubtreeFromUpstreamRepository/various_other_subtree_scenarios/directory_in_root,_trailing_slash,_ref_does_not_exist
> === RUN   
> TestCreateSubtreeFromUpstreamRepository/various_other_subtree_scenarios/directory_in_root,_no_trailing_slash,_ref_exists
> === RUN   
> TestCreateSubtreeFromUpstreamRepository/various_other_subtree_scenarios/directory_in_root,_trailing_slash,_ref_exists
> === RUN   
> TestCreateSubtreeFromUpstreamRepository/various_other_subtree_scenarios/directory_in_root,_trailing_slash,_prior_propagation_exists
> === RUN   
> TestCreateSubtreeFromUpstreamRepository/various_other_subtree_scenarios/directory_in_subdirectory,_no_trailing_slash,_ref_does_not_exist
> === RUN   
> TestCreateSubtreeFromUpstreamRepository/various_other_subtree_scenarios/directory_in_subdirectory,_no_trailing_slash,_ref_exists
> === RUN   
> TestCreateSubtreeFromUpstreamRepository/various_other_subtree_scenarios/directory_in_subdirectory,_trailing_slash,_ref_exists
> === RUN   
> TestCreateSubtreeFromUpstreamRepository/various_other_subtree_scenarios/directory_in_subdirectory,_no_trailing_slash,_prior_propagation_exists
> === RUN   
> TestCreateSubtreeFromUpstreamRepository/various_other_subtree_scenarios/directory_in_root,_no_trailing_slash,_ref_does_not_exist
> === RUN   
> TestCreateSubtreeFromUpstreamRepository/various_other_subtree_scenarios/directory_in_root,_no_trailing_slash,_prior_propagation_exists
> === RUN   
> TestCreateSubtreeFromUpstreamRepository/various_other_subtree_scenarios/directory_in_subdirectory,_trailing_slash,_ref_does_not_exist
> === RUN   
> TestCreateSubtreeFromUpstreamRepository/various_other_subtree_scenarios/directory_in_subdirectory,_trailing_slash,_prior_propagation_exists
> === RUN   
> TestCreateSubtreeFromUpstreamRepository/various_other_subtree_scenarios/empty_localPath
> --- PASS: TestCreateSubtreeFromUpstreamRepository (0.90s)
>     --- PASS: TestCreateSubtreeFromUpstreamRepository/subtree_into_HEAD 
> (0.21s)
>     --- PASS: 
> TestCreateSubtreeFromUpstreamRepository/various_other_subtree_scenarios 
> (0.69s)
>         --- PASS: 
> TestCreateSubtreeFromUpstreamRepository/various_other_subtree_scenarios/directory_in_root,_trailing_slash,_ref_does_not_exist
>  (0.05s)
>         --- PASS: 
> TestCreateSubtreeFromUpstreamRepository/various_other_subtree_scenarios/directory_in_root,_no_trailing_slash,_ref_exists
>  (0.05s)
>         --- PASS: 
> TestCreateSubtreeFromUpstreamRepository/various_other_subtree_scenarios/directory_in_root,_trailing_slash,_ref_exists
>  (0.06s)
>         --- PASS: 
> TestCreateSubtreeFromUpstreamRepository/various_other_subtree_scenarios/directory_in_root,_trailing_slash,_prior_propagation_exists
>  (0.05s)
>         --- PASS: 
> TestCreateSubtreeFromUpstreamRepository/various_other_subtree_scenarios/directory_in_subdirectory,_no_trailing_slash,_ref_does_not_exist
>  (0.03s)
>         --- PASS: 
> TestCreateSubtreeFromUpstreamRepository/various_other_subtree_scenarios/directory_in_subdirectory,_no_trailing_slash,_ref_exists
>  (0.07s)
>         --- PASS: 
> TestCreateSubtreeFromUpstreamRepository/various_other_subtree_scenarios/directory_in_subdirectory,_trailing_slash,_ref_exists
>  (0.06s)
>         --- PASS: 
> TestCreateSubtreeFromUpstreamRepository/various_other_subtree_scenarios/directory_in_subdirectory,_no_trailing_slash,_prior_propagation_exists
>  (0.08s)
>         --- PASS: 
> TestCreateSubtreeFromUpstreamRepository/various_other_subtree_scenarios/directory_in_root,_no_trailing_slash,_ref_does_not_exist
>  (0.04s)
>         --- PASS: 
> TestCreateSubtreeFromUpstreamRepository/various_other_subtree_scenarios/directory_in_root,_no_trailing_slash,_prior_propagation_exists
>  (0.05s)
>         --- PASS: 
> TestCreateSubtreeFromUpstreamRepository/various_other_subtree_scenarios/directory_in_subdirectory,_trailing_slash,_ref_does_not_exist
>  (0.03s)
>         --- PASS: 
> TestCreateSubtreeFromUpstreamRepository/various_other_subtree_scenarios/directory_in_subdirectory,_trailing_slash,_prior_propagation_exists
>  (0.06s)
>         --- PASS: 
> TestCreateSubtreeFromUpstreamRepository/various_other_subtree_scenarios/empty_localPath
>  (0.00s)
> === RUN   TestTreeBuilder
> === RUN   TestTreeBuilder/no_blobs
> === RUN   TestTreeBuilder/both_blobs_in_the_root_directory
> === RUN   TestTreeBuilder/both_blobs_in_same_subdirectory
> === RUN   TestTreeBuilder/same_blobs_in_the_multiple_directories
> === RUN   TestTreeBuilder/both_blobs_in_different_subdirectories
> === RUN   TestTreeBuilder/blobs_in_mix_of_root_directory_and_subdirectories
> === RUN   TestTreeBuilder/build_tree_from_intermediate_tree
> === RUN   TestTreeBuilder/build_tree_from_nested_intermediate_tree
> === RUN   TestTreeBuilder/build_tree_from_nested_multi-level_intermediate_tree
> --- PASS: TestTreeBuilder (0.14s)
>     --- PASS: TestTreeBuilder/no_blobs (0.00s)
>     --- PASS: TestTreeBuilder/both_blobs_in_the_root_directory (0.01s)
>     --- PASS: TestTreeBuilder/both_blobs_in_same_subdirectory (0.01s)
>     --- PASS: TestTreeBuilder/same_blobs_in_the_multiple_directories (0.02s)
>     --- PASS: TestTreeBuilder/both_blobs_in_different_subdirectories (0.02s)
>     --- PASS: 
> TestTreeBuilder/blobs_in_mix_of_root_directory_and_subdirectories (0.01s)
>     --- PASS: TestTreeBuilder/build_tree_from_intermediate_tree (0.01s)
>     --- PASS: TestTreeBuilder/build_tree_from_nested_intermediate_tree (0.02s)
>     --- PASS: 
> TestTreeBuilder/build_tree_from_nested_multi-level_intermediate_tree (0.02s)
> === RUN   TestEnsureIsTree
> --- PASS: TestEnsureIsTree (0.04s)
> PASS
> ok    github.com/gittuf/gittuf/internal/gitinterface  5.111s
> === RUN   TestListRules
> === RUN   TestListRules/no_delegations
> === RUN   TestListRules/with_delegations
> --- PASS: TestListRules (0.47s)
>     --- PASS: TestListRules/no_delegations (0.20s)
>     --- PASS: TestListRules/with_delegations (0.27s)
> === RUN   TestListPrincipals
> === RUN   TestListPrincipals/policy_exists
> === RUN   TestListPrincipals/policy_does_not_exist
> --- PASS: TestListPrincipals (0.22s)
>     --- PASS: TestListPrincipals/policy_exists (0.03s)
>     --- PASS: TestListPrincipals/policy_does_not_exist (0.03s)
> === RUN   TestLoadState
> === RUN   TestLoadState/loading_while_verifying_multiple_states
> === RUN   TestLoadState/fail_loading_while_verifying_multiple_states,_bad_sig
> --- PASS: TestLoadState (0.96s)
>     --- PASS: TestLoadState/loading_while_verifying_multiple_states (0.56s)
>     --- PASS: 
> TestLoadState/fail_loading_while_verifying_multiple_states,_bad_sig (0.40s)
> === RUN   TestLoadCurrentState
> --- PASS: TestLoadCurrentState (0.12s)
> === RUN   TestLoadFirstState
> --- PASS: TestLoadFirstState (0.28s)
> === RUN   TestLoadStateForEntry
> --- PASS: TestLoadStateForEntry (0.19s)
> === RUN   TestStateVerify
> === PAUSE TestStateVerify
> === RUN   TestStateCommit
> --- PASS: TestStateCommit (0.13s)
> === RUN   TestStateGetRootMetadata
> === PAUSE TestStateGetRootMetadata
> === RUN   TestStateFindVerifiersForPath
> === PAUSE TestStateFindVerifiersForPath
> === RUN   TestGetStateForCommit
> === PAUSE TestGetStateForCommit
> === RUN   TestStateHasFileRule
> === PAUSE TestStateHasFileRule
> === RUN   TestApply
> --- PASS: TestApply (0.42s)
> === RUN   TestDiscard
> === PAUSE TestDiscard
> === RUN   TestInitializeRootMetadata
> --- PASS: TestInitializeRootMetadata (0.01s)
> === RUN   TestRegularSearcher
> === RUN   TestRegularSearcher/policy_exists
> === RUN   TestRegularSearcher/policy_does_not_exist
> === RUN   TestRegularSearcher/first_policy
> === RUN   TestRegularSearcher/policies_in_range
> === RUN   TestRegularSearcher/attestations_exist
> === RUN   TestRegularSearcher/attestations_do_not_exist
> --- PASS: TestRegularSearcher (0.69s)
>     --- PASS: TestRegularSearcher/policy_exists (0.18s)
>     --- PASS: TestRegularSearcher/policy_does_not_exist (0.04s)
>     --- PASS: TestRegularSearcher/first_policy (0.16s)
>     --- PASS: TestRegularSearcher/policies_in_range (0.16s)
>     --- PASS: TestRegularSearcher/attestations_exist (0.12s)
>     --- PASS: TestRegularSearcher/attestations_do_not_exist (0.03s)
> === RUN   TestCacheSearcher
> === RUN   TestCacheSearcher/policy_exists
> === RUN   TestCacheSearcher/policy_does_not_exist
> === RUN   TestCacheSearcher/first_policy
> === RUN   TestCacheSearcher/policies_in_range
> === RUN   TestCacheSearcher/attestations_exist
> === RUN   TestCacheSearcher/attestations_do_not_exist
> --- PASS: TestCacheSearcher (0.77s)
>     --- PASS: TestCacheSearcher/policy_exists (0.17s)
>     --- PASS: TestCacheSearcher/policy_does_not_exist (0.06s)
>     --- PASS: TestCacheSearcher/first_policy (0.20s)
>     --- PASS: TestCacheSearcher/policies_in_range (0.18s)
>     --- PASS: TestCacheSearcher/attestations_exist (0.09s)
>     --- PASS: TestCacheSearcher/attestations_do_not_exist (0.07s)
> === RUN   TestSignatureVerifier
> === PAUSE TestSignatureVerifier
> === RUN   TestInitializeTargetsMetadata
> --- PASS: TestInitializeTargetsMetadata (0.00s)
> === RUN   TestVerifyRef
> --- PASS: TestVerifyRef (0.27s)
> === RUN   TestVerifyRefFull
> --- PASS: TestVerifyRefFull (0.24s)
> === RUN   TestVerifyRefFromEntry
> --- PASS: TestVerifyRefFromEntry (0.72s)
> === RUN   TestVerifyRelativeForRefUsingPersons
> === RUN   TestVerifyRelativeForRefUsingPersons/no_recovery
> === RUN   
> TestVerifyRelativeForRefUsingPersons/no_recovery,_first_entry_is_the_very_first_entry
> === RUN   
> TestVerifyRelativeForRefUsingPersons/no_recovery,_first_entry_is_the_very_first_entry_but_policy_is_not_applied
> === RUN   
> TestVerifyRelativeForRefUsingPersons/with_recovery,_commit-same,_recovered_by_authorized_user
> === RUN   
> TestVerifyRelativeForRefUsingPersons/with_recovery,_commit-same,_recovered_by_unauthorized_user
> === RUN   
> TestVerifyRelativeForRefUsingPersons/with_recovery,_tree-same,_recovered_by_authorized_user
> === RUN   
> TestVerifyRelativeForRefUsingPersons/with_recovery,_tree-same,_recovered_by_unauthorized_user
> === RUN   
> TestVerifyRelativeForRefUsingPersons/with_recovery,_commit-same,_multiple_invalid_entries,_recovered_by_authorized_user
> === RUN   
> TestVerifyRelativeForRefUsingPersons/with_recovery,_commit-same,_unskipped_invalid_entries,_recovered_by_authorized_user
> === RUN   
> TestVerifyRelativeForRefUsingPersons/with_recovery,_commit-same,_recovered_by_authorized_user,_last_good_state_is_due_to_recovery
> === RUN   
> TestVerifyRelativeForRefUsingPersons/with_recovery,_error_because_recovery_goes_back_too_far,_recovered_by_authorized_user
> === RUN   
> TestVerifyRelativeForRefUsingPersons/with_recovery_but_recovered_entry_is_also_skipped,_tree-same,_recovered_by_authorized_user
> === RUN   
> TestVerifyRelativeForRefUsingPersons/with_annotation_but_no_fix_entry
> --- PASS: TestVerifyRelativeForRefUsingPersons (10.84s)
>     --- PASS: TestVerifyRelativeForRefUsingPersons/no_recovery (0.45s)
>     --- PASS: 
> TestVerifyRelativeForRefUsingPersons/no_recovery,_first_entry_is_the_very_first_entry
>  (0.29s)
>     --- PASS: 
> TestVerifyRelativeForRefUsingPersons/no_recovery,_first_entry_is_the_very_first_entry_but_policy_is_not_applied
>  (0.21s)
>     --- PASS: 
> TestVerifyRelativeForRefUsingPersons/with_recovery,_commit-same,_recovered_by_authorized_user
>  (0.68s)
>     --- PASS: 
> TestVerifyRelativeForRefUsingPersons/with_recovery,_commit-same,_recovered_by_unauthorized_user
>  (0.78s)
>     --- PASS: 
> TestVerifyRelativeForRefUsingPersons/with_recovery,_tree-same,_recovered_by_authorized_user
>  (0.88s)
>     --- PASS: 
> TestVerifyRelativeForRefUsingPersons/with_recovery,_tree-same,_recovered_by_unauthorized_user
>  (0.90s)
>     --- PASS: 
> TestVerifyRelativeForRefUsingPersons/with_recovery,_commit-same,_multiple_invalid_entries,_recovered_by_authorized_user
>  (1.00s)
>     --- PASS: 
> TestVerifyRelativeForRefUsingPersons/with_recovery,_commit-same,_unskipped_invalid_entries,_recovered_by_authorized_user
>  (0.86s)
>     --- PASS: 
> TestVerifyRelativeForRefUsingPersons/with_recovery,_commit-same,_recovered_by_authorized_user,_last_good_state_is_due_to_recovery
>  (1.35s)
>     --- PASS: 
> TestVerifyRelativeForRefUsingPersons/with_recovery,_error_because_recovery_goes_back_too_far,_recovered_by_authorized_user
>  (1.53s)
>     --- PASS: 
> TestVerifyRelativeForRefUsingPersons/with_recovery_but_recovered_entry_is_also_skipped,_tree-same,_recovered_by_authorized_user
>  (1.09s)
>     --- PASS: 
> TestVerifyRelativeForRefUsingPersons/with_annotation_but_no_fix_entry (0.82s)
> === RUN   TestVerifyMergeable
> === RUN   
> TestVerifyMergeable/base_commit_zero,_mergeable_using_GitHub_approval,_RSL_entry_signature_required
> === RUN   
> TestVerifyMergeable/base_commit_zero,_mergeable_using_mixed_approvals,_RSL_entry_signature_required
> === RUN   
> TestVerifyMergeable/base_commit_zero,_mergeable_using_GitHub_approval,_RSL_entry_signature_not_required
> === RUN   TestVerifyMergeable/base_commit_zero,_not_mergeable
> === RUN   
> TestVerifyMergeable/base_commit_not_zero,_mergeable_using_GitHub_approval,_RSL_entry_signature_required
> === RUN   
> TestVerifyMergeable/base_commit_not_zero,_mergeable_using_mixed_approvals,_RSL_entry_signature_required
> === RUN   
> TestVerifyMergeable/base_commit_not_zero,_mergeable_using_GitHub_approval,_RSL_entry_signature_not_required
> === RUN   TestVerifyMergeable/base_commit_not_zero,_not_mergeable
> === RUN   TestVerifyMergeable/unprotected_base_branch
> --- PASS: TestVerifyMergeable (4.70s)
>     --- PASS: 
> TestVerifyMergeable/base_commit_zero,_mergeable_using_GitHub_approval,_RSL_entry_signature_required
>  (0.43s)
>     --- PASS: 
> TestVerifyMergeable/base_commit_zero,_mergeable_using_mixed_approvals,_RSL_entry_signature_required
>  (0.48s)
>     --- PASS: 
> TestVerifyMergeable/base_commit_zero,_mergeable_using_GitHub_approval,_RSL_entry_signature_not_required
>  (0.42s)
>     --- PASS: TestVerifyMergeable/base_commit_zero,_not_mergeable (0.50s)
>     --- PASS: 
> TestVerifyMergeable/base_commit_not_zero,_mergeable_using_GitHub_approval,_RSL_entry_signature_required
>  (0.80s)
>     --- PASS: 
> TestVerifyMergeable/base_commit_not_zero,_mergeable_using_mixed_approvals,_RSL_entry_signature_required
>  (0.66s)
>     --- PASS: 
> TestVerifyMergeable/base_commit_not_zero,_mergeable_using_GitHub_approval,_RSL_entry_signature_not_required
>  (0.50s)
>     --- PASS: TestVerifyMergeable/base_commit_not_zero,_not_mergeable (0.53s)
>     --- PASS: TestVerifyMergeable/unprotected_base_branch (0.38s)
> === RUN   TestVerifyMergeableForCommit
> === RUN   
> TestVerifyMergeableForCommit/base_commit_zero,_mergeable_using_GitHub_approval,_RSL_entry_signature_required
> === RUN   
> TestVerifyMergeableForCommit/base_commit_zero,_mergeable_using_mixed_approvals,_RSL_entry_signature_required
> === RUN   
> TestVerifyMergeableForCommit/base_commit_zero,_mergeable_using_GitHub_approval,_RSL_entry_signature_not_required
> === RUN   TestVerifyMergeableForCommit/base_commit_zero,_not_mergeable
> === RUN   
> TestVerifyMergeableForCommit/base_commit_not_zero,_mergeable_using_GitHub_approval,_RSL_entry_signature_required
> === RUN   
> TestVerifyMergeableForCommit/base_commit_not_zero,_mergeable_using_mixed_approvals,_RSL_entry_signature_required
> === RUN   
> TestVerifyMergeableForCommit/base_commit_not_zero,_mergeable_using_GitHub_approval,_RSL_entry_signature_not_required
> === RUN   TestVerifyMergeableForCommit/base_commit_not_zero,_not_mergeable
> === RUN   TestVerifyMergeableForCommit/unprotected_base_branch
> --- PASS: TestVerifyMergeableForCommit (3.70s)
>     --- PASS: 
> TestVerifyMergeableForCommit/base_commit_zero,_mergeable_using_GitHub_approval,_RSL_entry_signature_required
>  (0.35s)
>     --- PASS: 
> TestVerifyMergeableForCommit/base_commit_zero,_mergeable_using_mixed_approvals,_RSL_entry_signature_required
>  (0.43s)
>     --- PASS: 
> TestVerifyMergeableForCommit/base_commit_zero,_mergeable_using_GitHub_approval,_RSL_entry_signature_not_required
>  (0.37s)
>     --- PASS: TestVerifyMergeableForCommit/base_commit_zero,_not_mergeable 
> (0.34s)
>     --- PASS: 
> TestVerifyMergeableForCommit/base_commit_not_zero,_mergeable_using_GitHub_approval,_RSL_entry_signature_required
>  (0.45s)
>     --- PASS: 
> TestVerifyMergeableForCommit/base_commit_not_zero,_mergeable_using_mixed_approvals,_RSL_entry_signature_required
>  (0.50s)
>     --- PASS: 
> TestVerifyMergeableForCommit/base_commit_not_zero,_mergeable_using_GitHub_approval,_RSL_entry_signature_not_required
>  (0.49s)
>     --- PASS: 
> TestVerifyMergeableForCommit/base_commit_not_zero,_not_mergeable (0.43s)
>     --- PASS: TestVerifyMergeableForCommit/unprotected_base_branch (0.34s)
> === RUN   TestVerifyRelativeForRef
> === RUN   TestVerifyRelativeForRef/no_recovery
> === RUN   
> TestVerifyRelativeForRef/no_recovery,_first_entry_is_the_very_first_entry
> === RUN   
> TestVerifyRelativeForRef/no_recovery,_first_entry_is_the_very_first_entry_but_policy_is_not_applied
> === RUN   
> TestVerifyRelativeForRef/with_recovery,_commit-same,_recovered_by_authorized_user
> === RUN   
> TestVerifyRelativeForRef/with_recovery,_commit-same,_recovered_by_unauthorized_user
> === RUN   
> TestVerifyRelativeForRef/with_recovery,_tree-same,_recovered_by_authorized_user
> === RUN   
> TestVerifyRelativeForRef/with_recovery,_tree-same,_recovered_by_unauthorized_user
> === RUN   
> TestVerifyRelativeForRef/with_recovery,_commit-same,_multiple_invalid_entries,_recovered_by_authorized_user
> === RUN   
> TestVerifyRelativeForRef/with_recovery,_commit-same,_unskipped_invalid_entries,_recovered_by_authorized_user
> === RUN   
> TestVerifyRelativeForRef/with_recovery,_commit-same,_recovered_by_authorized_user,_last_good_state_is_due_to_recovery
> === RUN   
> TestVerifyRelativeForRef/with_recovery,_error_because_recovery_goes_back_too_far,_recovered_by_authorized_user
> === RUN   
> TestVerifyRelativeForRef/with_recovery_but_recovered_entry_is_also_skipped,_tree-same,_recovered_by_authorized_user
> === RUN   TestVerifyRelativeForRef/with_annotation_but_no_fix_entry
> --- PASS: TestVerifyRelativeForRef (9.59s)
>     --- PASS: TestVerifyRelativeForRef/no_recovery (0.34s)
>     --- PASS: 
> TestVerifyRelativeForRef/no_recovery,_first_entry_is_the_very_first_entry 
> (0.29s)
>     --- PASS: 
> TestVerifyRelativeForRef/no_recovery,_first_entry_is_the_very_first_entry_but_policy_is_not_applied
>  (0.22s)
>     --- PASS: 
> TestVerifyRelativeForRef/with_recovery,_commit-same,_recovered_by_authorized_user
>  (0.70s)
>     --- PASS: 
> TestVerifyRelativeForRef/with_recovery,_commit-same,_recovered_by_unauthorized_user
>  (0.67s)
>     --- PASS: 
> TestVerifyRelativeForRef/with_recovery,_tree-same,_recovered_by_authorized_user
>  (0.73s)
>     --- PASS: 
> TestVerifyRelativeForRef/with_recovery,_tree-same,_recovered_by_unauthorized_user
>  (0.75s)
>     --- PASS: 
> TestVerifyRelativeForRef/with_recovery,_commit-same,_multiple_invalid_entries,_recovered_by_authorized_user
>  (0.97s)
>     --- PASS: 
> TestVerifyRelativeForRef/with_recovery,_commit-same,_unskipped_invalid_entries,_recovered_by_authorized_user
>  (0.94s)
>     --- PASS: 
> TestVerifyRelativeForRef/with_recovery,_commit-same,_recovered_by_authorized_user,_last_good_state_is_due_to_recovery
>  (1.16s)
>     --- PASS: 
> TestVerifyRelativeForRef/with_recovery,_error_because_recovery_goes_back_too_far,_recovered_by_authorized_user
>  (1.26s)
>     --- PASS: 
> TestVerifyRelativeForRef/with_recovery_but_recovered_entry_is_also_skipped,_tree-same,_recovered_by_authorized_user
>  (0.86s)
>     --- PASS: TestVerifyRelativeForRef/with_annotation_but_no_fix_entry 
> (0.68s)
> === RUN   TestVerifyEntry
> === RUN   TestVerifyEntry/successful_verification
> === RUN   TestVerifyEntry/successful_verification_using_persons
> === RUN   
> TestVerifyEntry/successful_verification_with_higher_threshold_using_v0.1_reference_authorization
> === RUN   
> TestVerifyEntry/successful_verification_with_higher_threshold_using_latest_reference_authorization
> === RUN   
> TestVerifyEntry/successful_verification_with_higher_threshold_but_using_GitHub_approval
> === RUN   
> TestVerifyEntry/unsuccessful_verification_with_higher_threshold_but_using_GitHub_approval_due_to_invalid_app_key
> === RUN   
> TestVerifyEntry/successful_verification_with_higher_threshold_but_using_GitHub_approval_and_reference_authorization_v0.2
> === RUN   
> TestVerifyEntry/unsuccessful_verification_with_higher_threshold_but_using_GitHub_approval_from_untrusted_key_and_reference_authorization_v0.2
> === RUN   
> TestVerifyEntry/unsuccessful_verification_with_higher_threshold_but_using_GitHub_approval
> === RUN   
> TestVerifyEntry/unsuccessful_verification_with_higher_threshold_when_a_person_signs_reference_authorization_and_uses_GitHub_approval
> === RUN   
> TestVerifyEntry/successful_verification_with_global_threshold_constraint
> === RUN   
> TestVerifyEntry/unsuccessful_verification_with_global_threshold_constraint
> === RUN   TestVerifyEntry/verify_block_force_pushes_rule_for_protected_ref
> === RUN   TestVerifyEntry/verify_block_force_pushes_rule_for_unprotected_ref
> --- PASS: TestVerifyEntry (5.09s)
>     --- PASS: TestVerifyEntry/successful_verification (0.21s)
>     --- PASS: TestVerifyEntry/successful_verification_using_persons (0.21s)
>     --- PASS: 
> TestVerifyEntry/successful_verification_with_higher_threshold_using_v0.1_reference_authorization
>  (0.33s)
>     --- PASS: 
> TestVerifyEntry/successful_verification_with_higher_threshold_using_latest_reference_authorization
>  (0.31s)
>     --- PASS: 
> TestVerifyEntry/successful_verification_with_higher_threshold_but_using_GitHub_approval
>  (0.35s)
>     --- PASS: 
> TestVerifyEntry/unsuccessful_verification_with_higher_threshold_but_using_GitHub_approval_due_to_invalid_app_key
>  (0.36s)
>     --- PASS: 
> TestVerifyEntry/successful_verification_with_higher_threshold_but_using_GitHub_approval_and_reference_authorization_v0.2
>  (0.46s)
>     --- PASS: 
> TestVerifyEntry/unsuccessful_verification_with_higher_threshold_but_using_GitHub_approval_from_untrusted_key_and_reference_authorization_v0.2
>  (0.37s)
>     --- PASS: 
> TestVerifyEntry/unsuccessful_verification_with_higher_threshold_but_using_GitHub_approval
>  (0.31s)
>     --- PASS: 
> TestVerifyEntry/unsuccessful_verification_with_higher_threshold_when_a_person_signs_reference_authorization_and_uses_GitHub_approval
>  (0.48s)
>     --- PASS: 
> TestVerifyEntry/successful_verification_with_global_threshold_constraint 
> (0.27s)
>     --- PASS: 
> TestVerifyEntry/unsuccessful_verification_with_global_threshold_constraint 
> (0.32s)
>     --- PASS: 
> TestVerifyEntry/verify_block_force_pushes_rule_for_protected_ref (0.57s)
>     --- PASS: 
> TestVerifyEntry/verify_block_force_pushes_rule_for_unprotected_ref (0.53s)
> === RUN   TestVerifyTagEntry
> === RUN   TestVerifyTagEntry/no_tag_specific_policy
> === RUN   TestVerifyTagEntry/with_tag_specific_policy
> === RUN   TestVerifyTagEntry/with_threshold_tag_specific_policy
> === RUN   TestVerifyTagEntry/with_tag_specific_policy,_unauthorized
> === RUN   TestVerifyTagEntry/with_threshold_tag_specific_policy,_unauthorized
> --- PASS: TestVerifyTagEntry (1.98s)
>     --- PASS: TestVerifyTagEntry/no_tag_specific_policy (0.31s)
>     --- PASS: TestVerifyTagEntry/with_tag_specific_policy (0.35s)
>     --- PASS: TestVerifyTagEntry/with_threshold_tag_specific_policy (0.62s)
>     --- PASS: TestVerifyTagEntry/with_tag_specific_policy,_unauthorized 
> (0.31s)
>     --- PASS: 
> TestVerifyTagEntry/with_threshold_tag_specific_policy,_unauthorized (0.39s)
> === RUN   TestGetCommits
> --- PASS: TestGetCommits (0.33s)
> === RUN   TestStateVerifyNewState
> === PAUSE TestStateVerifyNewState
> === CONT  TestStateVerify
> === RUN   TestStateVerify/only_root
> === PAUSE TestStateVerify/only_root
> === CONT  TestGetStateForCommit
> === CONT  TestStateHasFileRule
> === RUN   TestStateHasFileRule/with_file_rules
> === CONT  TestStateVerifyNewState
> === RUN   TestStateVerifyNewState/valid_policy_transition
> === PAUSE TestStateVerifyNewState/valid_policy_transition
> === RUN   TestStateVerifyNewState/invalid_policy_transition
> === PAUSE TestStateVerifyNewState/invalid_policy_transition
> === CONT  TestStateVerifyNewState/valid_policy_transition
> === CONT  TestSignatureVerifier
> === CONT  TestDiscard
> === RUN   TestDiscard/discard_changes_when_policy_ref_exists
> === PAUSE TestDiscard/discard_changes_when_policy_ref_exists
> === CONT  TestStateFindVerifiersForPath
> === RUN   TestStateFindVerifiersForPath/with_delegated_policy
> === PAUSE TestStateFindVerifiersForPath/with_delegated_policy
> === RUN   TestStateFindVerifiersForPath/without_policy
> === PAUSE TestStateFindVerifiersForPath/without_policy
> === RUN   TestStateVerify/only_root,_remove_root_keys
> === CONT  TestStateVerifyNewState/invalid_policy_transition
> === PAUSE TestStateVerify/only_root,_remove_root_keys
> === RUN   TestStateVerify/with_policy
> === PAUSE TestStateVerify/with_policy
> === RUN   TestStateVerify/with_delegated_policy
> === PAUSE TestStateVerify/with_delegated_policy
> === RUN   TestDiscard/discard_changes_when_policy_ref_does_not_exist
> === PAUSE TestDiscard/discard_changes_when_policy_ref_does_not_exist
> === CONT  TestStateGetRootMetadata
> === CONT  TestStateFindVerifiersForPath/without_policy
> === CONT  TestStateFindVerifiersForPath/with_delegated_policy
> === CONT  TestStateVerify/only_root
> --- PASS: TestStateGetRootMetadata (0.03s)
> === CONT  TestStateVerify/with_delegated_policy
> === RUN   TestStateHasFileRule/with_no_file_rules
> === PAUSE TestStateHasFileRule/with_no_file_rules
> === CONT  TestStateVerify/with_policy
> === CONT  TestStateVerify/only_root,_remove_root_keys
> --- PASS: TestStateFindVerifiersForPath (0.00s)
>     --- PASS: TestStateFindVerifiersForPath/without_policy (0.03s)
>     --- PASS: TestStateFindVerifiersForPath/with_delegated_policy (0.07s)
> === CONT  TestDiscard/discard_changes_when_policy_ref_exists
> === CONT  TestDiscard/discard_changes_when_policy_ref_does_not_exist
> --- PASS: TestStateVerifyNewState (0.00s)
>     --- PASS: TestStateVerifyNewState/invalid_policy_transition (0.07s)
>     --- PASS: TestStateVerifyNewState/valid_policy_transition (0.08s)
> === CONT  TestStateHasFileRule/with_no_file_rules
> --- PASS: TestStateHasFileRule (0.07s)
>     --- PASS: TestStateHasFileRule/with_file_rules (0.07s)
>     --- PASS: TestStateHasFileRule/with_no_file_rules (0.02s)
> --- PASS: TestStateVerify (0.00s)
>     --- PASS: TestStateVerify/only_root (0.04s)
>     --- PASS: TestStateVerify/only_root,_remove_root_keys (0.02s)
>     --- PASS: TestStateVerify/with_policy (0.04s)
>     --- PASS: TestStateVerify/with_delegated_policy (0.08s)
> --- PASS: TestSignatureVerifier (0.20s)
> --- PASS: TestDiscard (0.00s)
>     --- PASS: TestDiscard/discard_changes_when_policy_ref_does_not_exist 
> (0.03s)
>     --- PASS: TestDiscard/discard_changes_when_policy_ref_exists (0.17s)
> --- PASS: TestGetStateForCommit (0.49s)
> PASS
> ok    github.com/gittuf/gittuf/internal/policy        42.225s
> === RUN   TestRSLCache
> --- PASS: TestRSLCache (0.00s)
> === RUN   TestNewReferenceEntry
> --- PASS: TestNewReferenceEntry (0.09s)
> === RUN   TestReferenceUpdaterEntry
> === RUN   TestReferenceUpdaterEntry/reference_entry
> === RUN   TestReferenceUpdaterEntry/propagation_entry
> --- PASS: TestReferenceUpdaterEntry (0.00s)
>     --- PASS: TestReferenceUpdaterEntry/reference_entry (0.00s)
>     --- PASS: TestReferenceUpdaterEntry/propagation_entry (0.00s)
> === RUN   TestGetLatestEntry
> --- PASS: TestGetLatestEntry (0.08s)
> === RUN   TestGetLatestReferenceUpdaterEntry
> === RUN   TestGetLatestReferenceUpdaterEntry/with_ref_name
> === RUN   TestGetLatestReferenceUpdaterEntry/with_invalid_conditions
> === RUN   
> TestGetLatestReferenceUpdaterEntry/with_ref_name_and_until_entry_number
> === RUN   TestGetLatestReferenceUpdaterEntry/with_ref_name_and_before_entry_ID
> === RUN   
> TestGetLatestReferenceUpdaterEntry/with_ref_name,_before_entry_ID,_and_annotations
> === RUN   
> TestGetLatestReferenceUpdaterEntry/with_ref_name,_before_entry_ID_and_until_entry_number
> === RUN   
> TestGetLatestReferenceUpdaterEntry/with_ref_name_but_before_entry_ID_is_not_found_in_initial_walk
> === RUN   
> TestGetLatestReferenceUpdaterEntry/with_ref_name,_before_entry_ID,_until_entry_number_and_with_annotations
> === RUN   TestGetLatestReferenceUpdaterEntry/with_ref_name_and_unskipped
> === RUN   
> TestGetLatestReferenceUpdaterEntry/with_ref_name,_unskipped,_and_before_entry_ID
> === RUN   
> TestGetLatestReferenceUpdaterEntry/with_non_gittuf_option,_mix_of_gittuf_and_non_gittuf_entries
> === RUN   
> TestGetLatestReferenceUpdaterEntry/with_non_gittuf_option,_only_gittuf_entries
> === RUN   
> TestGetLatestReferenceUpdaterEntry/transitioning_from_no_numbers_to_numbers
> --- PASS: TestGetLatestReferenceUpdaterEntry (1.37s)
>     --- PASS: TestGetLatestReferenceUpdaterEntry/with_ref_name (0.10s)
>     --- PASS: TestGetLatestReferenceUpdaterEntry/with_invalid_conditions 
> (0.09s)
>     --- PASS: 
> TestGetLatestReferenceUpdaterEntry/with_ref_name_and_until_entry_number 
> (0.10s)
>     --- PASS: 
> TestGetLatestReferenceUpdaterEntry/with_ref_name_and_before_entry_ID (0.16s)
>     --- PASS: 
> TestGetLatestReferenceUpdaterEntry/with_ref_name,_before_entry_ID,_and_annotations
>  (0.26s)
>     --- PASS: 
> TestGetLatestReferenceUpdaterEntry/with_ref_name,_before_entry_ID_and_until_entry_number
>  (0.09s)
>     --- PASS: 
> TestGetLatestReferenceUpdaterEntry/with_ref_name_but_before_entry_ID_is_not_found_in_initial_walk
>  (0.04s)
>     --- PASS: 
> TestGetLatestReferenceUpdaterEntry/with_ref_name,_before_entry_ID,_until_entry_number_and_with_annotations
>  (0.18s)
>     --- PASS: TestGetLatestReferenceUpdaterEntry/with_ref_name_and_unskipped 
> (0.10s)
>     --- PASS: 
> TestGetLatestReferenceUpdaterEntry/with_ref_name,_unskipped,_and_before_entry_ID
>  (0.06s)
>     --- PASS: 
> TestGetLatestReferenceUpdaterEntry/with_non_gittuf_option,_mix_of_gittuf_and_non_gittuf_entries
>  (0.08s)
>     --- PASS: 
> TestGetLatestReferenceUpdaterEntry/with_non_gittuf_option,_only_gittuf_entries
>  (0.05s)
>     --- PASS: 
> TestGetLatestReferenceUpdaterEntry/transitioning_from_no_numbers_to_numbers 
> (0.06s)
> === RUN   TestGetEntry
> --- PASS: TestGetEntry (0.05s)
> === RUN   TestGetParentForEntry
> === RUN   TestGetParentForEntry/regular_test
> === RUN   TestGetParentForEntry/transition_from_no_number_to_with_number
> --- PASS: TestGetParentForEntry (0.11s)
>     --- PASS: TestGetParentForEntry/regular_test (0.07s)
>     --- PASS: TestGetParentForEntry/transition_from_no_number_to_with_number 
> (0.04s)
> === RUN   TestGetNonGittufParentReferenceUpdaterEntryForEntry
> === RUN   
> TestGetNonGittufParentReferenceUpdaterEntryForEntry/mix_of_gittuf_and_non_gittuf_entries
> === RUN   
> TestGetNonGittufParentReferenceUpdaterEntryForEntry/only_gittuf_entries
> --- PASS: TestGetNonGittufParentReferenceUpdaterEntryForEntry (0.18s)
>     --- PASS: 
> TestGetNonGittufParentReferenceUpdaterEntryForEntry/mix_of_gittuf_and_non_gittuf_entries
>  (0.12s)
>     --- PASS: 
> TestGetNonGittufParentReferenceUpdaterEntryForEntry/only_gittuf_entries 
> (0.06s)
> === RUN   TestGetFirstEntry
> === PAUSE TestGetFirstEntry
> === RUN   TestGetFirstReferenceUpdaterEntryForRef
> --- PASS: TestGetFirstReferenceUpdaterEntryForRef (0.34s)
> === RUN   TestSkipAllInvalidReferenceEntriesForRef
> === RUN   TestSkipAllInvalidReferenceEntriesForRef/skip_latest_entry
> === RUN   TestSkipAllInvalidReferenceEntriesForRef/skip_multiple_entries
> === RUN   
> TestSkipAllInvalidReferenceEntriesForRef/just_one_entry,_nothing_should_change
> === RUN   
> TestSkipAllInvalidReferenceEntriesForRef/multiple_entries,_nothing_should_change
> --- PASS: TestSkipAllInvalidReferenceEntriesForRef (0.40s)
>     --- PASS: TestSkipAllInvalidReferenceEntriesForRef/skip_latest_entry 
> (0.11s)
>     --- PASS: TestSkipAllInvalidReferenceEntriesForRef/skip_multiple_entries 
> (0.16s)
>     --- PASS: 
> TestSkipAllInvalidReferenceEntriesForRef/just_one_entry,_nothing_should_change
>  (0.08s)
>     --- PASS: 
> TestSkipAllInvalidReferenceEntriesForRef/multiple_entries,_nothing_should_change
>  (0.06s)
> === RUN   TestGetFirstReferenceUpdaterEntryForCommit
> --- PASS: TestGetFirstReferenceUpdaterEntryForCommit (0.55s)
> === RUN   TestGetReferenceUpdaterEntriesInRange
> --- PASS: TestGetReferenceUpdaterEntriesInRange (0.24s)
> === RUN   TestGetReferenceUpdaterEntriesInRangeForRef
> --- PASS: TestGetReferenceUpdaterEntriesInRangeForRef (0.15s)
> === RUN   TestPropagateChangesFromUpstreamRepository
> --- PASS: TestPropagateChangesFromUpstreamRepository (0.22s)
> === RUN   TestAnnotationEntryRefersTo
> --- PASS: TestAnnotationEntryRefersTo (0.04s)
> === RUN   TestReferenceEntryCreateCommitMessage
> === RUN   TestReferenceEntryCreateCommitMessage/entry,_fully_resolved_ref
> === RUN   TestReferenceEntryCreateCommitMessage/entry,_non-zero_commit
> === RUN   
> TestReferenceEntryCreateCommitMessage/entry,_fully_resolved_ref,_small_number
> === RUN   
> TestReferenceEntryCreateCommitMessage/entry,_fully_resolved_ref,_large_number
> --- PASS: TestReferenceEntryCreateCommitMessage (0.00s)
>     --- PASS: TestReferenceEntryCreateCommitMessage/entry,_fully_resolved_ref 
> (0.00s)
>     --- PASS: TestReferenceEntryCreateCommitMessage/entry,_non-zero_commit 
> (0.00s)
>     --- PASS: 
> TestReferenceEntryCreateCommitMessage/entry,_fully_resolved_ref,_small_number 
> (0.00s)
>     --- PASS: 
> TestReferenceEntryCreateCommitMessage/entry,_fully_resolved_ref,_large_number 
> (0.00s)
> === RUN   TestAnnotationEntryCreateCommitMessage
> === RUN   
> TestAnnotationEntryCreateCommitMessage/annotation,_no_message,_small_number
> === RUN   
> TestAnnotationEntryCreateCommitMessage/annotation,_no_message,_large_number
> === RUN   TestAnnotationEntryCreateCommitMessage/annotation,_no_message
> === RUN   TestAnnotationEntryCreateCommitMessage/annotation,_with_message
> === RUN   
> TestAnnotationEntryCreateCommitMessage/annotation,_with_multi-line_message
> === RUN   
> TestAnnotationEntryCreateCommitMessage/annotation,_no_message,_skip_false
> === RUN   
> TestAnnotationEntryCreateCommitMessage/annotation,_no_message,_skip_false,_multiple_entry_IDs
> --- PASS: TestAnnotationEntryCreateCommitMessage (0.00s)
>     --- PASS: 
> TestAnnotationEntryCreateCommitMessage/annotation,_no_message,_small_number 
> (0.00s)
>     --- PASS: 
> TestAnnotationEntryCreateCommitMessage/annotation,_no_message,_large_number 
> (0.00s)
>     --- PASS: TestAnnotationEntryCreateCommitMessage/annotation,_no_message 
> (0.00s)
>     --- PASS: TestAnnotationEntryCreateCommitMessage/annotation,_with_message 
> (0.00s)
>     --- PASS: 
> TestAnnotationEntryCreateCommitMessage/annotation,_with_multi-line_message 
> (0.00s)
>     --- PASS: 
> TestAnnotationEntryCreateCommitMessage/annotation,_no_message,_skip_false 
> (0.00s)
>     --- PASS: 
> TestAnnotationEntryCreateCommitMessage/annotation,_no_message,_skip_false,_multiple_entry_IDs
>  (0.00s)
> === RUN   TestPropagationEntryCreateCommitMessage
> === RUN   TestPropagationEntryCreateCommitMessage/entry,_fully_resolved_ref
> === RUN   TestPropagationEntryCreateCommitMessage/entry,_non-zero_commit
> === RUN   
> TestPropagationEntryCreateCommitMessage/entry,_fully_resolved_ref,_small_number
> === RUN   
> TestPropagationEntryCreateCommitMessage/entry,_fully_resolved_ref,_large_number
> --- PASS: TestPropagationEntryCreateCommitMessage (0.00s)
>     --- PASS: 
> TestPropagationEntryCreateCommitMessage/entry,_fully_resolved_ref (0.00s)
>     --- PASS: TestPropagationEntryCreateCommitMessage/entry,_non-zero_commit 
> (0.00s)
>     --- PASS: 
> TestPropagationEntryCreateCommitMessage/entry,_fully_resolved_ref,_small_number
>  (0.00s)
>     --- PASS: 
> TestPropagationEntryCreateCommitMessage/entry,_fully_resolved_ref,_large_number
>  (0.00s)
> === RUN   TestParseRSLEntryText
> === RUN   TestParseRSLEntryText/entry,_non-zero_commit
> === RUN   TestParseRSLEntryText/entry,_missing_information
> === RUN   TestParseRSLEntryText/annotation,_with_multi-line_message
> === RUN   TestParseRSLEntryText/annotation,_no_message,_skip_false
> === RUN   
> TestParseRSLEntryText/annotation,_no_message,_skip_false,_multiple_entry_IDs
> === RUN   TestParseRSLEntryText/annotation,_missing_information
> === RUN   TestParseRSLEntryText/propagation_entry,_missing_information
> === RUN   TestParseRSLEntryText/entry,_fully_resolved_ref
> === RUN   TestParseRSLEntryText/entry,_missing_header
> === RUN   TestParseRSLEntryText/annotation,_no_message
> === RUN   TestParseRSLEntryText/annotation,_with_message
> === RUN   TestParseRSLEntryText/annotation,_missing_header
> === RUN   TestParseRSLEntryText/propagation_entry,_fully_resolved_ref
> === RUN   TestParseRSLEntryText/propagation_entry,_non-zero_commit
> --- PASS: TestParseRSLEntryText (0.00s)
>     --- PASS: TestParseRSLEntryText/entry,_non-zero_commit (0.00s)
>     --- PASS: TestParseRSLEntryText/entry,_missing_information (0.00s)
>     --- PASS: TestParseRSLEntryText/annotation,_with_multi-line_message 
> (0.00s)
>     --- PASS: TestParseRSLEntryText/annotation,_no_message,_skip_false (0.00s)
>     --- PASS: 
> TestParseRSLEntryText/annotation,_no_message,_skip_false,_multiple_entry_IDs 
> (0.00s)
>     --- PASS: TestParseRSLEntryText/annotation,_missing_information (0.00s)
>     --- PASS: TestParseRSLEntryText/propagation_entry,_missing_information 
> (0.00s)
>     --- PASS: TestParseRSLEntryText/entry,_fully_resolved_ref (0.00s)
>     --- PASS: TestParseRSLEntryText/entry,_missing_header (0.00s)
>     --- PASS: TestParseRSLEntryText/annotation,_no_message (0.00s)
>     --- PASS: TestParseRSLEntryText/annotation,_with_message (0.00s)
>     --- PASS: TestParseRSLEntryText/annotation,_missing_header (0.00s)
>     --- PASS: TestParseRSLEntryText/propagation_entry,_fully_resolved_ref 
> (0.00s)
>     --- PASS: TestParseRSLEntryText/propagation_entry,_non-zero_commit (0.00s)
> === CONT  TestGetFirstEntry
> --- PASS: TestGetFirstEntry (0.19s)
> PASS
> ok    github.com/gittuf/gittuf/internal/rsl   4.045s
> ?     github.com/gittuf/gittuf/internal/signerverifier/common [no test files]
> === RUN   TestCreateEnvelope
> --- PASS: TestCreateEnvelope (0.00s)
> === RUN   TestSignEnvelope
> --- PASS: TestSignEnvelope (0.02s)
> === RUN   TestVerifyEnvelope
> --- PASS: TestVerifyEnvelope (0.02s)
> PASS
> ok    github.com/gittuf/gittuf/internal/signerverifier/dsse   0.055s
> === RUN   TestLoadGPGKeyFromBytes
> --- PASS: TestLoadGPGKeyFromBytes (0.00s)
> PASS
> ok    github.com/gittuf/gittuf/internal/signerverifier/gpg    0.005s
> ?     github.com/gittuf/gittuf/internal/signerverifier/sigstore       [no 
> test files]
> ?     
> github.com/gittuf/gittuf/internal/signerverifier/sigstore/options/signer      
>   [no test files]
> ?     
> github.com/gittuf/gittuf/internal/signerverifier/sigstore/options/verifier    
>   [no test files]
> === RUN   TestSSH
> === RUN   TestSSH/rsa
> === RUN   TestSSH/rsa.pub
> === RUN   TestSSH/rsa_enc
> === RUN   TestSSH/rsa_enc.pub
> === RUN   TestSSH/ecdsa
> === RUN   TestSSH/ecdsa.pub
> === RUN   TestSSH/ecdsa_enc
> === RUN   TestSSH/ecdsa_enc.pub
> === RUN   TestSSH/ed25519
> === RUN   TestSSH/ed25519.pub
> === RUN   TestSSH/ed25519_enc
> === RUN   TestSSH/ed25519_enc.pub
> --- PASS: TestSSH (1.69s)
>     --- PASS: TestSSH/rsa (0.03s)
>     --- PASS: TestSSH/rsa.pub (0.03s)
>     --- PASS: TestSSH/rsa_enc (0.27s)
>     --- PASS: TestSSH/rsa_enc.pub (0.26s)
>     --- PASS: TestSSH/ecdsa (0.03s)
>     --- PASS: TestSSH/ecdsa.pub (0.02s)
>     --- PASS: TestSSH/ecdsa_enc (0.24s)
>     --- PASS: TestSSH/ecdsa_enc.pub (0.24s)
>     --- PASS: TestSSH/ed25519 (0.02s)
>     --- PASS: TestSSH/ed25519.pub (0.02s)
>     --- PASS: TestSSH/ed25519_enc (0.26s)
>     --- PASS: TestSSH/ed25519_enc.pub (0.25s)
> === RUN   TestParseSSH2Key
> --- PASS: TestParseSSH2Key (0.00s)
> === RUN   TestNewVerifierFromKey
> --- PASS: TestNewVerifierFromKey (0.00s)
> PASS
> ok    github.com/gittuf/gittuf/internal/signerverifier/ssh    1.690s
> ?     github.com/gittuf/gittuf/internal/testartifacts [no test files]
> ?     github.com/gittuf/gittuf/internal/third_party/go-securesystemslib/dsse  
> [no test files]
> ?     github.com/gittuf/gittuf/internal/tuf   [no test files]
> ?     github.com/gittuf/gittuf/internal/tuf/migrations        [no test files]
> === RUN   TestRootMetadata
> === RUN   TestRootMetadata/test_SetExpires
> === RUN   TestRootMetadata/test_addRole
> === RUN   TestRootMetadata/test_SchemaVersion
> === RUN   TestRootMetadata/test_GetPrincipals
> === RUN   TestRootMetadata/test_rootLocation
> === RUN   TestRootMetadata/test_propagation_directives
> === RUN   TestRootMetadata/test_multi-repository
> --- PASS: TestRootMetadata (0.01s)
>     --- PASS: TestRootMetadata/test_SetExpires (0.00s)
>     --- PASS: TestRootMetadata/test_addRole (0.00s)
>     --- PASS: TestRootMetadata/test_SchemaVersion (0.00s)
>     --- PASS: TestRootMetadata/test_GetPrincipals (0.00s)
>     --- PASS: TestRootMetadata/test_rootLocation (0.00s)
>     --- PASS: TestRootMetadata/test_propagation_directives (0.00s)
>     --- PASS: TestRootMetadata/test_multi-repository (0.00s)
> === RUN   TestRootMetadataWithSSHKey
> --- PASS: TestRootMetadataWithSSHKey (0.02s)
> === RUN   TestAddRootPrincipal
>     root_test.go:216: failed to run command /usr/bin/ssh-keygen -m rfc4716 -e 
> -f 
> /build/reproducible-path/gittuf-0.9.0/debian/gotmp/TestAddRootPrincipal-72cca03496422cdfe1c00ba5e299d18ca383b16041a7b28a5fca5e853b8f065a:
>  exit status 255 ssh-keygen: 
> /build/reproducible-path/gittuf-0.9.0/debian/gotmp/TestAddRootPrincipal-72cca03496422cdfe1c00ba5e299d18ca383b16041a7b28a5fca5e853b8f065a:
>  No such file or directory
> 
>         
> --- FAIL: TestAddRootPrincipal (0.01s)
> === RUN   TestDeleteRootPrincipal
> --- PASS: TestDeleteRootPrincipal (0.02s)
> === RUN   TestAddPrimaryRuleFilePrincipal
> --- PASS: TestAddPrimaryRuleFilePrincipal (0.02s)
> === RUN   TestDeletePrimaryRuleFilePrincipal
> --- PASS: TestDeletePrimaryRuleFilePrincipal (0.02s)
> === RUN   TestAddGitHubAppPrincipal
> --- PASS: TestAddGitHubAppPrincipal (0.03s)
> === RUN   TestDeleteGitHubAppPrincipal
> --- PASS: TestDeleteGitHubAppPrincipal (0.03s)
> === RUN   TestEnableGitHubAppApprovals
> --- PASS: TestEnableGitHubAppApprovals (0.02s)
> === RUN   TestDisableGitHubAppApprovals
> --- PASS: TestDisableGitHubAppApprovals (0.01s)
> === RUN   TestUpdateAndGetRootThreshold
> --- PASS: TestUpdateAndGetRootThreshold (0.01s)
> === RUN   TestUpdateAndGetPrimaryRuleFileThreshold
> --- PASS: TestUpdateAndGetPrimaryRuleFileThreshold (0.02s)
> === RUN   TestGetRootPrincipals
> === RUN   TestGetRootPrincipals/root_role_exists
> === RUN   TestGetRootPrincipals/root_role_does_not_exist
> --- PASS: TestGetRootPrincipals (0.01s)
>     --- PASS: TestGetRootPrincipals/root_role_exists (0.01s)
>     --- PASS: TestGetRootPrincipals/root_role_does_not_exist (0.00s)
> === RUN   TestGetPrimaryRuleFilePrincipals
>     root_test.go:429: failed to run command /usr/bin/ssh-keygen -m rfc4716 -e 
> -f 
> /build/reproducible-path/gittuf-0.9.0/debian/gotmp/TestGetPrimaryRuleFilePrincipals-72cca03496422cdfe1c00ba5e299d18ca383b16041a7b28a5fca5e853b8f065a:
>  exit status 255 ssh-keygen: 
> /build/reproducible-path/gittuf-0.9.0/debian/gotmp/TestGetPrimaryRuleFilePrincipals-72cca03496422cdfe1c00ba5e299d18ca383b16041a7b28a5fca5e853b8f065a:
>  No such file or directory
> 
>         
> --- FAIL: TestGetPrimaryRuleFilePrincipals (0.01s)
> === RUN   TestGetGitHubAppPrincipals
> === RUN   TestGetGitHubAppPrincipals/role_exists
> === RUN   TestGetGitHubAppPrincipals/role_does_not_exist
> --- PASS: TestGetGitHubAppPrincipals (0.01s)
>     --- PASS: TestGetGitHubAppPrincipals/role_exists (0.01s)
>     --- PASS: TestGetGitHubAppPrincipals/role_does_not_exist (0.00s)
> === RUN   TestIsGitHubAppApprovalTrusted
> --- PASS: TestIsGitHubAppApprovalTrusted (0.02s)
> === RUN   TestGlobalRules
> --- PASS: TestGlobalRules (0.01s)
> === RUN   TestNewGlobalRuleBlockForcePushes
> --- PASS: TestNewGlobalRuleBlockForcePushes (0.00s)
> === RUN   TestPropagationDirective
> --- PASS: TestPropagationDirective (0.00s)
> === RUN   TestTargetsMetadataAndDelegations
> === RUN   TestTargetsMetadataAndDelegations/test_SetExpires
> === RUN   TestTargetsMetadataAndDelegations/test_Validate
> === RUN   TestTargetsMetadataAndDelegations/test_addKey
> === RUN   TestTargetsMetadataAndDelegations/test_removeKey
> --- PASS: TestTargetsMetadataAndDelegations (0.01s)
>     --- PASS: TestTargetsMetadataAndDelegations/test_SetExpires (0.00s)
>     --- PASS: TestTargetsMetadataAndDelegations/test_Validate (0.00s)
>     --- PASS: TestTargetsMetadataAndDelegations/test_addKey (0.00s)
>     --- PASS: TestTargetsMetadataAndDelegations/test_removeKey (0.00s)
> === RUN   TestDelegation
> === RUN   TestDelegation/matches
> === RUN   TestDelegation/threshold
> === RUN   TestDelegation/terminating
> === RUN   TestDelegation/protected_namespaces
> === RUN   TestDelegation/principal_IDs
> --- PASS: TestDelegation (0.00s)
>     --- PASS: TestDelegation/matches (0.00s)
>     --- PASS: TestDelegation/threshold (0.00s)
>     --- PASS: TestDelegation/terminating (0.00s)
>     --- PASS: TestDelegation/protected_namespaces (0.00s)
>     --- PASS: TestDelegation/principal_IDs (0.00s)
> === RUN   TestAddRuleAndGetRules
>     targets_test.go:227: failed to run command /usr/bin/ssh-keygen -m rfc4716 
> -e -f 
> /build/reproducible-path/gittuf-0.9.0/debian/gotmp/TestAddRuleAndGetRules-25f3b99d12ef5f6bf7e5b62b1ebc4c82119cc5c4f6ba83e189a13af883e90e96:
>  exit status 255 ssh-keygen: 
> /build/reproducible-path/gittuf-0.9.0/debian/gotmp/TestAddRuleAndGetRules-25f3b99d12ef5f6bf7e5b62b1ebc4c82119cc5c4f6ba83e189a13af883e90e96:
>  No such file or directory
> 
>         
> --- FAIL: TestAddRuleAndGetRules (0.02s)
> === RUN   TestUpdateDelegation
> --- PASS: TestUpdateDelegation (0.01s)
> === RUN   TestReorderRules
> --- PASS: TestReorderRules (0.01s)
> === RUN   TestRemoveRule
> --- PASS: TestRemoveRule (0.01s)
> === RUN   TestGetPrincipals
> --- PASS: TestGetPrincipals (0.01s)
> === RUN   TestAllowRule
> --- PASS: TestAllowRule (0.00s)
> FAIL
> FAIL  github.com/gittuf/gittuf/internal/tuf/v01       0.369s
> === RUN   TestRootMetadata
> === RUN   TestRootMetadata/test_SetExpires
> === RUN   TestRootMetadata/test_addRole
> === RUN   TestRootMetadata/test_SchemaVersion
> === RUN   TestRootMetadata/test_GetPrincipals
> === RUN   TestRootMetadata/test_rootLocation
> === RUN   TestRootMetadata/test_propagation_directives
> === RUN   TestRootMetadata/test_multi-repository
> --- PASS: TestRootMetadata (0.01s)
>     --- PASS: TestRootMetadata/test_SetExpires (0.00s)
>     --- PASS: TestRootMetadata/test_addRole (0.00s)
>     --- PASS: TestRootMetadata/test_SchemaVersion (0.00s)
>     --- PASS: TestRootMetadata/test_GetPrincipals (0.00s)
>     --- PASS: TestRootMetadata/test_rootLocation (0.00s)
>     --- PASS: TestRootMetadata/test_propagation_directives (0.00s)
>     --- PASS: TestRootMetadata/test_multi-repository (0.00s)
> === RUN   TestRootMetadataWithSSHKey
> --- PASS: TestRootMetadataWithSSHKey (0.02s)
> === RUN   TestAddRootPrincipal
> === RUN   TestAddRootPrincipal/with_root_role_already_in_metadata
> === RUN   TestAddRootPrincipal/without_root_role_already_in_metadata
> === RUN   TestAddRootPrincipal/with_person
> --- PASS: TestAddRootPrincipal (0.03s)
>     --- PASS: TestAddRootPrincipal/with_root_role_already_in_metadata (0.01s)
>     --- PASS: TestAddRootPrincipal/without_root_role_already_in_metadata 
> (0.00s)
>     --- PASS: TestAddRootPrincipal/with_person (0.01s)
> === RUN   TestDeleteRootPrincipal
> --- PASS: TestDeleteRootPrincipal (0.02s)
> === RUN   TestAddPrimaryRuleFilePrincipal
> --- PASS: TestAddPrimaryRuleFilePrincipal (0.01s)
> === RUN   TestDeletePrimaryRuleFilePrincipal
> --- PASS: TestDeletePrimaryRuleFilePrincipal (0.03s)
> === RUN   TestAddGitHubAppPrincipal
> --- PASS: TestAddGitHubAppPrincipal (0.02s)
> === RUN   TestDeleteGitHubAppPrincipal
>     root_test.go:380: failed to run command /usr/bin/ssh-keygen -m rfc4716 -e 
> -f 
> /build/reproducible-path/gittuf-0.9.0/debian/gotmp/TestDeleteGitHubAppPrincipal-72cca03496422cdfe1c00ba5e299d18ca383b16041a7b28a5fca5e853b8f065a:
>  exit status 255 ssh-keygen: 
> /build/reproducible-path/gittuf-0.9.0/debian/gotmp/TestDeleteGitHubAppPrincipal-72cca03496422cdfe1c00ba5e299d18ca383b16041a7b28a5fca5e853b8f065a:
>  No such file or directory
> 
>         
> --- FAIL: TestDeleteGitHubAppPrincipal (0.01s)
> === RUN   TestEnableGitHubAppApprovals
> --- PASS: TestEnableGitHubAppApprovals (0.01s)
> === RUN   TestDisableGitHubAppApprovals
> --- PASS: TestDisableGitHubAppApprovals (0.01s)
> === RUN   TestUpdateAndGetRootThreshold
> --- PASS: TestUpdateAndGetRootThreshold (0.01s)
> === RUN   TestUpdateAndGetPrimaryRuleFileThreshold
> --- PASS: TestUpdateAndGetPrimaryRuleFileThreshold (0.03s)
> === RUN   TestGetRootPrincipals
> === RUN   TestGetRootPrincipals/root_role_exists
> === RUN   TestGetRootPrincipals/root_role_does_not_exist
> === RUN   TestGetRootPrincipals/with_person
> --- PASS: TestGetRootPrincipals (0.02s)
>     --- PASS: TestGetRootPrincipals/root_role_exists (0.01s)
>     --- PASS: TestGetRootPrincipals/root_role_does_not_exist (0.00s)
>     --- PASS: TestGetRootPrincipals/with_person (0.01s)
> === RUN   TestGetPrimaryRuleFilePrincipals
> === RUN   TestGetPrimaryRuleFilePrincipals/targets_role_exists
> === RUN   TestGetPrimaryRuleFilePrincipals/targets_role_does_not_exist
> === RUN   TestGetPrimaryRuleFilePrincipals/with_person
> --- PASS: TestGetPrimaryRuleFilePrincipals (0.02s)
>     --- PASS: TestGetPrimaryRuleFilePrincipals/targets_role_exists (0.01s)
>     --- PASS: TestGetPrimaryRuleFilePrincipals/targets_role_does_not_exist 
> (0.00s)
>     --- PASS: TestGetPrimaryRuleFilePrincipals/with_person (0.01s)
> === RUN   TestGetGitHubAppPrincipals
> === RUN   TestGetGitHubAppPrincipals/role_exists
> === RUN   TestGetGitHubAppPrincipals/role_does_not_exist
> --- PASS: TestGetGitHubAppPrincipals (0.02s)
>     --- PASS: TestGetGitHubAppPrincipals/role_exists (0.01s)
>     --- PASS: TestGetGitHubAppPrincipals/role_does_not_exist (0.00s)
> === RUN   TestIsGitHubAppApprovalTrusted
>     root_test.go:581: failed to run command /usr/bin/ssh-keygen -m rfc4716 -e 
> -f 
> /build/reproducible-path/gittuf-0.9.0/debian/gotmp/TestIsGitHubAppApprovalTrusted-72cca03496422cdfe1c00ba5e299d18ca383b16041a7b28a5fca5e853b8f065a:
>  exit status 255 ssh-keygen: 
> /build/reproducible-path/gittuf-0.9.0/debian/gotmp/TestIsGitHubAppApprovalTrusted-72cca03496422cdfe1c00ba5e299d18ca383b16041a7b28a5fca5e853b8f065a:
>  No such file or directory
> 
>         
> --- FAIL: TestIsGitHubAppApprovalTrusted (0.01s)
> === RUN   TestGlobalRules
>     root_test.go:596: failed to run command /usr/bin/ssh-keygen -m rfc4716 -e 
> -f 
> /build/reproducible-path/gittuf-0.9.0/debian/gotmp/TestGlobalRules-72cca03496422cdfe1c00ba5e299d18ca383b16041a7b28a5fca5e853b8f065a:
>  exit status 255 ssh-keygen: 
> /build/reproducible-path/gittuf-0.9.0/debian/gotmp/TestGlobalRules-72cca03496422cdfe1c00ba5e299d18ca383b16041a7b28a5fca5e853b8f065a:
>  No such file or directory
> 
>         
> --- FAIL: TestGlobalRules (0.01s)
> === RUN   TestTargetsMetadataAndDelegations
> === RUN   TestTargetsMetadataAndDelegations/test_SetExpires
> === RUN   TestTargetsMetadataAndDelegations/test_Validate
> === NAME  TestTargetsMetadataAndDelegations
>     targets_test.go:36: failed to run command /usr/bin/ssh-keygen -m rfc4716 
> -e -f 
> /build/reproducible-path/gittuf-0.9.0/debian/gotmp/TestTargetsMetadataAndDelegations-72cca03496422cdfe1c00ba5e299d18ca383b16041a7b28a5fca5e853b8f065a:
>  exit status 255 ssh-keygen: 
> /build/reproducible-path/gittuf-0.9.0/debian/gotmp/TestTargetsMetadataAndDelegations-72cca03496422cdfe1c00ba5e299d18ca383b16041a7b28a5fca5e853b8f065a:
>  No such file or directory
> 
>         
> --- FAIL: TestTargetsMetadataAndDelegations (0.01s)
>     --- PASS: TestTargetsMetadataAndDelegations/test_SetExpires (0.00s)
>     --- PASS: TestTargetsMetadataAndDelegations/test_Validate (0.00s)
> === RUN   TestDelegation
> === RUN   TestDelegation/matches
> === RUN   TestDelegation/threshold
> === RUN   TestDelegation/terminating
> === RUN   TestDelegation/protected_namespaces
> === RUN   TestDelegation/principal_IDs
> --- PASS: TestDelegation (0.00s)
>     --- PASS: TestDelegation/matches (0.00s)
>     --- PASS: TestDelegation/threshold (0.00s)
>     --- PASS: TestDelegation/terminating (0.00s)
>     --- PASS: TestDelegation/protected_namespaces (0.00s)
>     --- PASS: TestDelegation/principal_IDs (0.00s)
> === RUN   TestAddRuleAndGetRules
> --- PASS: TestAddRuleAndGetRules (0.01s)
> === RUN   TestUpdateDelegation
> --- PASS: TestUpdateDelegation (0.01s)
> === RUN   TestReorderRules
> --- PASS: TestReorderRules (0.02s)
> === RUN   TestRemoveRule
> --- PASS: TestRemoveRule (0.01s)
> === RUN   TestGetPrincipals
> --- PASS: TestGetPrincipals (0.01s)
> === RUN   TestAllowRule
> --- PASS: TestAllowRule (0.00s)
> === RUN   TestPerson
> --- PASS: TestPerson (0.01s)
> FAIL
> FAIL  github.com/gittuf/gittuf/internal/tuf/v02       0.377s
> ?     github.com/gittuf/gittuf/internal/version       [no test files]
> FAIL
> dh_auto_test: error: cd _build && go test -vet=off -v -p 8 
> github.com/gittuf/gittuf github.com/gittuf/gittuf/experimental/gittuf 
> github.com/gittuf/gittuf/experimental/gittuf/options/github 
> github.com/gittuf/gittuf/experimental/gittuf/options/root 
> github.com/gittuf/gittuf/experimental/gittuf/options/rsl 
> github.com/gittuf/gittuf/experimental/gittuf/options/verify 
> github.com/gittuf/gittuf/experimental/gittuf/options/verifymergeable 
> github.com/gittuf/gittuf/internal/attestations 
> github.com/gittuf/gittuf/internal/attestations/authorizations 
> github.com/gittuf/gittuf/internal/attestations/authorizations/v01 
> github.com/gittuf/gittuf/internal/attestations/authorizations/v02 
> github.com/gittuf/gittuf/internal/attestations/common 
> github.com/gittuf/gittuf/internal/attestations/github 
> github.com/gittuf/gittuf/internal/attestations/github/v01 
> github.com/gittuf/gittuf/internal/cache 
> github.com/gittuf/gittuf/internal/cmd/addhooks 
> github.com/gittuf/gittuf/internal/cmd/attest 
> github.com/gittuf/gittuf/internal/cmd/attest/authorize 
> github.com/gittuf/gittuf/internal/cmd/clone 
> github.com/gittuf/gittuf/internal/cmd/common 
> github.com/gittuf/gittuf/internal/cmd/dev 
> github.com/gittuf/gittuf/internal/cmd/dev/addgithubapproval 
> github.com/gittuf/gittuf/internal/cmd/dev/attestgithub 
> github.com/gittuf/gittuf/internal/cmd/dev/authorize 
> github.com/gittuf/gittuf/internal/cmd/dev/dismissgithubapproval 
> github.com/gittuf/gittuf/internal/cmd/dev/populatecache 
> github.com/gittuf/gittuf/internal/cmd/dev/rslrecordat 
> github.com/gittuf/gittuf/internal/cmd/policy 
> github.com/gittuf/gittuf/internal/cmd/policy/addkey 
> github.com/gittuf/gittuf/internal/cmd/policy/addperson 
> github.com/gittuf/gittuf/internal/cmd/policy/addrule 
> github.com/gittuf/gittuf/internal/cmd/policy/init 
> github.com/gittuf/gittuf/internal/cmd/policy/listprincipals 
> github.com/gittuf/gittuf/internal/cmd/policy/listrules 
> github.com/gittuf/gittuf/internal/cmd/policy/persistent 
> github.com/gittuf/gittuf/internal/cmd/policy/removekey 
> github.com/gittuf/gittuf/internal/cmd/policy/removeperson 
> github.com/gittuf/gittuf/internal/cmd/policy/removerule 
> github.com/gittuf/gittuf/internal/cmd/policy/reorderrules 
> github.com/gittuf/gittuf/internal/cmd/policy/sign 
> github.com/gittuf/gittuf/internal/cmd/policy/tui 
> github.com/gittuf/gittuf/internal/cmd/policy/updaterule 
> github.com/gittuf/gittuf/internal/cmd/profile 
> github.com/gittuf/gittuf/internal/cmd/root 
> github.com/gittuf/gittuf/internal/cmd/rsl 
> github.com/gittuf/gittuf/internal/cmd/rsl/annotate 
> github.com/gittuf/gittuf/internal/cmd/rsl/log 
> github.com/gittuf/gittuf/internal/cmd/rsl/propagate 
> github.com/gittuf/gittuf/internal/cmd/rsl/record 
> github.com/gittuf/gittuf/internal/cmd/rsl/remote 
> github.com/gittuf/gittuf/internal/cmd/rsl/remote/check 
> github.com/gittuf/gittuf/internal/cmd/rsl/remote/pull 
> github.com/gittuf/gittuf/internal/cmd/rsl/remote/push 
> github.com/gittuf/gittuf/internal/cmd/rsl/remote/reconcile 
> github.com/gittuf/gittuf/internal/cmd/rsl/skiprewritten 
> github.com/gittuf/gittuf/internal/cmd/trust 
> github.com/gittuf/gittuf/internal/cmd/trust/addgithubapp 
> github.com/gittuf/gittuf/internal/cmd/trust/addglobalrule 
> github.com/gittuf/gittuf/internal/cmd/trust/addpolicykey 
> github.com/gittuf/gittuf/internal/cmd/trust/addpropagationdirective 
> github.com/gittuf/gittuf/internal/cmd/trust/addrootkey 
> github.com/gittuf/gittuf/internal/cmd/trust/disablegithubappapprovals 
> github.com/gittuf/gittuf/internal/cmd/trust/enablegithubappapprovals 
> github.com/gittuf/gittuf/internal/cmd/trust/init 
> github.com/gittuf/gittuf/internal/cmd/trust/persistent 
> github.com/gittuf/gittuf/internal/cmd/trust/removegithubapp 
> github.com/gittuf/gittuf/internal/cmd/trust/removeglobalrule 
> github.com/gittuf/gittuf/internal/cmd/trust/removepolicykey 
> github.com/gittuf/gittuf/internal/cmd/trust/removepropagationdirective 
> github.com/gittuf/gittuf/internal/cmd/trust/removerootkey 
> github.com/gittuf/gittuf/internal/cmd/trust/setrepositorylocation 
> github.com/gittuf/gittuf/internal/cmd/trust/sign 
> github.com/gittuf/gittuf/internal/cmd/trust/updatepolicythreshold 
> github.com/gittuf/gittuf/internal/cmd/trust/updaterootthreshold 
> github.com/gittuf/gittuf/internal/cmd/trustpolicy/apply 
> github.com/gittuf/gittuf/internal/cmd/trustpolicy/discard 
> github.com/gittuf/gittuf/internal/cmd/trustpolicy/remote 
> github.com/gittuf/gittuf/internal/cmd/trustpolicy/remote/pull 
> github.com/gittuf/gittuf/internal/cmd/trustpolicy/remote/push 
> github.com/gittuf/gittuf/internal/cmd/verifymergeable 
> github.com/gittuf/gittuf/internal/cmd/verifyref 
> github.com/gittuf/gittuf/internal/cmd/version 
> github.com/gittuf/gittuf/internal/common 
> github.com/gittuf/gittuf/internal/common/set 
> github.com/gittuf/gittuf/internal/dev 
> github.com/gittuf/gittuf/internal/display 
> github.com/gittuf/gittuf/internal/git-remote-gittuf 
> github.com/gittuf/gittuf/internal/gitinterface 
> github.com/gittuf/gittuf/internal/policy 
> github.com/gittuf/gittuf/internal/rsl 
> github.com/gittuf/gittuf/internal/signerverifier/common 
> github.com/gittuf/gittuf/internal/signerverifier/dsse 
> github.com/gittuf/gittuf/internal/signerverifier/gpg 
> github.com/gittuf/gittuf/internal/signerverifier/sigstore 
> github.com/gittuf/gittuf/internal/signerverifier/sigstore/options/signer 
> github.com/gittuf/gittuf/internal/signerverifier/sigstore/options/verifier 
> github.com/gittuf/gittuf/internal/signerverifier/ssh 
> github.com/gittuf/gittuf/internal/testartifacts 
> github.com/gittuf/gittuf/internal/third_party/go-securesystemslib/dsse 
> github.com/gittuf/gittuf/internal/tuf 
> github.com/gittuf/gittuf/internal/tuf/migrations 
> github.com/gittuf/gittuf/internal/tuf/v01 
> github.com/gittuf/gittuf/internal/tuf/v02 
> github.com/gittuf/gittuf/internal/version returned exit code 1


The full build log is available from:
http://qa-logs.debian.net/2025/04/28/gittuf_0.9.0-5_unstable.log

You can find other build logs (including successful ones) in:
http://qa-logs.debian.net/2025/04/28/

All bugs filed during this archive rebuild are listed at:
https://bugs.debian.org/cgi-bin/pkgreport.cgi?tag=ftbfs-20250428;users=lu...@debian.org
or:
https://udd.debian.org/bugs/?release=na&merged=ign&fnewerval=7&flastmodval=7&fusertag=only&fusertagtag=ftbfs-20250428&fusertaguser=lu...@debian.org&allbugs=1&cseverity=1&ctags=1&caffected=1#results

A list of current common problems and possible solutions is available at
http://wiki.debian.org/qa.debian.org/FTBFS . You're welcome to contribute!

If you reassign this bug to another package, please mark it as 'affects'-ing
this package. See https://www.debian.org/Bugs/server-control#affects

If you fail to reproduce this, please provide a build log and diff it with mine
so that we can identify if something relevant changed in the meantime.

Reply via email to