Commit Graph

1605 Commits

Author SHA1 Message Date
copilot-swe-agent[bot] cd19ac661e test(subscriptions): add comprehensive API tests reaching 100% coverage
Co-authored-by: christianlouis <361235+christianlouis@users.noreply.github.com>
2026-03-08 11:54:56 +00:00
copilot-swe-agent[bot] 38ec8ec274 Initial plan 2026-03-08 11:33:48 +00:00
github-actions[bot] 1db1803e97 chore(release): update build metadata files [skip ci] 2026-03-08 11:32:59 +00:00
semantic-release b5c0d3ca88 0.92.1
Automatically generated by python-semantic-release
2026-03-08 11:32:56 +00:00
Christian Krakau-Louis 2f735f562c Merge pull request #512 from christianlouis/copilot/fix-missing-default-pipeline
fix(auth): merge branch with main v0.92.0, keep path-param regression tests
2026-03-08 12:32:37 +01:00
Christian Krakau-Louis a0c7ff6e19 Merge branch 'main' into copilot/fix-missing-default-pipeline 2026-03-08 12:23:50 +01:00
copilot-swe-agent[bot] 2d754d52ef fix(merge): resolve conflicts with main v0.92.0 keeping path-param regression tests
Co-authored-by: christianlouis <361235+christianlouis@users.noreply.github.com>
2026-03-08 11:19:22 +00:00
github-actions[bot] f03227c248 chore(release): update build metadata files [skip ci] 2026-03-08 11:14:26 +00:00
semantic-release 0f21479abc 0.92.0
Automatically generated by python-semantic-release
2026-03-08 11:14:23 +00:00
Christian Krakau-Louis 4109bf65d2 Merge pull request #509 from christianlouis/copilot/add-password-reset-functionality
fix(admin-users): restore missing @router.get decorator on get_user endpoint
2026-03-08 12:14:04 +01:00
github-actions[bot] f2d2aaa354 docs(changelog): update changelog [skip ci] 2026-03-08 11:13:43 +00:00
Christian Krakau-Louis f7c550eda7 Merge pull request #527 from christianlouis/copilot/fix-codeql-configuration-issue
ci: fix CodeQL JavaScript language identifier to match main branch config
2026-03-08 12:13:24 +01:00
copilot-swe-agent[bot] 3f8a95d808 ci: fix CodeQL javascript language identifier mismatch
Co-authored-by: christianlouis <361235+christianlouis@users.noreply.github.com>
2026-03-08 11:11:34 +00:00
copilot-swe-agent[bot] c31b72810e fix(merge): resolve tests/test_auth.py conflict keeping all tests from both branches
Co-authored-by: christianlouis <361235+christianlouis@users.noreply.github.com>
2026-03-08 11:11:21 +00:00
copilot-swe-agent[bot] 962ee09f30 Initial plan 2026-03-08 11:10:14 +00:00
copilot-swe-agent[bot] 9b8eb911c3 fix(admin-users): restore missing @router.get decorator on get_user endpoint
The @router.get("/{user_id:path}") decorator was accidentally dropped from the
get_user function when the /local/... routes were inserted above it in the
previous PR. Without the decorator the function was never registered as a GET
handler, so GET /api/admin/users/<id> matched the PUT/DELETE catch-all routes
and Starlette correctly returned 405 Method Not Allowed instead of 200/403.

Adding the decorator back restores the GET endpoint and fixes the 5 tests that
were failing with 405.

Co-authored-by: christianlouis <361235+christianlouis@users.noreply.github.com>
2026-03-08 11:07:37 +00:00
github-actions[bot] d5af0903e2 chore(release): update build metadata files [skip ci] 2026-03-08 11:02:39 +00:00
semantic-release 6c07d70d93 0.91.0
Automatically generated by python-semantic-release
2026-03-08 11:02:37 +00:00
Christian Krakau-Louis db40e85856 Merge pull request #510 from christianlouis/copilot/extend-sql-backup-restore
feat(backup): extend backup/restore to PostgreSQL and MySQL/MariaDB
2026-03-08 12:02:17 +01:00
github-actions[bot] 97616beb11 chore(release): update build metadata files [skip ci] 2026-03-08 10:58:59 +00:00
semantic-release b7bf4f352d 0.90.3
Automatically generated by python-semantic-release
2026-03-08 10:58:56 +00:00
Christian Krakau-Louis da47283e0a Merge pull request #513 from christianlouis/copilot/fix-email-template-issue
fix(email): create missing email template and decouple delivery SMTP from auth SMTP
2026-03-08 11:58:40 +01:00
github-actions[bot] 42dc335747 chore(release): update build metadata files [skip ci] 2026-03-08 10:58:35 +00:00
semantic-release 4de739c566 0.90.2
Automatically generated by python-semantic-release
2026-03-08 10:58:32 +00:00
Christian Krakau-Louis a3218583c6 Merge pull request #514 from christianlouis/copilot/update-pdfa-archival-status
fix(tasks): PDF/A archival status stuck in_progress after finalize_document_storage succeeds
2026-03-08 11:58:14 +01:00
github-actions[bot] 70e188125b chore(release): update build metadata files [skip ci] 2026-03-08 10:53:13 +00:00
semantic-release 52b3f15329 0.90.1
Automatically generated by python-semantic-release
2026-03-08 10:53:10 +00:00
Christian Krakau-Louis 7e2d392791 Merge pull request #511 from christianlouis/copilot/fix-login-button-redirect
fix(auth): prevent post-login redirect to /api/auth/whoami
2026-03-08 11:52:16 +01:00
copilot-swe-agent[bot] ff1310c23e fix(tasks): remove erroneous in_progress log that regressed finalize_document_storage status when PDF/A archival is enabled
Co-authored-by: christianlouis <361235+christianlouis@users.noreply.github.com>
2026-03-08 10:10:46 +00:00
copilot-swe-agent[bot] 58c9b5d7f0 fix(email): create missing email template and decouple email destination settings
- Create app/templates/email/default.html (fixes 'default.html not found' error)
- Add DEST_EMAIL_* settings to app/config.py (decoupled from shared EMAIL_* settings)
- Update upload_to_email task to use dest_email_* settings exclusively
- Update _should_upload_to_email() to check dest_email_* settings
- Update config validator, providers, and settings_service for dest_email_*
- Update .env.demo and docs/ConfigurationGuide.md
- Update all tests to use dest_email_* settings where appropriate"

