Commit Graph

176 Commits

Author SHA1 Message Date
perf3ct c0835f436f
feat(webdav): also add some crazy source automatic validation 2025-07-03 05:26:36 +00:00
perf3ct 99cbb9caee
feat(webdav): make sure to have scanned all subdirectories 2025-07-03 05:02:17 +00:00
perf3ct 42c7edd9df
feat(webdav): gracefully recover webdav from stops/crashes 2025-07-03 04:45:25 +00:00
perf3ct 915fe92993
feat(webdav): also set up deep scanning button and fix unit tests 2025-07-03 04:24:26 +00:00
perf3ct e23a0e4c63
feat(webdav): directory etag smart checking and all that 2025-07-03 00:26:56 +00:00
perf3ct 0ef233c3cc
fix(tests): resolve compilation error in tests and source scheduler 2025-07-02 23:49:46 +00:00
perf3ct edcf2be71b
fix(webdav): resolve issue with webdav subdirectories not being discovered 2025-07-02 23:37:39 +00:00
perf3ct 1c131d8fc3
fix(tests): resolve silly new ocr retry tests 2025-07-02 22:51:09 +00:00
perf3ct f1fc2a0105
fix(server): resolve issues with the retry ocr tests 2025-07-02 22:47:51 +00:00
perf3ct bfef816848
fix(server): resolve ocr test functionality failing due to db trigger 2025-07-02 22:38:13 +00:00
perf3ct 4f0497ba74
feat(tests): fix ocr_retry issues in tests 2025-07-02 21:48:01 +00:00
perf3ct dec4551fbd
feat(tests): fix ocr_retry issues in tests 2025-07-02 21:30:36 +00:00
perf3ct e15aa801c6
feat(tests): fix ocr_retry issues in tests 2025-07-02 18:48:26 +00:00
perf3ct dd963d0ecc
feat(server): allow also completed documents to be retried 2025-07-02 18:15:41 +00:00
perf3ct 8ed8701d5b
feat(server): implement DEBUG environment variable 2025-07-02 17:57:57 +00:00
perf3ct 0f3cb12c7a
fix(server): resolve NUMERIC db type and f64 rust type 2025-07-02 02:26:11 +00:00
perf3ct e4faf2cfd2
feat(server/client): implement retry functionality for both successful and failed documents 2025-07-02 00:06:47 +00:00
perf3ct c242a84326
feat(webdav): also fix the parser to include directories, and add tests 2025-07-01 22:03:06 +00:00
perf3ct 590cad3197
feat(tests): add unit tests for new webdav functionality 2025-07-01 21:39:31 +00:00
perf3ct fdc240fa5b
feat(webdav): track directory etags
✅ Core Optimizations Implemented

  1. 📊 New Database Schema: Added webdav_directories table to track
directory ETags, file counts, and metadata
  2. 🔍 Smart Directory Checking: Before deep scans, check directory
ETags with lightweight Depth: 0 PROPFIND requests
  3. ΓÜí Skip Unchanged Directories: If directory ETag matches, skip the
entire deep scan
  4. 🗂️ N-Depth Subdirectory Tracking: Recursively track all
subdirectories found during scans
  5. 🎯 Individual Subdirectory Checks: When parent unchanged, check
each known subdirectory individually

  🚀 Performance Benefits

  Before: Every sync = Full Depth: infinity scan of entire directory
treeAfter:
  - First sync: Full scan + directory tracking setup
  - Subsequent syncs: Quick ETag checks → skip unchanged directories
entirely
  - Changed directories: Only scan the specific changed subdirectories

  📁 How It Works

  1. Initial Request: PROPFIND Depth: 0 on /Documents → get directory
ETag
  2. Database Check: Compare with stored ETag for /Documents
  3. If Unchanged: Check each known subdirectory (/Documents/2024,
/Documents/Archive) individually
  4. If Changed: Full recursive scan + update all directory tracking
