github-actions[bot]
744a433cc9
docs(changelog): update changelog [skip ci]
2026-03-02 10:03:30 +00:00
Christian Krakau-Louis
e8e91fd29a
Refactor CI workflow stages and steps
...
Updated CI workflow for improved clarity and efficiency.
2026-03-02 11:03:09 +01:00
github-actions[bot]
fe9f84ac05
docs(changelog): update changelog [skip ci]
2026-03-02 09:54:22 +00:00
Christian Krakau-Louis
7cb5407bcf
Refactor CI workflow for clarity and efficiency
...
Refactor CI workflow to simplify configuration and improve readability. Consolidate steps, update job dependencies, and enhance linting and testing stages.
2026-03-02 10:54:05 +01:00
copilot-swe-agent[bot]
f7cf7e2a4c
fix(migrations): resolve multiple Alembic heads causing CI test crash
...
Co-authored-by: christianlouis <361235+christianlouis@users.noreply.github.com >
2026-03-02 09:50:59 +00:00
github-actions[bot]
3d38813da5
docs(changelog): update changelog [skip ci]
2026-03-02 09:47:27 +00:00
Christian Krakau-Louis
fc72532aea
Merge pull request #465 from christianlouis/copilot/optimize-ci-pipeline
...
ci: restructure pipeline into 5-stage fail-fast architecture
2026-03-02 10:47:08 +01:00
copilot-swe-agent[bot]
ea0f7fb54f
ci: optimize pipeline for fail-fast feedback loop
...
- Move mypy to Stage 1 (runs in parallel with lint & html-lint, no needs)
- Decouple dependency-scan from test-quick; tests now start as soon as
static analysis passes (needs: [lint, html-lint, mypy])
- dependency-scan runs as a parallel background track and still gates
build/deploy to prevent shipping with known CVEs
- Integration tests remain sequentially after quick tests pass (Stage 4)
- Build & deploy remain gated on ALL stages including dependency-scan (Stage 5)
- Reorder job definitions to match logical stage flow for readability
- Update section comments to reflect the new 5-stage architecture
Co-authored-by: christianlouis <361235+christianlouis@users.noreply.github.com >
2026-03-02 09:45:59 +00:00
copilot-swe-agent[bot]
0fc8148c47
Initial plan
2026-03-02 09:41:10 +00:00
github-actions[bot]
ed8579757c
docs(changelog): update changelog [skip ci]
2026-03-02 09:37:44 +00:00
Christian Krakau-Louis
c8d456e6eb
Merge pull request #464 from christianlouis/dependabot/pip/ocrmypdf-gte-16.0.0-and-lt-18.0.0
...
Update ocrmypdf requirement from <17.0.0,>=16.0.0 to >=16.0.0,<18.0.0
2026-03-02 10:37:27 +01:00
dependabot[bot]
25532aad87
Update ocrmypdf requirement from <17.0.0,>=16.0.0 to >=16.0.0,<18.0.0
...
Updates the requirements on [ocrmypdf](https://github.com/ocrmypdf/OCRmyPDF ) to permit the latest version.
- [Release notes](https://github.com/ocrmypdf/OCRmyPDF/releases )
- [Commits](https://github.com/ocrmypdf/OCRmyPDF/compare/v16.0.0...v17.3.0 )
---
updated-dependencies:
- dependency-name: ocrmypdf
dependency-version: 17.3.0
dependency-type: direct:production
...
Signed-off-by: dependabot[bot] <support@github.com >
2026-03-01 23:09:06 +00:00
Christian Krakau-Louis
1e1ba1d8d7
Merge branch 'main' into copilot/add-document-similarity-detection
2026-03-01 22:06:55 +01:00
github-actions[bot]
698c6a222e
chore(release): update build metadata files [skip ci]
2026-03-01 21:06:18 +00:00
semantic-release
c7c9040321
0.71.0
...
Automatically generated by python-semantic-release
2026-03-01 21:06:16 +00:00
Christian Krakau-Louis
1b3f35d77d
Merge pull request #462 from christianlouis/copilot/add-webhook-support
...
feat(webhooks): implement webhook support for external integrations
2026-03-01 22:05:57 +01:00
copilot-swe-agent[bot]
a85992ee79
docs(webhooks): fix spelling - Behaviour to Behavior
...
Co-authored-by: christianlouis <361235+christianlouis@users.noreply.github.com >
2026-03-01 20:47:51 +00:00
copilot-swe-agent[bot]
b7c78177e9
docs(similarity): add API documentation and fix template accessibility
...
Co-authored-by: christianlouis <361235+christianlouis@users.noreply.github.com >
2026-03-01 20:46:13 +00:00
copilot-swe-agent[bot]
a953b726fc
docs(webhooks): add webhook API and configuration documentation
...
Co-authored-by: christianlouis <361235+christianlouis@users.noreply.github.com >
2026-03-01 20:45:20 +00:00
copilot-swe-agent[bot]
e60914127c
feat(webhooks): add webhook support for external integrations
...
Add WebhookConfig model, CRUD API endpoints, HMAC-SHA256 signed delivery,
and Celery-based async dispatch with retry/backoff for document events
(document.uploaded, document.processed, document.failed).
Co-authored-by: christianlouis <361235+christianlouis@users.noreply.github.com >
2026-03-01 20:42:57 +00:00
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