Histórico de Commits

Autor SHA1 Mensagem Data
  maziggy aed9d91a58 fix(queue): a job queued for "Any" model is only given a printer whose spools the slot matcher can map (filament on the right nozzle, a spool per slot), instead of being held there, handed back and given the same printer again há 3 dias atrás
  maziggy 1c86625b82 fix(queue): Force color match is kept for a job queued to a specific printer: it waits for a spool of the exact colour and variant instead of printing on the first spool of the same material, and two slots asking for the same filament need two spools of it (#3280) há 3 dias atrás
  maziggy 29a81520d9 feat(external-links): an app can show a count on its sidebar link (PUT /external-links/badge with "Send notifications"; Bambuddy Orders shows its To do count), the count disappears when not updated for ten minutes há 4 dias atrás
  maziggy 16633dd27a fix(printers): Escape closes the Build Plate Check result as soon as it appears (the listener that knows the result is attached in the same render) há 4 dias atrás
  maziggy b63189f2be fix(printers): the print slot labels on AMS slots stay on when Bambuddy restarts during a print (the mapping captured from the print command is restored with the print session) há 4 dias atrás
  maziggy 9c61a52727 test: close the coroutines that mocked create_task, wait_for, run_coroutine_threadsafe, spawn_background_task and AsyncMock sessions left unawaited (reported as unraisable warnings in unrelated later tests); the Spoolman recovery tests archive under their own tmp_path instead of the shared archive/; the bulk mocks' HA sensor and queue single routes are mocked, so the batched-reads test no longer falls back to per-printer requests, and it waits for the batches to settle before checking há 4 dias atrás
  maziggy ee2d6e69aa test: close the coroutines that mocked create_task, wait_for, run_coroutine_threadsafe, spawn_background_task and AsyncMock sessions left unawaited (reported as unraisable warnings in unrelated later tests); the Spoolman recovery tests archive under their own tmp_path instead of the shared archive/ há 4 dias atrás
  maziggy c1ea484a5a test: the no-archive notification tests close the coroutine they capture; the Spoolman recovery tests archive under their own tmp_path instead of the shared archive/, where another worker could write the same 3MF path at the same time há 4 dias atrás
  maziggy df6ad0fa60 test: the no-archive notification tests close the coroutine they capture instead of leaking it into a later test's unraisable warning há 4 dias atrás
  maziggy 9f2d15f70f Merge perf/farm-fanout: batched printer-card reads (/api/v1/bulk) and server-paged queue history há 4 dias atrás
  maziggy ed72611344 Bumped version há 4 dias atrás
  MartinNYHC 4316ede3af Merge pull request #3350 from maziggy/dev2 há 4 dias atrás
  maziggy 833a096da6 test/chore: Bandit findings on PR #3350 marked with reasons (ftplib in tests, migration SQL built from module constants), a misplaced nosec moved to its SQL line; layer timelapse tests use tmp_path instead of a shared /tmp/test_bambuddy há 4 dias atrás
  maziggy 76ed16509f chore(deps): pillow 13.0.0 and certifi 2026.10.19, multidict floor 6.9.1 (pip-audit findings); locks regenerated for these packages only há 4 dias atrás
  maziggy 3043dae4fc chore(deps): vite 8.1.6 and source-map-js 1.2.2 (npm audit: launch-editor and source-map advisories in dev tooling) há 4 dias atrás
  maziggy e290a57c84 test: vitest shows console output only for failing tests (silent: 'passed-only' in vitest.config.ts, so Docker runs are quiet too); test_frontend.sh back to npm run test:run há 4 dias atrás
  maziggy 9083cd2a35 test: Docker test runs use 30 workers (-n auto counted physical cores only); tests stop the background tasks they started and close the app engine's connections after every test on SQLite too ("Event loop is closed" thread warning) há 4 dias atrás
  maziggy 198610476f test: Docker test runs use all logical CPUs (-n logical; auto counted physical cores only); tests stop the background tasks they started and close the app engine's connections after every test on SQLite too ("Event loop is closed" thread warning) há 4 dias atrás
  maziggy 92c307786a test: test_frontend.sh hides console output of passing tests (vitest --silent=passed-only) há 4 dias atrás
  maziggy 2443cea174 feat: USB cameras are picked from a list of detected devices (refresh, not-found marking, manual fallback, Docker hint; device listing off the event loop, /dev/video0-99 only); fix: timelapse editor saves as a background job with progress and cancel (ffmpeg stopped on cancel, no overwrite of a timelapse removed or replaced meanwhile, ffprobe/thumbnail timeouts), and the music volume is applied há 4 dias atrás
  maziggy 460c11ca30 chore: remove dead code (audit step 4): unused backend helpers and schema classes, 51 unused API client wrappers, test-only components (BackupModal, RestoreModal, VirtualPrinterSettings, TagDetectedModal, WeightDisplay, useLongPress) and their translations; removed POST /printers/test, the two printer debug routes and the SpoolBuddy update-status channel; legacy virtual printer settings fields removed from the settings API; first-run setup redirect tested há 4 dias atrás
  maziggy 770c6bfdf9 fix: firmware upload only for idle printers (dialog, server, re-check after download, queue waits during upload); AMS Reset Slot asks first and is refused while printing; confirms for shopping list Clear all, Git history Clear and SSO unlink (last SSO link of an account without password stays); LDAP/SMTP test use the form's values; emptying a user's email removes it; local backup delete errors are shown; removed the unreachable printer-card Spoolman link/unlink há 5 dias atrás
  maziggy 57ed8253ea Security hardening (maziggy/bambuddy-security #N) há 5 dias atrás
  maziggy 847baa347d test(frontend): wiring tests for the 37 high-risk gaps (printer card and bulk actions, settings and 2FA, inventory/Spoolman/SpoolBuddy, queue, archives, finance, K-profiles, smart plugs, maintenance); fix: the archive purge uses the previewed age, a transaction can be moved to no cost center, and deleting a printer refreshes its spool assignments há 5 dias atrás
  maziggy 6cdf4eb2d0 Tests: 21 in the new test_api_key_own_rows.py. Before the change, 8 of them failed; the rest pass either way because they check refusals and unchanged behaviour. All 7 mutations were killed. In the #3256 tests (test_api_key_queue_acts_as_owner.py), I tightened the bulk assertion and fixed the outdated docstring. The wiki's API keys page had documented the old refusal; that block is rewritten. há 5 dias atrás
  maziggy c6598afec8 test: library/queue probe files get unique names, so parallel workers no longer delete each other's files ("File not found on disk" flake) há 5 dias atrás
  maziggy bd692ac3c7 fix(stats): date filters use calendar days in the browser's time zone instead of UTC days; the Statistics page sends its zone, and the date-filtered archive, statistics and inventory-statistics endpoints take an optional tz (Bambuddy's own TZ when omitted) há 5 dias atrás
  maziggy ac4806f029 fix: a failed first run no longer leaves the archive at its partial cost (built-in inventory); completion stops the start cost estimate before writing the real cost; 2FA/SSO logins report LDAP/OIDC users' auth source; a fault in both print_error and HMS is listed once; a refused H2D load's tray target expires; refused K-profile re-applies are logged; the cloud filament-name map is fetched once per account without holding a DB connection; the library edit route refuses folder changes across the external boundary; a slow slice-progress answer is not reported as an unreachable sidecar há 5 dias atrás
  maziggy 808e461c52 fix(printers): live updates carry the airduct (cooling/heating) mode, also when it is the only change on an idle printer, and each H2C rack slot's filament type; the recovered-3MF Spoolman tests no longer depend on plate ids another test left behind há 5 dias atrás
  maziggy 5cda4c6913 fix(backup): a Git restore brings back a print that was running at backup time as cancelled ("No status update received") instead of a print that failed on the next reconnect, and an archive this instance still has keeps its own status on overwrite; each spool's last-used time is backed up and restored há 5 dias atrás