domain: Anchor the credential vocabulary (consume, mint, displace) #84

Merged
rosa merged 2 commits from domain/authorization-code-vocabulary into main 2026-07-04 02:38:15 +00:00
Owner

Three commits that anchor the credential vocabulary in the glossary and bring the code in line with it:

  • c601f43 retires "claim" from the authorization-code vocabulary: the port doc, domain-service comments, Postgres adapter comment, and conformance behaviours now say consume, and the glossary's Authorization Code entry states the redeem/consume distinction explicitly.
  • a3c3f1c adds a Credentials section to CONTEXT.md anchoring Confirmation (the identifier + hashed-verifier credential for email confirmation and password reset), Mint (the one verb for bringing any credential into existence), and Displace (minting a reset confirmation atomically removes prior reset confirmations for that user only), and rewords doc comments that said a code or token "was issued" where minting was meant.
  • 225ece1 retires the remaining synonyms from the API surface: the service's issue_* methods, the port's credential create_* methods, and their Create*Request payload types become mint_*/Mint*Request, with test names and Postgres error contexts following. create_user and create_post keep "create" — they are not credential mints.

No behaviour changes anywhere — documentation, naming, and glossary only. The full ci task passes.

Closes #79. Closes #82.

Three commits that anchor the credential vocabulary in the glossary and bring the code in line with it: - **c601f43** retires "claim" from the authorization-code vocabulary: the port doc, domain-service comments, Postgres adapter comment, and conformance behaviours now say **consume**, and the glossary's Authorization Code entry states the redeem/consume distinction explicitly. - **a3c3f1c** adds a Credentials section to CONTEXT.md anchoring **Confirmation** (the identifier + hashed-verifier credential for email confirmation and password reset), **Mint** (the one verb for bringing any credential into existence), and **Displace** (minting a reset confirmation atomically removes prior reset confirmations for that user only), and rewords doc comments that said a code or token "was issued" where minting was meant. - **225ece1** retires the remaining synonyms from the API surface: the service's `issue_*` methods, the port's credential `create_*` methods, and their `Create*Request` payload types become `mint_*`/`Mint*Request`, with test names and Postgres error contexts following. `create_user` and `create_post` keep "create" — they are not credential mints. No behaviour changes anywhere — documentation, naming, and glossary only. The full `ci` task passes. Closes #79. Closes #82.
The password-reset confirmation flow speaks a consistent mint/displace
vocabulary that CONTEXT.md never anchored: no Confirmation entry, and
neither verb defined anywhere (issue #82, split out of #79).

Add a Credentials section to the glossary defining Confirmation, Mint
(the one verb for bringing any credential into existence), and Displace
(the user- and action-scoped replacement rule from issue #59), and
reword the doc comments that said a code or token "was issued" where
minting was meant. The Authorization Code entry now also says minted,
since issue lands on Mint's avoid list.
refactor: Rename credential creation to mint across service and port
All checks were successful
ci/woodpecker/push/test Pipeline was successful
ci/woodpecker/pr/test Pipeline was successful
225ece121c
With Mint anchored in the glossary, retire its synonyms from the API
surface: the AppService methods issue_access_token and
issue_authorization_code, the AppRepository methods create_access_token,
create_authorization_code, and create_password_reset_confirmation, and
their Create*Request payload types all become mint_*/Mint*Request. Test
names follow (issue_and_* -> mint_and_*, *_issues_* -> *_mints_*), as do
the Postgres adapter's error contexts. create_user and create_post keep
create — they are not credential mints.

No behaviour changes. Closes #82.
rosa merged commit 26de05ce04 into main 2026-07-04 02:38:15 +00:00
Sign in to join this conversation.
No reviewers
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
rosa/vernier!84
No description provided.