dependabot[bot]
8fdd79ff33
build(deps-dev): bump @types/node ( #370 )
...
Bumps the minor-and-patch group in /frontend with 1 update: [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node ).
Updates `@types/node` from 25.3.2 to 25.3.3
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases )
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node )
---
updated-dependencies:
- dependency-name: "@types/node"
dependency-version: 25.3.3
dependency-type: direct:development
update-type: version-update:semver-patch
dependency-group: minor-and-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-03-02 12:56:16 +01:00
Daniel Volz
cd8263e607
fix: align desktop intake labels and form field pairing ( #368 )
...
* fix: align desktop intake labels and form field pairing
* chore: align frontend lockfile version and include remaining local changes
v1.18.1
2026-03-02 01:33:28 +01:00
Daniel Volz
e6a097d81d
chore: release v1.18.1 ( #366 )
2026-03-02 01:16:08 +01:00
Daniel Volz
f4723c6f99
chore: release v1.18.0 ( #365 )
v1.18.0
2026-03-02 00:41:20 +01:00
github-actions[bot]
aad6b143ef
chore: update test count badges [skip ci]
2026-03-01 23:27:20 +00:00
Daniel Volz
da004b5c3e
fix: align frontend tube/liquid container semantics ( #364 )
...
* fix: align frontend tube/liquid container semantics
* test(frontend): fix PR #364 CI regressions
2026-03-02 00:23:32 +01:00
github-actions[bot]
cd18581bdd
chore: update test count badges [skip ci]
2026-03-01 23:07:44 +00:00
Daniel Volz
508bc764d5
fix: align backend amount stock and reminder semantics ( #362 )
...
* fix: align backend amount stock and reminder semantics
* test: align settings email route success mock with SMTP delivery checks
2026-03-02 00:02:26 +01:00
Daniel Volz
9e8a6315e7
fix: keep topical stock non-depleting in planner flows ( #359 )
...
* fix: keep topical stock non-depleting in planner and reports
* test: stabilize e2e selectors for updated medication semantics
* fix(backend): add missing planner translation keys
2026-02-28 23:36:52 +01:00
github-actions[bot]
8efd99d738
chore: update test count badges [skip ci]
2026-02-28 22:28:41 +00:00
github-actions[bot]
dc98dfda44
chore: update test count badges [skip ci]
2026-02-28 22:25:25 +00:00
Daniel Volz
8aaeca6b26
feat: simplify tube stock editing UI ( #357 )
...
* feat: add package amount persistence and backend route support
* test: align backend test schemas with medication metadata fields
* fix(backend): restore intake usage normalizer for planner endpoint
* fix(backend): keep export typing compatible before liquid-unit stack step
* feat: simplify tube stock editing in desktop and mobile forms
2026-02-28 23:24:48 +01:00
Daniel Volz
7accb2aad6
feat: persist package amount metadata in backend ( #356 )
...
* feat: add package amount persistence and backend route support
* test: align backend test schemas with medication metadata fields
* fix(backend): restore intake usage normalizer for planner endpoint
* fix(backend): keep export typing compatible before liquid-unit stack step
2026-02-28 23:21:13 +01:00
Daniel Volz
2f2edfa479
chore: release v1.17.1 ( #351 )
v1.17.1
2026-02-27 01:53:09 +01:00
Daniel Volz
b009d9e158
fix: frontend nginx restart loop from invalid log_format scope ( #350 )
...
* fix: place nginx log_format in valid context
* fix: unblock required checks for nginx hotfix
* fix: restore mandatory doku files in nginx hotfix pr
2026-02-27 01:47:59 +01:00
dependabot[bot]
8e4cb5dcd4
build(deps): bump minimatch from 10.2.2 to 10.2.4 in /backend ( #338 )
...
Bumps [minimatch](https://github.com/isaacs/minimatch ) from 10.2.2 to 10.2.4.
- [Changelog](https://github.com/isaacs/minimatch/blob/main/changelog.md )
- [Commits](https://github.com/isaacs/minimatch/compare/v10.2.2...v10.2.4 )
---
updated-dependencies:
- dependency-name: minimatch
dependency-version: 10.2.4
dependency-type: indirect
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-02-27 01:29:04 +01:00
dependabot[bot]
7f26dca7a7
build(deps-dev): bump @types/node ( #343 )
...
Bumps the minor-and-patch group in /backend with 1 update: [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node ).
Updates `@types/node` from 25.3.0 to 25.3.2
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases )
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node )
---
updated-dependencies:
- dependency-name: "@types/node"
dependency-version: 25.3.2
dependency-type: direct:development
update-type: version-update:semver-patch
dependency-group: minor-and-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-02-27 01:29:00 +01:00
dependabot[bot]
46d768dd4e
build(deps): bump the minor-and-patch group in /frontend with 5 updates ( #344 )
...
Bumps the minor-and-patch group in /frontend with 5 updates:
| Package | From | To |
| --- | --- | --- |
| [react](https://github.com/facebook/react/tree/HEAD/packages/react ) | `19.2.0` | `19.2.4` |
| [@types/react](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react ) | `19.2.2` | `19.2.14` |
| [react-dom](https://github.com/facebook/react/tree/HEAD/packages/react-dom ) | `19.2.0` | `19.2.4` |
| [@types/react-dom](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react-dom ) | `19.2.2` | `19.2.3` |
| [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node ) | `25.3.0` | `25.3.2` |
Updates `react` from 19.2.0 to 19.2.4
- [Release notes](https://github.com/facebook/react/releases )
- [Changelog](https://github.com/facebook/react/blob/main/CHANGELOG.md )
- [Commits](https://github.com/facebook/react/commits/v19.2.4/packages/react )
Updates `@types/react` from 19.2.2 to 19.2.14
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases )
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react )
Updates `react-dom` from 19.2.0 to 19.2.4
- [Release notes](https://github.com/facebook/react/releases )
- [Changelog](https://github.com/facebook/react/blob/main/CHANGELOG.md )
- [Commits](https://github.com/facebook/react/commits/v19.2.4/packages/react-dom )
Updates `@types/react-dom` from 19.2.2 to 19.2.3
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases )
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react-dom )
Updates `@types/node` from 25.3.0 to 25.3.2
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases )
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node )
Updates `@types/react` from 19.2.2 to 19.2.14
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases )
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react )
Updates `@types/react-dom` from 19.2.2 to 19.2.3
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases )
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react-dom )
---
updated-dependencies:
- dependency-name: react
dependency-version: 19.2.4
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: minor-and-patch
- dependency-name: "@types/react"
dependency-version: 19.2.14
dependency-type: direct:development
update-type: version-update:semver-patch
dependency-group: minor-and-patch
- dependency-name: react-dom
dependency-version: 19.2.4
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: minor-and-patch
- dependency-name: "@types/react-dom"
dependency-version: 19.2.3
dependency-type: direct:development
update-type: version-update:semver-patch
dependency-group: minor-and-patch
- dependency-name: "@types/node"
dependency-version: 25.3.2
dependency-type: direct:development
update-type: version-update:semver-patch
dependency-group: minor-and-patch
- dependency-name: "@types/react"
dependency-version: 19.2.14
dependency-type: direct:development
update-type: version-update:semver-patch
dependency-group: minor-and-patch
- dependency-name: "@types/react-dom"
dependency-version: 19.2.3
dependency-type: direct:development
update-type: version-update:semver-patch
dependency-group: minor-and-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-02-27 01:28:55 +01:00
dependabot[bot]
c62b6d7893
build(deps): bump actions/upload-artifact from 6 to 7 ( #345 )
...
Bumps [actions/upload-artifact](https://github.com/actions/upload-artifact ) from 6 to 7.
- [Release notes](https://github.com/actions/upload-artifact/releases )
- [Commits](https://github.com/actions/upload-artifact/compare/v6...v7 )
---
updated-dependencies:
- dependency-name: actions/upload-artifact
dependency-version: '7'
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-02-27 01:28:51 +01:00
dependabot[bot]
1668eb935c
build(deps-dev): bump @types/supertest from 6.0.3 to 7.2.0 in /backend ( #346 )
...
Bumps [@types/supertest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/supertest ) from 6.0.3 to 7.2.0.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases )
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/supertest )
---
updated-dependencies:
- dependency-name: "@types/supertest"
dependency-version: 7.2.0
dependency-type: direct:development
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-02-27 01:28:47 +01:00
Daniel Volz
1ea4919323
chore: release v1.17.0 ( #348 )
v1.17.0
2026-02-27 01:19:39 +01:00
Daniel Volz
ba0ab672b9
docs: update memory and report for multi-pr delivery ( #347 )
2026-02-27 01:15:40 +01:00
Daniel Volz
57c998ba09
chore: update dependabot automation and agent governance ( #341 )
...
* chore: update dependabot automation and agent governance
* chore: trigger required CI checks for governance PR
2026-02-27 01:11:05 +01:00
Daniel Volz
cc22f80209
fix: align frontend types and tests for react 19 ( #339 )
2026-02-27 01:01:48 +01:00
Daniel Volz
6b27d234d9
chore: reduce polling log noise across backend and nginx ( #336 )
2026-02-27 00:54:21 +01:00
Daniel Volz
19ba4bb7d2
feat: add FORM_LOGIN_ENABLED auth toggle ( #334 )
2026-02-27 00:48:58 +01:00
dependabot[bot]
8b3901c1e1
build(deps): bump rollup from 4.53.5 to 4.59.0 in /frontend ( #333 )
...
Bumps [rollup](https://github.com/rollup/rollup ) from 4.53.5 to 4.59.0.
- [Release notes](https://github.com/rollup/rollup/releases )
- [Changelog](https://github.com/rollup/rollup/blob/master/CHANGELOG.md )
- [Commits](https://github.com/rollup/rollup/compare/v4.53.5...v4.59.0 )
---
updated-dependencies:
- dependency-name: rollup
dependency-version: 4.59.0
dependency-type: indirect
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-02-26 06:29:10 +01:00
dependabot[bot]
fd7cc56bb7
build(deps): bump rollup from 4.57.1 to 4.59.0 in /backend ( #332 )
...
Bumps [rollup](https://github.com/rollup/rollup ) from 4.57.1 to 4.59.0.
- [Release notes](https://github.com/rollup/rollup/releases )
- [Changelog](https://github.com/rollup/rollup/blob/master/CHANGELOG.md )
- [Commits](https://github.com/rollup/rollup/compare/v4.57.1...v4.59.0 )
---
updated-dependencies:
- dependency-name: rollup
dependency-version: 4.59.0
dependency-type: indirect
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-02-26 06:28:51 +01:00
Daniel Volz
aabe58d05f
ci: add path filters to Docker build workflow
...
Only build Docker images when backend/, frontend/, docker-compose,
or the workflow itself changes. Prevents unnecessary image builds
for docs-only or config-only changes on main.
Note: paths filter is not evaluated for tag pushes (GitHub Actions
behavior), so release tags always trigger a full build.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com >
2026-02-26 00:22:08 +01:00
Daniel Volz
b35101d339
docs: update AI model credits to Claude Opus 4.6 and GPT-5.3 Codex
...
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com >
2026-02-26 00:16:10 +01:00
dependabot[bot]
8420c74a55
build(deps): bump bn.js from 4.12.2 to 4.12.3 in /backend ( #330 )
...
Bumps [bn.js](https://github.com/indutny/bn.js ) from 4.12.2 to 4.12.3.
- [Release notes](https://github.com/indutny/bn.js/releases )
- [Changelog](https://github.com/indutny/bn.js/blob/master/CHANGELOG.md )
- [Commits](https://github.com/indutny/bn.js/compare/v4.12.2...v4.12.3 )
---
updated-dependencies:
- dependency-name: bn.js
dependency-version: 4.12.3
dependency-type: indirect
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-02-26 00:14:46 +01:00
Daniel Volz
872b63f665
docs: add explicit scope rule to release-manager agent
...
Prevent release-manager from chaining unrequested steps.
If user asks for PR+merge only, do not also start a release.
If user asks for release only, do not also create PRs.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com >
2026-02-26 00:03:07 +01:00
github-actions[bot]
f599ac45ab
chore: update test count badges [skip ci]
2026-02-25 22:57:37 +00:00
Daniel Volz
f36d56c523
test: update modal tests to reflect global ESC handler
...
Remove ESC-keydown tests from ProfileModal.test.tsx since the
useEscapeKey hook was removed from individual modals. Escape key
handling is now centralized in App.tsx's global handler, making
per-component ESC tests invalid (the component no longer responds
to ESC in isolation).
2026-02-25 23:54:21 +01:00
Daniel Volz
f0496e8ca5
fix: remove duplicate ESC handlers causing double history.back()
...
AboutModal, ProfileModal, and ShareDialog each had their own
useEscapeKey hook AND were handled by the global ESC handler in
App.tsx. When ESC was pressed, both fired synchronously, calling
history.back() twice — navigating past the current page instead
of just closing the modal.
Removed the per-modal useEscapeKey calls since the global handler
in App.tsx already manages ESC priority for all modals.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com >
2026-02-25 23:50:07 +01:00
Daniel Volz
de300ad919
chore: release v1.16.1 ( #326 )
v1.16.1
2026-02-25 22:26:19 +01:00
Daniel Volz
06bf608913
fix: support core shoutrrr provider schemes ( #317 )
...
* fix: support core shoutrrr provider schemes
* fix(ci): resolve backend lint failures and harden shoutrrr URL handling
* fix(codeql): mark validated gotify target as intentional external call
* fix(codeql): route gotify scheme through validated webhook sink
2026-02-25 22:22:50 +01:00
Daniel Volz
a47bde0956
chore: sync lockfile package versions to 1.16.0 ( #325 )
...
* chore: sync lockfile package versions to 1.16.0
* fix(ci): align medications route formatting with biome
2026-02-25 22:15:43 +01:00
Daniel Volz
d02f16af3a
fix: stabilize e2e CI and local playwright workers ( #321 )
...
* fix: stabilize e2e CI and local playwright workers
* fix(ci): apply biome formatting and import order for frontend build
2026-02-25 22:15:38 +01:00
Daniel Volz
dbdf3b61cb
fix: harden reminder scheduler dedupe and boundary timing ( #319 )
...
* fix: harden reminder scheduler dedupe and boundary timing
* fix(ci): align medications route formatting with biome
2026-02-25 22:15:35 +01:00
Daniel Volz
aa29d1c699
docs: align agent instructions and README guidance ( #323 )
2026-02-25 21:35:35 +01:00
Daniel Volz
bfc9aaaa6d
fix: tag releases on merged PR commit ( #315 )
2026-02-25 21:35:32 +01:00
Copilot
2a9ca39c24
Allow medications with only a generic name (no commercial name required) ( #311 )
...
* Initial plan
* feat: allow generic name only for medications (frontend changes)
- Add getMedDisplayName() helper for consistent name display
- Update validation to require either commercial or generic name
- Update all display locations to use display name fallback
- Add i18n keys for nameOrGenericRequired in en.json and de.json
- Remove required attribute from commercial name field
- Update FIELD_LIMITS.name.min from 1 to 0
Co-authored-by: DanielVolz <3275994+DanielVolz@users.noreply.github.com >
* feat: allow generic name only for medications (backend changes)
- Update Zod schema to allow empty name with cross-field refinement
- Update reminder scheduler to use name || genericName for display
- Update planner routes to match medications by display name
- Update existing tests to match new validation behavior
Co-authored-by: DanielVolz <3275994+DanielVolz@users.noreply.github.com >
* fix: update placeholder text and fix FIELD_LIMITS test
- Remove "(optional)" from generic name placeholder in en/de
- Update types.test.ts to expect FIELD_LIMITS.name.min = 0
Co-authored-by: DanielVolz <3275994+DanielVolz@users.noreply.github.com >
---------
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com >
Co-authored-by: DanielVolz <3275994+DanielVolz@users.noreply.github.com >
2026-02-25 21:29:25 +01:00
dependabot[bot]
691550fb33
build(deps): bump bn.js from 4.12.2 to 4.12.3 in /backend ( #305 )
...
Bumps [bn.js](https://github.com/indutny/bn.js ) from 4.12.2 to 4.12.3.
- [Release notes](https://github.com/indutny/bn.js/releases )
- [Changelog](https://github.com/indutny/bn.js/blob/master/CHANGELOG.md )
- [Commits](https://github.com/indutny/bn.js/compare/v4.12.2...v4.12.3 )
---
updated-dependencies:
- dependency-name: bn.js
dependency-version: 4.12.3
dependency-type: indirect
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-02-25 21:29:13 +01:00
Daniel Volz
0fded0d42f
chore: release v1.16.0 ( #308 )
v1.16.0
2026-02-25 00:19:56 +01:00
Daniel Volz
badee6067c
chore: add .claude/ to gitignore ( #307 )
2026-02-25 00:09:20 +01:00
Daniel Volz
6161c14a7b
fix: logo optimization, deprecated meta tag, and clipboard copy fallback ( #306 )
...
- Replace 2 MB favicon.svg (base64-PNG-in-SVG) with optimized 43 KB app-logo.png (256x256)
- Update AppHeader and AboutModal references to use new logo
- Remove SVG favicon link from index.html (PNG/ICO favicons remain)
- Fix deprecated apple-mobile-web-app-capable → mobile-web-app-capable meta tag
- Add clipboard copy fallback for non-secure contexts (LAN IP over HTTP)
Closes #303
2026-02-25 00:04:35 +01:00
Daniel Volz
96b2a0c96f
feat: image upload optimization with sharp, thumbnails, and structured error codes ( #304 )
...
- Add sharp for server-side image processing (WebP conversion + thumbnails)
- New shared backend utility for image upload, optimization, and cleanup
- Return structured error codes from upload endpoints (IMAGE_TOO_LARGE, INVALID_TYPE, etc.)
- Frontend error code mapping with i18n support (EN + DE)
- MedicationAvatar tries thumbnail first, falls back to full image
- Error display in MedicationsPage, MobileEditModal, and Auth avatar upload
Closes #302
2026-02-24 23:52:59 +01:00
Daniel Volz
7a32b2045e
fix: run one stock reminder catch-up after restart ( #300 )
...
* fix: run one stock reminder catch-up after restart
* fix(backend): persist scheduler stock-check timestamp in reminder state
2026-02-24 21:21:34 +01:00
Daniel Volz
26475fd3d0
feat: add correlation ids and tighten frontend security headers ( #299 )
...
* feat: add correlation ids and tighten frontend security headers
* docs: remove obsolete project setup guide
* fix: restore health config flags for compatibility
* test(frontend): align auth fetch assertions with correlation headers
2026-02-24 21:21:30 +01:00