Repository navigation
feat: add -exact flag for exact title/subtitle filter matching - #161
Merged
Merged
Conversation
Substring filters cannot uniquely select an entry whose title is contained in another entry's title or subtitle (e.g. "AWS" vs "AWS Foo"), which makes scripted lookups like the env command fail with "multiple entries match filter". -exact switches the filter comparison to case-insensitive equality on the same filter fields.
wpfleger96
added a commit
to wpfleger96/shell-configs
that referenced
this pull request
Sep 22, 2026
The aws Terraform workspace has only ever been planned and applied by CI — first via the static-key GitHub secrets, then via the OIDC roles — so no loader exported AWS credentials for local runs, and a local `terraform plan` of the workspace had nothing to authenticate with. This adds the terraform service account's key pair (`AWS_ACCESS_KEY_ID` / `AWS_SECRET_ACCESS_KEY`, from the `Terraform Access Key` / `Terraform Secret Key` fields of the Enpass **AWS** entry) to `load-tf-secrets` in the personal profile, so it fully provisions a shell for local plans of the aws workspace the same way it already does for the cloudflare and homelab ones (#156 closed the same gap for cloudflare). All three AWS-entry lookups now pass `-exact`: other vault entries contain "AWS" in their titles, so the default substring filter is ambiguous and fails with `multiple entries match filter`. `-exact` requires an enpass-cli build with [hazcod/enpass-cli#161](hazcod/enpass-cli#161) — currently the fork's `dev` build; machines on the stock v1.12.0 release will fail these three lookups with `flag provided but not defined: -exact` until that lands in a pinned release (they already fail today with the ambiguity error, so nothing regresses).
Owner
|
Thank you @wpfleger96 ! |
wpfleger96
added a commit
to wpfleger96/enpass-cli
that referenced
this pull request
Sep 27, 2026
* wpfleger96/fix/windows-release-build: fix(release): build Windows targets with mingw and add Windows clipboard Update Go base image version to 1.27 (hazcod#162) build(deps): bump golang.org/x/crypto from 0.51.0 to 0.52.0 (hazcod#160) feat: add -exact flag for exact title/subtitle filter matching (hazcod#161)
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Filters substring-match against title/subtitle today, so an entry titled
AWScan never be uniquely selected once another entry likeAWS Workexists in the vault — scriptedenvlookups then fail withmultiple entries match filterno matter how the filter is refined. I hit this with my own vault and I think the cleanest way out is an opt-in flag.-exactswitches the filter comparison to case-insensitive equality on the same filter fields (title/subtitle) instead of substring matching. The default behavior is unchanged, and it composes with-andthe same way substring filters do. It applies to every filter-taking command (list,show,pass,copy,env, ...).Also added a test next to the existing OR/AND filter tests and a row in the README flags table.