data
2025-07-01 21:22:16 +00:00
perf3ct a2ea446e16
feat(client): update swagger ui endpoints 2025-07-01 20:54:45 +00:00
perf3ct f7018575d8
feat(pdf): implement ocrmypdf to extract text from PDFs 2025-07-01 00:56:48 +00:00
Jon Fuller 59e80a1b92
Merge branch 'main' into feat/debug-page 2025-06-30 17:19:31 -07:00
perf3ct 2a1eeeda50
feat(debug): debug page actually works and does something 2025-07-01 00:15:48 +00:00
perf3ct f26ab1e367
fix(pdf): resolve PDF wordcount error 2025-07-01 00:10:49 +00:00
perf3ct dd90e48fd2
feat(server): mark documents with 0 words as failed, and fix webdav unit tests 2025-06-30 22:43:25 +00:00
perf3ct bf073132a1
fix(tests): fix documents tests 2025-06-30 21:56:21 +00:00
perf3ct b344b69da7
feat(server): fix serialization issues 2025-06-30 19:40:05 +00:00
perf3ct d9b695f0bd
feat(server/client): add metadata to file view 2025-06-30 19:13:16 +00:00
perf3ct 5f10a8b82c
feat(server): continue to try to wrangle the failed and ignored documents 2025-06-29 23:27:51 +00:00
perf3ct 28a7e4eb45
fix(tests): resolve a whole lot of test issues 2025-06-28 22:50:40 +00:00
perf3ct 2b29032a42
fix(server): resolve compilation errors in constraint_validation.rs 2025-06-28 22:04:01 +00:00
perf3ct df254d59e3
feat(server/client): resolve failing tests 2025-06-28 21:21:05 +00:00
perf3ct 34bc207e39
feat(server/client): add failed_documents table to handle failures, and move logic of failures 2025-06-28 20:52:58 +00:00
Jon Fuller 881e4c5a8e
Merge pull request #72 from readur/feat/better-db-tests
feat(tests): add regression tests and better sql type safety tests
2025-06-28 12:43:52 -07:00
perf3ct 25d6ecce6c
feat(tests): add regression tests and better sql type safety tests 2025-06-28 19:25:15 +00:00
perf3ct e2633d7162
feat(swagger): add missing oidc endpoints into swagger ui 2025-06-28 19:19:48 +00:00
perf3ct a792d2e6fd
fix(server): resolve incorrect db type 2025-06-28 18:41:48 +00:00
perf3ct d18daa2c17
fix(server): resolve compilation issues from queue.rs 2025-06-28 18:15:55 +00:00
perf3ct 6dd580fa2f
fix(ocr_status): populate the ocr queue with pending jobs and add easy 'retry' button 2025-06-28 18:08:00 +00:00
Jon Fuller a314f64ca9
Merge pull request #69 from readur/fix/ocr-confidence-1
fix(server/client): fix incorrect OCR measurements
2025-06-28 09:53:56 -07:00
perf3ct 7247f74456
feat(tests): create generic migration tests 2025-06-28 16:38:12 +00:00
perfectra1n 7f69cd2e5f fix(server/client): fix incorrect OCR measurements 2025-06-27 20:23:59 -07:00
perf3ct 09a36bd0fb
fix(server): resolve compilation issue in IgnoredFilesQuery 2025-06-28 01:01:51 +00:00
perf3ct 7a623ca8d6
feat(server/client): easily undelete ignored files, if the user wishes to do so 2025-06-28 00:37:49 +00:00
perf3ct 6983469eff
fix(server): fix unclosed delimiter 2025-06-27 22:51:02 +00:00
Jon Fuller a8c6660450
Merge branch 'main' into feat/delete-low-confidence-documents 2025-06-27 15:17:50 -07:00
perf3ct a642eec3ce
feat(server/client): implement button deleting low confidence documents (e.g. documents that have no text) 2025-06-27 22:16:38 +00:00
perf3ct fc0324da80
feat(client/server): add a new badge for each source that shows the number of documents stored from each source 2025-06-27 21:32:50 +00:00
perf3ct 9073006004
fix(tests): move oidc tests to correct folder 2025-06-27 19:33:58 +00:00