Skip to content

RFC 088: Record the barcode sequence service#158

Open
kenoir wants to merge 1 commit into
mainfrom
rk/rfc-088-barcode
Open

RFC 088: Record the barcode sequence service#158
kenoir wants to merge 1 commit into
mainfrom
rk/rfc-088-barcode

Conversation

@kenoir

@kenoir kenoir commented Jun 26, 2026

Copy link
Copy Markdown
Contributor

Preview (rendered on this branch): RFC 088 README · openapi.md

Amends the merged RFC 088 to record how new patrons get a library-card barcode, replacing the now-superseded description.

Why

RFC 088's Open Question 4 (Barcode and role) still described the old approach: new users received the bare Auth0 id as their barcode, with an open task to "verify the 24-character barcode format". That approach was replaced during prototyping. New patrons are now minted a numeric, sequential card number by a small sequence service (a DynamoDB atomic counter) at first login, which keeps the printed and scanned card representation numeric, as it is today. The RFC was therefore wrong on this point; this corrects it and resolves the open question down to the parts that genuinely remain open.

What changed

  • Open Question 4 rewritten to record the numeric-sequence decision. What stays open is narrowed to agreeing the concrete seed, prefix and width with the LMS migration and the card supplier, confirming reader support (scanners and self-issue kiosks), plus the existing patron-group-to-role confirmation. The stale "24-character barcode format" concern is removed.
  • Login and enrichment gains a short note that /m2m/enrich mints the barcode when the FOLIO record has none (allocate-once, best-effort, retried on next login rather than blocking it).
  • API surface gains a row for POST /m2m/sequences/{name}/next.
  • OpenAPI spec carries the new route in openapi.yaml, with openapi.md regenerated via render_docs.py. All referenced components already existed, so the addition is self-contained.

The RFC index Last modified date is synced via the generator script. No other RFCs are affected.

Scope note

The sequence service is a sub-feature of the v2 identity API, not a standalone service: it shares the m2m Lambda, API Gateway and authorizer, lives inside the folio-api spec, and has no consumers outside the identity API. So it belongs in RFC 088 rather than a new RFC.

🤖 Generated with Claude Code

Resolves Open Question 4's barcode direction. New patrons are now minted a
numeric, sequential card number by a sequence service (a DynamoDB atomic
counter) at first login, instead of receiving the bare Auth0 id. This updates
the question to record that decision and narrow what remains open to the
concrete seed/prefix/width and reader-support sign-off, removing the stale
24-character-format concern.

Also notes the barcode minting in the login-and-enrichment flow, adds the
POST /m2m/sequences/{name}/next route to the API surface, and carries it into
the OpenAPI spec (openapi.yaml + regenerated openapi.md).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@kenoir kenoir requested review from a team as code owners June 26, 2026 07:09
@kenoir kenoir changed the title RFC 088: record the barcode sequence service RFC 088: Record the barcode sequence service Jun 29, 2026
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.

1 participant