Licensing: Hardened the current licensing implementation after file corruption recovery, restoring missing Postgres error formatting and audit-event logging helpers in src/licensing.rs.
Licensing: Expanded the commercial-vs-open-source boundary language across project docs to clarify that the shipped TLBX-1 product is closed-source and license-bound while substantial DSP engines/devices are intended for separate open reuse.
Docs: Added deeper developer/db-admin licensing documentation, including concrete Neon/Postgres operational queries and admin workflows.
Docs: Added docs-site sync coverage for repo docs, including a dedicated mirrored licensing page and broader docs/ directory syncing during docs-site prebuild.
Docs Site: Shifted the Docusaurus site toward a product-site structure with Home, About, product-facing landing content, and docs retained as a subordinate documentation surface.
Docs Site: Restricted the public Docusaurus build to product-facing and user-facing material only, removing developer/internal repo documentation from the public navigation/sync path.
Docs Site: Removed public repo/developer-facing navigation cues and kept the public site focused on product, user manual, and release-note content.
Docs Site: Fixed mirrored-doc broken links and MDX sync/build issues (user-manual.md, crate-split-plan.md) so repo-doc rendering is stable.
Docs Site: Aligned version display with the software version instead of date-based fallback output.
Tooling: Enhanced version:sync so it can auto-increment patch versions or accept an explicit version argument, and added docs-site/package.json, docs-site/api/package.json, and docs-site/config/version.yml to the sync targets.
CI/Release: Reduced GitHub Actions scope to docs-site deployment only and documented that app packaging/releases remain local/manual for now while other CI approaches are still being evaluated.
CI/Release: Updated GitHub Pages deployment flow so docs-site publishing is triggered from release branch pushes after the maintainer version bump step.
CI/Release: Brought the public docs-site live on GitHub Pages with the custom domain https://tlbx.mmistudios.io, including corrected pnpm workflow setup and custom-domain/baseUrl deployment settings.
Docs: Added a dedicated maintainer-oriented Release and Maintenance section to internal onboarding docs covering branch promotion (development -> master -> release), version bump flow, and release hygiene expectations.
Licensing: Added in-app standalone license activation modal with email/license-key activation and local license.json import.
Licensing: Added src/bin/tlbx1-licensing-api.rs with REST/JSON endpoints for /v1/license/activate, /v1/license/refresh, and /v1/license/deactivate.
Licensing: Moved app-side activation to an online-first model using TLBX_LICENSE_API_URL; local license.json now acts as a signed device-bound cache token with refresh support.
Licensing: Added PostgreSQL/Neon licensing schema and API contract docs for customers, licenses, activations, and license events.
Licensing: Added proprietary licensing/compliance groundwork with deny.toml, cargo-deny policy, and npm run tlbx:license-audit.
Runtime: Fixed standalone startup so plugin-only license enforcement no longer blocks the standalone activation flow.
Build/Packaging: Split standalone and plugin workflows into dedicated scripts (tlbx:dev-standalone, tlbx:dev-plugin, tlbx:build-standalone, tlbx:build-plugin) and added staged release packaging (tlbx:stage-release, tlbx:package).
Build/Packaging: Added default-run = "tlbx-1" so normal cargo run-based app workflows continue working after adding the licensing API binary.
Windows Tooling: Updated Visual Studio toolchain assumptions to support VS 18 Professional paths in setup/build docs and wrappers.
Docs: Reconciled roadmap docs against current code, including licensing, Animate, and SynDRM status, and updated docs/HANDOFF.md / docs/SESSION_LATEST.md for ongoing handoff hygiene.
Docs Site: Cleaned template leftovers from the copied Docusaurus setup, fixed broken doc routing/theme defaults, and added a dedicated tlbx docs color theme aligned with the app UI.
Core: Migrated FFmpeg bindings from ffmpeg-next 6.x to 8.x (root crate + crates/tlbx1-io) to align with current Windows FFmpeg ABI (libavformat 62.x).
Core: Removed root Cargo.toml patch overrides for vendored ffmpeg-next / ffmpeg-sys-next to eliminate mixed links = "ffmpeg" conflicts.
Build (Windows): Hardened scripts/windows/cargo-asio.ps1 to require pinned vcpkg root, enforce ABI preflight, set deterministic pkg-config/bindgen env, and prepend FFmpeg runtime DLL paths before launch.
Tooling (Windows): Added scripts/windows/set-dev-env.ps1 for one-shot env setup with optional -Persist.
Tooling (Windows): Added scripts/windows/doctor-ffmpeg.ps1 and npm run tlbx:doctor-asio for fail-fast toolchain validation.
Tooling: Updated scripts/check-build-matrix.js to run the Windows ASIO doctor preflight by default on Windows.
Docs: Added scripts/windows/README.md quickstart with the standard 4-command setup/build flow.
Docs: Updated onboarding + env + workstation docs to codify the new Windows ASIO/FFmpeg baseline and recovery workflow.
Docs: Updated docs/HANDOFF.md and docs/SESSION_LATEST.md with current known-good state, resume block, and required handoff-maintenance policy.
Packaging/Artifacts: Staged current portable build output to dist/windows/standalone/.
Core: Created tlbx1-shared crate and moved common constants/types currently duplicated or global into it.
Core: Created tlbx1-midi-sync crate and moved transport manager/shared state and MIDI sync helpers into it.
Core: Created tlbx1-io crate and moved project serialization, sample/file dialogs backend handling, media decode/encode wrappers, and file writing into it.
Core: Created tlbx1-audio-core crate and moved reusable DSP primitives (envelopes, filter wrappers, interpolation/resampling helpers, etc) into it.
Core: Created tlbx1-engines crate and moved engine state + per-sample/per-block processing for each engine into it.
Core: Created tlbx1-devices crate and moved device state + per-sample/per-block processing for each device into it.
Core: Added tlbx1-ui-bridge crate and moved UI projection/index/mapping/settings helper logic out of the root crate.
Core: Completed crate-separation closeout and manual validation (MIDI transport parity + audible regression pass).
Core: Integrated ASIO driver capabilities into the tlbx1-audio-core crate.
Recording: Live jam WAV writer now opens with the actual app sample rate (e.g. 48k when app runs at 48k).
FMMI: Added ADSR amp envelope with per-step controls and Modul8 param targets.
FMMI: Added per-step gate/note-length controls and Modul8 param targets.
FMMI: Added control for adjusting the amount of randomness applied to params when a user initiates a randomization.
FMMI: Added control for adjusting the amount of randomness applied to note/step-trigger when a user initiates a randomization.
FMMI: Added a scale picker that drives the note randomization and keybed highlighting. Scales can be added to scales.json.
FMMI: Added a switchable mono/poly mode to switch between note/gate-cutting mono mode and a new mode with 8 voices with its own phases/envelopes per voice.
Added new Modul8 device (8 LFO modulation section) with engine-scoped targets for the loaded engine plus downstream devices, and full-range modulation depth.
Removed hardcoded color literals and replaced with Theme constants across all engines and devices.
UI layout improvements across all engine's devices section.
Cleaned build warnings by removing unused fields/helpers and tightening follow_host_tempo field usage across TLBX1/SlintEditor/SlintWindow, plus simplified loops.
Removed unused project serialization structs/helpers. Fixed browser panel padding by wrapping in a layout.
Adjusted the spectrum display to be less “wide” and show more movement.
Per-engine mute toggles for Animate, SynDRM, Void Seed, and Tape UI.
Transport decoupling to allow synth voice tails after transport stops.