Fixes desktop provider API keys not persisting when a host wires an engine into createServer() but forgets to pass its own authStorage, which previously caused register-auth-routes.ts to throw "Authentication is not configured".
- Add ProjectEngine.getAuthStorage() exposing the OAuth subsystem's raw createFusionAuthStorage() instance
- In createServer(), derive options.authStorage from engine.getAuthStorage() when not explicitly provided (mirrors existing engine-derivation pattern for onMerge/automationStore/etc.); explicit authStorage still overrides
- Add regression tests covering the fallback-derivation and explicit-override behavior
- Add changeset (patch) documenting the fix for @runfusion/fusion
Files changed:
.changeset/fn-7747-derive-authstorage-from-engine.md | 7 ++
packages/dashboard/src/__tests__/server.test.ts | 119 +++++++++++++++++++++
packages/dashboard/src/server.ts | 28 ++++-
packages/engine/src/project-engine.ts | 25 +++++
4 files changed, 178 insertions(+), 1 deletion(-)
Fusion-Task-Id: FN-7747
Fusion-Task-Lineage: f8e72b15-d084-4e8d-89db-47453d57b41b
Co-authored-by: Fusion (runfusion.ai) <noreply@runfusion.ai>