Skip to content

F1: Fail loud on unresolved lease:// credentials#64

Merged
Esity merged 4 commits into
mainfrom
fix/f1-lease-placeholder-fail-loud
Jul 15, 2026
Merged

F1: Fail loud on unresolved lease:// credentials#64
Esity merged 4 commits into
mainfrom
fix/f1-lease-placeholder-fail-loud

Conversation

@Esity

@Esity Esity commented Jul 15, 2026

Copy link
Copy Markdown

Summary

  • Refuse to connect when username/password still matches URI placeholder pattern
  • Raises actionable UnresolvedCredentialError naming the exact setting path
  • Bypasses dev_fallback (config error, not transient failure)

Test plan

  • bundle exec rspec — 22 examples, 0 failures
  • bundle exec rubocop — 0 offenses

…t/env URIs

When the settings resolver fails to resolve a lease://postgresql#username
(or vault:// / env://) placeholder, the literal URI string was flowing into
PG connect, producing confusing GSSAPI authentication errors. Now
legion-data validates credentials before connecting and raises
UnresolvedCredentialError with an actionable message naming the exact
setting path that needs resolution.

The error intentionally bypasses dev_fallback — a misconfigured resolver
is a config error, not a transient network failure.

Closes #63
@Esity Esity requested a review from a team as a code owner July 15, 2026 12:33
@Esity Esity self-assigned this Jul 15, 2026
@Esity Esity merged commit 9a6933a into main Jul 15, 2026
20 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

refuse to connect with unresolved lease://​/vault:// credential placeholders — fail loudly with the setting path

1 participant