feat(errors): classify the install 'no store entry' failure
Some checks are pending
Security / Security check (push) Waiting to run
Some checks are pending
Security / Security check (push) Waiting to run
Even with the honest install badge the hub error stays reachable (stale store snapshot, race with a store refresh, older hub). The friendly-error mapper now gives it its own headline plus a hint naming the three acquisition paths — local module install, adding the providing store, configuring the MCP/n8n integration — in EN and DE, with the verbatim hub message kept copyable. Matcher unit tests EN+DE guard the classification. Signed-off-by: flemming-it <stefan.a.flemming@googlemail.com>
This commit is contained in:
parent
08227410e6
commit
e28fffee61
7 changed files with 87 additions and 2 deletions
|
|
@ -204,6 +204,20 @@ FriendlyError? _matchHubPattern(String detail, AppLocalizations l) {
|
|||
hint: l.errMcpUnreachableHint,
|
||||
);
|
||||
}
|
||||
// Install target unresolvable — the hub's install resolver found
|
||||
// no store entry with that exact name ("no store entry for 'X' —
|
||||
// hint"). Distinct from capability-not-installed below: the store
|
||||
// cannot deliver it at all, so the recovery is one of the three
|
||||
// acquisition paths, not the Fix button. Reachable despite the
|
||||
// honest badge (stale store snapshot, race with a store refresh,
|
||||
// older hub).
|
||||
if (detail.contains('no store entry for')) {
|
||||
return FriendlyError(
|
||||
headline: l.errNoStoreEntry,
|
||||
detail: detail,
|
||||
hint: l.errNoStoreEntryHint,
|
||||
);
|
||||
}
|
||||
// Capability not in registry — hub returns NotFound with this
|
||||
// shape from the flow engine.
|
||||
if (detail.toLowerCase().contains('no capability provider') ||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue