- de2b4fb: Added missing TSDoc comments on class fields flagged by the new
require-property-tsdocfusion-lint rule.
- 80c3e4a: Internal: resolve
fusion-lintwarnings (require-intent-comment,require-tsdoc,single-export-per-file). SplitensureCachePersistencePluginout ofAuthProviderDefaultCredential.tsand split theenableAzureIdentity*helper functions out ofenable-module.tsinto individual files to resolvesingle-export-per-filewithout conflicting with TSDoc adjacency. Added missing constructor/@param/@returns/@throwsTSDoc and intent comments to control-flow blocks. - 80c3e4a: Internal: renamed 45 source files across these packages to comply with the
filename-conventionlint rule (e.g.AIConfigurator.ts→AiConfigurator.ts,BookmarkProvider.actions.ts→bookmark-actions.ts,errors/app-build-error.ts→errors/AppBuildError.ts,plugins/api/plugin.ts→plugins/api/ApiPlugin.ts,errors.ts→UnsupportedApiVersion.ts, etc.). Also addedenable-signalr.tsto thefilename-conventionexclude list since the suggested rename would incorrectly split the "SignalR" brand name. No public API changes. - 80c3e4a: Internal: added missing intent comments ahead of non-obvious control flow, RxJS
.pipe()chains, iterator calls, and multi-source object merges to comply with therequire-intent-commentandrequire-tsdoclint rules. Also removed dead duplicate files left over from an earlier refactor innavigation(events.ts,navigated-event.ts,history.flows.ts— all fully superseded by their split replacements) and renamedbookmarks/schemas.tstobookmarks/bookmark.schemas.tsinservicesto match the*.schemas.tsfilename convention. No public API changes.
-
3e82dee: Move
@azure/identity-cache-persistenceand@azure/msal-node-extensionstooptionalDependenciesand guard all dynamic imports with descriptive error handling.The native
keytaraddon (required for OS keychain access on Linux) previously causedpnpm installto fail in headless environments withoutlibsecret-1. Dynamic import sites now catch load failures and throw a clear, actionable error explaining that credential persistence requires an interactive desktop environment with the optional dependency installed.
-
8d7b8a1: Add new Azure Identity authentication module with three auth modes:
interactive—InteractiveBrowserCredentialwithAuthenticationRecordpersistence via OS keychain (Keychain / DPAPI / libsecret)default_credential—DefaultAzureCredentialfor CI/CD, managed identity, and Azure CLItoken_only— static access token passthrough
Includes a type-safe configurator with mode-specific setters (
setInteractive,setDefaultCredential,setTokenOnly) and convenience enablers for each mode.Ref: https://github.com/equinor/fusion-core-tasks/issues/1067