Christian
1d7107bff0
Release v2.2.52: harden admin users loading on v2
2026-03-07 03:14:45 +01:00
Christian
ba9622250a
Release v2.2.51: fix user admin actions + archived sync monitor
2026-03-07 02:52:00 +01:00
Christian
959c9b4401
Fix: restore case email compose button in sag email tab
2026-03-06 16:11:05 +01:00
Christian
1323320fed
Release v2.2.48: sag sale-item fallback and mission webhook ping fixes
2026-03-04 07:40:18 +01:00
Christian
9fc57feda4
Release v2.2.47: webhook GET ping + v2 default API port
2026-03-04 07:22:39 +01:00
Christian
2bd5a3e057
Release v2.2.46: mission schema resilience and repair migration
2026-03-04 07:12:29 +01:00
Christian
4760b8b3c4
Add Mission Control navigation and dashboard option (v2.2.45)
2026-03-04 07:11:06 +01:00
Christian
701cc63375
Hotfix: cleanup legacy v2 containers + auto-expire ringing calls (v2.2.44)
2026-03-04 00:33:12 +01:00
Christian
803b45fab4
Hotfix: add Mission webhook event logging (v2.2.43)
2026-03-03 23:49:24 +01:00
Christian
45d8f4209b
Hotfix: Yealink GET webhooks + safer podman deploy checks (v2.2.42)
2026-03-03 23:09:14 +01:00
Christian
91f709f4fe
fix(postgres): use POSTGRES_DB in health checks
2026-03-03 22:37:48 +01:00
Christian
dd02701b21
fix(docker): preserve downloaded release source during production build
2026-03-03 22:19:26 +01:00
Christian
8b863a3b68
feat(mission): add Mission Control MVP with realtime webhooks and fullscreen dashboard
2026-03-03 22:12:05 +01:00
Christian
b80f91fae1
release: v2.2.37
...
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-03-03 10:52:53 +01:00
Christian
b0a51f1919
release: v2.2.36 helpdesk sag routing
2026-03-02 23:58:56 +01:00
Christian
bdf76a2a80
feat: quick opret leverandør split-view panel v2.2.26
2026-03-02 09:09:30 +01:00
Christian
2ed3118c83
fix: exclude OWN_CVR from AI vendor extraction v2.2.25
2026-03-02 09:01:43 +01:00
Christian
aabd9f0069
fix: remove vat_note from extraction_lines INSERT v2.2.24
2026-03-02 08:54:14 +01:00
Christian
de59bc8367
fix: add pdfplumber to requirements v2.2.22
2026-03-02 08:44:23 +01:00
Christian
744b405142
fix: vendor info + rerun button on supplier invoices v2.2.21
...
- Fix get_files_by_status query: LATERAL join to get latest extraction
per file, returning vendor_name, vendor_match_confidence, total_amount
- Fix renderUnhandledFiles: use best_vendor_name, convert confidence
0-1 to %, use total_amount field
- Add rerun button for all files (not just failed) via rerunSingleFile()
- rerunSingleFile() calls /reprocess/{file_id} and reloads unhandled tab
- Fix retry_extraction endpoint to actually run extraction immediately
2026-03-02 06:22:33 +01:00
Christian
ea4905ef8a
fix: vendor DB lookup after regex/AI extraction v2.2.20
...
extract_vendor_suggestion now matches found CVR/domain/name against
vendors table for ALL code paths (not just fast path):
- CVR match → score 100
- Domain match → score 80
- Email-domain match → score 75
- Name substring → score 60
Frontend auto-links when match_score >= 80 (was only pdf_extraction source).
Shows score reason: CVR-match/domæne-match/navne-match in success toast.
Also: saves newly found CVR to extracted_vendor_cvr so fast path
works on subsequent calls for old emails too.
2026-03-02 00:35:44 +01:00
Christian
09de3c7373
feat: auto-link vendor from PDF extraction, improve vendor suggestion v2.2.19
...
- extract_vendor_suggestion: fast path if extracted_vendor_cvr already set
- CVR lookup in vendors table → returns vendor_id if match found
- source='pdf_extraction' with confidence=0.95
- Frontend quickCreateVendor:
- If vendor_id returned → auto-link without modal (no manual input needed)
- New source label '📄 PDF-faktura' for pdf_extraction source
- Added execute_query_single import to emails router
2026-03-02 00:26:23 +01:00
Christian
c6d310e96d
feat: analyze PDF attachments for invoice extraction v2.2.18
...
- email_analysis_service: extract PDF text from attachments as PRIMARY source
- _build_invoice_extraction_context: reads PDF bytes (in-memory or DB)
- _extract_pdf_texts_from_attachments: pdfplumber on in-memory bytes
- _get_attachment_texts_from_db: fallback to content_data/file_path
- _build_extraction_prompt: comprehensive schema (vendor, CVR, lines, dates)
- num_predict 300→3000, timeout 30→120s, format=json
- email_processor_service: _update_extracted_fields saves vendor_name, CVR, invoice_date
- migration 140: extracted_vendor_name, extracted_vendor_cvr, extracted_invoice_date columns
Sender (forwarder/external bookkeeper) is now ignored for vendor detection.
The actual invoice PDF determines vendor/amounts/lines.
2026-03-02 00:17:41 +01:00
Christian
3d24987365
fix: use execute_query_single for duplicate checksum check v2.2.17
...
Fixes 'list indices must be integers or slices, not str' error when
uploading a duplicate file. execute_query returns a list, so accessing
existing_file['file_id'] caused TypeError. Now uses execute_query_single
which returns a single dict row.
2026-03-02 00:05:24 +01:00
Christian
2fc8a1adce
fix: remove service_healthy depends_on condition (podman-compose compat) v2.2.16
2026-03-01 23:30:46 +01:00
Christian
aa7b0894af
fix: MAX_FILE_SIZE_MB → EMAIL_MAX_UPLOAD_SIZE_MB in supplier invoice upload v2.2.15
2026-03-01 20:15:40 +01:00
Christian
3978dae692
fix: BACKUP_STORAGE_PATH→/app/data/backups + container_name STACK_NAME + pdf extension v2.2.14
2026-03-01 20:06:02 +01:00
Christian
c5aa31b825
fix: container_name uses STACK_NAME + ALLOWED_EXTENSIONS CSV parsing v2.2.13
2026-03-01 20:01:11 +01:00
Christian
84c837f303
fix: store PDF bytes in DB (content_data) + re-save existing email attachments v2.2.11
2026-03-01 16:36:05 +01:00
Christian
eb0dad8a10
fix: read body_html + resolve relative file paths for PDF extraction
2026-03-01 16:03:07 +01:00
Christian
14e1c87a4c
fix: dedicated footer parser + debug logging for PDF text extraction
2026-03-01 15:51:45 +01:00
Christian
04acdecb91
fix: extract address/company from invoice footer dash-format (KONI Accounting style)
2026-03-01 12:22:14 +01:00
Christian
a8970701ab
fix: massively improved vendor info extraction (CVR/address/phone/domain)
2026-03-01 12:04:53 +01:00
Christian
8d7d32571a
Release v2.2.4: AI prompt test feature + updateto.sh path fix
2026-03-01 02:56:38 +01:00
Christian
abd5014eb0
Release v2.2.3: migration 138 integer compatibility hotfix
2026-02-22 03:35:56 +01:00
Christian
e772311a86
Release v2.2.2: sync safety hardening
2026-02-22 03:27:40 +01:00
Christian
ef171c7573
Fix: Migration interface now shows correct Podman commands for production servers
...
- Updated migrations.html to detect production environment and use podman/docker accordingly
- Added container runtime info to settings page
- Updated VERSION to 2.1.1
2026-01-29 00:47:40 +01:00
Christian
4b467aeeec
Release v2.1.0
2026-01-29 00:36:32 +01:00
Christian
c66d652283
Release v2.0.6
2026-01-28 10:52:36 +01:00
Christian
43c7d64a01
Release v2.0.5
2026-01-28 10:47:29 +01:00
Christian
08b7abbeea
Release v2.0.4
2026-01-28 10:41:48 +01:00
Christian
3543a9b079
Release v2.0.3
2026-01-28 10:36:08 +01:00
Christian
2f022bf085
Release v2.0.2 updates
2026-01-28 10:26:22 +01:00
Christian
7c569527fe
Add migration execution feature
2026-01-28 10:25:21 +01:00
Christian
ce7bbff766
Release v2.0.0 updates
2026-01-28 08:03:17 +01:00
Christian
c2a265d5f9
Add local pipeline opportunities
2026-01-28 07:48:10 +01:00
Christian
262fa80aef
Add pipeline page and link
2026-01-28 01:41:57 +01:00
Christian
c7aa6fe3f5
Bump version to 1.3.150
2026-01-28 01:36:44 +01:00
Christian
31fc285342
feat: Fetch from multiple e-conomic endpoints for complete data
...
v1.3.149:
- Added /invoices/booked (sent invoices)
- Added /invoices/paid (paid invoices)
- Added /invoices/unpaid (unpaid invoices)
- Keep /invoices/drafts (draft invoices)
- Track unique invoices to avoid duplicates
- Apply customer and date filters correctly after fetching
2026-01-27 08:42:22 +01:00
Christian
04a472d204
fix: Remove undefined matrixHtml reference
...
v1.3.148:
- Fixed JavaScript error: matrixHtml is not defined
- Removed duplicate table population code
- bodyRows.innerHTML already contains the matrix HTML
2026-01-27 08:36:32 +01:00