copilot-swe-agent[bot]
9748103782
feat(similarity): add document similarity detection with embeddings and cosine similarity
...
Co-authored-by: christianlouis <361235+christianlouis@users.noreply.github.com >
2026-03-01 20:38:52 +00:00
copilot-swe-agent[bot]
2842b4ac46
Initial plan
2026-03-01 20:29:29 +00:00
copilot-swe-agent[bot]
bcfb91b05f
Initial plan
2026-03-01 20:28:50 +00:00
github-actions[bot]
49eb2dd8e5
chore(release): update build metadata files [skip ci]
2026-03-01 19:31:34 +00:00
semantic-release
afae9e130a
0.70.0
...
Automatically generated by python-semantic-release
2026-03-01 19:31:32 +00:00
Christian Krakau-Louis
ecca0ecdfa
Merge pull request #461 from christianlouis/copilot/enhance-release-versioning
2026-03-01 20:31:17 +01:00
github-actions[bot]
b0cd612974
chore(release): update build metadata files [skip ci]
2026-03-01 19:31:10 +00:00
semantic-release
09e174f086
0.69.0
...
Automatically generated by python-semantic-release
2026-03-01 19:31:07 +00:00
Christian Krakau-Louis
68ea6aabc7
Merge pull request #448 from christianlouis/copilot/add-retry-logic-backoff
2026-03-01 20:30:45 +01:00
copilot-swe-agent[bot]
61d7639129
refactor(test): simplify test patches per code review feedback
...
Co-authored-by: christianlouis <361235+christianlouis@users.noreply.github.com >
2026-03-01 18:38:07 +00:00
copilot-swe-agent[bot]
85da309740
feat(api): add GET /api/diagnostic/health endpoint for monitoring
...
- Add health check endpoint at GET /api/diagnostic/health
- Auth-protected via @require_login (no-op when AUTH_ENABLED=False)
- Checks database (SELECT 1) and Redis (ping) with 2s timeouts
- Returns healthy/degraded/unhealthy with per-check detail
- Returns HTTP 503 when database is down, 200 otherwise
- 7 new unit tests covering all status scenarios
- Update docs/API.md with Grafana/monitoring integration notes
- Fixes test_cors_headers_absent_when_disabled CI timeout
Co-authored-by: christianlouis <361235+christianlouis@users.noreply.github.com >
2026-03-01 18:36:38 +00:00
copilot-swe-agent[bot]
d18c10996a
feat(release): add named release anchors with codenames and roadmap integration
...
- Add release_names.json mapping version ranges to codenames
- Add release_name property to Settings in app/config.py
- Update build metadata script to include codename in RUNTIME_INFO
- Display release codename in status dashboard and page footer
- Inject release_name globally via template response wrapper
- Update ROADMAP.md with codenames for all milestone releases
- Add docs/ReleaseNaming.md with naming guide and best practices
- Add comprehensive tests for release name resolution
Co-authored-by: christianlouis <361235+christianlouis@users.noreply.github.com >
2026-03-01 18:32:46 +00:00
github-actions[bot]
32ea0c8949
docs(changelog): update changelog [skip ci]
2026-03-01 18:23:59 +00:00
copilot-swe-agent[bot]
5dcb9814e4
Initial plan
2026-03-01 18:23:59 +00:00
Christian Krakau-Louis
366026e909
Merge pull request #457 from christianlouis/copilot/increase-code-coverage-wizard-py
...
test: increase code coverage for app/views/wizard.py to 100%
2026-03-01 19:23:37 +01:00
Christian Krakau-Louis
c626d06d8a
Merge pull request #455 from christianlouis/copilot/increase-code-coverage-status-py
...
test(status): increase code coverage for app/views/status.py to 100%
2026-03-01 19:23:21 +01:00
github-actions[bot]
1775c4e0dd
docs(changelog): update changelog [skip ci]
2026-03-01 18:22:37 +00:00
Christian Krakau-Louis
bad4743fc2
Merge pull request #458 from christianlouis/copilot/increase-code-coverage-google-drive
...
test(google_drive): confirm 100% coverage for app/views/google_drive.py
2026-03-01 19:22:17 +01:00
github-actions[bot]
8abddaae08
chore(release): update build metadata files [skip ci]
2026-03-01 18:13:47 +00:00
semantic-release
2ba4c0d558
0.68.0
...
Automatically generated by python-semantic-release
2026-03-01 18:13:45 +00:00
Christian Krakau-Louis
b5cb7d7ad7
Merge pull request #456 from christianlouis/copilot/increase-code-coverage-settings
...
Confirm 100% test coverage for app/views/settings.py
2026-03-01 19:13:26 +01:00
Christian Krakau-Louis
47783b32b1
Merge pull request #447 from christianlouis/copilot/implement-file-list-pagination
...
feat(api): implement proper pagination for file list API
2026-03-01 19:13:07 +01:00
github-actions[bot]
eb511c0a27
chore(release): update build metadata files [skip ci]
2026-03-01 18:11:58 +00:00
semantic-release
a9c0b848ee
0.67.3
...
Automatically generated by python-semantic-release
2026-03-01 18:11:55 +00:00
Christian Krakau-Louis
935577edec
Merge pull request #460 from christianlouis/copilot/fix-docker-start-issue
...
fix(docker): copy migrations directory and alembic.ini into Docker image
2026-03-01 19:11:34 +01:00
copilot-swe-agent[bot]
3d71d2b362
fix(docker): copy migrations directory and alembic.ini into Docker image
...
The Docker container failed to start because the Alembic migrations
directory was not being copied into the image. The init_db() function
calls _run_alembic_upgrade() which requires /app/migrations to exist.
Added COPY instructions for ./migrations and ./alembic.ini to both
Dockerfile and Dockerfile.local.
Co-authored-by: christianlouis <361235+christianlouis@users.noreply.github.com >
2026-03-01 17:55:06 +00:00
copilot-swe-agent[bot]
a1b1cd06c2
Initial plan
2026-03-01 17:50:19 +00:00
copilot-swe-agent[bot]
1095b41579
test(status): increase code coverage for app/views/status.py to 100%
...
Co-authored-by: christianlouis <361235+christianlouis@users.noreply.github.com >
2026-03-01 17:41:50 +00:00
copilot-swe-agent[bot]
bf337a1560
test: increase code coverage for app/views/wizard.py to 100%
...
Co-authored-by: christianlouis <361235+christianlouis@users.noreply.github.com >
2026-03-01 17:40:54 +00:00
copilot-swe-agent[bot]
5ff7b72a80
feat(tasks): add retry logic with exponential backoff and jitter
...
- Rewrite app/tasks/retry_config.py with compute_countdown() function
implementing per-retry delays with ±20% jitter (default: 60s, 300s, 900s)
- Add BaseTaskWithRetry.retry() override to inject proper countdown
- Add OcrTaskWithRetry (120s, 600s, 1800s) for OCR/AI tasks
- Add UploadTaskWithRetry for cloud-storage upload tasks
- Add config settings: TASK_RETRY_MAX_RETRIES, TASK_RETRY_DELAYS, TASK_RETRY_JITTER
- Update process_with_ocr and process_with_azure tasks to use OcrTaskWithRetry
- Update all 11 upload tasks to use UploadTaskWithRetry
- Add 38 unit tests in tests/test_retry_config.py
- Update docs/ConfigurationGuide.md and .env.demo
Co-authored-by: christianlouis <361235+christianlouis@users.noreply.github.com >
2026-03-01 17:37:41 +00:00
copilot-swe-agent[bot]
7f06d94f74
Initial plan
2026-03-01 17:34:25 +00:00
copilot-swe-agent[bot]
52f9283155
Initial plan
2026-03-01 17:34:12 +00:00
copilot-swe-agent[bot]
404b3a7ba5
Initial plan
2026-03-01 17:34:02 +00:00
copilot-swe-agent[bot]
e54333d344
Initial plan
2026-03-01 17:33:53 +00:00
copilot-swe-agent[bot]
af34ce88df
feat(api): implement proper pagination for file list API
...
- Change default per_page from 50 to 25
- Rename total_items → total, total_pages → pages in pagination response
- Add next/previous URL fields to pagination response
- Update view and template to use new field names
- Update tests and API docs
Co-authored-by: christianlouis <361235+christianlouis@users.noreply.github.com >
2026-03-01 17:31:56 +00:00
copilot-swe-agent[bot]
af3ff0b581
Initial plan
2026-03-01 17:24:18 +00:00
copilot-swe-agent[bot]
82c524a788
Initial plan
2026-03-01 17:23:51 +00:00
github-actions[bot]
97cd1cdb92
chore(release): update build metadata files [skip ci]
2026-03-01 17:23:28 +00:00
semantic-release
25df15bdda
0.67.2
...
Automatically generated by python-semantic-release
2026-03-01 17:23:25 +00:00
Christian Krakau-Louis
0134ed37d5
Merge pull request #446 from christianlouis/copilot/optimize-test-timeouts
...
fix(ci): split test pipeline into quick/integration stages, fix hanging test
2026-03-01 18:23:06 +01:00
Christian Krakau-Louis
8ac4179b8b
Merge pull request #445 from christianlouis/copilot/enforce-database-upgrades-migration
...
refactor(database): enforce Alembic-only schema migrations, deprecate manual migration code
2026-03-01 18:22:48 +01:00
copilot-swe-agent[bot]
8d81ed6c74
fix: address code review feedback - use specific exceptions, dynamic revision IDs in tests
...
- Replace bare Exception catches with sa.exc.OperationalError in migration 007
- Use ScriptDirectory.get_heads() for dynamic revision ID assertions in tests
- Make migration count assertion flexible (>= 8 instead of == 8)
- Rewrite pending migrations test to actually test upgrade from revision 006
Co-authored-by: christianlouis <361235+christianlouis@users.noreply.github.com >
2026-03-01 16:57:19 +00:00
copilot-swe-agent[bot]
87d1b9d935
refactor(database): enforce Alembic-only database migrations, deprecate manual schema migrations
...
- Create alembic.ini and migrations/env.py for full Alembic CLI + programmatic support
- Add Alembic migration 006: detail column on processing_logs
- Add Alembic migration 007: ocr_quality_score column + drop unique filehash index
- Add Alembic migration 008: performance indexes
- Replace _run_schema_migrations() call in init_db() with _run_alembic_upgrade()
- Deprecate _run_schema_migrations() with DeprecationWarning
- Update tests for new Alembic-based approach and deprecation
- Update DatabaseConfiguration.md documentation
Co-authored-by: christianlouis <361235+christianlouis@users.noreply.github.com >
2026-03-01 16:47:41 +00:00
copilot-swe-agent[bot]
6a21adcdd4
fix(ci): increase quick test job timeout to 15 minutes for CI runner headroom
...
Co-authored-by: christianlouis <361235+christianlouis@users.noreply.github.com >
2026-03-01 16:46:57 +00:00
copilot-swe-agent[bot]
c100250b23
docs: update CI workflow and integration test documentation for two-stage pipeline
...
Co-authored-by: christianlouis <361235+christianlouis@users.noreply.github.com >
2026-03-01 16:45:44 +00:00
copilot-swe-agent[bot]
6c643e9962
fix(ci): add pytest-timeout, fix hanging test, split CI into quick + integration stages
...
- Add pytest-timeout>=2.3.0 to requirements-dev.txt with 120s global default
- Fix test_fallback_file_id_lookup: add missing _should_upload_* mocks that
caused .delay() calls to hang on Redis broker connection
- Split CI test job into two stages:
- Quick Tests (timeout: 10min, ~2min run): unit + basic integration
- Integration Tests (timeout: 20min): Docker containers, external services
- Quick tests gate integration tests for fast-fail feedback
- Build job now depends on both test stages
Co-authored-by: christianlouis <361235+christianlouis@users.noreply.github.com >
2026-03-01 16:43:56 +00:00
github-actions[bot]
08b24e3e66
chore(release): update build metadata files [skip ci]
2026-03-01 16:27:22 +00:00
semantic-release
297d435be5
0.67.1
...
Automatically generated by python-semantic-release
2026-03-01 16:27:19 +00:00
Christian Krakau-Louis
91bd4ad837
Merge pull request #444 from christianlouis/copilot/optimize-database-queries
...
fix(db): check column existence before creating indexes; fix mypy error in cache.py
2026-03-01 17:27:03 +01:00
copilot-swe-agent[bot]
069be988ab
Initial plan
2026-03-01 16:23:46 +00:00