domain: Anchor mint/displace vocabulary for password-reset confirmations in the glossary #82
Labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
rosa/vernier#82
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Split out of #79, which resolved the authorization-code claim/redeem/consume drift; the reviews of PR #76 noted the same kind of glossary gap here.
Location: password-reset confirmation doc comments, port docs, and conformance-test names across the domain port, service, adapters, and test suites
Severity: Code health — ubiquitous-language gap
Problem
The password-reset confirmation flow speaks a consistent two-term vocabulary that the glossary never anchors:
Unlike #79 this is not drift — usage is already consistent across the port, service, Postgres adapter, mocks, and test suites — but neither term has a CONTEXT.md entry, and CONTEXT.md has no Confirmation entry at all. New code (or reviews) have no written anchor to check against, which is exactly how #79's "claim" happened.
Suggested fix
A small
/domain-modelingpass:No behavior changes — documentation, naming, and glossary only.
Agent Brief
Category: enhancement
Summary: Anchor Confirmation, mint, and displace in the CONTEXT.md glossary, then sweep for stray synonyms
Current behavior:
The code already speaks a consistent vocabulary that the glossary never anchors:
reset_mint_displaces_prior_reset_only).CONTEXT.md has no Confirmation entry and mentions neither verb. The
### Authorizationsection's Authorization Code entry (which anchors consumes) shows the house style: bold the verb inline within the owning entry.Desired behavior:
CONTEXT.md's glossary defines Confirmation and anchors both verbs, so future code and reviews have a written reference — the same protection #79 added for the authorization-code vocabulary.
EmailConfirmationorPasswordReset(theConfirmationActionenum) — plus details and an expiry.Key interfaces:
## Languageglossary — follow the existing entry format (**Term**:under a###section heading, related verbs bolded inline, cross-references to other entries where helpful)Confirmation/ConfirmationAction/ConfirmationId/ConfirmationVerifierHashin the domain models — the entry should describe this shape behaviorally, not restate the structcreate_password_reset_confirmation) and its conformance suite — the doc comments there are the reference wording for the displacement ruleAcceptance criteria:
cargobuild output is identical in function, and thecimise task passesOut of scope:
create_password_reset_confirmationstaying "create_" in the identifier is acceptable; the sweep targets prose and test names, and identifier renames are only in scope where they are trivial and purely mechanical)Implemented on branch domain/authorization-code-vocabulary in two commits:
a3c3f1cadds a Credentials section to the CONTEXT.md glossary anchoring Confirmation, Mint (the general credential-creation verb, per the agent brief), and Displace (the user- and action-scoped replacement rule), and rewords doc comments that said a code or token "was issued" where minting was meant.225ece1retires the remaining synonyms from the API surface: the service's issue_* methods, the port's credential create_* methods, and their CreateRequest payload types are now mint_/Mint*Request, with test names and Postgres error contexts following.No behavior changes; the full ci task passes on both commits.