copilot-swe-agent[bot]
27ebbddd5f
Initial plan
2026-03-17 11:49:16 +00:00
github-actions[bot]
c79dc4abef
chore(release): update build metadata files [skip ci]
2026-03-17 11:23:09 +00:00
semantic-release
264089cce4
0.155.0
...
Automatically generated by python-semantic-release
2026-03-17 11:23:06 +00:00
Christian Krakau-Louis
30c2e9afef
Merge pull request #749 from christianlouis/copilot/implement-log-off-everywhere-functionality
...
Add dedicated Devices page, separate mobile tokens from API Tokens
2026-03-17 12:22:07 +01:00
Christian Krakau-Louis
8905031d16
Merge branch 'main' into copilot/implement-log-off-everywhere-functionality
2026-03-17 12:12:50 +01:00
copilot-swe-agent[bot]
581adf0e26
refactor(ui): simplify formatDeviceName with regex in devices template
...
Co-authored-by: christianlouis <361235+christianlouis@users.noreply.github.com >
2026-03-17 11:05:26 +00:00
copilot-swe-agent[bot]
03712cfb08
feat(ui): add dedicated Devices page for mobile tokens and registered devices
...
Co-authored-by: christianlouis <361235+christianlouis@users.noreply.github.com >
2026-03-17 11:00:36 +00:00
copilot-swe-agent[bot]
bd03d1971b
refactor(auth): extract _ensure_tz_aware helper, use validate_session in logout
...
Co-authored-by: christianlouis <361235+christianlouis@users.noreply.github.com >
2026-03-17 10:17:19 +00:00
copilot-swe-agent[bot]
a022dec9c2
fix(auth): resolve timezone-naive datetime comparisons in QR challenge functions and update docs
...
Co-authored-by: christianlouis <361235+christianlouis@users.noreply.github.com >
2026-03-17 10:13:19 +00:00
github-actions[bot]
b8075b6821
chore(release): update build metadata files [skip ci]
2026-03-17 09:55:46 +00:00
semantic-release
a0dace75a3
0.154.0
...
Automatically generated by python-semantic-release
2026-03-17 09:55:43 +00:00
Christian Krakau-Louis
7b7554decf
Merge pull request #751 from christianlouis/copilot/improve-database-migration-handling
...
feat(db): Add migration chain validation to CI, pre-commit, and developer docs
2026-03-17 10:55:10 +01:00
copilot-swe-agent[bot]
a007b4fd98
fix(db): address code review feedback - fix comment stripping, type hints, test skip, and docs
...
Co-authored-by: christianlouis <361235+christianlouis@users.noreply.github.com >
2026-03-17 09:21:11 +00:00
copilot-swe-agent[bot]
aa49fa3ae6
feat(db): add migration chain CI validation, pre-commit hook, script template, docs, and tests
...
Co-authored-by: christianlouis <361235+christianlouis@users.noreply.github.com >
2026-03-17 09:18:11 +00:00
copilot-swe-agent[bot]
935e8a626e
Changes before error encountered
...
Co-authored-by: christianlouis <361235+christianlouis@users.noreply.github.com >
2026-03-16 23:25:53 +00:00
github-actions[bot]
0b0f43fa99
chore(release): update build metadata files [skip ci]
2026-03-16 23:08:10 +00:00
semantic-release
0e472d3515
0.153.1
...
Automatically generated by python-semantic-release
2026-03-16 23:08:07 +00:00
Christian Krakau-Louis
15fc90f240
Merge pull request #752 from christianlouis/copilot/fix-ios-hello-world-screen-issue
...
fix(mobile): add root index.tsx redirect to prevent stale Hello World screen
2026-03-17 00:07:45 +01:00
copilot-swe-agent[bot]
1350aa6a5e
fix(mobile): add root index.tsx redirect to prevent stale Hello World screen
...
Without a root app/index.tsx in the repo, a stale default Expo Router
scaffold file (showing "Hello World") could be picked up from a previous
build or CLI scaffolding and displayed instead of the real app.
The new index.tsx immediately redirects to /(auth)/, and the existing
AuthGuard in _layout.tsx forwards authenticated users to /(tabs)/.
Also registers the index screen in the root Stack and updates
docs/MobileApp.md with an expanded project structure and a new
troubleshooting entry.
Co-authored-by: christianlouis <361235+christianlouis@users.noreply.github.com >
2026-03-16 23:01:43 +00:00
copilot-swe-agent[bot]
d5e1d92d6f
Changes before error encountered
...
Co-authored-by: christianlouis <361235+christianlouis@users.noreply.github.com >
2026-03-16 22:54:13 +00:00
github-actions[bot]
475c41d375
chore(release): update build metadata files [skip ci]
2026-03-16 22:50:45 +00:00
semantic-release
fef74450c7
0.153.0
...
Automatically generated by python-semantic-release
2026-03-16 22:50:42 +00:00
Christian Krakau-Louis
8d366f3b1e
Merge pull request #750 from christianlouis/copilot/add-cleanup-button-functionality
...
feat(system-reset): add factory reset and wipe-and-reimport capabilities
2026-03-16 23:50:21 +01:00
copilot-swe-agent[bot]
7dffdc0554
fix(system-reset): address code review feedback
...
- Add path traversal guard in reimport file copy loop
- Improve error log message context for table wipe failures
- Use conditional role=alert/status on result banner for accessibility
- Make test assertions more specific (exact status codes)
- Rename ambiguous view test
Co-authored-by: christianlouis <361235+christianlouis@users.noreply.github.com >
2026-03-16 22:38:24 +00:00
copilot-swe-agent[bot]
51821092f4
feat(auth): add session management UI, QR login page, mobile QR support, translations
...
Co-authored-by: christianlouis <361235+christianlouis@users.noreply.github.com >
2026-03-16 22:38:13 +00:00
copilot-swe-agent[bot]
96bfba8057
test(system-reset): add comprehensive tests and documentation
...
- 21 tests covering unit, integration, API, and view layers
- Update ConfigurationGuide.md with System Reset section
- Update API.md with system reset endpoint docs
- All tests pass, ruff clean
Co-authored-by: christianlouis <361235+christianlouis@users.noreply.github.com >
2026-03-16 22:32:31 +00:00
copilot-swe-agent[bot]
421744865f
Initial plan
2026-03-16 22:31:32 +00:00
copilot-swe-agent[bot]
a4588a57cb
feat(auth): add server-side session management and QR code login backend
...
- Add UserSession and QRLoginChallenge models for session tracking
and mobile QR authentication
- Add session_manager utility with create/validate/revoke/cleanup
functions and QR challenge helpers
- Add /api/sessions endpoints for listing, revoking, and
'log off everywhere' functionality
- Add /api/qr-auth endpoints for challenge creation, polling, and
claiming with API token issuance
- Add session config fields (lifetime, custom override, QR TTL)
- Update get_current_user to validate server-side sessions
- Create server-side sessions on all login paths (local, OAuth,
social, admin)
- Revoke server-side session on logout
- Configure SessionMiddleware max_age from session lifetime settings
- Graceful degradation: old sessions without _session_token continue
to work
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com >
2026-03-16 22:29:04 +00:00
copilot-swe-agent[bot]
a88d790445
feat(system-reset): add system reset and factory reset feature
...
- Add FACTORY_RESET_ON_STARTUP and ENABLE_FACTORY_RESET config settings
- Create app/utils/system_reset.py with core reset logic (wipe DB + files, reimport)
- Create app/api/system_reset.py with admin-only API endpoints
- Create app/views/system_reset.py with admin-only UI view
- Create frontend/templates/system_reset.html with confirmation dialogs
- Auto-reset on startup when FACTORY_RESET_ON_STARTUP=true
- Re-import uses watch folder mechanism for re-ingestion
- Register routers in API and views init files
- Add i18n keys and SETTING_METADATA entries
- Add nav links in base.html (desktop + mobile)
Co-authored-by: christianlouis <361235+christianlouis@users.noreply.github.com >
2026-03-16 22:26:17 +00:00
copilot-swe-agent[bot]
8a3ae8652e
Initial plan
2026-03-16 22:26:07 +00:00
copilot-swe-agent[bot]
4d302b495c
Initial plan
2026-03-16 22:13:29 +00:00
copilot-swe-agent[bot]
6d03d107fd
Initial plan
2026-03-16 22:00:21 +00:00
github-actions[bot]
b48ed0b2ac
chore(release): update build metadata files [skip ci]
2026-03-16 21:40:06 +00:00
semantic-release
64403f17f1
0.152.0
...
Automatically generated by python-semantic-release
2026-03-16 21:40:03 +00:00
Christian Krakau-Louis
793b6d3e25
Merge pull request #748 from christianlouis/copilot/add-retry-option-for-uploads
...
feat(mobile): add retry for failed uploads via tap and long-press
2026-03-16 22:39:40 +01:00
copilot-swe-agent[bot]
d322ec6dc7
feat(mobile): add retry for failed uploads via tap and long-press
...
Co-authored-by: christianlouis <361235+christianlouis@users.noreply.github.com >
2026-03-16 20:35:13 +00:00
copilot-swe-agent[bot]
84b9461cfe
Initial plan
2026-03-16 20:29:47 +00:00
github-actions[bot]
75a6379aad
chore(release): update build metadata files [skip ci]
2026-03-16 20:28:52 +00:00
semantic-release
1bd9840c81
0.151.1
...
Automatically generated by python-semantic-release
2026-03-16 20:28:49 +00:00
Christian Krakau-Louis
1caebdded0
Merge pull request #747 from christianlouis/copilot/fix-merge-conflict-in-json
...
Fix merge conflict markers in mobile/app.json
2026-03-16 21:28:25 +01:00
copilot-swe-agent[bot]
a7b993ad42
fix: resolve merge conflict markers in mobile/app.json
...
Co-authored-by: christianlouis <361235+christianlouis@users.noreply.github.com >
2026-03-16 18:28:15 +00:00
copilot-swe-agent[bot]
5b09b7b9ae
Initial plan
2026-03-16 18:26:12 +00:00
github-actions[bot]
0f449abe17
chore(release): update build metadata files [skip ci]
2026-03-16 18:25:25 +00:00
semantic-release
480591fcee
0.151.0
...
Automatically generated by python-semantic-release
2026-03-16 18:25:21 +00:00
Christian Krakau-Louis
242ef587e1
Merge pull request #746 from christianlouis/copilot/localize-view-links
...
feat(i18n): localize /files/ view
2026-03-16 19:24:56 +01:00
copilot-swe-agent[bot]
afb168d3e8
feat(i18n): localize remaining image zoom controls in files view
...
Co-authored-by: christianlouis <361235+christianlouis@users.noreply.github.com >
2026-03-16 18:15:35 +00:00
copilot-swe-agent[bot]
45c2cd7c6e
feat(i18n): localize files view - replace all hardcoded strings with translation keys
...
Co-authored-by: christianlouis <361235+christianlouis@users.noreply.github.com >
2026-03-16 18:05:59 +00:00
copilot-swe-agent[bot]
9b21872007
Initial plan
2026-03-16 17:55:30 +00:00
github-actions[bot]
da6b337a8b
chore(release): update build metadata files [skip ci]
2026-03-16 17:48:20 +00:00
semantic-release
b2492b497c
0.150.7
...
Automatically generated by python-semantic-release
2026-03-16 17:48:16 +00:00