# Dites33 A2 1.0.0 — Plug-in Validation Report

Validation date: 23 August 2026

## Release artifacts

- VST3: `Dites33 A2.vst3`
- Audio Unit: `Dites33 A2.component`
- Standalone: `Dites33 A2.app`
- Formats: mono and stereo audio effect
- Deployment target: macOS 13.0 or later
- Architectures: universal `arm64` and `x86_64`
- Embedded model: NAM 0.7.0 A2 `SlimmableContainer`, native 48 kHz

## Automated checks

- All three Mach-O binaries contain both `arm64` and `x86_64` slices.
- All three local ad-hoc signatures pass `codesign --verify --deep --strict`.
- Apple `auval -v aufx Dit3 Bufl`: **AU VALIDATION SUCCEEDED**.
- AU custom UI, parameter persistence, mono/stereo layouts, bypass, latency,
  host callbacks, and parameter scheduling passed.
- AU rendering passed at 11.025, 22.05, 44.1, 48, 96, and 192 kHz, including
  64, 137, 512, and 4096-frame blocks.
- `Dites33ProcessorTests`: **9/9 checks passed** for model loading,
  mono/stereo layouts, nonlinear engaged processing, click-free bypass
  transition, bit-transparent settled bypass, parameter-state round-trip,
  44.1/48/96/192 kHz variable-block processing, independent stereo chains,
  and transparent oversized-block fallback.
- Input and output automation use 5 ms smoothing. Footswitch automation uses a
  12 ms dry/wet crossfade and becomes sample-exact dry once the transition has
  settled.
- Audio buffers are preallocated before playback. `processBlock` performs no
  buffer resizing; if an out-of-contract host block exceeds 16,384 frames, that
  block is passed through unchanged rather than allocating on the audio thread.

`pluginval` 1.0.4 was also attempted, but that old validator aborts inside
AppKit application registration on macOS 26.6.1 before any plug-in is scanned.
This is recorded as a validator incompatibility, not as a plug-in result; AUVal,
the processor test suite, and Cubase provide the applicable validation evidence.

## Cubase 13 native-host check

- Cubase's native VST3 scanner registered **Dites33 A2 1.0.0** by
  **Buffle Audio** as `Fx|Distortion`, VST SDK 3.8.0.
- On 23 August, the final allocation-safe VST3 was copied to the user VST3 directory and
  its executable SHA-256 was matched byte-for-byte against the release build:
  `3aa9565f8dbb981b7e3483506d09fd463b93b174ee51e63392fba90d41cd5cc7`.
- Cubase was then fully quit, restarted, and the saved project
  `Dites33_Full_Track_AB_Test_BASE_MIX_01_RECOVERED3-01.cpr` reopened without a
  missing-plug-in or load-error dialog. A process-module inspection confirmed
  that Cubase had loaded that exact VST3 executable from
  `~/Library/Audio/Plug-Ins/VST3/Dites33 A2.vst3`.
- The VST3 was instantiated on an audio track in Cubase 13.
- The custom 900 x 760 interface rendered correctly.
- Cubase exposed Input Trim, Level, Output Trim, A2 Quality, and Bypass.
- The embedded neural engine initialized with the green status
  **NAM A2 model ready**.
- The corrected text was visually checked in the rebuilt standalone target,
  which uses the same shared editor code as the VST3 and AU.
- Corrected visual evidence: `Dites33_A2_Typography_Fixed.png`.

## Release boundary

The downloadable developer-preview build is ad-hoc signed for testing. Public
distribution still needs a Developer ID signature and Apple notarization. The
repository includes `scripts/build_release_macos.sh`, which enforces those
steps and refuses to continue when the identity or notarization profile is
missing. JUCE must be used under a commercial licence or in full compliance
with its AGPL terms.

The physical pedal was captured only at 12 o'clock. The large on-screen Level
control is therefore a transparent post-model gain control, not an invented
interpolation of uncaptured hardware settings.
