Guide
JUCE Troubleshooting and Release Checks
Diagnose online renewal, processor ownership, headless processing, and package configuration.
Offline startup
JUCE 0.7.3 supports signed offline access for the grace period selected in product Access settings, through 90 days. A prior successful activation or validation and the matching package verification keys are required. Startup uses a verified unexpired grant or online authorization. Zero, disabled, missing or expired grace requires online authorization; confirmed denial or deactivation locks access. Regenerate and rebuild older plugins to use this release.
SoundSync
Symptom and investigation
| Symptom | Investigation |
|---|---|
| Unlock works only with editor open | Move ownership/worker lifetime to the processor; attach the editor to that instance |
| Unauthorized sound continues | Guard float, double, and bypass callbacks before AND after DSP with processOutputs(buffer, midi, getTotalNumOutputChannels()); return when locked. Prefer SoundSyncLicensedAudioProcessor; do not use UI state as the audio authority |
| CMake cannot find JUCE targets | Load JUCE before adding SoundSync and link soundsync_juce to the intended plugin target |
| Account login succeeds but activation fails | Check product entitlement, activation mode, credential scope, and machine limits |
| My Products session expired | Refresh customer browsing identity; do not equate the portal token with the machine license |
| Old binary still behaves differently | Rebuild with the current package and confirm the host loaded the new binary |
| Generated brand/config mismatch | Regenerate for the correct saved product and rebuild |
SoundSync
Recover offline access without resetting ownership
| Symptom or safe code | Check | Recovery |
|---|---|---|
| refresh_required after upgrading an older cache | No verified signed grant is available yet | Reconnect and allow successful validation using saved machine credentials. Activate only when required; do not delete valid activations to manufacture grace. |
| offline_lease_expired | The signed deadline or an earlier access deadline has passed | Reconnect and validate. Only an authorized success can refresh the grant; restarting or changing offlineGraceDays cannot extend it. |
| No grant despite a selected period | Zero/disabled Access settings, current entitlement, and whether the response actually contains offline_lease | Save the intended Access policy and validate online again. If an authorized positive-grace response still has no grant, contact SoundSync; do not unlock from grace_expires_at alone. |
| offlineAccess: false or an untrusted signing key | manifest.json and the generated public verification-key ring | Contact SoundSync for signing/package readiness. Obtain the matching current package, rebuild and distribute it. Do not generate a private key inside the plugin or trust an unknown key supplied with a response. |
| Wrong product/device or edited grant | Package product identity, stable machine identity, and signature verification | Keep locked. Restore the correct generated configuration and validate or activate through the supported flow for this machine. Never copy another device cache. |
| clock_anomaly | The system clock is earlier than the last validation | Correct the system date/time, reconnect and validate. Do not edit signed timestamps or disable clock checks. |
| cache_write_failed or secure-storage failure | Windows DPAPI or Apple Keychain access and filesystem permissions | Restore secure-storage access and retry the supported online flow. Do not replace protected storage with plain JSON or publish the cache in a support report. |
| deactivation_pending | A local deactivation was saved but server confirmation is outstanding | Keep audio locked and reconnect to finish deactivation. A local lock does not prove the server device slot was released. |
| Confirmed refund, revocation or entitlement denial | The returned licensing decision, separate from connectivity | Follow the account/support recovery for that decision. Neither an old grant nor another retry can override a known denial. |
SoundSync
Updating an existing product
Regenerate and update JUCE
Readiness, first online refresh, rebuild and customer distribution.
Protect the support bundle
Include package version, platform, host/format, product ID, and error code. Never send a customer password, product secret, complete serial, activation cache, or private portal token in public issue reports.
This guide describes the current implementation and package instructions. Source review does not certify every host, operating system, provider delivery, or payment lifecycle. Test the exact build and environment you intend to release.
SoundSync
Finish sign-in before activating a device
| Result | Next action |
|---|---|
| 200 twoFactorRequired:true | Keep the plugin locked. Continue /api/auth/login with the returned private twoFactorToken, an authenticator or unused recovery code, the same customer email and role:customer. Omit the password on this continuation. |
| 401 Invalid two-factor code | Retry a current authenticator or unused recovery code within the existing challenge. Do not restart activation or create another account. |
| Expired challenge / two_factor_expired | Choose Start again and enter the password. Native challenges last up to ten minutes and do not survive restarting the plugin. |
| 403 EMAIL_VERIFICATION_REQUIRED | Verify the customer account email through its supported account flow, then sign in again. Account verification and serial ownership verification are separate. |
| Verified login returns token | Pass that account token as customer_token to /api/license/v1/customer-login/activate for the matching product and machine. A challenge token is not this account token. |
| 401 TWO_FACTOR_REQUIRED from direct password activation | Use the two-step account login instead. The direct licensing email/password compatibility branch cannot finish two-factor authentication. |
| Entitlement or device-limit denial | Use the ownership, billing or device-management recovery path. Account sign-in alone does not unlock the product or create offline grace. |
SoundSync
Account login and recovery
Activation feedback and protected Windows recovery
JUCE 0.7.3 improves activation progress, failure feedback and retries for serial and account activation. On Windows, a damaged product cache can recover after fresh successful online authorization, and a damaged device-identity copy can be restored from its valid protected backup.
Conflicting identities and unreadable deactivation markers remain locked and require support. Do not delete activation proof or deactivation markers to bypass them. Regenerate the matching source package and rebuild your plugin to include the update. The selected Access grace period, signed-grant expiry and local deactivation block still apply; this recovery does not create offline permission.
