@wootsup/mcp 0.1.0 → 0.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +157 -83
- package/README.md +31 -27
- package/SECURITY.md +15 -6
- package/dist/auth/keychain.d.ts +27 -1
- package/dist/auth/keychain.js +48 -2
- package/dist/auth/keychain.js.map +1 -1
- package/dist/catalog/build-catalog.d.ts +31 -0
- package/dist/catalog/build-catalog.js +68 -0
- package/dist/catalog/build-catalog.js.map +1 -0
- package/dist/cli-hint.d.ts +22 -0
- package/dist/cli-hint.js +55 -0
- package/dist/cli-hint.js.map +1 -0
- package/dist/index.js +129 -22
- package/dist/index.js.map +1 -1
- package/dist/install-skill.js +1 -1
- package/dist/modules/apimapper/auto-layout.d.ts +21 -0
- package/dist/modules/apimapper/auto-layout.js +54 -0
- package/dist/modules/apimapper/auto-layout.js.map +1 -0
- package/dist/modules/apimapper/cache.js +25 -17
- package/dist/modules/apimapper/cache.js.map +1 -1
- package/dist/modules/apimapper/client.d.ts +115 -4
- package/dist/modules/apimapper/client.js +699 -304
- package/dist/modules/apimapper/client.js.map +1 -1
- package/dist/modules/apimapper/connections-format.d.ts +31 -1
- package/dist/modules/apimapper/connections-format.js +97 -5
- package/dist/modules/apimapper/connections-format.js.map +1 -1
- package/dist/modules/apimapper/connections.d.ts +9 -7
- package/dist/modules/apimapper/connections.js +449 -127
- package/dist/modules/apimapper/connections.js.map +1 -1
- package/dist/modules/apimapper/credential-sanitizer.d.ts +5 -0
- package/dist/modules/apimapper/credential-sanitizer.js +60 -1
- package/dist/modules/apimapper/credential-sanitizer.js.map +1 -1
- package/dist/modules/apimapper/credentials.js +105 -61
- package/dist/modules/apimapper/credentials.js.map +1 -1
- package/dist/modules/apimapper/diagnose.js +21 -2
- package/dist/modules/apimapper/diagnose.js.map +1 -1
- package/dist/modules/apimapper/elicitation.d.ts +29 -0
- package/dist/modules/apimapper/elicitation.js +62 -0
- package/dist/modules/apimapper/elicitation.js.map +1 -1
- package/dist/modules/apimapper/example-extract.d.ts +13 -0
- package/dist/modules/apimapper/example-extract.js +111 -0
- package/dist/modules/apimapper/example-extract.js.map +1 -0
- package/dist/modules/apimapper/filter-operators.d.ts +24 -0
- package/dist/modules/apimapper/filter-operators.js +103 -0
- package/dist/modules/apimapper/filter-operators.js.map +1 -0
- package/dist/modules/apimapper/flows-format.js +92 -22
- package/dist/modules/apimapper/flows-format.js.map +1 -1
- package/dist/modules/apimapper/flows.d.ts +8 -7
- package/dist/modules/apimapper/flows.js +275 -120
- package/dist/modules/apimapper/flows.js.map +1 -1
- package/dist/modules/apimapper/gateway/advanced-read-tool.d.ts +9 -0
- package/dist/modules/apimapper/gateway/advanced-read-tool.js +172 -0
- package/dist/modules/apimapper/gateway/advanced-read-tool.js.map +1 -0
- package/dist/modules/apimapper/gateway/advanced-tool.js +66 -106
- package/dist/modules/apimapper/gateway/advanced-tool.js.map +1 -1
- package/dist/modules/apimapper/gateway/collect-module-tools.d.ts +17 -0
- package/dist/modules/apimapper/gateway/collect-module-tools.js +44 -0
- package/dist/modules/apimapper/gateway/collect-module-tools.js.map +1 -0
- package/dist/modules/apimapper/gateway/essentials.d.ts +1 -1
- package/dist/modules/apimapper/gateway/essentials.js +21 -2
- package/dist/modules/apimapper/gateway/essentials.js.map +1 -1
- package/dist/modules/apimapper/gateway/gateway-shared.d.ts +21 -0
- package/dist/modules/apimapper/gateway/gateway-shared.js +124 -0
- package/dist/modules/apimapper/gateway/gateway-shared.js.map +1 -0
- package/dist/modules/apimapper/gateway/test-support.d.ts +1 -17
- package/dist/modules/apimapper/gateway/test-support.js +4 -33
- package/dist/modules/apimapper/gateway/test-support.js.map +1 -1
- package/dist/modules/apimapper/get-skill-cores.d.ts +4 -0
- package/dist/modules/apimapper/get-skill-cores.js +220 -0
- package/dist/modules/apimapper/get-skill-cores.js.map +1 -0
- package/dist/modules/apimapper/get-skill.d.ts +1 -1
- package/dist/modules/apimapper/get-skill.js +74 -9
- package/dist/modules/apimapper/get-skill.js.map +1 -1
- package/dist/modules/apimapper/graph-builder.d.ts +85 -2
- package/dist/modules/apimapper/graph-builder.js +151 -15
- package/dist/modules/apimapper/graph-builder.js.map +1 -1
- package/dist/modules/apimapper/graph.js +152 -48
- package/dist/modules/apimapper/graph.js.map +1 -1
- package/dist/modules/apimapper/index.js +27 -13
- package/dist/modules/apimapper/index.js.map +1 -1
- package/dist/modules/apimapper/jmespath-test.d.ts +4 -0
- package/dist/modules/apimapper/jmespath-test.js +152 -0
- package/dist/modules/apimapper/jmespath-test.js.map +1 -0
- package/dist/modules/apimapper/library.js +553 -88
- package/dist/modules/apimapper/library.js.map +1 -1
- package/dist/modules/apimapper/license.js +12 -36
- package/dist/modules/apimapper/license.js.map +1 -1
- package/dist/modules/apimapper/list-footer.d.ts +27 -0
- package/dist/modules/apimapper/list-footer.js +57 -0
- package/dist/modules/apimapper/list-footer.js.map +1 -0
- package/dist/modules/apimapper/local-sources.js +100 -57
- package/dist/modules/apimapper/local-sources.js.map +1 -1
- package/dist/modules/apimapper/mcp-client-identity.d.ts +32 -0
- package/dist/modules/apimapper/mcp-client-identity.js +70 -0
- package/dist/modules/apimapper/mcp-client-identity.js.map +1 -0
- package/dist/modules/apimapper/merge-constants.d.ts +6 -0
- package/dist/modules/apimapper/merge-constants.js +26 -0
- package/dist/modules/apimapper/merge-constants.js.map +1 -0
- package/dist/modules/apimapper/misc.js +13 -27
- package/dist/modules/apimapper/misc.js.map +1 -1
- package/dist/modules/apimapper/node-schema.d.ts +52 -2
- package/dist/modules/apimapper/node-schema.js +95 -4
- package/dist/modules/apimapper/node-schema.js.map +1 -1
- package/dist/modules/apimapper/onboarding.d.ts +59 -1
- package/dist/modules/apimapper/onboarding.js +231 -28
- package/dist/modules/apimapper/onboarding.js.map +1 -1
- package/dist/modules/apimapper/read-cache.d.ts +16 -3
- package/dist/modules/apimapper/read-cache.js +59 -4
- package/dist/modules/apimapper/read-cache.js.map +1 -1
- package/dist/modules/apimapper/render/index.js +26 -5
- package/dist/modules/apimapper/render/index.js.map +1 -1
- package/dist/modules/apimapper/resource-id.d.ts +13 -0
- package/dist/modules/apimapper/resource-id.js +69 -0
- package/dist/modules/apimapper/resource-id.js.map +1 -0
- package/dist/modules/apimapper/schema.js +9 -18
- package/dist/modules/apimapper/schema.js.map +1 -1
- package/dist/modules/apimapper/settings.js +49 -52
- package/dist/modules/apimapper/settings.js.map +1 -1
- package/dist/modules/apimapper/sites-tools.d.ts +29 -0
- package/dist/modules/apimapper/sites-tools.js +165 -0
- package/dist/modules/apimapper/sites-tools.js.map +1 -0
- package/dist/modules/apimapper/tool-result.d.ts +66 -0
- package/dist/modules/apimapper/tool-result.js +125 -0
- package/dist/modules/apimapper/tool-result.js.map +1 -0
- package/dist/modules/apimapper/toolslist-size.d.ts +12 -11
- package/dist/modules/apimapper/toolslist-size.js +34 -21
- package/dist/modules/apimapper/toolslist-size.js.map +1 -1
- package/dist/modules/apimapper/types.d.ts +34 -0
- package/dist/modules/apimapper/types.js +1 -1
- package/dist/modules/apimapper/types.js.map +1 -1
- package/dist/modules/apimapper/whitelist-drift.d.ts +85 -0
- package/dist/modules/apimapper/whitelist-drift.js +375 -0
- package/dist/modules/apimapper/whitelist-drift.js.map +1 -0
- package/dist/modules/apimapper/workflows.js +302 -58
- package/dist/modules/apimapper/workflows.js.map +1 -1
- package/dist/modules/apimapper/yootheme-binding.d.ts +35 -0
- package/dist/modules/apimapper/yootheme-binding.js +267 -0
- package/dist/modules/apimapper/yootheme-binding.js.map +1 -0
- package/dist/platform/index.d.ts +56 -0
- package/dist/platform/index.js +158 -2
- package/dist/platform/index.js.map +1 -1
- package/dist/proxy/bridge.d.ts +35 -0
- package/dist/proxy/bridge.js +129 -0
- package/dist/proxy/bridge.js.map +1 -0
- package/dist/proxy/mode.d.ts +9 -0
- package/dist/proxy/mode.js +20 -0
- package/dist/proxy/mode.js.map +1 -0
- package/dist/setup/detect-clients.d.ts +40 -1
- package/dist/setup/detect-clients.js +148 -1
- package/dist/setup/detect-clients.js.map +1 -1
- package/dist/setup/probe-auth.d.ts +51 -0
- package/dist/setup/probe-auth.js +141 -0
- package/dist/setup/probe-auth.js.map +1 -0
- package/dist/setup/probe-handshake.js +40 -7
- package/dist/setup/probe-handshake.js.map +1 -1
- package/dist/setup/remove-config.d.ts +8 -0
- package/dist/setup/remove-config.js +145 -0
- package/dist/setup/remove-config.js.map +1 -0
- package/dist/setup/uninstall.d.ts +34 -0
- package/dist/setup/uninstall.js +147 -0
- package/dist/setup/uninstall.js.map +1 -0
- package/dist/setup-cli.d.ts +16 -0
- package/dist/setup-cli.js +63 -1
- package/dist/setup-cli.js.map +1 -1
- package/dist/sites/loader.d.ts +48 -0
- package/dist/sites/loader.js +134 -0
- package/dist/sites/loader.js.map +1 -0
- package/dist/sites/schema.d.ts +69 -0
- package/dist/sites/schema.js +71 -0
- package/dist/sites/schema.js.map +1 -0
- package/dist/sites/secret-resolver.d.ts +47 -0
- package/dist/sites/secret-resolver.js +150 -0
- package/dist/sites/secret-resolver.js.map +1 -0
- package/dist/skill-instructions.d.ts +14 -1
- package/dist/skill-instructions.js +35 -6
- package/dist/skill-instructions.js.map +1 -1
- package/dist/transports/stdio.js +4 -4
- package/dist/transports/stdio.js.map +1 -1
- package/dist/uninstall-skill.d.ts +27 -0
- package/dist/uninstall-skill.js +89 -0
- package/dist/uninstall-skill.js.map +1 -0
- package/docs/architecture.md +21 -21
- package/docs/customgraph-internal-migration.md +4 -4
- package/docs/security.md +2 -21
- package/docs/tools.md +40 -12
- package/manifest.json +77 -79
- package/package.json +69 -65
- package/skills/apimapper/SKILL.md +128 -7
- package/skills/apimapper/reference/conditional-style-multi-items.md +114 -0
- package/skills/apimapper/reference/dynamize-existing-layout.md +158 -0
- package/skills/apimapper/reference/jmespath-cookbook.md +241 -0
- package/skills/apimapper/reference/jmespath-pitfalls.md +189 -0
- package/skills/apimapper/reference/joomla.md +1 -1
- package/skills/apimapper/reference/library-template-discovery.md +65 -0
- package/skills/apimapper/reference/merge-two-sources-on-key.md +204 -0
- package/skills/apimapper/reference/oauth.md +143 -52
- package/skills/apimapper/reference/troubleshooting.md +22 -2
- package/skills/apimapper/reference/yootheme-source-to-builder-handoff.md +348 -0
- package/skills/apimapper/reference/yootheme.md +75 -44
- package/dist/auth/oauth-provider.d.ts +0 -68
- package/dist/auth/oauth-provider.js +0 -232
- package/dist/auth/oauth-provider.js.map +0 -1
- package/dist/server-http.d.ts +0 -22
- package/dist/server-http.js +0 -159
- package/dist/server-http.js.map +0 -1
- package/dist/transports/http.d.ts +0 -29
- package/dist/transports/http.js +0 -267
- package/dist/transports/http.js.map +0 -1
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { ToolRegistrar } from "./gateway/capturing-server.js";
|
|
2
2
|
import { type StructuredCallToolResult } from "@getimo/mcp-toolkit";
|
|
3
|
-
import type { Connection, Flow, LibraryItem, LicenseStatus } from "./types.js";
|
|
3
|
+
import type { Connection, Flow, LibraryItem, LicenseStatus, Credential } from "./types.js";
|
|
4
4
|
export type SuggestionType = "activate-template" | "publish-flow" | "reconnect-oauth";
|
|
5
5
|
export interface OnboardingSuggestion {
|
|
6
6
|
type: SuggestionType;
|
|
@@ -54,7 +54,65 @@ export interface OnboardingReport {
|
|
|
54
54
|
};
|
|
55
55
|
suggestions: OnboardingSuggestion[];
|
|
56
56
|
errors: OnboardingSubError[];
|
|
57
|
+
/**
|
|
58
|
+
* F136 (Welle 2, 2026-06-11) — set ONLY when every core sub-call failed
|
|
59
|
+
* with an auth error (wrong/expired bearer key). When present, the agent
|
|
60
|
+
* must read this as "the MCP key is broken" — NOT "fresh empty install" —
|
|
61
|
+
* and follow `suggestion` (the canonical key-rotation recipe). Absent on a
|
|
62
|
+
* genuinely empty-but-authenticated install and on partial failures.
|
|
63
|
+
*/
|
|
64
|
+
auth_error?: {
|
|
65
|
+
/** How many core sub-calls failed with an auth error. */
|
|
66
|
+
count: number;
|
|
67
|
+
/** Human-readable summary the AI can echo to the user. */
|
|
68
|
+
message: string;
|
|
69
|
+
/** The actionable MCP-key recovery recipe (`hintFor('auth')`). */
|
|
70
|
+
suggestion: string;
|
|
71
|
+
};
|
|
57
72
|
}
|
|
73
|
+
/**
|
|
74
|
+
* Wave-12 F1 (2026-05-31) — decide whether an OAuth credential is *actually*
|
|
75
|
+
* expired in a way that requires the customer to reconnect. This mirrors the
|
|
76
|
+
* canonical PHP-side check in
|
|
77
|
+
* `src/modules/core/src/Credential/CredentialRepository::calculateStatus`.
|
|
78
|
+
*
|
|
79
|
+
* Cold-AI #6 hit a wasted tool-call: `apimapper_onboarding` suggested
|
|
80
|
+
* "Reconnect Google Sheets" for a credential whose access token had expired,
|
|
81
|
+
* BUT whose refresh-token would auto-renew it on next use. The previous
|
|
82
|
+
* heuristic only checked `oauth_token_expires_at < now`, so Google/GitHub
|
|
83
|
+
* (refresh-token providers) were chronically flagged as expired.
|
|
84
|
+
*
|
|
85
|
+
* Canonical precedence:
|
|
86
|
+
*
|
|
87
|
+
* 1. **`status` field (preferred).** PHP `/credentials` computes this with
|
|
88
|
+
* full knowledge of the refresh-token state. Only `'expired'` means a
|
|
89
|
+
* reconnect is required. `'broken'` is a separate UX (Remove & Reconnect)
|
|
90
|
+
* and intentionally NOT covered by this reconnect-oauth suggestion.
|
|
91
|
+
* 2. **`token_hard_expires_at` (legacy + cross-check).** Server emits this
|
|
92
|
+
* ONLY for credentials WITHOUT a refresh-token (e.g. Meta/Instagram).
|
|
93
|
+
* Present + in the past → truly expired. Null/absent → refreshable
|
|
94
|
+
* access-token, do NOT suggest reconnect.
|
|
95
|
+
* 3. **Last-resort fallback.** Pre-status response shape with only
|
|
96
|
+
* `oauth_token_expires_at`: if it's in the past AND no field signals
|
|
97
|
+
* refreshability, suggest reconnect. This preserves the pre-F1 behaviour
|
|
98
|
+
* for older server builds and conservative defaults (a true expiry is
|
|
99
|
+
* better surfaced as a false-positive than silently swallowed).
|
|
100
|
+
*/
|
|
101
|
+
export declare function isOAuthCredentialExpired(credential: Credential, nowMs?: number): boolean;
|
|
102
|
+
/**
|
|
103
|
+
* C10 (2026-06-10) — choose the draft flow to suggest publishing.
|
|
104
|
+
*
|
|
105
|
+
* Pre-C10 the picker took the first draft in array order, which was usually a
|
|
106
|
+
* synthetic "E2E Export …" import (those land first / dominate on test-heavy
|
|
107
|
+
* installs). Heuristic, in preference order:
|
|
108
|
+
* 1. a `source === "user"` flow whose name is NOT an E2E-Export import;
|
|
109
|
+
* 2. any non-E2E-Export draft (regardless of source);
|
|
110
|
+
* 3. the first draft (last-resort — better to suggest publishing SOMETHING
|
|
111
|
+
* than nothing when every draft is a junk import).
|
|
112
|
+
*
|
|
113
|
+
* Pure + total: returns undefined only for an empty list.
|
|
114
|
+
*/
|
|
115
|
+
export declare function pickFriendlyDraft(drafts: Flow[]): Flow | undefined;
|
|
58
116
|
/**
|
|
59
117
|
* Pure function — given aggregated state, derive a small list of
|
|
60
118
|
* suggested next actions. Empty list if nothing useful to suggest.
|
|
@@ -24,8 +24,14 @@
|
|
|
24
24
|
// key-value rendering is a token win on the #1 baseline payload.
|
|
25
25
|
// `buildOnboardingReport` itself is unchanged: it stays a pure data
|
|
26
26
|
// assembler so its callers and pin-tests are untouched.
|
|
27
|
-
import { detailResult, readOnly, } from "@getimo/mcp-toolkit";
|
|
28
|
-
import { request, WP_BASE } from "./client.js";
|
|
27
|
+
import { detailResult, errorResult, readOnly, } from "@getimo/mcp-toolkit";
|
|
28
|
+
import { request, WP_BASE, hintFor } from "./client.js";
|
|
29
|
+
// C10 (2026-06-10) — the /flows wire shape often omits the `is_compiled`
|
|
30
|
+
// boolean and carries `compiledAt` / `compiled[]` instead. isFlowCompiled()
|
|
31
|
+
// is the canonical derivation (shared with flow_list display + filtering);
|
|
32
|
+
// onboarding MUST use it so "Flows published: 0" stops appearing while
|
|
33
|
+
// compiled flows exist.
|
|
34
|
+
import { isFlowCompiled } from "./flows-format.js";
|
|
29
35
|
// F-LS-04 (live-smoke 2026-05-20) — the PHP /connections endpoint emits
|
|
30
36
|
// camelCase keys (authType, credentialId). The onboarding allConns list +
|
|
31
37
|
// the expired-OAuth filter both read snake_case (auth_type, credential_id).
|
|
@@ -36,19 +42,100 @@ async function safeRequest(tool, path) {
|
|
|
36
42
|
try {
|
|
37
43
|
const r = await request(path);
|
|
38
44
|
if (!r.success) {
|
|
39
|
-
return {
|
|
45
|
+
return {
|
|
46
|
+
tool,
|
|
47
|
+
data: null,
|
|
48
|
+
error: r.error || "request failed",
|
|
49
|
+
errorCode: r.errorCode ?? null,
|
|
50
|
+
};
|
|
40
51
|
}
|
|
41
|
-
return { tool, data: (r.data ?? null), error: null };
|
|
52
|
+
return { tool, data: (r.data ?? null), error: null, errorCode: null };
|
|
42
53
|
}
|
|
43
54
|
catch (e) {
|
|
55
|
+
// A thrown error never reached the HTTP layer → treat as network.
|
|
44
56
|
return {
|
|
45
57
|
tool,
|
|
46
58
|
data: null,
|
|
47
59
|
error: e instanceof Error ? e.message : String(e),
|
|
60
|
+
errorCode: "network",
|
|
48
61
|
};
|
|
49
62
|
}
|
|
50
63
|
}
|
|
64
|
+
// ── Token-validity check (Wave-12 F1, Cold-AI #6) ──────────────────────
|
|
65
|
+
/**
|
|
66
|
+
* Wave-12 F1 (2026-05-31) — decide whether an OAuth credential is *actually*
|
|
67
|
+
* expired in a way that requires the customer to reconnect. This mirrors the
|
|
68
|
+
* canonical PHP-side check in
|
|
69
|
+
* `src/modules/core/src/Credential/CredentialRepository::calculateStatus`.
|
|
70
|
+
*
|
|
71
|
+
* Cold-AI #6 hit a wasted tool-call: `apimapper_onboarding` suggested
|
|
72
|
+
* "Reconnect Google Sheets" for a credential whose access token had expired,
|
|
73
|
+
* BUT whose refresh-token would auto-renew it on next use. The previous
|
|
74
|
+
* heuristic only checked `oauth_token_expires_at < now`, so Google/GitHub
|
|
75
|
+
* (refresh-token providers) were chronically flagged as expired.
|
|
76
|
+
*
|
|
77
|
+
* Canonical precedence:
|
|
78
|
+
*
|
|
79
|
+
* 1. **`status` field (preferred).** PHP `/credentials` computes this with
|
|
80
|
+
* full knowledge of the refresh-token state. Only `'expired'` means a
|
|
81
|
+
* reconnect is required. `'broken'` is a separate UX (Remove & Reconnect)
|
|
82
|
+
* and intentionally NOT covered by this reconnect-oauth suggestion.
|
|
83
|
+
* 2. **`token_hard_expires_at` (legacy + cross-check).** Server emits this
|
|
84
|
+
* ONLY for credentials WITHOUT a refresh-token (e.g. Meta/Instagram).
|
|
85
|
+
* Present + in the past → truly expired. Null/absent → refreshable
|
|
86
|
+
* access-token, do NOT suggest reconnect.
|
|
87
|
+
* 3. **Last-resort fallback.** Pre-status response shape with only
|
|
88
|
+
* `oauth_token_expires_at`: if it's in the past AND no field signals
|
|
89
|
+
* refreshability, suggest reconnect. This preserves the pre-F1 behaviour
|
|
90
|
+
* for older server builds and conservative defaults (a true expiry is
|
|
91
|
+
* better surfaced as a false-positive than silently swallowed).
|
|
92
|
+
*/
|
|
93
|
+
export function isOAuthCredentialExpired(credential, nowMs = Date.now()) {
|
|
94
|
+
// (1) Canonical `status` wins when present.
|
|
95
|
+
const status = typeof credential.status === "string" ? credential.status.toLowerCase() : null;
|
|
96
|
+
if (status) {
|
|
97
|
+
return status === "expired";
|
|
98
|
+
}
|
|
99
|
+
// (2) Hard-expiry field present? It's only set for non-refreshable tokens.
|
|
100
|
+
// `token_hard_expires_at === null` (explicit) signals refreshable → not expired.
|
|
101
|
+
if ("token_hard_expires_at" in credential) {
|
|
102
|
+
const hard = credential.token_hard_expires_at;
|
|
103
|
+
if (hard === null || hard === undefined || hard === "") {
|
|
104
|
+
return false; // refreshable token, server explicitly cleared the hard-expiry
|
|
105
|
+
}
|
|
106
|
+
const t = Date.parse(hard);
|
|
107
|
+
return Number.isFinite(t) && t < nowMs;
|
|
108
|
+
}
|
|
109
|
+
// (3) Last-resort fallback for pre-status server builds.
|
|
110
|
+
if (!credential.oauth_token_expires_at)
|
|
111
|
+
return false;
|
|
112
|
+
const t = Date.parse(credential.oauth_token_expires_at);
|
|
113
|
+
return Number.isFinite(t) && t < nowMs;
|
|
114
|
+
}
|
|
51
115
|
// ── Suggestion rules ───────────────────────────────────────────────────
|
|
116
|
+
/** Synthetic test/import flows the next-step picker should avoid suggesting. */
|
|
117
|
+
const JUNK_FLOW_NAME = /^E2E Export/i;
|
|
118
|
+
/**
|
|
119
|
+
* C10 (2026-06-10) — choose the draft flow to suggest publishing.
|
|
120
|
+
*
|
|
121
|
+
* Pre-C10 the picker took the first draft in array order, which was usually a
|
|
122
|
+
* synthetic "E2E Export …" import (those land first / dominate on test-heavy
|
|
123
|
+
* installs). Heuristic, in preference order:
|
|
124
|
+
* 1. a `source === "user"` flow whose name is NOT an E2E-Export import;
|
|
125
|
+
* 2. any non-E2E-Export draft (regardless of source);
|
|
126
|
+
* 3. the first draft (last-resort — better to suggest publishing SOMETHING
|
|
127
|
+
* than nothing when every draft is a junk import).
|
|
128
|
+
*
|
|
129
|
+
* Pure + total: returns undefined only for an empty list.
|
|
130
|
+
*/
|
|
131
|
+
export function pickFriendlyDraft(drafts) {
|
|
132
|
+
if (drafts.length === 0)
|
|
133
|
+
return undefined;
|
|
134
|
+
const notJunk = (f) => !JUNK_FLOW_NAME.test(f.name ?? "");
|
|
135
|
+
return (drafts.find((f) => f.source === "user" && notJunk(f)) ??
|
|
136
|
+
drafts.find(notJunk) ??
|
|
137
|
+
drafts[0]);
|
|
138
|
+
}
|
|
52
139
|
/**
|
|
53
140
|
* Pure function — given aggregated state, derive a small list of
|
|
54
141
|
* suggested next actions. Empty list if nothing useful to suggest.
|
|
@@ -65,8 +152,15 @@ export function deriveSuggestions(args) {
|
|
|
65
152
|
});
|
|
66
153
|
}
|
|
67
154
|
// Rule 2: 1+ flows created but 0 published → publish-flow.
|
|
68
|
-
|
|
69
|
-
|
|
155
|
+
// C10 (2026-06-10) — two fixes:
|
|
156
|
+
// (a) compile-state via the canonical isFlowCompiled() derivation (the raw
|
|
157
|
+
// `is_compiled` boolean is frequently absent on the wire).
|
|
158
|
+
// (b) pick a FRIENDLY draft, not whatever lands first in array order.
|
|
159
|
+
// Synthetic "E2E Export …" imports flooded the suggestion; prefer a
|
|
160
|
+
// source=user flow with a real name and skip /^E2E Export/.
|
|
161
|
+
const anyPublished = args.flows.some((f) => isFlowCompiled(f));
|
|
162
|
+
const drafts = args.flows.filter((f) => !isFlowCompiled(f));
|
|
163
|
+
const draftFlow = pickFriendlyDraft(drafts);
|
|
70
164
|
if (draftFlow && !anyPublished) {
|
|
71
165
|
out.push({
|
|
72
166
|
type: "publish-flow",
|
|
@@ -75,12 +169,17 @@ export function deriveSuggestions(args) {
|
|
|
75
169
|
});
|
|
76
170
|
}
|
|
77
171
|
// Rule 3: any connection whose oauth credential has expired → reconnect-oauth.
|
|
172
|
+
// F135 (Welle 2, 2026-06-11): the action MUST be apimapper_oauth_authorize_begin,
|
|
173
|
+
// not apimapper_credential_link. credential_link (a) requires a connection_id
|
|
174
|
+
// this suggestion never carries → guaranteed schema-validation failure, and
|
|
175
|
+
// (b) only re-links an already-expired credential → the source stays empty.
|
|
176
|
+
// authorize_begin re-authorises in place and preserves the refresh_token.
|
|
78
177
|
for (const c of args.connections) {
|
|
79
178
|
if (c.credential_id && args.expiredOauthCredentialIds.has(c.credential_id)) {
|
|
80
179
|
out.push({
|
|
81
180
|
type: "reconnect-oauth",
|
|
82
181
|
label: `Reconnect "${c.name}" — OAuth credential expired`,
|
|
83
|
-
action: `
|
|
182
|
+
action: `apimapper_oauth_authorize_begin credential_id=${c.credential_id}`,
|
|
84
183
|
});
|
|
85
184
|
}
|
|
86
185
|
}
|
|
@@ -149,7 +248,13 @@ export async function buildOnboardingReport() {
|
|
|
149
248
|
// unauthenticated probe answers — so the call is safe to fire on
|
|
150
249
|
// every onboarding. A failure here drops us back to the legacy URL
|
|
151
250
|
// heuristic via `detectPlatform()`.
|
|
152
|
-
|
|
251
|
+
// WP↔Joomla parity fix (2026-06-07) — added /library/catalog to the parallel
|
|
252
|
+
// batch. On a Joomla fresh install /library/categories often rejects and
|
|
253
|
+
// /library/popular is empty, which previously collapsed total_count to 0
|
|
254
|
+
// ("0 templates" in the briefing despite a full catalogue). The catalog
|
|
255
|
+
// endpoint carries the authoritative total, so the count cascade can fall
|
|
256
|
+
// back to it before degrading to the featured/popular list length.
|
|
257
|
+
const [identity, license, connections, flows, popular, featured, categories, catalog] = await Promise.allSettled([
|
|
153
258
|
safeRequest("apimapper_identity", "/identity"),
|
|
154
259
|
safeRequest("apimapper_license_status", "/license"),
|
|
155
260
|
safeRequest("apimapper_connection_list", "/connections"),
|
|
@@ -157,10 +262,18 @@ export async function buildOnboardingReport() {
|
|
|
157
262
|
safeRequest("apimapper_library_popular", "/library/popular?limit=5"),
|
|
158
263
|
safeRequest("apimapper_library_featured", "/library/featured?limit=5"),
|
|
159
264
|
safeRequest("apimapper_library_categories", "/library/categories"),
|
|
265
|
+
safeRequest("apimapper_library_catalog", "/library/catalog"),
|
|
160
266
|
]);
|
|
161
267
|
const errors = [];
|
|
268
|
+
// F136 — count the core sub-calls and how many failed with an auth error,
|
|
269
|
+
// so we can detect a blanket auth failure (every core sub-call === 'auth')
|
|
270
|
+
// and short-circuit into one actionable key-rotation error instead of N
|
|
271
|
+
// opaque 401 sub-errors that masquerade as a fresh empty install.
|
|
272
|
+
let coreSubCalls = 0;
|
|
273
|
+
let coreAuthFailures = 0;
|
|
162
274
|
// Helper that pulls .value from a settled promise + records any error.
|
|
163
275
|
const take = (s) => {
|
|
276
|
+
coreSubCalls++;
|
|
164
277
|
if (s.status === "rejected") {
|
|
165
278
|
// Should not happen — safeRequest swallows. Defensive.
|
|
166
279
|
errors.push({ tool: "unknown", error: String(s.reason) });
|
|
@@ -168,6 +281,8 @@ export async function buildOnboardingReport() {
|
|
|
168
281
|
}
|
|
169
282
|
if (s.value.error) {
|
|
170
283
|
errors.push({ tool: s.value.tool, error: s.value.error });
|
|
284
|
+
if (s.value.errorCode === "auth")
|
|
285
|
+
coreAuthFailures++;
|
|
171
286
|
return null;
|
|
172
287
|
}
|
|
173
288
|
return s.value.data;
|
|
@@ -179,6 +294,7 @@ export async function buildOnboardingReport() {
|
|
|
179
294
|
const popularData = take(popular);
|
|
180
295
|
const featuredData = take(featured);
|
|
181
296
|
const categoriesData = take(categories);
|
|
297
|
+
const catalogData = take(catalog);
|
|
182
298
|
// L-4 (W3F-5): canonical platform from /identity if present + valid;
|
|
183
299
|
// otherwise fall back to the URL-shape heuristic. The result is the
|
|
184
300
|
// same union the OnboardingReport.site.platform type expects.
|
|
@@ -219,9 +335,30 @@ export async function buildOnboardingReport() {
|
|
|
219
335
|
const categoryRows = Array.isArray(categoriesData?.categories)
|
|
220
336
|
? categoriesData.categories.filter((c) => typeof c?.id === "string" && typeof c?.name === "string" && typeof c?.count === "number")
|
|
221
337
|
: [];
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
338
|
+
// WP↔Joomla parity fix (2026-06-07) — derive a TRUE catalogue total from the
|
|
339
|
+
// /library/catalog response: the authoritative `total` field if present and
|
|
340
|
+
// positive, else the length of the inner items/connections list (PHP emits
|
|
341
|
+
// `connections`, legacy emits `items`). 0 when the call failed or the
|
|
342
|
+
// catalogue is genuinely empty.
|
|
343
|
+
const catalogItemsLen = Array.isArray(catalogData?.connections)
|
|
344
|
+
? catalogData.connections.length
|
|
345
|
+
: Array.isArray(catalogData?.items)
|
|
346
|
+
? catalogData.items.length
|
|
347
|
+
: 0;
|
|
348
|
+
const catalogTotal = typeof catalogData?.total === "number" && Number.isFinite(catalogData.total) && catalogData.total > 0
|
|
349
|
+
? catalogData.total
|
|
350
|
+
: catalogItemsLen;
|
|
351
|
+
// Count cascade — NEVER read 0 while any source shows templates:
|
|
352
|
+
// 1. categorySum (authoritative when categories load) — wins if > 0
|
|
353
|
+
// 2. catalogTotal (the /library/catalog total) — the Joomla fresh-install
|
|
354
|
+
// rescue, since categories there often reject and popular is empty
|
|
355
|
+
// 3. max(featured, popular) — last-resort floor from the brief lists
|
|
356
|
+
const categorySum = categoryRows.reduce((sum, c) => sum + c.count, 0);
|
|
357
|
+
const libraryTotalCount = categorySum > 0
|
|
358
|
+
? categorySum
|
|
359
|
+
: catalogTotal && catalogTotal > 0
|
|
360
|
+
? catalogTotal
|
|
361
|
+
: Math.max(featuredItems.length, popItems.length);
|
|
225
362
|
// ── Conditional second-stage call: credentials, only if any conn has an oauth creds.
|
|
226
363
|
const oauthCredIds = allConns
|
|
227
364
|
.filter((c) => (c.auth_type || "").startsWith("oauth2") && c.credential_id)
|
|
@@ -235,24 +372,39 @@ export async function buildOnboardingReport() {
|
|
|
235
372
|
else {
|
|
236
373
|
const creds = Array.isArray(credRes.data?.credentials) ? credRes.data.credentials : [];
|
|
237
374
|
const now = Date.now();
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
.map((c) => c.id));
|
|
375
|
+
// Wave-12 F1 (Cold-AI #6, 2026-05-31): delegate to the canonical
|
|
376
|
+
// token-validity check that mirrors `CredentialRepository::calculateStatus`.
|
|
377
|
+
// Refresh-token providers (Google, GitHub, ...) report status='active'
|
|
378
|
+
// even when their short-lived access-token's oauth_token_expires_at is
|
|
379
|
+
// in the past — the previous heuristic flagged them as expired, causing
|
|
380
|
+
// a false-positive reconnect-oauth suggestion.
|
|
381
|
+
expiredOauthCredentialIds = new Set(creds.filter((c) => isOAuthCredentialExpired(c, now)).map((c) => c.id));
|
|
246
382
|
}
|
|
247
383
|
}
|
|
248
|
-
|
|
249
|
-
|
|
384
|
+
// C10 — count via the canonical isFlowCompiled() derivation, not the raw
|
|
385
|
+
// (frequently absent) `is_compiled` boolean.
|
|
386
|
+
const published = allFlows.filter((f) => isFlowCompiled(f)).length;
|
|
387
|
+
const draft = allFlows.filter((f) => !isFlowCompiled(f)).length;
|
|
250
388
|
const suggestions = deriveSuggestions({
|
|
251
389
|
connections: allConns,
|
|
252
390
|
flows: allFlows,
|
|
253
391
|
expiredOauthCredentialIds,
|
|
254
392
|
popular: popItems,
|
|
255
393
|
});
|
|
394
|
+
// F136 — blanket-auth short-circuit. When EVERY core sub-call failed with
|
|
395
|
+
// an auth error, the bearer key is wrong/expired — not a fresh empty
|
|
396
|
+
// install. Surface ONE actionable auth_error carrying the MCP-key recovery
|
|
397
|
+
// recipe so the agent rotates the key instead of treating 0/0/0 counts as a
|
|
398
|
+
// clean slate. `coreSubCalls > 0` guards the degenerate (no-call) case.
|
|
399
|
+
const authError = coreSubCalls > 0 && coreAuthFailures === coreSubCalls
|
|
400
|
+
? {
|
|
401
|
+
count: coreAuthFailures,
|
|
402
|
+
message: "Authentication failed on every onboarding sub-call (HTTP 401/403). " +
|
|
403
|
+
"Your MCP key is wrong, revoked, or expired — this is NOT an empty " +
|
|
404
|
+
"install. The connection/flow/library counts below are unknown, not zero.",
|
|
405
|
+
suggestion: hintFor("auth"),
|
|
406
|
+
}
|
|
407
|
+
: undefined;
|
|
256
408
|
// License: the raw /license response is
|
|
257
409
|
// { success, license: { tier, is_valid, expires_at, beta_channel, ... } }
|
|
258
410
|
// — unwrap one level. F-LS-02 (live-smoke 2026-05-20): previously read
|
|
@@ -318,7 +470,9 @@ export async function buildOnboardingReport() {
|
|
|
318
470
|
id: f.id,
|
|
319
471
|
name: f.name,
|
|
320
472
|
source: f.source,
|
|
321
|
-
|
|
473
|
+
// C10 — surface the DERIVED compiled state so a consumer reading the
|
|
474
|
+
// item list agrees with the published/draft counts above.
|
|
475
|
+
is_compiled: isFlowCompiled(f),
|
|
322
476
|
node_count: f.node_count,
|
|
323
477
|
})),
|
|
324
478
|
},
|
|
@@ -339,6 +493,7 @@ export async function buildOnboardingReport() {
|
|
|
339
493
|
},
|
|
340
494
|
suggestions,
|
|
341
495
|
errors,
|
|
496
|
+
...(authError ? { auth_error: authError } : {}),
|
|
342
497
|
};
|
|
343
498
|
}
|
|
344
499
|
// ── structuredContent builder ──────────────────────────────────────────
|
|
@@ -419,6 +574,24 @@ export function buildOnboardingDetail(report) {
|
|
|
419
574
|
appendText,
|
|
420
575
|
});
|
|
421
576
|
}
|
|
577
|
+
/**
|
|
578
|
+
* F58 — append an actionable truncation marker to `lines` when the embedded
|
|
579
|
+
* item list is shorter than the true total. No-op when nothing is hidden.
|
|
580
|
+
*
|
|
581
|
+
* The onboarding report caps `connections.items` / `flows.items` at 10 for a
|
|
582
|
+
* token budget, but `count` carries the real total. Without an explicit
|
|
583
|
+
* signal, an agent reads the shown lines as exhaustive and never learns the
|
|
584
|
+
* remaining IDs exist. The marker names exactly how many are hidden and the
|
|
585
|
+
* tool that returns the complete set (with every ID).
|
|
586
|
+
*/
|
|
587
|
+
function appendTruncationMarker(lines, total, shown, noun, fetchAllTool) {
|
|
588
|
+
const hidden = total - shown;
|
|
589
|
+
if (hidden <= 0)
|
|
590
|
+
return;
|
|
591
|
+
const plural = hidden === 1 ? "" : "s";
|
|
592
|
+
lines.push(` … and ${hidden} more ${noun}${plural} not shown (list capped at ${shown}). ` +
|
|
593
|
+
`Call ${fetchAllTool} for the full set with all IDs.`);
|
|
594
|
+
}
|
|
422
595
|
/**
|
|
423
596
|
* W3.1 — assemble the verbose `appendText` block: every nested section the
|
|
424
597
|
* scalar `groups` cannot carry. Anchored to plain prose + line lists so the
|
|
@@ -427,6 +600,12 @@ export function buildOnboardingDetail(report) {
|
|
|
427
600
|
*/
|
|
428
601
|
function buildOnboardingAppendText(report) {
|
|
429
602
|
const lines = [];
|
|
603
|
+
// F136 — when auth failed on every sub-call, lead with the actionable
|
|
604
|
+
// recovery so the agent does not mistake the empty counts for a fresh
|
|
605
|
+
// install and chase a phantom outage.
|
|
606
|
+
if (report.auth_error) {
|
|
607
|
+
lines.push(`⚠ AUTH FAILURE (${report.auth_error.count} sub-calls): ${report.auth_error.message}`, ` → ${report.auth_error.suggestion}`, "");
|
|
608
|
+
}
|
|
430
609
|
// Connections detail.
|
|
431
610
|
lines.push(`Connections (${report.connections.count}):`);
|
|
432
611
|
if (report.connections.items.length === 0) {
|
|
@@ -437,6 +616,12 @@ function buildOnboardingAppendText(report) {
|
|
|
437
616
|
lines.push(` - ${c.name} [id=${c.id}] source=${c.source ?? "—"} auth=${c.auth_type ?? "none"}` +
|
|
438
617
|
(c.credential_id ? ` credential=${c.credential_id}` : ""));
|
|
439
618
|
}
|
|
619
|
+
// F58 — make the embedded-list cap VISIBLE + ACTIONABLE. The items list
|
|
620
|
+
// is capped (token budget) but `count` is the true total; without this
|
|
621
|
+
// marker an agent reads the 10 shown lines as the complete set and never
|
|
622
|
+
// learns the remaining IDs exist. Tell it how many more there are and the
|
|
623
|
+
// exact tool that returns ALL of them.
|
|
624
|
+
appendTruncationMarker(lines, report.connections.count, report.connections.items.length, "connection", "apimapper_connection_list");
|
|
440
625
|
}
|
|
441
626
|
// Flows detail.
|
|
442
627
|
lines.push("", `Flows (${report.flows.count}; ${report.flows.published} published, ${report.flows.draft} draft):`);
|
|
@@ -448,6 +633,8 @@ function buildOnboardingAppendText(report) {
|
|
|
448
633
|
lines.push(` - ${f.name} [id=${f.id}] source=${f.source ?? "—"} ` +
|
|
449
634
|
`${f.is_compiled ? "published" : "draft"} nodes=${f.node_count ?? "?"}`);
|
|
450
635
|
}
|
|
636
|
+
// F58 — same truncation-visibility marker for the flow list.
|
|
637
|
+
appendTruncationMarker(lines, report.flows.count, report.flows.items.length, "flow", "apimapper_flow_list");
|
|
451
638
|
}
|
|
452
639
|
// Library catalog detail.
|
|
453
640
|
lines.push("", `Library: ${report.library.total_count} templates across ${report.library.categories.length} categories.`);
|
|
@@ -502,12 +689,28 @@ export function registerOnboardingTool(server) {
|
|
|
502
689
|
inputSchema: {},
|
|
503
690
|
annotations: readOnly({ title: "Onboarding Walkthrough", openWorld: true }),
|
|
504
691
|
}, async () => {
|
|
505
|
-
|
|
506
|
-
//
|
|
507
|
-
//
|
|
508
|
-
//
|
|
509
|
-
//
|
|
510
|
-
|
|
692
|
+
// DEF-LOW-2 (Wave-B audit, 2026-06-03): buildOnboardingReport is
|
|
693
|
+
// "never-throws by convention" (it tolerates partial sub-call failures
|
|
694
|
+
// and records them in report.errors[]). The SDK catch is the backstop,
|
|
695
|
+
// but a defensive try/catch makes the never-throws contract STRUCTURAL —
|
|
696
|
+
// any unexpected throw becomes a minimal structured error instead of a
|
|
697
|
+
// generic SDK isError.
|
|
698
|
+
try {
|
|
699
|
+
const report = await buildOnboardingReport();
|
|
700
|
+
// W3.1 (rc.13 Welle 3) — detailResult: scalar summary in `groups`,
|
|
701
|
+
// verbose catalog/suggestion/error detail in `appendText`. The flat
|
|
702
|
+
// key-value rendering replaces the pretty-printed JSON dump — a token
|
|
703
|
+
// win on the largest baseline payload, with nothing lost.
|
|
704
|
+
return buildOnboardingDetail(report);
|
|
705
|
+
}
|
|
706
|
+
catch (e) {
|
|
707
|
+
return errorResult({
|
|
708
|
+
message: e instanceof Error ? e.message : String(e),
|
|
709
|
+
code: "onboarding_assembler_failed",
|
|
710
|
+
suggestion: "The onboarding report assembler threw unexpectedly. Run " +
|
|
711
|
+
"apimapper_health to check connectivity + auth, then retry.",
|
|
712
|
+
});
|
|
713
|
+
}
|
|
511
714
|
});
|
|
512
715
|
}
|
|
513
716
|
//# sourceMappingURL=onboarding.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"onboarding.js","sourceRoot":"","sources":["../../../src/modules/apimapper/onboarding.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"onboarding.js","sourceRoot":"","sources":["../../../src/modules/apimapper/onboarding.ts"],"names":[],"mappings":"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"}
|
|
@@ -50,9 +50,22 @@ export declare function getCached<T = unknown>(method: string, url: string, opts
|
|
|
50
50
|
export declare function setCached<T = unknown>(method: string, url: string, data: T, opts?: CacheKeyOpts): void;
|
|
51
51
|
/**
|
|
52
52
|
* Invalidate cache entries whose request path overlaps with the mutated
|
|
53
|
-
* resource. Conservative — clears every entry whose
|
|
54
|
-
*
|
|
55
|
-
* `/flows`, `/flows?status
|
|
53
|
+
* resource — in BOTH directions. Conservative — clears every entry whose
|
|
54
|
+
* cached path contains the mutation path (descendants + query variants,
|
|
55
|
+
* e.g. invalidateByPath('/flows') clears `/flows`, `/flows?status=…`,
|
|
56
|
+
* `/flows/abc123`) AND every entry whose cached path is an ancestor of
|
|
57
|
+
* the mutation path (e.g. POST `/flows/abc/detect-schema` flushes the
|
|
58
|
+
* cached GET `/flows/abc` and `/flows`).
|
|
59
|
+
*
|
|
60
|
+
* The ancestor direction is load-bearing: 2026-06-09 Round-2 live repro —
|
|
61
|
+
* a sub-resource mutation (`/flows/{id}/detect-schema`) persisted the
|
|
62
|
+
* output schema, but the cached parent GET `/flows/{id}` kept serving the
|
|
63
|
+
* pre-schema flow for the full TTL, so binding_for_flow reported
|
|
64
|
+
* fields:[] while the data was already saved.
|
|
65
|
+
*
|
|
66
|
+
* A19: in addition, a mutation may invalidate a DIFFERENT resource family
|
|
67
|
+
* (see CROSS_FAMILY_INVALIDATION) — e.g. an /oauth mutation flushes the
|
|
68
|
+
* cached /credentials list.
|
|
56
69
|
*
|
|
57
70
|
* Called automatically from client.ts on POST/PUT/PATCH/DELETE.
|
|
58
71
|
*/
|