Conversation
There was a problem hiding this comment.
Pull request overview
This PR updates the TOTP setup flow to stop relying on a third-party QR code service and instead render the QR code image generated internally by the server.
Changes:
- Generate a TOTP QR code SVG server-side (as a
data:URI) and pass it to the view. - Update the TOTP setup Pug template to use the internally generated QR image.
- Add the
qrdependency and update dependency metadata/lockfile.
Reviewed changes
Copilot reviewed 3 out of 4 changed files in this pull request and generated 2 comments.
| File | Description |
|---|---|
controllers/user.js |
Generates an SVG QR code data URI for the TOTP URI and passes it to the renderer. |
views/account/totp-setup.pug |
Renders the QR image from qrImage instead of a remote QR service URL. |
package.json |
Adds qr; also changes Mocha specifier to a dist-tag (next). |
package-lock.json |
Locks qr addition but also includes broader dependency churn. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 3 out of 4 changed files in this pull request and generated no new comments.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 3 out of 4 changed files in this pull request and generated no new comments.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 4 out of 5 changed files in this pull request and generated 1 comment.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| "overrideReasons": { | ||
| "encoding-sniffer": "cheerio", | ||
| "fetch-blob": "@googleapis/drive", | ||
| "formdata-node": "@langchain/groq, @langchain/community" | ||
| }, |
There was a problem hiding this comment.
overrideReasons is not a standard npm field and (unless there is custom tooling consuming it) it will be ignored by npm. If this metadata is needed, consider moving it to a documented location (e.g., CONTRIBUTING/README) or adding tooling that enforces/uses it; otherwise, please remove it to avoid confusion.
| "overrideReasons": { | |
| "encoding-sniffer": "cheerio", | |
| "fetch-blob": "@googleapis/drive", | |
| "formdata-node": "@langchain/groq, @langchain/community" | |
| }, |
Checklist
--no-verifywas not used for the commit(s)npm run lintpassed locally without any errorsnpm testpassed locally without any errorsnpm run test:e2e:replaypassed locally without any errorsnpm run test:e2e:custom -- --project=chromium-nokey-livepassed locally without any errorsDescription
Screenshots of UI changes (browser) and logs/test results (console, terminal, shell, cmd)