Commit Graph

95 Commits

Author SHA1 Message Date
adamlamers 1b696114de fix discrepancy view
Continuous Integration / backend-tests (push) Successful in 47s
Continuous Integration / frontend-check (push) Successful in 23s
Continuous Integration / e2e-tests (push) Failing after 8m11s
2026-05-01 16:47:58 -04:00
adamlamers d6250986b8 fix svelte issues
Continuous Integration / backend-tests (push) Successful in 57s
Continuous Integration / frontend-check (push) Successful in 27s
Continuous Integration / e2e-tests (push) Successful in 7m1s
2026-05-01 13:25:00 -04:00
adamlamers e939e6a86d add discrepancy mode for filebrowser 2026-05-01 10:55:27 -04:00
adamlamers 79986066bf fix tests
Continuous Integration / backend-tests (push) Successful in 32s
Continuous Integration / frontend-check (push) Successful in 16s
Continuous Integration / e2e-tests (push) Successful in 5m52s
2026-04-30 22:49:25 -04:00
adamlamers 80d47c582c address issues
Continuous Integration / backend-tests (push) Successful in 51s
Continuous Integration / frontend-check (push) Successful in 27s
Continuous Integration / e2e-tests (push) Successful in 6m16s
2026-04-30 22:18:18 -04:00
adamlamers dc94893dc5 address these:
Continuous Integration / backend-tests (push) Successful in 30s
Continuous Integration / frontend-check (push) Successful in 16s
Continuous Integration / e2e-tests (push) Successful in 6m14s
| # | Issue | Location |
|---|-------|----------|
| 1 | **Archiver backs up deleted files** — `get_unbacked_files` never checks `is_deleted`, so files the scanner marked missing still get archived (wastes media, fails at tar assembly when source is gone) | `archiver.py:157-163` |
| 2 | **Hashing phase marks wrong files as deleted** — after one sub-batch finishes, the code iterates over ALL fetched records (`path_to_record`) not just the completed sub-batch. Files in pending sub-batches get falsely `is_deleted=True` if not on disk | `scanner.py:854-861` |
| 3 | **Multiple threads mutate ORM objects concurrently** — `ThreadPoolExecutor` workers share and write to session-bound objects (`sha256_hash`, `is_deleted`) from different threads. SQLAlchemy sessions are not thread-safe | `scanner.py:814-861` |
2026-04-30 17:06:55 -04:00
adamlamers 90a1de3f05 cleaner typescript client generation 2026-04-30 15:10:51 -04:00
adamlamers ced59b9379 fix discrepancy management
Continuous Integration / backend-tests (push) Successful in 9m54s
Continuous Integration / frontend-check (push) Successful in 9m44s
Continuous Integration / e2e-tests (push) Successful in 20m42s
2026-04-30 12:55:55 -04:00
adamlamers 0edec7ae73 fix stats
Continuous Integration / backend-tests (push) Successful in 10m1s
Continuous Integration / frontend-check (push) Successful in 9m31s
Continuous Integration / e2e-tests (push) Successful in 21m53s
2026-04-30 11:01:18 -04:00
adamlamers e3a2fcc392 ignore files marked as deleted
Continuous Integration / backend-tests (push) Successful in 10m5s
Continuous Integration / frontend-check (push) Successful in 9m50s
Continuous Integration / e2e-tests (push) Failing after 3h12m29s
2026-04-30 10:33:01 -04:00
adamlamers f8d7244729 playwright tests passing
Continuous Integration / frontend-check (push) Successful in 9m38s
Continuous Integration / backend-tests (push) Successful in 9m48s
Continuous Integration / e2e-tests (push) Successful in 19m35s
2026-04-30 03:14:05 -04:00
adamlamers 81ff48d797 job logs + better status popup
Continuous Integration / backend-tests (push) Successful in 10m3s
Continuous Integration / frontend-check (push) Successful in 9m43s
Continuous Integration / e2e-tests (push) Failing after 17m1s
2026-04-30 01:51:26 -04:00
adamlamers c2b31407ae create restore dir
Continuous Integration / frontend-check (push) Successful in 9m31s
Continuous Integration / backend-tests (push) Successful in 9m46s
Continuous Integration / e2e-tests (push) Successful in 19m38s
2026-04-30 00:29:08 -04:00
adamlamers 1dc439373a fix drag n drop on empty state
Continuous Integration / backend-tests (push) Failing after 5m17s
Continuous Integration / e2e-tests (push) Has been cancelled
Continuous Integration / frontend-check (push) Has been cancelled
2026-04-30 00:20:02 -04:00
adamlamers 40e1a18607 discrepancy test improvement
Continuous Integration / backend-tests (push) Failing after 5m14s
Continuous Integration / frontend-check (push) Successful in 9m36s
Continuous Integration / e2e-tests (push) Has been skipped
2026-04-30 00:03:20 -04:00
adamlamers 0b302d2961 cleanup
Continuous Integration / backend-tests (push) Failing after 5m25s
Continuous Integration / frontend-check (push) Successful in 9m45s
Continuous Integration / e2e-tests (push) Has been skipped
2026-04-29 23:53:53 -04:00
adamlamers d5fba26554 streaming subprocesses
Continuous Integration / backend-tests (push) Successful in 10m4s
Continuous Integration / frontend-check (push) Successful in 9m38s
Continuous Integration / e2e-tests (push) Successful in 19m26s
2026-04-29 21:22:33 -04:00
adamlamers ed3ccc4380 fix missing file hash loop
Continuous Integration / backend-tests (push) Successful in 9m47s
Continuous Integration / frontend-check (push) Successful in 10m2s
Continuous Integration / e2e-tests (push) Successful in 21m8s
2026-04-29 20:51:17 -04:00
adamlamers 2daa967863 more integration tests
Continuous Integration / frontend-check (push) Successful in 9m39s
Continuous Integration / backend-tests (push) Successful in 9m57s
Continuous Integration / e2e-tests (push) Successful in 19m6s
2026-04-29 20:32:58 -04:00
adamlamers 54d2b0c025 file deletion detection 2026-04-29 18:21:58 -04:00
adamlamers d2aa5857f3 detect deleted or missing files
Continuous Integration / backend-tests (push) Successful in 9m49s
Continuous Integration / frontend-check (push) Successful in 9m31s
Continuous Integration / e2e-tests (push) Successful in 18m13s
2026-04-29 17:52:20 -04:00
adamlamers e4ecdb25db optional system binaries for find/hash
Continuous Integration / frontend-check (push) Successful in 9m50s
Continuous Integration / backend-tests (push) Successful in 10m12s
Continuous Integration / e2e-tests (push) Successful in 18m51s
2026-04-29 17:31:27 -04:00
adamlamers dd84532de9 optionally use find binary if gnu and available 2026-04-29 16:21:05 -04:00
adamlamers 6298aea64a e2e test setup
Continuous Integration / backend-tests (push) Successful in 9m53s
Continuous Integration / frontend-check (push) Successful in 9m36s
Continuous Integration / e2e-tests (push) Failing after 13m51s
2026-04-29 01:26:48 -04:00
adamlamers 01eabbc913 more robust scanning jobs
Continuous Integration / frontend-check (push) Successful in 10m26s
Continuous Integration / backend-tests (push) Successful in 11m13s
2026-04-29 00:45:25 -04:00
adamlamers 0bfd5affb4 tests & remove is_indexed flag from db
Continuous Integration / backend-tests (push) Successful in 11m41s
Continuous Integration / frontend-check (push) Successful in 10m54s
2026-04-28 23:55:39 -04:00
adamlamers c8346f2401 chunking
Continuous Integration / backend-tests (push) Successful in 10m41s
Continuous Integration / frontend-check (push) Successful in 10m4s
2026-04-28 22:11:47 -04:00
adamlamers fc47062dd5 more design tweaks
Continuous Integration / frontend-check (push) Successful in 10m53s
Continuous Integration / backend-tests (push) Successful in 12m22s
2026-04-28 21:14:53 -04:00
adamlamers e1fd853890 clean up the frontend
Continuous Integration / frontend-check (push) Successful in 12m47s
Continuous Integration / backend-tests (push) Successful in 13m33s
2026-04-28 20:26:36 -04:00
adamlamers a8a37bbc3d styling 2026-04-28 16:29:25 -04:00
adamlamers 87e65471aa formatting
Continuous Integration / frontend-check (push) Successful in 10m32s
Continuous Integration / backend-tests (push) Successful in 12m35s
2026-04-28 02:56:23 -04:00
adamlamers 25d865630f fix archive selection
Continuous Integration / frontend-check (push) Successful in 10m19s
Continuous Integration / backend-tests (push) Successful in 12m4s
2026-04-28 02:46:13 -04:00
adamlamers 6cc1c4e0a0 pytest justfile
Continuous Integration / frontend-check (push) Successful in 11m0s
Continuous Integration / backend-tests (push) Successful in 13m38s
2026-04-28 01:59:20 -04:00
adamlamers d955c0b809 fully utilized media category 2026-04-28 01:58:11 -04:00
adamlamers eb1146bc08 mam -> tape
Continuous Integration / frontend-check (push) Successful in 10m41s
Continuous Integration / backend-tests (push) Successful in 13m56s
2026-04-28 01:39:50 -04:00
adamlamers efa34f4a70 fix broken test 2026-04-28 01:35:15 -04:00
adamlamers 7246c79f83 media discovery
Continuous Integration / backend-tests (push) Failing after 5m31s
Continuous Integration / frontend-check (push) Successful in 9m48s
2026-04-28 01:18:24 -04:00
adamlamers 4601b1abae show currently inserted tape barcode
Continuous Integration / backend-tests (push) Failing after 5m10s
Continuous Integration / frontend-check (push) Successful in 9m37s
2026-04-28 00:09:11 -04:00
adamlamers e2b49a80c0 format negotiation
Continuous Integration / backend-tests (push) Failing after 5m34s
Continuous Integration / frontend-check (push) Successful in 10m8s
2026-04-27 23:57:37 -04:00
adamlamers d203b5d67f fix tape media data
Continuous Integration / frontend-check (push) Successful in 9m55s
Continuous Integration / backend-tests (push) Successful in 16m23s
2026-04-27 23:19:59 -04:00
adamlamers 0172403aec force media check on load
Continuous Integration / backend-tests (push) Successful in 9m41s
Continuous Integration / frontend-check (push) Successful in 9m39s
2026-04-27 23:14:30 -04:00
adamlamers 2c56e80100 tape card
Continuous Integration / backend-tests (push) Successful in 9m38s
Continuous Integration / frontend-check (push) Successful in 9m31s
2026-04-27 23:04:10 -04:00
adamlamers a36cf4dee1 media management overhaul
Continuous Integration / backend-tests (push) Successful in 10m3s
Continuous Integration / frontend-check (push) Successful in 9m42s
2026-04-27 22:57:05 -04:00
adamlamers c6ead790cc fix tests
Continuous Integration / frontend-check (push) Failing after 5m16s
Continuous Integration / backend-tests (push) Successful in 10m12s
2026-04-27 22:28:32 -04:00
adamlamers 8339762dce dashboard stats 2026-04-27 22:24:42 -04:00
adamlamers 7397f947f8 more archive browser fixes, show all media used to archive a dir
Continuous Integration / backend-tests (push) Successful in 9m43s
Continuous Integration / frontend-check (push) Successful in 9m35s
2026-04-27 21:59:20 -04:00
adamlamers 370b592675 more ignore logic
Continuous Integration / backend-tests (push) Successful in 9m42s
Continuous Integration / frontend-check (push) Successful in 9m31s
2026-04-27 21:17:24 -04:00
adamlamers 6ce5d3722b use is_ignored for everything
Continuous Integration / frontend-check (push) Successful in 9m38s
Continuous Integration / backend-tests (push) Successful in 9m53s
2026-04-27 21:02:51 -04:00
adamlamers 9469979be3 only archive tracked files
Continuous Integration / backend-tests (push) Failing after 5m14s
Continuous Integration / frontend-check (push) Successful in 9m43s
2026-04-27 20:46:36 -04:00
adamlamers 688206b12d tape drive command logging
Continuous Integration / frontend-check (push) Successful in 9m49s
Continuous Integration / backend-tests (push) Successful in 10m11s
2026-04-27 20:35:40 -04:00