Repository navigation
Conversation
…kflow runs more steps or frames than the template Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
…nds (min 0.05, capped at 2400 bins) Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
…long transcript chunks and warn in plan_cuts Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
…port cycle; loudest-window measure lives in dsp Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
…pect; plan_cuts leaves them out and warns once per run Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…d SDNQ loads on lem Stage 0 of #815: standalone operator script (no dw engine imports) that times on-the-fly SDNQ loads against save_sdnq_model/load_sdnq_model for the H3 and LTX-2.5 default configs, page cache warm and cold (per-file posix_fadvise DONTNEED), and prints the table with the H3 gate verdict. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
… on disk behind DW_QUANTIZED_CACHE=1 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…'s own process, download only what a load reads, fsync before eviction and read every page inside the timing Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…-aa0c30a7eac0e5702' into feat/815-A-quantized-cache
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
The architecture review bounced the hand-written hub-cache layout (models-- folder naming, refs/ read, snapshots/ joins). Commit resolution and the completeness check now go through try_to_load_from_cache; dw keeps only which files a component needs. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…TE /api/caches, get_server_info caches Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…outes Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
List dw's disk caches (GET /api/caches) after Directories: root, size, files, last used, enabled and the volume's free/total bar. A Clear button per cache asks through confirmDialog quoting cost_of_clearing (triton's carries the shared-cache warning), is disabled with not_clearable_reason when the root isn't dw's, and shows the server's text on a refusal (409). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…snapshot in its repo folder; name why a miss missed - snapshot_complete checks containment against the repo's own folder (symlinks resolved), so a repo folder linked to another disk is found - save_commit is lookup_commit's commit, with a recorded commit required to agree: an entry is never written that an identical lookup can't read - a miss carries a reason: no_entry, incomplete_snapshot or load_failed: <type>; a failing entry raises after it is deleted Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
formatBytes floors at 1 KB, so an empty inductor cache read '1 KB, 0 files' in the confirm while the table showed 0. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…dnq's load rewrites it SDNQConfig.to_dict() shares the config's own lists, and sdnq appends the modules it leaves unquantized to modules_to_not_convert during the load. The key read before the load therefore changed under it: the save keyed the post-load config, so no later lookup matched, and the appended list could differ by card. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…n the worker's hash order SDNQConfig dedupes modules_to_not_convert, modules_to_not_use_matmul and modules_dtype_dict's lists through list(set(...)), so their order follows each process's string-hash seed. Every worker held H3's nine-name transformer list in its own order, and so keyed the same config differently per card. The key now sorts them. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…peated shot name is unambiguous Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
…t load path (LTX-2.5) A component an SDNQ config quantizes in load_component's from_pretrained branch is looked up with stage A's key, snapshot rule, free-space floor and atomic save. A hit skips the load and download_watch, and is placed on the config's return_device. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…sor names, so Gemma 4 loads back transformers 5's save_pretrained writes a model in its checkpoint's original layout (the weight conversion mapping run backwards), and load_sdnq_model loads names as they are. LTX-2.5's Gemma 4 text encoder has a mapping for its vision tower, so every saved entry failed to load with a RuntimeError and was re-quantized and re-saved on every run. Save with save_original_format=False where save_pretrained takes it. A load_failed reason now carries the first line of the error's message. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
#827) LTX-2.5's transformer/ holds a 4-shard and an 8-shard set; the index names the 4. Asking snapshot_download for every *.safetensors under local_files_only demanded the unused set and raised IncompleteSnapshotError on a snapshot complete for what a load reads. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…on a built UI With ui/dist present, create_app mounts the UI's StaticFiles at /, which takes a path no route matches and answers DELETE with 405; without it the same request is 404. The test asserted 404 and failed on any checkout with a built UI (mini-ai returns 405 live). Route tests now run without a UI unless they ask for one, and the traversal test pins both outcomes, with nothing touched either way. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…vels_dbfs Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
mini-ai supervises dw.serve with a KeepAlive LaunchDaemon (system/com.local.dw). deploy.sh did not know, so each deploy stopped the server and started a screen copy while launchd started its own; the two raced for the port and the loser crash-looped - 9150 'address already in use' errors in mini-ai's log. With the daemon loaded (DW_LAUNCHD_LABEL, default com.local.dw), deploy now only stops the server and waits for launchd's restart. Linux and boxes without the daemon are unchanged. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…ith entry delete Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…the quantized member Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…rom quantized_cache The architecture review found the key pattern and the HF_HOME/dw-quantized default defined in both modules. quantized_cache now exposes is_key() and default_root(); disk_caches calls them, and delete_entry builds the path through quantized_cache.entry_path. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
… server start Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…ipped, not fatal sweep() and _entry_sizes() validate each child of the cache root against the root. A symlinked entry pointing at another disk resolves outside it, and validate_path refuses that with a PathTraversalError - a SecurityError, which configure_at_startup's OSError catch did not cover, so dw.serve never started while DW_QUANTIZED_CACHE=1. The child is now logged and left alone, the sweep carries on, and startup also catches SecurityError. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
…erval; interval_seconds has a ceiling The 2400-bin cap added for fine intervals also applied at the default 1.0 s, so a track over 40 minutes that master answered got a 422. The limit is now the larger of the cap and the bins the default interval gives, so a request is never refused for being no finer than the default. interval_seconds had no upper bound: pydantic reads "inf" from a query string, and 1e305 overflows the bin-sample product the same way, both a 500 instead of the 422 the route promises. MAX_ENVELOPE_INTERVAL (3600 s) bounds it; NaN fails the floor check. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
… under the 600-line ceiling ServerPage.svelte reached 725 lines with the #833 Caches panel and the UI ratchet (files_over_size_ceiling 0 -> 1) has failed develop CI since. The panel's state, handlers, template and the styles only it uses move to ui/src/lib/CachesPanel.svelte; ServerPage renders it. No behaviour change - the ServerPage tests cover the panel through the page as before. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
…ses, not an exact listing test_traversal_name_touches_nothing compared tree(tmp_path) before and after the request, but the server's own workspace lives under tmp_path and adds files there (outputs/, the job history's -shm/-wal) on its own schedule, so the test flaked on CI. It now plants the traversal target's would-be victim, asserts it survives, and checks the parent gained nothing lost rather than changed nothing. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
develop -> master for 0.12.0: the quantized-component cache (`DW_QUANTIZED_CACHE=1`), the disk-cache registry with its Caches panel, transcription hallucination guards for music-video cuts, and the gallery envelope's `interval_seconds`. The drafted notes are the 0.12.0 section of docs/RELEASING.md.
Preflight on this Mac: ruff clean, ratchet green (modules 208, patch targets 326, both raised in db0f8b3), 13887 unit tests, 5 MPS integration tests, 505 vitest, 109 Playwright e2e. The two develop CI reds since #834 (ServerPage over the UI size ceiling, a flaky traversal test) are fixed in 5c64df3 and b02cf89.
🤖 Generated with Claude Code