Compare commits
2 Commits
e7974cf4c0
...
787d3cf694
| Author | SHA1 | Date |
|---|---|---|
|
|
787d3cf694 | |
|
|
64ab37ae39 |
|
|
@ -0,0 +1,25 @@
|
||||||
|
# Weekly dependency guard (QA-B0-02 durable fix): dependency rot must surface
|
||||||
|
# as a red scheduled run, not wait for the next manual audit. Fails on any
|
||||||
|
# high+ vulnerability in production deps; prints the outdated report either way.
|
||||||
|
name: deps-audit
|
||||||
|
on:
|
||||||
|
schedule:
|
||||||
|
- cron: '0 11 * * 1' # Mondays 11:00 UTC (~06:00 America/Chicago)
|
||||||
|
workflow_dispatch:
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
audit:
|
||||||
|
runs-on: docker
|
||||||
|
container:
|
||||||
|
image: node:22-bookworm
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v4
|
||||||
|
|
||||||
|
- name: Install (lockfile-exact)
|
||||||
|
run: npm ci
|
||||||
|
|
||||||
|
- name: Audit production deps (fail on high or critical)
|
||||||
|
run: npm audit --omit=dev --audit-level=high
|
||||||
|
|
||||||
|
- name: Outdated report (informational)
|
||||||
|
run: npm outdated || true
|
||||||
|
|
@ -0,0 +1,45 @@
|
||||||
|
# Production Deploy Checklist
|
||||||
|
|
||||||
|
The environment/config items that are **not** enforced by code or CI and must be
|
||||||
|
verified on the production instance itself. Each has a boot-time warning or a
|
||||||
|
QA-plan pointer; this list is the single place they live (previously they only
|
||||||
|
existed in session notes).
|
||||||
|
|
||||||
|
## Required environment (production)
|
||||||
|
|
||||||
|
| Variable | Why | Symptom if missing |
|
||||||
|
| ---------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------- |
|
||||||
|
| `TOKEN_ENCRYPTION_KEY` | At-rest secrets (SimpleFIN token, SMTP/OIDC secrets, login IP/UA) otherwise fall back to a key stored **inside the database** — anyone with DB/backup read access can decrypt. On first boot with the key set, stored `v2:` ciphertexts migrate to env-keyed `e2:`. | Boot warning: `TOKEN_ENCRYPTION_KEY is not set in production` |
|
||||||
|
| `WEBAUTHN_RP_ID` | Passkeys bind cryptographically to this hostname; the `localhost` default silently breaks all passkey sign-ins behind a real domain. Bare hostname, no scheme/port (e.g. `bills.example.com`). Changing it later invalidates registered keys. | Boot warning: `WEBAUTHN_RP_ID is not set in production` |
|
||||||
|
| `WEBAUTHN_ORIGIN` (optional) | Pin the exact expected origin for WebAuthn ceremonies when the app is served from a non-default origin. When unset, the API origin plus any request origin whose hostname equals the RP ID is accepted. | Passkey enroll/sign-in fails origin verification |
|
||||||
|
|
||||||
|
## One-time settings (Admin panel / DB)
|
||||||
|
|
||||||
|
- [ ] **Turn OFF `simplefin_debug_logging`** on the production instance
|
||||||
|
(Admin → bank sync config). It is a debugging aid; leaving it on logs
|
||||||
|
more sync detail than production needs.
|
||||||
|
|
||||||
|
## Build/runtime infrastructure
|
||||||
|
|
||||||
|
- [ ] **`cdn.sheetjs.com` egress** — the lockfile pins `xlsx` to the official
|
||||||
|
SheetJS dist tarball (the npm registry line is abandoned with unfixed
|
||||||
|
high CVEs). CI runners and Docker builds must be able to reach it for
|
||||||
|
`npm ci`.
|
||||||
|
- [ ] **Node version alignment** — `package.json` engines, the Dockerfile base
|
||||||
|
image, and the CI image must agree (all `node:22` today). Bump all three
|
||||||
|
together.
|
||||||
|
- [ ] Volumes/permissions/migrations: handled by `docker-entrypoint.sh`
|
||||||
|
(`chmod 700` data dirs, non-root `bill` user, `RUN_DB_MIGRATIONS=true`)
|
||||||
|
— covered by QA batch B16.
|
||||||
|
|
||||||
|
## Standing dependency guard
|
||||||
|
|
||||||
|
- `renovate.json` is in the repo — enable Renovate on the Forgejo instance for
|
||||||
|
grouped weekly update PRs.
|
||||||
|
- Until then, `.forgejo/workflows/deps-audit.yml` runs weekly: it fails on any
|
||||||
|
high+ vulnerability (`npm audit --omit=dev --audit-level=high`) and prints
|
||||||
|
`npm outdated`, so dependency rot surfaces as a red scheduled run instead of
|
||||||
|
waiting for the next manual audit.
|
||||||
|
- Deferred upgrade, tracked: **TypeScript 7** typechecks this codebase clean but
|
||||||
|
`typescript-eslint` (peer `<6.1.0`) cannot parse under it yet — revisit when
|
||||||
|
typescript-eslint ships TS 7 support.
|
||||||
|
|
@ -6,7 +6,7 @@ button | Print / Save PDF
|
||||||
button | Refresh
|
button | Refresh
|
||||||
button | Reset filters
|
button | Reset filters
|
||||||
button | Search billsCtrl K
|
button | Search billsCtrl K
|
||||||
button | Tracker#
|
button | Tracker
|
||||||
input:checkbox | (unnamed)
|
input:checkbox | (unnamed)
|
||||||
input:number | (unnamed)
|
input:number | (unnamed)
|
||||||
link | About
|
link | About
|
||||||
|
|
@ -17,7 +17,7 @@ link | Release Notes
|
||||||
link | Skip to main content
|
link | Skip to main content
|
||||||
select | # months# months# months
|
select | # months# months# months
|
||||||
select | # months# months# months# months
|
select | # months# months# months# months
|
||||||
select | All bills<script>alert(#)</script>Adobe Creative CloudAmazon
|
select | All billsAdobe Creative CloudAmazon PrimeAMC A-ListApple iCl
|
||||||
select | All categoriesBeautyCoffeeCredit CardsDining OutEntertainmen
|
select | All categoriesBeautyCoffeeCredit CardsDining OutEntertainmen
|
||||||
select | JanuaryFebruaryMarchAprilMayJuneJulyAugustSeptemberOctoberNo
|
select | JanuaryFebruaryMarchAprilMayJuneJulyAugustSeptemberOctoberNo
|
||||||
select | LineArea
|
select | LineArea
|
||||||
|
|
@ -2,7 +2,7 @@ button | Current theme: Dark. Click to change.
|
||||||
button | Open Tanstack query devtools
|
button | Open Tanstack query devtools
|
||||||
button | Open user menu
|
button | Open user menu
|
||||||
button | Search billsCtrl K
|
button | Search billsCtrl K
|
||||||
button | Tracker#
|
button | Tracker
|
||||||
link | About
|
link | About
|
||||||
link | Analytics
|
link | Analytics
|
||||||
link | Bill Tracker
|
link | Bill Tracker
|
||||||
|
|
@ -1,13 +1,11 @@
|
||||||
button | #st bucket
|
button | #st bucket
|
||||||
button | #th bucket
|
button | #th bucket
|
||||||
button | <script>alert(#)</script>
|
|
||||||
button | AMC A-List
|
button | AMC A-List
|
||||||
button | Add Bill
|
button | Add Bill
|
||||||
button | Adobe Creative Cloud
|
button | Adobe Creative Cloud
|
||||||
button | Amazon Prime
|
button | Amazon Prime
|
||||||
button | Apple iCloud+
|
button | Apple iCloud+
|
||||||
button | Autopay
|
button | Autopay
|
||||||
button | Big
|
|
||||||
button | Cadence
|
button | Cadence
|
||||||
button | Capital One Quicksilver
|
button | Capital One Quicksilver
|
||||||
button | Car Insurance
|
button | Car Insurance
|
||||||
|
|
@ -33,8 +31,6 @@ button | Homeowners Insurance
|
||||||
button | Inactive
|
button | Inactive
|
||||||
button | Internet Provider
|
button | Internet Provider
|
||||||
button | Mortgage
|
button | Mortgage
|
||||||
button | Move <script>alert(#)</script> down
|
|
||||||
button | Move <script>alert(#)</script> up
|
|
||||||
button | Move AMC A-List down
|
button | Move AMC A-List down
|
||||||
button | Move AMC A-List up
|
button | Move AMC A-List up
|
||||||
button | Move Adobe Creative Cloud down
|
button | Move Adobe Creative Cloud down
|
||||||
|
|
@ -43,8 +39,6 @@ button | Move Amazon Prime down
|
||||||
button | Move Amazon Prime up
|
button | Move Amazon Prime up
|
||||||
button | Move Apple iCloud+ down
|
button | Move Apple iCloud+ down
|
||||||
button | Move Apple iCloud+ up
|
button | Move Apple iCloud+ up
|
||||||
button | Move Big down
|
|
||||||
button | Move Big up
|
|
||||||
button | Move Capital One Quicksilver down
|
button | Move Capital One Quicksilver down
|
||||||
button | Move Capital One Quicksilver up
|
button | Move Capital One Quicksilver up
|
||||||
button | Move Car Insurance down
|
button | Move Car Insurance down
|
||||||
|
|
@ -83,8 +77,6 @@ button | Move Student Loan down
|
||||||
button | Move Student Loan up
|
button | Move Student Loan up
|
||||||
button | Move Trash Service down
|
button | Move Trash Service down
|
||||||
button | Move Trash Service up
|
button | Move Trash Service up
|
||||||
button | Move Zero down
|
|
||||||
button | Move Zero up
|
|
||||||
button | Netflix
|
button | Netflix
|
||||||
button | Open Tanstack query devtools
|
button | Open Tanstack query devtools
|
||||||
button | Open user menu
|
button | Open user menu
|
||||||
|
|
@ -92,9 +84,8 @@ button | Search & filters# of # shown · no filters
|
||||||
button | Search billsCtrl K
|
button | Search billsCtrl K
|
||||||
button | Spotify
|
button | Spotify
|
||||||
button | Student Loan
|
button | Student Loan
|
||||||
button | Tracker#
|
button | Tracker
|
||||||
button | Trash Service
|
button | Trash Service
|
||||||
button | Zero
|
|
||||||
combobox | Filter by billing schedule
|
combobox | Filter by billing schedule
|
||||||
combobox | Filter by category
|
combobox | Filter by category
|
||||||
combobox | Use a bill template
|
combobox | Use a bill template
|
||||||
|
|
@ -7,7 +7,7 @@ button | Refresh calendar
|
||||||
button | Search billsCtrl K
|
button | Search billsCtrl K
|
||||||
button | Subscribe Calendar
|
button | Subscribe Calendar
|
||||||
button | Today
|
button | Today
|
||||||
button | Tracker#
|
button | Tracker
|
||||||
button | View #/#/#
|
button | View #/#/#
|
||||||
link | About
|
link | About
|
||||||
link | Analytics
|
link | Analytics
|
||||||
|
|
@ -52,7 +52,7 @@ button | Rename Subscriptions
|
||||||
button | Rename Utilities
|
button | Rename Utilities
|
||||||
button | Search billsCtrl K
|
button | Search billsCtrl K
|
||||||
button | Show Empty
|
button | Show Empty
|
||||||
button | Tracker#
|
button | Tracker
|
||||||
input:text | New category name...
|
input:text | New category name...
|
||||||
link | About
|
link | About
|
||||||
link | Analytics
|
link | Analytics
|
||||||
|
|
@ -6,7 +6,7 @@ button | ImportBring in existing data
|
||||||
button | Open Tanstack query devtools
|
button | Open Tanstack query devtools
|
||||||
button | Open user menu
|
button | Open user menu
|
||||||
button | Search billsCtrl K
|
button | Search billsCtrl K
|
||||||
button | Tracker#
|
button | Tracker
|
||||||
button | TransactionsReview & match
|
button | TransactionsReview & match
|
||||||
link | About
|
link | About
|
||||||
link | Analytics
|
link | Analytics
|
||||||
|
|
@ -5,7 +5,7 @@ button | Open Tanstack query devtools
|
||||||
button | Open user menu
|
button | Open user menu
|
||||||
button | Refresh
|
button | Refresh
|
||||||
button | Search billsCtrl K
|
button | Search billsCtrl K
|
||||||
button | Tracker#
|
button | Tracker
|
||||||
link | About
|
link | About
|
||||||
link | Analytics
|
link | Analytics
|
||||||
link | Bill Tracker
|
link | Bill Tracker
|
||||||
|
|
@ -7,7 +7,7 @@ button | Print
|
||||||
button | Required Minimum: help
|
button | Required Minimum: help
|
||||||
button | Search billsCtrl K
|
button | Search billsCtrl K
|
||||||
button | Time Savings: help
|
button | Time Savings: help
|
||||||
button | Tracker#
|
button | Tracker
|
||||||
button | ▲
|
button | ▲
|
||||||
button | ▼
|
button | ▼
|
||||||
combobox | Capital One Quicksilver$#
|
combobox | Capital One Quicksilver$#
|
||||||
|
|
@ -1,14 +1,14 @@
|
||||||
button | Add key
|
button | Add key
|
||||||
button | Change Password
|
button | Change Password
|
||||||
button | Current theme: Dark. Click to change.
|
button | Current theme: Dark. Click to change.
|
||||||
button | Last LoginJul # # #:# PMDesktop · Chrome on Linux#
|
button | Last LoginJul # # #:# AMDesktop · Chrome on Linux#
|
||||||
button | Open Tanstack query devtools
|
button | Open Tanstack query devtools
|
||||||
button | Open user menu
|
button | Open user menu
|
||||||
button | Save Privacy Settings
|
button | Save Privacy Settings
|
||||||
button | Save Profile
|
button | Save Profile
|
||||||
button | Search billsCtrl K
|
button | Search billsCtrl K
|
||||||
button | Set up
|
button | Set up
|
||||||
button | Tracker#
|
button | Tracker
|
||||||
input:password | (unnamed)
|
input:password | (unnamed)
|
||||||
input:text | Display name
|
input:text | Display name
|
||||||
link | About
|
link | About
|
||||||
|
|
@ -15,7 +15,7 @@ button | Search billsCtrl K
|
||||||
button | Send test
|
button | Send test
|
||||||
button | System
|
button | System
|
||||||
button | Theme: help
|
button | Theme: help
|
||||||
button | Tracker#
|
button | Tracker
|
||||||
combobox | MM/DD/YYYY
|
combobox | MM/DD/YYYY
|
||||||
combobox | Sunday
|
combobox | Sunday
|
||||||
combobox | Tracker
|
combobox | Tracker
|
||||||
|
|
@ -26,7 +26,7 @@ button | Restore Ramsey Order
|
||||||
button | Save Order
|
button | Save Order
|
||||||
button | Search billsCtrl K
|
button | Search billsCtrl K
|
||||||
button | Toggle plan details
|
button | Toggle plan details
|
||||||
button | Tracker#
|
button | Tracker
|
||||||
input:number | #
|
input:number | #
|
||||||
link | About
|
link | About
|
||||||
link | Analytics
|
link | Analytics
|
||||||
|
|
@ -17,7 +17,7 @@ button | Previous month
|
||||||
button | Search billsCtrl K
|
button | Search billsCtrl K
|
||||||
button | Shopping
|
button | Shopping
|
||||||
button | Shopping$# transactionavg $#/mo$# left
|
button | Shopping$# transactionavg $#/mo$# left
|
||||||
button | Tracker#
|
button | Tracker
|
||||||
button | Uncategorized
|
button | Uncategorized
|
||||||
button | Uncategorized$# transaction
|
button | Uncategorized$# transaction
|
||||||
button | View
|
button | View
|
||||||
|
|
@ -40,7 +40,7 @@ button | Search subscriptions# of # shown · no filters
|
||||||
button | Search transactionsall bank transactions · no filters
|
button | Search transactionsall bank transactions · no filters
|
||||||
button | Spotify
|
button | Spotify
|
||||||
button | Track Subscription
|
button | Track Subscription
|
||||||
button | Tracker#
|
button | Tracker
|
||||||
button | View recommendation details
|
button | View recommendation details
|
||||||
input:search | Search by merchant, description, or payee…
|
input:search | Search by merchant, description, or payee…
|
||||||
input:search | Search recommendations…
|
input:search | Search recommendations…
|
||||||
|
|
@ -1,15 +1,11 @@
|
||||||
button | Current theme: Dark. Click to change.
|
button | Current theme: Dark. Click to change.
|
||||||
button | Edit
|
button | Edit
|
||||||
button | Move <script>alert(#)</script> down
|
|
||||||
button | Move <script>alert(#)</script> up
|
|
||||||
button | Move AMC A-List down
|
button | Move AMC A-List down
|
||||||
button | Move AMC A-List up
|
button | Move AMC A-List up
|
||||||
button | Move Adobe Creative Cloud down
|
button | Move Adobe Creative Cloud down
|
||||||
button | Move Adobe Creative Cloud up
|
button | Move Adobe Creative Cloud up
|
||||||
button | Move Apple iCloud+ down
|
button | Move Apple iCloud+ down
|
||||||
button | Move Apple iCloud+ up
|
button | Move Apple iCloud+ up
|
||||||
button | Move Big down
|
|
||||||
button | Move Big up
|
|
||||||
button | Move Capital One Quicksilver down
|
button | Move Capital One Quicksilver down
|
||||||
button | Move Capital One Quicksilver up
|
button | Move Capital One Quicksilver up
|
||||||
button | Move Car Insurance down
|
button | Move Car Insurance down
|
||||||
|
|
@ -46,8 +42,6 @@ button | Move Student Loan down
|
||||||
button | Move Student Loan up
|
button | Move Student Loan up
|
||||||
button | Move Trash Service down
|
button | Move Trash Service down
|
||||||
button | Move Trash Service up
|
button | Move Trash Service up
|
||||||
button | Move Zero down
|
|
||||||
button | Move Zero up
|
|
||||||
button | Next month
|
button | Next month
|
||||||
button | Open Tanstack query devtools
|
button | Open Tanstack query devtools
|
||||||
button | Open user menu
|
button | Open user menu
|
||||||
|
|
@ -55,7 +49,7 @@ button | Previous month
|
||||||
button | Print / PDF
|
button | Print / PDF
|
||||||
button | Search billsCtrl K
|
button | Search billsCtrl K
|
||||||
button | Today
|
button | Today
|
||||||
button | Tracker#
|
button | Tracker
|
||||||
link | About
|
link | About
|
||||||
link | Analytics
|
link | Analytics
|
||||||
link | Bill Tracker
|
link | Bill Tracker
|
||||||
|
|
@ -12,11 +12,9 @@ button | Current theme: Dark. Click to change.
|
||||||
button | Debt
|
button | Debt
|
||||||
button | Due
|
button | Due
|
||||||
button | Due Soon, click to mark paid
|
button | Due Soon, click to mark paid
|
||||||
button | Edit <script>alert(#)</script>
|
|
||||||
button | Edit AMC A-List
|
button | Edit AMC A-List
|
||||||
button | Edit Adobe Creative Cloud
|
button | Edit Adobe Creative Cloud
|
||||||
button | Edit Apple iCloud+
|
button | Edit Apple iCloud+
|
||||||
button | Edit Big
|
|
||||||
button | Edit Capital One Quicksilver
|
button | Edit Capital One Quicksilver
|
||||||
button | Edit Car Insurance
|
button | Edit Car Insurance
|
||||||
button | Edit Car Payment
|
button | Edit Car Payment
|
||||||
|
|
@ -35,25 +33,18 @@ button | Edit Netflix
|
||||||
button | Edit Spotify
|
button | Edit Spotify
|
||||||
button | Edit Student Loan
|
button | Edit Student Loan
|
||||||
button | Edit Trash Service
|
button | Edit Trash Service
|
||||||
button | Edit Zero
|
|
||||||
button | Edit monthly starting amounts
|
button | Edit monthly starting amounts
|
||||||
button | Expected
|
button | Expected
|
||||||
button | Export or print this month
|
button | Export or print this month
|
||||||
button | Hide
|
button | Hide
|
||||||
button | Hide overdue panel
|
|
||||||
button | Keyboard shortcuts
|
button | Keyboard shortcuts
|
||||||
button | Last Month
|
button | Last Month
|
||||||
button | Late, click to mark paid
|
|
||||||
button | Move <script>alert(#)</script> down
|
|
||||||
button | Move <script>alert(#)</script> up
|
|
||||||
button | Move AMC A-List down
|
button | Move AMC A-List down
|
||||||
button | Move AMC A-List up
|
button | Move AMC A-List up
|
||||||
button | Move Adobe Creative Cloud down
|
button | Move Adobe Creative Cloud down
|
||||||
button | Move Adobe Creative Cloud up
|
button | Move Adobe Creative Cloud up
|
||||||
button | Move Apple iCloud+ down
|
button | Move Apple iCloud+ down
|
||||||
button | Move Apple iCloud+ up
|
button | Move Apple iCloud+ up
|
||||||
button | Move Big down
|
|
||||||
button | Move Big up
|
|
||||||
button | Move Capital One Quicksilver down
|
button | Move Capital One Quicksilver down
|
||||||
button | Move Capital One Quicksilver up
|
button | Move Capital One Quicksilver up
|
||||||
button | Move Car Insurance down
|
button | Move Car Insurance down
|
||||||
|
|
@ -90,8 +81,6 @@ button | Move Student Loan down
|
||||||
button | Move Student Loan up
|
button | Move Student Loan up
|
||||||
button | Move Trash Service down
|
button | Move Trash Service down
|
||||||
button | Move Trash Service up
|
button | Move Trash Service up
|
||||||
button | Move Zero down
|
|
||||||
button | Move Zero up
|
|
||||||
button | Next month
|
button | Next month
|
||||||
button | Open Tanstack query devtools
|
button | Open Tanstack query devtools
|
||||||
button | Open calendar for this month
|
button | Open calendar for this month
|
||||||
|
|
@ -101,25 +90,19 @@ button | Paid
|
||||||
button | Paid Date
|
button | Paid Date
|
||||||
button | Paid, click to mark unpaid
|
button | Paid, click to mark unpaid
|
||||||
button | Pay all due (#)
|
button | Pay all due (#)
|
||||||
button | Pay now
|
|
||||||
button | Pin Due
|
button | Pin Due
|
||||||
button | Previous month
|
button | Previous month
|
||||||
button | Review overdue bills# items ready for pay, skip, or snooze$#
|
|
||||||
button | Search & sort# of # shown · no filters
|
button | Search & sort# of # shown · no filters
|
||||||
button | Search billsCtrl K
|
button | Search billsCtrl K
|
||||||
button | Skip
|
|
||||||
button | Snooze
|
|
||||||
button | Status
|
button | Status
|
||||||
button | Today
|
button | Today
|
||||||
button | Tracker#
|
button | Tracker
|
||||||
button | Unpaid
|
button | Unpaid
|
||||||
button | Upcoming, click to mark paid
|
button | Upcoming, click to mark paid
|
||||||
button | —
|
button | —
|
||||||
checkbox | Select <script>alert(#)</script>
|
|
||||||
checkbox | Select AMC A-List
|
checkbox | Select AMC A-List
|
||||||
checkbox | Select Adobe Creative Cloud
|
checkbox | Select Adobe Creative Cloud
|
||||||
checkbox | Select Apple iCloud+
|
checkbox | Select Apple iCloud+
|
||||||
checkbox | Select Big
|
|
||||||
checkbox | Select Capital One Quicksilver
|
checkbox | Select Capital One Quicksilver
|
||||||
checkbox | Select Car Insurance
|
checkbox | Select Car Insurance
|
||||||
checkbox | Select Car Payment
|
checkbox | Select Car Payment
|
||||||
|
|
@ -138,13 +121,10 @@ checkbox | Select Netflix
|
||||||
checkbox | Select Spotify
|
checkbox | Select Spotify
|
||||||
checkbox | Select Student Loan
|
checkbox | Select Student Loan
|
||||||
checkbox | Select Trash Service
|
checkbox | Select Trash Service
|
||||||
checkbox | Select Zero
|
|
||||||
combobox | Filter by billing schedule
|
combobox | Filter by billing schedule
|
||||||
combobox | Filter by category
|
combobox | Filter by category
|
||||||
combobox | Sort by
|
combobox | Sort by
|
||||||
input:number | <script>alert(#)</script> payment amount
|
|
||||||
input:number | Apple iCloud+ payment amount
|
input:number | Apple iCloud+ payment amount
|
||||||
input:number | Big payment amount
|
|
||||||
input:number | Capital One Quicksilver payment amount
|
input:number | Capital One Quicksilver payment amount
|
||||||
input:number | Car Payment payment amount
|
input:number | Car Payment payment amount
|
||||||
input:number | Cell Phone payment amount
|
input:number | Cell Phone payment amount
|
||||||
|
|
@ -51,6 +51,8 @@ module.exports = defineConfig({
|
||||||
// probe-only: enables WebAuthn for the seeded user mid-test, which would
|
// probe-only: enables WebAuthn for the seeded user mid-test, which would
|
||||||
// race the password logins in these parallel UI projects
|
// race the password logins in these parallel UI projects
|
||||||
/webauthn\.probe\.spec\.js/,
|
/webauthn\.probe\.spec\.js/,
|
||||||
|
// census-project-only: snapshots depend on pristine seed data
|
||||||
|
/control-census\.spec\.js/,
|
||||||
],
|
],
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
|
@ -64,6 +66,8 @@ module.exports = defineConfig({
|
||||||
// probe-only: enables WebAuthn for the seeded user mid-test, which would
|
// probe-only: enables WebAuthn for the seeded user mid-test, which would
|
||||||
// race the password logins in these parallel UI projects
|
// race the password logins in these parallel UI projects
|
||||||
/webauthn\.probe\.spec\.js/,
|
/webauthn\.probe\.spec\.js/,
|
||||||
|
// census-project-only: snapshots depend on pristine seed data
|
||||||
|
/control-census\.spec\.js/,
|
||||||
],
|
],
|
||||||
},
|
},
|
||||||
// Find-mode diagnostics (adversarial API probe + authenticated a11y scan).
|
// Find-mode diagnostics (adversarial API probe + authenticated a11y scan).
|
||||||
|
|
@ -71,12 +75,23 @@ module.exports = defineConfig({
|
||||||
// so open findings here don't turn the default suite red. Run on demand:
|
// so open findings here don't turn the default suite red. Run on demand:
|
||||||
// `npm run test:e2e:probe`. Fold a spec into the default projects once its
|
// `npm run test:e2e:probe`. Fold a spec into the default projects once its
|
||||||
// findings are fixed (it becomes a passing regression guard).
|
// findings are fixed (it becomes a passing regression guard).
|
||||||
|
// Control census (Appendix E automation): read-only snapshots of every
|
||||||
|
// page's interactive controls. Own project ordered BEFORE the probe so the
|
||||||
|
// snapshots always see pristine seed data — api.probe/webauthn mutate the
|
||||||
|
// scratch DB (adversarial bills, passkey enrollment) and would otherwise
|
||||||
|
// make the baselines depend on spec ordering.
|
||||||
{
|
{
|
||||||
name: 'probe',
|
name: 'census',
|
||||||
testMatch: /(api\.probe|a11y\.authed|webauthn\.probe|control-census)\.spec\.js/,
|
testMatch: /control-census\.spec\.js/,
|
||||||
use: { ...devices['Desktop Chrome'] },
|
use: { ...devices['Desktop Chrome'] },
|
||||||
dependencies: ['setup'],
|
dependencies: ['setup'],
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
name: 'probe',
|
||||||
|
testMatch: /(api\.probe|a11y\.authed|webauthn\.probe)\.spec\.js/,
|
||||||
|
use: { ...devices['Desktop Chrome'] },
|
||||||
|
dependencies: ['setup', 'census'],
|
||||||
|
},
|
||||||
// Cross-browser (WebAuthn/Select behavior differs) — enable when ready:
|
// Cross-browser (WebAuthn/Select behavior differs) — enable when ready:
|
||||||
// { name: 'firefox', use: { ...devices['Desktop Firefox'] }, dependencies: ['setup'], testIgnore: /auth\.setup\.js/ },
|
// { name: 'firefox', use: { ...devices['Desktop Firefox'] }, dependencies: ['setup'], testIgnore: /auth\.setup\.js/ },
|
||||||
// { name: 'webkit', use: { ...devices['Desktop Safari'] }, dependencies: ['setup'], testIgnore: /auth\.setup\.js/ },
|
// { name: 'webkit', use: { ...devices['Desktop Safari'] }, dependencies: ['setup'], testIgnore: /auth\.setup\.js/ },
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,32 @@
|
||||||
|
{
|
||||||
|
"$schema": "https://docs.renovatebot.com/renovate-schema.json",
|
||||||
|
"extends": ["config:recommended"],
|
||||||
|
"timezone": "America/Chicago",
|
||||||
|
"schedule": ["before 6am on monday"],
|
||||||
|
"labels": ["dependencies"],
|
||||||
|
"rangeStrategy": "bump",
|
||||||
|
"packageRules": [
|
||||||
|
{
|
||||||
|
"description": "Group all non-major updates into one weekly PR",
|
||||||
|
"matchUpdateTypes": ["minor", "patch"],
|
||||||
|
"groupName": "non-major dependencies"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"description": "Majors stay separate — each needs its own verification pass (see docs/QA_PLAN.md B0 dependency recon)",
|
||||||
|
"matchUpdateTypes": ["major"],
|
||||||
|
"dependencyDashboardApproval": true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"description": "xlsx is pinned to the official SheetJS CDN tarball (npm line is abandoned with unfixed CVEs) — do not touch",
|
||||||
|
"matchPackageNames": ["xlsx"],
|
||||||
|
"enabled": false
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"description": "typescript is capped at 6.x until typescript-eslint supports TS 7 (peer <6.1.0)",
|
||||||
|
"matchPackageNames": ["typescript"],
|
||||||
|
"allowedVersions": "<7.0.0"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"vulnerabilityAlerts": { "enabled": true },
|
||||||
|
"osvVulnerabilityAlerts": true
|
||||||
|
}
|
||||||
Loading…
Reference in New Issue