Commit Graph
76 Commits
Author SHA1 Message Date
Ewald 37fb1b00e6 chore: release 2.5.1 2026-09-04 21:18:35 +02:00
dependabot[bot] 628e5b7512 chore(deps): update sentence-transformers requirement
Updates the requirements on [sentence-transformers](https://github.com/huggingface/sentence-transformers) to permit the latest version.
- [Release notes](https://github.com/huggingface/sentence-transformers/releases)
- [Commits](https://github.com/huggingface/sentence-transformers/compare/v2.2.0...v6.0.0)

---
updated-dependencies:
- dependency-name: sentence-transformers
  dependency-version: 6.0.0
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-08-28 07:34:47 +00:00
Ewald b700104588 feat: modernize ComfyUI integration and add KJNodes previews 2026-08-12 11:16:06 +02:00
Ewald ALOEBOETOE 47d346a34e Bump version from 2.4.9 to 2.5.0 2026-07-09 12:30:21 +02:00
Ewald ed8e33c5e4 Prepare 2.5.0 features and release notes 2026-07-09 11:18:28 +02:00
Ewald ALOEBOETOE 85aa566394 Merge pull request #160 from MajoorWaldi/dependabot/pip/opencv-python-headless-gte-4.8.0-and-lt-6.0.0
chore(deps): update opencv-python-headless requirement from <5.0.0,>=4.8.0 to >=4.8.0,<6.0.0
2026-07-06 14:01:35 +02:00
Ewald 5e7784d5c9 Declare numpy runtime dependency 2026-07-06 13:55:35 +02:00
dependabot[bot] b345bfe1c7 chore(deps): update opencv-python-headless requirement
Updates the requirements on [opencv-python-headless](https://github.com/opencv/opencv-python) to permit the latest version.
- [Release notes](https://github.com/opencv/opencv-python/releases)
- [Commits](https://github.com/opencv/opencv-python/commits)

---
updated-dependencies:
- dependency-name: opencv-python-headless
  dependency-version: 5.0.0.93
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-07-03 07:33:50 +00:00
Ewald 67a8aa4961 Release 2.4.9 and fix LTX video drops 2026-06-25 12:29:16 +02:00
MajoorWaldi 720ab8c32b chore(deps): update pywin32 requirement from <312,>=300 to >=300,<313
Updates the requirements on [pywin32](https://github.com/mhammond/pywin32) to permit the latest version.
- [Release notes](https://github.com/mhammond/pywin32/releases)
- [Changelog](https://github.com/mhammond/pywin32/blob/main/CHANGES.md)
- [Commits](https://github.com/mhammond/pywin32/commits)

---
updated-dependencies:
- dependency-name: pywin32
  dependency-version: '312'
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-06-05 07:33:39 +00:00
Ewald a78f4572c8 Align frontend layout with ComfyUI conventions 2026-05-26 10:42:22 +02:00
MajoorWaldi 2adf766152 chore(deps): update av requirement
Updates the requirements on [av](https://github.com/PyAV-Org/PyAV) to permit the latest version.
- [Release notes](https://github.com/PyAV-Org/PyAV/releases)
- [Changelog](https://github.com/PyAV-Org/PyAV/blob/main/CHANGELOG.rst)
- [Commits](https://github.com/PyAV-Org/PyAV/compare/v12.0.0...v17.0.1)

---
updated-dependencies:
- dependency-name: av
  dependency-version: 17.0.1
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-05-22 07:40:06 +00:00
Ewald 96893ac4b3 feat: Phase 1+2 ComfyUI core integration + workflow_id in File Info sidebar
- schema v16: add workflow_id column to assets table
- post_execution: capture workflow_id via get_workflow_id_for_prompt
- comfy_core: add get_workflow_id_for_prompt helper (extra_data fallback)
- result_hydrator: expose workflow_id in asset payload and file_info dict
- SidebarFileInfoSection: show Workflow ID row in File Info section
- ViewerMetadataBlock: include workflow_id in hasFileInfoData check
- integration routes: register_integration_routes via route_catalog
- hashing: blake3 with sha256 fallback (mjr_am_shared/hashing.py)
- requirements.txt: add blake3>=0.4.0,<2.0.0 (soft dep, sha256 fallback)
- js/integration: comfy_send_to_am.js via comfyApiBridge (no depth-fragile imports)
- pyproject.toml: fix duplicate [tool.comfy] section
- viewer.py: replace assert with explicit None guard (ruff S101)
- build: 301 modules, js_dist updated
2026-05-21 22:12:50 +02:00
Ewald 5bc7d71a24 Release v2.4.8 2026-05-18 00:25:14 +02:00
Ewald 4e7207a05d feat: update drag drop, docs, and build outputs 2026-05-15 17:13:04 +02:00
MajoorWaldi af4f0008ef chore(deps-dev): update mypy requirement
Updates the requirements on [mypy](https://github.com/python/mypy) to permit the latest version.
- [Changelog](https://github.com/python/mypy/blob/master/CHANGELOG.md)
- [Commits](https://github.com/python/mypy/compare/v1.11...v2.0.0)

---
updated-dependencies:
- dependency-name: mypy
  dependency-version: 2.0.0
  dependency-type: direct:development
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-05-08 07:37:32 +00:00
Ewald 16546ee7c2 Bump version and add ImageOps message 2026-05-01 19:41:58 +02:00
Ewald 0894657274 security: honor UI prefs at runtime + LAN-friendly defaults
The Settings -> Security toggles (Allow Remote Full Access, Allow HTTP Token Transport, Require Token For All Writes) were persisted in the DB but ignored by _check_write_access() and the bootstrap-token endpoint, which only read MAJOOR_* env vars. Remote LAN clients hit 'Write access is blocked' even with all toggles enabled.

- New security_prefs_snapshot module: thread-safe in-memory snapshot of persisted prefs, hydrated at ensure_security_bootstrap() and republished on every set_security_prefs(). Read synchronously by guards.

- security.py::_resolve_security_flag(pref_key, env_var, default): single read site, snapshot-first / env-fallback. Used for allow_remote_write, require_auth, allow_insecure_token_transport.

- _bootstrap_enabled() also returns True when allow_remote_write is set in the snapshot (UI consent for remote bootstrap).

- bootstrap-token / rotate-token accept plain HTTP transport when allow_insecure_token_transport is on.

- Friendlier defaults so first install works zero-config on LAN: allow_remote_write=True, allow_insecure_token_transport=True. Auto-generated API token still gates writes.

- Error messages updated to point users to Settings -> Security instead of only env vars.

- README rewritten to put the UI flow first; env vars as headless fallback.

- pyproject.toml: per-file ignore F401 for routes/core/security.py since it is the single import point that re-exports from sub-modules.
2026-04-24 15:33:15 +02:00
Ewald 88460e863c chore: bump version to 2.4.6 2026-04-20 23:27:17 +02:00
Ewald dae292725c release: v2.4.5 2026-04-15 15:43:41 +02:00
Ewald a2053d0cba refactor(v2): plan V2 complet — splits JS, tests frontend, durcissement securite
Chantier F - Typage Python
- ruff S101 déplacé en per-file-ignores (pyproject.toml)
- pyrightconfig.json : mode standard confirmé

Chantier G - Assertions & bare-except
- 16 blocs except documentés dans config.py
- --cov-branch activé, seuil coverage 60→68%

Chantier H - Cache settings
- Stratégie documentée dans settings.py
- _resolve_index_dir() logguée dans config.py

Chantier I - Split gros fichiers JS
- client.js 1509L → client.js 406L + clientAuth.js + clientOps.js + fetchUtils.js
- toolbar.js 927L → toolbar.js 458L + toolbarActions.js + toolbarControls.js
- FloatingViewer.js → FloatingViewer.impl.js + floatingViewer*(8 modules)
- Viewer_impl.js → ViewerRuntime.js + viewerShell.js + viewerThemeStyles.js + viewerOverlayDismiss.js
- model3dRenderer.js → model3dRenderer.impl.js + model3dCore.js + model3dLoaders.js + model3dSupport.js
- dialogs.js → dialogs.js + DialogTemplates.js

Chantier J - Tests frontend (Phases 1-2)
- use_drag_drop.vitest.mjs : 5 tests
- use_grid_state.vitest.mjs : 18 tests
- security_client_headers, security_deep_merge, security_runtime_state, runtime_store, dialog_templates
- Total: 80 fichiers test / 350 tests vitest

Chantier K - Pinia migration
- runtimeState.js entièrement migré vers Pinia
- getOptionalRuntimeStore.js + runtimeEnrichmentState.js ajoutés

Chantier L - Durcissement sécurité
- tests/security/test_rate_limit.py : 8 tests rate-limit (state machine complète)
- clientAuth.js : docstring sessionStorage security boundary
- three.js 0.183.2 audité : 0 CVE (Snyk)

Chantier M - Simplification config
- deps.py, tool_detect.py, utils.py nettoyés

docs: PLAN_REFACTO_V2_LONG_TERME.md ajouté et clôturé
.gitignore: coverage/ ajouté
2026-04-11 09:38:41 +02:00
Ewald 1982b3ab3c Add local and CI quality gates 2026-04-10 11:05:27 +02:00
MajoorWaldi d03b8705d6 chore: release 2.4.4 2026-04-05 20:37:19 +02:00
Ewald ALOEBOETOE 730ec6e07b Merge pull request #38 from MajoorWaldi/dependabot/pip/sentence-transformers-gte-2.2.0-and-lt-6.0.0
chore(deps): update sentence-transformers requirement from <4.0.0,>=2.2.0 to >=2.2.0,<6.0.0
2026-03-29 23:54:42 +02:00
Ewald ALOEBOETOE 6652b3a6fb Merge pull request #34 from MajoorWaldi/dependabot/pip/pytest-gte-8.0.0-and-lt-10.0.0
chore(deps-dev): update pytest requirement from <9.0.0,>=8.0.0 to >=8.0.0,<10.0.0
2026-03-29 23:54:22 +02:00
Ewald ALOEBOETOE e87362bf3c Merge pull request #39 from MajoorWaldi/dependabot/pip/pywin32-gte-300-and-lt-312
chore(deps): update pywin32 requirement from <311,>=300 to >=300,<312
2026-03-29 23:53:52 +02:00
Ewald ALOEBOETOE 9faebb76ce Merge pull request #36 from MajoorWaldi/dependabot/pip/huggingface-hub-gte-0.24.0-and-lt-2.0.0
chore(deps): update huggingface-hub requirement from <1.0.0,>=0.24.0 to >=0.24.0,<2.0.0
2026-03-29 23:53:38 +02:00
MajoorWaldi cd5a581e4f Bump version to v2.4.3 2026-03-29 23:44:39 +02:00
MajoorWaldi cce569f39a feat: Enhance asset management with watcher toggle and vector runtime improvements 2026-03-29 16:04:59 +02:00
MajoorWaldi 6d144e196e chore(deps): update pywin32 requirement from <311,>=300 to >=300,<312
Updates the requirements on [pywin32](https://github.com/mhammond/pywin32) to permit the latest version.
- [Release notes](https://github.com/mhammond/pywin32/releases)
- [Changelog](https://github.com/mhammond/pywin32/blob/main/CHANGES.md)
- [Commits](https://github.com/mhammond/pywin32/commits)

---
updated-dependencies:
- dependency-name: pywin32
  dependency-version: '311'
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-28 19:52:57 +00:00
MajoorWaldi e13bfb3d1b chore(deps): update sentence-transformers requirement
Updates the requirements on [sentence-transformers](https://github.com/huggingface/sentence-transformers) to permit the latest version.
- [Release notes](https://github.com/huggingface/sentence-transformers/releases)
- [Commits](https://github.com/huggingface/sentence-transformers/compare/v2.2.0...v5.3.0)

---
updated-dependencies:
- dependency-name: sentence-transformers
  dependency-version: 5.3.0
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-28 19:52:54 +00:00
MajoorWaldi 4a013bfd15 chore(deps): update huggingface-hub requirement
Updates the requirements on [huggingface-hub](https://github.com/huggingface/huggingface_hub) to permit the latest version.
- [Release notes](https://github.com/huggingface/huggingface_hub/releases)
- [Commits](https://github.com/huggingface/huggingface_hub/compare/v0.24.0...v1.8.0)

---
updated-dependencies:
- dependency-name: huggingface-hub
  dependency-version: 1.8.0
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-28 19:52:43 +00:00
MajoorWaldi b61f76c75b chore(deps-dev): update pytest requirement
Updates the requirements on [pytest](https://github.com/pytest-dev/pytest) to permit the latest version.
- [Release notes](https://github.com/pytest-dev/pytest/releases)
- [Changelog](https://github.com/pytest-dev/pytest/blob/main/CHANGELOG.rst)
- [Commits](https://github.com/pytest-dev/pytest/compare/8.0.0...9.0.2)

---
updated-dependencies:
- dependency-name: pytest
  dependency-version: 9.0.2
  dependency-type: direct:development
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-28 19:52:34 +00:00
MajoorWaldi 8e480d7d68 feat: Enhance various components with error handling, resource management, and dependency updates 2026-03-28 20:51:34 +01:00
Ewald ALOEBOETOE 94b79a174a Merge pull request #30 from MajoorWaldi/dependabot/pip/pytest-cov-gte-6.0.0-and-lt-8.0.0
chore(deps-dev): update pytest-cov requirement from <7.0.0,>=6.0.0 to >=6.0.0,<8.0.0
2026-03-28 16:11:24 +01:00
Ewald ALOEBOETOE 62989d6810 Merge pull request #32 from MajoorWaldi/dependabot/pip/transformers-gte-4.44.0-and-lt-6.0.0
chore(deps): update transformers requirement from <5.0.0,>=4.44.0 to >=4.44.0,<6.0.0
2026-03-28 16:10:44 +01:00
Ewald ALOEBOETOE 6e430b112a Merge pull request #31 from MajoorWaldi/dependabot/pip/send2trash-gte-1.8.0-and-lt-3.0.0
chore(deps): update send2trash requirement from <2.0.0,>=1.8.0 to >=1.8.0,<3.0.0
2026-03-28 16:10:15 +01:00
MajoorWaldi e90ccefafc chore(deps-dev): update pytest-cov requirement
Updates the requirements on [pytest-cov](https://github.com/pytest-dev/pytest-cov) to permit the latest version.
- [Changelog](https://github.com/pytest-dev/pytest-cov/blob/master/CHANGELOG.rst)
- [Commits](https://github.com/pytest-dev/pytest-cov/compare/v6.0.0...v7.1.0)

---
updated-dependencies:
- dependency-name: pytest-cov
  dependency-version: 7.1.0
  dependency-type: direct:development
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-28 15:09:15 +00:00
MajoorWaldi b8bcdcd474 chore(deps): update transformers requirement
Updates the requirements on [transformers](https://github.com/huggingface/transformers) to permit the latest version.
- [Release notes](https://github.com/huggingface/transformers/releases)
- [Commits](https://github.com/huggingface/transformers/compare/v4.44.0...v5.4.0)

---
updated-dependencies:
- dependency-name: transformers
  dependency-version: 5.4.0
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-28 14:36:40 +00:00
MajoorWaldi 7a3146f853 chore(deps): update send2trash requirement
Updates the requirements on [send2trash](https://github.com/arsenetar/send2trash) to permit the latest version.
- [Release notes](https://github.com/arsenetar/send2trash/releases)
- [Changelog](https://github.com/arsenetar/send2trash/blob/master/CHANGES.rst)
- [Commits](https://github.com/arsenetar/send2trash/compare/1.8.0...2.1.0)

---
updated-dependencies:
- dependency-name: send2trash
  dependency-version: 2.1.0
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-28 14:36:30 +00:00
MajoorWaldi 6c4930456d chore(deps-dev): update pytest-asyncio requirement
Updates the requirements on [pytest-asyncio](https://github.com/pytest-dev/pytest-asyncio) to permit the latest version.
- [Release notes](https://github.com/pytest-dev/pytest-asyncio/releases)
- [Commits](https://github.com/pytest-dev/pytest-asyncio/compare/v0.22.0...v1.3.0)

---
updated-dependencies:
- dependency-name: pytest-asyncio
  dependency-version: 1.3.0
  dependency-type: direct:development
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-28 14:36:18 +00:00
MajoorWaldi 4411c72e4e Refactor test imports and clean up unused code across multiple test files
- Removed unnecessary imports from various test files to improve readability and maintainability.
- Added new settings for the Generated Feed display in the settingsFeed.js file.
- Introduced a new configuration file for Pyright type checking.
2026-03-28 13:26:28 +01:00
MajoorWaldi 2506ae7df3 feat: Enhance SQLite facade with type checks and improve collections service error handling 2026-03-26 21:02:32 +01:00
MajoorWaldi cb171e826d feat: Add runtime bootstrap helpers and search request normalization
- Introduced runtime bootstrap helpers in `mjr_am_backend.features.runtime` for dependency initialization.
- Implemented `apply_startup_settings` to handle various startup configurations.
- Added search request normalization helpers in `mjr_am_backend.features.search` including `SearchRequestContext` and `parse_search_request` for better query handling.
- Created audit logging helpers in `mjr_am_backend.routes.core.audit_log` for state-changing route handlers.
- Developed a quality gate script in `scripts/run_quality_gate.py` to enforce code quality checks.
- Added comprehensive tests for audit routes, scan consistency, vendor routes, and code quality metrics.
2026-03-26 20:42:51 +01:00
MajoorWaldi 3229a134fa feat(release): update to version 2.4.2 with new features and bug fixes 2026-03-17 23:00:25 +01:00
MajoorWaldi a9aa536caa feat(release): update version to 2.4.1 and add release notes for new features and fixes 2026-03-09 11:58:59 +01:00
MajoorWaldi 7c4b9d6c2a feat: implement model caching in VectorService and add unit tests for cache reuse 2026-03-03 00:30:09 +01:00
MajoorWaldi fcbeedd33a Bump version to 2.4.0: update pyproject, README, and CHANGELOG 2026-02-28 21:51:04 +01:00
MajoorWaldi a2fe07ce40 Refactor asset metadata FTS schema and triggers
- Removed unnecessary 'content' column from asset_metadata_fts table.
- Updated triggers for insert, delete, and update operations to reflect schema changes.
- Enhanced FTS repair logic to check for missing columns and outdated trigger patterns.
- Adjusted asset metadata reindexing to include the new metadata_text field.
- Simplified FTS reindexing logic in recovery process.
- Improved file rename conflict detection by removing unnecessary case sensitivity checks.
- Updated project metadata in pyproject.toml for clarity.
2026-02-28 15:25:58 +01:00
MajoorWaldi e7c2443670 fix(security): improve API token handling and add server-side bootstrapping
- Move token from local to session storage on client side
- Set httpOnly cookie for server-side token on bootstrap/rotate
- Add token validation and auto-sanitization
- Implement retry logic for failed operations
- Add input validation for collection names
- Update toast durations and error handling
2026-02-27 10:09:44 +01:00