Co-authored-by: christianlouis <361235+christianlouis@users.noreply.github.com>
2026-03-08 10:10:18 +00:00
copilot-swe-agent[bot] d36ba88de7 feat(auth): password reset, forgot username, and admin user management for local accounts
- Add /forgot-password and /forgot-username page routes and templates
- Update login page label to "Username or Email" (both already accepted by backend)
- Add "Forgot password?" and "Forgot username?" links to login page
- Add POST /api/auth/forgot-username endpoint + send_forgot_username_email() utility
- Add admin endpoints: PATCH /local/{id}, POST /local/{id}/send-password-reset, POST /local/{id}/set-password
- Update admin_users.html with Edit, Password, and Reset action buttons + modals
- Add 23 tests; fix code review issues (import style, display_name clearing behaviour)
- Update docs/API.md and docs/UserGuide.md

Co-authored-by: christianlouis <361235+christianlouis@users.noreply.github.com>
2026-03-08 10:06:08 +00:00
copilot-swe-agent[bot] 7db26f4a31 fix(auth): pass request as keyword arg in require_login to fix path-param endpoints
Co-authored-by: christianlouis <361235+christianlouis@users.noreply.github.com>
2026-03-08 10:05:50 +00:00
copilot-swe-agent[bot] a0f5ba1799 feat(backup): extend backup and restore to PostgreSQL and MySQL/MariaDB
Co-authored-by: christianlouis <361235+christianlouis@users.noreply.github.com>
2026-03-08 09:56:58 +00:00
copilot-swe-agent[bot] 9b45ba62ba Initial plan 2026-03-08 09:53:39 +00:00
copilot-swe-agent[bot] 3aa5364e0c fix(auth): return 401 for API paths in require_login to prevent wrong post-login redirect
The common.js fetch('/api/auth/whoami') probe on every page load was
overwriting the redirect_after_login session key with the API endpoint URL.
After login, users were sent to the JSON endpoint instead of the original page.

Fix: require_login now returns HTTP 401 for any /api/* path, consistent
with REST conventions, and never stores API URLs as the post-login redirect.

Co-authored-by: christianlouis <361235+christianlouis@users.noreply.github.com>
2026-03-08 09:51:23 +00:00
copilot-swe-agent[bot] 4857203d08 Initial plan 2026-03-08 09:49:29 +00:00
copilot-swe-agent[bot] d03991f7e1 Initial plan 2026-03-08 09:47:16 +00:00
copilot-swe-agent[bot] 44ea43f9cf chore: update plan to include forgot-username and login label clarification
Co-authored-by: christianlouis <361235+christianlouis@users.noreply.github.com>
2026-03-08 09:44:59 +00:00
copilot-swe-agent[bot] 33a02633b7 Initial plan 2026-03-08 09:42:28 +00:00
copilot-swe-agent[bot] 8d65f09400 Initial plan 2026-03-08 09:41:06 +00:00
copilot-swe-agent[bot] aa7d5d7c7c Initial plan 2026-03-08 09:39:11 +00:00
github-actions[bot] 0b28e33fae chore(release): update build metadata files [skip ci] 2026-03-08 09:05:43 +00:00
semantic-release 6a14a7956f 0.90.0
Automatically generated by python-semantic-release
2026-03-08 09:05:40 +00:00
Christian Krakau-Louis bd9da65511 Merge pull request #504 from christianlouis/copilot/add-watch-folder-support 2026-03-08 10:05:10 +01:00
github-actions[bot] c69dc1b8c1 chore(release): update build metadata files [skip ci] 2026-03-08 09:05:01 +00:00
semantic-release 8996715c0c 0.89.1
Automatically generated by python-semantic-release
2026-03-08 09:04:59 +00:00
Christian Krakau-Louis ada6c368e4 Merge pull request #506 from christianlouis/copilot/fix-admin-user-buttons-functionality 2026-03-08 10:04:43 +01:00
github-actions[bot] 0854e901ac chore(release): update build metadata files [skip ci] 2026-03-08 09:04:40 +00:00
semantic-release 31b4d9387b 0.89.0
Automatically generated by python-semantic-release
2026-03-08 09:04:37 +00:00
Christian Krakau-Louis 5e6f44e6bf Merge pull request #507 from christianlouis/copilot/add-backup-and-restore-functionality 2026-03-08 10:04:18 +01:00