@marktoflow/integrations 2.0.0-alpha.15 → 2.0.0-alpha.16
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/README.md +75 -1319
- package/dist/adapters/claude-agent-types.d.ts +16 -16
- package/dist/adapters/claude-agent-workflow.d.ts +22 -22
- package/dist/adapters/codex-types.d.ts +6 -6
- package/dist/adapters/github-copilot-types.d.ts +60 -60
- package/dist/adapters/ollama-types.d.ts +18 -18
- package/dist/index.d.ts +8 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +10 -0
- package/dist/index.js.map +1 -1
- package/dist/reliability/errors.d.ts +36 -0
- package/dist/reliability/errors.d.ts.map +1 -0
- package/dist/reliability/errors.js +151 -0
- package/dist/reliability/errors.js.map +1 -0
- package/dist/reliability/index.d.ts +10 -0
- package/dist/reliability/index.d.ts.map +1 -0
- package/dist/reliability/index.js +10 -0
- package/dist/reliability/index.js.map +1 -0
- package/dist/reliability/schemas/airtable.d.ts +7 -0
- package/dist/reliability/schemas/airtable.d.ts.map +1 -0
- package/dist/reliability/schemas/airtable.js +56 -0
- package/dist/reliability/schemas/airtable.js.map +1 -0
- package/dist/reliability/schemas/asana.d.ts +7 -0
- package/dist/reliability/schemas/asana.d.ts.map +1 -0
- package/dist/reliability/schemas/asana.js +45 -0
- package/dist/reliability/schemas/asana.js.map +1 -0
- package/dist/reliability/schemas/aws-s3.d.ts +7 -0
- package/dist/reliability/schemas/aws-s3.d.ts.map +1 -0
- package/dist/reliability/schemas/aws-s3.js +42 -0
- package/dist/reliability/schemas/aws-s3.js.map +1 -0
- package/dist/reliability/schemas/confluence.d.ts +7 -0
- package/dist/reliability/schemas/confluence.d.ts.map +1 -0
- package/dist/reliability/schemas/confluence.js +46 -0
- package/dist/reliability/schemas/confluence.js.map +1 -0
- package/dist/reliability/schemas/discord.d.ts +6 -0
- package/dist/reliability/schemas/discord.d.ts.map +1 -0
- package/dist/reliability/schemas/discord.js +40 -0
- package/dist/reliability/schemas/discord.js.map +1 -0
- package/dist/reliability/schemas/dropbox.d.ts +7 -0
- package/dist/reliability/schemas/dropbox.d.ts.map +1 -0
- package/dist/reliability/schemas/dropbox.js +47 -0
- package/dist/reliability/schemas/dropbox.js.map +1 -0
- package/dist/reliability/schemas/github.d.ts +9 -0
- package/dist/reliability/schemas/github.d.ts.map +1 -0
- package/dist/reliability/schemas/github.js +101 -0
- package/dist/reliability/schemas/github.js.map +1 -0
- package/dist/reliability/schemas/gmail.d.ts +9 -0
- package/dist/reliability/schemas/gmail.d.ts.map +1 -0
- package/dist/reliability/schemas/gmail.js +59 -0
- package/dist/reliability/schemas/gmail.js.map +1 -0
- package/dist/reliability/schemas/google-calendar.d.ts +7 -0
- package/dist/reliability/schemas/google-calendar.d.ts.map +1 -0
- package/dist/reliability/schemas/google-calendar.js +58 -0
- package/dist/reliability/schemas/google-calendar.js.map +1 -0
- package/dist/reliability/schemas/google-docs.d.ts +7 -0
- package/dist/reliability/schemas/google-docs.d.ts.map +1 -0
- package/dist/reliability/schemas/google-docs.js +39 -0
- package/dist/reliability/schemas/google-docs.js.map +1 -0
- package/dist/reliability/schemas/google-drive.d.ts +7 -0
- package/dist/reliability/schemas/google-drive.d.ts.map +1 -0
- package/dist/reliability/schemas/google-drive.js +56 -0
- package/dist/reliability/schemas/google-drive.js.map +1 -0
- package/dist/reliability/schemas/google-sheets.d.ts +7 -0
- package/dist/reliability/schemas/google-sheets.d.ts.map +1 -0
- package/dist/reliability/schemas/google-sheets.js +40 -0
- package/dist/reliability/schemas/google-sheets.js.map +1 -0
- package/dist/reliability/schemas/index.d.ts +37 -0
- package/dist/reliability/schemas/index.d.ts.map +1 -0
- package/dist/reliability/schemas/index.js +37 -0
- package/dist/reliability/schemas/index.js.map +1 -0
- package/dist/reliability/schemas/jira.d.ts +6 -0
- package/dist/reliability/schemas/jira.d.ts.map +1 -0
- package/dist/reliability/schemas/jira.js +50 -0
- package/dist/reliability/schemas/jira.js.map +1 -0
- package/dist/reliability/schemas/linear.d.ts +6 -0
- package/dist/reliability/schemas/linear.d.ts.map +1 -0
- package/dist/reliability/schemas/linear.js +39 -0
- package/dist/reliability/schemas/linear.js.map +1 -0
- package/dist/reliability/schemas/mailchimp.d.ts +7 -0
- package/dist/reliability/schemas/mailchimp.d.ts.map +1 -0
- package/dist/reliability/schemas/mailchimp.js +58 -0
- package/dist/reliability/schemas/mailchimp.js.map +1 -0
- package/dist/reliability/schemas/mysql.d.ts +7 -0
- package/dist/reliability/schemas/mysql.d.ts.map +1 -0
- package/dist/reliability/schemas/mysql.js +35 -0
- package/dist/reliability/schemas/mysql.js.map +1 -0
- package/dist/reliability/schemas/notion.d.ts +6 -0
- package/dist/reliability/schemas/notion.d.ts.map +1 -0
- package/dist/reliability/schemas/notion.js +63 -0
- package/dist/reliability/schemas/notion.js.map +1 -0
- package/dist/reliability/schemas/outlook.d.ts +7 -0
- package/dist/reliability/schemas/outlook.d.ts.map +1 -0
- package/dist/reliability/schemas/outlook.js +50 -0
- package/dist/reliability/schemas/outlook.js.map +1 -0
- package/dist/reliability/schemas/postgres.d.ts +7 -0
- package/dist/reliability/schemas/postgres.d.ts.map +1 -0
- package/dist/reliability/schemas/postgres.js +35 -0
- package/dist/reliability/schemas/postgres.js.map +1 -0
- package/dist/reliability/schemas/sendgrid.d.ts +7 -0
- package/dist/reliability/schemas/sendgrid.d.ts.map +1 -0
- package/dist/reliability/schemas/sendgrid.js +34 -0
- package/dist/reliability/schemas/sendgrid.js.map +1 -0
- package/dist/reliability/schemas/shopify.d.ts +7 -0
- package/dist/reliability/schemas/shopify.d.ts.map +1 -0
- package/dist/reliability/schemas/shopify.js +55 -0
- package/dist/reliability/schemas/shopify.js.map +1 -0
- package/dist/reliability/schemas/slack.d.ts +7 -0
- package/dist/reliability/schemas/slack.d.ts.map +1 -0
- package/dist/reliability/schemas/slack.js +66 -0
- package/dist/reliability/schemas/slack.js.map +1 -0
- package/dist/reliability/schemas/stripe.d.ts +7 -0
- package/dist/reliability/schemas/stripe.d.ts.map +1 -0
- package/dist/reliability/schemas/stripe.js +58 -0
- package/dist/reliability/schemas/stripe.js.map +1 -0
- package/dist/reliability/schemas/supabase.d.ts +7 -0
- package/dist/reliability/schemas/supabase.d.ts.map +1 -0
- package/dist/reliability/schemas/supabase.js +50 -0
- package/dist/reliability/schemas/supabase.js.map +1 -0
- package/dist/reliability/schemas/teams.d.ts +7 -0
- package/dist/reliability/schemas/teams.d.ts.map +1 -0
- package/dist/reliability/schemas/teams.js +44 -0
- package/dist/reliability/schemas/teams.js.map +1 -0
- package/dist/reliability/schemas/telegram.d.ts +7 -0
- package/dist/reliability/schemas/telegram.d.ts.map +1 -0
- package/dist/reliability/schemas/telegram.js +53 -0
- package/dist/reliability/schemas/telegram.js.map +1 -0
- package/dist/reliability/schemas/trello.d.ts +7 -0
- package/dist/reliability/schemas/trello.d.ts.map +1 -0
- package/dist/reliability/schemas/trello.js +51 -0
- package/dist/reliability/schemas/trello.js.map +1 -0
- package/dist/reliability/schemas/twilio.d.ts +7 -0
- package/dist/reliability/schemas/twilio.d.ts.map +1 -0
- package/dist/reliability/schemas/twilio.js +42 -0
- package/dist/reliability/schemas/twilio.js.map +1 -0
- package/dist/reliability/schemas/whatsapp.d.ts +7 -0
- package/dist/reliability/schemas/whatsapp.d.ts.map +1 -0
- package/dist/reliability/schemas/whatsapp.js +50 -0
- package/dist/reliability/schemas/whatsapp.js.map +1 -0
- package/dist/reliability/schemas/zendesk.d.ts +7 -0
- package/dist/reliability/schemas/zendesk.d.ts.map +1 -0
- package/dist/reliability/schemas/zendesk.js +53 -0
- package/dist/reliability/schemas/zendesk.js.map +1 -0
- package/dist/reliability/wrapper.d.ts +46 -0
- package/dist/reliability/wrapper.d.ts.map +1 -0
- package/dist/reliability/wrapper.js +174 -0
- package/dist/reliability/wrapper.js.map +1 -0
- package/dist/services/airtable.d.ts.map +1 -1
- package/dist/services/airtable.js +8 -2
- package/dist/services/airtable.js.map +1 -1
- package/dist/services/asana.d.ts.map +1 -1
- package/dist/services/asana.js +8 -2
- package/dist/services/asana.js.map +1 -1
- package/dist/services/aws-s3.d.ts.map +1 -1
- package/dist/services/aws-s3.js +8 -2
- package/dist/services/aws-s3.js.map +1 -1
- package/dist/services/confluence.d.ts.map +1 -1
- package/dist/services/confluence.js +8 -2
- package/dist/services/confluence.js.map +1 -1
- package/dist/services/discord.d.ts.map +1 -1
- package/dist/services/discord.js +10 -2
- package/dist/services/discord.js.map +1 -1
- package/dist/services/dropbox.d.ts.map +1 -1
- package/dist/services/dropbox.js +8 -2
- package/dist/services/dropbox.js.map +1 -1
- package/dist/services/github.d.ts.map +1 -1
- package/dist/services/github.js +11 -5
- package/dist/services/github.js.map +1 -1
- package/dist/services/gmail.d.ts.map +1 -1
- package/dist/services/gmail.js +30 -2
- package/dist/services/gmail.js.map +1 -1
- package/dist/services/google-calendar.d.ts.map +1 -1
- package/dist/services/google-calendar.js +6 -1
- package/dist/services/google-calendar.js.map +1 -1
- package/dist/services/google-docs.d.ts.map +1 -1
- package/dist/services/google-docs.js +6 -1
- package/dist/services/google-docs.js.map +1 -1
- package/dist/services/google-drive.d.ts.map +1 -1
- package/dist/services/google-drive.js +6 -1
- package/dist/services/google-drive.js.map +1 -1
- package/dist/services/google-sheets.d.ts.map +1 -1
- package/dist/services/google-sheets.js +6 -1
- package/dist/services/google-sheets.js.map +1 -1
- package/dist/services/http.d.ts.map +1 -1
- package/dist/services/http.js +57 -1
- package/dist/services/http.js.map +1 -1
- package/dist/services/jira.d.ts.map +1 -1
- package/dist/services/jira.js +9 -1
- package/dist/services/jira.js.map +1 -1
- package/dist/services/linear.d.ts.map +1 -1
- package/dist/services/linear.js +10 -2
- package/dist/services/linear.js.map +1 -1
- package/dist/services/mailchimp.d.ts.map +1 -1
- package/dist/services/mailchimp.js +8 -2
- package/dist/services/mailchimp.js.map +1 -1
- package/dist/services/mysql.d.ts.map +1 -1
- package/dist/services/mysql.js +8 -2
- package/dist/services/mysql.js.map +1 -1
- package/dist/services/notion.d.ts.map +1 -1
- package/dist/services/notion.js +10 -2
- package/dist/services/notion.js.map +1 -1
- package/dist/services/outlook.d.ts.map +1 -1
- package/dist/services/outlook.js +88 -5
- package/dist/services/outlook.js.map +1 -1
- package/dist/services/postgres.d.ts.map +1 -1
- package/dist/services/postgres.js +8 -2
- package/dist/services/postgres.js.map +1 -1
- package/dist/services/sendgrid.d.ts.map +1 -1
- package/dist/services/sendgrid.js +8 -2
- package/dist/services/sendgrid.js.map +1 -1
- package/dist/services/shopify.d.ts.map +1 -1
- package/dist/services/shopify.js +8 -2
- package/dist/services/shopify.js.map +1 -1
- package/dist/services/slack.d.ts.map +1 -1
- package/dist/services/slack.js +9 -1
- package/dist/services/slack.js.map +1 -1
- package/dist/services/stripe.d.ts.map +1 -1
- package/dist/services/stripe.js +8 -2
- package/dist/services/stripe.js.map +1 -1
- package/dist/services/supabase.d.ts.map +1 -1
- package/dist/services/supabase.js +8 -2
- package/dist/services/supabase.js.map +1 -1
- package/dist/services/teams.d.ts.map +1 -1
- package/dist/services/teams.js +8 -2
- package/dist/services/teams.js.map +1 -1
- package/dist/services/telegram.d.ts.map +1 -1
- package/dist/services/telegram.js +8 -2
- package/dist/services/telegram.js.map +1 -1
- package/dist/services/trello.d.ts.map +1 -1
- package/dist/services/trello.js +8 -2
- package/dist/services/trello.js.map +1 -1
- package/dist/services/twilio.d.ts.map +1 -1
- package/dist/services/twilio.js +8 -2
- package/dist/services/twilio.js.map +1 -1
- package/dist/services/whatsapp.d.ts.map +1 -1
- package/dist/services/whatsapp.js +8 -2
- package/dist/services/whatsapp.js.map +1 -1
- package/dist/services/zendesk.d.ts.map +1 -1
- package/dist/services/zendesk.js +8 -2
- package/dist/services/zendesk.js.map +1 -1
- package/package.json +4 -3
- package/dist/services/hubspot.d.ts +0 -315
- package/dist/services/hubspot.d.ts.map +0 -1
- package/dist/services/hubspot.js +0 -246
- package/dist/services/hubspot.js.map +0 -1
- package/dist/services/salesforce.d.ts +0 -269
- package/dist/services/salesforce.d.ts.map +0 -1
- package/dist/services/salesforce.js +0 -286
- package/dist/services/salesforce.js.map +0 -1
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Structured error types for integration reliability.
|
|
3
|
+
*
|
|
4
|
+
* Normalizes errors from any SDK/API into a consistent format
|
|
5
|
+
* with actionable metadata for retry decisions and debugging.
|
|
6
|
+
*/
|
|
7
|
+
export interface IntegrationError {
|
|
8
|
+
/** Service name (e.g., 'slack', 'github') */
|
|
9
|
+
service: string;
|
|
10
|
+
/** Action that failed (e.g., 'chat.postMessage') */
|
|
11
|
+
action: string;
|
|
12
|
+
/** HTTP status code if applicable */
|
|
13
|
+
statusCode?: number;
|
|
14
|
+
/** Human-readable error message */
|
|
15
|
+
message: string;
|
|
16
|
+
/** Whether the error is retryable */
|
|
17
|
+
retryable: boolean;
|
|
18
|
+
/** Original error for debugging */
|
|
19
|
+
cause?: unknown;
|
|
20
|
+
/** Retry-After header value in seconds, if present */
|
|
21
|
+
retryAfter?: number;
|
|
22
|
+
}
|
|
23
|
+
export declare class IntegrationRequestError extends Error {
|
|
24
|
+
readonly service: string;
|
|
25
|
+
readonly action: string;
|
|
26
|
+
readonly statusCode?: number;
|
|
27
|
+
readonly retryable: boolean;
|
|
28
|
+
readonly retryAfter?: number;
|
|
29
|
+
constructor(info: IntegrationError);
|
|
30
|
+
toJSON(): IntegrationError;
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* Normalize any error into an IntegrationRequestError.
|
|
34
|
+
*/
|
|
35
|
+
export declare function normalizeError(service: string, action: string, error: unknown): IntegrationRequestError;
|
|
36
|
+
//# sourceMappingURL=errors.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/reliability/errors.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,MAAM,WAAW,gBAAgB;IAC/B,6CAA6C;IAC7C,OAAO,EAAE,MAAM,CAAC;IAChB,oDAAoD;IACpD,MAAM,EAAE,MAAM,CAAC;IACf,qCAAqC;IACrC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,mCAAmC;IACnC,OAAO,EAAE,MAAM,CAAC;IAChB,qCAAqC;IACrC,SAAS,EAAE,OAAO,CAAC;IACnB,mCAAmC;IACnC,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,sDAAsD;IACtD,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,qBAAa,uBAAwB,SAAQ,KAAK;IAChD,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;IAC5B,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;gBAEjB,IAAI,EAAE,gBAAgB;IAalC,MAAM,IAAI,gBAAgB;CAU3B;AAKD;;GAEG;AACH,wBAAgB,cAAc,CAC5B,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,OAAO,GACb,uBAAuB,CAoBzB"}
|
|
@@ -0,0 +1,151 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Structured error types for integration reliability.
|
|
3
|
+
*
|
|
4
|
+
* Normalizes errors from any SDK/API into a consistent format
|
|
5
|
+
* with actionable metadata for retry decisions and debugging.
|
|
6
|
+
*/
|
|
7
|
+
export class IntegrationRequestError extends Error {
|
|
8
|
+
service;
|
|
9
|
+
action;
|
|
10
|
+
statusCode;
|
|
11
|
+
retryable;
|
|
12
|
+
retryAfter;
|
|
13
|
+
constructor(info) {
|
|
14
|
+
super(info.message);
|
|
15
|
+
this.name = 'IntegrationRequestError';
|
|
16
|
+
this.service = info.service;
|
|
17
|
+
this.action = info.action;
|
|
18
|
+
this.statusCode = info.statusCode;
|
|
19
|
+
this.retryable = info.retryable;
|
|
20
|
+
this.retryAfter = info.retryAfter;
|
|
21
|
+
if (info.cause) {
|
|
22
|
+
this.cause = info.cause;
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
toJSON() {
|
|
26
|
+
return {
|
|
27
|
+
service: this.service,
|
|
28
|
+
action: this.action,
|
|
29
|
+
statusCode: this.statusCode,
|
|
30
|
+
message: this.message,
|
|
31
|
+
retryable: this.retryable,
|
|
32
|
+
retryAfter: this.retryAfter,
|
|
33
|
+
};
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
/** HTTP status codes that are generally retryable */
|
|
37
|
+
const RETRYABLE_STATUS_CODES = new Set([408, 429, 500, 502, 503, 504]);
|
|
38
|
+
/**
|
|
39
|
+
* Normalize any error into an IntegrationRequestError.
|
|
40
|
+
*/
|
|
41
|
+
export function normalizeError(service, action, error) {
|
|
42
|
+
if (error instanceof IntegrationRequestError) {
|
|
43
|
+
return error;
|
|
44
|
+
}
|
|
45
|
+
// HTTP response-like errors (fetch Response, Axios-style, SDK-wrapped)
|
|
46
|
+
const statusCode = extractStatusCode(error);
|
|
47
|
+
const retryAfter = extractRetryAfter(error);
|
|
48
|
+
const message = extractMessage(error);
|
|
49
|
+
const retryable = isRetryableError(error, statusCode);
|
|
50
|
+
return new IntegrationRequestError({
|
|
51
|
+
service,
|
|
52
|
+
action,
|
|
53
|
+
statusCode,
|
|
54
|
+
message,
|
|
55
|
+
retryable,
|
|
56
|
+
retryAfter,
|
|
57
|
+
cause: error,
|
|
58
|
+
});
|
|
59
|
+
}
|
|
60
|
+
function extractStatusCode(error) {
|
|
61
|
+
if (!error || typeof error !== 'object')
|
|
62
|
+
return undefined;
|
|
63
|
+
const e = error;
|
|
64
|
+
// Direct status code
|
|
65
|
+
if (typeof e.status === 'number')
|
|
66
|
+
return e.status;
|
|
67
|
+
if (typeof e.statusCode === 'number')
|
|
68
|
+
return e.statusCode;
|
|
69
|
+
if (typeof e.code === 'number' && e.code >= 100 && e.code < 600)
|
|
70
|
+
return e.code;
|
|
71
|
+
// Nested response object (Axios, Octokit, etc.)
|
|
72
|
+
if (e.response && typeof e.response === 'object') {
|
|
73
|
+
const resp = e.response;
|
|
74
|
+
if (typeof resp.status === 'number')
|
|
75
|
+
return resp.status;
|
|
76
|
+
if (typeof resp.statusCode === 'number')
|
|
77
|
+
return resp.statusCode;
|
|
78
|
+
}
|
|
79
|
+
return undefined;
|
|
80
|
+
}
|
|
81
|
+
function extractRetryAfter(error) {
|
|
82
|
+
if (!error || typeof error !== 'object')
|
|
83
|
+
return undefined;
|
|
84
|
+
const e = error;
|
|
85
|
+
// Check headers
|
|
86
|
+
const headers = e.headers ??
|
|
87
|
+
e.response?.headers;
|
|
88
|
+
if (headers) {
|
|
89
|
+
const retryAfter = headers['retry-after'] ?? headers['Retry-After'];
|
|
90
|
+
if (retryAfter) {
|
|
91
|
+
const seconds = Number(retryAfter);
|
|
92
|
+
if (!isNaN(seconds))
|
|
93
|
+
return seconds;
|
|
94
|
+
// Could be a date string
|
|
95
|
+
const date = new Date(retryAfter);
|
|
96
|
+
if (!isNaN(date.getTime())) {
|
|
97
|
+
return Math.max(0, Math.ceil((date.getTime() - Date.now()) / 1000));
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
return undefined;
|
|
102
|
+
}
|
|
103
|
+
function extractMessage(error) {
|
|
104
|
+
if (!error)
|
|
105
|
+
return 'Unknown error';
|
|
106
|
+
if (typeof error === 'string')
|
|
107
|
+
return error;
|
|
108
|
+
if (error instanceof Error)
|
|
109
|
+
return error.message;
|
|
110
|
+
const e = error;
|
|
111
|
+
if (typeof e.message === 'string')
|
|
112
|
+
return e.message;
|
|
113
|
+
if (typeof e.error === 'string')
|
|
114
|
+
return e.error;
|
|
115
|
+
if (e.error && typeof e.error === 'object') {
|
|
116
|
+
const nested = e.error;
|
|
117
|
+
if (typeof nested.message === 'string')
|
|
118
|
+
return nested.message;
|
|
119
|
+
}
|
|
120
|
+
try {
|
|
121
|
+
return JSON.stringify(error);
|
|
122
|
+
}
|
|
123
|
+
catch {
|
|
124
|
+
return String(error);
|
|
125
|
+
}
|
|
126
|
+
}
|
|
127
|
+
function isRetryableError(error, statusCode) {
|
|
128
|
+
// Status code based
|
|
129
|
+
if (statusCode && RETRYABLE_STATUS_CODES.has(statusCode))
|
|
130
|
+
return true;
|
|
131
|
+
// Network-level errors
|
|
132
|
+
if (error instanceof Error) {
|
|
133
|
+
const msg = error.message.toLowerCase();
|
|
134
|
+
const retryablePatterns = [
|
|
135
|
+
'econnreset',
|
|
136
|
+
'econnrefused',
|
|
137
|
+
'etimedout',
|
|
138
|
+
'enotfound',
|
|
139
|
+
'epipe',
|
|
140
|
+
'fetch failed',
|
|
141
|
+
'network error',
|
|
142
|
+
'socket hang up',
|
|
143
|
+
'aborted',
|
|
144
|
+
'timeout',
|
|
145
|
+
];
|
|
146
|
+
if (retryablePatterns.some((p) => msg.includes(p)))
|
|
147
|
+
return true;
|
|
148
|
+
}
|
|
149
|
+
return false;
|
|
150
|
+
}
|
|
151
|
+
//# sourceMappingURL=errors.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/reliability/errors.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Integration Reliability Layer
|
|
3
|
+
*
|
|
4
|
+
* Provides input validation, retry, timeout, rate limiting,
|
|
5
|
+
* and error normalization for all integrations.
|
|
6
|
+
*/
|
|
7
|
+
export { wrapIntegration, type WrapperOptions, type ActionCallOptions, } from './wrapper.js';
|
|
8
|
+
export { IntegrationRequestError, normalizeError, type IntegrationError, } from './errors.js';
|
|
9
|
+
export { slackSchemas, githubSchemas, gmailSchemas, notionSchemas, jiraSchemas, discordSchemas, linearSchemas, } from './schemas/index.js';
|
|
10
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/reliability/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EACL,eAAe,EACf,KAAK,cAAc,EACnB,KAAK,iBAAiB,GACvB,MAAM,cAAc,CAAC;AAEtB,OAAO,EACL,uBAAuB,EACvB,cAAc,EACd,KAAK,gBAAgB,GACtB,MAAM,aAAa,CAAC;AAErB,OAAO,EACL,YAAY,EACZ,aAAa,EACb,YAAY,EACZ,aAAa,EACb,WAAW,EACX,cAAc,EACd,aAAa,GACd,MAAM,oBAAoB,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Integration Reliability Layer
|
|
3
|
+
*
|
|
4
|
+
* Provides input validation, retry, timeout, rate limiting,
|
|
5
|
+
* and error normalization for all integrations.
|
|
6
|
+
*/
|
|
7
|
+
export { wrapIntegration, } from './wrapper.js';
|
|
8
|
+
export { IntegrationRequestError, normalizeError, } from './errors.js';
|
|
9
|
+
export { slackSchemas, githubSchemas, gmailSchemas, notionSchemas, jiraSchemas, discordSchemas, linearSchemas, } from './schemas/index.js';
|
|
10
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/reliability/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EACL,eAAe,GAGhB,MAAM,cAAc,CAAC;AAEtB,OAAO,EACL,uBAAuB,EACvB,cAAc,GAEf,MAAM,aAAa,CAAC;AAErB,OAAO,EACL,YAAY,EACZ,aAAa,EACb,YAAY,EACZ,aAAa,EACb,WAAW,EACX,cAAc,EACd,aAAa,GACd,MAAM,oBAAoB,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Zod input schemas for Airtable API actions.
|
|
3
|
+
* Validates inputs BEFORE they reach the SDK to provide clear error messages.
|
|
4
|
+
*/
|
|
5
|
+
import { z } from 'zod';
|
|
6
|
+
export declare const airtableSchemas: Record<string, z.ZodTypeAny>;
|
|
7
|
+
//# sourceMappingURL=airtable.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"airtable.d.ts","sourceRoot":"","sources":["../../../src/reliability/schemas/airtable.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,eAAO,MAAM,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,UAAU,CAyDxD,CAAC"}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Zod input schemas for Airtable API actions.
|
|
3
|
+
* Validates inputs BEFORE they reach the SDK to provide clear error messages.
|
|
4
|
+
*/
|
|
5
|
+
import { z } from 'zod';
|
|
6
|
+
export const airtableSchemas = {
|
|
7
|
+
'listBases': z.object({}).optional().default({}),
|
|
8
|
+
'getBaseSchema': z.object({
|
|
9
|
+
baseId: z.string().min(1, 'baseId is required'),
|
|
10
|
+
}),
|
|
11
|
+
'listRecords': z.object({
|
|
12
|
+
baseId: z.string().min(1, 'baseId is required'),
|
|
13
|
+
tableIdOrName: z.string().min(1, 'tableIdOrName is required'),
|
|
14
|
+
fields: z.array(z.string()).optional(),
|
|
15
|
+
filterByFormula: z.string().optional(),
|
|
16
|
+
maxRecords: z.number().int().min(1).optional(),
|
|
17
|
+
sort: z.array(z.object({
|
|
18
|
+
field: z.string(),
|
|
19
|
+
direction: z.enum(['asc', 'desc']).optional(),
|
|
20
|
+
})).optional(),
|
|
21
|
+
}),
|
|
22
|
+
'getRecord': z.object({
|
|
23
|
+
baseId: z.string().min(1, 'baseId is required'),
|
|
24
|
+
tableIdOrName: z.string().min(1, 'tableIdOrName is required'),
|
|
25
|
+
recordId: z.string().min(1, 'recordId is required'),
|
|
26
|
+
}),
|
|
27
|
+
'createRecord': z.object({
|
|
28
|
+
baseId: z.string().min(1, 'baseId is required'),
|
|
29
|
+
tableIdOrName: z.string().min(1, 'tableIdOrName is required'),
|
|
30
|
+
fields: z.record(z.unknown()),
|
|
31
|
+
}),
|
|
32
|
+
'createRecords': z.object({
|
|
33
|
+
baseId: z.string().min(1, 'baseId is required'),
|
|
34
|
+
tableIdOrName: z.string().min(1, 'tableIdOrName is required'),
|
|
35
|
+
records: z.array(z.object({
|
|
36
|
+
fields: z.record(z.unknown()),
|
|
37
|
+
})).min(1, 'records array is required and must not be empty'),
|
|
38
|
+
}),
|
|
39
|
+
'updateRecord': z.object({
|
|
40
|
+
baseId: z.string().min(1, 'baseId is required'),
|
|
41
|
+
tableIdOrName: z.string().min(1, 'tableIdOrName is required'),
|
|
42
|
+
recordId: z.string().min(1, 'recordId is required'),
|
|
43
|
+
fields: z.record(z.unknown()),
|
|
44
|
+
}),
|
|
45
|
+
'deleteRecord': z.object({
|
|
46
|
+
baseId: z.string().min(1, 'baseId is required'),
|
|
47
|
+
tableIdOrName: z.string().min(1, 'tableIdOrName is required'),
|
|
48
|
+
recordId: z.string().min(1, 'recordId is required'),
|
|
49
|
+
}),
|
|
50
|
+
'findRecords': z.object({
|
|
51
|
+
baseId: z.string().min(1, 'baseId is required'),
|
|
52
|
+
tableIdOrName: z.string().min(1, 'tableIdOrName is required'),
|
|
53
|
+
filterByFormula: z.string().optional(),
|
|
54
|
+
}),
|
|
55
|
+
};
|
|
56
|
+
//# sourceMappingURL=airtable.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"airtable.js","sourceRoot":"","sources":["../../../src/reliability/schemas/airtable.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"asana.d.ts","sourceRoot":"","sources":["../../../src/reliability/schemas/asana.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,eAAO,MAAM,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,UAAU,CA8CrD,CAAC"}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Zod input schemas for Asana API actions.
|
|
3
|
+
* Validates inputs BEFORE they reach the SDK to provide clear error messages.
|
|
4
|
+
*/
|
|
5
|
+
import { z } from 'zod';
|
|
6
|
+
export const asanaSchemas = {
|
|
7
|
+
getTask: z.object({
|
|
8
|
+
taskGid: z.string().min(1, 'taskGid is required'),
|
|
9
|
+
}),
|
|
10
|
+
createTask: z.object({
|
|
11
|
+
name: z.string().min(1, 'name is required'),
|
|
12
|
+
workspace: z.string().min(1, 'workspace is required'),
|
|
13
|
+
projects: z.array(z.string()).optional(),
|
|
14
|
+
assignee: z.string().optional(),
|
|
15
|
+
notes: z.string().optional(),
|
|
16
|
+
dueOn: z.string().optional(),
|
|
17
|
+
}),
|
|
18
|
+
updateTask: z.object({
|
|
19
|
+
taskGid: z.string().min(1, 'taskGid is required'),
|
|
20
|
+
name: z.string().optional(),
|
|
21
|
+
notes: z.string().optional(),
|
|
22
|
+
dueOn: z.string().optional(),
|
|
23
|
+
completed: z.boolean().optional(),
|
|
24
|
+
}),
|
|
25
|
+
deleteTask: z.object({
|
|
26
|
+
taskGid: z.string().min(1, 'taskGid is required'),
|
|
27
|
+
}),
|
|
28
|
+
getTasksInProject: z.object({
|
|
29
|
+
projectGid: z.string().min(1, 'projectGid is required'),
|
|
30
|
+
}),
|
|
31
|
+
addComment: z.object({
|
|
32
|
+
taskGid: z.string().min(1, 'taskGid is required'),
|
|
33
|
+
text: z.string().min(1, 'text is required'),
|
|
34
|
+
}),
|
|
35
|
+
getProject: z.object({
|
|
36
|
+
projectGid: z.string().min(1, 'projectGid is required'),
|
|
37
|
+
}),
|
|
38
|
+
createProject: z.object({
|
|
39
|
+
name: z.string().min(1, 'name is required'),
|
|
40
|
+
workspace: z.string().min(1, 'workspace is required'),
|
|
41
|
+
notes: z.string().optional(),
|
|
42
|
+
}),
|
|
43
|
+
getWorkspaces: z.object({}).optional().default({}),
|
|
44
|
+
};
|
|
45
|
+
//# sourceMappingURL=asana.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"asana.js","sourceRoot":"","sources":["../../../src/reliability/schemas/asana.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,MAAM,CAAC,MAAM,YAAY,GAAiC;IACxD,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC;QAChB,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,qBAAqB,CAAC;KAClD,CAAC;IAEF,UAAU,EAAE,CAAC,CAAC,MAAM,CAAC;QACnB,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,kBAAkB,CAAC;QAC3C,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,uBAAuB,CAAC;QACrD,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE;QACxC,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;QAC/B,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;QAC5B,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;KAC7B,CAAC;IAEF,UAAU,EAAE,CAAC,CAAC,MAAM,CAAC;QACnB,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,qBAAqB,CAAC;QACjD,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;QAC3B,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;QAC5B,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;QAC5B,SAAS,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;KAClC,CAAC;IAEF,UAAU,EAAE,CAAC,CAAC,MAAM,CAAC;QACnB,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,qBAAqB,CAAC;KAClD,CAAC;IAEF,iBAAiB,EAAE,CAAC,CAAC,MAAM,CAAC;QAC1B,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,wBAAwB,CAAC;KACxD,CAAC;IAEF,UAAU,EAAE,CAAC,CAAC,MAAM,CAAC;QACnB,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,qBAAqB,CAAC;QACjD,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,kBAAkB,CAAC;KAC5C,CAAC;IAEF,UAAU,EAAE,CAAC,CAAC,MAAM,CAAC;QACnB,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,wBAAwB,CAAC;KACxD,CAAC;IAEF,aAAa,EAAE,CAAC,CAAC,MAAM,CAAC;QACtB,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,kBAAkB,CAAC;QAC3C,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,uBAAuB,CAAC;QACrD,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;KAC7B,CAAC;IAEF,aAAa,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;CACnD,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"aws-s3.d.ts","sourceRoot":"","sources":["../../../src/reliability/schemas/aws-s3.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,eAAO,MAAM,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,UAAU,CA0CrD,CAAC"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Zod input schemas for AWS S3 actions.
|
|
3
|
+
* Validates inputs BEFORE they reach the SDK to provide clear error messages.
|
|
4
|
+
*/
|
|
5
|
+
import { z } from 'zod';
|
|
6
|
+
export const awsS3Schemas = {
|
|
7
|
+
'uploadObject': z.object({
|
|
8
|
+
bucket: z.string().min(1, 'bucket is required'),
|
|
9
|
+
key: z.string().min(1, 'key is required'),
|
|
10
|
+
body: z.unknown().optional(),
|
|
11
|
+
contentType: z.string().optional(),
|
|
12
|
+
}),
|
|
13
|
+
'getObject': z.object({
|
|
14
|
+
bucket: z.string().min(1, 'bucket is required'),
|
|
15
|
+
key: z.string().min(1, 'key is required'),
|
|
16
|
+
}),
|
|
17
|
+
'deleteObject': z.object({
|
|
18
|
+
bucket: z.string().min(1, 'bucket is required'),
|
|
19
|
+
key: z.string().min(1, 'key is required'),
|
|
20
|
+
}),
|
|
21
|
+
'listObjects': z.object({
|
|
22
|
+
bucket: z.string().min(1, 'bucket is required'),
|
|
23
|
+
prefix: z.string().optional(),
|
|
24
|
+
maxKeys: z.number().int().min(1).optional(),
|
|
25
|
+
continuationToken: z.string().optional(),
|
|
26
|
+
}),
|
|
27
|
+
'copyObject': z.object({
|
|
28
|
+
sourceBucket: z.string().min(1, 'sourceBucket is required'),
|
|
29
|
+
sourceKey: z.string().min(1, 'sourceKey is required'),
|
|
30
|
+
destBucket: z.string().min(1, 'destBucket is required'),
|
|
31
|
+
destKey: z.string().min(1, 'destKey is required'),
|
|
32
|
+
}),
|
|
33
|
+
'createBucket': z.object({
|
|
34
|
+
bucket: z.string().min(1, 'bucket is required'),
|
|
35
|
+
region: z.string().optional(),
|
|
36
|
+
}),
|
|
37
|
+
'deleteBucket': z.object({
|
|
38
|
+
bucket: z.string().min(1, 'bucket is required'),
|
|
39
|
+
}),
|
|
40
|
+
'listBuckets': z.object({}).optional().default({}),
|
|
41
|
+
};
|
|
42
|
+
//# sourceMappingURL=aws-s3.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"aws-s3.js","sourceRoot":"","sources":["../../../src/reliability/schemas/aws-s3.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,MAAM,CAAC,MAAM,YAAY,GAAiC;IACxD,cAAc,EAAE,CAAC,CAAC,MAAM,CAAC;QACvB,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,oBAAoB,CAAC;QAC/C,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,iBAAiB,CAAC;QACzC,IAAI,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;QAC5B,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;KACnC,CAAC;IAEF,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;QACpB,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,oBAAoB,CAAC;QAC/C,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,iBAAiB,CAAC;KAC1C,CAAC;IAEF,cAAc,EAAE,CAAC,CAAC,MAAM,CAAC;QACvB,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,oBAAoB,CAAC;QAC/C,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,iBAAiB,CAAC;KAC1C,CAAC;IAEF,aAAa,EAAE,CAAC,CAAC,MAAM,CAAC;QACtB,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,oBAAoB,CAAC;QAC/C,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;QAC7B,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;QAC3C,iBAAiB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;KACzC,CAAC;IAEF,YAAY,EAAE,CAAC,CAAC,MAAM,CAAC;QACrB,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,0BAA0B,CAAC;QAC3D,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,uBAAuB,CAAC;QACrD,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,wBAAwB,CAAC;QACvD,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,qBAAqB,CAAC;KAClD,CAAC;IAEF,cAAc,EAAE,CAAC,CAAC,MAAM,CAAC;QACvB,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,oBAAoB,CAAC;QAC/C,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;KAC9B,CAAC;IAEF,cAAc,EAAE,CAAC,CAAC,MAAM,CAAC;QACvB,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,oBAAoB,CAAC;KAChD,CAAC;IAEF,aAAa,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;CACnD,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Zod input schemas for Confluence API actions.
|
|
3
|
+
* Validates inputs BEFORE they reach the SDK to provide clear error messages.
|
|
4
|
+
*/
|
|
5
|
+
import { z } from 'zod';
|
|
6
|
+
export declare const confluenceSchemas: Record<string, z.ZodTypeAny>;
|
|
7
|
+
//# sourceMappingURL=confluence.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"confluence.d.ts","sourceRoot":"","sources":["../../../src/reliability/schemas/confluence.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,eAAO,MAAM,iBAAiB,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,UAAU,CA+C1D,CAAC"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Zod input schemas for Confluence API actions.
|
|
3
|
+
* Validates inputs BEFORE they reach the SDK to provide clear error messages.
|
|
4
|
+
*/
|
|
5
|
+
import { z } from 'zod';
|
|
6
|
+
export const confluenceSchemas = {
|
|
7
|
+
'listSpaces': z.object({
|
|
8
|
+
limit: z.number().int().min(1).optional(),
|
|
9
|
+
start: z.number().int().min(0).optional(),
|
|
10
|
+
}).optional().default({}),
|
|
11
|
+
'getSpace': z.object({
|
|
12
|
+
spaceId: z.string().min(1, 'spaceId is required'),
|
|
13
|
+
}),
|
|
14
|
+
'listPages': z.object({
|
|
15
|
+
spaceId: z.string().optional(),
|
|
16
|
+
limit: z.number().int().min(1).optional(),
|
|
17
|
+
start: z.number().int().min(0).optional(),
|
|
18
|
+
}).optional().default({}),
|
|
19
|
+
'getPage': z.object({
|
|
20
|
+
pageId: z.string().min(1, 'pageId is required'),
|
|
21
|
+
}),
|
|
22
|
+
'createPage': z.object({
|
|
23
|
+
spaceId: z.string().min(1, 'spaceId is required'),
|
|
24
|
+
title: z.string().min(1, 'title is required'),
|
|
25
|
+
body: z.string().min(1, 'body is required'),
|
|
26
|
+
parentId: z.string().optional(),
|
|
27
|
+
}),
|
|
28
|
+
'updatePage': z.object({
|
|
29
|
+
pageId: z.string().min(1, 'pageId is required'),
|
|
30
|
+
title: z.string().min(1, 'title is required'),
|
|
31
|
+
body: z.string().min(1, 'body is required'),
|
|
32
|
+
version: z.number().int().min(1, 'version is required'),
|
|
33
|
+
}),
|
|
34
|
+
'deletePage': z.object({
|
|
35
|
+
pageId: z.string().min(1, 'pageId is required'),
|
|
36
|
+
}),
|
|
37
|
+
'search': z.object({
|
|
38
|
+
query: z.string().min(1, 'query is required'),
|
|
39
|
+
limit: z.number().int().min(1).optional(),
|
|
40
|
+
}),
|
|
41
|
+
'addComment': z.object({
|
|
42
|
+
pageId: z.string().min(1, 'pageId is required'),
|
|
43
|
+
body: z.string().min(1, 'body is required'),
|
|
44
|
+
}),
|
|
45
|
+
};
|
|
46
|
+
//# sourceMappingURL=confluence.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"confluence.js","sourceRoot":"","sources":["../../../src/reliability/schemas/confluence.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"discord.d.ts","sourceRoot":"","sources":["../../../src/reliability/schemas/discord.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,eAAO,MAAM,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,UAAU,CAwCvD,CAAC"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Zod input schemas for Discord API actions.
|
|
3
|
+
*/
|
|
4
|
+
import { z } from 'zod';
|
|
5
|
+
export const discordSchemas = {
|
|
6
|
+
sendMessage: z.object({
|
|
7
|
+
channelId: z.string().min(1, 'channelId is required'),
|
|
8
|
+
content: z.string().optional(),
|
|
9
|
+
embeds: z.array(z.record(z.unknown())).optional(),
|
|
10
|
+
tts: z.boolean().optional(),
|
|
11
|
+
}).refine((d) => d.content || d.embeds, {
|
|
12
|
+
message: 'Either content or embeds is required',
|
|
13
|
+
}),
|
|
14
|
+
editMessage: z.object({
|
|
15
|
+
channelId: z.string().min(1, 'channelId is required'),
|
|
16
|
+
messageId: z.string().min(1, 'messageId is required'),
|
|
17
|
+
content: z.string().optional(),
|
|
18
|
+
embeds: z.array(z.record(z.unknown())).optional(),
|
|
19
|
+
}),
|
|
20
|
+
deleteMessage: z.object({
|
|
21
|
+
channelId: z.string().min(1, 'channelId is required'),
|
|
22
|
+
messageId: z.string().min(1, 'messageId is required'),
|
|
23
|
+
}),
|
|
24
|
+
getMessages: z.object({
|
|
25
|
+
channelId: z.string().min(1, 'channelId is required'),
|
|
26
|
+
limit: z.number().int().min(1).max(100).optional(),
|
|
27
|
+
before: z.string().optional(),
|
|
28
|
+
after: z.string().optional(),
|
|
29
|
+
}),
|
|
30
|
+
getChannels: z.object({
|
|
31
|
+
guildId: z.string().min(1, 'guildId is required'),
|
|
32
|
+
}),
|
|
33
|
+
getGuilds: z.object({}).optional().default({}),
|
|
34
|
+
addReaction: z.object({
|
|
35
|
+
channelId: z.string().min(1, 'channelId is required'),
|
|
36
|
+
messageId: z.string().min(1, 'messageId is required'),
|
|
37
|
+
emoji: z.string().min(1, 'emoji is required'),
|
|
38
|
+
}),
|
|
39
|
+
};
|
|
40
|
+
//# sourceMappingURL=discord.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"discord.js","sourceRoot":"","sources":["../../../src/reliability/schemas/discord.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,MAAM,CAAC,MAAM,cAAc,GAAiC;IAC1D,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;QACpB,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,uBAAuB,CAAC;QACrD,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;QAC9B,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,QAAQ,EAAE;QACjD,GAAG,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;KAC5B,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC,MAAM,EAAE;QACtC,OAAO,EAAE,sCAAsC;KAChD,CAAC;IAEF,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;QACpB,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,uBAAuB,CAAC;QACrD,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,uBAAuB,CAAC;QACrD,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;QAC9B,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,QAAQ,EAAE;KAClD,CAAC;IAEF,aAAa,EAAE,CAAC,CAAC,MAAM,CAAC;QACtB,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,uBAAuB,CAAC;QACrD,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,uBAAuB,CAAC;KACtD,CAAC;IAEF,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;QACpB,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,uBAAuB,CAAC;QACrD,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE;QAClD,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;QAC7B,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;KAC7B,CAAC;IAEF,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;QACpB,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,qBAAqB,CAAC;KAClD,CAAC;IAEF,SAAS,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;IAE9C,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;QACpB,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,uBAAuB,CAAC;QACrD,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,uBAAuB,CAAC;QACrD,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,mBAAmB,CAAC;KAC9C,CAAC;CACH,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Zod input schemas for Dropbox API actions.
|
|
3
|
+
* Validates inputs BEFORE they reach the SDK to provide clear error messages.
|
|
4
|
+
*/
|
|
5
|
+
import { z } from 'zod';
|
|
6
|
+
export declare const dropboxSchemas: Record<string, z.ZodTypeAny>;
|
|
7
|
+
//# sourceMappingURL=dropbox.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dropbox.d.ts","sourceRoot":"","sources":["../../../src/reliability/schemas/dropbox.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,eAAO,MAAM,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,UAAU,CAiDvD,CAAC"}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Zod input schemas for Dropbox API actions.
|
|
3
|
+
* Validates inputs BEFORE they reach the SDK to provide clear error messages.
|
|
4
|
+
*/
|
|
5
|
+
import { z } from 'zod';
|
|
6
|
+
export const dropboxSchemas = {
|
|
7
|
+
'uploadFile': z.object({
|
|
8
|
+
path: z.string().min(1, 'path is required'),
|
|
9
|
+
contents: z.unknown(),
|
|
10
|
+
mode: z.enum(['add', 'overwrite']).optional(),
|
|
11
|
+
}),
|
|
12
|
+
'downloadFile': z.object({
|
|
13
|
+
path: z.string().min(1, 'path is required'),
|
|
14
|
+
}),
|
|
15
|
+
'getMetadata': z.object({
|
|
16
|
+
path: z.string().min(1, 'path is required'),
|
|
17
|
+
}),
|
|
18
|
+
'listFolder': z.object({
|
|
19
|
+
path: z.string().min(1, 'path is required'),
|
|
20
|
+
recursive: z.boolean().optional(),
|
|
21
|
+
limit: z.number().int().min(1).optional(),
|
|
22
|
+
}),
|
|
23
|
+
'createFolder': z.object({
|
|
24
|
+
path: z.string().min(1, 'path is required'),
|
|
25
|
+
}),
|
|
26
|
+
'delete': z.object({
|
|
27
|
+
path: z.string().min(1, 'path is required'),
|
|
28
|
+
}),
|
|
29
|
+
'move': z.object({
|
|
30
|
+
fromPath: z.string().min(1, 'fromPath is required'),
|
|
31
|
+
toPath: z.string().min(1, 'toPath is required'),
|
|
32
|
+
}),
|
|
33
|
+
'copy': z.object({
|
|
34
|
+
fromPath: z.string().min(1, 'fromPath is required'),
|
|
35
|
+
toPath: z.string().min(1, 'toPath is required'),
|
|
36
|
+
}),
|
|
37
|
+
'search': z.object({
|
|
38
|
+
query: z.string().min(1, 'query is required'),
|
|
39
|
+
path: z.string().optional(),
|
|
40
|
+
maxResults: z.number().int().min(1).optional(),
|
|
41
|
+
}),
|
|
42
|
+
'createSharedLink': z.object({
|
|
43
|
+
path: z.string().min(1, 'path is required'),
|
|
44
|
+
settings: z.record(z.unknown()).optional(),
|
|
45
|
+
}),
|
|
46
|
+
};
|
|
47
|
+
//# sourceMappingURL=dropbox.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dropbox.js","sourceRoot":"","sources":["../../../src/reliability/schemas/dropbox.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,MAAM,CAAC,MAAM,cAAc,GAAiC;IAC1D,YAAY,EAAE,CAAC,CAAC,MAAM,CAAC;QACrB,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,kBAAkB,CAAC;QAC3C,QAAQ,EAAE,CAAC,CAAC,OAAO,EAAE;QACrB,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC,CAAC,QAAQ,EAAE;KAC9C,CAAC;IAEF,cAAc,EAAE,CAAC,CAAC,MAAM,CAAC;QACvB,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,kBAAkB,CAAC;KAC5C,CAAC;IAEF,aAAa,EAAE,CAAC,CAAC,MAAM,CAAC;QACtB,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,kBAAkB,CAAC;KAC5C,CAAC;IAEF,YAAY,EAAE,CAAC,CAAC,MAAM,CAAC;QACrB,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,kBAAkB,CAAC;QAC3C,SAAS,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;QACjC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;KAC1C,CAAC;IAEF,cAAc,EAAE,CAAC,CAAC,MAAM,CAAC;QACvB,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,kBAAkB,CAAC;KAC5C,CAAC;IAEF,QAAQ,EAAE,CAAC,CAAC,MAAM,CAAC;QACjB,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,kBAAkB,CAAC;KAC5C,CAAC;IAEF,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC;QACf,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,sBAAsB,CAAC;QACnD,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,oBAAoB,CAAC;KAChD,CAAC;IAEF,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC;QACf,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,sBAAsB,CAAC;QACnD,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,oBAAoB,CAAC;KAChD,CAAC;IAEF,QAAQ,EAAE,CAAC,CAAC,MAAM,CAAC;QACjB,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,mBAAmB,CAAC;QAC7C,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;QAC3B,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;KAC/C,CAAC;IAEF,kBAAkB,EAAE,CAAC,CAAC,MAAM,CAAC;QAC3B,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,kBAAkB,CAAC;QAC3C,QAAQ,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE;KAC3C,CAAC;CACH,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Zod input schemas for GitHub (Octokit) actions.
|
|
3
|
+
*
|
|
4
|
+
* Note: Schema keys include 'rest.' prefix to match Octokit SDK method paths
|
|
5
|
+
* (e.g., octokit.rest.issues.create -> 'rest.issues.create')
|
|
6
|
+
*/
|
|
7
|
+
import { z } from 'zod';
|
|
8
|
+
export declare const githubSchemas: Record<string, z.ZodTypeAny>;
|
|
9
|
+
//# sourceMappingURL=github.d.ts.map
|