- brand.toml is the only place the product name lives; every crate and app
reads it through dac-brand (env vars with legacy fallback, settings folder
with copy-only migration, default library, preset extensions, i18n {app})
- cargo xtask brand check|test, run|install|package, docs, rename-crates,
deny and immich; packaging files are templates rendered from brand.toml
- icons regenerated from brand/icon.svg; upstream branding removed
- MIT licence (segment and fetch stay Apache-2.0); cargo deny licence policy
- clean-room rules in AGENTS.md/CLAUDE.md; docs/upstream-merge.md
- plan/ rebuilt and committed; parity tracker reopens Classic rows, adds
PLAN.md section 2 rows and the IMM Immich section; plan/immich.md and a
pinned Immich test server
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
dac-denoise
L1 pure-Rust AI RAW denoise primitives and CPU inference. No weights are bundled. See user workflow and limitations.
dac-denoise-core provides metadata, Bayer helpers and cache formats,
re-exported here. manifest and known validate opt-in models; onnx reads a bounded operator subset
into net; cpu executes it and reference supplies scalar checks. bayer, tiles
and run pack sensor data and blend overlapping tiles while preserving clipped
highlights. product reads/writes the disposable .lcdn cache. runtime supplies
the installation self-test. Synthetic networks are generated in Rust for tests.
Run cargo test -p dac-denoise --features runtime. The CPU backend is optional;
featureless and web builds keep the model metadata and cache format without faer/GEMM.
The rawnind-model feature enables the otherwise empty download catalog and requires
an explicit release-policy decision. Real-model tests are ignored by default and
require an explicitly supplied local model. The GPU twin is dac-gpu::nn;
model management, background jobs and export integration live in dac-engine.